root/src/Makefile.in

Revision 4790fc84757a210ff4aed6895cac2729f4a3e497, 5.3 kB (checked in by Theo Schlossnagle <jesus@omniti.com>, 4 years ago)

Cleanup and make sure Solaris Sun Studio compilers get -mt and POSIX thread semantics or things will go very wrong, refs #34

  • 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 noitedit man stomp
35 MODDIR=modules
36
37 NOIT_OBJS=noitd.o noit_listener.o \
38         noit_console.o noit_console_state.o noit_console_telnet.o \
39         noit_console_complete.o \
40         noit_check.o noit_check_log.o noit_check_tools.o \
41         noit_module.o noit_conf.o noit_conf_checks.o noit_tokenizer.o \
42         noit_capabilities_listener.o noit_xml.o \
43         noit_jlog_listener.o noit_livestream_listener.o noit_filters.o \
44         noit_http.o noit_rest.o noit_check_rest.o noit_filters_rest.o
45
46 STRATCON_OBJS=stratcond.o noit_listener.o \
47         noit_console.o noit_console_state.o noit_console_telnet.o \
48         noit_console_complete.o noit_xml.o \
49         noit_conf.o noit_http.o noit_rest.o noit_tokenizer.o \
50         noit_capabilities_listener.o \
51         stratcon_realtime_http.o \
52         stratcon_jlog_streamer.o stratcon_datastore.o \
53         stratcon_iep.o
54
55 all:    noitd stratcond noit.conf test-noit.conf stratcon.conf test-stratcon.conf
56
57 make-subdirs:   jlog/libjlog.a
58         @for dir in $(SUBS) ; do \
59                 echo "- building $$dir bits" ; \
60                 (cd $$dir && make -s) ; \
61         done
62
63 make-modules:
64         @for dir in $(MODDIR) ; do \
65                 echo "- building $$dir bits" ; \
66                 (cd $$dir && make -s) ; \
67         done
68
69 java-bits:
70         @echo "- building java bits"
71         @test -n "@JAVAPARTS@" && (cd java && make -s)
72
73 jlog/libjlog.a:
74         @(cd jlog && make libjlog.a)
75
76 noitd:  make-subdirs make-modules $(NOIT_OBJS)
77         @$(CC) -o $@ $(NOIT_OBJS) \
78                 udns/libudns.o \
79                 $(LDFLAGS) \
80                 $(WHOLE_ARCHIVE) \
81                 -Leventer -leventer \
82                 -Lutils -lnoit_utils \
83                 -Ljlog -ljlog \
84                 -Lnoitedit -lnoitedit \
85                 $(NOWHOLE_ARCHIVE) \
86                 $(LIBS)
87         @echo "- linking $@"
88
89 stratcond:      make-subdirs $(STRATCON_OBJS) java-bits
90         @$(CC) -o $@ $(STRATCON_OBJS) \
91                 udns/libudns.o \
92                 $(LDFLAGS) \
93                 $(WHOLE_ARCHIVE) \
94                 -Leventer -leventer \
95                 -Lutils -lnoit_utils \
96                 -Ljlog -ljlog \
97                 -Lnoitedit -lnoitedit \
98                 -Lstomp -lstomp \
99                 $(NOWHOLE_ARCHIVE) \
100                 $(LIBS) $(PGLIBS) @APRLIBS@
101         @echo "- linking $@"
102
103 stratcon_datastore.o:   stratcon_datastore.c
104         @$(CC) $(CPPFLAGS) $(PGCFLAGS) -c $<
105         @echo "- compiling $<"
106
107 stratcon_iep.o: stratcon_iep.c
108         @$(CC) $(CPPFLAGS) $(CFLAGS) @APRCFLAGS@ -c $<
109         @echo "- compiling $<"
110
111 .c.o:
112         @$(CC) $(CPPFLAGS) $(CFLAGS) -c $<
113         @echo "- compiling $<"
114
115 noit_module.o:  module-online.h
116
117 module-online.h:        modules/module-online.xsl
118         @echo "- making module-online.h (StyleSheet include)"
119         @$(XML2H) helpStyleXML < modules/module-online.xsl > $@
120
121 noit_tokenizer.c:       noit_tokenizer.re
122         @re2c -o $@ noit_tokenizer.re
123         @echo "- re2c noit_tokenizer.re"
124
125 test-noit.conf: noit.conf.in Makefile
126         sed -e "s^%sysconfdir%^`pwd`^g;" \
127                 -e "s^%modulesdir%^`pwd`/modules^g;" \
128                 -e "s^%modulesluadir%^`pwd`/modules-lua^g;" \
129                 -e "s^%PKIPREFIX%^../test/test-^g;" < \
130                 noit.conf.in > \
131                 test-noit.conf
132
133 noit.conf:      noit.conf.in Makefile
134         sed -e "s^%sysconfdir%^$(sysconfdir)^g;" \
135                 -e "s^%modulesdir%^$(MODULES_DIR)^g;" \
136                 -e "s^%modulesluadir%^$(MODULES_DIR)^g;" \
137                 -e "s^%PKIPREFIX%^$${PKIPREFIX}^g;" < \
138                 noit.conf.in > \
139                 noit.conf
140
141 test-stratcon.conf:     stratcon.conf.in Makefile
142         sed -e "s^%sysconfdir%^`pwd`^g;" \
143                 -e "s^%modulesdir%^`pwd`/modules^g;" \
144                 -e "s^%modulesluadir%^`pwd`/modules-lua^g;" \
145                 -e "s^%iepbindir%^`pwd`/java^g;" \
146                 -e "s^%iepdbdir%^`pwd`/java^g;" \
147                 -e "s^%PKIPREFIX%^../test/test-^g;" < \
148                 stratcon.conf.in > \
149                 test-stratcon.conf
150
151 stratcon.conf:  stratcon.conf.in Makefile
152         sed -e "s^%sysconfdir%^$(sysconfdir)^g;" \
153                 -e "s^%modulesdir%^$(MODULES_DIR)^g;" \
154                 -e "s^%modulesluadir%^$(MODULES_DIR)^g;" \
155                 -e "s^%iepbindir%^$(bindir)^g;" \
156                 -e "s^%iepdbdir%^$(prefix)/var/db^g;" \
157                 -e "s^%PKIPREFIX%^$${PKIPREFIX}^g;" < \
158                 stratcon.conf.in > \
159                 stratcon.conf
160
161 install-dirs:
162         $(top_srcdir)/buildtools/mkinstalldirs $(DESTDIR)$(bindir)
163         $(top_srcdir)/buildtools/mkinstalldirs $(DESTDIR)$(sbindir)
164         $(top_srcdir)/buildtools/mkinstalldirs $(DESTDIR)$(sysconfdir)
165
166 install-noitd:  noitd noit.conf
167         $(INSTALL) -m 0755 scripts/noittrap $(DESTDIR)$(bindir)/noittrap
168         $(INSTALL) -m 0755 noitd $(DESTDIR)$(sbindir)/noitd
169         $(INSTALL) -m 0644 noit.conf $(DESTDIR)$(sysconfdir)/noit.conf.sample
170         $(INSTALL) -m 0644 default-ca-chain.crt $(DESTDIR)$(sysconfdir)/default-ca-chain.crt
171         (cd modules && make install DESTDIR=$(DESTDIR))
172         (cd modules-lua && make install DESTDIR=$(DESTDIR))
173
174 install-stratcond:      install-dirs stratcond stratcon.conf java-bits
175         $(INSTALL) -m 0755 stratcond $(DESTDIR)$(sbindir)/stratcond
176         $(INSTALL) -m 0644 stratcon.conf $(DESTDIR)$(sysconfdir)/stratcon.conf.sample
177         test -n "@JAVAPARTS@" && (cd @JAVAPARTS@ && make install DESTDIR=$(DESTDIR))
178
179 install-docs:
180         (cd man && make install DESTDIR=$(DESTDIR))
181
182 install:        install-dirs install-docs install-noitd install-stratcond
183
184 clean-subdirs:
185         for dir in $(SUBS) ; do \
186                 (cd $$dir && make clean) ; \
187         done
188         (cd java && make clean)
189
190 clean:  clean-subdirs
191         rm -f *.o noitd
192         rm jlog/libjlog.a
193         (cd jlog && make clean)
194
Note: See TracBrowser for help on using the browser.