1 # ---------------------------------------------------------------------
2 # Author: Bill Erickson <erickson@esilibrary.com>
3 # Author: Dan Scott <dscott@laurentian.ca>
5 # Makefile to install prerequisites for OpenSRF and Evergreen
7 # Currently supports Debian (stretch, jessie, wheezy),
8 # Ubuntu (14.04), Ubuntu (16.04).
10 # Installs Perl prereqs, libdbi, libdbi-drivers, and libyaz
13 # make -f Makefile.install debian-stretch
15 # make -f Makefile.install debian-jessie
17 # make -f Makefile.install debian-wheezy
19 # make -f Makefile.install ubuntu-trusty
21 # make -f Makefile.install ubuntu-xenial
23 # make -f Makefile.install fedora
25 # ---------------------------------------------------------------------
27 # variables shared by all installers
29 # Make any assumptions about the shell being used explicit
30 export SHELL=/bin/bash
32 export LIBNET_Z3950_SIMPLESERVER=Net-Z3950-SimpleServer-1.15
33 export LIBNET_Z3950_SIMPLESERVER_URL=http://ftp.indexdata.dk/pub/simpleserver/$(LIBNET_Z3950_SIMPLESERVER)
35 # The libdbi sources can be fetched from sourceforge.net. They are stored on
36 # the open-ils.org site now for ease of direct linking
37 export LIBDBI=libdbi-0.8.3
38 export LIBDBI_DRIVERS=libdbi-drivers-0.8.3
39 export LIBDBI_HOST=http://open-ils.org/~denials/evergreen
41 # some OSes require a newer version of NodeJS
42 # NOTE: Using the LTS binaries for NodeJS
43 export NODEJS_VERSION=v8.11.4
44 export NODEJS_BINDIR=node-$(NODEJS_VERSION)-linux-x64
45 export NODEJS_TARBIN=$(NODEJS_BINDIR).tar.xz
46 export NODEJS_BINARY="https://nodejs.org/dist/$(NODEJS_VERSION)/$(NODEJS_TARBIN)"
48 # As this Makefile is designed to be used by a make process running as
49 # root, this will avoid problems on some systems when tar extracts
50 # files and tries to give them the same UID/GID as they have in their
51 # archives, but those accounts don't exist on the local system.
53 # e.g, libdbi has files set 1000/1000. On most systems, there's a user
54 # and a group with these IDs, but there can be systems where nothing
55 # uses those IDs, and where tar fails with e.g. 'tar: libdbi-0.8.3:
56 # Cannot change ownership to uid 1000, gid 1000: Invalid argument'
58 export TAR_OPTIONS=--no-same-owner --no-same-permissions
60 # ----------------------------------------------------------------------------
62 # avoid hard-coding the path to related makefiles
63 DIR = $(dir $(lastword $(MAKEFILE_LIST)))/install
66 @echo "please specify an OS" && exit 0
68 @make -f $(DIR)/Makefile.debian-stretch
70 @make -f $(DIR)/Makefile.debian-jessie
72 @make -f $(DIR)/Makefile.debian-wheezy
74 @make -f $(DIR)/Makefile.ubuntu-xenial
76 @make -f $(DIR)/Makefile.ubuntu-trusty
78 @make -f $(DIR)/Makefile.fedora
80 postgres-server-debian-stretch:
81 @make -f $(DIR)/Makefile.debian-stretch install_postgres_server
82 postgres-server-debian-jessie:
83 @make -f $(DIR)/Makefile.debian-jessie install_postgres_server
84 postgres-server-debian-wheezy:
85 @make -f $(DIR)/Makefile.debian-wheezy install_postgres_server
86 postgres-server-ubuntu-xenial:
87 @make -f $(DIR)/Makefile.ubuntu-xenial install_postgres_server
88 postgres-server-ubuntu-trusty:
89 @make -f $(DIR)/Makefile.ubuntu-trusty install_postgres_server
90 postgres-server-fedora:
91 @make -f $(DIR)/Makefile.fedora install_postgres_server
93 ubuntu-xenial-developer:
94 @make -f $(DIR)/Makefile.ubuntu-xenial install_developer
95 ubuntu-trusty-developer:
96 @make -f $(DIR)/Makefile.ubuntu-trusty install_developer
97 debian-stretch-developer:
98 @make -f $(DIR)/Makefile.debian-stretch install_developer
99 debian-jessie-developer:
100 @make -f $(DIR)/Makefile.debian-jessie install_developer
101 debian-wheezy-developer:
102 @make -f $(DIR)/Makefile.debian-wheezy install_developer
104 ubuntu-xenial-translator:
105 @make -f $(DIR)/Makefile.ubuntu-xenial install_translator
106 ubuntu-trusty-translator:
107 @make -f $(DIR)/Makefile.ubuntu-trusty install_translator
108 debian-stretch-translator:
109 @make -f $(DIR)/Makefile.debian-stretch install_translator
110 debian-jessie-translator:
111 @make -f $(DIR)/Makefile.debian-jessie install_translator
112 debian-wheezy-translator:
113 @make -f $(DIR)/Makefile.debian-wheezy install_translator
115 ubuntu-xenial-packager:
116 @make -f $(DIR)/Makefile.ubuntu-xenial install_packager
117 ubuntu-trusty-packager:
118 @make -f $(DIR)/Makefile.ubuntu-trusty install_packager
119 debian-stretch-packager:
120 @make -f $(DIR)/Makefile.debian-stretch install_packager
121 debian-jessie-packager:
122 @make -f $(DIR)/Makefile.debian-jessie install_packager
123 debian-wheezy-packager:
124 @make -f $(DIR)/Makefile.debian-wheezy install_packager
126 # vim:noet:sw=4:ts=4: