-
Notifications
You must be signed in to change notification settings - Fork 25
/
get_source.sh
93 lines (81 loc) · 3.16 KB
/
get_source.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
#!/bin/bash
# ===========================================================================
# (c) Copyright IBM Corp. 2017, 2022 All Rights Reserved
# ===========================================================================
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation.
#
# IBM designates this particular file as subject to the "Classpath" exception
# as provided by IBM in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, see <http://www.gnu.org/licenses/>.
#
# ===========================================================================
#
# exit immediately if any unexpected error occurs
set -e
usage() {
echo "Usage: $0 [-h|--help] [... other j9 options] [-parallel=<true|false>] [--openssl-version=<openssl version to download>]"
echo "where:"
echo " -h|--help print this help, then exit"
echo " "
echo " -openj9-repo the OpenJ9 repository url: https://github.com/eclipse-openj9/openj9.git"
echo " or [email protected]:<namespace>/openj9.git"
echo " -openj9-branch the OpenJ9 git branch: master"
echo " -openj9-sha a commit SHA for the OpenJ9 repository"
echo " -openj9-reference a local repo to use as a clone reference"
echo " -omr-repo the OpenJ9/omr repository url: https://github.com/eclipse-openj9/openj9-omr.git"
echo " or [email protected]:<namespace>/openj9-omr.git"
echo " -omr-branch the OpenJ9/omr git branch: openj9"
echo " -omr-sha a commit SHA for the omr repository"
echo " -omr-reference a local repo to use as a clone reference"
echo " -parallel (boolean) if 'true' then the clone j9 repository commands run in parallel, default is false"
echo " --openssl-repo Specify the OpenSSL repository to download from"
echo " --openssl-version Specify the version of OpenSSL source to download"
echo ""
exit 1
}
j9options=""
openssloptions=""
DOWNLOAD_OPENSSL=false
for i in "$@" ; do
case $i in
-h | --help )
usage
;;
-openj9-repo=* | -openj9-branch=* | -openj9-sha=* | -openj9-reference=* | -omr-repo=* | -omr-branch=* | -omr-sha=* | -omr-reference=* | -parallel=* )
j9options="${j9options} ${i}"
;;
--openssl-repo=* )
openssloptions="${openssloptions} ${i}"
;;
--openssl-version=* )
DOWNLOAD_OPENSSL=true
openssloptions="${openssloptions} ${i}"
;;
'--' ) # no more options
break
;;
-*) # bad option
usage
;;
*) # bad option
usage
;;
esac
done
# Get clones of OpenJ9 absent repositories
bash closed/get_j9_source.sh ${j9options}
# Download source of OpenSSL if asked
if $DOWNLOAD_OPENSSL; then
bash closed/get_openssl_source.sh ${openssloptions}
fi