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