Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernhard Urban-Forster <lewurm@gmail.com>2020-02-14 10:26:58 +0300
committerGitHub <noreply@github.com>2020-02-14 10:26:58 +0300
commit26a5d63384d9f5da8caff9b9a50f0e3dc480f294 (patch)
tree4ea9d6c832b66833eb3d603b62f63f26b07c7563 /sdks/builds
parentfa0af3701491bc83aae68f35735726827d39fb58 (diff)
[sdks] add anroid-interpreter-{arm64-v8a,armeabi-v7a,x86,x86_64} targets (#18814)
The Xamarin.Android team prefers that we ship two different `libmonosgen-2.0.so` for each target, e.g. for arm64 we will have with this PR: * `./sdks/out/android-arm64-v8a-release/lib/libmonosgen-2.0.so` * `./sdks/out/android-interpreter-arm64-v8a-release/lib/libmonosgen-2.0.so` As the names indicate one has the interpreter enabled. This is contrary to what we do for Xamarin.iOS. There, `--enable-minimal=interpreter` has the side-effect that the build will produce a `libmono-ee-interp.dylib` that can be linked next to `libmonosgen-2.0.dylib`. We _could_ do the same for Android, but that would require us to * Add `--disable-visibility-hidden` to the Android Mono runtime builds. There are concerns however that this will slow down `dlopen (libmonosgen-2.0.so)` on the Xamarin.Android side. * Do some changes to the interpreter infrastructure, because `--disable-minimal=interpreter` is designed to be used with a cross compiler in mind. For example, we would need a different solution for this: https://github.com/mono/mono/blob/d7e6fcbda82639fd5afe106b0e7a65a2a72a4f63/mono/mini/tramp-arm64.c#L631-L634
Diffstat (limited to 'sdks/builds')
-rw-r--r--sdks/builds/android.mk56
-rw-r--r--sdks/builds/runtime.mk119
2 files changed, 93 insertions, 82 deletions
diff --git a/sdks/builds/android.mk b/sdks/builds/android.mk
index 2e28fc16a69..2c80c215676 100644
--- a/sdks/builds/android.mk
+++ b/sdks/builds/android.mk
@@ -23,6 +23,8 @@ else ifeq ($(UNAME),Linux)
ANDROID_LIBCLANG = $(ANDROID_TOOLCHAIN_DIR)/ndk/toolchains/llvm/prebuilt/linux-x86_64/lib64/libclang.so.8svn
endif
+COMMA := ,
+
##
# Parameters:
# $(1): target
@@ -86,54 +88,54 @@ endif
# $(2): arch
# $(3): abi_name
# $(4): host_triple
+# $(5): interpreter (either '-interpreter' or empty)
#
# Flags:
# android-$(1)_CFLAGS
# android-$(1)_CXXFLAGS
# android-$(1)_LDFLAGS
define AndroidTargetTemplate
-
-_android-$(1)_AR=$$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-ar
-_android-$(1)_AS=$$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-as
-_android-$(1)_CC=$$(CCACHE) $$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-clang
-_android-$(1)_CXX=$$(CCACHE) $$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-clang++
-_android-$(1)_CPP=$$(CCACHE) $$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-$$(if $(wildcard $$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-cpp),cpp,clang -E)
-_android-$(1)_CXXCPP=$$(CCACHE) $$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-$$(if $(wildcard $$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-cpp),cpp,clang++ -E)
-_android-$(1)_DLLTOOL=
-_android-$(1)_LD=$$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-ld
-_android-$(1)_OBJDUMP="$$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-objdump"
-_android-$(1)_RANLIB=$$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-ranlib
-_android-$(1)_CMAKE=$$(ANDROID_SDK_PREFIX)/cmake/$(ANDROID_CMAKE_VERSION)/bin/cmake
-_android-$(1)_STRIP=$$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-strip
-
-_android-$(1)_AC_VARS= \
+_android$(5)-$(1)_AR=$$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-ar
+_android$(5)-$(1)_AS=$$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-as
+_android$(5)-$(1)_CC=$$(CCACHE) $$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-clang
+_android$(5)-$(1)_CXX=$$(CCACHE) $$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-clang++
+_android$(5)-$(1)_CPP=$$(CCACHE) $$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-$$(if $(wildcard $$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-cpp),cpp,clang -E)
+_android$(5)-$(1)_CXXCPP=$$(CCACHE) $$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-$$(if $(wildcard $$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-cpp),cpp,clang++ -E)
+_android$(5)-$(1)_DLLTOOL=
+_android$(5)-$(1)_LD=$$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-ld
+_android$(5)-$(1)_OBJDUMP="$$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-objdump"
+_android$(5)-$(1)_RANLIB=$$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-ranlib
+_android$(5)-$(1)_CMAKE=$$(ANDROID_SDK_PREFIX)/cmake/$(ANDROID_CMAKE_VERSION)/bin/cmake
+_android$(5)-$(1)_STRIP=$$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/bin/$(3)-strip
+
+_android$(5)-$(1)_AC_VARS= \
mono_cv_uscore=yes \
ac_cv_func_sched_getaffinity=no \
ac_cv_func_sched_setaffinity=no \
ac_cv_func_shm_open_working_with_mmap=no
-_android-$(1)_CFLAGS= \
+_android$(5)-$(1)_CFLAGS= \
-fstack-protector \
-DMONODROID=1 $$(if $$(filter $$(ANDROID_NEW_NDK),yes),-D__ANDROID_API__=$$(ANDROID_SDK_VERSION_$(1)))
-_android-$(1)_CXXFLAGS= \
+_android$(5)-$(1)_CXXFLAGS= \
-fstack-protector \
-DMONODROID=1 $$(if $$(filter $$(ANDROID_NEW_NDK),yes),-D__ANDROID_API__=$$(ANDROID_SDK_VERSION_$(1)))
-_android-$(1)_CPPFLAGS= \
+_android$(5)-$(1)_CPPFLAGS= \
-I$$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/sysroot/usr/include
-_android-$(1)_CXXCPPFLAGS= \
+_android$(5)-$(1)_CXXCPPFLAGS= \
-I$$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang/sysroot/usr/include
-_android-$(1)_LDFLAGS= \
+_android$(5)-$(1)_LDFLAGS= \
-z now -z relro -z noexecstack \
-ldl -lm -llog -lc -lgcc \
-Wl,-rpath-link=$$(ANDROID_TOOLCHAIN_DIR)/ndk/platforms/android-$$(ANDROID_SDK_VERSION_$(1))/arch-$(2)/usr/lib,-dynamic-linker=/system/bin/linker \
-L$$(ANDROID_TOOLCHAIN_DIR)/ndk/platforms/android-$$(ANDROID_SDK_VERSION_$(1))/arch-$(2)/usr/lib
-_android-$(1)_CONFIGURE_FLAGS= \
+_android$(5)-$(1)_CONFIGURE_FLAGS= \
--disable-boehm \
--disable-executables \
--disable-iconv \
@@ -141,7 +143,7 @@ _android-$(1)_CONFIGURE_FLAGS= \
--disable-nls \
--enable-dynamic-btls \
--enable-maintainer-mode \
- --enable-minimal=ssa,portability,attach,verifier,full_messages,sgen_remset,sgen_marksweep_par,sgen_marksweep_fixed,sgen_marksweep_fixed_par,sgen_copying,logging,security,shared_handles,interpreter,gac,cfgdir_config \
+ --enable-minimal=ssa,portability,attach,verifier,full_messages,sgen_remset,sgen_marksweep_par,sgen_marksweep_fixed,sgen_marksweep_fixed_par,sgen_copying,logging,security,shared_handles,$$(if $(5),,interpreter$$(COMMA)),gac,cfgdir_config \
--enable-monodroid \
--with-btls-android-ndk=$$(ANDROID_TOOLCHAIN_DIR)/ndk \
--with-btls-android-api=$$(ANDROID_SDK_VERSION_$(1)) \
@@ -154,11 +156,15 @@ _android-$(1)_CONFIGURE_FLAGS= \
--disable-hybrid-suspend \
--disable-crash-reporting
+ifeq ($(5),-interpreter)
+.stamp-android$(5)-$(1)-toolchain: .stamp-android-$(1)-toolchain
+else
.stamp-android-$(1)-toolchain: | $$(if $$(IGNORE_PROVISION_ANDROID),,provision-android)
$(PYTHON) "$$(ANDROID_TOOLCHAIN_DIR)/ndk/build/tools/make_standalone_toolchain.py" --verbose --force --api=$$(ANDROID_SDK_VERSION_$(1)) --arch=$(2) --install-dir=$$(ANDROID_TOOLCHAIN_PREFIX)/$(1)-clang
touch $$@
+endif
-$$(eval $$(call RuntimeTemplate,android,$(1),$(4)))
+$$(eval $$(call RuntimeTemplate,android,$(1),$(4),,$(5)))
endef
@@ -190,6 +196,7 @@ ifeq ($(UNAME),Windows)
$(eval $(call AndroidTargetTemplateStub,armeabi-v7a,arm,arm-linux-androideabi,armv5-linux-androideabi))
else
$(eval $(call AndroidTargetTemplate,armeabi-v7a,arm,arm-linux-androideabi,armv5-linux-androideabi))
+$(eval $(call AndroidTargetTemplate,armeabi-v7a,arm,arm-linux-androideabi,armv5-linux-androideabi,-interpreter))
endif
## android-arm64-v8a
@@ -199,6 +206,7 @@ ifeq ($(UNAME),Windows)
$(eval $(call AndroidTargetTemplateStub,arm64-v8a,arm64,aarch64-linux-android,aarch64-linux-android))
else
$(eval $(call AndroidTargetTemplate,arm64-v8a,arm64,aarch64-linux-android,aarch64-linux-android))
+$(eval $(call AndroidTargetTemplate,arm64-v8a,arm64,aarch64-linux-android,aarch64-linux-android,-interpreter))
endif
## android-x86
@@ -206,6 +214,7 @@ ifeq ($(UNAME),Windows)
$(eval $(call AndroidTargetTemplateStub,x86,x86,i686-linux-android,i686-linux-android))
else
$(eval $(call AndroidTargetTemplate,x86,x86,i686-linux-android,i686-linux-android))
+$(eval $(call AndroidTargetTemplate,x86,x86,i686-linux-android,i686-linux-android,-interpreter))
endif
## android-x86_64
@@ -215,6 +224,7 @@ ifeq ($(UNAME),Windows)
$(eval $(call AndroidTargetTemplateStub,x86_64,x86_64,x86_64-linux-android,x86_64-linux-android))
else
$(eval $(call AndroidTargetTemplate,x86_64,x86_64,x86_64-linux-android,x86_64-linux-android))
+$(eval $(call AndroidTargetTemplate,x86_64,x86_64,x86_64-linux-android,x86_64-linux-android,-interpreter))
endif
##
diff --git a/sdks/builds/runtime.mk b/sdks/builds/runtime.mk
index a4972125574..29fa0f05172 100644
--- a/sdks/builds/runtime.mk
+++ b/sdks/builds/runtime.mk
@@ -5,6 +5,7 @@
# $(2): target
# $(3): host triple
# $(4): exclude from archive
+# $(5): interpreter (either '-interpreter' or empty)
#
# Flags:
# _$(1)-$(2)_AR
@@ -28,87 +29,87 @@
# _$(1)-$(2)_PATH
define RuntimeTemplate
-_runtime_$(1)-$(2)_BITNESS=$$(if $$(or $$(findstring i686,$(3)),$$(findstring i386,$(3))),-m32,$$(if $$(findstring x86_64,$(3)),-m64))
-
-_runtime_$(1)-$(2)_CFLAGS=$(if $(RELEASE),-O2 -g,-O0 -ggdb3 -fno-omit-frame-pointer) $$(_$(1)-$(2)_CFLAGS) $$($(1)-$(2)_CFLAGS) $$(_runtime_$(1)-$(2)_BITNESS)
-_runtime_$(1)-$(2)_CXXFLAGS=$(if $(RELEASE),-O2 -g,-O0 -ggdb3 -fno-omit-frame-pointer) $$(_$(1)-$(2)_CXXFLAGS) $$($(1)-$(2)_CXXFLAGS) $$(_runtime_$(1)-$(2)_BITNESS)
-_runtime_$(1)-$(2)_CPPFLAGS=$(if $(RELEASE),-O2 -g,-O0 -ggdb3 -fno-omit-frame-pointer) $$(_$(1)-$(2)_CPPFLAGS) $$($(1)-$(2)_CPPFLAGS) $$(_runtime_$(1)-$(2)_BITNESS)
-_runtime_$(1)-$(2)_CXXCPPFLAGS=$(if $(RELEASE),-O2 -g,-O0 -ggdb3 -fno-omit-frame-pointer) $$(_$(1)-$(2)_CXXCPPFLAGS) $$($(1)-$(2)_CXXCPPFLAGS) $$(_runtime_$(1)-$(2)_BITNESS)
-_runtime_$(1)-$(2)_LDFLAGS=$$(_$(1)-$(2)_LDFLAGS) $$($(1)-$(2)_LDFLAGS)
-
-_runtime_$(1)-$(2)_AC_VARS=$$(_$(1)-$(2)_AC_VARS) $$($(1)-$(2)_AC_VARS)
-
-_runtime_$(1)-$(2)_CONFIGURE_ENVIRONMENT = \
- $(if $$(_$(1)-$(2)_AR),AR="$$(_$(1)-$(2)_AR)") \
- $(if $$(_$(1)-$(2)_AS),AS="$$(_$(1)-$(2)_AS)") \
- $(if $$(_$(1)-$(2)_CC),CC="$$(_$(1)-$(2)_CC)") \
- $(if $$(_$(1)-$(2)_CPP),CPP="$$(_$(1)-$(2)_CPP)") \
- $(if $$(_$(1)-$(2)_CXX),CXX="$$(_$(1)-$(2)_CXX)") \
- $(if $$(_$(1)-$(2)_CXXCPP),CXXCPP="$$(_$(1)-$(2)_CXXCPP)") \
- $(if $$(_$(1)-$(2)_DLLTOOL),DLLTOOL="$$(_$(1)-$(2)_DLLTOOL)") \
- $(if $$(_$(1)-$(2)_LD),LD="$$(_$(1)-$(2)_LD)") \
- $(if $$(_$(1)-$(2)_OBJDUMP),OBJDUMP="$$(_$(1)-$(2)_OBJDUMP)") \
- $(if $$(_$(1)-$(2)_RANLIB),RANLIB="$$(_$(1)-$(2)_RANLIB)") \
- $(if $$(_$(1)-$(2)_CMAKE),CMAKE="$$(_$(1)-$(2)_CMAKE)") \
- $(if $$(_$(1)-$(2)_STRIP),STRIP="$$(_$(1)-$(2)_STRIP)") \
- CFLAGS="$$(_runtime_$(1)-$(2)_CFLAGS)" \
- CXXFLAGS="$$(_runtime_$(1)-$(2)_CXXFLAGS)" \
- CPPFLAGS="$$(_runtime_$(1)-$(2)_CPPFLAGS)" \
- CXXCPPFLAGS="$$(_runtime_$(1)-$(2)_CXXCPPFLAGS)" \
- LDFLAGS="$$(_runtime_$(1)-$(2)_LDFLAGS)" \
- $$(_$(1)-$(2)_CONFIGURE_ENVIRONMENT) \
- $$($(1)-$(2)_CONFIGURE_ENVIRONMENT)
-
-_runtime_$(1)-$(2)_CONFIGURE_FLAGS= \
+_runtime_$(1)$(5)-$(2)_BITNESS=$$(if $$(or $$(findstring i686,$(3)),$$(findstring i386,$(3))),-m32,$$(if $$(findstring x86_64,$(3)),-m64))
+
+_runtime_$(1)$(5)-$(2)_CFLAGS=$(if $(RELEASE),-O2 -g,-O0 -ggdb3 -fno-omit-frame-pointer) $$(_$(1)$(5)-$(2)_CFLAGS) $$($(1)$(5)-$(2)_CFLAGS) $$(_runtime_$(1)$(5)-$(2)_BITNESS)
+_runtime_$(1)$(5)-$(2)_CXXFLAGS=$(if $(RELEASE),-O2 -g,-O0 -ggdb3 -fno-omit-frame-pointer) $$(_$(1)$(5)-$(2)_CXXFLAGS) $$($(1)$(5)-$(2)_CXXFLAGS) $$(_runtime_$(1)$(5)-$(2)_BITNESS)
+_runtime_$(1)$(5)-$(2)_CPPFLAGS=$(if $(RELEASE),-O2 -g,-O0 -ggdb3 -fno-omit-frame-pointer) $$(_$(1)$(5)-$(2)_CPPFLAGS) $$($(1)$(5)-$(2)_CPPFLAGS) $$(_runtime_$(1)$(5)-$(2)_BITNESS)
+_runtime_$(1)$(5)-$(2)_CXXCPPFLAGS=$(if $(RELEASE),-O2 -g,-O0 -ggdb3 -fno-omit-frame-pointer) $$(_$(1)$(5)-$(2)_CXXCPPFLAGS) $$($(1)$(5)-$(2)_CXXCPPFLAGS) $$(_runtime_$(1)$(5)-$(2)_BITNESS)
+_runtime_$(1)$(5)-$(2)_LDFLAGS=$$(_$(1)$(5)-$(2)_LDFLAGS) $$($(1)$(5)-$(2)_LDFLAGS)
+
+_runtime_$(1)$(5)-$(2)_AC_VARS=$$(_$(1)$(5)-$(2)_AC_VARS) $$($(1)$(5)-$(2)_AC_VARS)
+
+_runtime_$(1)$(5)-$(2)_CONFIGURE_ENVIRONMENT = \
+ $(if $$(_$(1)$(5)-$(2)_AR),AR="$$(_$(1)$(5)-$(2)_AR)") \
+ $(if $$(_$(1)$(5)-$(2)_AS),AS="$$(_$(1)$(5)-$(2)_AS)") \
+ $(if $$(_$(1)$(5)-$(2)_CC),CC="$$(_$(1)$(5)-$(2)_CC)") \
+ $(if $$(_$(1)$(5)-$(2)_CPP),CPP="$$(_$(1)$(5)-$(2)_CPP)") \
+ $(if $$(_$(1)$(5)-$(2)_CXX),CXX="$$(_$(1)$(5)-$(2)_CXX)") \
+ $(if $$(_$(1)$(5)-$(2)_CXXCPP),CXXCPP="$$(_$(1)$(5)-$(2)_CXXCPP)") \
+ $(if $$(_$(1)$(5)-$(2)_DLLTOOL),DLLTOOL="$$(_$(1)$(5)-$(2)_DLLTOOL)") \
+ $(if $$(_$(1)$(5)-$(2)_LD),LD="$$(_$(1)$(5)-$(2)_LD)") \
+ $(if $$(_$(1)$(5)-$(2)_OBJDUMP),OBJDUMP="$$(_$(1)$(5)-$(2)_OBJDUMP)") \
+ $(if $$(_$(1)$(5)-$(2)_RANLIB),RANLIB="$$(_$(1)$(5)-$(2)_RANLIB)") \
+ $(if $$(_$(1)$(5)-$(2)_CMAKE),CMAKE="$$(_$(1)$(5)-$(2)_CMAKE)") \
+ $(if $$(_$(1)$(5)-$(2)_STRIP),STRIP="$$(_$(1)$(5)-$(2)_STRIP)") \
+ CFLAGS="$$(_runtime_$(1)$(5)-$(2)_CFLAGS)" \
+ CXXFLAGS="$$(_runtime_$(1)$(5)-$(2)_CXXFLAGS)" \
+ CPPFLAGS="$$(_runtime_$(1)$(5)-$(2)_CPPFLAGS)" \
+ CXXCPPFLAGS="$$(_runtime_$(1)$(5)-$(2)_CXXCPPFLAGS)" \
+ LDFLAGS="$$(_runtime_$(1)$(5)-$(2)_LDFLAGS)" \
+ $$(_$(1)$(5)-$(2)_CONFIGURE_ENVIRONMENT) \
+ $$($(1)$(5)-$(2)_CONFIGURE_ENVIRONMENT)
+
+_runtime_$(1)$(5)-$(2)_CONFIGURE_FLAGS= \
$$(if $(3),--host=$(3)) \
- --cache-file=$$(TOP)/sdks/builds/$(1)-$(2)-$$(CONFIGURATION).config.cache \
- --prefix=$$(TOP)/sdks/out/$(1)-$(2)-$$(CONFIGURATION) \
+ --cache-file=$$(TOP)/sdks/builds/$(1)$(5)-$(2)-$$(CONFIGURATION).config.cache \
+ --prefix=$$(TOP)/sdks/out/$(1)$(5)-$(2)-$$(CONFIGURATION) \
$$(if $$(ENABLE_CXX),--enable-cxx) \
- $$(_cross-runtime_$(1)-$(2)_CONFIGURE_FLAGS) \
- $$(_$(1)-$(2)_CONFIGURE_FLAGS) \
- $$($(1)-$(2)_CONFIGURE_FLAGS)
+ $$(_cross-runtime_$(1)$(5)-$(2)_CONFIGURE_FLAGS) \
+ $$(_$(1)$(5)-$(2)_CONFIGURE_FLAGS) \
+ $$($(1)$(5)-$(2)_CONFIGURE_FLAGS)
-.stamp-$(1)-$(2)-$$(CONFIGURATION)-configure: $$(TOP)/configure .stamp-$(1)-$(2)-toolchain
- mkdir -p $$(TOP)/sdks/builds/$(1)-$(2)-$$(CONFIGURATION)
- $(if $$(_$(1)-$(2)_PATH),PATH="$$$$PATH:$$(_$(1)-$(2)_PATH)") ./wrap-configure.sh $$(TOP)/sdks/builds/$(1)-$(2)-$$(CONFIGURATION) $$(abspath $$<) $$(_runtime_$(1)-$(2)_AC_VARS) $$(_runtime_$(1)-$(2)_CONFIGURE_ENVIRONMENT) $$(_runtime_$(1)-$(2)_CONFIGURE_FLAGS)
+.stamp-$(1)$(5)-$(2)-$$(CONFIGURATION)-configure: $$(TOP)/configure .stamp-$(1)$(5)-$(2)-toolchain
+ mkdir -p $$(TOP)/sdks/builds/$(1)$(5)-$(2)-$$(CONFIGURATION)
+ $(if $$(_$(1)$(5)-$(2)_PATH),PATH="$$$$PATH:$$(_$(1)$(5)-$(2)_PATH)") ./wrap-configure.sh $$(TOP)/sdks/builds/$(1)$(5)-$(2)-$$(CONFIGURATION) $$(abspath $$<) $$(_runtime_$(1)$(5)-$(2)_AC_VARS) $$(_runtime_$(1)$(5)-$(2)_CONFIGURE_ENVIRONMENT) $$(_runtime_$(1)$(5)-$(2)_CONFIGURE_FLAGS)
touch $$@
-.stamp-$(1)-$(2)-configure: .stamp-$(1)-$(2)-$$(CONFIGURATION)-configure
+.stamp-$(1)$(5)-$(2)-configure: .stamp-$(1)$(5)-$(2)-$$(CONFIGURATION)-configure
touch $$@
-.PHONY: build-custom-$(1)-$(2)
-build-custom-$(1)-$(2):
- $$(MAKE) -C $(1)-$(2)-$$(CONFIGURATION)
+.PHONY: build-custom-$(1)$(5)-$(2)
+build-custom-$(1)$(5)-$(2):
+ $$(MAKE) -C $(1)$(5)-$(2)-$$(CONFIGURATION)
-.PHONY: setup-custom-$(1)-$(2)
-setup-custom-$(1)-$(2):
- mkdir -p $$(TOP)/sdks/out/$(1)-$(2)-$$(CONFIGURATION)
+.PHONY: setup-custom-$(1)$(5)-$(2)
+setup-custom-$(1)$(5)-$(2):
+ mkdir -p $$(TOP)/sdks/out/$(1)$(5)-$(2)-$$(CONFIGURATION)
-.PHONY: package-$(1)-$(2)
-package-$(1)-$(2):
- $$(MAKE) -C $$(TOP)/sdks/builds/$(1)-$(2)-$$(CONFIGURATION)/mono install
- $$(MAKE) -C $$(TOP)/sdks/builds/$(1)-$(2)-$$(CONFIGURATION)/support install
+.PHONY: package-$(1)$(5)-$(2)
+package-$(1)$(5)-$(2):
+ $$(MAKE) -C $$(TOP)/sdks/builds/$(1)$(5)-$(2)-$$(CONFIGURATION)/mono install
+ $$(MAKE) -C $$(TOP)/sdks/builds/$(1)$(5)-$(2)-$$(CONFIGURATION)/support install
-.PHONY: clean-$(1)-$(2)
-clean-$(1)-$(2):
- rm -rf .stamp-$(1)-$(2)-toolchain .stamp-$(1)-$(2)-$$(CONFIGURATION)-configure $$(TOP)/sdks/builds/toolchains/$(1)-$(2) $$(TOP)/sdks/builds/$(1)-$(2)-$$(CONFIGURATION) $$(TOP)/sdks/builds/$(1)-$(2)-$$(CONFIGURATION).config.cache $$(TOP)/sdks/out/$(1)-$(2)-$$(CONFIGURATION)
+.PHONY: clean-$(1)$(5)-$(2)
+clean-$(1)$(5)-$(2):
+ rm -rf .stamp-$(1)$(5)-$(2)-toolchain .stamp-$(1)$(5)-$(2)-$$(CONFIGURATION)-configure $$(TOP)/sdks/builds/toolchains/$(1)$(5)-$(2) $$(TOP)/sdks/builds/$(1)$(5)-$(2)-$$(CONFIGURATION) $$(TOP)/sdks/builds/$(1)$(5)-$(2)-$$(CONFIGURATION).config.cache $$(TOP)/sdks/out/$(1)$(5)-$(2)-$$(CONFIGURATION)
-$$(eval $$(call TargetTemplate,$(1),$(2)))
+$$(eval $$(call TargetTemplate,$(1)$(5),$(2)))
.PHONY: configure-$(1)
-configure-$(1): configure-$(1)-$(2)
+configure-$(1): configure-$(1)$(5)-$(2)
.PHONY: build-$(1)
-build-$(1): build-$(1)-$(2)
+build-$(1): build-$(1)$(5)-$(2)
.PHONY: package-$(1)
-package-$(1): package-$(1)-$(2) $$(ADDITIONAL_PACKAGE_DEPS)
+package-$(1): package-$(1)$(5)-$(2) $$(ADDITIONAL_PACKAGE_DEPS)
.PHONY: archive-$(1)
archive-$(1): package-$(1)
ifneq ($(4),yes)
-$(1)_ARCHIVE += $(1)-$(2)-$$(CONFIGURATION)
+$(1)_ARCHIVE += $(1)$(5)-$(2)-$$(CONFIGURATION)
endif
endef