Commit Graph

433 Commits

Author SHA1 Message Date
Jeroen van Rijn
ab95932502 -dynamic-literals 2025-05-19 20:44:27 +02:00
Feoramund
eb051a2d7c Re-enable static map calls on AMD64 SysV 2025-05-18 17:13:39 -04:00
gingerBill
1f814c33dc Support subtargets in build tags: #build darwin:generic and #build linux:android, darwin:ios 2025-04-10 11:36:03 +01:00
gingerBill
5e63388de2 Fix init_android_values SDK check for odin check 2025-04-10 11:07:44 +01:00
IllusionMan1212
da885fb807 android bundling improvements
replace `jarsigner` with build tools' `apksigner` which is capable of using newer signature schemes

remove the `android-manifest` flag and assume the file exists in the directory we're bundling

make `android-keystore-alias` and `android-keystore-password` optional.
The former is not needed if there's only one key in the keystore, and the latter will be prompted by `apksigner` if missing

don't change the working directory to the bundled directory to prevent confusion when passing a relative path to
`android-keystore`

add the `res`, `assets`, and `lib` directories to the bundle if they exist in the bundled directory
2025-04-05 02:38:04 +02:00
IllusionMan1212
44950d5f37 fix: cross-compilation for android on linux
add `-nodefaultlibs` when cross-linking for android to prevent clang from linking with libgcc

check build mode first before calling `init_android_values` to prevent printing a message
that tells the user to set `-android-keystore` if its not set and build mode is exe
2025-04-05 02:20:06 +02:00
IllusionMan1212
4495f0f0f2 feat: added a -android-keystore-password option to pass a password for the keystore instead of hardcoding it as android 2025-04-04 05:23:12 +02:00
IllusionMan1212
7c26024920 fix: strip trailing slashes for android keystore and jarsigner paths
The `system()` call on linux was failing to execute the `jarsigner` command because its path had a trailing slash
2025-04-04 05:22:04 +02:00
gingerBill
e7ae7b8fd4 Command package -> bundle 2025-03-28 09:27:04 +00:00
gingerBill
0e6cc6ec4b Use working directory for aapt commands 2025-03-27 10:31:59 +00:00
gingerBill
e29b5ae8ed Use u64 for the command kind just in case 2025-03-27 09:27:54 +00:00
gingerBill
6689c722ad odin package android 2025-03-27 09:26:33 +00:00
gingerBill
f13a075cd1 Begin work on odin package-android command 2025-03-26 18:03:36 +00:00
gingerBill
346836a098 Disable -build-mode:exe for -subtarget:android 2025-03-26 17:45:35 +00:00
gingerBill
45ecafd7b1 Really bodgy android packing system for odin build 2025-03-26 17:33:10 +00:00
gingerBill
8e884c6292 Remove _PATH on android environment variables 2025-03-26 16:50:35 +00:00
gingerBill
d48e7bb0b8 Migrate ODIN_ANDROID_* constants to build_settings.cpp; -minimum-os-version:<int> for -subtarget:android 2025-03-26 16:05:21 +00:00
gingerBill
db82a49576 Fix typos 2025-03-26 13:30:18 +00:00
gingerBill
dfd0f18f47 Allow check for -subtarget:android 2025-03-26 13:19:40 +00:00
gingerBill
e6718fcfcc Very very rudimentary support for -target:linux_arm64 -subtarget:android 2025-03-26 13:09:39 +00:00
Laytan Laats
f80e73e036 few llvm 20 changes 2025-03-19 21:22:55 +01:00
gingerBill
867af80bff Add -use-single-module 2025-01-22 13:26:35 +00:00
gingerBill
d4e15074ea Enable -use-separate-modules as default for all platforms 2025-01-22 13:13:00 +00:00
flysand7
3f20b63243 Error if -no-thread-local is used in presence of -no-crt on Unix 2025-01-17 02:51:22 +03:00
flysand7
4f0206ce08 Added compile-time checks for thread locals with -no-crt
Now using any thread-local variables with -no-crt enabled
will cause a compiler error, unless -no-thread-local is
given.

Also fixed a minor typo in a comment.
2025-01-17 01:12:23 +03:00
gingerBill
bca08d3b85 Make -no-dynamic-literals the default now 2025-01-05 13:33:06 +00:00
gingerBill
2efe4c2d68 Add #+feature dynamic-literals 2025-01-05 13:19:10 +00:00
Laytan Laats
676fe34863 fix #4547 - wasm -out without file extension 2024-12-06 19:38:53 +01:00
gingerBill
b36a81ef53 ABI change: for indirect parameters size_of <= 16, do callee stack copy 2024-12-05 10:49:39 +00:00
gingerBill
7adb4c91d4 Fix typo 2024-11-14 17:05:34 +00:00
gingerBill
b9886dfcc7 Add -linker:<string> to replace -lld and -radlink 2024-11-14 17:04:45 +00:00
gingerBill
21a25bddde Add -radlink 2024-11-14 16:32:26 +00:00
Jeroen van Rijn
925d8749e0 Suggest -microarch:native if popcnt instruction is missing.
Fixes #4453.
2024-11-07 12:56:49 +01:00
0dminnimda
c26e7e17a1 Simplify use of pie 2024-11-04 15:39:51 +03:00
0dminnimda
35f1b0f11e Add support for linking as pie 2024-11-04 02:35:49 +03:00
gingerBill
131e8d4187 Disable exe path test 2024-10-08 11:57:54 +01:00
gingerBill
09588836e7 Add -vet-unused-procedures 2024-09-17 11:33:42 +01:00
gingerBill
19c1ed154c Add -vet-packages:<comma-separated-string-array> 2024-09-17 11:01:26 +01:00
gingerBill
b442ea8601 Merge pull request #4206 from laytan/improve-linking-shared-libraries
Improve linking shared libraries
2024-09-10 21:59:21 +01:00
gingerBill
0dddd2b97e Add internal flag
`-internal-fast-isel`
2024-09-09 14:39:53 +01:00
Jeroen van Rijn
466a90010f Fix #4211 2024-09-07 21:07:29 +02:00
Laytan
0aa971207b add -no-rpath 2024-09-04 22:38:19 +02:00
Laytan
28c643d23f riscv compiler support 2024-09-01 21:42:47 +02:00
Laytan
ca6ef95b03 add support for linux_riscv64 and freestanding_riscv64 2024-08-20 14:06:40 +02:00
Laytan Laats
f22ff21039 fix max alignments 2024-08-12 17:05:51 +02:00
Jeroen van Rijn
2bf055ec6e Delete empty file after access check. 2024-08-07 19:38:36 +02:00
Jeroen van Rijn
fdfe6b00e0 Improve output path checking
Fixes #4001
2024-07-31 15:16:09 +02:00
Thomas la Cour
744d7f7ef4 fix for using .rc files 2024-07-30 16:53:14 +02:00
gingerBill
1e37eaf54d Begin work for bit_set[...; [N]T] (not working) 2024-07-15 14:49:20 +01:00
gingerBill
664a71454b -use-separate-modules default on Windows only 2024-07-15 02:53:01 +01:00