Fix android architecture detection

Android is also unix, so can pick up the host 'arch' binary when
rerunning configure. This patch splits the names so we don't end up
confusing target and host binaries.

Task-number: QTBUG-76445
Change-Id: Ib65251a514e45ad8873f523d71c17e13e56ea58a
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
This commit is contained in:
Allan Sandfeld Jensen 2019-07-09 14:59:00 +02:00
parent 89984a8a61
commit d9fb502b20
4 changed files with 12 additions and 10 deletions

View File

@ -1,2 +1 @@
TARGET = arch
SOURCES = arch.cpp

View File

@ -1,2 +1,2 @@
option(host_build)
include(arch.pro)
SOURCES = arch.cpp

View File

@ -233,12 +233,14 @@
"label": "target architecture",
"type": "architecture",
"test": "arch",
"output": "arch",
"log": "arch"
},
"host_architecture": {
"label": "host architecture",
"type": "architecture",
"test": "arch",
"output": "arch_host",
"host": true,
"pro": "arch_host.pro",
"log": "arch"

View File

@ -267,15 +267,16 @@ defineTest(qtConfTest_architecture) {
error("Could not determine $$eval($${1}.label). See config.log for details.")
test = $$eval($${1}.test)
output = $$eval($${1}.output)
test_out_dir = $$OUT_PWD/$$basename(QMAKE_CONFIG_TESTS_DIR)/$$test
unix:exists($$test_out_dir/arch): \
content = $$cat($$test_out_dir/arch, blob)
else: win32:exists($$test_out_dir/arch.exe): \
content = $$cat($$test_out_dir/arch.exe, blob)
else: android:exists($$test_out_dir/libarch.so): \
content = $$cat($$test_out_dir/libarch.so, blob)
else: wasm:exists($$test_out_dir/arch.wasm): \
content = $$cat($$test_out_dir/arch.wasm, blob)
unix:exists($$test_out_dir/$$output): \
content = $$cat($$test_out_dir/$$output, blob)
else: win32:exists($$test_out_dir/$${output}.exe): \
content = $$cat($$test_out_dir/$${output}.exe, blob)
else: android:exists($$test_out_dir/lib$${output}.so): \
content = $$cat($$test_out_dir/lib$${output}.so, blob)
else: wasm:exists($$test_out_dir/$${output}.wasm): \
content = $$cat($$test_out_dir/$${output}.wasm, blob)
else: \
error("$$eval($${1}.label) detection binary not found.")