gingerBill
e71cd871c4
Reimplement -build-mode:static/-build-mode:lib
2024-05-16 14:27:05 +01:00
Laytan Laats
bb58926b7a
llvm 18: general unix and darwin specifics
2024-05-07 16:52:46 +02:00
Laytan Laats
25f1d0906d
compiler: improve target features support
2024-05-02 00:59:52 +02:00
gingerBill
75fcd50b9a
Merge branch 'master' of https://github.com/odin-lang/Odin
2024-04-22 18:41:51 +01:00
gingerBill
c6a446fe87
Add check for build. and run. typos
2024-04-22 18:41:48 +01:00
Thomas la Cour
ebb1a07dd0
spelling
2024-04-20 09:37:30 +02:00
gingerBill
ece78d22d2
Add -no-type-assert and ODIN_NO_TYPE_ASSERT
2024-04-18 11:22:31 +01:00
Laytan Laats
9f97056c14
add 'odin root' command
2024-04-13 20:08:57 +02:00
gingerBill
b6d2ac11b8
Add -vet-unused-variables and `-vet-unused-imports (-vet-unused is both)
2024-04-11 15:24:36 +01:00
gingerBill
0e5a482c42
Default to "smart" linker behaviour; Add -min-link-libs to use minimize link libs if wanted
2024-04-04 16:11:26 +01:00
gingerBill
a9bfb3ac2e
Clarity warning and error printing
2024-04-02 23:39:14 +01:00
Laytan Laats
b26a685b76
darwin: be less annoying about "incompatible" library versions
...
After #3316 we set a default minimum version, now this will warn if you
link with a library that is targeting later versions.
This might be a bit annoying, especially when the user hasn't actually
given Odin a minimum target.
So this PR makes these warnings only show when you explicitly give a
target version (afaik that is the only thing that -mmacosx-min-version
actually does for us because we don't use it to compile anything, just
to link).
2024-03-25 22:11:20 +01:00
Laytan Laats
15c1e8274d
darwin: fix ld warnings and set minimum os version
2024-03-23 22:12:05 +01:00
gingerBill
433109ff52
Replace gb_exit(1) with exit_with_errors() where appropriate
2024-03-19 16:29:45 +00:00
gingerBill
ba428fecdb
Add -json-errors
2024-03-19 16:25:09 +00:00
gingerBill
9a2fc6cf4c
Serialize errors to make them sortable, deterministic, and generally more control
2024-03-19 15:34:29 +00:00
gingerBill
a08250ac5b
Improve error handling for missing library collection provided by the compiler
2024-02-07 17:15:59 +00:00
flysand7
8ea8fbeccb
Make run args take the first '--' as the start of the args, instead of the last '--'
2024-02-04 14:25:53 +11:00
gingerBill
9fb090d1b8
Merge pull request #3141 from laytan/add-all-packages-flag-for-tests
...
Add `odin test -all-packages` to be able to test an entire project
2024-01-31 11:59:54 +00:00
gingerBill
395e0fb225
-default-to-panic-allocator
2024-01-28 22:09:20 +00:00
gingerBill
09fa1c29cd
Move core:runtime to base:runtime; keep alias around
2024-01-28 21:05:53 +00:00
Laytan Laats
31914e9cb9
Add odin test -all-packages to be able to test an entire project
2024-01-26 18:27:05 +01:00
Jeroen van Rijn
fc047a8043
Expand -subsystem option on Windows
...
W:\Odin>odin run sketch.odin -file -subsystem:foo
Invalid -subsystem string, got oo. Expected one of:
BOOT_APPLICATION, CONSOLE (default), EFI_APPLICATION, EFI_BOOT_SERVICE_DRIVER, EFI_ROM, EFI_RUNTIME_DRIVER, NATIVE, POSIX, WINDOWS (or WINDOW), WINDOWSCE
We now also set the constant ODIN_WINDOWS_SUBSYSTEM, which is "" for non-Windows targets.
2024-01-18 19:12:39 +01:00
gingerBill
d7d23e65ea
Clean up error block usage
2024-01-05 13:47:00 +00:00
gingerBill
ca2b2c498e
Add -obfuscate-source-code-locations
2023-12-13 16:47:34 +00:00
Jeroen van Rijn
c5c46c5073
Silence writable string warnings when compiling Odin on Linux.
2023-12-03 18:08:18 +01:00
Tarık B
bfff322eb9
Fix oversights, apply minor improvements
2023-11-25 10:24:22 +01:00
Tarık B
dd60802db4
Apply consistent usage of third-person singular
2023-11-25 10:24:22 +01:00
Tarık B
6db42cfaec
Standardize to consistent 3-space indentation for inline comments
...
Inline comments in a cohesive block of multiple lines are aligned with 3-space
indentation to the length of the longest line.
2023-11-25 10:24:22 +01:00
Tarık B
21f5b41150
Remove redundant example
2023-11-25 10:24:22 +01:00
Tarık B
1f007a46ee
Fix newly introduced capitalization and punctuation error
2023-11-25 10:24:22 +01:00
Tarık B
4fa4feb669
Increase indentation for -vet extra check listing
2023-11-25 10:24:22 +01:00
Tarık B
5fd3fc4c7c
Unify showing of available options
2023-11-25 10:24:22 +01:00
Tarık B
ee2d3e00fd
Capitalize first word of sentences
2023-11-25 10:24:22 +01:00
Tarık B
6f65ed6cc8
Add period at the end of sentences.
2023-11-25 10:24:22 +01:00
Tarık B
70525a12ca
Fix typo
2023-11-25 10:24:22 +01:00
Tarık B
914950592c
Fix indentation
2023-11-25 10:24:22 +01:00
Jeroen van Rijn
0ca39c70a5
Add -microarch:? to help text.
2023-11-11 13:07:12 +01:00
Jeroen van Rijn
f6f4734fee
Re-add break.
2023-11-10 20:22:20 +01:00
Jeroen van Rijn
f903951016
Facored out get_default_microarchitecture
...
Moved `generic` -> `x86-64-v2` selection into its own procedure so that `llvm_backend.cpp` and `main.cpp` can share the same logic.
2023-11-10 20:14:00 +01:00
Jeroen van Rijn
e19460cbd7
Add -microarch:?
2023-11-10 19:37:08 +01:00
jcmdln
bd86cb22e0
Support LLVM >=17.0.1 on Darwin and Linux
2023-10-11 21:06:42 -04:00
gingerBill
1f643b5816
Remove -vet-extra
2023-09-30 18:29:18 +01:00
gingerBill
bc401fa392
Fix wrong import due to grep-replace
2023-09-21 10:41:42 +01:00
gingerBill
96fbafe359
Update ABI breaking changes for f16 types (due to LLVM 15+)
2023-09-21 10:38:44 +01:00
gingerBill
e82b0ea4cd
Add -o:aggressive for LLVM 17
2023-09-21 09:48:53 +01:00
gingerBill
2160484b62
Support -sanitize:<string> for address, memory, thread for LLVM 17
2023-09-21 09:40:33 +01:00
gingerBill
e748d2f2af
Update to LLVM-17
2023-09-19 16:15:26 +01:00
gingerBill
939bf4bb5d
Add experimental -subtarget:ios
2023-08-08 11:35:51 +01:00
gingerBill
8060da2132
Toggle tilde backend in the build script
2023-08-03 13:16:23 +01:00