summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Mark Bell <jmb@netsurf-browser.org>2010-12-29 17:38:18 +0000
committerJohn Mark Bell <jmb@netsurf-browser.org>2010-12-29 17:38:18 +0000
commit4e45da76f9dcf97493876a997662cba19e34db80 (patch)
treeb93f202aa05bf6f2fe3d490ed05be6777f31a150
parent74f566afae6d7c5b780ac56a3fe2b69992307cd4 (diff)
downloadbuildsystem-4e45da76f9dcf97493876a997662cba19e34db80.tar.gz
buildsystem-4e45da76f9dcf97493876a997662cba19e34db80.tar.bz2
First cut at AmigaOS cross-build support
svn path=/trunk/tools/buildsystem/; revision=11137
-rw-r--r--makefiles/Makefile.tools31
1 files changed, 31 insertions, 0 deletions
diff --git a/makefiles/Makefile.tools b/makefiles/Makefile.tools
index 655d254..b75e655 100644
--- a/makefiles/Makefile.tools
+++ b/makefiles/Makefile.tools
@@ -56,6 +56,10 @@ else
ifeq ($(HOST),Haiku)
HOST := haiku
endif
+
+ ifeq ($(HOST),AmigaOS)
+ HOST := amiga
+ endif
endif
ifeq ($(TARGET),)
@@ -199,6 +203,33 @@ ifeq ($(TARGET),windows)
PREFIX ?= $(MINGW_INSTALL_ENV)
endif
+# AmigaOS (3/4; m68k/ppc: we can treat them identically)
+ifeq ($(TARGET),amiga)
+ ifeq ($(HOST),amiga)
+ # Building on AmigaOS
+ # Nothing to do, as we assume the default tooling works
+ else
+ # Cross compiling for AmigaOS
+
+ # TODO: more sensible default
+ GCCSDK_INSTALL_ENV ?= /home/jmb/netsurf/env/m68k-amigaos/env
+ GCCSDK_INSTALL_CROSSBIN ?= /home/jmb/netsurf/env/m68k-amigaos/cross/bin
+
+ AR__ := $(wildcard $(GCCSDK_INSTALL_CROSSBIN)/*ar)
+ CC__ := $(wildcard $(GCCSDK_INSTALL_CROSSBIN)/*gcc)
+ CXX__ := $(wildcard $(GCCSDK_INSTALL_CROSSBIN)/*g++)
+
+ PKGCONFIG ?= PKG_CONFIG_LIBDIR="$(GCCSDK_INSTALL_ENV)/lib/pkgconfig" pkg-config
+
+ # TODO: this assumes GCC
+ CFLAGS := $(CFLAGS) -I$(GCCSDK_INSTALL_ENV)/include
+ CXXFLAGS := $(CXXFLAGS) -I$(GCCSDK_INSTALL_ENV)/include
+ LDFLAGS := $(LDFLAGS) -L$(GCCSDK_INSTALL_ENV)/lib
+
+ PREFIX ?= $(GCCSDK_INSTALL_ENV)
+ endif
+endif
+
###############################################################################
# Tool defaults
###############################################################################