summary refs log tree commit diff stats
path: root/compiler/extccomp.nim
Commit message (Collapse)AuthorAgeFilesLines
* --cc:env now works correctly to assign linker executable, allowing to ↵Timothee Cour2021-08-111-1/+1
| | | | | | | cross-compile/run for windows on osx via wine (#18672) * --cc:env now works correctly to assign linker executable, allowing using wine on osx * fixup
* fix #18578 (#18580)flywind2021-07-271-6/+9
| | | | | | | | | | | | | * fix #18578 * add tests * tiny * apply changes * typo * add removeStaticFile
* make changeDetectedViaJsonBuildInstructions warning less verbose when json ↵Timothee Cour2021-06-061-1/+1
| | | | file invalid (eg due to spec change) (#18197)
* simplify extccomp.nim json logic via jsonutils; fix #18084 (#18100)Timothee Cour2021-06-031-180/+76
| | | | | | * simplify extccomp.nim json logic via jsonutils * fix #18084 * simplify further * workaround for bootstrap that can be removed after updating csources_v1 >= 1.2
* externalToLink: use quoteShell to avoid issues with spaces in paths for ↵Timothee Cour2021-04-291-13/+9
| | | | {.link.} pragmas (#17875)
* `--usenimcache` (implied by `nim r main`) now caches some compile options to ↵Timothee Cour2021-04-251-8/+9
| | | | | | | | | | | avoid recompiling when project was previously compiled with such options. (#17829) * `--usenimcache` (implied by `nim r main`) now caches some compile options to avoid recompiling when project was previously compiled with such options. * works * add test * changelog * use std/with
* CIs: attempt to use csources_v1 (#16282)Andreas Rumpf2021-04-211-1/+1
| | | | | | | | * CIs: attempt to use csources_v1 * also updated the BSDs * also updated azure pipelines * std modules should not itself use the 'std/' import dir... * compiler has to be careful with std/ for v1 booting
* -d:nimDebug: calls doAssert false instead of quit (#17739)Timothee Cour2021-04-171-1/+1
|
* hint:cc goes to stderr (like all other hints) instead of stdout (#17465)Timothee Cour2021-03-221-8/+7
| | | Co-authored-by: ee7 <45465154+ee7@users.noreply.github.com>
* [minor] clean extccomp (#17069)flywind2021-02-171-21/+16
|
* fix #16947: `--app:staticlib -o:lib` now first removes lib (#16948)Timothee Cour2021-02-081-0/+1
|
* fix #16949 --app:staticlib works on openbsd; --app:staticlib tested in CI ↵Timothee Cour2021-02-081-2/+2
| | | | (#16950)
* fix #16206, `nim r / nim -r` recompiles if cwd changes (#16349)Timothee Cour2021-01-021-2/+13
|
* fix `hintProcessing` dots interference with `static:echo` and `hintCC`; add ↵Timothee Cour2020-12-301-1/+4
| | | | | | | | | | tests for `nim secret`, add tests for hintProcessing, misc other bug fixes (#16495) * fix dots interfering with static:echo * add tests * fix hintProcessing dots for hintCC * improve trunner tests * fix bug: readLineFromStdin now writes prompt to stdout, consistent with linenoise and rdstdin * disable a failing test for windows
* Fix nimsuggest/#117 (#15602)Clyybber2020-11-151-4/+1
|
* new: `nim -e:cmd` to run a command directly; also fixes #15731 (#15687)Timothee Cour2020-11-091-0/+11
| | | | | | | | | | | | | | | * new: `nim -i cmd` * rename -i to -e (for eval); consistent with majority of other programing languages * `nim e -e:cmd` now works; bugfix: `echo cmd | nim e -` now works * honor --betterRun * address comments * --eval alias for -e (replaces undocumented --eval which was a noop) * --eval now defaults to e (nimscript) instead of r * address comment: remove -e, only keep --eval * address comment * fixup * Update compiler/nimconf.nim Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
* implements https://github.com/nim-lang/RFCs/issues/260 (#15505)Andreas Rumpf2020-10-071-0/+4
| | | | | * implements https://github.com/nim-lang/RFCs/issues/260 * added a test case
* Big compiler Cleanup (#14777)Clyybber2020-08-281-2/+2
|
* fixes #14194 (#15023)Andreas Rumpf2020-07-201-1/+2
|
* Fix #12745 (#14879)Tomohiro2020-07-021-11/+1
|
* bug fixes with sfMainModule, hints, mainPackageNotes, mainPackageId, ↵Timothee Cour2020-06-041-2/+19
| | | | | | | 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
* Fix a problem with extra build commands. (#14528)Khronos2020-06-011-11/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | 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 } ```
* fix some issues with --backend (#14363)Timothee Cour2020-05-161-7/+8
| | | | | * fix some issues with --backend * fix https://github.com/timotheecour/Nim/issues/175; improve upon #14306
* `nim doc --backend:js`, `nim doc --doccmd:-d:foo`, `nim r --backend:js`, ↵Timothee Cour2020-05-111-12/+12
| | | | | | | | | | `--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
* added a new feature: --cc:env so that you can use any C compiler as long as ↵Andreas Rumpf2020-05-061-12/+26
| | | | it works like GCC
* cleanup the CC setting, only leave in there what is at least semi-officially ↵Andreas Rumpf2020-05-061-120/+0
| | | | supported
* fixes #14209 [backport:1.2] (#14213)Andreas Rumpf2020-05-051-0/+28
| | | | * fixes #14209 [backport:1.2] * improve stability
* vcc fix (#14222)cooldome2020-05-041-1/+1
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* fix #14132 dsymutil should not be called on static libraries (#14133) ↵Timothee Cour2020-04-271-6/+6
| | | | [backport:1.2]
* Add LTO support for most compilers and do some VCC fixes (#14013)Keithcat12020-04-221-3/+4
| | | | | | | | | * 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
* Add support for `zig cc` as C compiler. (#13757)Hessam Mehr2020-04-081-0/+11
|
* fix #13910 (#13917)cooldome2020-04-071-2/+2
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* fix some codegen bugs: NIM_BOOL, NIM_STATIC_ASSERT, --passc:-std=... (etc) ↵Timothee Cour2020-04-071-3/+5
| | | | | | | | (#13798) * fix cgen bool D20200328T203812 * --passc:std=c++17 (etc) now works instead of silently ignored * document caveats for NIM_NIL
* Attempt to finish off araq cpp exceptions (#13695)cooldome2020-03-191-5/+23
| | | | | | | | | | | | | | | * 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>
* fix #13412 nim now recompiles for stdin input; SuccessX now configurable; ↵Timothee Cour2020-03-191-0/+10
| | | | | | can show whether it recompiled (#13506) * fix #13412 nim now recompiles for stdin input; SuccessX now indicates whether it recompiled
* fix #13633 fix koch boot crashing regression (#13635)Timothee Cour2020-03-121-1/+1
|
* Amend fix for #13633 (#13636)Clyybber2020-03-121-1/+1
|
* Fix #13633Clyybber2020-03-121-1/+2
|
* Make listCmd honor hint:cc:off (#13606)Clyybber2020-03-111-50/+35
| | | | | | | | | | | | | | | | | * 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
* `koch --nim:pathto/nim boot` and `koch boot --hint:cc:off` now work (#13516)Timothee Cour2020-03-111-14/+19
| | | | | * `koch boot --hint:cc:off` now works * `koch --nim:pathto/nim boot` now works; code cleanup
* Revert "Support cross compiling from host to host (#12859)" (#13591)genotrance2020-03-101-1/+2
| | | This reverts commit e4f7656772657069cd3e27704d687b292d8d24ab.
* Only print the link command when listCmd is active; fix docs (#13603)Clyybber2020-03-071-1/+1
|
* make it possible to pass linker options for vcc (#13535) [backport]cooldome2020-02-291-1/+1
|
* fix #8312 --hints:off and --warnings:off now honored everywhere (#13489)Timothee Cour2020-02-261-1/+1
|
* Fix #8648 - use parent streams to avoid hang (#13445)genotrance2020-02-201-6/+5
|
* fixes #13144 (#13145)Timothee Cour2020-01-181-9/+4
| | | | * fixup: genscript now does not copy nimbase.h but uses -I$nim/lib
* pass platform argument only if vccexe is used (#13078)cooldome2020-01-141-10/+9
| | | | | * pass platform only if vccexe is used * fixes #12297
* [easy] --hint:link:on now shows link cmd instead of nothing (#13056)Timothee Cour2020-01-071-2/+1
| | | | | | * --hint:link:on now shows link cmd instead of nothing * update doc for --listCmd
* fix #12988 (#13022)rockcavera2020-01-031-3/+3
| | | fix #12988
* fixes #12735 on osx, call dsymutil for debug builds (#12931)Timothee Cour2019-12-211-0/+21
| | | | | | * fix #12735 osx: dsymutil needs to be called for debug builds * also write dsymutil command to extraCmds in json build file