Commit Graph

764 Commits

Author SHA1 Message Date
Diomendius
c764f8cb42 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-07-31 20:23:34 +12:00
Diomendius
1505dda2b9 Enable CMake Release build type and LTO by default 2024-07-31 20:23:34 +12:00
Diomendius
b8f8180638 Add add_data_file() to CMakeLists.txt
This automatically cleans up artifacts specified as BYPRODUCTS after
running the commands.
2024-07-31 20:23:34 +12:00
Diomendius
7d97d4ac14 Add houses to CMake 2024-07-31 20:23:34 +12:00
Diomendius
e3a188b2f0 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-07-31 20:23:34 +12:00
Diomendius
e8d20851bf Add Fonts.gpf to CMake 2024-07-31 20:23:34 +12:00
Diomendius
1ea8793456 Add ApplicationResources.gpf to CMake 2024-07-31 20:23:34 +12:00
Diomendius
4e34fccba1 Add ConvertColorCursors to CMake, port to *nix
Also swaps \ for / in paths. This should still work fine on Windows.
2024-07-31 20:23:34 +12:00
Diomendius
e09480898b Add GenerateFonts to CMake, port to *nix 2024-07-31 20:23:34 +12:00
Diomendius
388a166203 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-07-31 20:23:34 +12:00
Diomendius
c9da95e3de Use / as path separator in unpacktool
Windows handles forward slash as a path separator just fine in most
cases, so this is a sensible portable choice.
2024-07-31 20:23:34 +12:00
Diomendius
2c7947202a Add unpacktool to CMake, port to *nix 2024-07-31 20:23:34 +12:00
Diomendius
9d6285490d Add HouseTool to CMake, port to *nix 2024-07-31 20:23:34 +12:00
Diomendius
cc494253e0 Add MiniRez to CMake, port to *nix 2024-07-31 20:23:34 +12:00
Diomendius
2d588b983b Add MergeGPF to CMake, port to *nix 2024-07-31 20:23:34 +12:00
Diomendius
1d078e0053 Add FTagData to CMake, port to *nix 2024-07-31 20:23:34 +12:00
Diomendius
dbfc72c491 Add MakeTimestamp to CMake, port to *nix 2024-07-31 20:23:34 +12:00
Diomendius
ce6b7e2486 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-07-31 20:23:34 +12:00
Diomendius
a7852b8c30 Add gpr2gpa to CMake, port to *nix 2024-07-31 20:23:34 +12:00
Diomendius
5543c7d053 Add hqx2gp to CMake, port to *nix 2024-07-31 20:23:34 +12:00
Diomendius
3ae422eae4 Add hqx2bin to CMake 2024-07-31 20:23:34 +12:00
Diomendius
0c5dc5c6a4 Add bin2gp to CMake 2024-07-31 20:23:34 +12:00
Diomendius
91c18b1950 Add flattenmov to CMake 2024-07-31 20:23:34 +12:00
Diomendius
9266b4402a Add UnixCompat
Provides drop-in replacements for some functions from
WindowsUnicodeToolShim and the Windows API which are used by some of the
tools that come with Aerofoil, so that these tools can be built on
Unix-like systems with minimal modifications to their code.
2024-07-31 20:23:34 +12:00
Diomendius
c8baaa2552 Refactor CMakeLists.txt
The BUILD_INTERFACE generator expression isn't actually useful as we
don't use export(). CMAKE_CURRENT_SOURCE_DIR is also unnecessary as
CMake treats relative paths as relative to the current source directory
(or the current binary directory for outputs).
2024-07-31 20:23:34 +12:00
Diomendius
41b96494c2 Fix double-use of va_list in AppendFmt
AppendFmt calls vsnprintf twice, first to check the size of the
formatted string, then to write it for real, but it used the same
va_list for both calls, so the second call got an invalid va_list after
the first call had already consumed all its arguments.

