Ștefan Talpalaru
f6121c10f0
various changes:
...
- re-enable Nim's cache globally
- add a new "nimcache" subdir for the libraries
- make sure Go doesn't try to link libnimbus.a in the dynamically linked
wrapper example
- always delete the static archive before recreating it
- rename wrapper.nim/.h to libnimbus.nim/.h
- better hygiene in libnimbus.h (include guards and C++ support)
- remove MainnetBootnodes copy, since we do include "config.nim" after all
2019-08-02 18:59:47 +02:00
Ștefan Talpalaru
f63014bddb
libnimbus.a and statically linked wrapper examples
2019-08-02 18:13:50 +02:00
Ștefan Talpalaru
c75e491d76
more renaming
2019-08-02 18:13:50 +02:00
Ș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
Ștefan Talpalaru
6bcf4effbb
Makefile: check the Go compiler version
2019-07-11 15:34:22 +02:00
Zahary Karadjov
d5fe4488de
Merge branch 'libp2p-testnet' into devel
2019-06-24 05:45:37 +03:00
Zahary Karadjov
7785b31431
For some reason, git's env variables are not defined inside the docker build env
2019-06-20 19:23:46 +03:00
Zahary Karadjov
eb825051fd
[Makefile] support Nimble packages with an inner src directory
2019-06-20 18:52:28 +03:00
Ștefan Talpalaru
9d8aa105ef
build_nim.sh: refactoring and CI caching
2019-06-12 13:53:34 +02:00
Ștefan Talpalaru
688fbd2145
nim_needs_rebuilding.sh and build_nim.sh
2019-06-12 11:42:31 +03:00
Ștefan Talpalaru
a0066abf95
CI: cache the Nim compiler binaries between builds
2019-06-10 02:05:32 +02:00
Ștefan Talpalaru
dd29d66b8c
ctags: add "func" symbols
2019-05-01 11:06:10 +02:00
Ștefan Talpalaru
da5900b706
Makefile: fix the fetch-dlls target
2019-04-24 20:59:16 +02:00
Ștefan Talpalaru
39a2c5d3c7
bump submodules
2019-04-19 22:27:21 +02:00
Ștefan Talpalaru
d2f0a3827d
Makefile: check if the C compiler exists
2019-04-19 13:38:37 +02:00
Ștefan Talpalaru
859968cdf2
Makefile fix
2019-04-19 12:49:14 +02:00
Ștefan Talpalaru
20d18e3af3
Windows: delete nimbus.nims on `mingw32-make update`
2019-04-17 18:37:30 +02:00
Ștefan Talpalaru
0412ecfc4f
libminiupnpc.a and libnatpmp.a: fix Windows compilation
2019-04-17 14:42:56 +02:00
Ștefan Talpalaru
8a3ef31ec4
tools and tests end up linking to the NAT libraries too
2019-04-17 04:19:56 +02:00
Ștefan Talpalaru
d4aff04cbd
NAT port mapping
2019-04-17 03:56:28 +02:00
Ștefan Talpalaru
b212d2ee21
Windows: copy all DLLs to vendor/nim-beacon-chain/build/
2019-04-12 23:59:20 +02:00
Ștefan Talpalaru
7b1e031f89
we no longer need to rebuild Nimble
2019-04-12 15:33:12 +02:00
Ștefan Talpalaru
b6f6795a17
rebuild the Nim compiler after the corresponding submodule is updated
2019-04-12 14:39:37 +02:00
Ștefan Talpalaru
8150199581
Makefile: low verbosity by default
2019-03-29 18:08:39 +01:00
Ștefan Talpalaru
3908c0e570
Makefile: rebuild Nimble in release mode
2019-03-29 16:29:04 +01:00
Ștefan Talpalaru
12a9904710
Makefile: echo "Building the Nim compiler."
2019-03-29 15:27:19 +01:00
Ștefan Talpalaru
bb61c08fc2
Makefile: remove the "eth2_network_simulation" target
...
from the Nimbus Makefile, since it's now in teh nim-beacon-chain one.
Also bump vendor/nim-beacon-chain and vendor/nim-chronos
2019-03-28 16:32:03 +01:00
Ștefan Talpalaru
535cf1772c
Makefile: moved some reusable vars in common.mk for nim-beacon-chain
...
- also introduced TOOLS_DIRS for readability and ease of maintenance
2019-03-26 19:23:07 +01:00
Ștefan Talpalaru
9f0c945336
CI: use a release build for the test suite ( #278 )
...
* CI: use a release build for the test suite
Makefile: the "testsuite" target is no longer needed
* rename EXTRA_NIM_PARAMS to NIMFLAGS
2019-03-16 18:54:30 -06:00
Jacek Sieka
9bd5b02f93
ci: make everything ( #270 )
...
* ci: make everything
* remove tools from test target, do avoid duplicate work in CI
2019-03-14 14:11:31 -06:00
Ștefan Talpalaru
de3cf9ad2f
Makefile: don't override the test suite's loglevel by default
2019-03-12 23:50:49 +01:00
Ștefan Talpalaru
83d811ca1c
Makefile: allow arbitrary nim params through EXTRA_NIM_PARAMS
2019-03-12 13:29:10 +02:00
Ștefan Talpalaru
fba31263d4
Makefile: specify the Chronicles log level
2019-03-12 13:29:10 +02:00
Ștefan Talpalaru
e1e56211ba
update libp2p-related submodules and its build process
2019-03-07 01:11:48 +01:00
Ștefan Talpalaru
4326d98434
testsuite: build the tools in parallel
2019-02-28 00:07:23 +01:00
Ștefan Talpalaru
36575d9451
Makefile: make "test-libp2p-daemon" a phony target
2019-02-27 13:58:55 +01:00
andri lim
14d1c28982
new member of premix tool set
2019-02-27 13:44:01 +02:00
Ștefan Talpalaru
12d18a1fd6
build p2pd and run some client tests
...
(with `make V=0 test-libp2p-daemon`)
2019-02-27 13:33:18 +02:00
Ștefan Talpalaru
2abf779668
fix rebase
2019-02-24 10:41:05 +02:00
Ștefan Talpalaru
9806110979
Makefile: better "github-ssh" target
2019-02-24 10:41:05 +02:00
Ștefan Talpalaru
5fcfa70be4
test-reproducibility: coloured messages
2019-02-24 10:41:05 +02:00
Ștefan Talpalaru
e9565258a6
Windows: disable timestamps in PE headers
2019-02-24 10:41:05 +02:00
Ștefan Talpalaru
a96976cd0a
custom nimcache dir
2019-02-24 10:41:05 +02:00
Ștefan Talpalaru
05535591f1
quiet compiler building
2019-02-24 10:41:05 +02:00
Ștefan Talpalaru
0f656125ac
macOS doesn't have "md5sum"
2019-02-24 10:41:05 +02:00
Ștefan Talpalaru
90dcb20d35
let the Makefile manage the symlink
2019-02-24 10:41:05 +02:00
Ștefan Talpalaru
da79a7e996
very simple reproducibility test
...
Additional changes:
- Makefile verbosity control
- nimble.sh can now run in parallel on the same *.nimble file
- nimble.sh no longer used in the Makefile, in favour of a nimbus.nims
symlink that eliminates race risks in parallel jobs
- nimbus.nimble takes extra params in the command line, with the caveat
that they also apply to nim
- setCommand() replaced with exec(), to avoid splitting param strings
2019-02-24 10:41:05 +02:00
Ștefan Talpalaru
e8d654ed0f
Windows: allow architecture override
2019-02-24 10:41:05 +02:00
Ștefan Talpalaru
50860e3817
Makefile: delete tool binaries in the "clean" target
2019-02-24 10:41:05 +02:00
Ștefan Talpalaru
63b8ce8c00
Windows: take into account the .exe suffix
2019-02-24 10:41:05 +02:00