Commit | Line | Data |
---|---|---|
18c831dc | 1 | ### -*-makefile-*- |
a0150d8d | 2 | ### |
18c831dc | 3 | ### Top-level build for mLib |
a0150d8d | 4 | ### |
18c831dc | 5 | ### (c) 2009 Straylight/Edgeware |
a0150d8d MW |
6 | ### |
7 | ||
8 | ###----- Licensing notice --------------------------------------------------- | |
9 | ### | |
10 | ### This file is part of the mLib utilities library. | |
11 | ### | |
12 | ### mLib is free software; you can redistribute it and/or modify | |
13 | ### it under the terms of the GNU Library General Public License as | |
14 | ### published by the Free Software Foundation; either version 2 of the | |
15 | ### License, or (at your option) any later version. | |
16 | ### | |
17 | ### mLib is distributed in the hope that it will be useful, | |
18 | ### but WITHOUT ANY WARRANTY; without even the implied warranty of | |
19 | ### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
20 | ### GNU Library General Public License for more details. | |
21 | ### | |
22 | ### You should have received a copy of the GNU Library General Public | |
23 | ### License along with mLib; if not, write to the Free | |
24 | ### Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, | |
25 | ### MA 02111-1307, USA. | |
26 | ||
18c831dc | 27 | include $(top_srcdir)/vars.am |
a0150d8d MW |
28 | |
29 | SUBDIRS = | |
a0150d8d MW |
30 | |
31 | ###-------------------------------------------------------------------------- | |
18c831dc | 32 | ### Top-level library. |
a0150d8d | 33 | |
18c831dc | 34 | lib_LTLIBRARIES = libmLib.la |
cdbc7357 MW |
35 | libmLib_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) \ |
36 | -no-undefined | |
a0150d8d MW |
37 | libmLib_la_SOURCES = |
38 | libmLib_la_LIBADD = | |
39 | ||
18c831dc MW |
40 | ###-------------------------------------------------------------------------- |
41 | ### Package-configuration file. | |
42 | ||
a0150d8d MW |
43 | pkgconfigdir = $(libdir)/pkgconfig |
44 | pkgconfig_DATA = mLib.pc | |
45 | EXTRA_DIST += mLib.pc.in | |
46 | CLEANFILES += mLib.pc | |
47 | ||
48 | mLib.pc: mLib.pc.in Makefile | |
118a549c | 49 | $(SUBST) $(srcdir)/mLib.pc.in >$@.new \ |
3ac6fc5f | 50 | $(SUBSTITUTIONS) && \ |
a0150d8d MW |
51 | mv $@.new $@ |
52 | ||
53 | ###-------------------------------------------------------------------------- | |
18c831dc MW |
54 | ### Subdirectories. |
55 | ### | |
56 | ### Note: There are implicit dependencies between the subdirectories. Be | |
57 | ### careful about reordering them. | |
a0150d8d | 58 | |
18c831dc MW |
59 | ## Utilities. |
60 | SUBDIRS += utils | |
61 | libmLib_la_LIBADD += utils/libutils.la | |
a0150d8d MW |
62 | |
63 | ## Memory allocation. | |
18c831dc MW |
64 | SUBDIRS += mem |
65 | libmLib_la_LIBADD += mem/libmem.la | |
a0150d8d | 66 | |
18c831dc MW |
67 | ## User interface. |
68 | SUBDIRS += ui | |
69 | libmLib_la_LIBADD += ui/libui.la | |
a0150d8d | 70 | |
18c831dc MW |
71 | ## Hashing. |
72 | SUBDIRS += hash | |
73 | libmLib_la_LIBADD += hash/libhash.la | |
a0150d8d | 74 | |
18c831dc MW |
75 | ## Data structures. |
76 | SUBDIRS += struct | |
77 | libmLib_la_LIBADD += struct/libstruct.la | |
a0150d8d | 78 | |
18c831dc MW |
79 | ## Encoding and decoding. |
80 | SUBDIRS += codec | |
81 | libmLib_la_LIBADD += codec/libcodec.la | |
a0150d8d | 82 | |
18c831dc MW |
83 | ## System utilities. |
84 | SUBDIRS += sys | |
85 | libmLib_la_LIBADD += sys/libsys.la | |
a0150d8d | 86 | |
18c831dc MW |
87 | ## Buffering. |
88 | SUBDIRS += buf | |
89 | libmLib_la_LIBADD += buf/libbuf.la | |
a0150d8d | 90 | |
18c831dc MW |
91 | ## Event-driven networking. |
92 | SUBDIRS += sel | |
93 | libmLib_la_LIBADD += sel/libsel.la | |
a0150d8d MW |
94 | |
95 | ## Testing. | |
18c831dc MW |
96 | SUBDIRS += test |
97 | libmLib_la_LIBADD += test/libtest.la | |
a0150d8d | 98 | |
18c831dc MW |
99 | ## Tracing. |
100 | SUBDIRS += trace | |
101 | libmLib_la_LIBADD += trace/libtrace.la | |
a0150d8d | 102 | |
7cf5c72a MW |
103 | ###-------------------------------------------------------------------------- |
104 | ### Testing. | |
105 | ||
106 | SUBDIRS += t | |
107 | ||
a0150d8d MW |
108 | ###-------------------------------------------------------------------------- |
109 | ### Distribution. | |
110 | ||
5bd808a6 MW |
111 | ## Make sure the precomputed tables are available. Hang this off of any |
112 | ## distributed file. | |
113 | mLib.pc.in: ensure-precomp-libs | |
114 | ensure-precomp-libs: | |
115 | for d in ui utils; do (cd $$d && $(MAKE) all) || exit 1; done | |
116 | ||
a0150d8d MW |
117 | ## Release number. |
118 | dist-hook:: | |
119 | echo $(VERSION) >$(distdir)/RELEASE | |
120 | ||
121 | ## Additional build tools. | |
122 | EXTRA_DIST += config/confsubst | |
123 | EXTRA_DIST += config/auto-version | |
124 | EXTRA_DIST += config/maninst | |
125 | ||
126 | ###-------------------------------------------------------------------------- | |
127 | ### Debian. | |
c255a2ee | 128 | |
a0150d8d MW |
129 | ## General stuff. |
130 | EXTRA_DIST += debian/rules debian/copyright | |
131 | EXTRA_DIST += debian/control debian/changelog | |
10d1a23f | 132 | EXTRA_DIST += debian/compat debian/source/format |
5b078c11 MW |
133 | |
134 | ## mlib2 | |
a0150d8d | 135 | EXTRA_DIST += debian/mlib2.install |
5b078c11 MW |
136 | |
137 | ## mlib2-adns | |
9a38b772 | 138 | EXTRA_DIST += debian/mlib2-adns.install.in |
5b078c11 MW |
139 | |
140 | ## mlib-bin | |
a0150d8d | 141 | EXTRA_DIST += debian/mlib-bin.install |
21c22b5c | 142 | |
5b078c11 MW |
143 | ## mlib-dev |
144 | EXTRA_DIST += debian/mlib-dev.install | |
145 | ||
18c831dc | 146 | ###----- That's all, folks -------------------------------------------------- |