X-Git-Url: https://git.distorted.org.uk/~mdw/become/blobdiff_plain/5b175cbbd74099aca651346b7ee9a8034f249217..af4f4d6a77aceba8e2d6f58d15e894df320e7c24:/src/Makefile.am diff --git a/src/Makefile.am b/src/Makefile.am index effb91c..f502d8e 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1,7 +1,7 @@ ## Process this file with `automake' to generate `Makefile.in' ## -*-makefile-*- ## -## $Id: Makefile.am,v 1.9 1998/02/20 18:12:35 mdw Exp $ +## $Id: Makefile.am,v 1.17 2004/04/08 01:36:20 mdw Exp $ ## ## Makefile for `become' ## @@ -26,100 +26,53 @@ ## along with `become'; 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.9 1998/02/20 18:12:35 mdw -## Make the `become' program setuid root when installing. -## -## Revision 1.8 1998/01/12 16:45:36 mdw -## Fix copyright date. -## -## Revision 1.7 1997/09/26 09:14:57 mdw -## Merged blowfish branch into trunk. -## -## Revision 1.6.2.1 1997/09/26 09:07:56 mdw -## Use the Blowfish encryption algorithm instead of IDEA. This is partly -## because I prefer Blowfish (without any particularly strong evidence) but -## mainly because IDEA is patented and Blowfish isn't. -## -## Revision 1.6 1997/09/18 11:17:18 mdw -## Fix comment leaders. Don't know why this CVS keeps breaking them. -## Could be DEC's bogus version of RCS being picked up. -## -## Revision 1.5 1997/09/17 10:28:25 mdw -## Remove `set.c'. No longer necessary. -## -## Revision 1.4 1997/08/20 16:14:12 mdw -## Build parser and lexer into the source directory. Other cosmetic -## things. -## -## Revision 1.3 1997/08/07 09:39:36 mdw -## Add new source files, and remove options inappropriate for subsidiary -## Makefiles. -## -## Revision 1.2 1997/08/04 10:24:19 mdw -## Sources placed under CVS control. -## - ##----- General setup things ------------------------------------------------ ## --- What to make --- -bin_PROGRAMS = become keygen -noinst_LIBRARIES = bcm +bin_PROGRAMS = become bcquery +noinst_LIBRARIES = libbecome.a ##----- Building the main code ---------------------------------------------- ## --- The library contains most of the interesting stuff --- -bcm_SOURCES = \ +libbecome_a_SOURCES = \ check.c daemon.c \ lexer.l parser.y \ - class.c name.c netg.c rule.c sym.c userdb.c \ - crypt.c \ - noise.c rand.c \ - icrypt.c blowfish.c md5.c \ - mdwopt.c tx.c utils.c \ + class.c name.c netg.c rule.c userdb.c ypstuff.c \ \ become.h \ check.h daemon.h \ - lexer.h parser.h \ - class.h name.h netg.h rule.h sym.h userdb.h \ - crypt.h \ - noise.h rand.h \ - icrypt.h blowfish.h blowfish-sbox.h md5.h \ - mdwopt.h tx.h utils.h \ - dbutils.h + lexer.h parse.h \ + class.h name.h netg.h rule.h userdb.h ypstuff.h BUILT_SOURCES = \ - parser.c lexer.c parser.tab.h + parser.c parser.h lexer.c ## --- Yaccing and lexing --- -$(srcdir)/parser.c $(srcdir)/parser.tab.h: $(srcdir)/parser.y - @YACC@ -d -v $(srcdir)/parser.y - mv y.tab.c $(srcdir)/parser.c - mv y.tab.h $(srcdir)/parser.tab.h +YFLAGS = -d -v -$(srcdir)/lexer.c: $(srcdir)/lexer.l - @LEX@ $(srcdir)/lexer.l - mv lex.yy.c $(srcdir)/lexer.c +dist-hook: + for i in $(BUILT_SOURCES); do \ + [ -r $(distdir)/$$i ] || ln $$i $(distdir)/$$i; \ + done ## --- The main programs --- -LDADD = libbcm.a @LEXLIB@ +LDADD = libbecome.a @LEXLIB@ become_SOURCES = become.c -keygen_SOURCES = keygen.c +bcquery_SOURCES = bcquery.c -become_DEPENDENCIES = libbcm.a -keygen_DEPENDENCIES = libbcm.a +become_DEPENDENCIES = libbecome.a +bcquery_DEPENDENCIES = libbecome.a ##----- Become must be setuid root ------------------------------------------ -install-data-hook: - become_prog=${bindir}/`echo become|sed '${transform}'`; \ +install-exec-hook: + become_prog=$(DESTDIR)/${bindir}/`echo become|sed '${transform}'`; \ { chown root $${become_prog} && \ chmod 4755 $${become_prog}; } || \ { echo ">>>>>"; \ @@ -131,38 +84,25 @@ install-data-hook: ## --- The test programs --- -TESTS = \ - name-test netg-test sym-test userdb-test \ - crypt-test \ - blowfish-test idea-test md5-test +TESTS = name-test netg-test userdb-test ## --- How to build a test rig --- SUFFIXES = .tro .c.tro: - $(COMPILE) -DTEST_RIG $< -o $@ + $(COMPILE) -DTEST_RIG $< -c -o $@ ## --- Now build all the test programs --- ## ## This is a right pain. However, `automake' provides no way of automating ## this. (A drop-out to raw perl would be nice, for example.) -name-test: name.tro libbcm.a - $(LINK) name.tro libbcm.a $(LIBS) -sym-test: sym.tro libbcm.a - $(LINK) sym.tro libbcm.a $(LIBS) -userdb-test: userdb.tro libbcm.a - $(LINK) userdb.tro libbcm.a $(LIBS) -crypt-test: crypt.tro libbcm.a - $(LINK) crypt.tro libbcm.a $(LIBS) -blowfish-test: blowfish.tro libbcm.a - $(LINK) blowfish.tro libbcm.a $(LIBS) -idea-test: idea.tro libbcm.a - $(LINK) idea.tro libbcm.a $(LIBS) -md5-test: md5.tro libbcm.a - $(LINK) md5.tro libbcm.a $(LIBS) -netg-test: netg.tro libbcm.a - $(LINK) netg.tro libbcm.a +name-test: name.tro libbecome.a + $(LINK) name.tro libbecome.a $(LIBS) +userdb-test: userdb.tro libbecome.a + $(LINK) userdb.tro libbecome.a $(LIBS) +netg-test: netg.tro libbecome.a + $(LINK) netg.tro libbecome.a $(LIBS) CLEANFILES = *.tro y.output