root/src/Makefile.in

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

fixes #72

  • 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_check.o noit_check_log.o noit_check_tools.o \
39         noit_module.o noit_conf.o noit_conf_checks.o noit_tokenizer.o \
40         noit_jlog_listener.o noit_livestream_listener.o noit_filters.o
41
42 STRATCON_OBJS=stratcond.o noit_listener.o \
43         noit_console.o noit_console_state.o noit_console_telnet.o \
44         noit_conf.o noit_http.o noit_tokenizer.o \
45         stratcon_realtime_http.o \
46         stratcon_jlog_streamer.o stratcon_datastore.o
47
48 all:    noitd stratcond noit.conf test-noit.conf
49
50 make-subdirs:   serf/.libs/libserf-0.o jlog/libjlog.a
51         for dir in $(SUBS) ; do \
52                 (cd $$dir && make) ; \
53         done
54
55 jlog/libjlog.a:
56         (cd jlog && make libjlog.a)
57
58 serf/.libs/libserf-0.a:
59         (cd serf && \
60                 env \
61                 CFLAGS="$(CFLAGS)" \
62                 LDFLAGS="$(LDFLAGS)" \
63                 python serfmake --with-apr=@APRPREFIX@)
64
65 serf/.libs/libserf-0.o: serf/.libs/libserf-0.a
66         ld -r -o serf/.libs/libserf-0.o \
67                 serf/.libs/context.o serf/buckets/.libs/*.o
68
69 noitd:  make-subdirs $(NOIT_OBJS)
70         @$(CC) -o $@ $(NOIT_OBJS) \
71                 udns/libudns.o \
72                 $(LDFLAGS) \
73                 $(WHOLE_ARCHIVE) \
74                 -Leventer -leventer \
75                 -Lutils -lnoit_utils \
76                 -Ljlog -ljlog \
77                 -Lnoitedit -lnoitedit \
78                 $(NOWHOLE_ARCHIVE) \
79                 $(LIBS)
80         @echo "- linking $@"
81
82 stratcond:      make-subdirs $(STRATCON_OBJS)
83         @$(CC) -o $@ $(STRATCON_OBJS) \
84                 udns/libudns.o \
85                 $(LDFLAGS) \
86                 $(WHOLE_ARCHIVE) \
87                 -Leventer -leventer \
88                 -Lutils -lnoit_utils \
89                 -Ljlog -ljlog \
90                 -Lnoitedit -lnoitedit \
91                 $(NOWHOLE_ARCHIVE) \
92                 $(LIBS) $(PGLIBS)
93         @echo "- linking $@"
94
95 stratcon_datastore.o:   stratcon_datastore.c
96         @$(CC) $(CPPFLAGS) $(PGCFLAGS) -c $<
97         @echo "- compiling $<"
98
99 .c.o:
100         @$(CC) $(CPPFLAGS) $(CFLAGS) -c $<
101         @echo "- compiling $<"
102
103 noit_module.o:  module-online.h
104
105 module-online.h:        modules/module-online.xsl
106         @echo "- making module-online.h (StyleSheet include)"
107         @$(XML2H) helpStyleXML < modules/module-online.xsl > $@
108
109 noit_tokenizer.c:       noit_tokenizer.re
110         @re2c -o $@ noit_tokenizer.re
111         @echo "- re2c $<"
112
113 test-noit.conf: noit.conf.in
114         sed -e "s^%sysconfdir%^`pwd`^g;" \
115                 -e "s^%modulesdir%^`pwd`/modules^g;" \
116                 -e "s^%modulesluadir%^`pwd`/modules-lua^g;" \
117                 -e "s^%PKIPREFIX%^`pwd`/../test/test-^g;" < \
118                 noit.conf.in > \
119                 test-noit.conf
120
121 noit.conf:      noit.conf.in
122         sed -e "s^%sysconfdir%^$(sysconfdir)^g;" \
123                 -e "s^%modulesdir%^$(MODULES_DIR)^g;" \
124                 -e "s^%modulesluadir%^$(MODULES_DIR)^g;" \
125                 -e "s^%PKIPREFIX%^$${PKIPREFIX}^g;" < \
126                 noit.conf.in > \
127                 noit.conf
128
129 install:        all
130         $(top_srcdir)/buildtools/mkinstalldirs $(DESTDIR)$(sbindir)
131         $(INSTALL) -m 0755 noitd $(DESTDIR)$(sbindir)/noitd
132         $(INSTALL) -m 0755 stratcond $(DESTDIR)$(sbindir)/stratcond
133         $(top_srcdir)/buildtools/mkinstalldirs $(DESTDIR)$(sysconfdir)
134         $(INSTALL) -m 0644 stratcon.conf $(DESTDIR)$(sysconfdir)/stratcon.conf.sample
135         $(INSTALL) -m 0644 noit.conf $(DESTDIR)$(sysconfdir)/noit.conf.sample
136         (cd man && make install DESTDIR=$(DESTDIR))
137         (cd modules && make install DESTDIR=$(DESTDIR))
138         (cd modules-lua && make install DESTDIR=$(DESTDIR))
139
140 clean-subdirs:
141         for dir in $(SUBS) ; do \
142                 (cd $$dir && make clean) ; \
143         done
144
145 clean:  clean-subdirs
146         rm -f *.o noitd
147
Note: See TracBrowser for help on using the browser.