ifeq ($(QT_MAC_SDK_NO_VERSION_CHECK),) CHECK_SDK_COMMAND = xcrun --sdk $(EXPORT_QMAKE_MAC_SDK) -show-sdk-version 2>&1 CURRENT_MAC_SDK_VERSION := $(shell DEVELOPER_DIR=$(EXPORT_QMAKE_XCODE_DEVELOPER_PATH) $(CHECK_SDK_COMMAND)) ifneq ($(CURRENT_MAC_SDK_VERSION),$(EXPORT_QMAKE_MAC_SDK_VERSION)) # We don't want to complain about out of date SDK unless the target needs to be remade. # This covers use-cases such as running 'make check' after moving the build to a # computer without Xcode or with a different Xcode version. TARGET_UP_TO_DATE := $(shell QT_MAC_SDK_NO_VERSION_CHECK=1 $(MAKE) --question $(QMAKE_TARGET) && echo 1 || echo 0) ifeq ($(TARGET_UP_TO_DATE),0) ifneq ($(findstring missing DEVELOPER_DIR path,$(CURRENT_MAC_SDK_VERSION)),) $(info The developer dir $(EXPORT_QMAKE_XCODE_DEVELOPER_PATH) is no longer valid.) else ifneq ($(findstring SDK "$(EXPORT_QMAKE_MAC_SDK)" cannot be located,$(CURRENT_MAC_SDK_VERSION)),) $(info The developer dir $(EXPORT_QMAKE_XCODE_DEVELOPER_PATH) no longer contains the $(EXPORT_QMAKE_MAC_SDK_VERSION) platform SDK.) else ifneq ($(CURRENT_MAC_SDK_VERSION),) $(info The platform SDK has been changed from version $(EXPORT_QMAKE_MAC_SDK_VERSION) to version $(CURRENT_MAC_SDK_VERSION).) else $(info Unknown error resolving current platform SDK version.) endif $(info This requires a fresh build. Please wipe the build directory completely,) $(info including any .qmake.stash and .qmake.cache files generated by qmake.) $(error ^) endif endif endif