Commit Graph

796 Commits

Author SHA1 Message Date
Florian Piesche
b848465a87 Merge 3ae55dd5b3 into e8028920aa 2024-10-21 16:56:04 +01:00
Florian Piesche
3ae55dd5b3 Update screenshots and include release file URL. 2024-10-21 16:55:52 +01:00
Florian Piesche
3fbbdbf461 Resize vector icon 2024-10-05 01:19:26 +01:00
elasota
e8028920aa Update user houses documentation 2024-09-07 04:39:04 -04:00
Florian Piesche
a2272d8a2e Split release info into separate releases.xml and add branding colours for Flathub 2024-09-06 20:26:56 +01:00
Florian Piesche
ef272fca8b Edit icon/logo canvas to be square 2024-09-06 20:22:21 +01:00
Florian Piesche
cd27a65d33 Add FreeDesktop metadata 2024-09-06 14:50:32 +01:00
elasota
e3b481093a Add some info about getting logs 2024-08-07 02:07:43 -04:00
elasota
b866b0e67c Update credit lines 2024-08-07 02:00:45 -04:00
elasota
1663d9d6fe Fix more broken timestamps 2024-08-07 01:55:37 -04:00
elasota
a3e8b51b37 Fail init if SDL window creation fails 2024-08-07 01:44:02 -04:00
elasota
547a2e6524 Only use precision prefixes in GLES (they don't work on AMD Windows) 2024-08-07 01:42:41 -04:00
elasota
64d61aac33 Quit out instead of infinite looping if the Packaged dir can't be found 2024-08-07 01:00:39 -04:00
elasota
c5addb5ed4 Quiet realloc-free warnings 2024-08-07 00:19:11 -04:00
elasota
5dd468ec46 Fix unpacktool missing stddef.h 2024-08-07 00:07:51 -04:00
elasota
d041871c2f Fix more missing cmake files in SDL 2024-08-06 23:49:48 -04:00
elasota
a2fdfee02a Remove unused functions from tool shim, add int64 file ops 2024-08-06 23:49:32 -04:00
elasota
d750ffae65 Fix missing SDL cmake files 2024-08-06 23:37:20 -04:00
elasota
fa1455f4f4 Add tool shim files to MakeTimestamp 2024-08-06 23:24:57 -04:00
elasota
112ad2d5d0 Fix missing prop sheets and references 2024-08-06 23:19:37 -04:00
elasota
5e2085da00 Fix broken timestamps 2024-08-06 23:15:58 -04:00
Eric Lasota
4340e8fc5c Merge pull request #19 from Diomendius/linux_port
Improve CMake build and port conversion tools to Linux
2024-08-06 23:10:13 -04:00
Diomendius
ed4eb8e1f7 Use temporary staging dirs when building resources
This allows intermediate build artifacts to be cleaned up without
specifying them individually as BYPRODUCTS.

When building a data file <name>, all files are first built under
tmp/<name> before the target itself is moved from tmp/<name>/<name> to
Packaged/<name>.

add_house_file() could also be modified in this way, but it wouldn't
reduce the boilerplate by much, so it's probably not worth it.
2024-08-06 17:52:33 +12:00
Diomendius
c8e3e8683b Add deps in source tree to resource targets
This will make CMake rebuild resources if for instance the fonts are
updated.
2024-08-06 17:48:24 +12:00
Diomendius
ee60ef57a1 Generate Packaged/Houses dirs as dependencies
Uses add_custom_command() to add rules for generating these directories,
rather than creating them only when CMakeLists.txt runs. With this
change, you can manually delete Packaged from the build directory
without causing subsequent builds to fail.
2024-08-06 17:46:10 +12:00
Diomendius
2681ffc5c6 Update instructions in LINUX.txt 2024-08-06 16:03:16 +12:00
Diomendius
6a13e44dae Add Tools CMake build target
All the individual executables are marked EXCLUDE_FROM_ALL, but the
added Tools custom target is marked ALL. The only visible effect of this
is that ConvertColorCursors does not get built by default, since all the
other tools are dependencies for the Resources or Tools targets, which
are both built by default. Otherwise, the benefit is simply to keep the
dependency tree clean. Only three targets are built by default:
Aerofoil, its resources and the conversion tools. Everything else is
built to satisfy dependencies.
2024-08-06 16:03:16 +12:00
Diomendius
68db3cd83e Add Executable build target
This is meant as an alias to the name of the main executable, for
consistency with the Executable install component.
2024-08-06 16:03:16 +12:00
Diomendius
13f0874757 Enable CMake Release build type and LTO by default 2024-08-06 16:03:16 +12:00
Diomendius
660d79980a Add add_data_file() to CMakeLists.txt
This automatically cleans up artifacts specified as BYPRODUCTS after
running the commands.
2024-08-06 16:03:16 +12:00
Diomendius
f65d550300 Add houses to CMake 2024-08-06 16:03:16 +12:00
Diomendius
d9049f3c8a Add icons to CMake (commented-out)
These are only used on Windows and the converted files have been
committed to the repo, but this might be useful to someone.
2024-08-06 16:03:16 +12:00
Diomendius
8a5b50d98d Add Fonts.gpf to CMake 2024-08-06 16:03:13 +12:00
Diomendius
91e2f3b25f Add ApplicationResources.gpf to CMake 2024-08-06 01:34:53 +12:00
Diomendius
0ebdabc12f Add ConvertColorCursors to CMake, port to *nix
- Includes WindowsUnicodeToolShim.h.
- Replaces sprintf_s() with std::ostringstream.
- Replaces fopen_s() with fopen_utf8().
- Switches to the toolMain() wrapper, which is a no-op on except on
  Windows, where it should improve Unicode support, though I can't test
  that on my end.
- Replaces \ with / in paths, which should still be Windows-compatible.
2024-08-06 01:34:53 +12:00
Diomendius
8b916867d5 Add GenerateFonts to CMake, port to *nix
Removes unused Windows-specific headers and adds arguments to specify
source and output directories, which is necessary for out-of-tree
builds, which are necessary to avoid name collisions on platforms where
executables have no file extension (so, basically everything except
Windows).
2024-08-06 01:34:53 +12:00
Diomendius
a7f5b653fa Add GpFontHandler_FreeType2 to CMake
Also add stddef.h include to GpRenderedGlyphMetrics.h to make size_t
visible. Does MSVC provide size_t by default, or via stdint.h? This
prevents compilation and I can't see how this would have compiled on
Windows otherwise.
2024-08-06 01:34:53 +12:00
Diomendius
5c74c96771 Add unpacktool to CMake, port to *nix
- Adds missing includes, removes some unused ones.
- Removes unused Windows.h and shellapi.h includes.
- Uses / as path separator. This is portable and should still work fine
  on Windows.
2024-08-06 01:28:44 +12:00
Diomendius
e78d93437a Add HouseTool to CMake 2024-08-06 00:50:29 +12:00
Diomendius
c2753ec679 Add MiniRez to CMake
Also includes <algorithm> to provide std::find(). Evidently something in
Windows implicitly provides find(), but it was broken on Linux.
2024-08-06 00:50:09 +12:00
Diomendius
f27860776b Add MergeGPF to CMake 2024-08-06 00:32:23 +12:00
Diomendius
77fcc35726 Add FTagData to CMake, port to *nix 2024-08-06 00:32:23 +12:00
Diomendius
e2bb19709d Add MakeTimestamp to CMake, port to *nix 2024-08-06 00:32:22 +12:00
Diomendius
8b2db1b142 Fix equality test in gpr2gpa.cpp
I don't think this actually gets hit when converting the base Glider PRO
resources, but it's an obvious error that makes the condition always
true.
2024-08-06 00:32:22 +12:00
Diomendius
77009b08ca Avoid Clang c++11-narrowing error
Downgrades c++11-narrowing to a warning when compiling with Clang. A
better solution would be to fix the error, but this at least brings
Clang in line with the more permissive GCC, which treats this as a
warning by default.
2024-08-06 00:32:10 +12:00
Diomendius
7a81b2b396 Add gpr2gpa to CMake, port to *nix 2024-08-06 00:16:22 +12:00
Diomendius
e2da9bb7c5 Add hqx2gp to CMake 2024-08-06 00:16:22 +12:00
Diomendius
796b2880cf Add hqx2bin to CMake 2024-08-06 00:16:22 +12:00
Diomendius
c372fcb92d Add bin2gp to CMake 2024-08-06 00:16:22 +12:00
Diomendius
1e4ee9335e Add flattenmov to CMake 2024-08-06 00:16:22 +12:00