Andreas Rumpf
49d4b50fe5
fixes #14194 ( #15023 )
2020-07-20 14:28:00 +02:00
Tomohiro
366b9a7e4a
Fix #12745 ( #14879 )
2020-07-02 13:20:34 +02:00
Timothee Cour
01f6e505c8
bug fixes with sfMainModule, hints, mainPackageNotes, mainPackageId, hintSuccessX ( #14555 )
...
* SuccessX `out` now works with --compileOnly and jsonscript; fix bugs in jsonscript
* several bug fixes; eg: `nim doc lib/system/io` now is sane
* dummy edit to force docs CI
2020-06-04 10:40:17 +02:00
Khronos
5900d8442c
Fix a problem with extra build commands. ( #14528 )
...
When --compileOnly is on, extraCmds are not added to JsonBuildInstructions.
```
$ echo 'echo 123'>test.nim
$ nim c --debuginfo --nimcache:cache test
$ ls
cache test test.dSYM test.nim
$ tail -n3 cache/test.json
"extraCmds": ["dsymutil /Users/khronos31/src/tmp/test"],
"stdinInput": false
}
```
```
$ echo 'echo 123'>test.nim
$ nim c --debuginfo --nimcache:cache --compileOnly test
$ nim jsonscript --nimcache:cache test
$ ls
cache test test.nim
$ tail -n3 cache/test.json
"extraCmds": [],
"stdinInput": false
}
```
2020-06-01 14:06:25 +02:00
Timothee Cour
c777f2fb60
fix some issues with --backend ( #14363 )
...
* fix some issues with --backend
* fix https://github.com/timotheecour/Nim/issues/175 ; improve upon #14306
2020-05-16 13:09:18 +02:00
Timothee Cour
9502e39b63
nim doc --backend:js, nim doc --doccmd:-d:foo, nim r --backend:js, --doccmd:skip + other improvements (#14278 )
...
* `nim doc --backend:js|cpp...`
`nim doc --doccmd:'-d:foo --threads:on'`
`nim r --backend:cpp...` (implies --run --usenimcache)
* --usenimcache works with all targets
* --docCmd:skip now skips compiling snippets; 50X speedup for doc/manual.rst
2020-05-11 12:01:18 +02:00
Andreas Rumpf
c64db68f0b
added a new feature: --cc:env so that you can use any C compiler as long as it works like GCC
2020-05-06 18:41:24 +02:00
Andreas Rumpf
1b2b32169a
cleanup the CC setting, only leave in there what is at least semi-officially supported
2020-05-06 18:41:24 +02:00
Andreas Rumpf
64e839d5fd
fixes #14209 [backport:1.2] ( #14213 )
...
* fixes #14209 [backport:1.2]
* improve stability
2020-05-05 00:48:13 +02:00
cooldome
e86a6d24d5
vcc fix ( #14222 )
...
Co-authored-by: cooldome <ariabushenko@bk.ru >
2020-05-04 19:42:29 +02:00
Timothee Cour
b8d7a98265
fix #14132 dsymutil should not be called on static libraries ( #14133 ) [backport:1.2]
2020-04-27 12:39:27 +02:00
Keithcat1
d27bc03b21
Add LTO support for most compilers and do some VCC fixes ( #14013 )
...
* Added LTO in nim.cfg, added /link in extccomp.nim and other fixes
* Fix line endings
* Fix line endings, for real this time. Almost certainly. Like, 95% certain.
* Removed /MD from extccom.nim VCC comiler
2020-04-22 23:56:43 +02:00
Hessam Mehr
bff742cd8b
Add support for zig cc as C compiler. ( #13757 )
2020-04-08 15:24:14 +02:00
cooldome
c835c8c4e7
fix #13910 ( #13917 )
...
Co-authored-by: cooldome <ariabushenko@bk.ru >
2020-04-07 19:40:14 +02:00
Timothee Cour
ab5e26c53c
fix some codegen bugs: NIM_BOOL, NIM_STATIC_ASSERT, --passc:-std=... (etc) ( #13798 )
...
* fix cgen bool D20200328T203812
* --passc:std=c++17 (etc) now works instead of silently ignored
* document caveats for NIM_NIL
2020-04-07 15:17:30 +02:00
cooldome
b3176b8817
Attempt to finish off araq cpp exceptions ( #13695 )
...
* config update
* disable a questionable test
* remove c++ exception handling IDs, new impl doesn't require it anymore
* C++ based exceptions finally work
* fixes bootstrapping problem in C++ mode
* teach GCC it's 2020 now
* more bugfixes for C++ based exception handling
* apply cooldome's patch
* another attempt to enable C++11
* bug fix
Co-authored-by: Araq <rumpf_a@web.de >
Co-authored-by: cooldome <ariabushenko@bk.ru >
2020-03-19 20:38:25 +01:00
Timothee Cour
1f2042411a
fix #13412 nim now recompiles for stdin input; SuccessX now configurable; can show whether it recompiled ( #13506 )
...
* fix #13412 nim now recompiles for stdin input; SuccessX now indicates whether it recompiled
2020-03-19 10:39:18 +01:00
Timothee Cour
60a3e036f6
fix #13633 fix koch boot crashing regression ( #13635 )
2020-03-12 11:39:10 +01:00
Clyybber
2bb0ada797
Amend fix for #13633 ( #13636 )
2020-03-12 11:20:08 +01:00
Clyybber
d84c4bba9b
Fix #13633
2020-03-12 11:01:03 +01:00
Clyybber
6b3098c378
Make listCmd honor hint:cc:off ( #13606 )
...
* Make listCmd honor hint:cc:off
* Tiny cleanup
* Tiny tiny cleanup
* VERY IMPORTANT: --hint:cc:on will overwrite --verbosity:0 :p
* Tiny cleanup
* Stupid
* Move displayProgressCC to where its required
* Tiny cleanup
2020-03-11 23:04:33 +01:00
Timothee Cour
e64f1c7ee4
koch --nim:pathto/nim boot and koch boot --hint:cc:off now work (#13516 )
...
* `koch boot --hint:cc:off` now works
* `koch --nim:pathto/nim boot` now works; code cleanup
2020-03-11 00:31:34 +01:00
genotrance
ab5d962b50
Revert "Support cross compiling from host to host ( #12859 )" ( #13591 )
...
This reverts commit e4f7656772 .
2020-03-10 15:58:27 +01:00
Clyybber
eae31a7f8d
Only print the link command when listCmd is active; fix docs ( #13603 )
2020-03-07 23:53:43 +01:00
cooldome
0f1a4ac96c
make it possible to pass linker options for vcc ( #13535 ) [backport]
2020-02-29 18:57:00 +01:00
Timothee Cour
bd90199a2f
fix #8312 --hints:off and --warnings:off now honored everywhere ( #13489 )
2020-02-26 10:26:47 +01:00
genotrance
7a2b623d2a
Fix #8648 - use parent streams to avoid hang ( #13445 )
2020-02-20 23:04:48 +01:00
Timothee Cour
5010bc1af5
fixes #13144 ( #13145 )
...
* fixup: genscript now does not copy nimbase.h but uses -I$nim/lib
2020-01-18 01:21:13 +01:00
cooldome
b4545f03de
pass platform argument only if vccexe is used ( #13078 )
...
* pass platform only if vccexe is used
* fixes #12297
2020-01-14 15:02:10 +01:00
Timothee Cour
e5ae7ceaa3
[easy] --hint 🔗 on now shows link cmd instead of nothing ( #13056 )
...
* --hint🔗 on now shows link cmd instead of nothing
* update doc for --listCmd
2020-01-07 10:38:59 +01:00
rockcavera
89570aa44b
fix #12988 ( #13022 )
...
fix #12988
2020-01-03 22:41:58 +01:00
Timothee Cour
b081166685
fixes #12735 on osx, call dsymutil for debug builds ( #12931 )
...
* fix #12735 osx: dsymutil needs to be called for debug builds
* also write dsymutil command to extraCmds in json build file
2019-12-21 20:59:08 +01:00
Neelesh Chandola
e4f7656772
Support cross compiling from host to host ( #12859 )
2019-12-09 13:39:25 +01:00
cooldome
01c7409924
Fix external file recompilation ( #12802 )
2019-12-03 16:54:42 +01:00
Clyybber
7e747d11c6
Cosmetic compiler cleanup ( #12718 )
...
* Cleanup compiler code base
* Unify add calls
* Unify len invocations
* Unify range operators
* Fix oversight
* Remove {.procvar.} pragma
* initCandidate -> newCandidate where reasonable
* Unify safeLen calls
2019-11-28 17:13:04 +01:00
Timothee Cour
dfe5d115fb
fixes #12663 staticRead now creates a dependency for rebuilds ( #12731 ) [backport]
...
* fix #12663 staticRead
* address comments
2019-11-25 14:44:13 +01:00
Andreas Rumpf
64e8f050e1
implemented a new localPassc pragma ( #12706 )
2019-11-22 14:20:15 +01:00
Andreas Rumpf
f7ba7c711a
added the --asm command line option for inspection of the produced assember code ( #12699 )
2019-11-21 22:53:51 +01:00
Tomohiro
8040c84615
Fix Nim specify wrong option to vccexe when vcc.options.always is set ( #12490 ) [backport]
2019-10-24 23:43:59 +02:00
Juan Carlos
4a0debfe87
Add no-ident for GCC when -d:release ( #12454 )
2019-10-18 14:13:55 +02:00
cooldome
0355c64b92
External file compilation improvement ( #12380 )
2019-10-08 08:10:55 +02:00
Federico Ceratto
39290cf88c
Fix spellings ( #12277 ) [backport]
2019-09-27 07:02:54 +02:00
Araq
fd63443419
changed name mangling for generated C files
2019-09-13 19:11:48 +02:00
Andreas Rumpf
745669ac25
fixes #11758 [nobackport]
2019-07-17 20:06:10 +02:00
Araq
d55cc0888d
better run also considers the command line; fixes #11719 [feature]
2019-07-12 21:53:46 +02:00
Araq
6d125da93f
koch/nim: completion of the 'better run' feature
2019-07-12 10:48:29 +02:00
Andreas Rumpf
3d88d06b32
better run [feature] ( #11709 )
...
* track the checksums of all involved Nim files for smarter 'nim c -r' recompiles
* don't recompile unless necessary for 'nim c -r' [feature]
* [feature] koch boot uses a two step process in order to free the RAM before the GCC/Clang invocations
* fixes a serious regression
2019-07-11 21:36:23 +02:00
Araq
c94647aeca
styleCheck: make the compiler and large parts of the stdlib compatible with --styleCheck:error
2019-07-10 12:42:41 +02:00
Araq
8cc9753285
fixes #11405
2019-06-05 16:26:23 +02:00
Ico Doornekamp
70fb3a93e9
list available options for --cpu, --os and --cc if the passed option is not found ( #11328 )
2019-05-25 20:22:57 +02:00