summaryrefslogtreecommitdiff
path: root/project/config/cfghost.sh
diff options
context:
space:
mode:
authormidipix <writeonce@midipix.org>2018-12-14 14:03:13 -0500
committermidipix <writeonce@midipix.org>2018-12-18 20:38:38 -0500
commitf8089b2b4ab3b13077cf2e0e1328622ddc002bb2 (patch)
tree54e8ad9c48d5c685981d77ca6a9f928dfe4af4c0 /project/config/cfghost.sh
parent5dc983925380bb06a4d6d0d660e2c8b80a71eac4 (diff)
downloadsbpython3-f8089b2b4ab3b13077cf2e0e1328622ddc002bb2.tar.bz2
sbpython3-f8089b2b4ab3b13077cf2e0e1328622ddc002bb2.tar.xz
project: imported the custom config bits from sbpython2.
Diffstat (limited to 'project/config/cfghost.sh')
-rw-r--r--project/config/cfghost.sh57
1 files changed, 57 insertions, 0 deletions
diff --git a/project/config/cfghost.sh b/project/config/cfghost.sh
new file mode 100644
index 0000000..8e9561e
--- /dev/null
+++ b/project/config/cfghost.sh
@@ -0,0 +1,57 @@
+# cfghost.sh: map the target or native hosts, as reported by
+# the -dumpmachine mechanism of their respective compilers,
+# to project-specific hosts.
+
+# internal variables of interest:
+# mb_internal_cchost: the host reported by -dumpmachine
+# mb_internal_cfghost: the unified, project-specific host name
+# mb_internal_cfgtype: the type of host being test (target/native)
+
+cfghost_internal_test()
+{
+ if [ -z "$mb_internal_cchost" ]; then
+ error_msg 'cfghost_internal_test(): $mb_internal_cchost is empty.'
+ exit 2
+ fi
+
+ if [ -d "$mb_project_dir/config/$mb_internal_cchost" ]; then
+ mb_internal_cfghost=$mb_internal_cchost
+ fi
+
+ if [ -z $mb_internal_cfghost ]; then
+ case $mb_internal_cchost in
+ x86_64-*-linux | x86_64-*-linux-* | x86_64-linux-* )
+ mb_internal_cfghost=x86_64-linux ;;
+
+ x86_64-*-midipix | x86_64-*-midipix-* | x86_64-midipix-* )
+ mb_internal_cfghost=x86_64-midipix ;;
+
+ * )
+ mb_internal_cfghost='any-host' ;;
+ esac
+ fi
+
+ if [ $mb_internal_cfgtype = 'target' ]; then
+ mb_cfghost="$mb_internal_cfghost"
+ else
+ mb_native_cc_cfghost="$mb_internal_cfghost"
+ fi
+}
+
+cfghost_set_target_cfghost()
+{
+ mb_internal_cchost="$mb_cchost"
+ mb_internal_cfghost="$mb_cfghost"
+ mb_internal_cfgtype='target'
+
+ cfghost_internal_test
+}
+
+cfghost_set_native_cfghost()
+{
+ mb_internal_cchost="$mb_native_cc_host"
+ mb_internal_cfghost="$mb_native_cc_cfghost"
+ mb_internal_cfgtype='native'
+
+ cfghost_internal_test
+}