2014-05-09 13:09:36 +10:00
|
|
|
###############################################################################
|
|
|
|
## Global build rules
|
|
|
|
|
2011-05-23 17:18:52 +10:00
|
|
|
ACLOCAL_AMFLAGS = -I m4
|
|
|
|
|
2014-12-05 13:12:18 +11:00
|
|
|
AM_CXXFLAGS = $(BOOST_CPPFLAGS) $(ZLIB_CFLAGS)
|
2016-02-24 11:55:08 +11:00
|
|
|
AM_DEFAULT_SOURCE_EXT = .cpp
|
2011-05-23 17:18:52 +10:00
|
|
|
|
2014-05-09 13:09:36 +10:00
|
|
|
###############################################################################
|
|
|
|
## Source definitions
|
|
|
|
|
2015-06-01 16:19:24 +10:00
|
|
|
UTIL_FILES = \
|
2015-10-19 12:06:23 +11:00
|
|
|
adapter.hpp \
|
|
|
|
adapter.cpp \
|
2016-02-10 14:05:44 +11:00
|
|
|
alloc/fwd.hpp \
|
2015-11-13 17:17:37 +11:00
|
|
|
alloc/affix.cpp \
|
|
|
|
alloc/affix.hpp \
|
|
|
|
alloc/allocator.cpp \
|
|
|
|
alloc/allocator.hpp \
|
2015-11-30 15:10:04 +11:00
|
|
|
alloc/allocator.ipp \
|
2015-11-13 17:17:37 +11:00
|
|
|
alloc/arena.cpp \
|
|
|
|
alloc/arena.hpp \
|
|
|
|
alloc/arena.ipp \
|
2016-02-10 14:05:09 +11:00
|
|
|
alloc/dynamic.hpp \
|
2015-11-13 17:17:37 +11:00
|
|
|
alloc/fallback.cpp \
|
|
|
|
alloc/fallback.hpp \
|
|
|
|
alloc/linear.cpp \
|
|
|
|
alloc/linear.hpp \
|
|
|
|
alloc/malloc.cpp \
|
|
|
|
alloc/malloc.hpp \
|
|
|
|
alloc/null.cpp \
|
|
|
|
alloc/null.hpp \
|
|
|
|
alloc/stack.cpp \
|
|
|
|
alloc/stack.hpp \
|
2015-06-01 16:19:24 +10:00
|
|
|
backtrace.hpp \
|
|
|
|
bezier.cpp \
|
|
|
|
bezier.hpp \
|
|
|
|
bitwise.cpp \
|
|
|
|
bitwise.hpp \
|
2015-11-17 16:19:27 +11:00
|
|
|
cast.hpp \
|
2015-06-10 21:28:52 +10:00
|
|
|
cmdopt.cpp \
|
|
|
|
cmdopt.hpp \
|
|
|
|
cmdopt.ipp \
|
2015-06-01 16:19:24 +10:00
|
|
|
colour.cpp \
|
|
|
|
colour.hpp \
|
|
|
|
colour.ipp \
|
|
|
|
coord/base.hpp \
|
|
|
|
coord.hpp \
|
|
|
|
coord/init.hpp \
|
|
|
|
coord/names.hpp \
|
|
|
|
coord/ops.hpp \
|
|
|
|
coord/store.hpp \
|
|
|
|
crypto/arc4.cpp \
|
|
|
|
crypto/arc4.hpp \
|
|
|
|
crypto/tea.cpp \
|
|
|
|
crypto/tea.hpp \
|
|
|
|
crypto/xtea.cpp \
|
|
|
|
crypto/xtea.hpp \
|
|
|
|
crypto/xxtea.cpp \
|
|
|
|
crypto/xxtea.hpp \
|
|
|
|
debug.cpp \
|
|
|
|
debug.hpp \
|
2015-11-30 15:10:04 +11:00
|
|
|
debug.ipp \
|
2015-06-01 16:19:24 +10:00
|
|
|
endian.cpp \
|
|
|
|
endian.hpp \
|
|
|
|
except.cpp \
|
|
|
|
except.hpp \
|
|
|
|
exe.cpp \
|
|
|
|
exe.hpp \
|
|
|
|
extent.cpp \
|
|
|
|
extent.hpp \
|
|
|
|
extent.ipp \
|
|
|
|
fixed.cpp \
|
|
|
|
fixed.hpp \
|
|
|
|
float.cpp \
|
|
|
|
float.hpp \
|
2015-07-21 01:37:45 +10:00
|
|
|
format.cpp \
|
|
|
|
format.hpp \
|
|
|
|
format.ipp \
|
2015-06-01 16:19:24 +10:00
|
|
|
fourcc.cpp \
|
|
|
|
fourcc.hpp \
|
2015-10-13 18:19:47 +11:00
|
|
|
geom/fwd.hpp \
|
|
|
|
geom/aabb.cpp \
|
|
|
|
geom/aabb.hpp \
|
2015-10-14 15:32:53 +11:00
|
|
|
geom/aabb.ipp \
|
|
|
|
geom/cylinder.cpp \
|
|
|
|
geom/cylinder.hpp \
|
|
|
|
geom/ellipse.cpp \
|
|
|
|
geom/ellipse.hpp \
|
|
|
|
geom/ellipse.ipp \
|
2015-10-13 18:19:47 +11:00
|
|
|
geom/iostream.cpp \
|
|
|
|
geom/iostream.hpp \
|
2015-10-14 15:32:53 +11:00
|
|
|
geom/ops.hpp \
|
2015-10-13 18:19:47 +11:00
|
|
|
geom/plane.cpp \
|
|
|
|
geom/plane.hpp \
|
|
|
|
geom/ray.cpp \
|
|
|
|
geom/ray.hpp \
|
2015-10-14 15:32:53 +11:00
|
|
|
geom/rect.cpp \
|
|
|
|
geom/rect.hpp \
|
|
|
|
geom/sample.hpp \
|
|
|
|
geom/sample.ipp \
|
2015-10-13 18:19:47 +11:00
|
|
|
geom/sphere.cpp \
|
|
|
|
geom/sphere.hpp \
|
2015-10-14 15:32:53 +11:00
|
|
|
geom/tri.cpp \
|
|
|
|
geom/tri.hpp \
|
2015-06-01 16:19:24 +10:00
|
|
|
guid.cpp \
|
|
|
|
guid.hpp \
|
|
|
|
hash.hpp \
|
|
|
|
hash/adler.cpp \
|
|
|
|
hash/adler.hpp \
|
|
|
|
hash/bsdsum.cpp \
|
|
|
|
hash/bsdsum.hpp \
|
|
|
|
hash/crc.cpp \
|
|
|
|
hash/crc.hpp \
|
|
|
|
hash/fasthash.cpp \
|
2015-09-29 17:40:02 +10:00
|
|
|
hash/fasthash.hpp \
|
2015-06-01 16:19:24 +10:00
|
|
|
hash/fletcher.hpp \
|
2015-06-02 21:24:29 +10:00
|
|
|
hash/fnv1a.cpp \
|
|
|
|
hash/fnv1a.hpp \
|
2015-06-01 16:19:24 +10:00
|
|
|
hash/hmac.cpp \
|
|
|
|
hash/hmac.hpp \
|
|
|
|
hash/hotp.cpp \
|
|
|
|
hash/hotp.hpp \
|
|
|
|
hash/md2.cpp \
|
|
|
|
hash/md2.hpp \
|
|
|
|
hash/md4.cpp \
|
|
|
|
hash/md4.hpp \
|
|
|
|
hash/md5.cpp \
|
|
|
|
hash/md5.hpp \
|
2015-05-20 14:47:36 +10:00
|
|
|
hash/murmur/common.cpp \
|
|
|
|
hash/murmur/common.hpp \
|
2015-06-01 16:19:24 +10:00
|
|
|
hash/murmur.hpp \
|
2015-05-20 14:47:36 +10:00
|
|
|
hash/murmur/murmur1.cpp \
|
|
|
|
hash/murmur/murmur1.hpp \
|
|
|
|
hash/murmur/murmur2.cpp \
|
|
|
|
hash/murmur/murmur2.hpp \
|
|
|
|
hash/murmur/murmur3.cpp \
|
|
|
|
hash/murmur/murmur3.hpp \
|
2015-06-01 16:19:24 +10:00
|
|
|
hash/pbkdf1.cpp \
|
|
|
|
hash/pbkdf1.hpp \
|
|
|
|
hash/pbkdf2.cpp \
|
|
|
|
hash/pbkdf2.hpp \
|
|
|
|
hash/ripemd.cpp \
|
|
|
|
hash/ripemd.hpp \
|
|
|
|
hash/sha1.cpp \
|
|
|
|
hash/sha1.hpp \
|
|
|
|
hash/sha2.cpp \
|
|
|
|
hash/sha2.hpp \
|
2015-06-02 21:11:57 +10:00
|
|
|
hash/wang.hpp \
|
|
|
|
hash/wang.ipp \
|
2015-06-01 16:19:24 +10:00
|
|
|
introspection.cpp \
|
|
|
|
introspection.hpp \
|
|
|
|
io.cpp \
|
|
|
|
io.hpp \
|
|
|
|
io.ipp \
|
|
|
|
ip.cpp \
|
|
|
|
ip.hpp \
|
|
|
|
iterator.hpp \
|
|
|
|
json/fwd.hpp \
|
|
|
|
json/except.cpp \
|
|
|
|
json/except.hpp \
|
|
|
|
json/flat.cpp \
|
|
|
|
json/flat.hpp \
|
|
|
|
json/schema.cpp \
|
|
|
|
json/schema.hpp \
|
|
|
|
json/tree.cpp \
|
|
|
|
json/tree.hpp \
|
2015-08-10 15:45:56 +10:00
|
|
|
library.hpp \
|
2015-06-01 16:19:24 +10:00
|
|
|
log.cpp \
|
|
|
|
log.hpp \
|
|
|
|
log.ipp \
|
|
|
|
maths.cpp \
|
|
|
|
maths.hpp \
|
|
|
|
matrix.cpp \
|
2015-11-04 23:23:46 +11:00
|
|
|
matrix2.cpp \
|
|
|
|
matrix3.cpp \
|
|
|
|
matrix4.cpp \
|
2015-06-01 16:19:24 +10:00
|
|
|
matrix.hpp \
|
|
|
|
matrix.ipp \
|
2015-11-11 16:56:35 +11:00
|
|
|
memory/buffer/circular.cpp \
|
|
|
|
memory/buffer/circular.hpp \
|
|
|
|
memory/buffer/paged.cpp \
|
|
|
|
memory/buffer/paged.hpp \
|
2015-11-17 17:20:52 +11:00
|
|
|
memory/deleter.cpp \
|
|
|
|
memory/deleter.hpp \
|
2015-11-11 16:56:00 +11:00
|
|
|
memory/system.cpp \
|
|
|
|
memory/system.hpp \
|
2015-06-01 16:19:24 +10:00
|
|
|
net/address.cpp \
|
|
|
|
net/address.hpp \
|
|
|
|
net/except.cpp \
|
|
|
|
net/except.hpp \
|
|
|
|
net/socket.cpp \
|
|
|
|
net/socket.hpp \
|
|
|
|
net/types.cpp \
|
|
|
|
net/types.hpp \
|
|
|
|
nocopy.hpp \
|
|
|
|
pascal.cpp \
|
|
|
|
pascal.hpp \
|
|
|
|
platform.hpp \
|
|
|
|
point.cpp \
|
|
|
|
point.hpp \
|
|
|
|
point.ipp \
|
2015-11-17 17:21:14 +11:00
|
|
|
pointer.hpp \
|
2015-06-01 16:19:24 +10:00
|
|
|
polynomial.cpp \
|
|
|
|
polynomial.hpp \
|
|
|
|
polynomial.ipp \
|
|
|
|
pool.cpp \
|
|
|
|
pool.hpp \
|
|
|
|
pool.ipp \
|
|
|
|
preprocessor.hpp \
|
|
|
|
quaternion.cpp \
|
|
|
|
quaternion.hpp \
|
|
|
|
raii.hpp \
|
2016-02-03 12:13:03 +11:00
|
|
|
rand/lcg.cpp \
|
|
|
|
rand/lcg.hpp \
|
2016-02-02 11:32:55 +11:00
|
|
|
rand/xorshift.cpp \
|
|
|
|
rand/xorshift.hpp \
|
2015-06-01 16:19:24 +10:00
|
|
|
random.cpp \
|
|
|
|
random.hpp \
|
|
|
|
random.ipp \
|
|
|
|
range.cpp \
|
|
|
|
range.hpp \
|
|
|
|
range.ipp \
|
|
|
|
rational.cpp \
|
|
|
|
rational.hpp \
|
2015-09-21 16:35:48 +10:00
|
|
|
rational.ipp \
|
2015-06-01 16:19:24 +10:00
|
|
|
region.cpp \
|
|
|
|
region.hpp \
|
2015-09-21 15:33:58 +10:00
|
|
|
region.ipp \
|
2016-02-03 13:57:18 +11:00
|
|
|
roots/bisection.hpp \
|
2015-06-01 16:19:24 +10:00
|
|
|
si.cpp \
|
|
|
|
signal.cpp \
|
|
|
|
signal.hpp \
|
|
|
|
signal.ipp \
|
|
|
|
si.hpp \
|
|
|
|
stats.cpp \
|
|
|
|
stats.hpp \
|
|
|
|
stream.cpp \
|
|
|
|
stream.hpp \
|
|
|
|
string.cpp \
|
|
|
|
string.hpp \
|
|
|
|
stringid.cpp \
|
|
|
|
stringid.hpp \
|
2015-11-17 22:27:49 +11:00
|
|
|
strongdef.cpp \
|
|
|
|
strongdef.hpp \
|
2015-06-01 16:19:24 +10:00
|
|
|
tap.cpp \
|
|
|
|
tap.hpp \
|
|
|
|
tap.ipp \
|
|
|
|
time.cpp \
|
|
|
|
time.hpp \
|
|
|
|
tuple.cpp \
|
|
|
|
tuple.hpp \
|
|
|
|
types/bits.hpp \
|
|
|
|
types/comparator.hpp \
|
|
|
|
types/comparator.ipp \
|
|
|
|
types.hpp \
|
|
|
|
types/string.cpp \
|
|
|
|
types/string.hpp \
|
|
|
|
types/traits.hpp \
|
|
|
|
uri.cpp \
|
|
|
|
uri.hpp \
|
|
|
|
variadic.cpp \
|
|
|
|
variadic.hpp \
|
|
|
|
variadic.ipp \
|
|
|
|
vector.cpp \
|
|
|
|
vector.hpp \
|
2015-07-21 01:40:53 +10:00
|
|
|
vector.ipp \
|
2015-06-01 16:19:24 +10:00
|
|
|
version.cpp \
|
|
|
|
version.hpp \
|
2015-09-22 18:31:47 +10:00
|
|
|
view.ipp \
|
2015-06-30 22:10:15 +10:00
|
|
|
view.hpp
|
2011-05-23 17:18:52 +10:00
|
|
|
|
2012-05-10 16:53:29 +10:00
|
|
|
if PLATFORM_LINUX
|
2014-12-19 18:28:50 +11:00
|
|
|
UTIL_FILES += \
|
|
|
|
backtrace_execinfo.cpp \
|
2016-02-15 17:21:01 +11:00
|
|
|
debug_posix.cpp \
|
2015-01-30 16:47:28 +11:00
|
|
|
io_posix.cpp \
|
2015-07-23 14:13:09 +10:00
|
|
|
io_posix.hpp \
|
2015-08-10 15:45:56 +10:00
|
|
|
library_posix.hpp \
|
|
|
|
library_posix.cpp \
|
2015-08-10 15:46:13 +10:00
|
|
|
posix/dir.cpp \
|
2016-02-25 13:18:07 +11:00
|
|
|
posix/dir.hpp \
|
|
|
|
posix/dir.ipp \
|
2015-07-23 14:13:09 +10:00
|
|
|
time_posix.cpp
|
2015-08-28 21:09:38 +10:00
|
|
|
|
2012-05-10 16:53:29 +10:00
|
|
|
endif
|
|
|
|
|
|
|
|
if PLATFORM_WIN32
|
2014-12-19 18:28:50 +11:00
|
|
|
UTIL_FILES += \
|
|
|
|
backtrace_null.cpp \
|
2016-02-15 17:21:01 +11:00
|
|
|
debug_win32.cpp \
|
2015-07-23 14:13:09 +10:00
|
|
|
io_win32.cpp \
|
2015-08-10 15:45:56 +10:00
|
|
|
library_win32.hpp \
|
|
|
|
library_win32.cpp \
|
2015-08-10 15:47:30 +10:00
|
|
|
time_win32.cpp \
|
|
|
|
win32/registry.hpp \
|
|
|
|
win32/registry.cpp
|
2011-06-25 12:40:57 +10:00
|
|
|
endif
|
|
|
|
|
2016-02-24 11:55:08 +11:00
|
|
|
|
2014-05-09 13:09:36 +10:00
|
|
|
###############################################################################
|
|
|
|
## Local build rules
|
2015-06-30 22:10:25 +10:00
|
|
|
CLEANFILES = json.cpp version.cpp ip.cpp uri.cpp
|
2015-02-09 17:43:24 +11:00
|
|
|
EXTRA_DIST = json/flat.cpp.rl version.cpp.rl ip.cpp.rl uri.cpp.rl
|
2011-05-23 17:18:52 +10:00
|
|
|
|
|
|
|
RAGELFLAGS = -F1
|
|
|
|
SUFFIXES = .cpp .cpp.rl
|
|
|
|
.cpp.rl.cpp:
|
|
|
|
$(RAGEL) $(RAGELFLAGS) -C $< -o $(builddir)/$@
|
|
|
|
|
2014-05-09 13:09:36 +10:00
|
|
|
###############################################################################
|
|
|
|
## Library definition
|
2016-02-24 11:55:08 +11:00
|
|
|
lib_LIBRARIES = libcruft-util.a
|
|
|
|
libcruft_util_a_SOURCES = $(UTIL_FILES)
|
|
|
|
libcruft_util_a_CXXFLAGS = $(AM_CXXFLAGS)
|
|
|
|
|
|
|
|
nobase_pkginclude_HEADERS = $(filter %.hpp %.ipp, $(UTIL_FILES))
|
2016-02-25 13:18:28 +11:00
|
|
|
pkgincludedir = $(includedir)/cruft/util
|
|
|
|
pkglibdir = $(libdir)/
|
|
|
|
pkgconfigdir = $(libdir)/pkgconfig
|
2016-02-24 11:55:08 +11:00
|
|
|
pkgconfig_DATA = libcruft-util.pc
|
2012-04-12 14:12:25 +10:00
|
|
|
|
2014-05-09 13:08:50 +10:00
|
|
|
###############################################################################
|
|
|
|
## Utility programs
|
|
|
|
|
2015-11-11 16:56:35 +11:00
|
|
|
AM_LDFLAGS = $(BOOST_LDFLAGS) -lrt
|
2014-12-10 13:51:54 +11:00
|
|
|
|
2014-05-09 12:58:33 +10:00
|
|
|
bin_PROGRAMS = \
|
|
|
|
tools/json-clean \
|
|
|
|
tools/json-validate \
|
2015-05-18 14:11:08 +10:00
|
|
|
tools/json-schema \
|
2016-02-24 15:07:03 +11:00
|
|
|
tools/hash
|
2014-12-10 13:51:54 +11:00
|
|
|
|
2016-02-02 12:11:38 +11:00
|
|
|
noinst_PROGRAMS = tools/scratch
|
|
|
|
|
2016-02-24 11:55:08 +11:00
|
|
|
LDADD = $(top_builddir)/libcruft-util.a $(BOOST_FILESYSTEM_LIB) $(BOOST_SYSTEM_LIB) $(ZLIB_LIBS)
|
2015-02-13 18:02:09 +11:00
|
|
|
|
|
|
|
|
|
|
|
##-----------------------------------------------------------------------------
|
|
|
|
## Tests
|
|
|
|
|
|
|
|
AM_LDFLAGS += $(BOOST_LDFLAGS) $(BOOST_FILESYSTEM_LIB) $(BOOST_SYSTEM_LIB)
|
|
|
|
AM_CXXFLAGS += -I$(top_srcdir)
|
|
|
|
|
|
|
|
TEST_BIN = \
|
2015-11-24 16:52:47 +11:00
|
|
|
test/alloc/arena \
|
2016-02-10 14:05:09 +11:00
|
|
|
test/alloc/dynamic \
|
2015-11-13 17:17:37 +11:00
|
|
|
test/alloc/stack \
|
|
|
|
test/alloc/linear \
|
2015-02-13 18:02:09 +11:00
|
|
|
test/backtrace \
|
|
|
|
test/bezier \
|
|
|
|
test/bitwise \
|
|
|
|
test/checksum \
|
2015-06-30 22:09:35 +10:00
|
|
|
test/cmdopt \
|
2015-02-13 18:02:09 +11:00
|
|
|
test/colour \
|
2015-09-21 15:27:36 +10:00
|
|
|
test/coord \
|
2015-05-06 21:20:17 +10:00
|
|
|
test/crypto/arc4 \
|
2015-05-06 23:49:45 +10:00
|
|
|
test/crypto/tea \
|
2015-05-07 00:18:01 +10:00
|
|
|
test/crypto/xtea \
|
2015-05-15 18:27:24 +10:00
|
|
|
test/crypto/xxtea \
|
2015-02-13 18:02:09 +11:00
|
|
|
test/extent \
|
|
|
|
test/fixed \
|
|
|
|
test/float \
|
2015-07-21 01:37:45 +10:00
|
|
|
test/format \
|
2015-10-13 18:19:47 +11:00
|
|
|
test/geom/aabb \
|
|
|
|
test/geom/ray \
|
2015-05-20 14:47:36 +10:00
|
|
|
test/hash/murmur \
|
2015-05-28 12:17:25 +10:00
|
|
|
test/hash/fasthash \
|
2015-03-02 00:06:47 +11:00
|
|
|
test/hmac \
|
2015-03-02 02:54:54 +11:00
|
|
|
test/hotp \
|
2015-02-13 18:02:09 +11:00
|
|
|
test/hton \
|
2015-04-20 17:51:00 +10:00
|
|
|
test/introspection \
|
2015-02-13 18:02:09 +11:00
|
|
|
test/ip \
|
|
|
|
test/json_types \
|
2015-11-11 16:56:35 +11:00
|
|
|
test/memory/buffer/circular \
|
|
|
|
test/memory/buffer/paged \
|
2015-11-19 16:46:44 +11:00
|
|
|
test/memory/deleter \
|
2015-02-13 18:02:09 +11:00
|
|
|
test/maths \
|
|
|
|
test/matrix \
|
|
|
|
test/md2 \
|
|
|
|
test/md4 \
|
|
|
|
test/md5 \
|
|
|
|
test/point \
|
|
|
|
test/polynomial \
|
|
|
|
test/pool \
|
2016-02-03 12:13:03 +11:00
|
|
|
test/rand/buckets \
|
2016-02-02 11:32:04 +11:00
|
|
|
test/random \
|
2015-02-13 18:02:09 +11:00
|
|
|
test/range \
|
2015-07-13 16:27:07 +10:00
|
|
|
test/rational \
|
2015-02-13 18:02:09 +11:00
|
|
|
test/region \
|
|
|
|
test/ripemd \
|
2016-02-03 13:57:18 +11:00
|
|
|
test/roots/bisection \
|
2015-02-13 18:02:09 +11:00
|
|
|
test/sha1 \
|
|
|
|
test/sha2 \
|
|
|
|
test/signal \
|
|
|
|
test/stringid \
|
2015-11-18 14:43:51 +11:00
|
|
|
test/strongdef \
|
2015-04-20 17:16:18 +10:00
|
|
|
test/tuple \
|
2015-02-13 18:02:09 +11:00
|
|
|
test/uri \
|
2015-04-02 14:57:30 +11:00
|
|
|
test/vector \
|
2015-02-13 18:02:09 +11:00
|
|
|
test/version
|
|
|
|
|
|
|
|
|
|
|
|
if PLATFORM_WIN32
|
|
|
|
test_hton_LDFLAGS = -lws2_32
|
|
|
|
endif
|
|
|
|
|
2015-04-13 16:45:56 +10:00
|
|
|
LOG_DRIVER = env AM_TAP_AWK='$(AWK)' $(SHELL) $(top_srcdir)/build-aux/tap-driver.sh
|
|
|
|
TESTS = $(top_builddir)/test/json-parse $(top_builddir)/test/json-schema $(TEST_BIN)
|
2015-02-13 18:02:09 +11:00
|
|
|
check_PROGRAMS = $(TEST_BIN)
|
2015-04-13 16:45:56 +10:00
|
|
|
EXTRA_DIST += test/json test/json-parse test/json-schema
|