Upgrade to rebar3, add Windows support
authorAdam Kocoloski <kocolosk@apache.org>
Tue, 2 Nov 2021 20:34:37 +0000 (16:34 -0400)
committerAdam Kocoloski <kocolosk@apache.org>
Sat, 6 Nov 2021 14:30:06 +0000 (10:30 -0400)
commit68211f31c26d4a42d27e59827a6507be7cbc2dc9
treeb865a04a9ba01ec66a68fa2724650276c4c1040b
parent956920ec44c9e0aca4ea3d2bd71f2bec290a1abf
Upgrade to rebar3, add Windows support

This patch updates erlfdb to build using rebar3. It relies on rebar3's
`pc` plugin to build the NIF instead of the compiled copy of davisp's
erlang-native-compiler, which does essentially the same thing. I left
the rebar_gdb_plugin code in the repo, although I did not update that
plugin to make it compatible with rebar3 yet.

With rebar3 in place, I also made the changes necessary to support
Windows. One gotcha is that the unit tests will fail unless you set
the erlfdb test_cluster_file environment variable to point to a running
fdb.cluster file. I didn't get through all the hoops to make the
approach of spinning up an embedded fdbserver work in a x-platform way.
Apparently Windows doesn't let you supply a Python script for the
spawn_executable argument of erlang:open_port/2. I added a rebar3
profile to help here. The following command will cause the test suite
to connect to an FDB server that is managing its configuration in the
default location on Windows:

  rebar3 as win32_external_fdbserver eunit
.gitignore
Makefile
enc [deleted file]
rebar.config
rebar.lock [new file with mode: 0644]
src/erlfdb_util.erl
win32_external_fdbserver.config [new file with mode: 0644]