summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authormidipix <writeonce@midipix.org>2016-02-26 17:49:08 -0500
committermidipix <writeonce@midipix.org>2016-02-27 10:58:06 -0500
commitdc909fec64be7e1fb0eb74e4f9a99ad514d4cf1d (patch)
treec8395e20e07e5b4802b972430ee97eb4302cb768
parent46d732fea4ece0c921a43a73845bb5a8009877e3 (diff)
downloadsofort-dc909fec64be7e1fb0eb74e4f9a99ad514d4cf1d.tar.bz2
sofort-dc909fec64be7e1fb0eb74e4f9a99ad514d4cf1d.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)