Makefile.am revision 1.5
1# Id: Makefile.am,v 1.23 2005/07/01 08:57:50 manubsd Exp
2
3sbin_PROGRAMS = racoon racoonctl plainrsa-gen
4noinst_PROGRAMS = eaytest
5include_racoon_HEADERS = racoonctl.h var.h vmbuf.h misc.h gcmalloc.h admin.h \
6	schedule.h sockmisc.h vmbuf.h isakmp_var.h isakmp.h isakmp_xauth.h \
7	isakmp_cfg.h isakmp_unity.h ipsec_doi.h evt.h
8lib_LTLIBRARIES = libracoon.la
9
10adminsockdir=${localstatedir}/racoon
11
12INCLUDES = -I${srcdir}/../libipsec 
13AM_CFLAGS = -D_GNU_SOURCE @GLIBC_BUGS@ -DSYSCONFDIR=\"${sysconfdir}\" \
14	-DADMINPORTDIR=\"${adminsockdir}\"
15AM_LDFLAGS = @EXTRA_CRYPTO@ -lcrypto
16
17MISSING_ALGOS = \
18	missing/crypto/sha2/sha2.c \
19	missing/crypto/rijndael/rijndael-api-fst.c \
20	missing/crypto/rijndael/rijndael-alg-fst.c
21
22racoon_SOURCES = \
23	main.c session.c isakmp.c handler.c \
24	isakmp_ident.c isakmp_agg.c isakmp_base.c \
25	isakmp_quick.c isakmp_inf.c isakmp_newg.c \
26	gssapi.c dnssec.c getcertsbyname.c privsep.c \
27	pfkey.c admin.c evt.c ipsec_doi.c oakley.c grabmyaddr.c vendorid.c \
28	policy.c localconf.c remoteconf.c crypto_openssl.c algorithm.c \
29	proposal.c sainfo.c strnames.c \
30	plog.c logger.c schedule.c str2val.c \
31	safefile.c backupsa.c genlist.c rsalist.c \
32	cftoken.l cfparse.y prsa_tok.l prsa_par.y 
33EXTRA_racoon_SOURCES = isakmp_xauth.c isakmp_cfg.c isakmp_unity.c throttle.c \
34	isakmp_frag.c nattraversal.c security.c $(MISSING_ALGOS)
35racoon_LDFLAGS = ../libipsec/libipsec.la
36racoon_LDADD = $(CRYPTOBJS) $(HYBRID_OBJS) $(NATT_OBJS) $(FRAG_OBJS) $(LEXLIB) \
37	 $(SECCTX_OBJS) vmbuf.o sockmisc.o misc.o
38racoon_DEPENDENCIES = ../libipsec/libipsec.la \
39	$(CRYPTOBJS) $(HYBRID_OBJS) $(NATT_OBJS) $(FRAG_OBJS) $(SECCTX_OBJS) \
40	vmbuf.o sockmisc.o misc.o
41
42racoonctl_SOURCES = racoonctl.c str2val.c 
43racoonctl_LDFLAGS = libracoon.la ../libipsec/libipsec.la 
44racoonctl_DEPENDENCIES = ../libipsec/libipsec.la libracoon.la
45
46libracoon_la_SOURCES = kmpstat.c vmbuf.c sockmisc.c misc.c
47libracoon_la_CFLAGS = -DNOUSE_PRIVSEP
48
49plainrsa_gen_SOURCES = plainrsa-gen.c plog.c \
50	crypto_openssl.c logger.c 
51EXTRA_plainrsa_gen_SOURCES = $(MISSING_ALGOS)
52plainrsa_gen_LDADD = $(CRYPTOBJS) vmbuf.o misc.o
53plainrsa_gen_DEPENDENCIES = $(CRYPTOBJS) vmbuf.o misc.o
54
55eaytest_SOURCES = eaytest.c plog.c logger.c
56EXTRA_eaytest_SOURCES = missing/crypto/sha2/sha2.c
57eaytest_LDADD =	crypto_openssl_test.o vmbuf.o str2val.o misc_noplog.o \
58	$(CRYPTOBJS)
59eaytest_DEPENDENCIES = crypto_openssl_test.o vmbuf.o str2val.o \
60	misc_noplog.o $(CRYPTOBJS)
61
62noinst_HEADERS = \
63	admin.h           dnssec.h      isakmp_base.h   oakley.h      session.h \
64	admin_var.h       dump.h        isakmp_ident.h  pfkey.h       sockmisc.h \
65	algorithm.h       gcmalloc.h    isakmp_inf.h    plog.h        str2val.h \
66	backupsa.h        gnuc.h        isakmp_newg.h   policy.h      strnames.h \
67	grabmyaddr.h      isakmp_quick.h  proposal.h    var.h         evt.h \
68	gssapi.h          isakmp_var.h	vendorid.h      nattraversal.h\
69	crypto_openssl.h  handler.h     localconf.h     remoteconf.h  vmbuf.h \
70	debug.h           ipsec_doi.h   logger.h        safefile.h \
71	debugrm.h         isakmp.h      misc.h          sainfo.h \
72	dhgroup.h         isakmp_agg.h  netdb_dnssec.h  schedule.h \
73	isakmp_cfg.h      isakmp_xauth.h isakmp_unity.h isakmp_frag.h \
74	throttle.h	  privsep.h \
75	cfparse_proto.h	  cftoken_proto.h genlist.h     rsalist.h \
76	missing/crypto/sha2/sha2.h missing/crypto/rijndael/rijndael_local.h \
77	missing/crypto/rijndael/rijndael-api-fst.h \
78	missing/crypto/rijndael/rijndael-alg-fst.h \
79	missing/crypto/rijndael/rijndael.h
80
81man5_MANS = racoon.conf.5
82man8_MANS = racoon.8 racoonctl.8 plainrsa-gen.8
83
84EXTRA_DIST = \
85   ${man5_MANS} ${man8_MANS} \
86   missing/crypto/rijndael/boxes-fst.dat \
87   doc/FAQ doc/README.certificate doc/README.gssapi doc/README.plainrsa \
88   doc/README.privsep \
89   contrib/sp.pl stats.pl \
90   samples/psk.txt.sample  samples/racoon.conf.sample \
91   samples/psk.txt.in samples/racoon.conf.in \
92   samples/racoon.conf.sample-gssapi samples/racoon.conf.sample-natt \
93   samples/racoon.conf.sample-inherit samples/racoon.conf.sample-plainrsa \
94   samples/roadwarrior/README \
95   samples/roadwarrior/client/phase1-down.sh \
96   samples/roadwarrior/client/phase1-up.sh \
97   samples/roadwarrior/client/racoon.conf \
98   samples/roadwarrior/server/racoon.conf \
99   samples/roadwarrior/server/racoon.conf-radius
100
101DISTCLEANFILES = cfparse.c cftoken.c prsa_tok.c prsa_par.c cfparse.h prsa_par.h
102
103TESTS = eaytest
104
105install-exec-local:
106	${mkinstalldirs} $(DESTDIR)${adminsockdir}
107
108# Config file parser
109cftoken.o: cftoken.c cfparse.h
110	$(COMPILE) -c -o $@ $<
111
112cfparse.o: cfparse.c
113	$(COMPILE) -c -o $@ $<
114
115cftoken.c: cftoken.l
116	$(LEX) -ocftoken.c $(srcdir)/cftoken.l
117
118cfparse.h: cfparse.c
119
120cfparse.c: $(srcdir)/cfparse.y
121	$(YACC) -bcfparse -d $(srcdir)/cfparse.y && \
122	mv cfparse.tab.c cfparse.c && \
123	mv cfparse.tab.h cfparse.h
124
125# Plain-RSA parser
126prsa_tok.o: prsa_tok.c prsa_par.h
127	$(COMPILE) -c -o $@ $<
128
129prsa_par.o: prsa_par.c
130	$(COMPILE) -c -o $@ $<
131
132prsa_tok.c: $(srcdir)/prsa_tok.l
133	$(LEX) -Pprsa -oprsa_tok.c $(srcdir)/prsa_tok.l
134
135prsa_par.h: prsa_par.c
136
137prsa_par.c: $(srcdir)/prsa_par.y
138	$(YACC) -bprsa_par -pprsa -d $(srcdir)/prsa_par.y && \
139	mv prsa_par.tab.c prsa_par.c && \
140	mv prsa_par.tab.h prsa_par.h
141
142# special object rules
143crypto_openssl_test.o: crypto_openssl.c
144	$(COMPILE) -DEAYDEBUG -o crypto_openssl_test.o -c $(srcdir)/crypto_openssl.c
145
146misc_noplog.o: misc.c
147	$(COMPILE) -DNOUSE_PLOG -o misc_noplog.o -c $(srcdir)/misc.c
148
149# missing/*.c
150strdup.o:	$(srcdir)/missing/strdup.c
151	$(COMPILE) -c $(srcdir)/missing/$*.c
152getaddrinfo.o:	$(srcdir)/missing/getaddrinfo.c
153	$(COMPILE) -c $(srcdir)/missing/$*.c
154getnameinfo.o:	$(srcdir)/missing/getnameinfo.c
155	$(COMPILE) -c $(srcdir)/missing/$*.c
156rijndael-api-fst.o: $(srcdir)/missing/crypto/rijndael/rijndael-api-fst.c
157	$(COMPILE) -c $(srcdir)/missing/crypto/rijndael/$*.c
158rijndael-alg-fst.o: $(srcdir)/missing/crypto/rijndael/rijndael-alg-fst.c
159	$(COMPILE) -c $(srcdir)/missing/crypto/rijndael/$*.c
160sha2.o: $(srcdir)/missing/crypto/sha2/sha2.c
161	$(COMPILE) -c $(srcdir)/missing/crypto/sha2/$*.c
162