1 |
nishi |
1.1 |
# $Id: Makefile 365 2024-10-17 00:49:22Z nishi $ |
2 |
|
|
|
3 |
|
|
PWD = `pwd` |
4 |
|
|
PLATFORM = generic |
5 |
|
|
PLATFORM_IDENT = NOT_WINDOWS |
6 |
|
|
PREFIX = /usr/local |
7 |
|
|
MODULE = ./Module |
8 |
|
|
OBJ = o |
9 |
|
|
|
10 |
|
|
include Platform/$(PLATFORM).mk |
11 |
|
|
|
12 |
|
|
FLAGS = PWD=$(PWD) PLATFORM=$(PLATFORM) PREFIX=$(PREFIX) |
13 |
|
|
|
14 |
|
|
.PHONY: all format clean ./Server ./Common ./Module get-version src-archive |
15 |
|
|
|
16 |
|
|
all: ./Server $(MODULE) |
17 |
|
|
|
18 |
|
|
src-archive: clean |
19 |
|
|
@svn cleanup --remove-unversioned |
20 |
|
|
cp -rf . /tmp/tewi-`grep "define TW_VERSION" Server/tw_version.h | grep -Eom 1 '"[^\]+' | sed 's/^"//g'` |
21 |
|
|
cd /tmp && tar --exclude .github -czvf tewi-`grep "define TW_VERSION" tewi-*/Server/tw_version.h | grep -Eom 1 '"[^\]+' | sed 's/^"//g'`.tar.gz tewi-`grep "define TW_VERSION" tewi-*/Server/tw_version.h | grep -Eom 1 '"[^\]+' | sed 's/^"//g'` |
22 |
|
|
mv /tmp/tewi-`grep "define TW_VERSION" Server/tw_version.h | grep -Eom 1 '"[^\]+' | sed 's/^"//g'`.tar.gz ./ |
23 |
|
|
|
24 |
|
|
./Tool/option: ./Tool/option.c config.h |
25 |
|
|
cc -o $@ ./Tool/option.c |
26 |
|
|
|
27 |
|
|
./Tool/genconf: ./Tool/genconf.c config.h |
28 |
|
|
cc -o $@ ./Tool/genconf.c |
29 |
|
|
|
30 |
|
|
./Tool/itworks: ./Tool/itworks.c config.h |
31 |
|
|
cc -o $@ ./Tool/itworks.c |
32 |
|
|
|
33 |
|
|
./Server:: ./Common ./Tool/option ./Tool/genconf ./Tool/itworks |
34 |
|
|
$(MAKE) -C $@ $(FLAGS) EXTOBJS="`./Tool/option objs ../ $(PLATFORM_IDENT) $(OBJ)`" EXTLIBS="`./Tool/option libs ../ $(PLATFORM_IDENT) $(OBJ)`" EXTCFLAGS="`./Tool/option cflags ../ $(PLATFORM_IDENT) $(OBJ)`" EXTLDFLAGS="`./Tool/option ldflags ../ $(PLATFORM_IDENT) $(OBJ)`" |
35 |
|
|
|
36 |
|
|
./Module:: ./Common |
37 |
|
|
$(MAKE) -C $@ $(FLAGS) |
38 |
|
|
|
39 |
|
|
./Common:: |
40 |
|
|
$(MAKE) -C $@ $(FLAGS) |
41 |
|
|
|
42 |
|
|
./README: ./README.tmpl ./Server/tw_version.h |
43 |
|
|
sed "s/@VERSION@/`grep "define TW_VERSION" Server/tw_version.h | grep -Eom 1 '"[^\]+' | sed 's/^"//g'`/g" ./README.tmpl > $@ |
44 |
|
|
|
45 |
|
|
install: all ./Tool/genconf ./Tool/itworks |
46 |
|
|
-mkdir -p $(DESTDIR)$(PREFIX)/bin $(DESTDIR)$(PREFIX)/lib/tewi $(DESTDIR)$(PREFIX)/etc $(DESTDIR)$(PREFIX)/www |
47 |
|
|
if [ ! -e $(DESTDIR)$(PREFIX)/etc/tewi.conf ]; then ( ./Tool/genconf $(PREFIX) lib/tewi `echo $(LIBSUF) | sed 's/\.//g'` > $(DESTDIR)$(PREFIX)/etc/tewi.conf || ( rm $(DESTDIR)$(PREFIX)/etc/tewi.conf ; exit 1 ) ) ; fi |
48 |
|
|
cp mime.types $(DESTDIR)$(PREFIX)/ |
49 |
|
|
if [ ! -e $(DESTDIR)$(PREFIX)/www/index.html ]; then ( ./Tool/itworks > $(DESTDIR)$(PREFIX)/www/index.html || ( rm $(DESTDIR)$(PREFIX)/www/index.html ; exit 1 ) ) ; fi |
50 |
|
|
if [ ! -e $(DESTDIR)$(PREFIX)/www/pbtewi.gif ]; then ( cp Binary/pbtewi.gif $(DESTDIR)$(PREFIX)/www/ || ( rm $(DESTDIR)$(PREFIX)/www/pbtewi.gif ; exit 1 ) ) ; fi |
51 |
|
|
-cp ./Server/tewi $(DESTDIR)$(PREFIX)/bin/ |
52 |
|
|
-cp ./Server/tewi.exe $(DESTDIR)$(PREFIX)/bin/ |
53 |
|
|
-cp ./Server/tewi.nlm $(DESTDIR)$(PREFIX)/bin/ |
54 |
|
|
-cp ./Module/*.so $(DESTDIR)$(PREFIX)/lib/tewi/ |
55 |
|
|
-cp ./Module/*.dll $(DESTDIR)$(PREFIX)/lib/tewi/ |
56 |
|
|
-cp ./Module/*.nlm $(DESTDIR)$(PREFIX)/lib/tewi/ |
57 |
|
|
|
58 |
|
|
format: |
59 |
|
|
clang-format --verbose -i `find ./Server ./Common ./Module ./Tool "(" -name "*.c" -or -name "*.h" ")" -and -not -name "strptime.*"` config.h |
60 |
|
|
|
61 |
|
|
get-version: |
62 |
|
|
@grep "define TW_VERSION" Server/tw_version.h | grep -Eom 1 '"[^\]+' | sed 's/^"//g' |
63 |
|
|
|
64 |
|
|
clean: |
65 |
|
|
$(MAKE) -C ./Server $(FLAGS) clean |
66 |
|
|
$(MAKE) -C ./Module $(FLAGS) clean |
67 |
|
|
$(MAKE) -C ./Common $(FLAGS) clean |
68 |
|
|
rm -f ./Tool/option ./Tool/genconf ./Tool/itworks |