[osx/ios] fixed, python dev is a pain under darwin, move build of xbmc/interfaces...
authordavilla <davilla@4pi.com>
Sun, 23 Sep 2012 13:15:46 +0000 (09:15 -0400)
committerdavilla <davilla@4pi.com>
Sun, 23 Sep 2012 13:16:19 +0000 (09:16 -0400)
Makefile.in
XBMC-ATV2.xcodeproj/project.pbxproj
XBMC-IOS.xcodeproj/project.pbxproj
XBMC.xcodeproj/project.pbxproj

index 21e56ad..5ed7739 100644 (file)
@@ -401,18 +401,13 @@ libs: libhdhomerun libid3tag imagelib libexif system/libcpluff-@ARCH@.so $(CMYTH
 
 externals: codecs libs visualizations screensavers libaddon pvraddons
 
-ADDON_BINDINGS = xbmc/interfaces/legacy/legacy.a
-ADDON_BINDINGS += xbmc/interfaces/python/python_binding.a
-
 xcode_depends: \
        codecs libs visualizations screensavers eventclients skins libaddon \
        lib/libsquish/libsquish.a \
        lib/libapetag/.libs/libapetag.a \
        lib/libRTV/librtv.a \
        lib/libXDAAP/libxdaap.a \
-       lib/SlingboxLib/SlingboxLib.a \
-       $(ADDON_BINDINGS)
-       libtool -static -o xbmc/interfaces/addonbindings.a $(ADDON_BINDINGS)
+       lib/SlingboxLib/SlingboxLib.a
 
 OBJSXBMC =$(DIRECTORY_ARCHIVES)
 OBJSXBMC+=lib/libapetag/.libs/libapetag.a
index 8972d89..bfb0599 100644 (file)
@@ -98,7 +98,6 @@
                DF23461115FA671900A934F6 /* UPnPInternal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DF23460915FA671900A934F6 /* UPnPInternal.cpp */; };
                DF23461215FA671900A934F6 /* UPnPRenderer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DF23460B15FA671900A934F6 /* UPnPRenderer.cpp */; };
                DF23461315FA671900A934F6 /* UPnPServer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DF23460D15FA671900A934F6 /* UPnPServer.cpp */; };
-               DF294E7915DAD78E004FDDEC /* addonbindings.a in Frameworks */ = {isa = PBXBuildFile; fileRef = DF294E7815DAD78E004FDDEC /* addonbindings.a */; };
                DF33C2A415509C1B0046CDCB /* XbmcContext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DF33C2A215509C1B0046CDCB /* XbmcContext.cpp */; };
                DF33C2AE15509C5A0046CDCB /* ilog.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DF33C2AB15509C5A0046CDCB /* ilog.cpp */; };
                DF34890913FD96390026A711 /* GUIAction.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DF34890713FD96390026A711 /* GUIAction.cpp */; };
                DFFD594F1506B6300088DE4B /* IOSEAGLView.mm in Sources */ = {isa = PBXBuildFile; fileRef = DFFD594C1506B6300088DE4B /* IOSEAGLView.mm */; };
                DFFEFBDB151606CB001294DC /* IOSScreenManager.mm in Sources */ = {isa = PBXBuildFile; fileRef = DFFEFBDA151606CB001294DC /* IOSScreenManager.mm */; };
                DFFEFC2215160927001294DC /* IOSExternalTouchController.mm in Sources */ = {isa = PBXBuildFile; fileRef = DFFEFC2115160927001294DC /* IOSExternalTouchController.mm */; };
