chiark / gitweb /
c50c505d61d1bbccd2871c81af7bf5bd8d72ef22
[mLib] / Makefile.am
1 ### -*-makefile-*-
2 ###
3 ### Top-level build for mLib
4 ###
5 ### (c) 2009 Straylight/Edgeware
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
27 include $(top_srcdir)/vars.am
28
29 SUBDIRS                  =
30
31 ###--------------------------------------------------------------------------
32 ### Top-level library.
33
34 lib_LTLIBRARIES          = libmLib.la
35 libmLib_la_LDFLAGS       = -version-info $(LIBTOOL_VERSION_INFO)
36 libmLib_la_SOURCES       =
37 libmLib_la_LIBADD        =
38
39 ###--------------------------------------------------------------------------
40 ### Package-configuration file.
41
42 pkgconfigdir             = $(libdir)/pkgconfig
43 pkgconfig_DATA           = mLib.pc
44 EXTRA_DIST              += mLib.pc.in
45 CLEANFILES              += mLib.pc
46
47 mLib.pc: mLib.pc.in Makefile
48         $(confsubst) $(srcdir)/mLib.pc.in >$@.new $(SUBSTITUTIONS) && \
49                 mv $@.new $@
50
51 ###--------------------------------------------------------------------------
52 ### Subdirectories.
53 ###
54 ### Note: There are implicit dependencies between the subdirectories.  Be
55 ### careful about reordering them.
56
57 ## Utilities.
58 SUBDIRS                 += utils
59 libmLib_la_LIBADD       += utils/libutils.la
60
61 ## Memory allocation.
62 SUBDIRS                 += mem
63 libmLib_la_LIBADD       += mem/libmem.la
64
65 ## User interface.
66 SUBDIRS                 += ui
67 libmLib_la_LIBADD       += ui/libui.la
68
69 ## Hashing.
70 SUBDIRS                 += hash
71 libmLib_la_LIBADD       += hash/libhash.la
72
73 ## Data structures.
74 SUBDIRS                 += struct
75 libmLib_la_LIBADD       += struct/libstruct.la
76
77 ## Encoding and decoding.
78 SUBDIRS                 += codec
79 libmLib_la_LIBADD       += codec/libcodec.la
80
81 ## System utilities.
82 SUBDIRS                 += sys
83 libmLib_la_LIBADD       += sys/libsys.la
84
85 ## Buffering.
86 SUBDIRS                 += buf
87 libmLib_la_LIBADD       += buf/libbuf.la
88
89 ## Event-driven networking.
90 SUBDIRS                 += sel
91 libmLib_la_LIBADD       += sel/libsel.la
92
93 ## Testing.
94 SUBDIRS                 += test
95 libmLib_la_LIBADD       += test/libtest.la
96
97 ## Tracing.
98 SUBDIRS                 += trace
99 libmLib_la_LIBADD       += trace/libtrace.la
100
101 ###--------------------------------------------------------------------------
102 ### Testing.
103
104 SUBDIRS                 += t
105
106 ###--------------------------------------------------------------------------
107 ### Distribution.
108
109 ## Release number.
110 dist-hook::
111         echo $(VERSION) >$(distdir)/RELEASE
112
113 ## Additional build tools.
114 EXTRA_DIST              += config/confsubst
115 EXTRA_DIST              += config/auto-version
116 EXTRA_DIST              += config/maninst
117
118 ###--------------------------------------------------------------------------
119 ### Debian.
120
121 ## General stuff.
122 EXTRA_DIST              += debian/rules debian/copyright
123 EXTRA_DIST              += debian/control debian/changelog
124 EXTRA_DIST              += debian/mlib2.install
125 EXTRA_DIST              += debian/mlib2-adns.install
126 EXTRA_DIST              += debian/mlib-dev.install
127 EXTRA_DIST              += debian/mlib-bin.install
128
129 ###----- That's all, folks --------------------------------------------------