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),
8 # Ubuntu (16.04), Ubuntu (18.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 ubuntu-xenial
19 # make -f Makefile.install ubuntu-bionic
21 # make -f Makefile.install fedora
23 # ---------------------------------------------------------------------
25 # variables shared by all installers
27 # Make any assumptions about the shell being used explicit
28 export SHELL=/bin/bash
30 export LIBNET_Z3950_SIMPLESERVER=Net-Z3950-SimpleServer-1.15
31 export LIBNET_Z3950_SIMPLESERVER_URL=http://ftp.indexdata.dk/pub/simpleserver/$(LIBNET_Z3950_SIMPLESERVER)
33 # The libdbi sources can be fetched from sourceforge.net. They are stored on
34 # the open-ils.org site now for ease of direct linking
35 export LIBDBI=libdbi-0.8.3
36 export LIBDBI_DRIVERS=libdbi-drivers-0.8.3
37 export LIBDBI_HOST=http://open-ils.org/~denials/evergreen
39 # some OSes require a newer version of NodeJS
40 # NOTE: Using the LTS binaries for NodeJS
41 export NODEJS_VERSION=v8.11.4
42 export NODEJS_BINDIR=node-$(NODEJS_VERSION)-linux-x64
43 export NODEJS_TARBIN=$(NODEJS_BINDIR).tar.xz
44 export NODEJS_BINARY="https://nodejs.org/dist/$(NODEJS_VERSION)/$(NODEJS_TARBIN)"
46 # As this Makefile is designed to be used by a make process running as
47 # root, this will avoid problems on some systems when tar extracts
48 # files and tries to give them the same UID/GID as they have in their
49 # archives, but those accounts don't exist on the local system.
51 # e.g, libdbi has files set 1000/1000. On most systems, there's a user
52 # and a group with these IDs, but there can be systems where nothing
53 # uses those IDs, and where tar fails with e.g. 'tar: libdbi-0.8.3:
54 # Cannot change ownership to uid 1000, gid 1000: Invalid argument'
56 export TAR_OPTIONS=--no-same-owner --no-same-permissions
58 # ----------------------------------------------------------------------------
60 # avoid hard-coding the path to related makefiles
61 DIR = $(dir $(lastword $(MAKEFILE_LIST)))/install
64 @echo "please specify an OS" && exit 0
66 @make -f $(DIR)/Makefile.debian-stretch
68 @make -f $(DIR)/Makefile.debian-jessie
70 @make -f $(DIR)/Makefile.ubuntu-bionic
72 @make -f $(DIR)/Makefile.ubuntu-xenial
74 @make -f $(DIR)/Makefile.fedora
76 postgres-server-debian-stretch:
77 @make -f $(DIR)/Makefile.debian-stretch install_postgres_server
78 postgres-server-debian-jessie:
79 @make -f $(DIR)/Makefile.debian-jessie install_postgres_server
80 postgres-server-ubuntu-bionic:
81 @make -f $(DIR)/Makefile.ubuntu-bionic install_postgres_server
82 postgres-server-ubuntu-xenial:
83 @make -f $(DIR)/Makefile.ubuntu-xenial install_postgres_server
84 postgres-server-fedora:
85 @make -f $(DIR)/Makefile.fedora install_postgres_server
87 ubuntu-bionic-developer:
88 @make -f $(DIR)/Makefile.ubuntu-bionic install_developer
89 ubuntu-xenial-developer:
90 @make -f $(DIR)/Makefile.ubuntu-xenial install_developer
91 debian-stretch-developer:
92 @make -f $(DIR)/Makefile.debian-stretch install_developer
93 debian-jessie-developer:
94 @make -f $(DIR)/Makefile.debian-jessie install_developer
96 ubuntu-bionic-translator:
97 @make -f $(DIR)/Makefile.ubuntu-bionic install_translator
98 ubuntu-xenial-translator:
99 @make -f $(DIR)/Makefile.ubuntu-xenial install_translator
100 debian-stretch-translator:
101 @make -f $(DIR)/Makefile.debian-stretch install_translator
102 debian-jessie-translator:
103 @make -f $(DIR)/Makefile.debian-jessie install_translator
105 ubuntu-bionic-packager:
106 @make -f $(DIR)/Makefile.ubuntu-bionic install_packager
107 ubuntu-xenial-packager:
108 @make -f $(DIR)/Makefile.ubuntu-xenial install_packager
109 debian-stretch-packager:
110 @make -f $(DIR)/Makefile.debian-stretch install_packager
111 debian-jessie-packager:
112 @make -f $(DIR)/Makefile.debian-jessie install_packager
114 # vim:noet:sw=4:ts=4: