[Opensrf-commits] r1547 - branches/rel_1_0/src/extras

svn at svn.open-ils.org svn at svn.open-ils.org
Fri Dec 19 16:57:01 EST 2008


Author: dbs
Date: 2008-12-19 16:56:56 -0500 (Fri, 19 Dec 2008)
New Revision: 1547

Modified:
   branches/rel_1_0/src/extras/Makefile.install
Log:
Backport prerequisites Makefile from trunk; enables us to use more system
packages on recent versions of Debian and Ubuntu


Modified: branches/rel_1_0/src/extras/Makefile.install
===================================================================
--- branches/rel_1_0/src/extras/Makefile.install	2008-12-19 21:55:28 UTC (rev 1546)
+++ branches/rel_1_0/src/extras/Makefile.install	2008-12-19 21:56:56 UTC (rev 1547)
@@ -3,15 +3,21 @@
 #
 # Makefile to install prerequisites for OpenSRF
 #
-# Currently supports Debian (etch), Ubuntu (gutsy), and Gentoo.
+# Currently supports Debian (etch/lenny), Ubuntu (gutsy/hardy/intrepid), and Gentoo.
 # Working towards support of CentOS 5 / RHEL 5.
 # Installs Perl prereqs, libjs with Perl wrapper
 #
 # usage:
-# 	make -f Makefile.install debian
+# 	make -f Makefile.install debian-etch
 # 	- or -
-# 	make -f Makefile.install ubuntu
+# 	make -f Makefile.install debian-lenny
 # 	- or -
+# 	make -f Makefile.install ubuntu-gutsy
+# 	- or -
+# 	make -f Makefile.install ubuntu-hardy
+# 	- or -
+# 	make -f Makefile.install ubuntu-intrepid
+# 	- or -
 # 	make -f Makefile.install centos
 # 	- or -
 # 	make -f Makefile.install rhel
@@ -38,8 +44,9 @@
 
 # ejabberd is not packaged on CentOS/RHEL, so we have to
 # download the installable package from the source
-EJABBERD_VER=2.0.1
-EJABBERD_PKG=ejabberd-2.0.1_2-linux-x86-installer.bin
+EJABBERD_VER=2.0.2
+EJABBERD_PKG=ejabberd-2.0.2_2-linux-x86-installer.bin
+EJABBERD_PKG_x64=ejabberd-2.0.2_2-linux-x86_64-installer.bin
 EJABBERD_HOST=http://www.process-one.net/downloads/ejabberd
 
 # libmemcache is not packaged on CentOS/RHEL
@@ -73,6 +80,8 @@
 	libexpat1-dev\
 	libfile-find-rule-perl\
 	libfreezethaw-perl\
+	libgcrypt-dev \
+	libgdbm-dev \
 	liblog-log4perl-perl\
 	libmemcache-dev\
 	libmodule-build-perl\
@@ -163,7 +172,7 @@
 	net-fs/nfs-utils\
 	dev-libs/apr\
 	dev-perl/Cache-Memcached\
-    dev-perl/DBI\
+	dev-perl/DBI\
 	dev-perl/Log-Log4perl\
 	dev-perl/Unix-Syslog\
 	dev-perl/XML-LibXML\
@@ -186,21 +195,30 @@
 	UNIVERSAL::require
 
 DEB_APACHE_MODS = \
-	expires\
-	include\
-	proxy\
-	proxy_http\
-	rewrite\
 	ssl
- 
 
-# generic CPAN modules
+EXTRA_DEBS = \
+	libdatetime-format-iso8601-perl \
+	libjson-xs-perl \
+	libnet-server-perl
+
+# generic CPAN modules:
+#   * DateTime::Format::ISO8601 is packaged by both Debian Lenny and Ubuntu Intrepid
+#   * JSON::XS is packaged by both Debian Lenny and Ubuntu Intrepid
+#   * libnet-server-perl 0.97 is packaged on Debian Lenny and Ubuntu Intrepid
+#     - is there a specific need for 0.90?
 CPAN_MODULES = \
 	DateTime::Format::ISO8601 \
 	RHANDOM/Net-Server-0.90.tar.gz \
-	JSON::XS \
-	XML::LibXML::XPathContext
+	JSON::XS
 
+#   libxml-libxml-perl on Debian Lenny and Ubuntu Intrepid is 1.66, which
+#   has broken namespace handling. so we still need to install these from
+#   CPAN. *sigh*
+CPAN_MODULES_XML = \
+	XML::LibXML \
+	XML::LibXSLT
+
 # generic CPAN modules to force
 CPAN_MODULES_FORCE = \
 	TMTM/Class-DBI-0.96.tar.gz
@@ -211,27 +229,39 @@
 	@echo "please specify an OS" && exit 0
 
 
-# these should be the same for any distro
-install: install_cpan
-
 centos: install_centos_rpms install_ejabberd install_libmemcache install install_libxml2 install_libxslt install_centos_perl create_ld_local
 
-debian: install_debs install debian_sys_config
+debian-etch: generic_debian etch
+debian-lenny: generic_debian lenny
+etch: install_cpan
+lenny: install_extra_debs
+generic_debian: install_debs install_cpan_force install_cpan_xml debian_sys_config
 
 gentoo: install_gentoos install_gentoo_rc install_gentoo_perl install
 
 rhel: centos
 
-ubuntu: install_debs install debian_sys_config
+ubuntu-gutsy: generic_ubuntu hardy 
+ubuntu-hardy: generic_ubuntu hardy
+ubuntu-intrepid: generic_ubuntu intrepid
+hardy: install_cpan
+intrepid: install_extra_debs
+generic_ubuntu: generic_debian
 
-
 # - COMMON TARGETS ---------------------------------------------------------
 
 # Install the CPAN modules
 install_cpan: 
 	for m in $(CPAN_MODULES); do perl -MCPAN -e "install \"$$m\";"; done
+
+# Install CPAN modules that need to be forced
+install_cpan_force: 
 	for m in $(CPAN_MODULES_FORCE); do perl -MCPAN -e "CPAN::Shell->force(qw#install $$m#);"; done
 
+# Install the CPAN XML modules
+install_cpan_xml: 
+	for m in $(CPAN_MODULES_XML); do perl -MCPAN -e "install \"$$m\";"; done
+
 # Install ejabberd from official project installer binary
 install_ejabberd:    
 	if [ ! -f $(EJABBERD_PKG).gz ]; then wget $(EJABBERD_HOST)/$(EJABBERD_VER)/$(EJABBERD_PKG).gz; fi;
@@ -281,6 +311,10 @@
 install_debs:
 	$(APT_TOOL) install $(DEBS)
 
+# Install the debian-specific dependencies for more modern distros
+install_extra_debs:
+	$(APT_TOOL) install $(EXTRA_DEBS)
+
 # ------------------------------------------------------------------
 # - GENTOO ---------------------------------------------------------
 



More information about the opensrf-commits mailing list