Skip to content

Commit 2821f5a

Browse files
authored
Merge pull request #6629 from mwheinz/master
buildrpm.sh no longer respects the value of rpmtopdir
2 parents 5d2200a + 8562211 commit 2821f5a

File tree

2 files changed

+35
-17
lines changed

2 files changed

+35
-17
lines changed

contrib/dist/linux/README

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,9 @@ Please, do NOT set the same settings with parameters and config vars.
8686
file from the tarball specified on the command line. By default,
8787
the script will look for the specfile in the current directory.
8888

89+
-R directory
90+
Specifies the top level RPM build direcotry.
91+
8992
-h
9093
Prints script usage information.
9194

contrib/dist/linux/buildrpm.sh

Lines changed: 32 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,9 @@
5858
# file from the tarball specified on the command line. By default,
5959
# the script will look for the specfile in the current directory.
6060
#
61+
# -R directory
62+
# Specifies the top level RPM build direcotry.
63+
#
6164
# -h
6265
# Prints script usage information.
6366
#
@@ -107,7 +110,7 @@ orig_param="$@"
107110
#
108111
# usage information
109112
#
110-
usage="Usage: $0 [-b][-o][-m][-d][-u][-s][-h] [-n name][-f lf_location][-t tm_location] tarball
113+
usage="Usage: $0 [-b][-o][-m][-d][-u][-s][-h] [-n name][-f lf_location][-t tm_location][-R directory] tarball
111114
112115
-b
113116
build all-in-one binary RPM only (required for all other flags to work)
@@ -146,6 +149,9 @@ usage="Usage: $0 [-b][-o][-m][-d][-u][-s][-h] [-n name][-f lf_location][-t tm_lo
146149
-r parameter
147150
add custom RPM build parameter
148151
152+
-R directory
153+
Specifies the top level RPM build direcotry.
154+
149155
-h print this message and exit
150156
151157
tarball path to Open MPI source tarball
@@ -155,8 +161,9 @@ usage="Usage: $0 [-b][-o][-m][-d][-u][-s][-h] [-n name][-f lf_location][-t tm_lo
155161
# parse args
156162
#
157163
libfabric_path=""
164+
rpmtopdir=
158165

159-
while getopts bn:omif:t:dc:r:sh flag; do
166+
while getopts bn:omif:t:dc:r:sR:h flag; do
160167
case "$flag" in
161168
b) build_srpm="no"
162169
build_single="yes"
@@ -180,6 +187,8 @@ while getopts bn:omif:t:dc:r:sh flag; do
180187
;;
181188
r) configure_options="$rpmbuild_options $OPTARG"
182189
;;
190+
R) rpmtopdir="$OPTARG"
191+
;;
183192
s) unpack_spec="1"
184193
;;
185194
h) echo "$usage" 1>&2
@@ -267,24 +276,30 @@ fi
267276
# Find where the top RPM-building directory is
268277
#
269278

270-
file=~/.rpmmacros
271-
if test -r $file; then
272-
rpmtopdir=${rpmtopdir:-"`grep %_topdir $file | awk '{ print $2 }'`"}
279+
# if the user did not specify an $rpmtopdir, check for an .rpmmacros file.
280+
if test "$rpmtopdir" == ""; then
281+
file=~/.rpmmacros
282+
if test -r $file; then
283+
rpmtopdir=${rpmtopdir:-"`grep %_topdir $file | awk '{ print $2 }'`"}
284+
fi
273285
fi
286+
287+
# If needed, initialize the $rpmtopdir directory. If no $rpmtopdir was
288+
# specified, try various system-level defaults.
274289
if test "$rpmtopdir" != ""; then
275-
rpmbuild_options="$rpmbuild_options --define '_topdir $rpmtopdir'"
290+
rpmbuild_options="$rpmbuild_options --define '_topdir $rpmtopdir'"
276291
if test ! -d "$rpmtopdir"; then
277-
mkdir -p "$rpmtopdir"
278-
mkdir -p "$rpmtopdir/BUILD"
279-
mkdir -p "$rpmtopdir/RPMS"
280-
mkdir -p "$rpmtopdir/RPMS/i386"
281-
mkdir -p "$rpmtopdir/RPMS/i586"
282-
mkdir -p "$rpmtopdir/RPMS/i686"
283-
mkdir -p "$rpmtopdir/RPMS/noarch"
284-
mkdir -p "$rpmtopdir/RPMS/athlon"
285-
mkdir -p "$rpmtopdir/SOURCES"
286-
mkdir -p "$rpmtopdir/SPECS"
287-
mkdir -p "$rpmtopdir/SRPMS"
292+
mkdir -p "$rpmtopdir"
293+
mkdir -p "$rpmtopdir/BUILD"
294+
mkdir -p "$rpmtopdir/RPMS"
295+
mkdir -p "$rpmtopdir/RPMS/i386"
296+
mkdir -p "$rpmtopdir/RPMS/i586"
297+
mkdir -p "$rpmtopdir/RPMS/i686"
298+
mkdir -p "$rpmtopdir/RPMS/noarch"
299+
mkdir -p "$rpmtopdir/RPMS/athlon"
300+
mkdir -p "$rpmtopdir/SOURCES"
301+
mkdir -p "$rpmtopdir/SPECS"
302+
mkdir -p "$rpmtopdir/SRPMS"
288303
fi
289304
need_root=0
290305
elif test -d /usr/src/RPM; then

0 commit comments

Comments
 (0)