/[tewi]/Makefile
ViewVC logotype

Annotation of /Makefile

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1 - (hide annotations)
Thu Oct 17 09:53:38 2024 UTC (4 weeks ago) by nishi
Branch: MAIN
update

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

nishi@chaotic.ninja
ViewVC Help
Powered by ViewVC 1.3.0-dev