[TxMt] Building with a different SDK

Ryan Schmidt textmate at ryandesign.com
Thu Feb 1 20:52:25 UTC 2018


Hi,

I'm trying to fix the textmate2 port in MacPorts. It fails to build on OS X 10.10 and earlier, and I think the reason is that the code uses Objective-C lightweight generics, a feature introduced in the 10.11 SDK. So I would like to instruct the build to use the 10.11 SDK, but I can't figure out how to do that. Usually I would set environment variables:

CFLAGS='-isysroot/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk'
CPPFLAGS='-isysroot/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk'
CXXFLAGS='-isysroot/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk'
LDFLAGS='-Wl,-syslibroot,/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk'
OBJCFLAGS='-isysroot/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk'
OBJCXXFLAGS='-isysroot/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk'

But textmate's configure script isn't an autotools one and it doesn't appear to honor these environment variables. So how can I tell the build system I want to use a different SDK? I see that the configure script explicitly passes CC and CXX to bin/gen_build. Do I need to modify the configure script to also explicitly pass the other environment variables or is there an easier way that doesn't involve modifying the build system?



More information about the textmate mailing list