Subversion Repositories Tewi

Rev

Rev 217 | Rev 244 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 nishi 1
# $Id: Makefile 240 2024-10-03 05:54:55Z nishi $
2
 
3
PWD = `pwd`
4
PLATFORM = generic
240 nishi 5
PLATFORM_IDENT = NOT_WINDOWS
4 nishi 6
PREFIX = /usr/local
182 nishi 7
MODULE = ./Module
2 nishi 8
 
25 nishi 9
include Platform/$(PLATFORM).mk
10
 
2 nishi 11
FLAGS = PWD=$(PWD) PLATFORM=$(PLATFORM) PREFIX=$(PREFIX)
12
 
156 nishi 13
.PHONY: all format clean ./Server ./Common ./Module get-version
2 nishi 14
 
197 nishi 15
all: ./Server $(MODULE)
2 nishi 16
 
146 nishi 17
./Tool/option: ./Tool/option.c config.h
128 nishi 18
	cc -o $@ ./Tool/option.c
2 nishi 19
 
146 nishi 20
./Tool/genconf: ./Tool/genconf.c config.h
128 nishi 21
	cc -o $@ ./Tool/genconf.c
43 nishi 22
 
146 nishi 23
./Tool/itworks: ./Tool/itworks.c config.h
130 nishi 24
	cc -o $@ ./Tool/itworks.c
25
 
197 nishi 26
./Server:: ./Common ./Tool/option ./Tool/genconf ./Tool/itworks
240 nishi 27
	$(MAKE) -C $@ $(FLAGS) EXTOBJS="`./Tool/option objs ../`" EXTLIBS="`./Tool/option libs ../ $(PLATFORM_IDENT)`" EXTCFLAGS="`./Tool/option cflags ../`" EXTLDFLAGS="`./Tool/option ldflags ../`"
128 nishi 28
 
17 nishi 29
./Module:: ./Common
30
	$(MAKE) -C $@ $(FLAGS)
31
 
2 nishi 32
./Common::
33
	$(MAKE) -C $@ $(FLAGS)
34
 
156 nishi 35
./README: ./README.tmpl ./Server/tw_version.h
217 nishi 36
	sed "s/@VERSION@/`grep "define TW_VERSION" Server/tw_version.h | grep -Eo '"[^\]+' | sed 's/^"//g'`/g" ./README.tmpl > $@
152 nishi 37
 
128 nishi 38
install: all ./Tool/genconf ./Tool/itworks
171 nishi 39
	mkdir -p $(DESTDIR)$(PREFIX)/bin $(DESTDIR)$(PREFIX)/lib/tewi $(DESTDIR)$(PREFIX)/etc $(DESTDIR)$(PREFIX)/www
170 nishi 40
	if [ ! -e $(DESTDIR)$(PREFIX)/etc/tewi.conf ]; then ( ./Tool/genconf $(PREFIX) lib/tewi so > $(DESTDIR)$(PREFIX)/etc/tewi.conf || ( rm $(DESTDIR)$(PREFIX)/etc/tewi.conf ; exit 1 ) ) ; fi
41
	if [ ! -e $(DESTDIR)$(PREFIX)/www/index.html ]; then ( ./Tool/itworks > $(DESTDIR)$(PREFIX)/www/index.html || ( rm $(DESTDIR)$(PREFIX)/www/index.html ; exit 1 ) ) ; fi
42
	if [ ! -e $(DESTDIR)$(PREFIX)/www/pbtewi.gif ]; then ( cp Binary/pbtewi.gif $(DESTDIR)$(PREFIX)/www/ || ( rm $(DESTDIR)$(PREFIX)/www/pbtewi.gif ; exit 1 ) ) ; fi
184 nishi 43
	-cp ./Server/tewi $(DESTDIR)$(PREFIX)/bin/
44
	-cp ./Module/*.so $(DESTDIR)$(PREFIX)/lib/tewi/
121 nishi 45
 
2 nishi 46
format:
129 nishi 47
	clang-format --verbose -i `find ./Server ./Common ./Module ./Tool "(" -name "*.c" -or -name "*.h" ")" -and -not -name "strptime.*"` config.h
2 nishi 48
 
53 nishi 49
get-version:
217 nishi 50
	@grep "define TW_VERSION" Server/tw_version.h | grep -Eo '"[^\]+' | sed 's/^"//g'
53 nishi 51
 
2 nishi 52
clean:
53
	$(MAKE) -C ./Server $(FLAGS) clean
17 nishi 54
	$(MAKE) -C ./Module $(FLAGS) clean
2 nishi 55
	$(MAKE) -C ./Common $(FLAGS) clean
181 nishi 56
	rm -f ./Tool/option ./Tool/genconf ./Tool/itworks