3 CFLAGS
= $(OPTFLAGS
) -Wall
-ggdb3
-fPIC
5 DSOLDFLAGS
= -shared
$(SQL_LDFLAGS
) -fPIC
-ggdb3
6 SQL_LDFLAGS
= -L
/usr
/lib
/mysql
-L
/usr
/lib64
/mysql
-lmysqlclient
7 TESTLDFLAGS
= -ldl
-rdynamic
-Wl
,-export-dynamic
8 OBJS
= module.o hooks.o cfgfile.o logging.o sql.o utils.o hash.o mm.o
9 TEST_OBJS
= test_utils.o utils.o hash.o mm.o
10 DEPS
= Makefile module.h cfgfile.h utils.h
15 ALL_CFLAGS
= $(CPPFLAGS
) $(CFLAGS
)
18 QUIET_CC
= @echo
' ' CC
$@
;
19 QUIET_LINK
= @echo
' ' LINK
$@
;
22 all: $(DSO
) $(TESTPROG
) import showlog test__lparse
25 @echo
"Installing to $(DESTDIR)"
26 @
test -d
$(DESTDIR
) || mkdir
-m
755 -p
$(DESTDIR
)
27 @cp
-a scripts import
$(DSO
) $(TESTPROG
) $(DESTDIR
)
28 @cp
-a db.conf
$(DESTDIR
)/ndbneb.conf
29 @cp
-a
*.php
$(DESTDIR
)
30 @chmod
755 $(DESTDIR
)/*
31 @chmod
644 $(DESTDIR
)/ndbneb.conf
$(DESTDIR
)/scripts
/*
33 test__lparse
: test-lparse
36 test-lparse
: test-lparse.o lparse.o
37 $(QUIET_LINK
)$(CC
) $(TESTLDFLAGS
) $^
-o
$@
40 $(QUIET_LINK
)$(CC
) $(DSOLDFLAGS
) $^
-o
$@
42 $(TESTPROG
): $(TESTPROG
).o
$(TEST_OBJS
)
43 $(QUIET_LINK
)$(CC
) $(TESTLDFLAGS
) $^
-o
$@
45 showlog
: showlog.o
$(TEST_OBJS
) logging.o lparse.o
46 $(QUIET_LINK
)$(CC
) $(SQL_LDFLAGS
) -ggdb3
$^
-o
$@
48 import
: import.o
$(TEST_OBJS
) sql.o hooks.o logging.o lparse.o
49 $(QUIET_LINK
)$(CC
) $(SQL_LDFLAGS
) -ggdb3
$^
-o
$@
51 test: mod
$(TESTPROG
) $(CONFIG_FILE
)
52 .
/$(TESTPROG
) -f
$(CONFIG_FILE
) $(DSO
)
57 $(QUIET_CC
)$(CC
) -o
$*.o
-c
$(ALL_CFLAGS
) $<
61 @
$(CC
) $(CFLAGS
) $(DSOLDFLAGS
) $^
-o
$@
64 rm -f core core.
* *.
{o
,so
,out
,log
}
65 rm -f
$(TESTPROG
) import showlog test-lparse
67 #'^[^.%][A-Za-z0-9_]*:'
69 @echo Available make targets
:
70 @echo
-----------------------
71 @
$(MAKE
) --print-data-base
--question | sed
-n
-e
'/^Makefile/d' -e
's/^\([A-Za-z0-9_]*\):.*/\1/p'
77 $(TESTPROG
).o
: $(TESTPROG
).c
$(DEPS
)
78 lparse.o
: lparse.c lparse.h Makefile
79 import.o
: import.c hooks.h sql.h logging.h Makefile
80 logging.o
: logging.c logging.h
$(DEPS
)
81 cfgfile.o
: cfgfile.c cfgfile.h
82 sql.o
: sql.c sql.h
$(DEPS
)
84 hooks.o
: hooks.c sql.h hooks.h
$(DEPS
)
85 module.o
: module.c hooks.h
$(DEPS
)
86 utils.o
: utils.c utils.h