Commit Graph

2220 Commits

Author SHA1 Message Date
5c2952561b exe: add freebsd image_path implementation 2016-05-13 15:22:42 +10:00
7cc4173dea m4/nc_cxx: don't enable libcxx on clang by default
Some system libraries, like boost, may have linked against libstdc++ and
hence make breaking assumptions about std structure layouts.

eg, boost::filesystem::path and std::basic_string
2016-05-13 15:20:36 +10:00
8dc4abb69c m/b/circular: use correct fd for MAP_ANONYMOUS 2016-05-13 13:56:53 +10:00
1bfe4867ad m4: dont try Wno-gnu option under GCC
it will accept anything
2016-05-12 18:23:32 +10:00
3802de5ba3 coord/ops: disable scalar ops for non-arithmetic types 2016-05-12 18:22:55 +10:00
56948f9503 debug_posix: add freebsd constants to tracing code 2016-05-12 18:19:24 +10:00
afa60e9d1f configure: add freebsd library for clock_gettime 2016-05-12 18:16:54 +10:00
87211eb45c configure: cross-platform append for "-ldbghelp" 2016-05-12 18:16:18 +10:00
dc75a8ac34 configure: search for execinfo library
required under freebsd
2016-05-12 18:15:57 +10:00
a8650caa1c configure: disable unused feature test macros
they were causing build errors under freebsd and it appears we aren't
using them anymore...
2016-05-12 18:15:01 +10:00
a22ca0575e Makefile: add posix wrappers to freebsd build 2016-05-12 18:11:13 +10:00
c2310d5d50 build: explicitly allow anonymous structs 2016-05-12 18:06:12 +10:00
950c5ba0d4 ip: avoid temporary in test 2016-05-12 18:00:12 +10:00
829bdc2767 m/b/paged: annotate segv trigger for asan's benefit 2016-05-12 17:59:33 +10:00
e7c547f764 tuple: note why RTTI test was skipped 2016-05-12 17:59:08 +10:00
27b1bfc1ce hmac: print test number in logs 2016-05-12 17:58:52 +10:00
78552cfcb2 rational: express assignment in terms of constructors 2016-05-12 17:55:20 +10:00
48e6446404 ip: express equality in terms of words 2016-05-12 17:54:44 +10:00
7f19e2bcce ip: remove unneeded assignment operator
the constructor handles this for us
2016-05-12 17:54:17 +10:00
5e597eef25 io: remove uneeded stream_error destructor 2016-05-12 17:53:37 +10:00
06be0a128f configure: test for dlsym and shm before their dependants 2016-05-12 17:52:37 +10:00
9d77c01dd3 configure: add debugging options after compilation tests
some debugging options interfere with linker/compilation tests due to
the extra libraries that, for example, asan or ubsan draw into the
build. perform these checks fairly late to avoid these errors.
2016-05-12 17:51:10 +10:00
1ec238638c Makefile: ensure ASAN isn't triggered on deliberate SEGV
some of the memory buffer code triggers a SEGV deliberately in the
testing framework. setting allow_user_segv_handler=true stops it from
crashing our test early.
2016-05-12 17:49:11 +10:00
539188ffde backtrace_execinfo: correct newlines for ostream
if addr2line wasn't found newlines weren't consistent
2016-05-12 17:47:47 +10:00
12f154d0cb stream: work towards streambuf and stream impl 2016-05-12 17:47:22 +10:00
67402eee42 c/xxtea: style 2016-05-12 17:46:13 +10:00
640b4aa6ca build: fix switch/enum coverage warnings
uncovered using clang's -Wswitch-enum
2016-05-12 17:45:29 +10:00
420e4215ef backtrace: test doesn't actually require output 2016-05-12 17:44:44 +10:00
7d96d8dd2f m/b/paged: use correct fd for MAP_ANONYMOUS
linux ignores the fd if you pass MAP_ANONYMOUS, but freebsd will return
with an error
2016-05-12 17:42:21 +10:00
8142944139 json: store numbers natively as uint/sint/real
allows more accurate representations and better error checking.
2016-05-12 17:41:31 +10:00
1f432c13b7 build: avoid type truncation warnings
discovered with clang's -Wshorten-64-to-32
2016-05-12 17:39:33 +10:00
e71bd9f621 maths: move is_integer into headers to avoid param explosion 2016-05-12 17:34:47 +10:00
60286202fd maths: make stirling inline rather than constexpr
stirling uses cmath functions which aren't constexpr, such as std::pow.
this sometimes works under linux/gcc but fails under clang/freebsd
2016-05-12 17:32:41 +10:00
e17158b0bb build: add forgotten cxx headers
discovered testing clang 3.8 under freebsd
2016-05-12 17:31:33 +10:00
452c5511a4 tap: make test function parameter const 2016-05-12 17:28:33 +10:00
d4b951b4db m4: bump autocruft 2016-05-12 17:27:45 +10:00
1a17f27b37 m4: add missing AX_ macros 2016-05-09 14:06:03 +10:00
50f61eb682 m4/nc_cxx: use newer AC_MSG_ERROR 2016-05-09 14:04:58 +10:00
27800de3a0 format: avoid cast warnings for exception constructor 2016-04-28 16:09:14 +10:00
efa52c60e9 build: remove unnecessary pedantic checks 2016-04-28 16:09:14 +10:00
3e46f18e5a coord/base: style 2016-04-28 16:06:48 +10:00
6b6c50611c m4/nc_cxx: remove tests for require c++11 features
If your compiler doesn't support these we're not going to fake it. Fix
your damn compiler.
2016-04-28 16:06:00 +10:00
be79ade619 m4: remove -pedantic from build flags
It's more trouble than it's worth given we rely on extensions like
unions of anonymous structs.
2016-04-28 16:05:17 +10:00
67a5184a9d build: add missing includes
detected under libstdc++ from gcc-6.0
2016-04-28 15:02:16 +10:00
20b809334e build: add forgotten build scripts for dist 2016-04-27 17:24:00 +10:00
71976520b3 build: add forgotten inline header time.ipp 2016-04-27 17:23:45 +10:00
e70f582784 build: fix the test runner for win32 targets 2016-04-27 17:16:13 +10:00
b814c83e21 test/json: run tests through a line wine/crlf wrapper
unit tests rely on AWKs record seperator being LF which presents issues
when running windows tests. rather than modify the tap-driver provided
by autotools (which would be extremely annoying to maintain) we run all
tests through wine-crlf.sh which will perform line ending transforms as
required.

it's a pretty braindead script, so don't do anything terrifically
extreme under it.
2016-04-27 17:13:36 +10:00
456362adff t/json-validate: catch only json exceptions
the json namespace should really only be throwing json errors. this tool
is primarily used for unit testing, so it's better it crashes
catastrophically on an unhandled exception.
2016-04-27 17:10:36 +10:00
2fbf9af8cb t/json-schema: reduce scope of schema and input 2016-04-27 17:09:48 +10:00