summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorBoris Nagaev <bnagaev@gmail.com>2015-10-14 22:36:56 (GMT)
committerBoris Nagaev <bnagaev@gmail.com>2015-10-15 21:43:39 (GMT)
commit0ef2cb3b4067a53f66e328f3d6dbee359d677ffd (patch)
tree0baca5d731bb3fa111c2dc0f103e8716580b6243 /src
parentabe8bc23e97c3309400b071bf19e105ed9d918ec (diff)
downloadmxe-0ef2cb3b4067a53f66e328f3d6dbee359d677ffd.zip
mxe-0ef2cb3b4067a53f66e328f3d6dbee359d677ffd.tar.gz
mxe-0ef2cb3b4067a53f66e328f3d6dbee359d677ffd.tar.bz2
cmake: no -DCMAKE_TOOLCHAIN_FILE with some options
CMake with a toolchain file doesn't work properly in some modes. * --build * --system-information * -E close #932
Diffstat (limited to 'src')
-rw-r--r--src/mxe-conf.mk18
1 files changed, 15 insertions, 3 deletions
diff --git a/src/mxe-conf.mk b/src/mxe-conf.mk
index 5a0fd6b..5d814de 100644
--- a/src/mxe-conf.mk
+++ b/src/mxe-conf.mk
@@ -46,9 +46,21 @@ define $(PKG)_BUILD_COMMON
) > '$(CMAKE_TOOLCHAIN_FILE)'
#create prefixed cmake wrapper script
- (echo '#!/bin/sh'; \
- echo 'echo "== Using MXE toolchain: $(CMAKE_TOOLCHAIN_FILE)"'; \
- echo 'exec cmake -DCMAKE_TOOLCHAIN_FILE="$(CMAKE_TOOLCHAIN_FILE)" "$$@"') \
+ (echo '#!/usr/bin/env bash'; \
+ echo 'echo "== Using MXE wrapper: $(PREFIX)/bin/$(TARGET)-cmake"'; \
+ echo 'unset NO_MXE_TOOLCHAIN'; \
+ echo 'if echo -- "$$@" | grep -Ewq "(--build|-E|--system-information)" ; then'; \
+ echo ' NO_MXE_TOOLCHAIN=1'; \
+ echo 'fi'; \
+ echo 'if [[ "$$NO_MXE_TOOLCHAIN" == "1" ]]; then'; \
+ echo ' echo "== Skip using MXE toolchain: $(CMAKE_TOOLCHAIN_FILE)"'; \
+ echo ' # see https://github.com/mxe/mxe/issues/932'; \
+ echo ' exec cmake "$$@"'; \
+ echo 'else'; \
+ echo ' echo "== Using MXE toolchain: $(CMAKE_TOOLCHAIN_FILE)"'; \
+ echo ' exec cmake -DCMAKE_TOOLCHAIN_FILE="$(CMAKE_TOOLCHAIN_FILE)" "$$@"'; \
+ echo 'fi'; \
+ ) \
> '$(PREFIX)/bin/$(TARGET)-cmake'
chmod 0755 '$(PREFIX)/bin/$(TARGET)-cmake'