Skip to content

Commit

Permalink
[osx/ios/atv2] - xcode: add XBMC_DEPENDS_ROOT and us it for construct…
Browse files Browse the repository at this point in the history
…ing XBMC_DEPENDS - allows overwrite of XBMC_DEPENDS_ROOT when building with xcodebuild from commandline
  • Loading branch information
Memphiz committed Mar 25, 2013
1 parent 2b6e7e3 commit 9bb5650
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 12 deletions.
10 changes: 6 additions & 4 deletions XBMC-ATV2.xcodeproj/project.pbxproj
Expand Up @@ -6625,7 +6625,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "if [ -d \"/Users/Shared/xbmc-depends/buildtools-native/bin\" ]; then\nPATH=$PATH:/Users/Shared/xbmc-depends/buildtools-native/bin\nelse\nPATH=$PATH:/Users/Shared/xbmc-depends/toolchain/bin\nfi\n\nif [ \"$ACTION\" = build ] ; then\nmake -f ${SRCROOT}/codegenerator.mk\nfi";
shellScript = "if [ -d \"$XBMC_DEPENDS_ROOT/buildtools-native/bin\" ]; then\nPATH=$PATH:$XBMC_DEPENDS_ROOT/buildtools-native/bin\nelse\nPATH=$PATH:$XBMC_DEPENDS_ROOT/toolchain/bin\nfi\n\nif [ \"$ACTION\" = build ] ; then\nmake -f ${SRCROOT}/codegenerator.mk\nfi";
};
F589B48B128A696700D8079E /* copy root files */ = {
isa = PBXShellScriptBuildPhase;
Expand Down Expand Up @@ -6654,7 +6654,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/bash;
shellScript = "#set -x\n\nfunction check_dyloaded_depends\n{\n b=$(find \"$EXTERNAL_LIBS\" -name $1 -print)\n if [ -f \"$b\" ]; then\n #echo \"Processing $b\"\n if [ ! -f \"$TARGET_FRAMEWORKS/$(basename $b)\" ]; then\n echo \" Packaging $b\"\n cp -f \"$b\" \"$TARGET_FRAMEWORKS/\"\n chmod u+w \"$TARGET_FRAMEWORKS/$(basename $b)\"\n fi\n for a in $(otool -L \"$b\" | grep \"$EXTERNAL_LIBS\" | awk ' { print $1 } ') ; do\n if [ -f \"$a\" ]; then\n if [ ! -f \"$TARGET_FRAMEWORKS/$(basename $a)\" ]; then\n echo \" Packaging $a\"\n cp -f \"$a\" \"$TARGET_FRAMEWORKS/\"\n chmod u+w \"$TARGET_FRAMEWORKS/$(basename $a)\"\n install_name_tool -change \"$a\" \"$DYLIB_NAMEPATH/$(basename $a)\" \"$TARGET_FRAMEWORKS/$(basename $b)\"\n fi\n fi\n done \n fi\n}\n\nfunction check_xbmc_dylib_depends\n{\n REWIND=\"1\"\n while [ $REWIND = \"1\" ]\n do\n let REWIND=\"0\"\n for b in $(find \"$1\" -type f -name \"$2\" -print) ; do\n #echo \"Processing $b\"\n install_name_tool -id \"$(basename $b)\" \"$b\"\n for a in $(otool -L \"$b\" | grep \"$EXTERNAL_LIBS\" | awk ' { print $1 } ') ; do\n #echo \" Packaging $a\"\n if [ ! -f \"$TARGET_FRAMEWORKS/$(basename $a)\" ]; then\n echo \" Packaging $a\"\n cp -f \"$a\" \"$TARGET_FRAMEWORKS/\"\n chmod u+w \"$TARGET_FRAMEWORKS/$(basename $a)\"\n let REWIND=\"1\"\n fi\n install_name_tool -change \"$a\" \"$DYLIB_NAMEPATH/$(basename $a)\" \"$b\"\n done\n done\n done\n}\n\nEXTERNAL_LIBS=/Users/Shared/xbmc-depends/\"$SDK_NAME\"_\"$CURRENT_ARCH\"-target\n\nTARGET_NAME=$PRODUCT_NAME.$WRAPPER_EXTENSION\nTARGET_CONTENTS=$TARGET_BUILD_DIR/$TARGET_NAME\n\nTARGET_BINARY=$TARGET_CONTENTS/XBMC\nTARGET_FRAMEWORKS=$TARGET_CONTENTS/Frameworks\nDYLIB_NAMEPATH=@executable_path/Appliances/XBMC.frappliance/Frameworks\nXBMC_HOME=$TARGET_CONTENTS/XBMCData/XBMCHome\n\nmkdir -p \"$TARGET_CONTENTS\"\nmkdir -p \"$TARGET_CONTENTS/XBMCData/XBMCHome\"\n# start clean so we don't keep old dylibs\nrm -rf \"$TARGET_CONTENTS/Frameworks\"\nmkdir -p \"$TARGET_CONTENTS/Frameworks\"\n\necho \"Package $TARGET_BUILD_DIR/XBMC\"\n\n# Copy all of XBMC's dylib dependencies and rename their locations to inside the Framework\necho \"Checking $TARGET_BINARY dylib dependencies\"\nfor a in $(otool -L \"$TARGET_BINARY\" | grep \"$EXTERNAL_LIBS\" | awk ' { print $1 } ') ; do \n\techo \" Packaging $a\"\n\tcp -f \"$a\" \"$TARGET_FRAMEWORKS/\"\n\tchmod u+w \"$TARGET_FRAMEWORKS/$(basename $a)\"\n\tinstall_name_tool -change \"$a\" \"$DYLIB_NAMEPATH/$(basename $a)\" \"$TARGET_BINARY\"\ndone\n\nif [ \"$SDK_NAME\" = \"iphoneos6.0\" ] ; then\n\techo \"Fixing $TARGET_BINARY VideoToolbox dylib name\"\n VTB_SDK6=/System/Library/Frameworks/VideoToolbox.framework/VideoToolbox\n VTB_SDK5=/System/Library/PrivateFrameworks/VideoToolbox.framework/VideoToolbox\n\tinstall_name_tool -change \"$VTB_SDK6\" \"$VTB_SDK5\" \"$TARGET_BINARY\"\nfi\n\necho \"Package $EXTERNAL_LIBS/lib/python2.6\"\nmkdir -p \"$TARGET_CONTENTS/Frameworks/lib\"\nPYTHONSYNC=\"rsync -aq --exclude .DS_Store --exclude *.a --exclude *.exe --exclude test --exclude tests\"\n${PYTHONSYNC} \"$EXTERNAL_LIBS/lib/python2.6\" \"$TARGET_FRAMEWORKS/lib/\"\nrm -rf \"$TARGET_FRAMEWORKS/lib/python2.6/config\"\n\necho \"Checking $TARGET_FRAMEWORKS/lib/python2.6 *.so for dylib dependencies\"\ncheck_xbmc_dylib_depends \"$TARGET_FRAMEWORKS\"/lib/python2.6 \"*.so\"\n\necho \"Checking $XBMC_HOME/system *.so for dylib dependencies\"\ncheck_xbmc_dylib_depends \"$XBMC_HOME\"/system \"*.so\"\n\necho \"Checking $XBMC_HOME/addons *.so for dylib dependencies\"\ncheck_xbmc_dylib_depends \"$XBMC_HOME\"/addons \"*.so\"\n\necho \"Checking $XBMC_HOME/addons *.pvr for dylib dependencies\"\ncheck_xbmc_dylib_depends \"$XBMC_HOME\"/addons \"*.pvr\"\n\necho \"Checking $XBMC_HOME/addons *.xbs for dylib dependencies\"\ncheck_xbmc_dylib_depends \"$XBMC_HOME\"/addons \"*.xbs\"\n\necho \"Checking xbmc/DllPaths_generated.h for dylib dependencies\"\nfor a in $(grep .dylib \"$SRCROOT\"/xbmc/DllPaths_generated.h | awk '{print $3}' | sed s/\\\"//g) ; do\n check_dyloaded_depends $a\ndone\n\necho \"Checking $TARGET_FRAMEWORKS for missing dylib dependencies\"\nREWIND=\"1\"\nwhile [ $REWIND = \"1\" ]\ndo\n\tlet REWIND=\"0\"\n\tfor b in \"$TARGET_FRAMEWORKS/\"*dylib* ; do\n\t\t#echo \" Processing $b\"\n\t\tfor a in $(otool -L \"$b\" | grep \"$EXTERNAL_LIBS\" | awk ' { print $1 } ') ; do\n\t\t\t#echo \"Processing $a\"\n\t\t\tif [ ! -f \"$TARGET_FRAMEWORKS/$(basename $a)\" ]; then\n\t\t\t\techo \" Packaging $a\"\n\t\t\t\tcp -f \"$a\" \"$TARGET_FRAMEWORKS/\"\n\t\t\t\tchmod u+w \"$TARGET_FRAMEWORKS/$(basename $a)\"\n\t\t\t\tlet REWIND=\"1\"\n\t\t\tfi\n\t\t\tinstall_name_tool -change \"$a\" \"$DYLIB_NAMEPATH/$(basename $a)\" \"$TARGET_FRAMEWORKS/$(basename $b)\"\n\t\tdone \n\tdone\ndone\n";
shellScript = "#set -x\n\nfunction check_dyloaded_depends\n{\n b=$(find \"$EXTERNAL_LIBS\" -name $1 -print)\n if [ -f \"$b\" ]; then\n #echo \"Processing $b\"\n if [ ! -f \"$TARGET_FRAMEWORKS/$(basename $b)\" ]; then\n echo \" Packaging $b\"\n cp -f \"$b\" \"$TARGET_FRAMEWORKS/\"\n chmod u+w \"$TARGET_FRAMEWORKS/$(basename $b)\"\n fi\n for a in $(otool -L \"$b\" | grep \"$EXTERNAL_LIBS\" | awk ' { print $1 } ') ; do\n if [ -f \"$a\" ]; then\n if [ ! -f \"$TARGET_FRAMEWORKS/$(basename $a)\" ]; then\n echo \" Packaging $a\"\n cp -f \"$a\" \"$TARGET_FRAMEWORKS/\"\n chmod u+w \"$TARGET_FRAMEWORKS/$(basename $a)\"\n install_name_tool -change \"$a\" \"$DYLIB_NAMEPATH/$(basename $a)\" \"$TARGET_FRAMEWORKS/$(basename $b)\"\n fi\n fi\n done \n fi\n}\n\nfunction check_xbmc_dylib_depends\n{\n REWIND=\"1\"\n while [ $REWIND = \"1\" ]\n do\n let REWIND=\"0\"\n for b in $(find \"$1\" -type f -name \"$2\" -print) ; do\n #echo \"Processing $b\"\n install_name_tool -id \"$(basename $b)\" \"$b\"\n for a in $(otool -L \"$b\" | grep \"$EXTERNAL_LIBS\" | awk ' { print $1 } ') ; do\n #echo \" Packaging $a\"\n if [ ! -f \"$TARGET_FRAMEWORKS/$(basename $a)\" ]; then\n echo \" Packaging $a\"\n cp -f \"$a\" \"$TARGET_FRAMEWORKS/\"\n chmod u+w \"$TARGET_FRAMEWORKS/$(basename $a)\"\n let REWIND=\"1\"\n fi\n install_name_tool -change \"$a\" \"$DYLIB_NAMEPATH/$(basename $a)\" \"$b\"\n done\n done\n done\n}\n\nEXTERNAL_LIBS=$XBMC_DEPENDS\n\nTARGET_NAME=$PRODUCT_NAME.$WRAPPER_EXTENSION\nTARGET_CONTENTS=$TARGET_BUILD_DIR/$TARGET_NAME\n\nTARGET_BINARY=$TARGET_CONTENTS/XBMC\nTARGET_FRAMEWORKS=$TARGET_CONTENTS/Frameworks\nDYLIB_NAMEPATH=@executable_path/Appliances/XBMC.frappliance/Frameworks\nXBMC_HOME=$TARGET_CONTENTS/XBMCData/XBMCHome\n\nmkdir -p \"$TARGET_CONTENTS\"\nmkdir -p \"$TARGET_CONTENTS/XBMCData/XBMCHome\"\n# start clean so we don't keep old dylibs\nrm -rf \"$TARGET_CONTENTS/Frameworks\"\nmkdir -p \"$TARGET_CONTENTS/Frameworks\"\n\necho \"Package $TARGET_BUILD_DIR/XBMC\"\n\n# Copy all of XBMC's dylib dependencies and rename their locations to inside the Framework\necho \"Checking $TARGET_BINARY dylib dependencies\"\nfor a in $(otool -L \"$TARGET_BINARY\" | grep \"$EXTERNAL_LIBS\" | awk ' { print $1 } ') ; do \n\techo \" Packaging $a\"\n\tcp -f \"$a\" \"$TARGET_FRAMEWORKS/\"\n\tchmod u+w \"$TARGET_FRAMEWORKS/$(basename $a)\"\n\tinstall_name_tool -change \"$a\" \"$DYLIB_NAMEPATH/$(basename $a)\" \"$TARGET_BINARY\"\ndone\n\nif [ \"$SDK_NAME\" = \"iphoneos6.0\" ] ; then\n\techo \"Fixing $TARGET_BINARY VideoToolbox dylib name\"\n VTB_SDK6=/System/Library/Frameworks/VideoToolbox.framework/VideoToolbox\n VTB_SDK5=/System/Library/PrivateFrameworks/VideoToolbox.framework/VideoToolbox\n\tinstall_name_tool -change \"$VTB_SDK6\" \"$VTB_SDK5\" \"$TARGET_BINARY\"\nfi\n\necho \"Package $EXTERNAL_LIBS/lib/python2.6\"\nmkdir -p \"$TARGET_CONTENTS/Frameworks/lib\"\nPYTHONSYNC=\"rsync -aq --exclude .DS_Store --exclude *.a --exclude *.exe --exclude test --exclude tests\"\n${PYTHONSYNC} \"$EXTERNAL_LIBS/lib/python2.6\" \"$TARGET_FRAMEWORKS/lib/\"\nrm -rf \"$TARGET_FRAMEWORKS/lib/python2.6/config\"\n\necho \"Checking $TARGET_FRAMEWORKS/lib/python2.6 *.so for dylib dependencies\"\ncheck_xbmc_dylib_depends \"$TARGET_FRAMEWORKS\"/lib/python2.6 \"*.so\"\n\necho \"Checking $XBMC_HOME/system *.so for dylib dependencies\"\ncheck_xbmc_dylib_depends \"$XBMC_HOME\"/system \"*.so\"\n\necho \"Checking $XBMC_HOME/addons *.so for dylib dependencies\"\ncheck_xbmc_dylib_depends \"$XBMC_HOME\"/addons \"*.so\"\n\necho \"Checking $XBMC_HOME/addons *.pvr for dylib dependencies\"\ncheck_xbmc_dylib_depends \"$XBMC_HOME\"/addons \"*.pvr\"\n\necho \"Checking $XBMC_HOME/addons *.xbs for dylib dependencies\"\ncheck_xbmc_dylib_depends \"$XBMC_HOME\"/addons \"*.xbs\"\n\necho \"Checking xbmc/DllPaths_generated.h for dylib dependencies\"\nfor a in $(grep .dylib \"$SRCROOT\"/xbmc/DllPaths_generated.h | awk '{print $3}' | sed s/\\\"//g) ; do\n check_dyloaded_depends $a\ndone\n\necho \"Checking $TARGET_FRAMEWORKS for missing dylib dependencies\"\nREWIND=\"1\"\nwhile [ $REWIND = \"1\" ]\ndo\n\tlet REWIND=\"0\"\n\tfor b in \"$TARGET_FRAMEWORKS/\"*dylib* ; do\n\t\t#echo \" Processing $b\"\n\t\tfor a in $(otool -L \"$b\" | grep \"$EXTERNAL_LIBS\" | awk ' { print $1 } ') ; do\n\t\t\t#echo \"Processing $a\"\n\t\t\tif [ ! -f \"$TARGET_FRAMEWORKS/$(basename $a)\" ]; then\n\t\t\t\techo \" Packaging $a\"\n\t\t\t\tcp -f \"$a\" \"$TARGET_FRAMEWORKS/\"\n\t\t\t\tchmod u+w \"$TARGET_FRAMEWORKS/$(basename $a)\"\n\t\t\t\tlet REWIND=\"1\"\n\t\t\tfi\n\t\t\tinstall_name_tool -change \"$a\" \"$DYLIB_NAMEPATH/$(basename $a)\" \"$TARGET_FRAMEWORKS/$(basename $b)\"\n\t\tdone \n\tdone\ndone\n";
};
/* End PBXShellScriptBuildPhase section */

Expand Down Expand Up @@ -7803,7 +7803,8 @@
USER_HEADER_SEARCH_PATHS = "$XBMC_DEPENDS/include $XBMC_DEPENDS/include/mysql $XBMC_DEPENDS/include/freetype2 $XBMC_DEPENDS/include/python2.6";
WARNING_CFLAGS = "";
WRAPPER_EXTENSION = frappliance;
XBMC_DEPENDS = "/Users/Shared/xbmc-depends/$(SDK_NAME)_$(CURRENT_ARCH)-target";
XBMC_DEPENDS = "$(XBMC_DEPENDS_ROOT)/$(SDK_NAME)_$(CURRENT_ARCH)-target";
XBMC_DEPENDS_ROOT = "/Users/Shared/xbmc-depends";
};
name = Debug;
};
Expand Down Expand Up @@ -7932,7 +7933,8 @@
USER_HEADER_SEARCH_PATHS = "$XBMC_DEPENDS/include $XBMC_DEPENDS/include/mysql $XBMC_DEPENDS/include/freetype2 $XBMC_DEPENDS/include/python2.6";
WARNING_CFLAGS = "";
WRAPPER_EXTENSION = frappliance;
XBMC_DEPENDS = "/Users/Shared/xbmc-depends/$(SDK_NAME)_$(ARCHS)-target";
XBMC_DEPENDS = "$(XBMC_DEPENDS_ROOT)/$(SDK_NAME)_$(ARCHS)-target";
XBMC_DEPENDS_ROOT = "/Users/Shared/xbmc-depends";
};
name = Release;
};
Expand Down

0 comments on commit 9bb5650

Please sign in to comment.