Commit Graph

523 Commits

Author SHA1 Message Date
Josh Tynjala
f604ae3b0e tools: fix haxe 4 function syntax for haxe 3 backcompat 2025-01-17 09:30:30 -08:00
Igor
c2c9d0ea7c Setting ios.non-exempt-encryption to false by default. 2025-01-10 16:00:10 -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
tobil4sk
653c8c92f7 Include MacArm64 when rebuilding tools 2024-05-31 14:40:23 -07:00
tobil4sk
45972bb733 Copy correct ndll on arm64 mac 2024-05-31 14:40:23 -07:00
tobil4sk
1ebce5faa3 Load ndlls from correct path on Apple Silicon Mac 2024-05-31 14:40:23 -07:00
Joseph Cloutier
224c0a0e93 Delete stale dependencies in addition to stale assets. 2024-05-29 20:55:09 -04:00
Josh Tynjala
ae941e7442 MacPlatform: running install_name_tool with System.runCommand() works better than new Process()
new Process() was crashing before the process could start for some reason
2024-05-29 15:57:41 -07:00
Josh Tynjala
5381f96061 Allow cross-compiling to Linux cpp from other operating systems
Similar to #1661, except targeting Linux instead of Windows

On macOS, need to install https://github.com/messense/homebrew-macos-cross-toolchains

On Windows, I think it may be possible to get Linux compilers with Cygwin, but I haven't tried
2024-04-26 10:03:23 -07:00
Josh Tynjala
c26a73fc3c MacPlatform: when rebuilding the bundled HashLink, bundle all Homebrew dependencies too
Previously, a compiled .app file for HL/C wouldn't launch at all because it couldn't find these libraries. For HL/JIT, it would launch, but it might crash later when it needed to load a missing library.

We need to bundle these dependencies into the .app file so that it can successfully launch on systems that don't have Homebrew installed, or haven't separately installed the exact set of Homebrew libraries that we need. We also don't want to have to make people ask their users to install Homebrew and to install the dependencies manually.

Tested the .app files for both HL/JIT and HL/C on a system without Homebrew. It failed before, but now it launches successfully!
2024-04-25 15:20:47 -07:00
Joseph Cloutier
2822bdc124 Remove incorrect !. 2024-04-13 14:01:01 -04:00
Joseph Cloutier
657ad24682 Merge branch 'develop' into 8.2.0-Dev 2024-04-13 03:09:20 -04:00
Joseph Cloutier
fc90d2cd21 Use guard clauses to reduce indentation.
This way, the 8.2.0-Dev version of `PlatformSetup` will have the same indentation as the version on the develop branch. Without matching indentation, Git actively hinders the merging process.
2024-04-13 03:07:27 -04:00
Josh Tynjala
68169ea2d7 Added -nosign option for iOS to optionally skip codesigning (#1776)
This allows non-simulator builds on CI servers without setting up team-id/provisioning-profile/etc.

It also allows signing using a different method, if desired.

Co-Authored-By: mcagabe19@users.noreply.github.com
2024-04-09 09:01:51 -07:00
Josh Tynjala
045920596c WindowsPlatform: fix Visual Studio path discovery for uwp target
It was hardcoding VS 2017, but now uses vswhere.exe to find newer Visual Studio versions too.

Newer versions of VS don't actually support UWP JavaScript, though. However, if users have UWP installed in VS, the error message will be clearer about that lack of support.
2024-02-12 10:46:48 -08:00
Josh Tynjala
f8f97b5771 IOSPlatform: don't copy 32-bit liblime.iphonesim.a by default
Followup to commit 1186d9e
2024-02-09 10:28:46 -08:00
Josh Tynjala
1186d9e75a IOSPlatform: don't rebuild 32-bit liblime.iphonesim.a by default anymore
Similar to how we removed armv7 from the defaults. 32-bit iOS is very old and no longer supported by Apple.
2024-02-09 08:51:05 -08:00
Josh Tynjala
c9605ee784 PlatformSetup: in verbose mode, failure to install lime alias logs a warning
On Windows, if HAXEPATH is not set, but it probably should be, and installing the alias fails, logs a warning suggesting to set HAXEPATH
2024-02-08 14:29:04 -08:00
Joseph Cloutier
f52b59bbff Merge branch 'develop' into 8.2.0-Dev 2024-02-05 14:46:33 -05:00
player-03
4ed893afbd Use consistent capitalization.
Not that `dirSuffix` includes any letters yet, but it likely will in the future.
2024-02-04 18:05:54 -05:00
player-03
6fe43ea1e4 Merge pull request #1752 from tobil4sk/fix/mac-HXCPP_ARM64
Set HXCPP_ARM64 by default when building on Apple Silicon Mac
2024-02-03 22:23:24 -05:00
Josh Tynjala
c3170a0577 Merge branch '8.2.0-Dev' into feature/hlc 2024-01-30 09:16:34 -08:00
player-03
560ad5a6ba Don't force an architecture when building HL on Mac.
Originally, we forced compilation on x86, presumably because at the time HashLink lacked good 64-bit support. When this support improved, the line was changed to force x64 compilation rather than being removed, which may have been a mistake. Now that there are even more valid architectures, it just doesn't make sense to force one.
2024-01-29 20:30:06 -05:00