+               F502C0C3160F422A00C96C76 /* legacy.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F502C0C1160F422A00C96C76 /* legacy.a */; };
+               F502C0C4160F422A00C96C76 /* python_binding.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F502C0C2160F422A00C96C76 /* python_binding.a */; };
                F54D9E8E12B71457006870F9 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F54D9E8D12B71457006870F9 /* CoreAudio.framework */; };
                F56B15FB12CD6922009B4C96 /* CoreVideo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F56B15FA12CD6922009B4C96 /* CoreVideo.framework */; };
                F56B15FD12CD6930009B4C96 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F56B15FC12CD6930009B4C96 /* AudioToolbox.framework */; };
                DF23460C15FA671900A934F6 /* UPnPRenderer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UPnPRenderer.h; sourceTree = "<group>"; };
                DF23460D15FA671900A934F6 /* UPnPServer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UPnPServer.cpp; sourceTree = "<group>"; };
                DF23460E15FA671900A934F6 /* UPnPServer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UPnPServer.h; sourceTree = "<group>"; };
-               DF294E7815DAD78E004FDDEC /* addonbindings.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = addonbindings.a; path = xbmc/interfaces/addonbindings.a; sourceTree = "<group>"; };
                DF33C2A215509C1B0046CDCB /* XbmcContext.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = XbmcContext.cpp; sourceTree = "<group>"; };
                DF33C2A315509C1B0046CDCB /* XbmcContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XbmcContext.h; sourceTree = "<group>"; };
                DF33C2AB15509C5A0046CDCB /* ilog.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ilog.cpp; sourceTree = "<group>"; };
                DFFEFBDA151606CB001294DC /* IOSScreenManager.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = IOSScreenManager.mm; sourceTree = "<group>"; };
                DFFEFC2015160927001294DC /* IOSExternalTouchController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IOSExternalTouchController.h; sourceTree = "<group>"; };
                DFFEFC2115160927001294DC /* IOSExternalTouchController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = IOSExternalTouchController.mm; sourceTree = "<group>"; };
+               F502C098160F420700C96C76 /* CallbackHandler.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CallbackHandler.cpp; path = python/CallbackHandler.cpp; sourceTree = "<group>"; };
+               F502C099160F420700C96C76 /* CallbackHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CallbackHandler.h; path = python/CallbackHandler.h; sourceTree = "<group>"; };
+               F502C09A160F420700C96C76 /* LanguageHook.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LanguageHook.cpp; path = python/LanguageHook.cpp; sourceTree = "<group>"; };
+               F502C09B160F420700C96C76 /* LanguageHook.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LanguageHook.h; path = python/LanguageHook.h; sourceTree = "<group>"; };
+               F502C09C160F421600C96C76 /* swig.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = swig.cpp; path = python/swig.cpp; sourceTree = "<group>"; };
+               F502C09D160F421600C96C76 /* swig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = swig.h; path = python/swig.h; sourceTree = "<group>"; };
+               F502C09E160F421600C96C76 /* XBPython.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = XBPython.cpp; path = python/XBPython.cpp; sourceTree = "<group>"; };
+               F502C09F160F421600C96C76 /* XBPython.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = XBPython.h; path = python/XBPython.h; sourceTree = "<group>"; };
+               F502C0A0160F421600C96C76 /* XBPyThread.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = XBPyThread.cpp; path = python/XBPyThread.cpp; sourceTree = "<group>"; };
+               F502C0A1160F421600C96C76 /* XBPyThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = XBPyThread.h; path = python/XBPyThread.h; sourceTree = "<group>"; };
+               F502C0C1160F422A00C96C76 /* legacy.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = legacy.a; path = xbmc/interfaces/legacy/legacy.a; sourceTree = "<group>"; };
+               F502C0C2160F422A00C96C76 /* python_binding.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = python_binding.a; path = xbmc/interfaces/python/python_binding.a; sourceTree = "<group>"; };
                F54D9E8D12B71457006870F9 /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = System/Library/Frameworks/CoreAudio.framework; sourceTree = SDKROOT; };
                F558F66813AFE7F300631E12 /* Condition.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Condition.h; sourceTree = "<group>"; };
                F558F66E13AFE81500631E12 /* ThreadLocal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ThreadLocal.h; sourceTree = "<group>"; };
                                F56B161B12CD69DB009B4C96 /* ImageIO.framework in Frameworks */,
                                4D5D2E131301753F006ABC13 /* CFNetwork.framework in Frameworks */,
                                18404DFD1396C44F00863BBA /* SlingboxLib.a in Frameworks */,