This is UB and at least on Linux makes the second call print garbage. I
presume Windows implements va_list differently such that this somehow
worked correctly, because on Linux, all of the dialog items get parsed
into invalid JSON due to this bug, with lines like this (note the
missing second array element and closing bracket):
    "pos" : [ -55947262,
2024-07-31 20:23:34 +12:00
Diomendius
1b18a87495 Normalize line endings
This commit contains only the result of `git add --renormalize .`

`git show --ignore-space-change` can verify that this commit only
changes whitespace.
2024-07-31 20:21:47 +12:00
Diomendius
bb7b663daf Add .gitattributes
The line endings of text files in this repo are not consistent and some
files even have mixed line endings, presumably from being edited with an
editor that neither respects a file's existing EOL format nor converts
existing line endings on save.

This commit adds a .gitattributes file to mark most text files as text
in Git, which will cause Git to normalize the line endings in these
files to LF internally and to the format specified by the core.eol
setting for files in the working tree.

This commit only adds .gitattributes and does not change line endings.
The following commit normalizes all line endings for files given the
`text` attribute by this commit.
2024-07-31 20:18:00 +12:00
elasota
ea19e36e7f Bump version to 1.1.6 2024-07-19 19:10:19 -04:00
elasota
9613299717 Update to SDL 2.30.5 2024-07-19 19:10:06 -04:00
elasota
812ef5d377 Update to SDK 34 2024-07-14 00:27:39 -04:00
elasota
02058eba73 Fix incorrect RIFF tag size check on 32-bit systems 2024-02-07 19:08:43 -05:00
elasota
65a6e06ce1 Update Android to API 33, version 1.1.4, add build instructions 2023-09-09 11:17:12 -04:00
elasota
a6d93f8daa Update to VS2022 2023-08-26 14:06:14 -04:00
Eric Lasota
549e1ec3e6 Merge pull request #17 from WickedSmoke/master
Fix Linux build
2023-05-24 22:43:03 -04:00
Karl Robillard
141b176574 AerofoilX: Print missing files to stderr. 2023-05-24 07:40:51 -04:00
Karl Robillard
18a0d3a42a Fix Linux compile errors. 2023-05-24 07:40:45 -04:00
elasota
af6d18829e Fix compile failure on systems where pthread_t isn't a pointer, and possibly also systems where it isn't pointer-sized either 2023-05-21 21:53:18 -04:00
elasota
4182a1a107 Bump version to 1.1.3 2022-06-22 21:31:46 -04:00
elasota
5643f464cc Discard security exception on getSerialNumber, fixes Android USB gamepad crash. 2022-06-22 21:29:55 -04:00
elasota
a04c5f10df Reject zip archives with non-zero file count but empty central directory 2022-06-22 21:28:28 -04:00
Eric Lasota
3e13877788 Merge pull request #11 from ryandesign/stdlib
Include stdlib.h where its functions are used
2022-03-17 13:10:33 -04:00
Ryan Schmidt
53ff18d337 Include stdlib.h where its functions are used
Fixes build failure on OS X 10.10 and 10.11:

error: use of undeclared identifier 'free'
error: use of undeclared identifier 'malloc'
error: use of undeclared identifier 'qsort'
2022-03-17 02:54:37 -05:00
elasota
e33c01cc40 Change line endings to UNIX 2022-03-17 02:00:06 -04:00
Eric Lasota
0c891d3117 Merge pull request #10 from ryandesign/mac
Improve CMake macOS build
2022-03-17 01:58:13 -04:00
elasota
e4d2d9f9a4 Fix bad null compares 2022-03-17 01:50:19 -04:00
elasota
41c0312921 Add more nullptr_t operators 2022-03-17 01:48:16 -04:00
Ryan Schmidt
e78b01a5f3 Improve CMake macOS build
Now actually builds on macOS.

Closes #9
2022-03-17 00:39:55 -05:00
elasota
d470bb5eeb Add nullptr_t constructor to THandle 2022-03-16 21:24:47 -04:00
elasota
1fe94e4f06 Split AerofoilTools package 1.1.2 2021-11-10 18:05:19 -05:00