diff options
Diffstat (limited to 'tests/auto/corelib/plugin')
7 files changed, 36 insertions, 48 deletions
diff --git a/tests/auto/corelib/plugin/qplugin/tst_qplugin.cpp b/tests/auto/corelib/plugin/qplugin/tst_qplugin.cpp index aa85a7c35b..0ad0fc7076 100644 --- a/tests/auto/corelib/plugin/qplugin/tst_qplugin.cpp +++ b/tests/auto/corelib/plugin/qplugin/tst_qplugin.cpp @@ -228,6 +228,9 @@ static qsizetype locateMetadata(const uchar *data, qsizetype len) void tst_QPlugin::scanInvalidPlugin() { +#if defined(Q_OS_MACOS) && defined(Q_PROCESSOR_ARM) + QSKIP("This test crashes on ARM macOS"); +#endif const auto fileNames = dir.entryList({"*invalid*"}, QDir::Files); QString invalidPluginName; if (fileNames.isEmpty()) diff --git a/tests/auto/corelib/plugin/qpluginloader/machtest/machtest.pro b/tests/auto/corelib/plugin/qpluginloader/machtest/machtest.pro index 795dd89895..7cfb7920c0 100644 --- a/tests/auto/corelib/plugin/qpluginloader/machtest/machtest.pro +++ b/tests/auto/corelib/plugin/qpluginloader/machtest/machtest.pro @@ -1,15 +1,11 @@ TEMPLATE = subdirs SUBDIRS = \ - machtest_i386.pro \ + machtest_arm64.pro \ machtest_x86_64.pro \ - machtest_ppc64.pro \ machtest_fat.pro machtest_fat-pro.depends = \ - machtest_i386.pro \ - machtest_x86_64.pro \ - machtest_ppc64.pro - -machtest_ppc64-pro.depends = \ + machtest_arm64.pro \ machtest_x86_64.pro + diff --git a/tests/auto/corelib/plugin/qpluginloader/machtest/machtest_arm64.pro b/tests/auto/corelib/plugin/qpluginloader/machtest/machtest_arm64.pro new file mode 100644 index 0000000000..c2856a8af0 --- /dev/null +++ b/tests/auto/corelib/plugin/qpluginloader/machtest/machtest_arm64.pro @@ -0,0 +1,3 @@ +QMAKE_APPLE_DEVICE_ARCHS = arm64 +include(machtest.pri) + diff --git a/tests/auto/corelib/plugin/qpluginloader/machtest/machtest_fat.pro b/tests/auto/corelib/plugin/qpluginloader/machtest/machtest_fat.pro index 9c34a873bc..57c6654984 100644 --- a/tests/auto/corelib/plugin/qpluginloader/machtest/machtest_fat.pro +++ b/tests/auto/corelib/plugin/qpluginloader/machtest/machtest_fat.pro @@ -7,41 +7,42 @@ load(qt) # Generate a fat binary with three architectures fat_all.target = good.fat.all.dylib fat_all.commands = lipo -create -output $@ \ - -arch ppc64 good.ppc64.dylib \ - -arch i386 good.i386.dylib \ + -arch arm64 good.arm64.dylib \ -arch x86_64 good.x86_64.dylib -fat_all.depends += good.i386.dylib good.x86_64.dylib good.ppc64.dylib +fat_all.depends += good.arm64.dylib good.x86_64.dylib -fat_no_i386.target = good.fat.no-i386.dylib -fat_no_i386.commands = lipo -create -output $@ -arch x86_64 good.x86_64.dylib -arch ppc64 good.ppc64.dylib -fat_no_i386.depends += good.x86_64.dylib good.ppc64.dylib +fat_no_arm64.target = good.fat.no-arm64.dylib +fat_no_arm64.commands = lipo -create -output $@ -arch x86_64 good.x86_64.dylib +fat_no_arm64.depends += good.x86_64.dylib fat_no_x86_64.target = good.fat.no-x86_64.dylib -fat_no_x86_64.commands = lipo -create -output $@ -arch i386 good.i386.dylib -arch ppc64 good.ppc64.dylib -fat_no_x86_64.depends += good.i386.dylib good.ppc64.dylib +fat_no_x86_64.commands = lipo -create -output $@ -arch arm64 good.arm64.dylib +fat_no_x86_64.depends += good.arm64.dylib -stub_i386.commands = $$QMAKE_CXX -shared -arch i386 -o stub.i386.dylib $$PWD/stub.cpp -stub_i386.depends += $$PWD/stub.cpp +stub_flags = -L$$system(xcrun --show-sdk-path)/usr/lib/ -stdlib=libc++ -stub_x86_64.commands = $$QMAKE_CXX -shared -arch x86_64 -o stub.x86_64.dylib $$PWD/stub.cpp +stub_arm64.commands = $$QMAKE_CXX $$stub_flags -shared -arch arm64 -o stub.arm64.dylib $$PWD/stub.cpp +stub_arm64.depends += $$PWD/stub.cpp + +stub_x86_64.commands = $$QMAKE_CXX $$stub_flags -shared -arch x86_64 -o stub.x86_64.dylib $$PWD/stub.cpp stub_x86_64.depends += $$PWD/stub.cpp -fat_stub_i386.target = good.fat.stub-i386.dylib -fat_stub_i386.commands = lipo -create -output $@ -arch ppc64 good.ppc64.dylib -arch i386 stub.i386.dylib -fat_stub_i386.depends += stub_i386 good.x86_64.dylib good.ppc64.dylib +fat_stub_arm64.target = good.fat.stub-arm64.dylib +fat_stub_arm64.commands = lipo -create -output $@ -arch arm64 stub.arm64.dylib +fat_stub_arm64.depends += stub_arm64 good.x86_64.dylib fat_stub_x86_64.target = good.fat.stub-x86_64.dylib -fat_stub_x86_64.commands = lipo -create -output $@ -arch ppc64 good.ppc64.dylib -arch x86_64 stub.x86_64.dylib -fat_stub_x86_64.depends += stub_x86_64 good.i386.dylib good.ppc64.dylib +fat_stub_x86_64.commands = lipo -create -output $@ -arch x86_64 stub.x86_64.dylib +fat_stub_x86_64.depends += stub_x86_64 good.arm64.dylib bad.commands = $$PWD/generate-bad.pl bad.depends += $$PWD/generate-bad.pl -MYTARGETS = $$fat_all.depends fat_all fat_no_x86_64 fat_no_i386 \ - fat_stub_i386 fat_stub_x86_64 bad stub_i386 stub_x86_64 +MYTARGETS = $$fat_all.depends fat_all fat_no_x86_64 fat_no_arm64 \ + fat_stub_arm64 fat_stub_x86_64 bad stub_arm64 stub_x86_64 all.depends += $$MYTARGETS QMAKE_EXTRA_TARGETS += $$MYTARGETS all -QMAKE_CLEAN += $$fat_all.target $$fat_no_i386.target $$fat_no_x86_64.target \ - $$fat_stub_i386.target $$fat_stub_x86_64.target \ +QMAKE_CLEAN += $$fat_all.target $$fat_no_arm64.target $$fat_no_x86_64.target \ + $$fat_stub_arm64.target $$fat_stub_x86_64.target \ "bad*.dylib" diff --git a/tests/auto/corelib/plugin/qpluginloader/machtest/machtest_i386.pro b/tests/auto/corelib/plugin/qpluginloader/machtest/machtest_i386.pro deleted file mode 100644 index bfb2e0930c..0000000000 --- a/tests/auto/corelib/plugin/qpluginloader/machtest/machtest_i386.pro +++ /dev/null @@ -1,3 +0,0 @@ -QMAKE_APPLE_DEVICE_ARCHS = i386 -include(machtest.pri) - diff --git a/tests/auto/corelib/plugin/qpluginloader/machtest/machtest_ppc64.pro b/tests/auto/corelib/plugin/qpluginloader/machtest/machtest_ppc64.pro deleted file mode 100644 index a73f97ccc6..0000000000 --- a/tests/auto/corelib/plugin/qpluginloader/machtest/machtest_ppc64.pro +++ /dev/null @@ -1,9 +0,0 @@ -QMAKE_APPLE_DEVICE_ARCHS = ppc64 -include(machtest.pri) - -OTHER_FILES += ppcconverter.pl - -# Current macOS toolchains have no compiler for PPC anymore -# So we fake it by converting an x86-64 binary to (little-endian!) PPC64 -goodlib.commands = $$PWD/ppcconverter.pl $< $@ -goodlib.depends = good.x86_64.dylib $$PWD/ppcconverter.pl diff --git a/tests/auto/corelib/plugin/qpluginloader/tst_qpluginloader.cpp b/tests/auto/corelib/plugin/qpluginloader/tst_qpluginloader.cpp index 8d548f5260..ce8057372c 100644 --- a/tests/auto/corelib/plugin/qpluginloader/tst_qpluginloader.cpp +++ b/tests/auto/corelib/plugin/qpluginloader/tst_qpluginloader.cpp @@ -341,22 +341,19 @@ void tst_QPluginLoader::loadMachO_data() # ifdef Q_PROCESSOR_X86_64 QTest::newRow("machtest/good.x86_64.dylib") << int(QMachOParser::QtMetaDataSection); - QTest::newRow("machtest/good.i386.dylib") << int(QMachOParser::NotSuitable); + QTest::newRow("machtest/good.arm64.dylib") << int(QMachOParser::NotSuitable); QTest::newRow("machtest/good.fat.no-x86_64.dylib") << int(QMachOParser::NotSuitable); - QTest::newRow("machtest/good.fat.no-i386.dylib") << int(QMachOParser::QtMetaDataSection); -# elif defined(Q_PROCESSOR_X86_32) - QTest::newRow("machtest/good.i386.dylib") << int(QMachOParser::QtMetaDataSection); + QTest::newRow("machtest/good.fat.no-arm64.dylib") << int(QMachOParser::QtMetaDataSection); +# elif defined(Q_PROCESSOR_ARM) + QTest::newRow("machtest/good.arm64.dylib") << int(QMachOParser::QtMetaDataSection); QTest::newRow("machtest/good.x86_64.dylib") << int(QMachOParser::NotSuitable); - QTest::newRow("machtest/good.fat.no-i386.dylib") << int(QMachOParser::NotSuitable); + QTest::newRow("machtest/good.fat.no-arm64.dylib") << int(QMachOParser::NotSuitable); QTest::newRow("machtest/good.fat.no-x86_64.dylib") << int(QMachOParser::QtMetaDataSection); # endif -# ifndef Q_PROCESSOR_POWER_64 - QTest::newRow("machtest/good.ppc64.dylib") << int(QMachOParser::NotSuitable); -# endif QTest::newRow("machtest/good.fat.all.dylib") << int(QMachOParser::QtMetaDataSection); QTest::newRow("machtest/good.fat.stub-x86_64.dylib") << int(QMachOParser::NotSuitable); - QTest::newRow("machtest/good.fat.stub-i386.dylib") << int(QMachOParser::NotSuitable); + QTest::newRow("machtest/good.fat.stub-arm64.dylib") << int(QMachOParser::NotSuitable); QDir d(QFINDTESTDATA("machtest")); QStringList badlist = d.entryList(QStringList() << "bad*.dylib"); |