diff options
Diffstat (limited to 'mkspecs')
26 files changed, 161 insertions, 268 deletions
diff --git a/mkspecs/blackberry-armv7le-qcc/qmake.conf b/mkspecs/blackberry-armv7le-qcc/qmake.conf index 2e24e4e0d3..cfcd2aecf0 100644 --- a/mkspecs/blackberry-armv7le-qcc/qmake.conf +++ b/mkspecs/blackberry-armv7le-qcc/qmake.conf @@ -16,6 +16,7 @@ contains(QT_CONFIG, stack-protector-strong) { } QMAKE_CFLAGS += -mcpu=cortex-a9 -mtune=cortex-a9 -mthumb -D_FORTIFY_SOURCE=2 +QMAKE_CXXFLAGS += -mcpu=cortex-a9 -mtune=cortex-a9 -mthumb -D_FORTIFY_SOURCE=2 QMAKE_LFLAGS_SHLIB += -Wl,-z,relro -Wl,-z,now diff --git a/mkspecs/common/clang.conf b/mkspecs/common/clang.conf index 4f141351c1..ace2496f10 100644 --- a/mkspecs/common/clang.conf +++ b/mkspecs/common/clang.conf @@ -20,13 +20,3 @@ QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE QMAKE_CXXFLAGS_CXX11 = -std=c++11 QMAKE_LFLAGS_CXX11 = - -QMAKE_CFLAGS_SSE2 += -msse2 -QMAKE_CFLAGS_SSE3 += -msse3 -QMAKE_CFLAGS_SSSE3 += -mssse3 -QMAKE_CFLAGS_SSE4_1 += -msse4.1 -QMAKE_CFLAGS_SSE4_2 += -msse4.2 -QMAKE_CFLAGS_AVX += -mavx -QMAKE_CFLAGS_AVX2 += -mavx2 -QMAKE_CFLAGS_IWMMXT += -mcpu=iwmmxt -QMAKE_CFLAGS_NEON += -mfpu=neon diff --git a/mkspecs/common/ios/qmake.conf b/mkspecs/common/ios/qmake.conf index 39465aa765..3c477438a3 100644 --- a/mkspecs/common/ios/qmake.conf +++ b/mkspecs/common/ios/qmake.conf @@ -15,9 +15,6 @@ QMAKE_RANLIB = ranlib -s QMAKE_LINK = $$QMAKE_CXX QMAKE_LINK_SHLIB = $$QMAKE_CXX -# Basic iOS frameworks needed for any GUI app -QMAKE_LFLAGS += -framework Foundation -framework UIKit -framework QuartzCore -lz - # No OpenGL ES1 QMAKE_INCDIR_OPENGL_ES1 = QMAKE_LIBDIR_OPENGL_ES1 = diff --git a/mkspecs/common/mac.conf b/mkspecs/common/mac.conf index 1b480aa267..4421665370 100644 --- a/mkspecs/common/mac.conf +++ b/mkspecs/common/mac.conf @@ -4,7 +4,7 @@ !load(device_config): error(Could not successfully load device configuration) -QMAKE_PLATFORM += mac +QMAKE_PLATFORM += mac darwin QMAKE_RESOURCE = /Developer/Tools/Rez QMAKE_EXTENSION_SHLIB = dylib diff --git a/mkspecs/common/macx.conf b/mkspecs/common/macx.conf index 48efae5d1e..ad54612f22 100644 --- a/mkspecs/common/macx.conf +++ b/mkspecs/common/macx.conf @@ -2,7 +2,7 @@ # qmake configuration for common OS X # -QMAKE_PLATFORM += macx +QMAKE_PLATFORM += osx macx QMAKE_MAC_SDK = macosx include(mac.conf) diff --git a/mkspecs/darwin-g++/qmake.conf b/mkspecs/darwin-g++/qmake.conf index 24a6224b7c..ab333b1684 100644 --- a/mkspecs/darwin-g++/qmake.conf +++ b/mkspecs/darwin-g++/qmake.conf @@ -5,7 +5,7 @@ # MAKEFILE_GENERATOR = UNIX -QMAKE_PLATFORM = mac macx +QMAKE_PLATFORM = osx macx mac darwin CONFIG += native_precompiled_headers DEFINES += __USE_WS_X11__ diff --git a/mkspecs/devices/linux-imx6-g++/qeglfshooks_imx6.cpp b/mkspecs/devices/linux-imx6-g++/qeglfshooks_imx6.cpp index a1fd633c28..6f59b73921 100644 --- a/mkspecs/devices/linux-imx6-g++/qeglfshooks_imx6.cpp +++ b/mkspecs/devices/linux-imx6-g++/qeglfshooks_imx6.cpp @@ -51,6 +51,7 @@ public: virtual QSize screenSize() const; virtual EGLNativeWindowType createNativeWindow(const QSize &size, const QSurfaceFormat &format); virtual void destroyNativeWindow(EGLNativeWindowType window); + virtual EGLNativeDisplayType platformDisplay() const; private: QSize mScreenSize; @@ -72,6 +73,11 @@ QSize QEglFSImx6Hooks::screenSize() const return mScreenSize; } +EGLNativeDisplayType QEglFSImx6Hooks::platformDisplay() const +{ + return mNativeDisplay; +} + EGLNativeWindowType QEglFSImx6Hooks::createNativeWindow(const QSize &size, const QSurfaceFormat &format) { Q_UNUSED(format); diff --git a/mkspecs/features/configure.prf b/mkspecs/features/configure.prf index b4569df6d5..39144e7216 100644 --- a/mkspecs/features/configure.prf +++ b/mkspecs/features/configure.prf @@ -7,9 +7,6 @@ equals(MAKEFILE_GENERATOR, UNIX) { QMAKE_MAKE = mingw32-make } else:if(equals(MAKEFILE_GENERATOR, MSVC.NET)|equals(MAKEFILE_GENERATOR, MSBUILD)) { QMAKE_MAKE = nmake -} else:ios { - # iOS unsets MAKEFILE_GENERATOR in its default_pre.prf - QMAKE_MAKE = make } else { error("Configure tests are not supported with the $$MAKEFILE_GENERATOR Makefile generator.") } diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf index d8bef46481..59c3fafac3 100644 --- a/mkspecs/features/create_cmake.prf +++ b/mkspecs/features/create_cmake.prf @@ -60,12 +60,6 @@ contains(CMAKE_BIN_DIR, "^\\.\\./.*") { CMAKE_DLL_DIR_IS_ABSOLUTE = $$CMAKE_LIB_DIR_IS_ABSOLUTE } -CMAKE_HOST_DATA_DIR = $$cmakeRelativePath($$[QT_HOST_DATA], $$[QT_INSTALL_PREFIX]) -contains(CMAKE_HOST_DATA_DIR, "^\\.\\./.*") { - CMAKE_HOST_DATA_DIR = $$[QT_HOST_DATA]/ - CMAKE_HOST_DATA_DIR_IS_ABSOLUTE = True -} - static|staticlib:CMAKE_STATIC_TYPE = true CMAKE_DEBUG_TYPE = diff --git a/mkspecs/features/gcov.prf b/mkspecs/features/gcov.prf new file mode 100644 index 0000000000..330831fc0e --- /dev/null +++ b/mkspecs/features/gcov.prf @@ -0,0 +1,31 @@ +# +# Tested with gcov 4.8.1 +# http://gcc.gnu.org/onlinedocs/gcc-4.8.1/gcc/Gcov.html + +# To instrument a Qt application or library with the gcov coverage +# tool, do `CONFIG+=gcov' in the application .pro file. +# +# To instrument Qt itself with gcov, use the `-gcov' configure +# option. + +# The .gcno file is generated when the source file is compiled. +# The .gcda file is generated when a program is executed. + +# Example how to generate the html output after you've run the program or test +# +# lcov --capture --directory . --output-file coverage-gcov.info --no-external +# lcov --output-file coverage-gcov.info --remove coverage-gcov.info '*.moc*' '.*rcc*' '*3rdparty*' +# genhtml coverage-gcov.info --output-directory doc/coverage + +# If you want to use gcov directly, you most likely need to manually move the .gcda and .gcno files +# along with the program. +# +# mv .obj/debug-shared/tst_example.gc* . +# gcov -b -c tst_example.cpp + +QMAKE_CFLAGS += -fprofile-arcs -ftest-coverage +QMAKE_CXXFLAGS += -fprofile-arcs -ftest-coverage +QMAKE_OBJECTIVE_CFLAGS += -fprofile-arcs -ftest-coverage +QMAKE_LFLAGS += -fprofile-arcs -ftest-coverage + +QMAKE_CLEAN += $(OBJECTS_DIR)*.gcno and $(OBJECTS_DIR)*.gcda diff --git a/mkspecs/features/ios/default_post.prf b/mkspecs/features/ios/default_post.prf index e9d2149351..654255eb1f 100644 --- a/mkspecs/features/ios/default_post.prf +++ b/mkspecs/features/ios/default_post.prf @@ -1,40 +1,44 @@ -CONFIG(qt):contains(QT, gui):equals(TEMPLATE, app): CONFIG += gui_app +equals(TEMPLATE, app) { + qt:app_bundle:!macx-xcode { + # For Qt applications we want Xcode project files as the generated output, + # but since qmake doesn't handle the transition between makefiles and Xcode + # project files (which happens when using subdirs), we create a wrapper + # makefile that takes care of generating the Xcode project, and allows + # building by calling out to xcodebuild. + TEMPLATE = aux -isEmpty(MAKEFILE_GENERATOR) { - gui_app:app_bundle: \ - # For applications we want Xcode project files - MAKEFILE_GENERATOR = XCODE - else: \ - # For libs, etc we still want regular Makefiles - MAKEFILE_GENERATOR = UNIX -} + CONFIG -= have_target qt staticlib dll + SOURCES = + RESOURCES = + INSTALLS = + + TARGET_XCODE_PROJECT_DIR = $${TARGET}.xcodeproj + + system("cd $$system_quote($$OUT_PWD) && $${QMAKE_QMAKE} $$system_quote($$_PRO_FILE_) -spec macx-xcode") -gui_app { - # We have to do the link and dependency resolution for the platform plugin - # manually, since QTPLUGIN and the prl lookup logic does not support - # the -force_load link style. The -force_load option ensures that all - # symbols from the static library are included, not just the ones the - # linker have seen a use for so far. We need this because we load the platform - # plugin from the platform plugin itself, using Q_IMPORT_PLUGIN. - lib_path_and_base = $$[QT_INSTALL_PLUGINS/get]/platforms/libqios$$qtPlatformTargetSuffix() - LIBS += "-force_load $${lib_path_and_base}.$${QMAKE_EXTENSION_STATICLIB}" - LIBS += $$fromfile($${lib_path_and_base}.prl, QMAKE_PRL_LIBS) + # We use xcodebuild to do the actual build, but filter out the verbose + # output that shows all environment variables for each build step. + xcodebuild_build.commands = "@xcodebuild build | grep -v setenv" + QMAKE_EXTRA_TARGETS += xcodebuild_build + all.depends = xcodebuild_build + QMAKE_EXTRA_TARGETS += all - # Which means we don't want the auto-generated import for the platform plugin - CONFIG -= import_qpa_plugin + # We do the same for the clean action + xcodebuild_clean.commands = "@xcodebuild clean" + QMAKE_EXTRA_TARGETS += xcodebuild_clean + clean.depends = xcodebuild_clean + QMAKE_EXTRA_TARGETS += clean - !no_main_wrapper { - # We link the iosmain library manually as well, since it's not really a plugin - lib_name = qiosmain - lib_path_and_base = $$[QT_INSTALL_PLUGINS/get]/platforms/lib$${lib_name}$$qtPlatformTargetSuffix() - LIBS += -L$$[QT_INSTALL_PLUGINS/get]/platforms -l$${lib_name}$$qtPlatformTargetSuffix() - LIBS += $$fromfile($${lib_path_and_base}.prl, QMAKE_PRL_LIBS) - DEFINES += main=qt_main + # And distclean + xcodebuild_distclean.commands = "$(DEL_FILE) -R $$TARGET_XCODE_PROJECT_DIR" + QMAKE_EXTRA_TARGETS += xcodebuild_distclean + distclean.depends = xcodebuild_distclean + QMAKE_EXTRA_TARGETS += distclean } } -contains(MAKEFILE_GENERATOR, XCODE) { +macx-xcode { ios_device_family.name = TARGETED_DEVICE_FAMILY ios_device_family.value = $$QMAKE_IOS_TARGETED_DEVICE_FAMILY QMAKE_MAC_XCODE_SETTINGS += ios_device_family @@ -46,24 +50,27 @@ isEmpty(QT_ARCH) { # but we fail to pick up the architecture since we're not passing -arch # yet. Xcode does not seem to have a way to run the shared toolchain # in a way that will automatically do this (for example xcrun -sdk). - contains(QMAKE_MAC_SDK, iphoneos.*): QT_ARCH = armv7 + contains(QMAKE_MAC_SDK, iphoneos.*): QT_ARCH = arm else: QT_ARCH = i386 # Simulator -} else { - # Fix up the QT_ARCH to be more specific - equals(QT_ARCH, arm) { - # Samsung S5PC100, Apple A4, A5, A5X - QT_ARCH = armv7 - - # FIXME: How do we support armv7s when Qt can't do universal builds? - } } -!equals(MAKEFILE_GENERATOR, XCODE) { - arch_flag = -arch $$QT_ARCH - QMAKE_CFLAGS += $$arch_flag - QMAKE_CXXFLAGS += $$arch_flag - QMAKE_OBJECTIVE_CFLAGS += $$arch_flag - QMAKE_LFLAGS += $$arch_flag +# Be more specific about which architecture we're targeting +equals(QT_ARCH, arm): \ + actual_archs = armv7 +else: \ + actual_archs = $$QT_ARCH + +macx-xcode { + QMAKE_XCODE_ARCHS = $$actual_archs +} else { + for(arch, actual_archs): \ + arch_flags += -arch $$arch + + QMAKE_CFLAGS += $$arch_flags + QMAKE_CXXFLAGS += $$arch_flags + QMAKE_OBJECTIVE_CFLAGS += $$arch_flags + QMAKE_LFLAGS += $$arch_flags } +unset(actual_archs) load(default_post) diff --git a/mkspecs/features/ios/default_pre.prf b/mkspecs/features/ios/default_pre.prf index 7cfbc03eb5..5db8d98d6c 100644 --- a/mkspecs/features/ios/default_pre.prf +++ b/mkspecs/features/ios/default_pre.prf @@ -1,5 +1,3 @@ -# Unset makefile generator, so we can auto-detect value in default_post -!macx-xcode: unset(MAKEFILE_GENERATOR) load(default_pre) diff --git a/mkspecs/features/ios/qt.prf b/mkspecs/features/ios/qt.prf new file mode 100644 index 0000000000..80d4907acd --- /dev/null +++ b/mkspecs/features/ios/qt.prf @@ -0,0 +1,24 @@ + +equals(TEMPLATE, app):contains(QT, gui(-private)?) { + LIBS *= -L$$[QT_INSTALL_PLUGINS/get]/platforms + + lib_name = qios + lib_path_and_base = $$[QT_INSTALL_PLUGINS/get]/platforms/lib$${lib_name}$$qtPlatformTargetSuffix() + LIBS += -l$${lib_name}$$qtPlatformTargetSuffix() $$fromfile($${lib_path_and_base}.prl, QMAKE_PRL_LIBS) + + # By marking qt_registerPlatformPlugin as undefined, we ensure that + # the plugin.o translation unit is considered for inclusion in + # the final binary, which in turn ensures that the plugin's + # static initializer is included and run. + QMAKE_LFLAGS += -u _qt_registerPlatformPlugin + + # We do link and dependency resolution for the platform plugin + # manually, since we know we always need the plugin, so we don't + # need to generate an import for it. + CONFIG -= import_qpa_plugin + + # FIXME: Solve using 'ld -r -alias -unexported_symbol' instead + !no_main_wrapper: DEFINES += main=qt_user_main +} + +load(qt) diff --git a/mkspecs/features/java.prf b/mkspecs/features/java.prf index d8ceb536a7..7815b5ef38 100644 --- a/mkspecs/features/java.prf +++ b/mkspecs/features/java.prf @@ -12,10 +12,11 @@ android { isEmpty(BUILD_TOOLS_REVISION): BUILD_TOOLS_REVISION = 17.0.0 } - !exists($$SDK_ROOT/platforms/$$API_VERSION/android.jar) { - error("The Path $$SDK_ROOT/platforms/$$API_VERSION/android.jar does not exist. Make sure the ANDROID_SDK_ROOT and ANDROID_API_VERSION environment variables are correctly set.") + ANDROID_JAR_FILE = $$SDK_ROOT/platforms/$$API_VERSION/android.jar + !exists($$ANDROID_JAR_FILE) { + error("The Path $$ANDROID_JAR_FILE does not exist. Make sure the ANDROID_SDK_ROOT and ANDROID_API_VERSION environment variables are correctly set.") } - JAVACLASSPATH += $$SDK_ROOT/platforms/$$API_VERSION/android.jar + JAVACLASSPATH += $$ANDROID_JAR_FILE # FIXME: This is a hack to work around some hardcoded values in the android.prf. The # android.prf should be fixed and this should be removed. @@ -37,7 +38,7 @@ CONFIG += plugin no_plugin_name_prefix javac.input = JAVASOURCES javac.output = $$CLASS_DIR javac.CONFIG += combine -javac.commands = javac -source 6 -target 6 -cp $$shell_quote($$shell_path($$join(JAVACLASSPATH, $$QMAKE_DIRLIST_SEP))) -d $$shell_quote($$CLASS_DIR) ${QMAKE_FILE_IN} +javac.commands = javac -source 6 -target 6 -Xlint:unchecked -bootclasspath $$ANDROID_JAR_FILE -cp $$shell_quote($$shell_path($$join(JAVACLASSPATH, $$QMAKE_DIRLIST_SEP))) -d $$shell_quote($$CLASS_DIR) ${QMAKE_FILE_IN} # Force rebuild every time, because we don't know the paths of the destination files # as they depend on the code. javac.depends = FORCE diff --git a/mkspecs/features/qt_common.prf b/mkspecs/features/qt_common.prf index 10b7736749..3c5d4b9dd6 100644 --- a/mkspecs/features/qt_common.prf +++ b/mkspecs/features/qt_common.prf @@ -24,31 +24,34 @@ warnings_are_errors:warning_clean { # This setting is compiler-dependent anyway because it depends on the version of the # compiler. clang { - # Apple clang 4.0+ or clang 3.1+ - greaterThan(QT_CLANG_MAJOR_VERSION, 3) | \ - if(equals(QT_CLANG_MAJOR_VERSION, 3):greaterThan(QT_CLANG_MINOR_VERSION, 1)) | \ - greaterThan(QT_APPLE_CLANG_MAJOR_VERSION, 3) { - QMAKE_CXXFLAGS += -Werror -Wno-error=\\$${LITERAL_HASH}warnings $$WERROR + # Apple clang 4.0-4.2 + # Regular clang is not tested + ver = $${QT_APPLE_CLANG_MAJOR_VERSION}.$${QT_APPLE_CLANG_MINOR_VERSION} + contains(ver, "4\\.[012]") { + QMAKE_CXXFLAGS += -Werror -Wno-error=\\$${LITERAL_HASH}warnings -Wno-error=deprecated $$WERROR } - } else:intel_icc { - # Intel CC 13.0+ (a.k.a. Intel Composer XE 2013) - greaterThan(QT_ICC_MAJOR_VERSION, 12) { + } else:intel_icc:linux { + # Intel CC 13.0 - 14.0, on Linux only + ver = $${QT_ICC_MAJOR_VERSION}.$${QT_ICC_MINOR_VERSION} + linux:contains(ver, "(13\\.|14\\.0)") { # 177: function "entity" was declared but never referenced # (too aggressive; ICC reports even for functions created due to template instantiation) # 1224: #warning directive + # 1478: function "entity" (declared at line N) was declared deprecated # 1881: argument must be a constant null pointer value # (NULL in C++ is usually a literal 0) - QMAKE_CXXFLAGS += -Werror -ww177,1224,1881 $$WERROR + QMAKE_CXXFLAGS += -Werror -ww177,1224,1478,1881 $$WERROR } - } else:gcc { - # GCC 4.6+ - # note: there was no GCC 3.6 and this assumes no one is crazy enough to compile Qt with GCC 2.7 - greaterThan(QT_GCC_MAJOR_VERSION, 4)|greaterThan(QT_GCC_MINOR_VERSION, 5) { - QMAKE_CXXFLAGS += -Werror -Wno-error=cpp $$WERROR + } else:gcc:!clang:!intel_icc { + # GCC 4.6-4.8 + ver = $${QT_GCC_MAJOR_VERSION}.$${QT_GCC_MINOR_VERSION} + contains(ver, "4\\.[678]") { + QMAKE_CXXFLAGS += -Werror -Wno-error=cpp -Wno-error=deprecated $$WERROR # GCC prints this bogus warning, after it has inlined a lot of code # error: assuming signed overflow does not occur when assuming that (X + c) < X is always false QMAKE_CXXFLAGS += -Wno-error=strict-overflow } } + unset(ver) } diff --git a/mkspecs/features/qt_docs.prf b/mkspecs/features/qt_docs.prf index 85e2db25bc..be3cd5273c 100644 --- a/mkspecs/features/qt_docs.prf +++ b/mkspecs/features/qt_docs.prf @@ -34,7 +34,7 @@ qtmver.value = $$replace(qtver.value, ^(\\d+\\.\\d+).*$, \\1) qtvertag.name = QT_VERSION_TAG qtvertag.value = $$replace(qtver.value, \.,) qtdocs.name = QT_INSTALL_DOCS -qtdocs.value = $$[QT_INSTALL_DOCS/get] +qtdocs.value = $$[QT_INSTALL_DOCS/src] qtAddToolEnv(QDOC, qtver qtmver qtvertag qtdocs) doc_command = $$QDOC $$QMAKE_DOCS prepare_docs { diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf index 07821fd09b..c8d151ce4d 100644 --- a/mkspecs/features/qt_functions.prf +++ b/mkspecs/features/qt_functions.prf @@ -71,11 +71,6 @@ defineTest(qtAddModule) { MODULE_LIBS_ADD = $$MODULE_LIBS MODULE_LIBS_ADD -= $$QMAKE_DEFAULT_LIBDIRS - INCLUDEPATH *= $$MODULE_INCLUDES - auto_use_privates|isEqual(2, UsePrivate) { # Tests function parameter 2 ($$2) being equal to 'UsePrivate' - INCLUDEPATH += $$eval(QT.$${1}.private_includes) - } - unset(LINKAGE) mac:contains(MODULE_CONFIG, lib_bundle) { FRAMEWORK_INCLUDE = $${MODULE_LIBS}/$${MODULE_NAME}.framework/Headers @@ -88,6 +83,10 @@ defineTest(qtAddModule) { $$FRAMEWORK_INCLUDE/$$eval(QT.$${1}.VERSION)/$$MODULE_NAME QMAKE_FRAMEWORKPATH *= $${MODULE_LIBS} LINKAGE += -framework $${MODULE_NAME}$${QT_LIBINFIX} + } else { + INCLUDEPATH *= $$MODULE_INCLUDES + auto_use_privates|isEqual(2, UsePrivate): \ + INCLUDEPATH += $$eval(QT.$${1}.private_includes) } # Re-insert the major version in the library name (cf qtLibraryTarget above) diff --git a/mkspecs/features/simd.prf b/mkspecs/features/simd.prf index 14da926dc3..e0cd5a3a58 100644 --- a/mkspecs/features/simd.prf +++ b/mkspecs/features/simd.prf @@ -12,6 +12,9 @@ # Get the SIMD flags load(qt_build_config) +# Set QT_CPU_FEATURES for convenience +QT_CPU_FEATURES = $$eval(QT_CPU_FEATURES.$$QT_ARCH) + # # Set up compilers for SIMD (SSE/AVX, NEON etc) # diff --git a/mkspecs/features/spec_post.prf b/mkspecs/features/spec_post.prf index c9e9f8b2f6..ad03c9c428 100644 --- a/mkspecs/features/spec_post.prf +++ b/mkspecs/features/spec_post.prf @@ -9,7 +9,7 @@ isEmpty(QMAKE_PLATFORM) { isEmpty(TARGET_PLATFORM) { equals(MAKEFILE_GENERATOR, UNIX) { equals(QMAKE_HOST.os, Darwin): \ - TARGET_PLATFORM = macx + TARGET_PLATFORM = macx # backwards compatibility; cannot change else: \ TARGET_PLATFORM = unix } else:if(equals(MAKEFILE_GENERATOR, MSVC.NET) \ @@ -28,12 +28,18 @@ isEmpty(QMAKE_PLATFORM) { equals(TARGET_PLATFORM, unix): \ QMAKE_PLATFORM = unix else:equals(TARGET_PLATFORM, macx): \ - QMAKE_PLATFORM = mac macx unix + QMAKE_PLATFORM = osx macx mac darwin unix else:equals(TARGET_PLATFORM, win32): \ QMAKE_PLATFORM = win32 else: \ error("Qmake spec sets an invalid TARGET_PLATFORM.") } + +contains(QMAKE_PLATFORM, macx):!contains(QMAKE_PLATFORM, osx) { + warning("qmake spec specifies platform macx, but not osx.") + QMAKE_PLATFORM = osx $$QMAKE_PLATFORM +} + CONFIG += $$QMAKE_PLATFORM isEmpty(QMAKE_COMPILER) { diff --git a/mkspecs/macx-clang-libc++-32/qmake.conf b/mkspecs/macx-clang-libc++-32/qmake.conf deleted file mode 100644 index 3f7342da0b..0000000000 --- a/mkspecs/macx-clang-libc++-32/qmake.conf +++ /dev/null @@ -1,23 +0,0 @@ -# -# qmake configuration for 32-bit Clang on OS X -# - -warning("QMakespec macx-clang-libc++-32 is deprecated. Use macx-clang-32 instead.") - -MAKEFILE_GENERATOR = UNIX -CONFIG += app_bundle incremental global_init_link_order lib_version_first plugin_no_soname -QMAKE_INCREMENTAL_STYLE = sublib - -include(../common/macx.conf) -include(../common/gcc-base-mac.conf) -include(../common/clang.conf) -include(../common/clang-mac.conf) - -QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.7 - -QMAKE_CFLAGS += -arch i386 -QMAKE_OBJECTIVE_CFLAGS += -arch i386 -stdlib=libc++ -QMAKE_CXXFLAGS += -arch i386 -stdlib=libc++ -QMAKE_LFLAGS += -arch i386 -stdlib=libc++ - -load(qt_config) diff --git a/mkspecs/macx-clang-libc++-32/qplatformdefs.h b/mkspecs/macx-clang-libc++-32/qplatformdefs.h deleted file mode 100644 index 2c3a8b1c09..0000000000 --- a/mkspecs/macx-clang-libc++-32/qplatformdefs.h +++ /dev/null @@ -1,43 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). -** Contact: http://www.qt-project.org/legal -** -** This file is part of the qmake spec of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and Digia. For licensing terms and -** conditions see http://qt.digia.com/licensing. For further information -** use the contact form at http://qt.digia.com/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPL included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 2.1 requirements -** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Digia gives you certain additional -** rights. These rights are described in the Digia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3.0 as published by the Free Software -** Foundation and appearing in the file LICENSE.GPL included in the -** packaging of this file. Please review the following information to -** ensure the GNU General Public License version 3.0 requirements will be -** met: http://www.gnu.org/copyleft/gpl.html. -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "../common/mac/qplatformdefs.h" - diff --git a/mkspecs/macx-clang-libc++/qmake.conf b/mkspecs/macx-clang-libc++/qmake.conf deleted file mode 100644 index 7f4151e81b..0000000000 --- a/mkspecs/macx-clang-libc++/qmake.conf +++ /dev/null @@ -1,22 +0,0 @@ -# -# qmake configuration for Clang on OS X -# - -warning("QMakespec macx-clang-libc++ is deprecated. Use macx-clang instead.") - -MAKEFILE_GENERATOR = UNIX -CONFIG += app_bundle incremental global_init_link_order lib_version_first plugin_no_soname -QMAKE_INCREMENTAL_STYLE = sublib - -include(../common/macx.conf) -include(../common/gcc-base-mac.conf) -include(../common/clang.conf) -include(../common/clang-mac.conf) - -QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.7 - -QMAKE_OBJECTIVE_CFLAGS += -stdlib=libc++ -QMAKE_CXXFLAGS += -stdlib=libc++ -QMAKE_LFLAGS += -stdlib=libc++ - -load(qt_config) diff --git a/mkspecs/macx-clang-libc++/qplatformdefs.h b/mkspecs/macx-clang-libc++/qplatformdefs.h deleted file mode 100644 index 2c3a8b1c09..0000000000 --- a/mkspecs/macx-clang-libc++/qplatformdefs.h +++ /dev/null @@ -1,43 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). -** Contact: http://www.qt-project.org/legal -** -** This file is part of the qmake spec of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and Digia. For licensing terms and -** conditions see http://qt.digia.com/licensing. For further information -** use the contact form at http://qt.digia.com/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPL included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 2.1 requirements -** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Digia gives you certain additional -** rights. These rights are described in the Digia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3.0 as published by the Free Software -** Foundation and appearing in the file LICENSE.GPL included in the -** packaging of this file. Please review the following information to -** ensure the GNU General Public License version 3.0 requirements will be -** met: http://www.gnu.org/copyleft/gpl.html. -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "../common/mac/qplatformdefs.h" - diff --git a/mkspecs/macx-xcode/Info.plist.app b/mkspecs/macx-xcode/Info.plist.app deleted file mode 100755 index 187a8e0aa4..0000000000 --- a/mkspecs/macx-xcode/Info.plist.app +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> -<plist version="1.0"> -<dict> - <key>NSPrincipalClass</key> - <string>NSApplication</string> - <key>CFBundleIconFile</key> - <string>@ICON@</string> - <key>CFBundlePackageType</key> - <string>APPL</string> - <key>CFBundleGetInfoString</key> - <string>Created by Qt/QMake</string> - <key>CFBundleSignature</key> - <string>@TYPEINFO@</string> - <key>CFBundleExecutable</key> - <string>@EXECUTABLE@</string> - <key>CFBundleIdentifier</key> - <string>com.yourcompany.@EXECUTABLE@</string> - <key>NOTE</key> - <string>This file was generated by Qt/QMake.</string> -</dict> -</plist> diff --git a/mkspecs/macx-xcode/Info.plist.lib b/mkspecs/macx-xcode/Info.plist.lib deleted file mode 100644 index 63f1a945c2..0000000000 --- a/mkspecs/macx-xcode/Info.plist.lib +++ /dev/null @@ -1,18 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> -<plist version="1.0"> -<dict> - <key>CFBundlePackageType</key> - <string>FMWK</string> - <key>CFBundleShortVersionString</key> - <string>@SHORT_VERSION@</string> - <key>CFBundleGetInfoString</key> - <string>Created by Qt/QMake</string> - <key>CFBundleSignature</key> - <string>@TYPEINFO@</string> - <key>CFBundleExecutable</key> - <string>@LIBRARY@</string> - <key>NOTE</key> - <string>Please, do NOT change this file -- It was generated by Qt/QMake.</string> -</dict> -</plist> diff --git a/mkspecs/macx-xcode/features/default_post.prf b/mkspecs/macx-xcode/features/default_post.prf new file mode 100644 index 0000000000..4c4746bb2b --- /dev/null +++ b/mkspecs/macx-xcode/features/default_post.prf @@ -0,0 +1,7 @@ + +isEmpty(QMAKE_INFO_PLIST) { + plist_template = $$absolute_path(../../$$[QMAKE_XSPEC]/Info.plist.$${TEMPLATE}) + exists($$plist_template): QMAKE_INFO_PLIST = $$plist_template +} + +load(default_post) |