Commit Graph

210 Commits

Author SHA1 Message Date
gingerBill 6ed6a91a64 Begin LLVM C API integration 2020-02-01 22:50:57 +00:00
gingerBill 7e6454b2f7 Add odin [command] -help (not requiring a file to be passed) 2020-01-31 23:34:00 +00:00
gingerBill c3205316ed Remove debug printing 2020-01-18 14:53:53 +00:00
gingerBill b542ef273d Begin work on -target:windows_386 2020-01-18 14:44:53 +00:00
gingerBill 404132de17 Fix microsoft_craziness.h to work correctly 2020-01-18 12:36:18 +00:00
oskarn 842281ddd3 Fix dylib foreign import 2020-01-01 11:36:42 +01:00
gingerBill 2252d992d7 Add -disable-assert to disable the code generation of the built-in run-time 'assert' procedure 2019-12-29 21:10:27 +00:00
gingerBill 85e31e1b69 Fix os.open 2019-12-23 18:10:09 +00:00
gingerBill 19c32ecb81 Add extra to -help output 2019-12-21 11:27:55 +00:00
gingerBill 494b1e7eaa Add -help which prints information about the compiler flags 2019-12-21 11:22:46 +00:00
gingerBill f170648629 Fix issue with -thread-count flag with <= 0 count 2019-12-03 18:23:14 +00:00
gingerBill 9db81498d8 Make the string type elements "immutable", akin to char const * in C
Allows for extra security and optimization benefits
2019-12-01 14:10:59 +00:00
gingerBill 0c0c83ee29 Disable find_visual_studio_and_windows_sdk_utf8 temporarily 2019-11-28 21:07:06 +00:00
gingerBill 37e3e081c6 Update microsoft_craziness.h to work correctly with the rest of the codebase (and not use WIN32_LEAN_AND_MEAN) 2019-11-27 15:18:32 +00:00
castano f8dd4816ff Integrate microsoft_craziness better. 2019-11-14 09:30:05 -08:00
castano 928a445a14 Fix definition. GB_SYSTEM_WINDOWS is not defined yet. Ideally microsoft_crazines.h should be included after common, but conflicts with defer macro. 2019-11-14 09:29:59 -08:00
castano 42cd78497a Use Jon's single file lib to find the latest compiler and SDK paths instead of relying on environment variables.
This allows you to run the odin compiler without having to use the visual studio command prompt or setting up environment variables. It would be nice to not rely on the automatic search exclusively, but allow specifying the desired compiler or SDK version.

This change introduces various library dependencies in order to interact with COM objects. Not sure if there's a way around that.
2019-11-14 09:29:45 -08:00
gingerBill 967981aacd Add -show-more-timings 2019-11-10 21:49:02 +00:00
Tetralux 10b109e25f Clarify that you can pass a directory to odin build
Changes the usage information to this:
```
D:\Software\odin\odin.exe is a tool for managing Odin source code
Usage:
        D:\Software\odin\odin.exe command [arguments]
Commands:
        build     compile .odin file, or directory of .odin files, as an executable.
                  one must contain the program's entry point, all must be in the same package.
        run       same as 'build', but also then runs the newly compiled executable.
        check     parse and type check .odin file
        query     parse, type check, and output a .json file containing information about the program
        docs      generate documentation for a .odin file
        version   print version
```
2019-10-19 17:55:05 +01:00
gingerBill 2a6d9e8927 #panic; Minor change to demo.odin; Fix #assert bug at file scope 2019-10-13 12:38:23 +01:00
gingerBill 218d1131e8 Change how foreign imports work for mac 2019-09-29 09:25:33 +01:00
gingerBill a9a2dafca5 Merge pull request #430 from nakst/master
New Essence OS layer; cross-compiling improvements
2019-09-09 14:39:35 +01:00
Mikkel Hjortshøj bc34083c9c Also return on unix 2019-09-08 01:10:54 +02:00
Mikkel Hjortshøj 08dd8414c1 Make odin run return the process exit code 2019-09-08 01:09:04 +02:00
nakst 22e982c8fb New Essence OS layer; cross-compiling improvements 2019-09-02 16:46:50 +01:00
gingerBill 5697d6df74 -go-to-definitions (OGTD file format) 2019-05-26 15:16:45 +01:00
gingerBill 426c1ed6f4 -compact flag for 'odin query' 2019-05-25 20:28:49 +01:00
gingerBill 458ec5922e odin query
Output .json file containing information about the program
2019-05-25 20:24:19 +01:00
gingerBill 394baa9ddd Merge branch 'master' of https://github.com/odin-lang/Odin 2019-03-15 15:41:15 +00:00
gingerBill 3d86fc2f2f Minor adjustments 2019-03-15 15:41:06 +00:00
Jeroen van Rijn 61b07335d8 Fix build error on !Windows. 2019-03-15 07:37:20 +01:00
gingerBill dbcd49acfc Add -pdb-name for custom names of PDBs 2019-03-14 23:26:32 +00:00
gingerBill cdfaa643cc Reimplement -collection; remove static from Odin tokenizer/parser in core library 2019-02-23 23:30:03 +00:00
gingerBill 2878cd8241 New build flag: -define:foo=123 2019-02-23 23:21:27 +00:00
thebirk 7ea7fc10db Fixed macOS not compiling. 2019-02-01 15:33:27 +01:00
thebirk dc3d62d437 Fixed -out dropping extension on linux. 2019-02-01 15:12:20 +01:00
gingerBill dee28d998f Allow for @indent for attributes that don't require any parameters; Add -ignore-unknown-attributes 2019-01-30 14:24:14 +00:00
Tetralux 1e180d611d Allow 'odin run program.odin -- <args-for-program.exe> 2019-01-28 17:58:48 +00:00
gingerBill d02b050850 Fix typos for OS X debug builds 2018-12-02 19:39:21 +00:00
gingerBill 444f4f446a -vet flag to do basic vetting of code 2018-11-25 14:14:58 +00:00
lachsinc 8a789e33b0 Remove llc/opt hack. XX.bc now contains useful debug info thanks to removal of optimization flags in debug builds. 2018-09-18 14:17:43 +10:00
lachsinc 2f86f8f8e0 Provide llvm ir with more debug info (for Visual Studio debugger support). 2018-09-18 10:50:56 +10:00
gingerBill adbb3bb75f Add -lld flag for using "bin\lld-link.exe" on Windows 2018-08-28 19:28:34 +01:00
gingerBill 89f4e7a8db -no-crt flag for windows amd64 2018-08-13 01:22:14 +01:00
thebirk 5e5f5bfa8d Fixed 'sh: main: command not found' error on linux. 2018-08-08 17:48:17 +02:00
gingerBill a6fe656f21 foreign import x {"foo.lib", "bar.lib"} 2018-07-29 20:56:09 +01:00
gingerBill c3c7834246 BigInt support in the constant system 2018-07-28 00:41:31 +01:00
gingerBill fa4e95105f Loop array arithmetic on large arrays 2018-07-07 11:13:20 +01:00
Morten Vassvik ea055f1465 Surrounded explicit link paths (.a and .so) and the exe path for 'odin run' in quotes, so that it works in paths containing characters that must be escaped (like spaces) 2018-07-05 15:46:11 +02:00
gingerBill 5fe4c33d0e Allow importation of core:builtin to get built-in entities 2018-06-17 21:46:37 +01:00