From 0133b59246a0daf88a0ba284a2cd9f65a5ece353 Mon Sep 17 00:00:00 2001 From: Jake Petroules Date: Wed, 29 Mar 2017 20:49:08 -0700 Subject: Fix CoreText font database build on watchOS The font database uses UIKit symbols on all UIKit platforms and thus it must be linked to. Also, limit the missing CoreText.h workaround so that it is not applied for versions of Xcode where the bug is fixed. Change-Id: Ia2a94baba6b0df618604a0bc3092fbd2a48d5aea Reviewed-by: Jake Petroules --- mkspecs/features/uikit/watchos_coretext.prf | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 mkspecs/features/uikit/watchos_coretext.prf (limited to 'mkspecs') diff --git a/mkspecs/features/uikit/watchos_coretext.prf b/mkspecs/features/uikit/watchos_coretext.prf new file mode 100644 index 0000000000..30e5af2e7e --- /dev/null +++ b/mkspecs/features/uikit/watchos_coretext.prf @@ -0,0 +1,15 @@ +# CoreText is documented to be available on watchOS, but the headers aren't present +# in the watchOS Simulator SDK like they are supposed to be. Work around the problem +# by adding the device SDK's headers to the search path as a fallback. +# rdar://25314492, rdar://27844864 +simulator_system_frameworks = $$xcodeSDKInfo(Path, $${simulator.sdk})/System/Library/Frameworks +watchos:simulator:!exists($$simulator_system_frameworks/CoreText.framework/Headers/CoreText.h) { + device_system_frameworks = $$xcodeSDKInfo(Path, $${device.sdk})/System/Library/Frameworks + for (arch, QMAKE_APPLE_SIMULATOR_ARCHS) { + QMAKE_CXXFLAGS += \ + -Xarch_$${arch} \ + -F$$simulator_system_frameworks \ + -Xarch_$${arch} \ + -F$$device_system_frameworks + } +} -- cgit v1.2.3