Commit Graph

543 Commits

Author SHA1 Message Date
Chris Speciale
46aab0c80e Android: Allow minimumSDKVersion to be set dynamically
This change moves away from purely hard coding the minimum sdk version for android and also correctly sets the PLATFORM_NUMBER define. The gcc toolchain is no longer compatible in lime 8.3.x+ so, we shouldn't have to worry about the PLATFORM define at all.

It might be wise to enforce a baseline minimum version and complain if users try to use something lower than the default.
2025-03-13 02:24:30 -04:00
Chris Speciale
ed8354a86a Update the API level for Android to 28 2025-03-12 18:45:42 -04:00
Chris Speciale
37c9155608 Set minSdkVersion to 28
Should resolve part of the issues related here: https://github.com/openfl/lime/issues/1923#issuecomment-2719250849
2025-03-12 18:26:56 -04:00
Josh Tynjala
9f9a5b9f31 Merge branch 'develop' into 8.3.0-Dev 2025-03-03 13:19:35 -08:00
Josh Tynjala
d7b2b75f1e AIRPlatform: default AIR SDK version to 32.0 instead of 28.0
You can't get 28.0 from Adobe anymore, but you can get 32.0
2025-02-24 15:49:32 -08:00
Josh Tynjala
b8435aa894 PlatformSetup: Further refine HL setup to explain how to remove a custom HL_PATH value 2025-02-20 10:19:55 -08:00
MAJigsaw77
df3f816f9b Add copyrightYears to MetaData. 2025-02-11 13:59:39 +02:00
MAJigsaw77
dcbee9d54a Initial support for windows resource file. 2025-02-10 23:36:19 +02:00
Tobiasz Laskowski
99ca58d06f Add workaround for hxcpp compiler cache bug
See: https://github.com/HaxeFoundation/hxcpp/issues/1180
2025-02-10 09:24:47 -08:00
Tobiasz Laskowski
1b5958f6ff Remove CPP_LIBPREFIX from ios/tvos template
It is no longer used, and was only there to provide compatibility with
hxcpp versions older than 3.2
2025-02-10 09:24:47 -08:00
Josh Tynjala
41ac2fc8b6 add <config:android layoutInDisplayCutoutMode/>
Options are default, always, never, and shortEdges. Defaults to default.

What default means depends on which Android SDK version is used.

According to the Android docs, starting with Android SDK 35, most options will be forced to act the same as always. However, for SDK 34 (which is the current minimum on Google Play) this should remain configurable.

https://developer.android.com/develop/ui/views/layout/display-cutout
2025-02-07 09:23:29 -08:00
Tobiasz Laskowski
69bbcaea27 Skip confirmation for alias with -alias/-cli flag
The user has already specified this is what they want by passing in the
flag, so there is no point in asking again.
2025-01-31 10:27:24 -08:00
Tobiasz Laskowski
dd9f9d40c9 Add -cli, -alias, and -noalias setup flags to help
The `-cli`/`-alias` flags are useful when you don't want lime to mess with
libraries that might be intentionally set to specific versions.
2025-01-31 10:27:24 -08:00
Josh Tynjala
2da06fa2af Merge branch 'develop' into 8.3.0-Dev 2025-01-29 09:37:47 -08:00
Josh Tynjala
f6d262c54e AndroidPlatform: include ARM64 in the default architectures for emulators
On ARM64 macOS, the emulator is probably ARM64, so x86_32 and x86_64 won't work
2025-01-24 12:03:06 -08:00
Josh Tynjala
d21f7befaa AndroidPlatform: default to x86_64 instead of x86_32
It's still possible to check out Lime and build x86_32 manually
2025-01-24 12:01:50 -08:00
Tobiasz Laskowski
e0c734d8fe Remove MAC_USE_CURRENT_SDK from lime setup
MAC_USE_CURRENT_SDK is an incredibly old relic from a very old version
of hxcpp (haxe 2 days). It was removed in:
9a7f7f931f

