Commit graph

105 commits

Author SHA1 Message Date
alaviss
7ef268274f Haiku support for Nim (#8542)
* posix_other: Haiku now has spawn.h

This is added per https://dev.haiku-os.org/ticket/13446

* posix_other: Add Haiku specific Dirent members

* cpuinfo: Add an implementation for Haiku

* distros: Add basic Haiku support

* encodings: update Haiku support

* fenv, math: Haiku now provides libm

* times: Add Haiku struct members

* ansi_c, osalloc: Add Haiku constants

* threads: Add Haiku support

* testament: Haiku uses LIBRARY_PATH

* nim.cfg: Update Haiku support

libnetwork should only be linked if network functions are used

* threads: Haiku does not support -pthread switch

* tworkingdir: Haiku's env is in /bin

* posix_other: add SIGKILLTHR for Haiku

* sockets: link with libnetwork on Haiku

* coro: correct ucontext.h location

http://pubs.opengroup.org/onlinepubs/009696699/basedefs/ucontext.h.html

* coro: ucontext backend is not available on Haiku

Haiku doesn't provide the <ucontext.h> header, as it was removed from POSIX

* coro: fix setjmp backend

The compiler does not allow statements after a noreturn function

* nativesockets: Haiku doesn't support AI_V4MAPPED

* system: hostOS can contains "haiku"

* os: add support for Haiku's packagefs

packagefs is read-only, but there are writable holes to the underlying
file system as well

* os: update constant for Haiku
2018-08-14 09:35:07 +02:00
Joey
ab840f445e
Remove cross-platform breaking env var in Nintendo Switch config
This was bad to put in here, so my bad. It doesn't work on anything except platforms with shell support. Users can use `--passC` and `--passL` options for customization.
2018-07-15 10:54:50 +09:00
Joey
559a7615ad Nintendo switch support (#8069)
* Add config section for Nintendo Switch
* Add compiler configuration for Nintendo Switch and it's CPU
* Add specific lib code for Nintendo Switch
* Add GC support for Nintendo Switch
* Update changelog for Nintendo Switch
* Update changelog with more info about fixed paths
* Cleaned up GC memory management a bit
* Relocate docs for Switch
* Rename aarch64NoneElfGcc to nintendoSwitchGCC
* Remove armv8a57
* Fix installer.ini
* Reuse code in linux and amd64
* Add posix defs for nintendo switch
* Add more defined sections for nintendo switch
* Remove old comment
* Add what's not supported for Nintendo Switch docs
* Make nintendoswitch == posix
* Remove DEVKITPRO references from nim.cfg
* Make PR extccomp changes
* Remove Result type alias
* Add separate switch consts file
* Update docs for nintendo switch
* Fix travis errors with undefined consts and add correct wait.h procs
2018-06-27 12:35:09 +02:00
Emery Hemingway
5b176f14a2 Provide configuration for Genode toolchain 2018-05-18 16:52:08 +02:00
Ganesh Viswanathan
6ca8478548 Minor fixes to enable tcc 2018-05-14 11:40:59 +02:00
Michał Zieliński
1a0f8fd4e6
Change default ARM compiler name
In most distros (Ubuntu, Debian, Arch Linux) the only available Linux ARM toolchain uses arm-linux-gnueabihf- prefix. That's also the correct compiler for cross-compiling code for Raspberry Pi, which is what most people will probably want.
2018-01-21 16:26:22 +01:00
jcosborn
399c5e38b7 don't make optNilCheck default to on for now (#7058)
* don't make optNilCheck default to on for now

* add conditional symbol nimHasNilChecks
2018-01-17 01:32:40 +01:00
Fredrik Høisæther Rasch
de97f381fa Fix path for sh on Android (#6661) 2017-11-03 21:09:01 +01:00
Fredrik Høisæther Rasch
eda9b303d2 VCC always creates debug symbols when not in release (#6397)
Use the `/Z7` option instead of `/Zi /FS` to store all debug info in the `.obj` file instead of a shared `.pdb` file
2017-11-01 14:48:46 +01:00
Andreas Rumpf
786f9315e3 android target: use clang 2017-08-30 20:44:40 +02:00
Andreas Rumpf
28da04c1f7 Android support: put Termux specific dependencies behind a -d:termux switch 2017-08-30 13:33:09 +02:00
Fredrik Høisæther Rasch
3ce8bec359 Nim Configuration cleanup for VCC (#6261) 2017-08-21 11:20:24 +02:00
Fredrik Høisæther Rasch
a71f780253 Added missing C++ options for VCC (#6195) 2017-08-08 12:06:48 +02:00
Fredrik Høisæther Rasch
c39e202976 Introduce first class support for Android (#5772) 2017-08-06 02:18:15 +02:00
Araq
91eba77b96 fixes #4763 2017-07-17 09:28:03 +02:00
Fredrik Høisæther Rasch
513b0fed4d vcvarsallpath explaination no longer needed with vccdiscover
This reverts commit 7c4911d
2017-03-21 12:18:32 +01:00
Fredrik Høisæther Rasch
86206b2533 Added explanatory comments about vccexe and its path argument in nim.cfg 2017-03-21 12:18:29 +01:00
Fredrik Høisæther Rasch
4002bdf873 Added missing VCC C++ options to nim.cfg 2017-03-21 12:17:09 +01:00
Araq
2e65b48b62 nim.cfg: happy new year 2017-02-07 00:49:12 +01:00
Axel Pahl
8071648129 revert nim.cfg to version before b26e6e3 (#5306)
... to enable building of koch on Linux again
2017-01-31 11:32:08 +01:00
Araq
b26e6e3589 fixes #5301 2017-01-30 19:01:03 +01:00
mfxmfx
88f95a2f7e nim.cfg: update comments about the stack size to match reality (#5206) 2017-01-11 05:23:38 +01:00
Araq
3a4ec7f101 use dwarf-3 debug information on Windows/GCC for compat with older GDBs 2016-12-16 22:02:49 +01:00
Fredrik Høisæther Rasch
a13e2bd5ec Prevent concurrency issues on the PDB file by using /FS option 2016-10-25 21:36:47 +02:00
Fredrik Høisæther Rasch
d94bb4a0e1 options.linker made platform specific
previous options.linker.always is not supported in nim.cfg
Removed /Fd\"$projectName.pdb\" (Implied by /Zi)
2016-10-25 21:17:18 +02:00
Fredrik Høisæther Rasch
febb551f7a corrected --platform arg for amd64 (VCC) 2016-10-25 21:08:23 +02:00
Fredrik Høisæther Rasch
1af0ac9d2c vccwrapper with nim-like command line args 2016-10-25 19:19:58 +02:00
Fredrik Høisæther Rasch
3b1c5183df config: corrected vcc wrapper arguments to right syntax 2016-10-25 18:07:31 +02:00
Fredrik Høisæther Rasch
7b1f948b72 Nim.cfg: Arch option dependent on target platform 2016-10-25 10:59:43 +02:00
Fredrik Høisæther Rasch
e99f35ff23 VCC wrappers with vcvars args.
VCC wrappers no longer wrap for compile-time specific target
VCC wrappers now peek into the command line args and evaluate vcvars prefixed arguments
2016-10-25 01:49:18 +02:00
Zoltán Mizsei
3813af63f5 Haiku supporting code in nim.cfg. We don't have -ldl. 2016-09-25 14:40:30 +02:00
cheatfate
4e183dc106 RPATH locations for OpenBSD,NetBSD and FreeBSD. 2016-09-21 03:55:07 +03:00
Andreas Rumpf
d7e172a6bc make tests green again 2016-07-10 01:17:08 +02:00
Dominik Picheta
cb76f266fa Niminst now bundles the compiler dir when packaging. 2016-06-06 00:04:50 +01:00
Adam Strzelecki
144dc8f8ad Move deprecated modules into lib/deprecated/
This gives clear indication what modules are now deprecated and reduce clutter
in non-deprecated module directories.
2015-09-30 12:26:25 +02:00
Araq
f1d1ff50e2 config cleanup 2015-09-10 16:06:09 +02:00
Andreas Rumpf
5cfce2623b Merge pull request #3160 from r-ku/coroutines
Coroutines
2015-08-25 10:54:05 +02:00
Araq
9659540b18 preparations for Nimble NimScript integrations; minor cleanups 2015-08-18 14:01:40 +02:00
rku
43bfda057b Coroutine support for i386/amd64 platforms unix/windows OSes markAndSweep/refCounting GCs. 2015-07-31 17:59:50 +03:00
Araq
aa8b470cf6 use linenoise instead of GNU readline 2015-06-21 10:04:26 +02:00
def
f8af8df91c Add -ldl with clang cpp compilation
This fixes compilation with --cc:clang and cpp.
2015-05-10 22:20:03 +02:00
Abhishek Pandey
6018c7a0c9 Corrected gcc path on windows
When gcc path is set to  r"$nimrod\dist\mingw\bin", the compiler gives
an error:
Error : unhandled exception : invalid format string [Value Error], but
works correctly with gcc.path set to r"$nim\dist\mingw\bin". I think
this issue was caused due to the name change from nimrod to nim , but
the name change was not replicated in the config file.
2015-05-05 02:04:33 +05:30
Philip Wernersbach
5be4e7b9f0 Add linker flags for the Objective-C compilation mode.
Fixes Araq/Nim#2153.
2015-03-15 19:09:28 -04:00
Araq
0032912d10 fixed the tester; more tests green 2015-03-10 12:32:48 +01:00
Hans Raaf
440db2d003 Removing -fasmblocks default for OS X
Considering that alternatives to the Apple compiler versions of xcode like GCC 4.9 (as installed by Homebrew) error out because it is an unknown parameter. Modern Xcode's clang + gcc do not seem to need this anymore. 

I think it is ok to remove because developer with old xcode are rare and can easily add this to their systems if needed.
2015-02-16 09:50:02 +01:00
Araq
199707c189 fixes #2103 2015-02-13 10:55:46 +01:00
Araq
f7f87a7709 merged #2083 manually 2015-02-08 13:38:04 +01:00
Araq
0b5c42f405 configuration system supports %= to access environment variables 2015-02-07 12:55:23 +01:00
Mikhail Sobolev
342608db0c make FreeBSD's compiler clang
* there's not much documentation about what's in nim.cfg file
* the build.sh template was updated based on darwin
2015-01-12 11:16:52 +02:00
Guillaume Gelin
3119fe087d Happy new year! 2015-01-06 15:26:33 +01:00