source: Main/trunk/Makefile@ 128

Last change on this file since 128 was 128, checked in by Nishi, on Sep 23, 2024 at 7:19:19 PM

release 1.04

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