showlog: Don't show INITIAL/CURRENT state for uninteresting objects
[nagios-reports-module.git] / Makefile
blobfef909a534c768b9f8495e580e58d08b965fbc17
1 CC = gcc
2 CFLAGS = $(OPTFLAGS) -Wall -ggdb3
3 OPTFLAGS = -O2
4 LDFLAGS = -O2 -ggdb3
5 SQL_LDFLAGS = -L/usr/lib/mysql -L/usr/lib64/mysql -lmysqlclient
6 TESTLDFLAGS = -ldl -rdynamic -Wl,-export-dynamic
7 COMMON_OBJS = state.o mm.o hash.o cfgfile.o utils.o
8 DSO_OBJS = $(COMMON_OBJS) module.o hooks.o logging.o sql.o
9 DSO_LDFLAGS = -shared $(SQL_LDFLAGS) -fPIC -ggdb3
10 TEST_OBJS = test_utils.o
11 APP_OBJS = $(COMMON_OBJS) $(TEST_OBJS) lparse.o logutils.o
12 IMPORT_OBJS = import.o $(APP_OBJS) hooks.o sql.o logging.o
13 SHOWLOG_OBJS = showlog.o $(APP_OBJS) auth.o
14 DEPS = Makefile module.h cfgfile.h utils.h
15 DSO = ndbneb.so
16 TESTPROG = nebtest
17 CONFIG_FILE = db.conf
18 DESTDIR = /tmp/ndbneb
19 ALL_CFLAGS = $(CPPFLAGS) $(CFLAGS) -fPIC
21 ifndef V
22 QUIET_CC = @echo ' ' CC $@;
23 QUIET_LINK = @echo ' ' LINK $@;
24 endif
26 all: $(DSO) $(TESTPROG) import showlog test__lparse
28 install: all
29 @echo "Installing to $(DESTDIR)"
30 @test -d $(DESTDIR) || mkdir -m 755 -p $(DESTDIR)
31 @cp -a scripts import showlog $(DSO) $(TESTPROG) $(DESTDIR)
32 @cp -a db.conf $(DESTDIR)/ndbneb.conf
33 @cp -a *.php $(DESTDIR)
34 @chmod 755 $(DESTDIR)/*
35 @chmod 644 $(DESTDIR)/ndbneb.conf $(DESTDIR)/scripts/*
37 test__lparse: test-lparse
38 @./test-lparse
40 test-lparse: test-lparse.o lparse.o logutils.o hash.o
41 $(QUIET_LINK)$(CC) $(LDFLAGS) $^ -o $@
43 $(DSO): $(DSO_OBJS)
44 $(QUIET_LINK)$(CC) $(LDFLAGS) $(DSO_LDFLAGS) $^ -o $@
46 $(TESTPROG): $(TESTPROG).o $(TEST_OBJS)
47 $(QUIET_LINK)$(CC) $(LDFLAGS) $(TESTLDFLAGS) $^ -o $@
49 showlog: $(SHOWLOG_OBJS)
50 $(QUIET_LINK)$(CC) $(LDFLAGS) $^ -o $@
52 import: $(IMPORT_OBJS)
53 $(QUIET_LINK)$(CC) $(LDFLAGS) $(SQL_LDFLAGS) $^ -o $@
55 test: mod $(TESTPROG) $(CONFIG_FILE)
56 ./$(TESTPROG) -f $(CONFIG_FILE) $(DSO)
58 mod: $(DSO)
60 %.o: %.c
61 $(QUIET_CC)$(CC) -o $*.o -c $(ALL_CFLAGS) $<
63 %.so: %.c
64 @echo "CC $@"
65 @$(CC) $(ALL_CFLAGS) $^ -o $@
67 clean:
68 rm -f core core.* *.{o,so,out,log}
69 rm -f $(TESTPROG) import showlog test-lparse
71 #'^[^.%][A-Za-z0-9_]*:'
72 help:
73 @echo Available make targets:
74 @echo -----------------------
75 @$(MAKE) --print-data-base --question | sed -n -e '/^Makefile/d' -e 's/^\([A-Za-z0-9_]*\):.*/\1/p'
77 ## PHONY targets
78 .PHONY: clean help
80 # dependencies
81 $(TESTPROG).o: $(TESTPROG).c $(DEPS)
82 test-lparse.o: test-lparse.c logutils.h
83 showlog.o: lparse.h logutils.h showlog.c Makefile
84 logutils.o: logutils.h Makefile
85 lparse.o: lparse.c lparse.h Makefile
86 import.o: lparse.h import.c hooks.h sql.h logging.h Makefile logutils.h
87 logging.o: logging.c logging.h $(DEPS)
88 cfgfile.o: cfgfile.c cfgfile.h
89 sql.o: sql.c sql.h $(DEPS)
90 hash.o: hash.c hash.h
91 hooks.o: hooks.c sql.h hooks.h $(DEPS)
92 module.o: module.c hooks.h $(DEPS)
93 utils.o: utils.c utils.h