Commit Graph

4794 Commits

Author SHA1 Message Date
Joseph Cloutier
16166e1a0d Fix RPI compile errors (incomplete).
At least, these changes should be a step in the right direction.
2022-05-28 14:55:50 -04:00
Joseph Cloutier
088b43a37a Don't compile joystick HIDAPI code on iOS.
Per README-ios.md and SDL_config_iphoneos.h, it's disabled by default.
2022-05-28 08:34:04 -04:00
Joseph Cloutier
f3aff7f274 Compile PNG's "intrinsics" when targeting arm64.
As noted in pngpriv.h, the alternative (assembly code) doesn't currently
work on arm64.

There's no mention of iOS or tvOS, so maybe we could remove those?
2022-05-27 20:30:07 -04:00
Joseph Cloutier
821638ae34 Work around inconsistent header inclusion.
Overriding headers has always been risky, and finally we see why.

Apparently on iOS, files may be compiled in such a way that the original
SDL_config.h file is included, not Lime's custom one. It's hard to do
anything more than we've already done to manage include order, so we
need to find another option.

One such option is to make the two files as similar as possible, such
that it usually doesn't matter which one ends up being included. Then we
only set `USING_GENERATED_CONFIG_H` when it really matters.
2022-05-27 03:59:43 -04:00
Joseph Cloutier
03f5dcbf82 Don't enable ARC twice.
If `OBJC_ARC` is set, then `-fobjc-arc` was also set already.
2022-05-27 03:29:07 -04:00
Joseph Cloutier
9d56c6df4a Enable ARC when compiling SDL.
SDL_cocoavideo.m now enforces this, as of this commit:
ec8fa57750

That commit also removed the destructors from SDL_render_metal.m, which
implies it's required on iOS too.

And before anyone asks, SDL seems to have no plans to back down on this.
2022-05-26 21:13:49 -04:00
Joseph Cloutier
aa44a540f2 Disable -Wno-enum-conversion on Windows.
Seems this doesn't apply to MVSC.
2022-05-25 20:50:50 -04:00
Joseph Cloutier
45d104d105 Disable HIDAPI on all targets again.
This reverts commit 41d93722f9.
2022-05-25 18:25:47 -04:00
Joseph Cloutier
4b5ffdad62 Always disable enum-conversion warning.
Cairo 1.17.6 does a LOT of enum conversion, and judging from line 63 of
meson.build, their plan is to live with it. Might as well follow suit.
2022-05-25 00:45:01 -04:00
Joseph Cloutier
87e779b971 Rename "overrides" to "custom."
This helps shift the emphasis from "replacing existing files" to "adding
missing files," without ruling either option out.
2022-05-22 23:27:47 -04:00
Joseph Cloutier
55f3e74596 Update libwebm to 1.0.0.28. 2022-05-22 22:28:22 -04:00
Joseph Cloutier
0224d24a74 Update libvpx to 1.11.0. 2022-05-22 22:27:52 -04:00
Joseph Cloutier
4623448e0b Update libpng to 1.6.37. 2022-05-22 22:19:34 -04:00
Joseph Cloutier
8291b812d5 Update Vorbis to 1.3.7. 2022-05-22 22:11:37 -04:00
Joseph Cloutier
13c3b60083 Update Ogg to 1.3.5.
Also, make config_types.h defer to inttypes.h for consistency.
2022-05-22 22:11:13 -04:00
Joseph Cloutier
0997d1443a Update Neko to 2.3.0. 2022-05-22 21:54:13 -04:00
Joseph Cloutier
391d947338 Add CoreHaptics.framework via project.pbxproj.
Returning to the way  88d3fa7184 did this
because the alternative wasn't working.
2022-05-22 14:30:44 -04:00
Joseph Cloutier
b6d0af585d Always include CoreHaptics.framework on iOS. 2022-05-22 13:43:18 -04:00
Joseph Cloutier
7b3b49bea6 Fix cURL linker errors on Windows.
Plus, move Windows-only files into the Windows section.
2022-05-22 12:25:27 -04:00
Joseph Cloutier
1b87e1ca60 Ensure FreeType can find zlib.h. 2022-05-22 11:33:11 -04:00
Joseph Cloutier
2ce060788b Add SystemConfiguration.framework on Mac.
Required for `SCDynamicStoreCopyProxies()`, which is only called when
`CURL_OSX_CALL_COPYPROXIES` is defined, which is only defined on OSX.
2022-05-22 11:27:48 -04:00
Joseph Cloutier
51dfc56efb Use Build.xml to include CoreHaptics.framework.
Much simpler and more maintainable than in
88d3fa7184

