nimbus-eth1/nim.cfg
Ștefan Talpalaru 1d7e14dc1b
refactor the C and Go wrapper build system
- moved "nimbus/api" to "wrappers"
- renamed files
- replaced the build scripts with Makefile targets
- set the rpath relative to the test binary's location so it can look
  for libnimbus.so there at runtime
- libnimbus.so.0 required on Linux, apparently
- compiled all the Nimbus code with `--app:lib`, not just one file (this
  required skipping a proc in "nimbus/config.nim" because it uses an API
  that's unavailable in libraries)
- removed static linking from the Go wrapper. It doesn't make sense at a
  global level, when using a shared Nimbus library. To selectively link
  static libraries, we should probably be specifying them as *.a. I did
  build a static libnimbus.a, as a test, but it insisted on dlopen-ing a
  shared version of itself which looked too ugly to continue.
2019-08-02 18:13:47 +02:00

24 lines
634 B
Nim

@if release:
nimcache = "nimcache/release/$projectName"
@else:
nimcache = "nimcache/debug/$projectName"
@end
@if windows:
# disable timestamps in Windows PE headers - https://wiki.debian.org/ReproducibleBuilds/TimestampsInPEBinaries
--passL:"-Wl,--no-insert-timestamp"
# increase stack size
--passL:"-Wl,--stack,8388608"
# https://github.com/nim-lang/Nim/issues/4057
--tlsEmulation:off
@end
--threads:on
--excessiveStackTrace:on
-d:metrics # enable metric collection
# Required to make up for the compiler's inability to invalidate the C file
# (and object) cache on different command line arguments.
--forceBuild