From b48eaa3443d0cf2de6f6526612c0c12072e203a2 Mon Sep 17 00:00:00 2001 From: Thomas Klausner Date: Sat, 8 Dec 2018 11:19:01 +0100 Subject: Allow clang for FreeBSD and NetBSD. --- makefile | 34 ++++++++++++++++++++++++++++++++++ scripts/toolchain.lua | 10 ++++++++++ 2 files changed, 44 insertions(+) diff --git a/makefile b/makefile index 620897c5b49..20dcf539872 100644 --- a/makefile +++ b/makefile @@ -1414,6 +1414,23 @@ freebsd_x86: generate $(PROJECTDIR)/$(MAKETYPE)-freebsd/Makefile $(SILENT) $(MAKE) -C $(PROJECTDIR)/$(MAKETYPE)-freebsd config=$(CONFIG)32 precompile $(SILENT) $(MAKE) -C $(PROJECTDIR)/$(MAKETYPE)-freebsd config=$(CONFIG)32 +#------------------------------------------------- +# gmake-freebsd-clang +#------------------------------------------------- + +$(PROJECTDIR)/$(MAKETYPE)-freebsd-clang/Makefile: makefile $(SCRIPTS) $(GENIE) + $(SILENT) $(GENIE) $(PARAMS) $(TARGET_PARAMS) --gcc=freebsd-clang --gcc_version=$(CLANG_VERSION) $(MAKETYPE) + +.PHONY: freebsd_x64_clang +freebsd_x64_clang: generate $(PROJECTDIR)/$(MAKETYPE)-freebsd-clang/Makefile + $(SILENT) $(MAKE) -C $(PROJECTDIR)/$(MAKETYPE)-freebsd-clang config=$(CONFIG)64 precompile + $(SILENT) $(MAKE) -C $(PROJECTDIR)/$(MAKETYPE)-freebsd-clang config=$(CONFIG)64 + +.PHONY: freebsd_x86_clang +freebsd_x86_clang: generate $(PROJECTDIR)/$(MAKETYPE)-freebsd-clang/Makefile + $(SILENT) $(MAKE) -C $(PROJECTDIR)/$(MAKETYPE)-freebsd-clang config=$(CONFIG)32 precompile + $(SILENT) $(MAKE) -C $(PROJECTDIR)/$(MAKETYPE)-freebsd-clang config=$(CONFIG)32 + #------------------------------------------------- # gmake-netbsd #------------------------------------------------- @@ -1434,6 +1451,23 @@ netbsd_x86: generate $(PROJECTDIR)/$(MAKETYPE)-netbsd/Makefile $(SILENT) $(MAKE) -C $(PROJECTDIR)/$(MAKETYPE)-netbsd config=$(CONFIG)32 precompile $(SILENT) $(MAKE) -C $(PROJECTDIR)/$(MAKETYPE)-netbsd config=$(CONFIG)32 +#------------------------------------------------- +# gmake-netbsd-clang +#------------------------------------------------- + +$(PROJECTDIR)/$(MAKETYPE)-netbsd-clang/Makefile: makefile $(SCRIPTS) $(GENIE) + $(SILENT) $(GENIE) $(PARAMS) $(TARGET_PARAMS) --gcc=netbsd-clang --gcc_version=$(CLANG_VERSION) $(MAKETYPE) + +.PHONY: netbsd_x64_clang +netbsd_x64_clang: generate $(PROJECTDIR)/$(MAKETYPE)-netbsd-clang/Makefile + $(SILENT) $(MAKE) -C $(PROJECTDIR)/$(MAKETYPE)-netbsd-clang config=$(CONFIG)64 precompile + $(SILENT) $(MAKE) -C $(PROJECTDIR)/$(MAKETYPE)-netbsd-clang config=$(CONFIG)64 + +.PHONY: netbsd_x86_clang +netbsd_x86_clang: generate $(PROJECTDIR)/$(MAKETYPE)-netbsd-clang/Makefile + $(SILENT) $(MAKE) -C $(PROJECTDIR)/$(MAKETYPE)-netbsd-clang config=$(CONFIG)32 precompile + $(SILENT) $(MAKE) -C $(PROJECTDIR)/$(MAKETYPE)-netbsd-clang config=$(CONFIG)32 + #------------------------------------------------- # gmake-openbsd #------------------------------------------------- diff --git a/scripts/toolchain.lua b/scripts/toolchain.lua index 79378f83d2a..e1052dc4500 100644 --- a/scripts/toolchain.lua +++ b/scripts/toolchain.lua @@ -23,6 +23,7 @@ newoption { { "android-x64", "Android - x64" }, { "asmjs", "Emscripten/asm.js" }, { "freebsd", "FreeBSD" }, + { "freebsd-clang", "FreeBSD (clang compiler)"}, { "linux-gcc", "Linux (GCC compiler)" }, { "linux-clang", "Linux (Clang compiler)" }, { "ios-arm", "iOS - ARM" }, @@ -31,6 +32,7 @@ newoption { { "mingw64-gcc", "MinGW64" }, { "mingw-clang", "MinGW (clang compiler)" }, { "netbsd", "NetBSD" }, + { "netbsd-clang", "NetBSD (clang compiler)"}, { "openbsd", "OpenBSD" }, { "osx", "OSX (GCC compiler)" }, { "osx-clang", "OSX (Clang compiler)" }, @@ -168,10 +170,18 @@ function toolchain(_buildDir, _subDir) location (_buildDir .. "projects/" .. _subDir .. "/".. _ACTION .. "-freebsd") end + if "freebsd-clang" == _OPTIONS["gcc"] then + location (_buildDir .. "projects/" .. _subDir .. "/".. _ACTION .. "-freebsd-clang") + end + if "netbsd" == _OPTIONS["gcc"] then location (_buildDir .. "projects/" .. _subDir .. "/".. _ACTION .. "-netbsd") end + if "netbsd-clang" == _OPTIONS["gcc"] then + location (_buildDir .. "projects/" .. _subDir .. "/".. _ACTION .. "-netbsd-clang") + end + if "openbsd" == _OPTIONS["gcc"] then location (_buildDir .. "projects/" .. _subDir .. "/".. _ACTION .. "-openbsd") end -- cgit v1.2.3