4 # TODO : document the role of this Makefile
8 BUILDRESULT=~/fusionforge_repo
10 HTMLPURIFIER_VERSION=4.1.1
12 VER=$(shell LANG=C grep '>software_version' gforge/common/include/FusionForge.class.php | cut -d\' -f2)
13 in_svn_repo:= $(wildcard .svn/)
14 ifeq ($(strip $(in_svn_repo)),)
19 ID=$(shell LANG=C svnversion)
20 URL=$(shell LANG=C svn info | grep 'Root:' | awk '{print $$3}')
21 TAG=$(shell LANG=C svn log $(URL) -r $(ID) -l 1 2>/dev/null | awk '{ if ($$1=="Tag-Release") print $$1}')
30 @echo ======================================================================================
31 @echo '= Available target are listed below ='
32 @echo '= Today only to build rpm packages and tarballs ='
33 @echo ======================================================================================
34 @cat Makefile.rh | grep '^.*:.*#$$' | sed 's/^\(.*:\).*#\(.*\)#$$/\1 \2/'
36 all: fusionforge externals dist
38 externals : htmlpurifier php-jpgraph
43 sh tools/rpmdev-setuptree
44 echo '%_tmppath %{_topdir}/TMP' >> ~/.rpmmacros
45 echo '%_buildroot %{_tmppath}/%{name}-root' >> ~/.rpmmacros
46 echo '%_sysconfdir /etc' >> ~/.rpmmacros
50 -mkdir -p $(BUILDRESULT)
51 cp $(RPM_TMP)/SRPMS/*.rpm $(BUILDRESULT)
52 cp $(RPM_TMP)/RPMS/noarch/*.rpm $(BUILDRESULT)
53 createrepo $(BUILDRESULT)
55 clean: # Clean files of fusionforge build #
56 cd $(RPM_TMP)/SOURCES/; rm -rf fusionforge-$(version).tar.bz2 fusionforge-$(version)
58 fusionforge: rpmprep # Build rpm fusionforge packages #
59 cd gforge; find . -type f -or -type l | grep -v '/.svn/' | grep -v '/debian/' | cpio -pdumB --quiet $(RPM_TMP)/SOURCES/fusionforge-$(version)
60 cd $(RPM_TMP)/SOURCES/fusionforge-$(version)/; utils/manage-translations.sh build
61 rm -f $(RPM_TMP)/SOURCES/fusionforge-$(version)/utils/fusionforge-shell-postgresql.spec
62 cd $(RPM_TMP)/SOURCES/; cp fusionforge-$(version)/rpm-specific/patches/* .
63 cd $(RPM_TMP)/SOURCES/; tar cjf fusionforge-$(version).tar.bz2 fusionforge-$(version)
64 sed -e 's/@@VERSION@@/$(version)/g' < gforge/fusionforge.spec > $(RPM_TMP)/TMP/fusionforge.spec
65 rpmbuild -bb $(RPM_TMP)/TMP/fusionforge.spec
68 # Building RPM for external components
70 htmlpurifier: rpmprep depot/htmlpurifier-$(HTMLPURIFIER_VERSION).tar.gz
71 cp depot/htmlpurifier-$(HTMLPURIFIER_VERSION).tar.gz $(RPM_TMP)/SOURCES/
72 rpmbuild --quiet --clean -ba 3rd-party/htmlpurifier/htmlpurifier.spec
75 cp 3rd-party/php-jpgraph/libphp-jpgraph_1.5.2.orig.tar.gz $(RPM_TMP)/SOURCES/jpgraph-1.5.2.tar.gz
76 zcat 3rd-party/php-jpgraph/libphp-jpgraph_1.5.2-12.diff.gz > $(RPM_TMP)/SOURCES/libphp-jpgraph_1.5.2-12.diff
77 cp 3rd-party/php-jpgraph/*.patch $(RPM_TMP)/SOURCES/
78 rpmbuild --quiet --clean -ba 3rd-party/php-jpgraph/php-jpgraph.spec
80 depot/htmlpurifier-$(HTMLPURIFIER_VERSION).tar.gz: rpmprep
82 cd depot; wget -q -N http://htmlpurifier.org/releases/htmlpurifier-$(HTMLPURIFIER_VERSION).tar.gz