1# -*- Makefile -*-
2
3AM_CPPFLAGS = ${regular_CPPFLAGS} -I${top_srcdir}/include
4AM_CFLAGS   = ${regular_CFLAGS}
5AM_CXXFLAGS = ${regular_CXXFLAGS}
6
7lib_LTLIBRARIES  = libHX.la
8if HAVE_DLFCN_H
9lib_LTLIBRARIES += libHX_rtcheck.la
10endif
11
12libHX_la_SOURCES = deque.c dl.c format.c io.c map.c \
13                   mc.c misc.c opt.c \
14                   rand.c string.c time.c
15libHX_la_LIBADD  = ${libdl_LIBS} ${libpthread_LIBS} ${librt_LIBS}
16libHX_la_LDFLAGS = -no-undefined -version-info 32:0:0
17if WITH_GNU_LD
18libHX_la_LDFLAGS += -Wl,--version-script=${srcdir}/libHX.map
19endif
20EXTRA_libHX_la_DEPENDENCIES = libHX.map
21
22if MINGW32
23libHX_la_SOURCES += ux-file.c ux-mmap.c
24endif
25if B_PROC
26libHX_la_SOURCES += proc.c
27endif
28
29libHX_rtcheck_la_SOURCES = rtcheck.c
30libHX_rtcheck_la_LIBADD  = ${libdl_LIBS}
31libHX_rtcheck_la_LDFLAGS = -no-undefined -avoid-version -module
32if WITH_GNU_LD
33libHX_rtcheck_la_LDFLAGS += -Wl,--version-script=${srcdir}/libHX.map
34endif
35
36EXTRA_DIST = internal.h map_int.h libHX.map
37
38check_PROGRAMS     = tc-compile tc-cast tc-deque tc-dir tc-format tc-link \
39                     tc-list tc-list2 tc-map tc-memmem tc-misc tc-netio \
40                     tc-option tc-proc tc-rand tc-realpath \
41                     tc-shconfig tc-strchr2 tc-string tc-strquote tc-time
42TESTS              = tc-strchr2 tc-strquote
43tc_cast_CFLAGS     = ${AM_CFLAGS} -std=gnu99
44tc_cast_LDADD      = libHX.la -lm
45tc_compile_LDADD   = libHX.la
46tc_dir_LDADD       = libHX.la
47tc_format_LDADD    = libHX.la
48tc_link_LDADD      = libHX.la
49tc_list_LDADD      = libHX.la
50tc_list2_LDADD     = libHX.la
51tc_list2_CFLAGS    = ${AM_CFLAGS} -O2 -fstrict-aliasing
52tc_map_LDADD       = libHX.la -lm
53tc_memmem_LDADD    = libHX.la
54tc_misc_LDADD      = libHX.la
55tc_netio_LDADD     = libHX.la ${libsocket_LIBS}
56tc_option_LDADD    = libHX.la
57tc_proc_LDADD      = libHX.la
58tc_rand_LDADD      = libHX.la
59tc_realpath_LDADD  = libHX.la
60tc_shconfig_LDADD  = libHX.la
61tc_strchr2_LDADD   = libHX.la
62tc_string_LDADD    = libHX.la
63tc_strquote_LDADD  = libHX.la
64tc_time_LDADD      = libHX.la
65
66if HAVE_CXX
67check_PROGRAMS    += tx-compile tx-cast tx-deque tx-dir tx-list tx-list2 \
68                     tx-misc tx-netio \
69                     tx-option tx-proc tx-rand tx-strchr2 tx-string \
70                     tx-strquote tx-time
71TESTS             += tx-strchr2 tx-strquote
72tx_cast_SOURCES    = tx-cast.cpp
73tx_cast_CXXFLAGS   = ${AM_CXXFLAGS} -std=c++98
74tx_cast_LDADD      = libHX.la -lm
75tx_compile_SOURCES = tx-compile.cpp
76tx_compile_LDADD   = libHX.la
77tx_deque_SOURCES   = tx-deque.cpp
78tx_dir_SOURCES     = tx-dir.cpp
79tx_dir_LDADD       = libHX.la
80tx_list_SOURCES    = tx-list.cpp
81tx_list_LDADD      = libHX.la
82tx_list2_SOURCES   = tx-list2.cpp
83tx_list2_CXXFLAGS  = ${AM_CXXFLAGS} -O2 -fstrict-aliasing
84tx_list2_LDADD     = libHX.la
85tx_misc_SOURCES    = tx-misc.cpp
86tx_misc_LDADD      = libHX.la
87tx_netio_SOURCES   = tx-netio.cpp
88tx_netio_LDADD     = libHX.la ${libsocket_LIBS}
89tx_option_SOURCES  = tx-option.cpp
90tx_option_LDADD    = libHX.la
91tx_proc_SOURCES    = tx-proc.cpp
92tx_proc_LDADD      = libHX.la
93tx_rand_SOURCES    = tx-rand.cpp
94tx_rand_LDADD      = libHX.la ${librt_LIBS}
95tx_strchr2_SOURCES = tx-strchr2.cpp
96tx_strchr2_LDADD   = libHX.la
97tx_string_SOURCES  = tx-string.cpp
98tx_string_LDADD    = libHX.la
99tx_strquote_SOURCES = tx-strquote.cpp
100tx_strquote_LDADD   = libHX.la
101tx_time_SOURCES    = tx-time.cpp
102tx_time_LDADD      = libHX.la ${librt_LIBS}
103endif
104