X-Git-Url: https://git.distorted.org.uk/~mdw/mLib/blobdiff_plain/21c22b5c3dc5efa3b53c0caf991b2e8f09cd2049..dff095f3bac7c61f574346c553486798d7fec426:/Makefile.am diff --git a/Makefile.am b/Makefile.am index 6ff03e8..c25344a 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,168 +1,146 @@ -## -*-Makefile-*- -## -## $Id: Makefile.am,v 1.15 1999/10/22 22:40:49 mdw Exp $ -## -## Building the distribution -## -## (c) 1998 Straylight/Edgeware -## - -##----- Licensing notice ---------------------------------------------------- -## -## This file is part of the mLib utilities library. -## -## mLib is free software; you can redistribute it and/or modify -## it under the terms of the GNU Library General Public License as -## published by the Free Software Foundation; either version 2 of the -## License, or (at your option) any later version. -## -## mLib is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU Library General Public License for more details. -## -## You should have received a copy of the GNU Library General Public -## License along with mLib; if not, write to the Free -## Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, -## MA 02111-1307, USA. - -##----- Revision history ---------------------------------------------------- -## -## $Log: Makefile.am,v $ -## Revision 1.15 1999/10/22 22:40:49 mdw -## New source files. New testing system for sym and dynarray. -## -## Revision 1.14 1999/10/04 21:47:12 mdw -## Lots of new source files. -## -## Revision 1.13 1999/08/02 14:47:21 mdw -## Distribute new `hash' module. -## -## Revision 1.12 1999/07/26 23:19:44 mdw -## New source files. -## -## Revision 1.11 1999/07/06 19:36:05 mdw -## Various minor bugfixes. -## -## Revision 1.10 1999/07/06 19:18:47 mdw -## Handle new manual page directory. -## -## Revision 1.9 1999/06/01 09:46:36 mdw -## Make all the new bits. -## -## Revision 1.8 1999/05/21 22:16:08 mdw -## Reorder the source files again, in an attempt to make them slightly -## logical. It hasn't really succeeded, although it is an improvement. -## -## Revision 1.7 1999/05/17 20:34:44 mdw -## More files added. Slight rearrangement of the ordering. -## -## Revision 1.6 1999/05/15 10:33:53 mdw -## Add simplified locking code. -## -## Revision 1.5 1999/05/14 21:01:28 mdw -## Integrated `select' handling bits from the background resolver project. -## -## Revision 1.4 1999/05/06 19:51:35 mdw -## Reformatted the LGPL notice a little bit. -## -## Revision 1.3 1999/05/05 18:50:30 mdw -## Change licensing conditions to LGPL. -## -## Revision 1.2 1998/11/25 23:30:30 mdw -## Add `tv.c'and `tv.h' to the list. -## -## Revision 1.1.1.1 1998/06/17 23:44:42 mdw -## Initial version of mLib -## -## Revision 1.5 1997/08/13 17:55:43 mdw -## Add big GPL header. General tidying up. -## - -## --- Options --- - -AUTOMAKE_OPTIONS = foreign - -## --- What to build --- - -SUBDIRS = man - -lib_LIBRARIES = libmLib.a -libexec_PROGRAMS = bres - -pkginclude_HEADERS = \ - alloc.h bits.h exc.h quis.h report.h sub.h trace.h track.h \ - darray.h dstr.h dspool.h hash.h sym.h crc32.h \ - env.h fdflags.h lock.h \ - bres.h conn.h lbuf.h ident.h sel.h selbuf.h sig.h tv.h \ - base64.h mdwopt.h str.h testrig.h url.h - -## --- Things to put in the library --- - -## libmLib_la_LDFLAGS = -version-info 1:0 - -libmLib_a_SOURCES = \ - alloc.c exc.c quis.c pquis.c report.c sub.c trace.c traceopt.c \ - track.c \ - darray.c dstr.c dputf.c dspool.c hash.c sym.c crc32.c \ - env.c fdflags.c lock.c \ - bres.c conn.c lbuf.c ident.c sel.c selbuf.c sig.c tv.c \ - base64.c mdwopt.c str.c testrig.c url.c - -## --- Test code --- - -noinst_PROGRAMS = da-test sym-test - -check: da-test.test sym-test.test - -da_test_LDADD = libmLib.a -da-test.in: - perl $(srcdir)/da-gtest 10000 >da-test.in -da-test.ref: da-test.in - perl $(srcdir)/da-ref da-test.ref -da-test.test: da-test da-test.in da-test.ref - ./da-test da-test.test - cmp da-test.test da-test.ref - @echo "darray tested OK." - -sym_test_LDADD = libmLib.a -sym-test.in: - perl $(srcdir)/sym-gtest 10000 >sym-test.in -sym-test.ref: sym-test.in - perl $(srcdir)/sym-ref sym-test.ref -sym-test.test: sym-test sym-test.in sym-test.ref - ./sym-test sym-test.test - cmp sym-test.test sym-test.ref - @echo "sym tested OK." - -TEST_CLEAN = \ - da-test.in da-test.ref da-test.test \ - sym-test.in sym-test.ref sym-test.test - -TEST_DIST = \ - da-gtest da-ref \ - sym-gtest sym-ref - -## --- Background resolver --- -## -## I must (a) build the standalone version, and (b) inform the client library -## where the standalone version is. - -bres: bres-stnd.o - $(LINK) -o bres bres-stnd.o $(LIBS) - -bres-stnd.o: $(srcdir)/bres.c - $(COMPILE) -c -DBRES_STANDALONE -o bres-stnd.o $(srcdir)/bres.c - -bres.o: $(srcdir)/bres.c - $(COMPILE) -c -DBRES_SERVER="\"$(libexecdir)/`echo bres|sed '$(transform)'`\"" $(srcdir)/bres.c - -## --- Other useful rules --- - -install-man: - (cd man && make install-man) - -CLEANFILES = $(TEST_CLEAN) -EXTRA_DIST = $(TEST_DIST) - -##----- That's all, folks --------------------------------------------------- +### -*-makefile-*- +### +### Top-level build for mLib +### +### (c) 2009 Straylight/Edgeware +### + +###----- Licensing notice --------------------------------------------------- +### +### This file is part of the mLib utilities library. +### +### mLib is free software; you can redistribute it and/or modify +### it under the terms of the GNU Library General Public License as +### published by the Free Software Foundation; either version 2 of the +### License, or (at your option) any later version. +### +### mLib is distributed in the hope that it will be useful, +### but WITHOUT ANY WARRANTY; without even the implied warranty of +### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +### GNU Library General Public License for more details. +### +### You should have received a copy of the GNU Library General Public +### License along with mLib; if not, write to the Free +### Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +### MA 02111-1307, USA. + +include $(top_srcdir)/vars.am + +SUBDIRS = + +###-------------------------------------------------------------------------- +### Top-level library. + +lib_LTLIBRARIES = libmLib.la +libmLib_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) \ + -no-undefined +libmLib_la_SOURCES = +libmLib_la_LIBADD = $(MLIB_LIBS) + +###-------------------------------------------------------------------------- +### Package-configuration file. + +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = mLib.pc +EXTRA_DIST += mLib.pc.in +CLEANFILES += mLib.pc + +mLib.pc: mLib.pc.in Makefile + $(SUBST) $(srcdir)/mLib.pc.in >$@.new \ + $(SUBSTITUTIONS) && \ + mv $@.new $@ + +###-------------------------------------------------------------------------- +### Subdirectories. +### +### Note: There are implicit dependencies between the subdirectories. Be +### careful about reordering them. + +## Utilities. +SUBDIRS += utils +libmLib_la_LIBADD += utils/libutils.la + +## Memory allocation. +SUBDIRS += mem +libmLib_la_LIBADD += mem/libmem.la + +## User interface. +SUBDIRS += ui +libmLib_la_LIBADD += ui/libui.la + +## Hashing. +SUBDIRS += hash +libmLib_la_LIBADD += hash/libhash.la + +## Data structures. +SUBDIRS += struct +libmLib_la_LIBADD += struct/libstruct.la + +## Encoding and decoding. +SUBDIRS += codec +libmLib_la_LIBADD += codec/libcodec.la + +## System utilities. +SUBDIRS += sys +libmLib_la_LIBADD += sys/libsys.la + +## Buffering. +SUBDIRS += buf +libmLib_la_LIBADD += buf/libbuf.la + +## Event-driven networking. +SUBDIRS += sel +libmLib_la_LIBADD += sel/libsel.la + +## Testing. +SUBDIRS += test +libmLib_la_LIBADD += test/libtest.la + +## Tracing. +SUBDIRS += trace +libmLib_la_LIBADD += trace/libtrace.la + +###-------------------------------------------------------------------------- +### Testing. + +SUBDIRS += t + +###-------------------------------------------------------------------------- +### Distribution. + +## Make sure the precomputed tables are available. Hang this off of any +## distributed file. +mLib.pc.in: ensure-precomp-libs +ensure-precomp-libs: + for d in ui utils; do (cd $$d && $(MAKE) all) || exit 1; done + +## Release number. +dist-hook:: + echo $(VERSION) >$(distdir)/RELEASE + +## Additional build tools. +EXTRA_DIST += config/confsubst +EXTRA_DIST += config/auto-version +EXTRA_DIST += config/maninst + +###-------------------------------------------------------------------------- +### Debian. + +## General stuff. +EXTRA_DIST += debian/rules debian/copyright +EXTRA_DIST += debian/control debian/changelog +EXTRA_DIST += debian/compat debian/source/format + +## mlib2 +EXTRA_DIST += debian/mlib2.install + +## mlib2-adns +EXTRA_DIST += debian/mlib2-adns.install.in + +## mlib-bin +EXTRA_DIST += debian/mlib-bin.install + +## mlib-dev +EXTRA_DIST += debian/mlib-dev.install + +###----- That's all, folks --------------------------------------------------