Sources placed under CVS control.
[become] / src / Makefile.am
CommitLineData
8ddbfc62 1## Process this file with `automake' to generate `Makefile.in'
2## -*-makefile-*-
3##
4## $Id: Makefile.am,v 1.1 1997/08/04 10:22:09 mdw Exp $
5##
6## Makefile for `become'
7##
8## (c) 1997 EBI
9##
10
11##----- Licensing notice ----------------------------------------------------
12##
13## This file is part of `become'
14##
15## `Become' is free software; you can redistribute it and/or modify
16## it under the terms of the GNU General Public License as published by
17## the Free Software Foundation; either version 2 of the License, or
18## (at your option) any later version.
19##
20## `Become' is distributed in the hope that it will be useful,
21## but WITHOUT ANY WARRANTY; without even the implied warranty of
22## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23## GNU General Public License for more details.
24##
25## You should have received a copy of the GNU General Public License
26## along with `become'; if not, write to the Free Software Foundation,
27## Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
28
29##----- Revision history ----------------------------------------------------
30##
31## $Log: Makefile.am,v $
32## Revision 1.1 1997/08/04 10:22:09 mdw
33## Sources placed under CVS control.
34##
35
36##----- General setup things ------------------------------------------------
37
38## --- Standard setup things ---
39
40AUTOMAKE_OPTIONS = foreign
41
42## --- What to make ---
43
44bin_PROGRAMS = become keygen
45noinst_LIBRARIES = bcm
46
47##----- Building the main code ----------------------------------------------
48
49## --- The library contains most of the interesting stuff ---
50
51bcm_SOURCES = \
52 check.c daemon.c \
53 lexer.l parser.y \
54 class.c name.c rule.c set.c sym.c userdb.c \
55 crypt.c \
56 noise.c rand.c \
57 icrypt.c idea.c md5.c \
58 mdwopt.c tx.c utils.c \
59 \
60 become.h \
61 check.h daemon.h \
62 lexer.h parser.h \
63 class.h name.h rule.h set.h sym.h userdb.h \
64 crypt.h \
65 noise.h rand.h \
66 icrypt.h idea.h md5.h \
67 mdwopt.h tx.h utils.h
68
69BUILT_SOURCES = \
70 parser.c lexer.c parser.tab.h
71
72## --- Yaccing and lexing ---
73
74parser.c parser.tab.h: $(srcdir)/parser.y
75 @YACC@ -d -v $(srcdir)/parser.y
76 mv y.tab.c parser.c
77 mv y.tab.h parser.tab.h
78
79lexer.c: $(srcdir)/lexer.l
80 @LEX@ $(srcdir)/lexer.l
81 mv lex.yy.c lexer.c
82
83## --- The main programs ---
84
85LDADD = libbcm.a @LIBS@ @LEXLIB@
86become_SOURCES = become.c
87keygen_SOURCES = keygen.c
88
89become keygen: libbcm.a
90
91##----- Testing -------------------------------------------------------------
92
93## --- The test programs ---
94
95TESTS = \
96 name-test sym-test userdb-test netg-test \
97 crypt-test \
98 blowfish-test idea-test md5-test
99
100## --- How to build a test rig ---
101
102SUFFIXES = .tro
103.c.tro:
104 $(COMPILE) -DTEST_RIG $< -o $@
105
106## --- Now build all the test programs ---
107##
108## This is a right pain. However, `automake' provides no way of automating
109## this. (A drop-out to raw perl would be nice, for example.)
110
111name-test: name.tro libbcm.a
112 $(LINK) name.tro libbcm.a $(LIBS)
113sym-test: sym.tro libbcm.a
114 $(LINK) sym.tro libbcm.a $(LIBS)
115userdb-test: userdb.tro libbcm.a
116 $(LINK) userdb.tro libbcm.a $(LIBS)
117crypt-test: crypt.tro libbcm.a
118 $(LINK) crypt.tro libbcm.a $(LIBS)
119blowfish-test: blowfish.tro libbcm.a
120 $(LINK) blowfish.tro libbcm.a $(LIBS)
121idea-test: idea.tro libbcm.a
122 $(LINK) idea.tro libbcm.a $(LIBS)
123md5-test: md5.tro libbcm.a
124 $(LINK) md5.tro libbcm.a $(LIBS)
125netg-test: netg.tro libbcm.a
126 $(LINK) netg.tro libbcm.a
127
128##----- That's all, folks ---------------------------------------------------