summaryrefslogtreecommitdiffstats
path: root/examples
diff options
context:
space:
mode:
authorDavid Young <dyoung@hdfgroup.org>2019-11-05 16:14:59 (GMT)
committerDavid Young <dyoung@hdfgroup.org>2020-05-20 14:17:25 (GMT)
commit94ecdfe1a37a319205cb1644e3e9214b31fdc486 (patch)
treeb6292f332e99e3895ec4cbbc9872cd2e9d87b5a8 /examples
parent8d3d45789064a1931f538b5d54c70316edfa4b4a (diff)
downloadhdf5-94ecdfe1a37a319205cb1644e3e9214b31fdc486.zip
hdf5-94ecdfe1a37a319205cb1644e3e9214b31fdc486.tar.gz
hdf5-94ecdfe1a37a319205cb1644e3e9214b31fdc486.tar.bz2
Make this script relocatable again: derive a relative path for the
original installation prefix from the examples prefix. Use that relative path to locate the current installation prefix, always. Fall back to an absolute installation prefix if the relative path cannot be derived.
Diffstat (limited to 'examples')
-rw-r--r--examples/run-c-ex.sh.in27
1 files changed, 25 insertions, 2 deletions
diff --git a/examples/run-c-ex.sh.in b/examples/run-c-ex.sh.in
index 3648706..238b665 100644
--- a/examples/run-c-ex.sh.in
+++ b/examples/run-c-ex.sh.in
@@ -28,10 +28,33 @@
# Initializations
EXIT_SUCCESS=0
EXIT_FAILURE=1
-
+
+#
+# Try to derive the path to the installation $prefix established
+# by ./configure relative to the examples directory established by
+# ./configure. If successful, set `prefix_relto_examplesdir` to the
+# relative path. Otherwise, set `prefix_relto_examplesdir` to the
+# absolute installation $prefix.
+#
+# This script uses the value of `prefix` in the user's environment, if
+# it is set, below. The content of $() is evaluated in a sub-shell, so
+# if `prefix` is set in the user's environment, the shell statements in
+# $() won't clobbered it.
+#
+prefix_relto_examplesdir=$(
+prefix=@prefix@
+examplesdir=@examplesdir@
+if [ ${examplesdir##${prefix}/} != ${examplesdir} ]; then
+ echo $(echo ${examplesdir##${prefix}/} | \
+ sed -E 's,[^/]+,..,g')
+else
+ echo $prefix
+fi
+)
+
# Where the tool is installed.
# default is relative path to installed location of the tools
-prefix="${prefix:-@prefix@}"
+prefix="${prefix:-${prefix_relto_examplesdir}}"
PARALLEL=@PARALLEL@ # Am I in parallel mode?
AR="@AR@"
RANLIB="@RANLIB@"