[2] | 1 | # $Id: Makefile 396 2024-10-28 00:01:38Z nishi $
|
---|
| 2 |
|
---|
| 3 | PWD = `pwd`
|
---|
| 4 | PLATFORM = generic
|
---|
[240] | 5 | PLATFORM_IDENT = NOT_WINDOWS
|
---|
[4] | 6 | PREFIX = /usr/local
|
---|
[182] | 7 | MODULE = ./Module
|
---|
[244] | 8 | OBJ = o
|
---|
[2] | 9 |
|
---|
[25] | 10 | include Platform/$(PLATFORM).mk
|
---|
| 11 |
|
---|
[2] | 12 | FLAGS = PWD=$(PWD) PLATFORM=$(PLATFORM) PREFIX=$(PREFIX)
|
---|
| 13 |
|
---|
[386] | 14 | .PHONY: all prepare-config format clean ./Server ./Common ./Module get-version src-archive
|
---|
[2] | 15 |
|
---|
[197] | 16 | all: ./Server $(MODULE)
|
---|
[2] | 17 |
|
---|
[386] | 18 | prepare-config:
|
---|
| 19 | if [ '!' -e config.h ]; then cp config.h.tmpl config.h ; fi
|
---|
| 20 |
|
---|
[358] | 21 | src-archive: clean
|
---|
| 22 | @svn cleanup --remove-unversioned
|
---|
| 23 | cp -rf . /tmp/tewi-`grep "define TW_VERSION" Server/tw_version.h | grep -Eom 1 '"[^\]+' | sed 's/^"//g'`
|
---|
| 24 | 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'`
|
---|
[396] | 25 | rm -rf /tmp/tewi-*
|
---|
[358] | 26 | mv /tmp/tewi-`grep "define TW_VERSION" Server/tw_version.h | grep -Eom 1 '"[^\]+' | sed 's/^"//g'`.tar.gz ./
|
---|
| 27 |
|
---|
[386] | 28 | ./Tool/option: ./Tool/option.c config.h prepare-config
|
---|
[128] | 29 | cc -o $@ ./Tool/option.c
|
---|
[2] | 30 |
|
---|
[386] | 31 | ./Tool/genconf: ./Tool/genconf.c config.h prepare-config
|
---|
[128] | 32 | cc -o $@ ./Tool/genconf.c
|
---|
[43] | 33 |
|
---|
[386] | 34 | ./Tool/itworks: ./Tool/itworks.c config.h prepare-config
|
---|
[130] | 35 | cc -o $@ ./Tool/itworks.c
|
---|
| 36 |
|
---|
[386] | 37 | ./Server:: ./Common ./Tool/option ./Tool/genconf ./Tool/itworks prepare-config
|
---|
[244] | 38 | $(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)`"
|
---|
[128] | 39 |
|
---|
[386] | 40 | ./Module:: ./Common prepare-config
|
---|
[17] | 41 | $(MAKE) -C $@ $(FLAGS)
|
---|
| 42 |
|
---|
[386] | 43 | ./Common:: prepare-config
|
---|
[2] | 44 | $(MAKE) -C $@ $(FLAGS)
|
---|
| 45 |
|
---|
[156] | 46 | ./README: ./README.tmpl ./Server/tw_version.h
|
---|
[387] | 47 | sed "s/@VERSION@/`grep "define TW_VERSION" Server/tw_version.h | grep -Eom 1 '"[^\]+' | sed 's/^"//g'`/g" ./README.tmpl > $@
|
---|
[152] | 48 |
|
---|
[128] | 49 | install: all ./Tool/genconf ./Tool/itworks
|
---|
[387] | 50 | -mkdir -p $(DESTDIR)$(PREFIX)/bin $(DESTDIR)$(PREFIX)/lib/tewi $(DESTDIR)$(PREFIX)/etc $(DESTDIR)$(PREFIX)/www
|
---|
[386] | 51 | 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
|
---|
[271] | 52 | cp mime.types $(DESTDIR)$(PREFIX)/
|
---|
[386] | 53 | if [ '!' -e $(DESTDIR)$(PREFIX)/www/index.html ]; then ( ./Tool/itworks > $(DESTDIR)$(PREFIX)/www/index.html || ( rm $(DESTDIR)$(PREFIX)/www/index.html ; exit 1 ) ) ; fi
|
---|
| 54 | 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] | 55 | -cp ./Server/tewi $(DESTDIR)$(PREFIX)/bin/
|
---|
[312] | 56 | -cp ./Server/tewi.exe $(DESTDIR)$(PREFIX)/bin/
|
---|
[315] | 57 | -cp ./Server/tewi.nlm $(DESTDIR)$(PREFIX)/bin/
|
---|
[184] | 58 | -cp ./Module/*.so $(DESTDIR)$(PREFIX)/lib/tewi/
|
---|
[312] | 59 | -cp ./Module/*.dll $(DESTDIR)$(PREFIX)/lib/tewi/
|
---|
[315] | 60 | -cp ./Module/*.nlm $(DESTDIR)$(PREFIX)/lib/tewi/
|
---|
[121] | 61 |
|
---|
[2] | 62 | format:
|
---|
[129] | 63 | clang-format --verbose -i `find ./Server ./Common ./Module ./Tool "(" -name "*.c" -or -name "*.h" ")" -and -not -name "strptime.*"` config.h
|
---|
[2] | 64 |
|
---|
[53] | 65 | get-version:
|
---|
[251] | 66 | @grep "define TW_VERSION" Server/tw_version.h | grep -Eom 1 '"[^\]+' | sed 's/^"//g'
|
---|
[53] | 67 |
|
---|
[2] | 68 | clean:
|
---|
| 69 | $(MAKE) -C ./Server $(FLAGS) clean
|
---|
[17] | 70 | $(MAKE) -C ./Module $(FLAGS) clean
|
---|
[2] | 71 | $(MAKE) -C ./Common $(FLAGS) clean
|
---|
[181] | 72 | rm -f ./Tool/option ./Tool/genconf ./Tool/itworks
|
---|