[29474] | 1 | systemlib := /usr/lib
|
---|
| 2 | java := $(systemlib)/jvm/default-java
|
---|
| 3 | systembin := /usr/bin
|
---|
| 4 | gssrv := /srv/gsdl
|
---|
| 5 | tomcatlib := /usr/share/tomcat7/lib
|
---|
| 6 | tomcatconf := /etc/tomcat7/Catalina/localhost
|
---|
| 7 | gstools := /opt/greenstone
|
---|
| 8 | DESTDIR ?= /
|
---|
[29471] | 9 |
|
---|
[29474] | 10 | all: build
|
---|
[29471] | 11 |
|
---|
[29474] | 12 | deb:
|
---|
| 13 | # generate .install files
|
---|
| 14 | rm -f debian/*.install
|
---|
| 15 | echo $(gssrv) >> debian/greenstone.install
|
---|
| 16 | echo $(tomcatlib) >> debian/greenstone.install
|
---|
| 17 | echo $(systemlib) >> debian/greenstone.install
|
---|
| 18 | echo $(tomcatconf) >> debian/greenstone.install
|
---|
| 19 | echo $(gstools) >> debian/greenstone-tools.install
|
---|
| 20 | echo $(systembin) >> debian/greenstone-tools.install
|
---|
| 21 | dpkg-buildpackage -rfakeroot
|
---|
| 22 |
|
---|
[29471] | 23 | svn:
|
---|
| 24 | @echo "Getting latest source"
|
---|
| 25 | svn co http://svn.greenstone.org/main/trunk/greenstone3 svn
|
---|
| 26 |
|
---|
| 27 | src: svn
|
---|
| 28 | $(eval svnver := $(shell cd svn && svnversion -c | grep -o '[[:digit:]:]*'))
|
---|
| 29 | $(eval srcver := $(shell if test -d src; then cd src && svnversion -c | grep -o '[[:digit:]:]*'; else echo "nope"; fi))
|
---|
| 30 | if test $(svnver) != $(srcver); then \
|
---|
[29474] | 31 | $(MAKE) clean ; \
|
---|
[29471] | 32 | echo "Making copy of source" ; \
|
---|
| 33 | cp -rT svn src ; \
|
---|
| 34 | fi
|
---|
| 35 |
|
---|
[29474] | 36 | clean:
|
---|
[29471] | 37 | @echo "Cleaning src directory"
|
---|
| 38 | rm -rf src
|
---|
[29474] | 39 | rm -f prepare build
|
---|
[29471] | 40 |
|
---|
| 41 | cleanall: clean
|
---|
| 42 | @echo "Cleaning svn directory"
|
---|
| 43 | rm -rf svn
|
---|
| 44 |
|
---|
| 45 | prepare: src
|
---|
| 46 | cp -L *.properties *.patch src/
|
---|
| 47 | cd src ; \
|
---|
| 48 | export JAVA_HOME=$(java) ; \
|
---|
| 49 | yes | ant prepare
|
---|
| 50 | patch -d src/ -p0 -N -i gs2build.patch || :
|
---|
| 51 | cd src/gs2build/build-src ; \
|
---|
| 52 | autoconf
|
---|
| 53 | rm -rf src/packages/*.zip
|
---|
| 54 | rm -rf src/packages/axis/docs
|
---|
| 55 | rm -rf src/gs2build/build-src/packages
|
---|
[29474] | 56 | touch prepare
|
---|
[29471] | 57 |
|
---|
| 58 | build: prepare
|
---|
| 59 | cd src ; \
|
---|
[29474] | 60 | JAVA_HOME=$(java) ant install
|
---|
[29471] | 61 | mv src/lib/jni/*.jar src/web/WEB-INF/lib/
|
---|
| 62 | # patch for gs2build tempdir
|
---|
| 63 | patch -d src/ -p0 -N -i perl-util.patch || :
|
---|
| 64 | # delete windows/mac stuff
|
---|
| 65 | find src/ -type d \( -iname "win32" -o -iname "windows" -o -iname "winutil" -o -iname "darwin" \) -exec rm -rf {} \; 2> /dev/null || :
|
---|
| 66 | find src/ \( -iname "*.dll" -o -iname "*.exe" \) -exec rm -rf {} \; || :
|
---|
[29474] | 67 | touch build
|
---|
[29471] | 68 |
|
---|
[29474] | 69 | install: install-main install-tools
|
---|
[29471] | 70 |
|
---|
[29474] | 71 | install-main: build
|
---|
| 72 | install -d $(DESTDIR)/$(gssrv) $(DESTDIR)/$(systemlib) $(DESTDIR)/$(tomcatlib)
|
---|
| 73 | install -dm775 $(DESTDIR)/$(tomcatlib)
|
---|
| 74 | install -Dm755 src/lib/jni/*.so $(DESTDIR)/$(systemlib)
|
---|
| 75 | rsync -a --info=STATS --exclude sites/localsite/collect/ --exclude .svn src/web/ $(DESTDIR)/$(gssrv)/
|
---|
| 76 | install -Dm644 greenstone3.xml $(DESTDIR)/$(tomcatconf)/greenstone3.xml
|
---|
| 77 | mv $(DESTDIR)/$(gssrv)/WEB-INF/lib/derby.jar $(DESTDIR)/$(tomcatlib)
|
---|
[29471] | 78 |
|
---|
[29474] | 79 | install-tools: build
|
---|
| 80 | install -d $(DESTDIR)/$(gstools)
|
---|
| 81 | rsync -a --info=STATS --exclude build-src --exclude common-src --exclude collect/demo --exclude .svn src/gs2build $(DESTDIR)/$(gstools)/
|
---|
| 82 | rsync -a --info=STATS --exclude build-src --exclude common-src --exclude collect/demo --exclude .svn src/bin $(DESTDIR)/$(gstools)/
|
---|
| 83 | install -Dm755 greenstone $(DESTDIR)/$(systembin)/greenstone
|
---|
[29471] | 84 |
|
---|
[29474] | 85 | .PHONY: svn clean cleanall install install-main install-tools
|
---|