root/src/Makefile.in

Revision d074a94dcf46254414d8693352e7b8d537f6d082, 3.9 kB (checked in by Theo Schlossnagle <jesus@omniti.com>, 5 years ago)

expose version string - untested and unused for now, refs #115

  • Property mode set to 100644
Line 
1 .SUFFIXES: .re .c
2
3 CC=@CC@
4 CPPFLAGS=@CPPFLAGS@
5 CFLAGS=@CFLAGS@
6 PGCFLAGS=@PGCFLAGS@
7 LDFLAGS=@LDFLAGS@
8 AR=@AR@
9 RANLIB=@RANLIB@
10 LIBS=@LIBS@
11 PGLIBS=@PGLIBS@
12 INSTALL=@INSTALL@
13 XML2H=@top_srcdir@/buildtools/xml2h
14
15 prefix=@prefix@
16 exec_prefix=@exec_prefix@
17 bindir=@bindir@
18 sbindir=@sbindir@
19 libdir=@libdir@
20 includedir=${prefix}/include
21 libexecdir=@libexecdir@
22 datarootdir = @datarootdir@
23 mandir=@mandir@
24 mansubdir=@mansubdir@
25 docdir=${prefix}/@docdir@
26 sysconfdir=@sysconfdir@
27 srcdir=@srcdir@
28 top_srcdir=@top_srcdir@
29 MODULES_DIR=@MODULES_DIR@
30
31 WHOLE_ARCHIVE=@WHOLE_ARCHIVE@
32 NOWHOLE_ARCHIVE=@NOWHOLE_ARCHIVE@
33
34 SUBS=lua utils eventer udns modules noitedit man
35
36 NOIT_OBJS=noitd.o noit_listener.o \
37         noit_console.o noit_console_state.o noit_console_telnet.o \
38         noit_console_complete.o \
39         noit_check.o noit_check_log.o noit_check_tools.o \
40         noit_module.o noit_conf.o noit_conf_checks.o noit_tokenizer.o \
41         noit_capabilities_listener.o \
42         noit_jlog_listener.o noit_livestream_listener.o noit_filters.o
43
44 STRATCON_OBJS=stratcond.o noit_listener.o \
45         noit_console.o noit_console_state.o noit_console_telnet.o \
46         noit_console_complete.o \
47         noit_conf.o noit_http.o noit_tokenizer.o \
48         stratcon_realtime_http.o \
49         stratcon_jlog_streamer.o stratcon_datastore.o
50
51 all:    noitd stratcond noit.conf test-noit.conf
52
53 make-subdirs:   serf/.libs/libserf-0.o jlog/libjlog.a
54         for dir in $(SUBS) ; do \
55                 (cd $$dir && make) ; \
56         done
57
58 jlog/libjlog.a:
59         (cd jlog && make libjlog.a)
60
61 serf/.libs/libserf-0.a:
62         (cd serf && \
63                 env \
64                 CFLAGS="$(CFLAGS)" \
65                 LDFLAGS="$(LDFLAGS)" \
66                 python serfmake build --with-apr=@APRPREFIX@)
67
68 serf/.libs/libserf-0.o: serf/.libs/libserf-0.a
69         ld -r -o serf/.libs/libserf-0.o \
70                 serf/.libs/context.o serf/buckets/.libs/*.o
71
72 noitd:  make-subdirs $(NOIT_OBJS)
73         @$(CC) -o $@ $(NOIT_OBJS) \
74                 udns/libudns.o \
75                 $(LDFLAGS) \
76                 $(WHOLE_ARCHIVE) \
77                 -Leventer -leventer \
78                 -Lutils -lnoit_utils \
79                 -Ljlog -ljlog \
80                 -Lnoitedit -lnoitedit \
81                 $(NOWHOLE_ARCHIVE) \
82                 $(LIBS)
83         @echo "- linking $@"
84
85 stratcond:      make-subdirs $(STRATCON_OBJS)
86         @$(CC) -o $@ $(STRATCON_OBJS) \
87                 udns/libudns.o \
88                 $(LDFLAGS) \
89                 $(WHOLE_ARCHIVE) \
90                 -Leventer -leventer \
91                 -Lutils -lnoit_utils \
92                 -Ljlog -ljlog \
93                 -Lnoitedit -lnoitedit \
94                 $(NOWHOLE_ARCHIVE) \
95                 $(LIBS) $(PGLIBS)
96         @echo "- linking $@"
97
98 stratcon_datastore.o:   stratcon_datastore.c
99         @$(CC) $(CPPFLAGS) $(PGCFLAGS) -c $<
100         @echo "- compiling $<"
101
102 .c.o:
103         @$(CC) $(CPPFLAGS) $(CFLAGS) -c $<
104         @echo "- compiling $<"
105
106 noit_module.o:  module-online.h
107
108 module-online.h:        modules/module-online.xsl
109         @echo "- making module-online.h (StyleSheet include)"
110         @$(XML2H) helpStyleXML < modules/module-online.xsl > $@
111
112 noit_tokenizer.c:       noit_tokenizer.re
113         @re2c -o $@ noit_tokenizer.re
114         @echo "- re2c noit_tokenizer.re"
115
116 test-noit.conf: noit.conf.in
117         sed -e "s^%sysconfdir%^`pwd`^g;" \
118                 -e "s^%modulesdir%^`pwd`/modules^g;" \
119                 -e "s^%modulesluadir%^`pwd`/modules-lua^g;" \
120                 -e "s^%PKIPREFIX%^`pwd`/../test/test-^g;" < \
121                 noit.conf.in > \
122                 test-noit.conf
123
124 noit.conf:      noit.conf.in
125         sed -e "s^%sysconfdir%^$(sysconfdir)^g;" \
126                 -e "s^%modulesdir%^$(MODULES_DIR)^g;" \
127                 -e "s^%modulesluadir%^$(MODULES_DIR)^g;" \
128                 -e "s^%PKIPREFIX%^$${PKIPREFIX}^g;" < \
129                 noit.conf.in > \
130                 noit.conf
131
132 install:        all
133         $(top_srcdir)/buildtools/mkinstalldirs $(DESTDIR)$(bindir)
134         $(INSTALL) -m 0755 scripts/noittrap $(DESTDIR)$(bindir)/noittrap
135         $(top_srcdir)/buildtools/mkinstalldirs $(DESTDIR)$(sbindir)
136         $(INSTALL) -m 0755 noitd $(DESTDIR)$(sbindir)/noitd
137         $(INSTALL) -m 0755 stratcond $(DESTDIR)$(sbindir)/stratcond
138         $(top_srcdir)/buildtools/mkinstalldirs $(DESTDIR)$(sysconfdir)
139         $(INSTALL) -m 0644 stratcon.conf $(DESTDIR)$(sysconfdir)/stratcon.conf.sample
140         $(INSTALL) -m 0644 noit.conf $(DESTDIR)$(sysconfdir)/noit.conf.sample
141         (cd man && make install DESTDIR=$(DESTDIR))
142         (cd modules && make install DESTDIR=$(DESTDIR))
143         (cd modules-lua && make install DESTDIR=$(DESTDIR))
144
145 clean-subdirs:
146         for dir in $(SUBS) ; do \
147                 (cd $$dir && make clean) ; \
148         done
149
150 clean:  clean-subdirs
151         rm -f *.o noitd
152
Note: See TracBrowser for help on using the browser.