-                               DF294E7915DAD78E004FDDEC /* addonbindings.a in Frameworks */,
+                               F502C0C3160F422A00C96C76 /* legacy.a in Frameworks */,
+                               F502C0C4160F422A00C96C76 /* python_binding.a in Frameworks */,
                        );
                        runOnlyForDeploymentPostprocessing = 0;
                };
                DF1AD01415FCE5AF00E10810 /* python */ = {
                        isa = PBXGroup;
                        children = (
+                               F502C098160F420700C96C76 /* CallbackHandler.cpp */,
+                               F502C099160F420700C96C76 /* CallbackHandler.h */,
+                               F502C09A160F420700C96C76 /* LanguageHook.cpp */,
+                               F502C09B160F420700C96C76 /* LanguageHook.h */,
                                DF1AD01515FCE5C600E10810 /* generated */,
+                               F502C09C160F421600C96C76 /* swig.cpp */,
+                               F502C09D160F421600C96C76 /* swig.h */,
+                               F502C09E160F421600C96C76 /* XBPython.cpp */,
+                               F502C09F160F421600C96C76 /* XBPython.h */,
+                               F502C0A0160F421600C96C76 /* XBPyThread.cpp */,
+                               F502C0A1160F421600C96C76 /* XBPyThread.h */,
                        );
                        name = python;
                        sourceTree = "<group>";
                F589AE6D12890B6700D8079E /* Internal Libs */ = {
                        isa = PBXGroup;
                        children = (
-                               DF294E7815DAD78E004FDDEC /* addonbindings.a */,
                                F589AE7012890B9E00D8079E /* libapetag.a */,
                                F589AE7E12890BEF00D8079E /* librtv.a */,
                                F589AE7D12890BEF00D8079E /* libsquish.a */,
                                F589AE8012890BEF00D8079E /* libxdaap.a */,
                                18404DFC1396C44F00863BBA /* SlingboxLib.a */,
+                               F502C0C1160F422A00C96C76 /* legacy.a */,
+                               F502C0C2160F422A00C96C76 /* python_binding.a */,
                        );
                        name = "Internal Libs";
                        sourceTree = "<group>";
                        buildConfigurationList = 1DEB911A08733D790010E9CD /* Build configuration list for PBXNativeTarget "XBMC" */;
                        buildPhases = (
                                8D57630F048677EA00EA77CD /* Resources */,
+                               F502C0C6160F423400C96C76 /* Make interface-legacy */,
+                               F502C0CA160F425200C96C76 /* Make interface-python */,
                                8D576311048677EA00EA77CD /* Sources */,
                                8D576313048677EA00EA77CD /* Frameworks */,
                                F589B48B128A696700D8079E /* copy root files */,
                        shellPath = /bin/sh;
                        shellScript = "if [ ${XCODE_VERSION_MINOR} -gt 400 ]\nthen\n  TARGET_OUTPUT_DIR=\"${PROJECT_DIR}/build/${CONFIGURATION}${EFFECTIVE_PLATFORM_NAME}\"\n  mkdir -p \"${TARGET_OUTPUT_DIR}\"\n  if [ \"${BUILT_PRODUCTS_DIR}\" != \"${TARGET_OUTPUT_DIR}\" ]\n  then\n    rm -rf \"${TARGET_OUTPUT_DIR}/${FULL_PRODUCT_NAME}\"\n    rm -rf \"${TARGET_OUTPUT_DIR}/${DWARF_DSYM_FILE_NAME}\"\n    ln -s \"${BUILT_PRODUCTS_DIR}/${FULL_PRODUCT_NAME}\" \"${TARGET_OUTPUT_DIR}/\"  || true\n    ln -s \"${BUILT_PRODUCTS_DIR}/${DWARF_DSYM_FILE_NAME}\" \"${TARGET_OUTPUT_DIR}/\" || true\n  fi\nfi";
                };
+               F502C0C6160F423400C96C76 /* Make interface-legacy */ = {
+                       isa = PBXShellScriptBuildPhase;
+                       buildActionMask = 2147483647;
+                       files = (
+                       );
+                       inputPaths = (
+                       );
+                       name = "Make interface-legacy";
+                       outputPaths = (
+                       );
+                       runOnlyForDeploymentPostprocessing = 0;
+                       shellPath = /bin/sh;
+                       shellScript = "make -C ${SRCROOT}/xbmc/interfaces/legacy";
+               };
+               F502C0CA160F425200C96C76 /* Make interface-python */ = {
+                       isa = PBXShellScriptBuildPhase;
+                       buildActionMask = 2147483647;
+                       files = (
+                       );
+                       inputPaths = (
+                       );
+                       name = "Make interface-python";
+                       outputPaths = (
+                       );
+                       runOnlyForDeploymentPostprocessing = 0;
+                       shellPath = /bin/sh;
+                       shellScript = "make -C ${SRCROOT}/xbmc/interfaces/python";
+               };
                F589B48B128A696700D8079E /* copy root files */ = {
                        isa = PBXShellScriptBuildPhase;
                        buildActionMask = 2147483647;
                                        "\"$(SRCROOT)/lib/ffmpeg/libswscale\"",
                                        "\"$(SRCROOT)/xbmc/interfaces\"",
                                        "\"$(SRCROOT)/xbmc/interfaces/legacy\"",
+                                       "\"$(SRCROOT)/xbmc/interfaces/python\"",
                                );
                                OTHER_CPLUSPLUSFLAGS = (
                                        "$(OTHER_CFLAGS)",
                                        "\"$(SRCROOT)/lib/ffmpeg/libswscale\"",
                                        "\"$(SRCROOT)/xbmc/interfaces\"",
                                        "\"$(SRCROOT)/xbmc/interfaces/legacy\"",
+                                       "\"$(SRCROOT)/xbmc/interfaces/python\"",
                                );
                                OTHER_CPLUSPLUSFLAGS = (
                                        "$(OTHER_CFLAGS)",
index 9f0212a..4bef24d 100644 (file)
@@ -99,7 +99,6 @@
                DF23462315FA675200A934F6 /* UPnPInternal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DF23461B15FA675200A934F6 /* UPnPInternal.cpp */; };
                DF23462415FA675200A934F6 /* UPnPRenderer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DF23461D15FA675200A934F6 /* UPnPRenderer.cpp */; };
                DF23462515FA675200A934F6 /* UPnPServer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DF23461F15FA675200A934F6 /* UPnPServer.cpp */; };
-               DF294E4015DACE94004FDDEC /* addonbindings.a in Frameworks */ = {isa = PBXBuildFile; fileRef = DF294E3F15DACE94004FDDEC /* addonbindings.a */; };
                DF2E329415509B2C000F5772 /* XbmcContext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DF2E329215509B2C000F5772 /* XbmcContext.cpp */; };
                DF33C29415509BF50046CDCB /* ilog.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DF33C29115509BF50046CDCB /* ilog.cpp */; };
                DF3488F813FD961A0026A711 /* GUIAction.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DF3488F613FD961A0026A711 /* GUIAction.cpp */; };
                DFFD59401506B5B10088DE4B /* IOSEAGLView.mm in Sources */ = {isa = PBXBuildFile; fileRef = DFFD593F1506B5B10088DE4B /* IOSEAGLView.mm */; };
                DFFEFBEE15160739001294DC /* IOSScreenManager.mm in Sources */ = {isa = PBXBuildFile; fileRef = DFFEFBED15160739001294DC /* IOSScreenManager.mm */; };
                DFFEFC0415160808001294DC /* IOSExternalTouchController.mm in Sources */ = {isa = PBXBuildFile; fileRef = DFFEFC0315160808001294DC /* IOSExternalTouchController.mm */; };
+               F502C07F160F419400C96C76 /* legacy.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F502C07D160F419400C96C76 /* legacy.a */; };
+               F502C080160F419400C96C76 /* python_binding.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F502C07E160F419400C96C76 /* python_binding.a */; };
                F56B143412CAF279009B4C96 /* CoreVideo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F56B143312CAF279009B4C96 /* CoreVideo.framework */; };
                F56B14A512CAF523009B4C96 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F56B14A412CAF523009B4C96 /* AudioToolbox.framework */; };
                F56B15D512CD67A9009B4C96 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F56B15D412CD67A9009B4C96 /* CoreGraphics.framework */; };
                DF23461E15FA675200A934F6 /* UPnPRenderer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UPnPRenderer.h; sourceTree = "<group>"; };
                DF23461F15FA675200A934F6 /* UPnPServer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UPnPServer.cpp; sourceTree = "<group>"; };
                DF23462015FA675200A934F6 /* UPnPServer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UPnPServer.h; sourceTree = "<group>"; };
-               DF294E3F15DACE94004FDDEC /* addonbindings.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = addonbindings.a; path = xbmc/interfaces/addonbindings.a; sourceTree = "<group>"; };
                DF2E329215509B2C000F5772 /* XbmcContext.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = XbmcContext.cpp; sourceTree = "<group>"; };
                DF2E329315509B2C000F5772 /* XbmcContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XbmcContext.h; sourceTree = "<group>"; };
                DF33C29115509BF50046CDCB /* ilog.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ilog.cpp; sourceTree = "<group>"; };
                DFFEFBED15160739001294DC /* IOSScreenManager.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = IOSScreenManager.mm; sourceTree = "<group>"; };
                DFFEFC0215160808001294DC /* IOSExternalTouchController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IOSExternalTouchController.h; sourceTree = "<group>"; };
                DFFEFC0315160808001294DC /* IOSExternalTouchController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = IOSExternalTouchController.mm; sourceTree = "<group>"; };
+               F502C05B160F416F00C96C76 /* CallbackHandler.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CallbackHandler.cpp; path = python/CallbackHandler.cpp; sourceTree = "<group>"; };
+               F502C05C160F416F00C96C76 /* CallbackHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CallbackHandler.h; path = python/CallbackHandler.h; sourceTree = "<group>"; };
+               F502C05D160F416F00C96C76 /* LanguageHook.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LanguageHook.cpp; path = python/LanguageHook.cpp; sourceTree = "<group>"; };
+               F502C05E160F416F00C96C76 /* LanguageHook.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LanguageHook.h; path = python/LanguageHook.h; sourceTree = "<group>"; };
+               F502C076160F417B00C96C76 /* swig.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = swig.cpp; path = python/swig.cpp; sourceTree = "<group>"; };
+               F502C077160F417B00C96C76 /* swig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = swig.h; path = python/swig.h; sourceTree = "<group>"; };
+               F502C078160F417B00C96C76 /* XBPython.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = XBPython.cpp; path = python/XBPython.cpp; sourceTree = "<group>"; };
+               F502C079160F417B00C96C76 /* XBPython.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = XBPython.h; path = python/XBPython.h; sourceTree = "<group>"; };
+               F502C07A160F417B00C96C76 /* XBPyThread.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = XBPyThread.cpp; path = python/XBPyThread.cpp; sourceTree = "<group>"; };
+               F502C07B160F417B00C96C76 /* XBPyThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = XBPyThread.h; path = python/XBPyThread.h; sourceTree = "<group>"; };
+               F502C07D160F419400C96C76 /* legacy.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = legacy.a; path = xbmc/interfaces/legacy/legacy.a; sourceTree = "<group>"; };
+               F502C07E160F419400C96C76 /* python_binding.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = python_binding.a; path = xbmc/interfaces/python/python_binding.a; sourceTree = "<group>"; };
                F558F60613AFDC1700631E12 /* Condition.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Condition.h; sourceTree = "<group>"; };
                F558F61013AFDC3000631E12 /* ThreadLocal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ThreadLocal.h; sourceTree = "<group>"; };
                F56B143312CAF279009B4C96 /* CoreVideo.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreVideo.framework; path = System/Library/Frameworks/CoreVideo.framework; sourceTree = SDKROOT; };
                                F56C8C12131F4811000AD0F6 /* librtv.a in Frameworks */,
                                F56C8C14131F4811000AD0F6 /* libxdaap.a in Frameworks */,
                                18404DD31396C3D200863BBA /* SlingboxLib.a in Frameworks */,
-                               DF294E4015DACE94004FDDEC /* addonbindings.a in Frameworks */,
+                               F502C07F160F419400C96C76 /* legacy.a in Frameworks */,
+                               F502C080160F419400C96C76 /* python_binding.a in Frameworks */,
                        );
                        runOnlyForDeploymentPostprocessing = 0;
                };
                DF1ACFF415FCE56C00E10810 /* python */ = {
                        isa = PBXGroup;
                        children = (
+                               F502C05B160F416F00C96C76 /* CallbackHandler.cpp */,
+                               F502C05C160F416F00C96C76 /* CallbackHandler.h */,
+                               F502C05D160F416F00C96C76 /* LanguageHook.cpp */,
+                               F502C05E160F416F00C96C76 /* LanguageHook.h */,
                                DF1ACFF515FCE57C00E10810 /* generated */,
+                               F502C076160F417B00C96C76 /* swig.cpp */,
+                               F502C077160F417B00C96C76 /* swig.h */,
+                               F502C078160F417B00C96C76 /* XBPython.cpp */,
+                               F502C079160F417B00C96C76 /* XBPython.h */,
+                               F502C07A160F417B00C96C76 /* XBPyThread.cpp */,
+                               F502C07B160F417B00C96C76 /* XBPyThread.h */,
                        );
                        name = python;
                        sourceTree = "<group>";
                F589AE6D12890B6700D8079E /* Internal Libs */ = {
                        isa = PBXGroup;
                        children = (
-                               DF294E3F15DACE94004FDDEC /* addonbindings.a */,
                                F56C8C03131F47EA000AD0F6 /* libapetag.a */,
                                F56C8C0E131F4811000AD0F6 /* librtv.a */,
                                F56C8C0D131F4811000AD0F6 /* libsquish.a */,
                                F56C8C10131F4811000AD0F6 /* libxdaap.a */,
                                18404DD21396C3D200863BBA /* SlingboxLib.a */,
+                               F502C07D160F419400C96C76 /* legacy.a */,
+                               F502C07E160F419400C96C76 /* python_binding.a */,
                        );
                        name = "Internal Libs";
                        sourceTree = "<group>";
                        buildConfigurationList = 1DEB911A08733D790010E9CD /* Build configuration list for PBXNativeTarget "XBMC" */;
                        buildPhases = (
                                8D57630F048677EA00EA77CD /* Resources */,
+                               F502C082160F41A700C96C76 /* Make interface-legacy */,
+                               F502C086160F41D900C96C76 /* Make interface-python */,
                                8D576311048677EA00EA77CD /* Sources */,
                                8D576313048677EA00EA77CD /* Frameworks */,
                                F589B48B128A696700D8079E /* copy root files */,
                        shellPath = /bin/sh;
                        shellScript = "export CODESIGN_ALLOCATE=`xcodebuild -find codesign_allocate`\nif [ \"${PLATFORM_NAME}\" == \"iphoneos\" ]; then\n/Developer/iphoneentitlements401/gen_entitlements.py \"org.xbmc.xbmc-ios\" \"${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent\";\ncodesign -f -s \"iPhone Developer\" --entitlements \"${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent\" \"${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/\"\nfi";
                };
+               F502C082160F41A700C96C76 /* Make interface-legacy */ = {
+                       isa = PBXShellScriptBuildPhase;
+                       buildActionMask = 2147483647;
+                       files = (
+                       );
+                       inputPaths = (
+                       );
+                       name = "Make interface-legacy";
+                       outputPaths = (
+                       );
+                       runOnlyForDeploymentPostprocessing = 0;
+                       shellPath = /bin/sh;
+                       shellScript = "make -C ${SRCROOT}/xbmc/interfaces/legacy";
+               };
+               F502C086160F41D900C96C76 /* Make interface-python */ = {
+                       isa = PBXShellScriptBuildPhase;
+                       buildActionMask = 2147483647;
+                       files = (
+                       );
+                       inputPaths = (
+                       );
+                       name = "Make interface-python";
+                       outputPaths = (
+                       );
+                       runOnlyForDeploymentPostprocessing = 0;
+                       shellPath = /bin/sh;
+                       shellScript = "make -C ${SRCROOT}/xbmc/interfaces/python";
+               };
                F589B48B128A696700D8079E /* copy root files */ = {
                        isa = PBXShellScriptBuildPhase;
                        buildActionMask = 2147483647;
                                        "\"$(SRCROOT)/lib/ffmpeg/libpostproc\"",
                                        "\"$(SRCROOT)/lib/ffmpeg/libswscale\"",
                                        "\"$(SRCROOT)/xbmc/interfaces\"",
+                                       "\"$(SRCROOT)/xbmc/interfaces/legacy\"",
+                                       "\"$(SRCROOT)/xbmc/interfaces/python\"",
                                );
                                OTHER_CPLUSPLUSFLAGS = (
                                        "$(OTHER_CFLAGS)",
                                        "\"$(SRCROOT)/lib/ffmpeg/libpostproc\"",
                                        "\"$(SRCROOT)/lib/ffmpeg/libswscale\"",
                                        "\"$(SRCROOT)/xbmc/interfaces\"",
+                                       "\"$(SRCROOT)/xbmc/interfaces/legacy\"",
+                                       "\"$(SRCROOT)/xbmc/interfaces/python\"",
                                );
                                OTHER_CPLUSPLUSFLAGS = (
                                        "$(OTHER_CFLAGS)",
index 8da85b6..80022da 100644 (file)
                DF3488E713FD958F0026A711 /* GUIAction.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DF3488E513FD958F0026A711 /* GUIAction.cpp */; };
                DF34892A13FD9C780026A711 /* AirPlayServer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DF34892813FD9C780026A711 /* AirPlayServer.cpp */; };
                DF34898213FDAAF60026A711 /* HttpParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DF34898113FDAAF60026A711 /* HttpParser.cpp */; };
-               DF357C6015D9ADB600C1EEC7 /* addonbindings.a in Frameworks */ = {isa = PBXBuildFile; fileRef = DF357C5F15D9ADB600C1EEC7 /* addonbindings.a */; };
                DF448457140048A60069344B /* AirTunesServer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DF448455140048A60069344B /* AirTunesServer.cpp */; };
                DF44845E140048C80069344B /* PipesManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DF44845B140048C80069344B /* PipesManager.cpp */; };
                DF4484EE140054530069344B /* BXAcodec.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DF4484EC140054530069344B /* BXAcodec.cpp */; };
                E4E91BB80E7F7338001F0546 /* NptXbmcFile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4E91BB70E7F7338001F0546 /* NptXbmcFile.cpp */; };
                EC720A8F155091BB00FFD782 /* ilog.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EC720A8D155091BB00FFD782 /* ilog.cpp */; };
                EC720A9D1550927000FFD782 /* XbmcContext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EC720A9B1550927000FFD782 /* XbmcContext.cpp */; };
+               F502C02A160F394F00C96C76 /* python_binding.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F502C029160F394F00C96C76 /* python_binding.a */; };
+               F502C02E160F399200C96C76 /* legacy.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F502C02D160F399200C96C76 /* legacy.a */; };
                F506297A0E57B9680066625A /* MultiPathFile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F50629780E57B9680066625A /* MultiPathFile.cpp */; };
                F50FDC5A119B4B2C00C8B8CD /* GUIDialogTextViewer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F50FDC59119B4B2C00C8B8CD /* GUIDialogTextViewer.cpp */; };
                F50FE04A11A3410300C8B8CD /* EncoderFlac.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F50FE04811A3410300C8B8CD /* EncoderFlac.cpp */; };
                DF34892913FD9C780026A711 /* AirPlayServer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AirPlayServer.h; sourceTree = "<group>"; };
                DF34897A13FDAA270026A711 /* HttpParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HttpParser.h; sourceTree = "<group>"; };
                DF34898113FDAAF60026A711 /* HttpParser.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HttpParser.cpp; sourceTree = "<group>"; };
-               DF357C5F15D9ADB600C1EEC7 /* addonbindings.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = addonbindings.a; path = xbmc/interfaces/addonbindings.a; sourceTree = "<group>"; };
                DF448455140048A60069344B /* AirTunesServer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AirTunesServer.cpp; sourceTree = "<group>"; };
                DF448456140048A60069344B /* AirTunesServer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AirTunesServer.h; sourceTree = "<group>"; };
                DF44845B140048C80069344B /* PipesManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PipesManager.cpp; sourceTree = "<group>"; };
                EC720A8E155091BB00FFD782 /* ilog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ilog.h; path = commons/ilog.h; sourceTree = "<group>"; };
                EC720A9B1550927000FFD782 /* XbmcContext.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = XbmcContext.cpp; sourceTree = "<group>"; };
                EC720A9C1550927000FFD782 /* XbmcContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XbmcContext.h; sourceTree = "<group>"; };
+               F502BFDA160F34B900C96C76 /* CallbackHandler.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CallbackHandler.cpp; path = python/CallbackHandler.cpp; sourceTree = "<group>"; };
+               F502BFDB160F34B900C96C76 /* CallbackHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CallbackHandler.h; path = python/CallbackHandler.h; sourceTree = "<group>"; };
+               F502BFE4160F34DC00C96C76 /* LanguageHook.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LanguageHook.cpp; path = python/LanguageHook.cpp; sourceTree = "<group>"; };
+               F502BFE5160F34DC00C96C76 /* LanguageHook.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LanguageHook.h; path = python/LanguageHook.h; sourceTree = "<group>"; };
+               F502BFE6160F34FE00C96C76 /* XBPython.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = XBPython.cpp; path = python/XBPython.cpp; sourceTree = "<group>"; };
+               F502BFE7160F34FE00C96C76 /* XBPython.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = XBPython.h; path = python/XBPython.h; sourceTree = "<group>"; };
+               F502BFE8160F34FE00C96C76 /* XBPyThread.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = XBPyThread.cpp; path = python/XBPyThread.cpp; sourceTree = "<group>"; };
+               F502BFE9160F34FE00C96C76 /* XBPyThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = XBPyThread.h; path = python/XBPyThread.h; sourceTree = "<group>"; };
+               F502BFF0160F36AD00C96C76 /* swig.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = swig.cpp; path = python/swig.cpp; sourceTree = "<group>"; };
+               F502BFF1160F36AD00C96C76 /* swig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = swig.h; path = python/swig.h; sourceTree = "<group>"; };
+               F502C029160F394F00C96C76 /* python_binding.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = python_binding.a; path = xbmc/interfaces/python/python_binding.a; sourceTree = "<group>"; };
+               F502C02D160F399200C96C76 /* legacy.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = legacy.a; path = xbmc/interfaces/legacy/legacy.a; sourceTree = "<group>"; };
                F50629780E57B9680066625A /* MultiPathFile.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = MultiPathFile.cpp; sourceTree = "<group>"; };
                F50629790E57B9680066625A /* MultiPathFile.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = MultiPathFile.h; sourceTree = "<group>"; };
                F50FDC58119B4B2C00C8B8CD /* GUIDialogTextViewer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GUIDialogTextViewer.h; sourceTree = "<group>"; };
                                F59879080FBAA0C3008EF4FB /* QuartzCore.framework in Frameworks */,
                                F52A733D1560BC34005B1A0B /* CoreFoundation.framework in Frameworks */,
                                DFBE805115F7D75700D7D102 /* SystemConfiguration.framework in Frameworks */,
-                               DF357C6015D9ADB600C1EEC7 /* addonbindings.a in Frameworks */,
+                               F502C02A160F394F00C96C76 /* python_binding.a in Frameworks */,
+                               F502C02E160F399200C96C76 /* legacy.a in Frameworks */,
                        );
                        runOnlyForDeploymentPostprocessing = 0;
                };
                DF1ACFE815FCE53900E10810 /* python */ = {
                        isa = PBXGroup;
                        children = (
+                               F502BFDA160F34B900C96C76 /* CallbackHandler.cpp */,
+                               F502BFDB160F34B900C96C76 /* CallbackHandler.h */,
+                               F502BFE4160F34DC00C96C76 /* LanguageHook.cpp */,
+                               F502BFE5160F34DC00C96C76 /* LanguageHook.h */,
                                DF1ACFD015FCE50700E10810 /* generated */,
+                               F502BFF0160F36AD00C96C76 /* swig.cpp */,
+                               F502BFF1160F36AD00C96C76 /* swig.h */,
+                               F502BFE6160F34FE00C96C76 /* XBPython.cpp */,
+                               F502BFE7160F34FE00C96C76 /* XBPython.h */,
+                               F502BFE8160F34FE00C96C76 /* XBPyThread.cpp */,
+                               F502BFE9160F34FE00C96C76 /* XBPyThread.h */,
                        );
                        name = python;
                        sourceTree = "<group>";
                F57E1ED20E36E8FD00700C9D /* internal libs */ = {
                        isa = PBXGroup;
                        children = (
-                               DF357C5F15D9ADB600C1EEC7 /* addonbindings.a */,
                                F5DC888A110A654000EE1B15 /* libapetag.a */,
                                E38E256C0D263A1C00618676 /* librtv.a */,
                                43352CED1071634600706B8A /* libsquish.a */,
                                E38E25680D2639F100618676 /* libxdaap.a */,
                                18404DA51396C31B00863BBA /* SlingboxLib.a */,
+                               F502C02D160F399200C96C76 /* legacy.a */,
+                               F502C029160F394F00C96C76 /* python_binding.a */,
                        );
                        name = "internal libs";
                        sourceTree = "<group>";
                        isa = PBXNativeTarget;
                        buildConfigurationList = 1DEB924708733DCA0010E9CD /* Build configuration list for PBXNativeTarget "XBMC" */;
                        buildPhases = (
+                               F502C031160F39B300C96C76 /* Make interface-legacy */,
+                               F502C011160F378F00C96C76 /* Make interface-python */,
                                8DD76F760486A8DE00D96B5E /* Sources */,
                                8DD76F780486A8DE00D96B5E /* Frameworks */,
                                1D64E5FA157BD742001ACEBE /* genoutputdirlink */,
                        shellPath = /bin/sh;
                        shellScript = "# Update version in Info.plist with Git revision\nGIT_REVISION=\"Unknown\"\nBUNDLE_NAME=\"XBMC\"\n\nGIT_REVISION=\"Git-\"$(cat git_revision.h | sed -n 's/\\(.*\\)\\\"\\(.*\\)\\\"\\(.*\\)/\\2/p')\nperl -p -i -e \"s/r####/$GIT_REVISION/\" \"$TARGET_BUILD_DIR/$BUNDLE_NAME.app/Contents/Info.plist\"\n";
                };
+               F502C011160F378F00C96C76 /* Make interface-python */ = {
+                       isa = PBXShellScriptBuildPhase;
+                       buildActionMask = 2147483647;
+                       files = (
+                       );
+                       inputPaths = (
+                       );
+                       name = "Make interface-python";
+                       outputPaths = (
+                       );
+                       runOnlyForDeploymentPostprocessing = 0;
+                       shellPath = /bin/sh;
+                       shellScript = "make -C ${SRCROOT}/xbmc/interfaces/python";
+               };
+               F502C031160F39B300C96C76 /* Make interface-legacy */ = {
+                       isa = PBXShellScriptBuildPhase;
+                       buildActionMask = 2147483647;
+                       files = (
+                       );
+                       inputPaths = (
+                       );
+                       name = "Make interface-legacy";
+                       outputPaths = (
+                       );
+                       runOnlyForDeploymentPostprocessing = 0;
+                       shellPath = /bin/sh;
+                       shellScript = "make -C ${SRCROOT}/xbmc/interfaces/legacy";
+                       showEnvVarsInLog = 0;
+               };
                F5DEC3580E6DEBB2005A4E24 /* copy root files */ = {
                        isa = PBXShellScriptBuildPhase;
                        buildActionMask = 2147483647;
                                        "\"$(SRCROOT)/lib/ffmpeg/libswresample\"",
                                        "\"$(SRCROOT)/lib/ffmpeg/libpostproc\"",
                                        "\"$(SRCROOT)/lib/ffmpeg/libswscale\"",
+                                       "\"$(SRCROOT)/xbmc/interfaces/python\"",
+                                       "\"$(SRCROOT)/xbmc/interfaces/legacy\"",
                                );
                                LINK_WITH_STANDARD_LIBRARIES = YES;
                                OTHER_CPLUSPLUSFLAGS = (
                                        "\"$(SRCROOT)/lib/ffmpeg/libswresample\"",
                                        "\"$(SRCROOT)/lib/ffmpeg/libpostproc\"",
                                        "\"$(SRCROOT)/lib/ffmpeg/libswscale\"",
+                                       "\"$(SRCROOT)/xbmc/interfaces/python\"",
+                                       "\"$(SRCROOT)/xbmc/interfaces/legacy\"",
                                );
                                LINK_WITH_STANDARD_LIBRARIES = YES;
                                OTHER_CPLUSPLUSFLAGS = (