nixpkgs/pkgs/development/mobile/xcodeenv/compose-xcodewrapper.nix

33 lines
954 B
Nix

{stdenv}:
{version ? "11.1", xcodeBaseDir ? "/Applications/Xcode.app"}:
assert stdenv.isDarwin;
stdenv.mkDerivation {
name = "xcode-wrapper-"+version;
buildCommand = ''
mkdir -p $out/bin
cd $out/bin
ln -s /usr/bin/xcode-select
ln -s /usr/bin/security
ln -s /usr/bin/codesign
ln -s /usr/bin/xcrun
ln -s /usr/bin/plutil
ln -s /usr/bin/clang
ln -s /usr/bin/lipo
ln -s /usr/bin/file
ln -s /usr/bin/rev
ln -s "${xcodeBaseDir}/Contents/Developer/usr/bin/xcodebuild"
ln -s "${xcodeBaseDir}/Contents/Developer/Applications/Simulator.app/Contents/MacOS/Simulator"
cd ..
ln -s "${xcodeBaseDir}/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs"
# Check if we have the xcodebuild version that we want
if [ -z "$($out/bin/xcodebuild -version | grep -x 'Xcode ${version}')" ]
then
echo "We require xcodebuild version: ${version}"
exit 1
fi
'';
}