1 | #!/bin/bash
|
---|
2 | set -eu
|
---|
3 |
|
---|
4 |
|
---|
5 | ## Constants
|
---|
6 | #
|
---|
7 | AUTOCONF_VER="2.69"
|
---|
8 | AUTOMAKE_VER="1.16.1"
|
---|
9 | LIBTOOL_VER="2.4.2"
|
---|
10 | M4_VER="1.4.18"
|
---|
11 |
|
---|
12 | ## Environment
|
---|
13 | #
|
---|
14 | export PATH="${ISSM_DIR}/externalpackages/autotools/install/bin:$PATH"
|
---|
15 |
|
---|
16 | # Cleanup
|
---|
17 | rm -rf install src
|
---|
18 | mkdir install
|
---|
19 |
|
---|
20 | # Install m4
|
---|
21 | echo " === INSTALLING M4 =="
|
---|
22 | ${ISSM_DIR}/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/m4-${M4_VER}.tar.gz" "m4-${M4_VER}.tar.gz"
|
---|
23 | tar -zxvf m4-${M4_VER}.tar.gz
|
---|
24 | mv m4-${M4_VER} src
|
---|
25 | cd src
|
---|
26 |
|
---|
27 | ## Fixes required by glibc-2.28
|
---|
28 | #
|
---|
29 | # Source: http://www.linuxfromscratch.org/lfs/view/development/chapter06/m4.html
|
---|
30 | #
|
---|
31 | sed -i 's/IO_ftrylockfile/IO_EOF_SEEN/' lib/*.c
|
---|
32 | echo "#define _IO_IN_BACKUP 0x100" >> lib/stdio-impl.h
|
---|
33 |
|
---|
34 | ./configure --prefix="${ISSM_DIR}/externalpackages/autotools/install"
|
---|
35 | if [ $# -eq 0 ]; then
|
---|
36 | make
|
---|
37 | make install
|
---|
38 | else
|
---|
39 | make -j $1
|
---|
40 | make -j $1 install
|
---|
41 | fi
|
---|
42 | cd ..
|
---|
43 |
|
---|
44 | # Install Autoconf
|
---|
45 | echo " === INSTALLING AUTOCONF =="
|
---|
46 | rm -rf src
|
---|
47 | ${ISSM_DIR}/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/autoconf-${AUTOCONF_VER}.tar.gz" "autoconf-${AUTOCONF_VER}.tar.gz"
|
---|
48 | tar -zxvf autoconf-${AUTOCONF_VER}.tar.gz
|
---|
49 | mv autoconf-${AUTOCONF_VER} src
|
---|
50 | cd src
|
---|
51 | ./configure --prefix="${ISSM_DIR}/externalpackages/autotools/install"
|
---|
52 | if [ $# -eq 0 ]; then
|
---|
53 | make
|
---|
54 | make install
|
---|
55 | else
|
---|
56 | make -j $1
|
---|
57 | make -j $1 install
|
---|
58 | fi
|
---|
59 | cd ..
|
---|
60 |
|
---|
61 | # Install Automake
|
---|
62 | echo " === INSTALLING AUTOMAKE =="
|
---|
63 | rm -rf src
|
---|
64 | ${ISSM_DIR}/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/automake-${AUTOMAKE_VER}.tar.gz" "automake-${AUTOMAKE_VER}.tar.gz"
|
---|
65 | tar -zxvf automake-${AUTOMAKE_VER}.tar.gz
|
---|
66 | mv automake-${AUTOMAKE_VER} src
|
---|
67 | cd src
|
---|
68 | ./configure --prefix="${ISSM_DIR}/externalpackages/autotools/install"
|
---|
69 | if [ $# -eq 0 ]; then
|
---|
70 | make
|
---|
71 | make install
|
---|
72 | else
|
---|
73 | make -j $1
|
---|
74 | make -j $1 install
|
---|
75 | fi
|
---|
76 | cd ..
|
---|
77 |
|
---|
78 | # Install libtool
|
---|
79 | echo " === INSTALLING LIBTOOL =="
|
---|
80 | rm -rf src
|
---|
81 | ${ISSM_DIR}/scripts/DownloadExternalPackage.sh "https://issm.ess.uci.edu/files/externalpackages/libtool-${LIBTOOL_VER}.tar.gz" "libtool-${LIBTOOL_VER}.tar.gz"
|
---|
82 | tar -zxvf libtool-${LIBTOOL_VER}.tar.gz
|
---|
83 | rm libtool-${LIBTOOL_VER}.tar.gz
|
---|
84 | mv libtool-${LIBTOOL_VER} src
|
---|
85 | cd src
|
---|
86 | ./configure --prefix="${ISSM_DIR}/externalpackages/autotools/install"
|
---|
87 | if [ $# -eq 0 ]; then
|
---|
88 | make
|
---|
89 | make install
|
---|
90 | else
|
---|
91 | make -j $1
|
---|
92 | make -j $1 install
|
---|
93 | fi
|
---|
94 | cd ..
|
---|