Lp 1808580: Remove Installation Support for Ubuntu 14.04
[opensrf-equinox.git] / src / extras / Makefile.install
index 50b3cc1..4ffae87 100644 (file)
@@ -4,17 +4,19 @@
 #
 # Makefile to install prerequisites for OpenSRF
 #
-# Currently supports Debian (squeeze), Ubuntu (lucid/precise)
-# and Fedora (16).
+# Currently supports Debian (jessie/stretch) and Ubuntu
+# (xenial/bionic)
 #
 # Installs Perl prereqs, libjs with Perl wrapper
 #
 # usage:
-#      make -f Makefile.install debian-squeeze
+#      make -f Makefile.install debian-stretch
 #      - or -
-#      make -f Makefile.install ubuntu-lucid
+#      make -f Makefile.install debian-jessie
 #      - or -
-#      make -f Makefile.install ubuntu-precise
+#      make -f Makefile.install ubuntu-xenial
+#   - or -
+#   make -f Makefile.install ubuntu-bionic
 #      - or -
 #      make -f Makefile.install fedora
 #
@@ -30,8 +32,6 @@ APT_TOOL=apt-get -yq
 
 # Debian dependencies
 DEBS =  \
-       apache2-mpm-prefork\
-       apache2-prefork-dev\
        autoconf\
        automake\
        build-essential\
@@ -52,12 +52,12 @@ DEBS =  \
        libgcrypt11-dev \
        libgdbm-dev \
        liblog-log4perl-perl\
+       libmemcached-dev \
+       libmemcached-tools \
        libmodule-build-perl\
        libnet-dns-perl\
-       libnet-jabber-perl\
        libperl-dev\
        libreadline-dev\
-       librpc-xml-perl\
        libtemplate-perl\
        libtest-pod-perl\
        libtie-ixhash-perl\
@@ -72,11 +72,18 @@ DEBS =  \
        libxslt1-dev\
        memcached\
        pkg-config\
+       python-coverage\
        psmisc\
        python-dev\
        python-libxml2\
+       python-memcache\
+       python-nose\
+       python-pyxmpp\
        python-setuptools\
+       python-simplejson\
        tar\
+       unzip\
+       zip\
        zlib1g-dev
 
 FEDORAS = \
@@ -95,6 +102,8 @@ FEDORAS = \
        libmemcached \
        libmemcached-devel \
        libtool \
+       libxml-libxml-perl \
+       libxml-libxslt-perl \
        libxml2-devel \
        libxml2-python \
        libxslt-devel \
@@ -117,9 +126,7 @@ FEDORAS = \
        perl-Log-Log4perl \
        perl-Module-Build \
        perl-Net-DNS \
-       perl-Net-Jabber \
        perl-Net-Server \
-       perl-RPC-XML \
        perl-SQL-Abstract-Limit \
        perl-Template-Toolkit \
        perl-Test-Deep \
@@ -148,22 +155,25 @@ EXTRA_DEBS = \
        libjson-xs-perl \
        libnet-server-perl
 
-EXTRA_DEBS_SQUEEZE = \
-       libmemcached-dev \
-       libmemcached-tools \
-       libxml-libxml-perl \
-       libxml-libxslt-perl
+EXTRA_DEBS_JESSIE = \
+       apache2-mpm-prefork \
+       apache2-prefork-dev \
+       libncurses5-dev
 
-EXTRA_DEBS_UBUNTU_LUCID = \
-       libmemcached-dev\
-       libxml-libxml-perl \
-       libxml-libxslt-perl
+EXTRA_DEBS_DEBIAN_STRETCH = \
+       apache2 \
+       apache2-dev \
+       libncurses5-dev
 
-EXTRA_DEBS_UBUNTU_PRECISE = \
-       libmemcached-dev\
-       libxml-libxml-perl \
-       libxml-libxslt-perl \
-       ncurses-dev
+EXTRA_DEBS_UBUNTU_XENIAL = \
+       apache2 \
+       apache2-dev \
+       libncurses5-dev
+
+EXTRA_DEBS_UBUNTU_BIONIC = \
+       apache2 \
+       apache2-dev \
+       libncurses5-dev
 
 # ----------------------------------------------------------------------------
 
@@ -171,17 +181,19 @@ all:
        @echo "please specify an OS" && exit 0
 
 
-debian-squeeze: generic_debian squeeze
-squeeze: install_extra_debs_squeeze
-generic_debian: install_debs debian_sys_config
+debian-stretch: generic_debian stretch apache_mpm_prefork_mods apache_perl_mod
+debian-jessie: generic_debian jessie apache_mpm_prefork_mods
+stretch: install_extra_debs install_extra_debs_stretch debian_sys_config
+jessie: install_extra_debs_jessie debian_sys_config
+generic_debian: install_debs
 
 fedora: install_fedora_rpms
 
-ubuntu-lucid: generic_ubuntu lucid
-ubuntu-precise: generic_ubuntu precise
-lucid: install_extra_debs install_extra_debs_lucid
-precise: install_extra_debs install_extra_debs_precise
-generic_ubuntu: install_debs debian_sys_config
+ubuntu-xenial: generic_ubuntu xenial apache_mpm_prefork_mods apache_perl_mod
+ubuntu-bionic: generic_ubuntu bionic apache_mpm_prefork_mods apache_perl_mod
+xenial: install_extra_debs install_extra_debs_xenial debian_sys_config
+bionic: install_extra_debs install_extra_debs_bionic debian_sys_config
+generic_ubuntu: install_debs
 
 # ------------------------------------------------------------------
 # - DEBIAN ---------------------------------------------------------
@@ -190,12 +202,6 @@ debian_sys_config:
        # link the apache modules in
        for m in $(DEB_APACHE_MODS); do a2enmod $$m; done;
 
-       # adds a placeholder module so apxs will be happy
-       if [ ! "$$(grep mod_placeholder /etc/apache2/httpd.conf)" ]; then \
-               echo -e "#\n#LoadModule mod_placeholder /usr/lib/apache2/modules/mod_placeholder.so" \
-                       >> /etc/apache2/httpd.conf; \
-       fi;
-
 # Install the debian-specific dependencies
 install_debs:
        $(APT_TOOL) install $(DEBS)
@@ -204,15 +210,29 @@ install_debs:
 install_extra_debs:
        $(APT_TOOL) install $(EXTRA_DEBS)
 
-install_extra_debs_squeeze: install_extra_debs
-       $(APT_TOOL) install $(EXTRA_DEBS_SQUEEZE)
+install_extra_debs_stretch:
+       $(APT_TOOL) install $(EXTRA_DEBS_DEBIAN_STRETCH)
+
+install_extra_debs_jessie: install_extra_debs
+       $(APT_TOOL) install $(EXTRA_DEBS_JESSIE)
 
 # Install even more packaged dependencies on modern distros
-install_extra_debs_lucid:
-       $(APT_TOOL) install $(EXTRA_DEBS_UBUNTU_LUCID)
+install_extra_debs_xenial:
+       $(APT_TOOL) install $(EXTRA_DEBS_UBUNTU_XENIAL)
+
+install_extra_debs_bionic:
+       $(APT_TOOL) install $(EXTRA_DEBS_UBUNTU_BIONIC)
+
+
+# Some OSes activate the Apache mpm_event module by default.
+# OpenSRF requires prefork.
+apache_mpm_prefork_mods:
+       a2dismod mpm_event
+       a2enmod mpm_prefork
 
-install_extra_debs_precise:
-       $(APT_TOOL) install $(EXTRA_DEBS_UBUNTU_PRECISE)
+# Need to activate mod_perl on some O/S.
+apache_perl_mod:
+       a2enmod perl
 
 # Fedora
 install_fedora_rpms: