n2n/src
Hamish Coleman 4438f1aa2a
added mingw test platform (#829)
* Provide a minimal reimplementation of our autoconf, to try windows builds

* Try building with windows

* Fix thinko in spelling

* Ensure shell script runs inside a shell

* Add a hack to aid include discovery

* Just keep adding tech debt...

* Assume that we will have slashes in some of the replacement strings and avoid that char with sed

* Restore one slash

* Hack around the tools makefile interdependancy bug

* A correct cflags include hack for each compile dir

* Ensure we link against winsock (note, even though this says 32bit, it should link the 64bit library ... I think)

* Bad link ordering if we dont use LDLIBS

* Remove unused make variable

* Remove makefile duplication using inheritance (this does mean you can no longer cd tools; make, but must do make tools)

* Add missing library for win32

* Show OS variable

* Make hack autoconf more robust for tests on non gitlab runners

* Remove no longer used substitutions from hack autoconf

* Add missing include path to tools under win32

* Build the win32 subdir when the compiler is Msys

* The different subdirs have different dependancies

* Ensure we can find the include files

* Fix library link ordering

* Ensure the tools dir can find the special win32 lib

* Deal with the differing basic type sizes on both linux/64bit and windows/64bit

* Document the steps to mimic the github windows/mingw build locally - to allow for simpler debugging

* Ensure branch name in instructions matches my test branch name

* Clarify the shell needed to build with mingw

* Since the makefile depends on knowing the OS, raise a fatal error if we cannot determine this

* Handling different compile environments is hard.

- Linux: sane and reasonable results for both uname -s (=Linux) and
  uname -o (=GNU/Linux)
- Windows/Mingw: insane results for uname -s
  (=MSYS_NT-$MAJOR.$MINOR-$BUILDNR) but sane results for uname -o (Msys)
- Macos: sane results for uname -s (=Darwin) but does not support
  uname -o at all

* Revamp the way that Mingw is detected

* Avoid attempting to generate gcovr report when running under windows

* Whoops, isolate the right step

* Fix spelling mistake

* win32/Makefile: Remove unused setting and add comment

* ensure that all win32 includes use the same expected path

* Allow simpler cross compilation by letting configure pass the CC and AR environment through

* Avoid multiple '_CRT_SECURE_NO_WARNINGS redefined' warnings

* Convert to a consolidated CONFIG_TARGET variable to select any different compile options

* Use the more generic printf defines to avoid warnings on mingw

* Update mingw build docs

* English better for reader happy make

* Address a number of mingw compiler warnings

* Fix Visual C compile

* Be sure to document some of the hacky nature of the mingw build
2021-10-06 00:52:15 +05:45
..
aes.c fixed compile warnings (#664) 2021-03-17 12:38:00 +05:45
auth.c addressed all but one of the remaining compile warnings (#793) 2021-09-16 14:45:46 +05:45
cc20.c switched to 2021 (#632) 2021-02-08 16:11:06 +05:45
curve25519.c addressed warnings (#790) 2021-09-15 22:08:45 +05:45
edge_utils_win32.c switched to 2021 (#632) 2021-02-08 16:11:06 +05:45
edge_utils.c fine-tuned REGISTER cookie handling (#837) 2021-10-03 18:19:29 +05:45
edge.c added mingw test platform (#829) 2021-10-06 00:52:15 +05:45
example_edge_embed_quick_edge_init.c switched to 2021 (#632) 2021-02-08 16:11:06 +05:45
example_edge_embed.c fix windows compile (#636) 2021-02-10 15:16:16 +05:45
example_sn_embed.c trimmed open_socket() down by one parameter (#768) 2021-09-06 17:03:15 +05:45
header_encryption.c addressed all but one of the remaining compile warnings (#793) 2021-09-16 14:45:46 +05:45
hexdump.c Compilation fix 2021-09-27 16:38:13 +02:00
minilzo.c updated minilzo 2020-08-15 23:26:21 +05:45
n2n_regex.c switched to 2021 (#632) 2021-02-08 16:11:06 +05:45
n2n.c relocated 'detect_local_ip_address()' (#792) 2021-09-16 14:15:21 +05:45
network_traffic_filter.c switched to 2021 (#632) 2021-02-08 16:11:06 +05:45
pearson.c switched to Pearson B. Hashing (#570) 2021-01-07 11:15:40 +01:00
random_numbers.c compile fix (#833) 2021-09-30 12:21:26 +05:45
sn_selection.c addressed all but one of the remaining compile warnings (#793) 2021-09-16 14:45:46 +05:45
sn_utils.c added mingw test platform (#829) 2021-10-06 00:52:15 +05:45
speck.c added user-password edge authentication (#673) 2021-06-04 03:11:22 +05:45
supernode.c fixes (#819) 2021-09-26 00:17:47 +05:45
tf.c fixed compile warnings (#647) 2021-02-27 20:38:18 +05:45
transform_aes.c switched to 2021 (#632) 2021-02-08 16:11:06 +05:45
transform_cc20.c fixed compile warnings (#647) 2021-02-27 20:38:18 +05:45
transform_null.c switched to 2021 (#632) 2021-02-08 16:11:06 +05:45
transform_speck.c fixed compile warnings (#647) 2021-02-27 20:38:18 +05:45
transform_tf.c switched to 2021 (#632) 2021-02-08 16:11:06 +05:45
tuntap_freebsd.c switched to 2021 (#632) 2021-02-08 16:11:06 +05:45
tuntap_linux.c addressed warnings (#790) 2021-09-15 22:08:45 +05:45
tuntap_netbsd.c switched to 2021 (#632) 2021-02-08 16:11:06 +05:45
tuntap_osx.c switched to 2021 (#632) 2021-02-08 16:11:06 +05:45
wire.c added a flag field to QUERY_PEER (#835) 2021-10-02 23:17:45 +05:45