This is now instead controlled by the flag `MACOSX_DEPLOYMENT_TARGET`.

The setup command now only does two things:
- Sets up haxelibs
- Adds cli alias
2025-01-22 08:06:52 -08:00
Josh Tynjala
f604ae3b0e tools: fix haxe 4 function syntax for haxe 3 backcompat 2025-01-17 09:30:30 -08:00
Josh Tynjala
2e578d3e56 Default to Android target-sdk-version 34, and support 35 (closes #1888)
34 is the minimum required version by Google Play, so it should be default.

Bumping to 34 and 35 requires updating both gradle-version and gradle-plugin-version.

The new versions now require an ndkVersion flag in build.gradle. This can be obtained by reading source.properties in the root of the NDK.

JDK 17 will be required for these updates. Previously required JDK 11.
2025-01-14 14:00:54 -08:00
Igor
c2c9d0ea7c Setting ios.non-exempt-encryption to false by default. 2025-01-10 16:00:10 -08:00
Josh Tynjala
8bfc0be57e WebAssemblyPlatform: missed -json flag here in #1882 2025-01-10 15:11:20 -08:00
Cameron Taylor
03ea041e0e add -json flag to allow json types export 2025-01-10 15:09:55 -08:00
Josh Tynjala
57cf88b02d CommandLineTools: set macos define when using cpp target on macOS (closes #1878)
It should behave the same as mac or macos target.
2025-01-06 10:07:12 -08:00
Tobiasz Laskowski
d2129bbd64 Respect -cpp flag for windows cross compile 2024-12-18 08:48:18 -08:00
player-03
8a1083be25 Use absolute paths when running Lime. 2024-12-09 12:39:09 -05:00
Josh Tynjala
c3b749b415 MacPlatform: fix duplicate shell scripts when building without -clean and copyIfNewer decides the HL executable isn't newer 2024-12-02 10:29:11 -08:00
Josh Tynjala
4812f6a1dd MacPlatform: fix error that says @rpath/libhl.dylib is not found when using HashLink nightly builds for HL/C
Added `@executable_path` to the rpath.
2024-11-20 15:44:08 -08:00
Josh Tynjala
61ec7d0913 PlatformSetup: for lime setup hashlink, display the "leave empty to use default" message only when a custom version is not configured yet
If a custom version is configured, users will think that just pressing enter will clear it, but it won't. It'll just keep the current value. To actually clear the value, they need to run lime config remove HL_PATH instead.
2024-11-20 09:35:57 -08:00
Josh Tynjala
3d10ea7eb6 PlatformSetup: improve HL_PATH message with capital L in Lime and add bundled descriptor 2024-11-13 11:16:20 -08:00
Josh Tynjala
5388c47a8b PlatformSetup: more formal grammar 2024-11-13 11:15:06 -08:00
Josh Tynjala
19b571d8c2 HashlinkHelper, PlatformSetup: proper casing in user-facing messages for HashLink name 2024-11-13 11:13:16 -08:00
Josh Tynjala
4e56bd9bf2 PlatformSetup: specify that absolute path is required for config values 2024-11-13 11:11:07 -08:00
Chris Speciale
a8939e9951 Merge pull request #1834 from gepatto/8.2.0-Dev
set correct paths for ndll for linxuarm and linuxarm64 (raspberrypi)
2024-10-22 07:17:56 -04:00
Josh Tynjala
895ce877d9 Default hlc target directory is not the same as hl 2024-10-07 09:40:22 -07:00
Patrick Gutlich
40764acbf3 set correct paths for ndll for linxuarm and linuxarm64 (raspberrypi)
and remove conflicting legacy includepaths in build.xml
2024-08-18 17:12:47 +02:00
Josh Tynjala
b866632a6f tools: allow -x86_64 and -x86_32 as command line flags to select those architectures instead of defaults (closes #1819)
Still supports -32 and -64, though, for backwards compatibility. We could consider removing those in Lime 9.
2024-07-19 14:46:47 -07:00
Josh Tynjala
745c178908 MacPlatform: find lime.hdll in Mac64 on ARM64 Mac because HashLink doesn't support x86_64 yet 2024-07-18 12:23:32 -07:00
Josh Tynjala
b95dac4da3 MacPlatform: always build HashLink for Intel on macOS for now 2024-07-18 12:14:07 -07:00
tobil4sk
4fa31a0d34 [tools] Cross compile to x86 from arm64 on mac (#1813) 2024-07-14 12:08:01 +01:00
Josh Tynjala
8f3ea8d271 Merge branch 'develop' into 8.2.0-Dev 2024-07-08 14:31:23 -07:00
Josh Tynjala
84d7f39605 Revert "MacPlatform: use install_name_tool to add /usr/local/lib and /opt/hombrew/lib to rpath of lime.ndll"
This reverts commit 47936494ac.

Didn't work with Haxe/Neko installed from Apple Silicon Homebrew because Lime tools couldn't link to Neko.
2024-07-08 14:27:15 -07:00
Tobiasz Laskowski
5eafeb047d [tools] Support cross compiling arm64 ndll on mac 2024-07-06 14:04:29 +01:00
Josh Tynjala
e257b7ebe4 Merge branch 'develop' into 8.2.0-Dev 2024-07-01 08:53:48 -07:00
Joseph Cloutier
d27aaebc01 Copy SDL's list of configChanges on Android.
On Android, Lime apps are SDL apps, so it makes sense to defer to them on this.

https://github.com/libsdl-org/SDL/blob/main/android-project/app/src/main/AndroidManifest.xml
2024-06-26 20:36:02 -04:00
Josh Tynjala
47936494ac MacPlatform: use install_name_tool to add /usr/local/lib and /opt/hombrew/lib to rpath of lime.ndll
Previously, we added these rpaths to lime.ndll when it was built in commits c70ec9f and 333d093, but it's actually necessary only for Neko, so now I made it happen specfically after calling `nekotools boot` to create the Neko executable.

I've tested cpp and hl, and I've confirmed that the executables still launch successfully when these rpaths are omitted. It's better for their security to use fewer rpaths.

As noted commit c70ec9f, adding these rpaths is necessary due to a change in Xcode 15 where /usr/local/lib used to be available on the rpath automatically, but now it isn't, which affects the executable's ability to find the libneko dylib.
2024-06-19 14:39:17 -07:00
Josh Tynjala
c8501b17e5 AndroidPlatform: fix @android:style/Theme.NoTitleBarnull in AndroidManifest.xml
Replace (project.window.fullscreen ? ".Fullscreen" : null) with (project.window.fullscreen ? ".Fullscreen" : "")
2024-06-17 15:47:20 -07:00
Mihai Alexandru
0e0dd0b5a2 Support VIEW intents on Android. (#1799)
* Add Drop file event support for android.

* Updated MIME type configuration and intent filter generation.

* "supportedMimeTypes" => "mimeType"

* `mimeType` -> `accept-file-intent`
2024-06-16 19:29:25 -04:00
Joseph Cloutier
593f4fa52c Rename web-workerallow-web-workers for clarity.
The former was unclear about how the dependency would relate to web workers. Would it only be available to workers? Would it automatically spin up a worker?

`allow-web-workers` isn't 100% perfect, but it implies the correct answers to the questions above (no and no) and isn't too long.
2024-06-15 22:13:05 -04:00
Joseph Cloutier
8066037cdd Bug fix: Node.js was being treated as a web worker context. 2024-06-10 14:07:22 -04:00
player-03
6a23b6eee3 Merge pull request #1790 from player-03/stale_assets
Automatically delete stale assets and dependency files.
2024-06-04 13:42:31 -04:00