@@ -175,6 +175,14 @@ KNOWN_SETTINGS=(
175
175
swift-runtime-enable-dtrace " 0" " Enable runtime dtrace support"
176
176
swift-runtime-enable-leak-checker " 0" " Enable leaks checking routines in the runtime"
177
177
use-gold-linker " " " Enable using the gold linker"
178
+ toolchain-bundle-identifier " " " CFBundleIdentifier for xctoolchain info plist"
179
+ toolchain-display-name " " " Display Name for xctoolcain info plist"
180
+ toolchain-name " " " File name for xctoolchain"
181
+ toolchain-version " " " Version for xctoolchain info plist and installer pkg"
182
+ toolchain-application-cert " " " Application Cert name to codesign xctoolchain"
183
+ toolchain-installer-cert " " " Installer Cert name to create installer pkg"
184
+ toolchain-installer-package " " " The path to installer pkg"
185
+
178
186
)
179
187
180
188
function toupper() {
@@ -2114,6 +2122,28 @@ if [[ "${INSTALLABLE_PACKAGE}" ]] ; then
2114
2122
echo " --- Copy swift-stdlib-tool ---"
2115
2123
cp " ${SWIFT_SOURCE_DIR} /utils/swift-stdlib-tool-substitute" " ${INSTALL_DESTDIR} /${INSTALL_PREFIX} /bin/swift-stdlib-tool"
2116
2124
fi
2125
+
2126
+ # Create plist for xctoolchain
2127
+ echo " -- Create Info.plist --"
2128
+ PLISTBUDDY_BIN=" /usr/libexec/PlistBuddy"
2129
+ TOOLCHAIN_INSTALL_LOCATION=" /Library/Developer/Toolchains/${TOOLCHAIN_NAME} .xctoolchain/usr/lib"
2130
+
2131
+ ${PLISTBUDDY_BIN} -c " Add DisplayName string '${TOOLCHAIN_DISPLAY_NAME} '" " ${TOOLCHAIN_PREFIX} /Info.plist"
2132
+ ${PLISTBUDDY_BIN} -c " Add Version string '${TOOLCHAIN_VERSION} '" " ${TOOLCHAIN_PREFIX} /Info.plist"
2133
+ ${PLISTBUDDY_BIN} -c " Add CFBundleIdentifier string '${TOOLCHAIN_BUNDLE_IDENTIFIER} '" " ${TOOLCHAIN_PREFIX} /Info.plist"
2134
+ ${PLISTBUDDY_BIN} -c " Add ReportProblemURL string 'https://bugs.swift.com/'" " ${TOOLCHAIN_PREFIX} /Info.plist"
2135
+ ${PLISTBUDDY_BIN} -c " Add OverrideEnvironment::DYLD_LIBRARY_PATH string '${TOOLCHAIN_INSTALL_LOCATION} /usr/lib'" " ${TOOLCHAIN_PREFIX} /Info.plist"
2136
+ chmod a+r " ${TOOLCHAIN_PREFIX} /Info.plist"
2137
+
2138
+ if [[ " ${APPLICATION_CERT} " ]] ; then
2139
+ echo " -- Codesign xctoolchain --"
2140
+ " ${SWIFT_SOURCE_DIR} /utils/toolchain-codesign" " ${TOOLCHAIN_APPLICATION_CERT} " " ${TOOLCHAIN_PREFIX} "
2141
+ fi
2142
+ if [[ " ${INSTALLER_PACKAGE} " ]] ; then
2143
+ echo " -- Create Installer --"
2144
+ " ${SWIFT_SOURCE_DIR} /utils/toolchain-installer" " ${TOOLCHAIN_PREFIX} " " ${TOOLCHAIN_BUNDLE_IDENTIFIER} " " ${TOOLCHAIN_INSTALLER_CERT} " " ${TOOLCHAIN_INSTALLER_PACKAGE} " " ${TOOLCHAIN_INSTALL_LOCATION} " " ${TOOLCHAIN_VERSION} "
2145
+ fi
2146
+
2117
2147
(cd " ${INSTALL_DESTDIR} " &&
2118
2148
tar -c -z -f " ${INSTALLABLE_PACKAGE} " " ${TOOLCHAIN_PREFIX/# \/ } " )
2119
2149
else
0 commit comments