source: Main/trunk/Makefile@ 170

Last change on this file since 170 was 170, checked in by Nishi, on Sep 27, 2024 at 5:28:06 AM

better makefile

  • Property svn:keywords set to Id
File size: 2.0 KB
RevLine 
[2]1# $Id: Makefile 170 2024-09-26 20:28:06Z nishi $
2
3PWD = `pwd`
4PLATFORM = generic
[4]5PREFIX = /usr/local
[2]6
[25]7include Platform/$(PLATFORM).mk
8
[2]9FLAGS = PWD=$(PWD) PLATFORM=$(PLATFORM) PREFIX=$(PREFIX)
10
[156]11.PHONY: all format clean ./Server ./Common ./Module get-version
[2]12
[157]13all: ./Server ./Module ./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
[156]33./README: ./README.tmpl ./Server/tw_version.h
[152]34 sed "s/@VERSION@/`grep "define TW_VERSION" Server/tw_version.h | grep -Eo '"[^\]+' | sed -E 's/^"//g'`/g" ./README.tmpl > $@
35
[128]36install: all ./Tool/genconf ./Tool/itworks
[170]37 mkdir -p $(DESTDIR)$(PREFIX)/bin $(DESTDIR)$(PREFIX)/lib/tewi $(DESTDIR)$(PREFIX)/etc $(PREFIX)/www
38 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
39 if [ ! -e $(DESTDIR)$(PREFIX)/www/index.html ]; then ( ./Tool/itworks > $(DESTDIR)$(PREFIX)/www/index.html || ( rm $(DESTDIR)$(PREFIX)/www/index.html ; exit 1 ) ) ; fi
40 if [ ! -e $(DESTDIR)$(PREFIX)/www/pbtewi.gif ]; then ( cp Binary/pbtewi.gif $(DESTDIR)$(PREFIX)/www/ || ( rm $(DESTDIR)$(PREFIX)/www/pbtewi.gif ; exit 1 ) ) ; fi
41 cp ./Server/tewi $(DESTDIR)$(PREFIX)/bin/
42 cp ./Module/*.so $(DESTDIR)$(PREFIX)/lib/tewi/
[121]43
[2]44format:
[129]45 clang-format --verbose -i `find ./Server ./Common ./Module ./Tool "(" -name "*.c" -or -name "*.h" ")" -and -not -name "strptime.*"` config.h
[2]46
[53]47get-version:
48 @grep "define TW_VERSION" Server/tw_version.h | grep -Eo '"[^\]+' | sed -E 's/^"//g'
49
[2]50clean:
51 $(MAKE) -C ./Server $(FLAGS) clean
[17]52 $(MAKE) -C ./Module $(FLAGS) clean
[2]53 $(MAKE) -C ./Common $(FLAGS) clean
[128]54 rm -f ./Tool/option ./Tool/genconf
Note: See TracBrowser for help on using the repository browser.