summaryrefslogtreecommitdiffstats
path: root/bin
diff options
context:
space:
mode:
authorMarc Kleine-Budde <mkl@pengutronix.de>2009-08-29 18:37:57 +0200
committerMarc Kleine-Budde <mkl@pengutronix.de>2009-08-29 18:40:32 +0200
commit5b72bb2dadd10d9f76afed696866bf63cfba3902 (patch)
treeeb82b061902fd68aa8f4ed0db3496e2c1aec9ee7 /bin
parent3bfe03854d9f50a5c1b9b20d3ea104054e0e5d96 (diff)
downloadptxdist-5b72bb2dadd10d9f76afed696866bf63cfba3902.tar.gz
ptxdist-5b72bb2dadd10d9f76afed696866bf63cfba3902.tar.xz
[ptxdist] clean up config file fallback handling
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Diffstat (limited to 'bin')
-rwxr-xr-xbin/ptxdist21
1 files changed, 15 insertions, 6 deletions
diff --git a/bin/ptxdist b/bin/ptxdist
index a0cb845ee..59aa0e684 100755
--- a/bin/ptxdist
+++ b/bin/ptxdist
@@ -14,6 +14,7 @@ PROMPT="ptxdist: "
PTXDIST_PTXCONFIG_DEFAULT='${PTXDIST_WORKSPACE}/selected_ptxconfig'
PTXDIST_PTXCONFIG_FALLBACK='${PTXDIST_WORKSPACE}/configs/ptxconfig'
PTXDIST_PLATFORMCONFIG_DEFAULT='${PTXDIST_WORKSPACE}/selected_platformconfig'
+PTXDIST_PLATFORMCONFIG_FALLBACK='${PTXDIST_WORKSPACE}/configs/*/platformconfig'
PTXDIST_COLLECTIONCONFIG_DEFAULT='${PTXDIST_WORKSPACE}/selected_collectionconfig'
PTXDIST_TOOLCHAIN_DEFAULT='${PTXDIST_WORKSPACE}/selected_toolchain'
PTXDIST_PTXRC_DEFAULT='${HOME}/.ptxdistrc.${PTXDIST_VERSION_FULL}'
@@ -1306,14 +1307,15 @@ parse_first()
;;
esac || return
done
- if [ "${PTXDIST_PTXCONFIG}" = "${PTXDIST_PTXCONFIG_DEFAULT}" -a \
- ! -e "${PTXDIST_PTXCONFIG}" -a -e "${PTXDIST_PTXCONFIG_FALLBACK}" ]; then
+
+ if [ "${PTX_ptxconfig_SET}" = "false" -a \
+ \! -e "${PTXDIST_PTXCONFIG}" -a -e "${PTXDIST_PTXCONFIG_FALLBACK}" ]; then
PTXDIST_PTXCONFIG="${PTXDIST_PTXCONFIG_FALLBACK}"
fi
- if [ "${PTXDIST_PLATFORMCONFIG}" = "${PTXDIST_PLATFORMCONFIG_DEFAULT}" \
- -a ! -e "${PTXDIST_PLATFORMCONFIG}" -a \
- $(ls "${PTXDIST_WORKSPACE}"/configs/*/platformconfig | wc -l) -eq 1 ]; then
- PTXDIST_PLATFORMCONFIG=$(ls "${PTXDIST_WORKSPACE}"/configs/*/platformconfig)
+
+ if [ "${PTX_platformconfig_SET}" = "false" -a \
+ \! -e "${PTXDIST_PLATFORMCONFIG}" -a -e "${PTXDIST_PLATFORMCONFIG_FALLBACK}" ]; then
+ PTXDIST_PLATFORMCONFIG="${PTXDIST_PLATFORMCONFIG_FALLBACK}"
fi
}
@@ -1987,8 +1989,15 @@ setup_topdir() {
eval PTXDIST_PTXCONFIG_DEFAULT="${PTXDIST_PTXCONFIG_DEFAULT}"
eval PTXDIST_PTXCONFIG_FALLBACK="${PTXDIST_PTXCONFIG_FALLBACK}"
eval PTXDIST_PLATFORMCONFIG_DEFAULT="${PTXDIST_PLATFORMCONFIG_DEFAULT}"
+ eval PTXDIST_PLATFORMCONFIG_FALLBACK="${PTXDIST_PLATFORMCONFIG_FALLBACK}"
eval PTXDIST_COLLECTIONCONFIG_DEFAULT="${PTXDIST_COLLECTIONCONFIG_DEFAULT}"
eval PTXDIST_TOOLCHAIN_DEFAULT="${PTXDIST_TOOLCHAIN_DEFAULT}"
+
+ # platformconfig is a bit more sophisticated
+ PTXDIST_PLATFORMCONFIG_FALLBACK=($(echo ${PTXDIST_PLATFORMCONFIG_FALLBACK} 2>/dev/null))
+ if [ ${#PTXDIST_PLATFORMCONFIG_FALLBACK[@]} -ne 1 ]; then
+ unset PTXDIST_PLATFORMCONFIG_FALLBACK
+ fi
}