summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormidipix <writeonce@midipix.org>2016-02-26 17:49:08 -0500
committermidipix <writeonce@midipix.org>2016-11-11 00:22:35 -0500
commitfe53cf4c2a9cf22cf8659c6f2c2555ee830481ac (patch)
tree787f4f3b0e3d0f2b25cd4f09a0f51f60983517ba
parente692ecc8f9e67935711fca72f93f537ce505c2f9 (diff)
downloadmdso-fe53cf4c2a9cf22cf8659c6f2c2555ee830481ac.tar.bz2
mdso-fe53cf4c2a9cf22cf8659c6f2c2555ee830481ac.tar.xz
build system: added fallback host recipe.
-rwxr-xr-xconfigure11
-rw-r--r--sysinfo/compiler/clang.mk4
-rw-r--r--sysinfo/compiler/cparser.mk4
-rw-r--r--sysinfo/host/any-host.mk7
-rw-r--r--sysinfo/os/any-os.mk10
5 files changed, 34 insertions, 2 deletions
diff --git a/configure b/configure
index b2dfe60..29d088d 100755
--- a/configure
+++ b/configure
@@ -184,6 +184,17 @@ common_defaults()
if [ x"$mb_toolchain" = x ]; then
mb_toolchain='binutils'
fi
+
+ # fallback host recipe
+ if [ x"$mb_host" != x ]; then
+ if ! [ -f $mb_project_dir/sysinfo/host/$mb_host.mk ]; then
+ if [ -z "$mb_cross_compile" ]; then
+ mb_cross_compile=$mb_host-
+ fi
+
+ mb_host='any-host';
+ fi
+ fi
}
diff --git a/sysinfo/compiler/clang.mk b/sysinfo/compiler/clang.mk
index ba9ecfc..77b4b86 100644
--- a/sysinfo/compiler/clang.mk
+++ b/sysinfo/compiler/clang.mk
@@ -1,9 +1,11 @@
ifeq ($(CROSS_COMPILE)x,x)
CROSS_HOST =
CROSS_HOST_SPEC =
-else
+else ifeq ($(CROSS_HOST)x,x)
CROSS_HOST = $(HOST)
CROSS_HOST_SPEC = --target=$(HOST)
+else
+ CROSS_HOST_SPEC = --target=$(CROSS_HOST)
endif
diff --git a/sysinfo/compiler/cparser.mk b/sysinfo/compiler/cparser.mk
index a57cdcc..6c4dc8e 100644
--- a/sysinfo/compiler/cparser.mk
+++ b/sysinfo/compiler/cparser.mk
@@ -1,9 +1,11 @@
ifeq ($(CROSS_COMPILE)x,x)
CROSS_HOST =
CROSS_HOST_SPEC =
-else
+else ifeq ($(CROSS_HOST)x,x)
CROSS_HOST = $(HOST)
CROSS_HOST_SPEC = --target=$(HOST)
+else
+ CROSS_HOST_SPEC = --target=$(CROSS_HOST)
endif
diff --git a/sysinfo/host/any-host.mk b/sysinfo/host/any-host.mk
new file mode 100644
index 0000000..acb606a
--- /dev/null
+++ b/sysinfo/host/any-host.mk
@@ -0,0 +1,7 @@
+include $(PROJECT_DIR)/sysinfo/os/any-os.mk
+
+ARCH =
+HOST_BITS =
+HOST_UNDERSCORE =
+
+CROSS_HOST = $(TARGET)
diff --git a/sysinfo/os/any-os.mk b/sysinfo/os/any-os.mk
new file mode 100644
index 0000000..0aa0a75
--- /dev/null
+++ b/sysinfo/os/any-os.mk
@@ -0,0 +1,10 @@
+OS = any-os
+OS_APP_PREFIX =
+OS_APP_SUFFIX =
+OS_LIB_PREFIX = lib
+OS_LIB_SUFFIX = .so
+OS_IMPLIB_EXT = .invalid
+OS_LIBDEF_EXT = .invalid
+OS_ARCHIVE_EXT = .a
+
+.PHONY: $(SHARED_IMPLIB)