Lp 1875544: Add Installation Support for Ubuntu 20.04 Focal Fossa
[Evergreen.git] / Open-ILS / src / extras / install / Makefile.ubuntu-focal
1 # install files for Ubuntu Bionic
2
3 DIR = $(dir $(lastword $(MAKEFILE_LIST)))
4
5 export DEB_PGSQL_COMMON_MODS = \
6         gcc \
7         libbusiness-isbn-perl \
8         libjson-xs-perl \
9         liblibrary-callnumber-lc-perl \
10         libmarc-record-perl \
11         librose-uri-perl \
12         libuuid-tiny-perl \
13         libxml-libxml-perl \
14         libxml-libxslt-perl
15
16 export DEBS = \
17         $(DEB_PGSQL_COMMON_MODS) \
18         apache2-dev\
19         aspell\
20         aspell-en\
21         libapache2-mod-perl2\
22         libbusiness-creditcard-perl\
23         libbusiness-isbn-data-perl\
24         libbusiness-issn-perl\
25         libbusiness-onlinepayment-authorizenet-perl\
26         libbusiness-onlinepayment-payflowpro-perl\
27         libbusiness-onlinepayment-perl\
28         libdate-manip-perl\
29         libdatetime-format-builder-perl\
30         libdatetime-format-iso8601-perl\
31         libdatetime-format-mail-perl\
32         libdatetime-perl\
33         libdatetime-set-perl\
34         libdatetime-timezone-perl\
35         libdbd-pg-perl\
36         libdbd-pgsql\
37         libdbi-dev\
38         libdbi1\
39         libemail-simple-perl\
40         libemail-mime-perl\
41         libexcel-writer-xlsx-perl\
42         libgd-graph3d-perl\
43         liblocale-maketext-lexicon-perl\
44         liblog-log4perl-perl\
45         libncurses5-dev\
46         libnet-ip-perl\
47         libnet-ldap-perl \
48         libnet-server-perl\
49         libnet-ssh2-perl\
50         libnet-z3950-simpleserver-perl\
51         libnet-z3950-zoom-perl \
52         libnspr4-dev\
53         libole-storage-lite-perl\
54         libparent-perl\
55         libpq5\
56         libpq-dev\
57         libpcre3-dev\
58         librpc-xml-perl\
59         libsru-perl\
60         libssh2-1-dev\
61         libtemplate-plugin-posix-perl\
62         libtest-warn-perl\
63         libtest-output-perl\
64         libtext-aspell-perl\
65         libtext-csv-perl\
66         libuniversal-require-perl\
67         libunix-syslog-perl\
68         libyaz-dev\
69         postgresql-client-9.6\
70         libsoap-lite-perl\
71         libbz2-dev\
72         libparse-recdescent-perl\
73         libhtml-defang-perl\
74         libconfig-general-perl\
75         yaz
76
77 export DEB_APACHE_MODS = \
78     expires\
79     include\
80     proxy\
81     proxy_http\
82     rewrite\
83     cgi\
84     perl
85
86 export DEB_APACHE_DISMODS = \
87     deflate
88
89 export DEB_APACHE_DISCONF = \
90     serve-cgi-bin
91
92 export CPAN_MODULES = \
93         Business::OnlinePayment::PayPal \
94         Email::Send \
95         MARC::Charset \
96         Net::Z3950::Simple2ZOOM \
97     Locale::Country
98
99 export CPAN_MODULES_FORCE = \
100         Business::Stripe \
101         Class::DBI::Frozen::301
102
103 export CPAN_MODULES_PGSQL = \
104         MARC::File::XML
105
106 PGSQL_APT_REPO_DEBS = \
107         wget \
108         ca-certificates
109
110 PGSQL_SERVER_DEBS_96 = \
111         $(DEB_PGSQL_COMMON_MODS) \
112         postgresql-9.6 \
113         postgresql-contrib-9.6 \
114         postgresql-plperl-9.6 \
115         postgresql-server-dev-9.6
116
117 PGSQL_SERVER_DEBS_10 = \
118         $(DEB_PGSQL_COMMON_MODS) \
119         postgresql-10 \
120         postgresql-contrib-10 \
121         postgresql-plperl-10 \
122         postgresql-server-dev-10
123
124 # note: some prereqs are repeated in the developer/packager 
125 # sections to support building Evergreen packages on servers
126 # where Evergreen and its prereqs are not installed.
127
128 DEVELOPER_DEBS = \
129         automake \
130         autoconf \
131         libtool \
132         chromium-browser \
133         firefox
134
135 PACKAGER_DEBS = \
136         asciidoc \
137         source-highlight \
138         zip \
139         unzip \
140         nsis
141
142 TRANSLATOR_DEBS = \
143         libtemplate-perl \
144         liblocale-maketext-lexicon-perl \
145         translate-toolkit \
146         python3-dev \
147         python3-levenshtein \
148         python3-polib \
149         python3-setuptools \
150         python3-simplejson \
151         python3-lxml \
152         bzr
153
154 all:
155         make -f $(DIR)/Makefile.debian DEBS="$(PGSQL_APT_REPO_DEBS)"
156         make -f $(DIR)/Makefile.debian debian_postgresql_repo
157         make -f $(DIR)/Makefile.debian install_debs
158         make -f $(DIR)/Makefile.common install_cpan
159         make -f $(DIR)/Makefile.common install_cpan_force
160         make -f $(DIR)/Makefile.common install_cpan_pgsql
161         make -f $(DIR)/Makefile.debian debian_sys_config
162
163 install_postgres_server:
164         make -f $(DIR)/Makefile.debian DEBS="$(PGSQL_APT_REPO_DEBS)"
165         make -f $(DIR)/Makefile.debian debian_postgresql_repo
166         make -f $(DIR)/Makefile.debian DEBS="$(PGSQL_SERVER_DEBS_96)"
167         make -f $(DIR)/Makefile.common install_cpan_pgsql
168
169 install_postgres_server_10:
170         make -f $(DIR)/Makefile.debian DEBS="$(PGSQL_APT_REPO_DEBS)"
171         make -f $(DIR)/Makefile.debian debian_postgresql_repo
172         make -f $(DIR)/Makefile.debian DEBS="$(PGSQL_SERVER_DEBS_10)"
173         make -f $(DIR)/Makefile.common install_cpan_pgsql
174
175 # note: if/when grunt-cli is available as a
176 # package, use the packaged version instead.
177 install_developer:
178         make -f $(DIR)/Makefile.debian DEBS="$(DEVELOPER_DEBS)"
179         make -f $(DIR)/Makefile.common install_nodejs_from_source
180
181 install_translator: install_developer
182         make -f $(DIR)/Makefile.debian DEBS="$(TRANSLATOR_DEBS)"
183
184 install_packager: install_developer install_translator
185         make -f $(DIR)/Makefile.debian DEBS="$(PACKAGER_DEBS)"
186
187 clean:
188         make -f $(DIR)/Makefile.common clean
189         make -f $(DIR)/Makefile.debian clean
190
191 # vim:noet:sw=4:ts=4: