Skip to content

Commit 88424c8

Browse files
committed
Make sure that we include the correct version of CF when building Foundation, TestFoundation, and plutil
On OS X, if we are not careful about using the correct include paths then the compiler will pick up the system (SDK) version of CF instead of the one we just built as part of the project. This can lead to mismatches in modules, which will either cause a compiler error or crash.
1 parent 126859d commit 88424c8

File tree

1 file changed

+10
-12
lines changed

1 file changed

+10
-12
lines changed

Foundation.xcodeproj/project.pbxproj

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1805,10 +1805,7 @@
18051805
DYLIB_INSTALL_NAME_BASE = "@rpath";
18061806
FRAMEWORK_VERSION = A;
18071807
GCC_PREFIX_HEADER = CoreFoundation/Base.subproj/CoreFoundation_Prefix.h;
1808-
HEADER_SEARCH_PATHS = (
1809-
"$(CONFIGURATION_BUILD_DIR)/usr/local/include",
1810-
"$(CONFIGURATION_BUILD_DIR)/usr/include",
1811-
);
1808+
HEADER_SEARCH_PATHS = "$(CONFIGURATION_BUILD_DIR)/usr/local/include";
18121809
INFOPLIST_FILE = CoreFoundation/Info.plist;
18131810
INIT_ROUTINE = "___CFInitialize";
18141811
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
@@ -1854,10 +1851,8 @@
18541851
r,
18551852
);
18561853
OTHER_SWIFT_FLAGS = "";
1857-
PRIVATE_HEADERS_FOLDER_PATH = usr/local/include/CoreFoundation;
18581854
PRODUCT_BUNDLE_IDENTIFIER = com.apple.CoreFoundation;
18591855
PRODUCT_NAME = "$(TARGET_NAME)";
1860-
PUBLIC_HEADERS_FOLDER_PATH = usr/include/CoreFoundation;
18611856
SKIP_INSTALL = YES;
18621857
SWIFT_INSTALL_OBJC_HEADER = NO;
18631858
SWIFT_OBJC_INTERFACE_HEADER_NAME = "";
@@ -1878,10 +1873,7 @@
18781873
DYLIB_INSTALL_NAME_BASE = "@rpath";
18791874
FRAMEWORK_VERSION = A;
18801875
GCC_PREFIX_HEADER = CoreFoundation/Base.subproj/CoreFoundation_Prefix.h;
1881-
HEADER_SEARCH_PATHS = (
1882-
"$(CONFIGURATION_BUILD_DIR)/usr/local/include",
1883-
"$(CONFIGURATION_BUILD_DIR)/usr/include",
1884-
);
1876+
HEADER_SEARCH_PATHS = "$(CONFIGURATION_BUILD_DIR)/usr/local/include";
18851877
INFOPLIST_FILE = CoreFoundation/Info.plist;
18861878
INIT_ROUTINE = "___CFInitialize";
18871879
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
@@ -1927,10 +1919,8 @@
19271919
r,
19281920
);
19291921
OTHER_SWIFT_FLAGS = "";
1930-
PRIVATE_HEADERS_FOLDER_PATH = usr/local/include/CoreFoundation;
19311922
PRODUCT_BUNDLE_IDENTIFIER = com.apple.CoreFoundation;
19321923
PRODUCT_NAME = "$(TARGET_NAME)";
1933-
PUBLIC_HEADERS_FOLDER_PATH = usr/include/CoreFoundation;
19341924
SKIP_INSTALL = YES;
19351925
SWIFT_INSTALL_OBJC_HEADER = NO;
19361926
SWIFT_OBJC_INTERFACE_HEADER_NAME = "";
@@ -1964,7 +1954,9 @@
19641954
"-Wno-unused-function",
19651955
"-DHAVE_STRUCT_TIMESPEC",
19661956
);
1957+
PRIVATE_HEADERS_FOLDER_PATH = /usr/local/include/CoreFoundation;
19671958
PRODUCT_NAME = "$(TARGET_NAME)";
1959+
PUBLIC_HEADERS_FOLDER_PATH = /usr/local/include/CoreFoundation;
19681960
};
19691961
name = Debug;
19701962
};
@@ -1995,7 +1987,9 @@
19951987
"-Wno-unused-function",
19961988
"-DHAVE_STRUCT_TIMESPEC",
19971989
);
1990+
PRIVATE_HEADERS_FOLDER_PATH = /usr/local/include/CoreFoundation;
19981991
PRODUCT_NAME = "$(TARGET_NAME)";
1992+
PUBLIC_HEADERS_FOLDER_PATH = /usr/local/include/CoreFoundation;
19991993
};
20001994
name = Release;
20011995
};
@@ -2006,6 +2000,7 @@
20062000
CLANG_ENABLE_OBJC_ARC = YES;
20072001
COMBINE_HIDPI_IMAGES = YES;
20082002
EMBEDDED_CONTENT_CONTAINS_SWIFT = YES;
2003+
HEADER_SEARCH_PATHS = "$(CONFIGURATION_BUILD_DIR)/usr/local/include";
20092004
INFOPLIST_FILE = TestFoundation/Resources/Info.plist;
20102005
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
20112006
MACH_O_TYPE = mh_execute;
@@ -2024,6 +2019,7 @@
20242019
CLANG_ENABLE_OBJC_ARC = YES;
20252020
COMBINE_HIDPI_IMAGES = YES;
20262021
EMBEDDED_CONTENT_CONTAINS_SWIFT = YES;
2022+
HEADER_SEARCH_PATHS = "$(CONFIGURATION_BUILD_DIR)/usr/local/include";
20272023
INFOPLIST_FILE = TestFoundation/Resources/Info.plist;
20282024
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
20292025
MACH_O_TYPE = mh_execute;
@@ -2039,6 +2035,7 @@
20392035
buildSettings = {
20402036
CLANG_ENABLE_MODULES = YES;
20412037
CLANG_ENABLE_OBJC_ARC = YES;
2038+
HEADER_SEARCH_PATHS = "$(CONFIGURATION_BUILD_DIR)/usr/local/include";
20422039
PRODUCT_NAME = "$(TARGET_NAME)";
20432040
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
20442041
};
@@ -2049,6 +2046,7 @@
20492046
buildSettings = {
20502047
CLANG_ENABLE_MODULES = YES;
20512048
CLANG_ENABLE_OBJC_ARC = YES;
2049+
HEADER_SEARCH_PATHS = "$(CONFIGURATION_BUILD_DIR)/usr/local/include";
20522050
PRODUCT_NAME = "$(TARGET_NAME)";
20532051
};
20542052
name = Release;

0 commit comments

Comments
 (0)