(Sorting the flags a bit while I'm at it.)
2022-05-22 11:25:54 -04:00
Joseph Cloutier
cf5b033bbc Remove no-longer-used #defines.
Only removing `#define`s for which there were zero search results.
2022-05-22 00:36:43 -04:00
Joseph Cloutier
869f8fa14e Update Mbed TLS to 3.1.0. 2022-05-22 00:18:45 -04:00
Joseph Cloutier
4e65b9e1cd Clean up unused files in LZMA. 2022-05-21 20:59:23 -04:00
Joseph Cloutier
555df2963b Update libjpeg-turbo to 2.1.3. 2022-05-21 20:50:43 -04:00
Joseph Cloutier
e1c55103a6 Update FreeType to 2.12.1.
Note: cff.c includes all the other cffxyz.c files. They're still there.
2022-05-21 20:28:16 -04:00
Joseph Cloutier
c5caf01ad2 Update to efsw 1.2.0. 2022-05-21 20:23:36 -04:00
Joseph Cloutier
64539f77d1 Update cURL to 7.83.1. 2022-05-21 19:58:23 -04:00
Joseph Cloutier
57411634d4 Update HarfBuzz to 4.3.0.
Mostly speed improvements.
2022-05-21 19:00:06 -04:00
Joseph Cloutier
b6fec0a07b Update zlib to 1.2.12.
Among other things, this fixes CVE-2018-25032:
https://github.com/advisories/GHSA-jc36-42cf-vqwj
2022-05-21 18:45:22 -04:00
Joseph Cloutier
7824a39e81 Update Cairo to 1.17.6. 2022-05-21 17:59:55 -04:00
Joseph Cloutier
88d3fa7184 Add CoreHaptics.framework.
This is required by SDL_mfijoystick.m as long as `ENABLE_MFI_RUMBLE` is
defined. And guess what? That's the file that defines it. There's no way
to disable it except decreasing the max iOS version.

Seems like iOS 13 is the new minimum.
2022-05-21 16:52:31 -04:00
Joseph Cloutier
f5a24dc40a Explicitly require NDK 20+.
This also means we no longer need anything like
d66ef73a92
2022-05-21 16:27:05 -04:00
Joseph Cloutier
794ac63b86 Fix libpng on WinRT.
Not tested, but should accomplish the same result as
2177f5afd4
2022-05-21 16:10:55 -04:00
Joseph Cloutier
969a7ead58 Remove out-of-date info. 2022-05-21 16:01:23 -04:00
Joseph Cloutier
41d93722f9 Temporarily re-enable HIDAPI on iOS.
This can be undone once https://github.com/libsdl-org/SDL/issues/5699
gets resolved.
2022-05-21 15:52:49 -04:00
Joseph Cloutier
f87cdfd11e Remove no-longer-needed override.
As described in 3b4ad78b6a.
2022-05-20 19:06:13 -04:00
Joseph Cloutier
104533fdde Sort and format build files. 2022-05-20 17:11:20 -04:00
Joseph Cloutier
11821e52dd Add more missing files. 2022-05-20 16:53:24 -04:00
Joseph Cloutier
a378f12607 Fix references to missing files. 2022-05-20 16:16:26 -04:00
Joseph Cloutier
c37e48faaf Disable HIDAPI.
Problem one: it requires its own binary, which we haven't built. There
are instructions in sdl/src/hidapi/README.txt, if we ever want to try.

Problem two: the Android app segfaults when `hid_init()` calls
`g_JVM->AttachCurrentThread()`. This might be a bug in NDK 21's jni.h,
but that seems unlikely. Perhaps a version mismatch?

In any case, we aren't using the code at the moment, so the easy answer
is to leave it out.
2022-05-20 01:00:35 -04:00
Joseph Cloutier
31e9ab663d Remove unused case.
The `HX_WINDOWS` case is handled a bit further down.
2022-05-19 18:23:20 -04:00
Joseph Cloutier
19eab56416 Define HAVE_STDIO_H.
SDL can operate without stdio.h, but Lime requires it in most cases.
2022-05-19 18:21:48 -04:00
Joseph Cloutier
d21847e65c Update SDL to 2.0.22.
On Android, `SDL_RWops` no longer stores a plain file descriptor,
so the `AAsset` API must be used instead:
https://developer.android.com/ndk/reference/group/asset

`HAVE_INOTIFY` is required on Linux at the moment, but the bug will be
fixed in the next SDL release.
2022-05-19 17:34:20 -04:00
Joseph Cloutier
3b4ad78b6a Remove CoreBluetooth dependency.
Overriding a config file for now, but that can be undone after updating.
e572215f5a
2022-05-16 22:56:07 -04:00
Joseph Cloutier
a13742fa0f Attempt to resolve unresolved symbols. 2022-05-16 19:50:26 -04:00
Joseph Cloutier
2e645678a0 Attempt to resolve Windows-specific errors.
alfstream.cpp doesn't look like a Windows-specific file, so I'd rather
compile it everywhere until proven Windows-specific. Even though Mac and
Linux have been doing ok without it so far.
2022-05-16 18:55:33 -04:00
Joseph Cloutier
c72af76ca4 Move rebuild instructions to project/README.md.
There are too many details to put in the top-level readme.
2022-05-16 17:46:20 -04:00
Joseph Cloutier
2dc827a432 Remove PulseAudio headers.
These are often included with the OS, or can easily be installed if not.
2022-05-16 14:10:20 -04:00