diff --git a/.gitignore b/.gitignore index 12e1f48fc8..0f7cb7a824 100644 --- a/.gitignore +++ b/.gitignore @@ -385,15 +385,7 @@ lib/cmyth/Makefile /system/profiles.xml # /system/python -/system/python/Lib/ -/system/python/python24.zip -/system/python/python24.dll -/system/python/DLLs/_socket.pyd -/system/python/DLLs/pyexpat.pyd -/system/python/DLLs/select.pyd -/system/python/DLLs/unicodedata.pyd -/system/python/DLLs/zlib.pyd -/system/python/DLLs/bz2.pyd +/system/python/ # /system/webserver /system/webserver @@ -496,6 +488,7 @@ lib/cmyth/Makefile /xbmc/cores/DllLoader/exports/build_wrapper.sh /xbmc/cores/DllLoader/exports/wrapper.def /xbmc/cores/DllLoader/Makefile + /xbmc/cores/Makefile /xbmc/cores/VideoRenderers/Makefile @@ -1029,6 +1022,8 @@ lib/cmyth/Makefile # /xbmc/interfaces/ /xbmc/interfaces/Makefile +/xbmc/interfaces/python/Makefile +/xbmc/interfaces/python/xbmcmodule/Makefile /xbmc/interfaces/python/linux/Makefile /xbmc/interfaces/python/linux/wrapper_python.def diff --git a/Makefile.in b/Makefile.in index 5efe6cbed7..21d2288705 100644 --- a/Makefile.in +++ b/Makefile.in @@ -120,11 +120,14 @@ LIB_DIRS=\ lib/libhdhomerun \ lib/libid3tag \ lib/libapetag \ - xbmc/interfaces/python/linux \ lib/cpluff \ lib/xbmc-dll-symbols \ lib/jsoncpp/src/lib_json +ifneq (@USE_EXTERNAL_PYTHON@,1) +LIB_DIRS+=xbmc/interfaces/python/linux +endif + SS_DIRS=\ xbmc/screensavers/rsxs-0.9/xbmc @@ -168,6 +171,12 @@ DISTCLEAN_FILES=config.h config.log config.status tools/Linux/xbmc.sh \ lib/python/libpython2.4.so.1.0 \ system/libcpluff-@ARCH@.so +ifneq (@USE_EXTERNAL_PYTHON@,1) + PYTHON_TARGET=python +else + PYTHON_TARGET= +endif + all : Makefile externals xbmc.bin xbmc-xrandr skins include Makefile.include @@ -407,8 +416,10 @@ endif libpython: dllloader $(MAKE) -C xbmc/interfaces/python $(MAKE) -C xbmc/interfaces/python/xbmcmodule +ifneq (@USE_EXTERNAL_PYTHON@,1) python: dllloader $(MAKE) -C xbmc/interfaces/python/linux +endif dvdpcodecs: dllloader $(MAKE) -C lib $(MAKE) -C lib/libdvd @@ -453,6 +464,12 @@ codecs: papcodecs dvdpcodecs libs: cmyth libhdhomerun libid3tag imagelib libexif python system/libcpluff-@ARCH@.so externals: codecs libs python visualizations screensavers +ifeq ($(findstring osx,@ARCH@), osx) +libs: libhdhomerun libid3tag imagelib libexif $(PYTHON_TARGET) system/libcpluff-@ARCH@.so system/players/paplayer/libmodplug-@ARCH@.so +else +libs: libhdhomerun libid3tag imagelib libexif $(PYTHON_TARGET) system/libcpluff-@ARCH@.so +endif + xcode_depends: \ codecs libs python visualizations screensavers eventclients skins \ lib/libsquish/libsquish.a \ @@ -579,6 +596,10 @@ ifeq ($(findstring arm,@ARCH@), arm) LIBS +=-lpython2.6 endif +ifeq (@USE_EXTERNAL_PYTHON@,1) +LIBS += @PYTHON_LDFLAGS@ +endif + xbmc.bin: $(OBJSXBMC) $(DYNOBJSXBMC) ifeq ($(findstring osx,@ARCH@), osx) $(CXX) $(LDFLAGS) -o xbmc.bin -Wl,-all_load,-ObjC $(DYNOBJSXBMC) $(OBJSXBMC) $(LIBS) -rdynamic diff --git a/XBMC.xcodeproj/project.pbxproj b/XBMC.xcodeproj/project.pbxproj index cd56d940ae..1287265169 100644 --- a/XBMC.xcodeproj/project.pbxproj +++ b/XBMC.xcodeproj/project.pbxproj @@ -38,7 +38,7 @@ /* End PBXAggregateTarget section */ /* Begin PBXBuildFile section */ - 183C454D130C4D55006AA317 /* xbmcvfsmodule.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 189047D11301DEAB00C11012 /* xbmcvfsmodule.cpp */; }; + 183C454D130C4D55006AA317 /* xbmcvfsmodule.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 189047D11301DEAB00C11012 /* xbmcvfsmodule.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; 183FDF8A11AF0B0500B81E9C /* PluginSource.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 183FDF8811AF0B0500B81E9C /* PluginSource.cpp */; }; 183FDF8B11AF0B0500B81E9C /* PluginSource.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 183FDF8811AF0B0500B81E9C /* PluginSource.cpp */; }; 184C472F1296BC6E0006DB3E /* Service.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 184C472D1296BC6E0006DB3E /* Service.cpp */; }; @@ -363,6 +363,7 @@ 18C1D22E13033F6A00CFFE59 /* GLUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 18C1D22B13033F6A00CFFE59 /* GLUtils.cpp */; }; 18CCEAEE1112F5B800615FC6 /* PCMRemap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 18CCEAEC1112F5B800615FC6 /* PCMRemap.cpp */; }; 18CCEAEF1112F5B800615FC6 /* PCMRemap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 18CCEAEC1112F5B800615FC6 /* PCMRemap.cpp */; }; + 384718D81325BA04000486D6 /* XBDateTime.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 384718D61325BA04000486D6 /* XBDateTime.cpp */; }; 431AE5D9109C1A63007428C3 /* OverlayRendererUtil.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 431AE5D7109C1A63007428C3 /* OverlayRendererUtil.cpp */; }; 431AE5DA109C1A63007428C3 /* OverlayRendererUtil.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 431AE5D7109C1A63007428C3 /* OverlayRendererUtil.cpp */; }; 43248C4E0FBE224000B88866 /* LockFree.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 83A72B950FBC8E3B00171871 /* LockFree.cpp */; }; @@ -535,8 +536,8 @@ 7CD2C3AB11940B270009EFC1 /* DirectoryNodeCountry.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CD2C3A811940B270009EFC1 /* DirectoryNodeCountry.cpp */; }; 7CD2CD0111B38B000009EFC1 /* PythonAddon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CD2CCFE11B38B000009EFC1 /* PythonAddon.cpp */; }; 7CD2CD0211B38B000009EFC1 /* xbmcaddonmodule.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CD2CD0011B38B000009EFC1 /* xbmcaddonmodule.cpp */; }; - 7CD2CD0311B38B000009EFC1 /* PythonAddon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CD2CCFE11B38B000009EFC1 /* PythonAddon.cpp */; }; - 7CD2CD0411B38B000009EFC1 /* xbmcaddonmodule.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CD2CD0011B38B000009EFC1 /* xbmcaddonmodule.cpp */; }; + 7CD2CD0311B38B000009EFC1 /* PythonAddon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CD2CCFE11B38B000009EFC1 /* PythonAddon.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + 7CD2CD0411B38B000009EFC1 /* xbmcaddonmodule.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CD2CD0011B38B000009EFC1 /* xbmcaddonmodule.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; 7CDAE9050FFCA3520040B25F /* DVDTSCorrection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CDAE9030FFCA3520040B25F /* DVDTSCorrection.cpp */; }; 7CDAE9060FFCA3520040B25F /* DVDTSCorrection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CDAE9030FFCA3520040B25F /* DVDTSCorrection.cpp */; }; 7CDAEA7D1001CD6E0040B25F /* karaokelyricstextustar.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CDAEA7B1001CD6E0040B25F /* karaokelyricstextustar.cpp */; }; @@ -568,10 +569,9 @@ 889B4D8E0E0EF86C00FAD25E /* RSSDirectory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 889B4D8C0E0EF86C00FAD25E /* RSSDirectory.cpp */; }; 88ACB01B0DCF40800083CFDF /* ASAPFileDirectory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 88ACB0190DCF40800083CFDF /* ASAPFileDirectory.cpp */; }; 88ACB01F0DCF409E0083CFDF /* ASAPCodec.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 88ACB01C0DCF409E0083CFDF /* ASAPCodec.cpp */; }; - 88D9FF600DD264B500EDA56F /* XBPythonDllFuncs.S in Sources */ = {isa = PBXBuildFile; fileRef = 88D9FF5F0DD264B500EDA56F /* XBPythonDllFuncs.S */; }; 88ECB6590DE013C4003396A7 /* DiskArbitration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 88ECB6580DE013C4003396A7 /* DiskArbitration.framework */; }; 8DD76F790486A8DE00D96B5E /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 09AB6884FE841BABC02AAC07 /* CoreFoundation.framework */; }; - C80425711158A0DE00D158A6 /* controlslider.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C80425701158A0DE00D158A6 /* controlslider.cpp */; }; + C80425711158A0DE00D158A6 /* controlslider.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C80425701158A0DE00D158A6 /* controlslider.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; C80425721158A0DE00D158A6 /* controlslider.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C80425701158A0DE00D158A6 /* controlslider.cpp */; }; C84BF7341349BB74006D6FC9 /* JSONServiceDescription.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C84BF7321349BB74006D6FC9 /* JSONServiceDescription.cpp */; }; C85EB75C1174614E0008E5A5 /* Repository.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C85EB75A1174614E0008E5A5 /* Repository.cpp */; }; @@ -582,7 +582,7 @@ E33206380D5070AA00435CE3 /* DVDDemuxVobsub.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E33206370D5070AA00435CE3 /* DVDDemuxVobsub.cpp */; }; E33466A60D2E5103005A65EC /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E33466A50D2E5103005A65EC /* IOKit.framework */; }; E33979960D62FD48004ECDDA /* DVDInputStreamTV.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E33979940D62FD47004ECDDA /* DVDInputStreamTV.cpp */; }; - E354EF040D99EDC900B55311 /* controlradiobutton.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E354EF030D99EDC900B55311 /* controlradiobutton.cpp */; }; + E354EF040D99EDC900B55311 /* controlradiobutton.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E354EF030D99EDC900B55311 /* controlradiobutton.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; E35EF2550D380C3D00DB5CD5 /* QuickTime.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E35EF2540D380C3D00DB5CD5 /* QuickTime.framework */; }; E35EF3240D380E1E00DB5CD5 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E35EF3230D380E1E00DB5CD5 /* Carbon.framework */; }; E36578880D3AA7B40033CC1C /* DVDPlayerCodec.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E36578860D3AA7B40033CC1C /* DVDPlayerCodec.cpp */; }; @@ -689,7 +689,6 @@ E38E1FF10D25F9FD00618676 /* YUV2RGBShader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E16710D25F9FA00618676 /* YUV2RGBShader.cpp */; }; E38E1FF70D25F9FD00618676 /* CueDocument.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E167E0D25F9FA00618676 /* CueDocument.cpp */; }; E38E1FF80D25F9FD00618676 /* Database.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E16800D25F9FA00618676 /* Database.cpp */; }; - E38E1FF90D25F9FD00618676 /* DateTime.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E16820D25F9FA00618676 /* DateTime.cpp */; }; E38E1FFA0D25F9FD00618676 /* DetectDVDType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E16840D25F9FA00618676 /* DetectDVDType.cpp */; }; E38E1FFB0D25F9FD00618676 /* DNSNameCache.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E16890D25F9FA00618676 /* DNSNameCache.cpp */; }; E38E1FFC0D25F9FD00618676 /* DynamicDll.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E168C0D25F9FA00618676 /* DynamicDll.cpp */; }; @@ -858,9 +857,8 @@ E38E20D60D25F9FD00618676 /* LangCodeExpander.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E18560D25F9FA00618676 /* LangCodeExpander.cpp */; }; E38E20D70D25F9FD00618676 /* LangInfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E18580D25F9FA00618676 /* LangInfo.cpp */; }; E38E20D80D25F9FD00618676 /* LastFmManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E185A0D25F9FA00618676 /* LastFmManager.cpp */; }; - E38E21600D25F9FD00618676 /* XBPython.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E1A0D0D25F9FB00618676 /* XBPython.cpp */; }; - E38E21610D25F9FD00618676 /* XBPythonDll.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E1A0F0D25F9FB00618676 /* XBPythonDll.cpp */; }; - E38E21620D25F9FD00618676 /* XBPyThread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E1A110D25F9FB00618676 /* XBPyThread.cpp */; }; + E38E21600D25F9FD00618676 /* XBPython.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E1A0D0D25F9FB00618676 /* XBPython.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E21620D25F9FD00618676 /* XBPyThread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E1A110D25F9FB00618676 /* XBPyThread.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; E38E21670D25F9FD00618676 /* scrobbler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E1A250D25F9FB00618676 /* scrobbler.cpp */; }; E38E21740D25F9FD00618676 /* MediaCrawler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E1ABD0D25F9FB00618676 /* MediaCrawler.cpp */; }; E38E21760D25F9FD00618676 /* PltMicroMediaController.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E1AC20D25F9FB00618676 /* PltMicroMediaController.cpp */; }; @@ -1033,37 +1031,37 @@ E38E256D0D263A1C00618676 /* librtv.a in Frameworks */ = {isa = PBXBuildFile; fileRef = E38E256C0D263A1C00618676 /* librtv.a */; }; E38E25780D263BF600618676 /* unpack.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25770D263BF600618676 /* unpack.cpp */; }; E38E257C0D263C4400618676 /* rar.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E257B0D263C4400618676 /* rar.cpp */; }; - E38E259D0D263CE000618676 /* action.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E257E0D263CE000618676 /* action.cpp */; }; - E38E259E0D263CE000618676 /* control.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E257F0D263CE000618676 /* control.cpp */; }; - E38E259F0D263CE000618676 /* controlbutton.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25800D263CE000618676 /* controlbutton.cpp */; }; - E38E25A00D263CE000618676 /* controlcheckmark.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25810D263CE000618676 /* controlcheckmark.cpp */; }; - E38E25A10D263CE000618676 /* controlfadelabel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25820D263CE000618676 /* controlfadelabel.cpp */; }; - E38E25A20D263CE000618676 /* controlgroup.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25830D263CE000618676 /* controlgroup.cpp */; }; - E38E25A30D263CE000618676 /* controlimage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25840D263CE000618676 /* controlimage.cpp */; }; - E38E25A40D263CE000618676 /* controllabel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25850D263CE000618676 /* controllabel.cpp */; }; - E38E25A50D263CE000618676 /* controllist.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25860D263CE000618676 /* controllist.cpp */; }; - E38E25A60D263CE000618676 /* controlprogress.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25870D263CE000618676 /* controlprogress.cpp */; }; - E38E25A70D263CE000618676 /* controlspin.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25880D263CE000618676 /* controlspin.cpp */; }; - E38E25A80D263CE000618676 /* controltextbox.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25890D263CE000618676 /* controltextbox.cpp */; }; - E38E25A90D263CE000618676 /* dialog.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E258A0D263CE000618676 /* dialog.cpp */; }; - E38E25AA0D263CE000618676 /* GUIPythonWindow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E258B0D263CE000618676 /* GUIPythonWindow.cpp */; }; - E38E25AB0D263CE000618676 /* GUIPythonWindowDialog.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E258C0D263CE000618676 /* GUIPythonWindowDialog.cpp */; }; - E38E25AC0D263CE000618676 /* GUIPythonWindowXML.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E258D0D263CE000618676 /* GUIPythonWindowXML.cpp */; }; - E38E25AD0D263CE000618676 /* GUIPythonWindowXMLDialog.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E258E0D263CE000618676 /* GUIPythonWindowXMLDialog.cpp */; }; - E38E25AE0D263CE000618676 /* infotagmusic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E258F0D263CE000618676 /* infotagmusic.cpp */; }; - E38E25AF0D263CE000618676 /* infotagvideo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25900D263CE000618676 /* infotagvideo.cpp */; }; - E38E25B00D263CE000618676 /* keyboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25910D263CE000618676 /* keyboard.cpp */; }; - E38E25B10D263CE000618676 /* listitem.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25920D263CE000618676 /* listitem.cpp */; }; - E38E25B20D263CE000618676 /* player.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25930D263CE000618676 /* player.cpp */; }; - E38E25B30D263CE000618676 /* pyplaylist.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25940D263CE000618676 /* pyplaylist.cpp */; }; - E38E25B40D263CE000618676 /* PythonPlayer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25950D263CE000618676 /* PythonPlayer.cpp */; }; - E38E25B50D263CE000618676 /* pyutil.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25960D263CE000618676 /* pyutil.cpp */; }; - E38E25B60D263CE000618676 /* window.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25970D263CE000618676 /* window.cpp */; }; - E38E25B70D263CE000618676 /* winxml.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25980D263CE000618676 /* winxml.cpp */; }; - E38E25B80D263CE000618676 /* winxmldialog.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25990D263CE000618676 /* winxmldialog.cpp */; }; - E38E25B90D263CE000618676 /* xbmcguimodule.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E259A0D263CE000618676 /* xbmcguimodule.cpp */; }; - E38E25BA0D263CE000618676 /* xbmcmodule.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E259B0D263CE000618676 /* xbmcmodule.cpp */; }; - E38E25BB0D263CE000618676 /* xbmcplugin.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E259C0D263CE000618676 /* xbmcplugin.cpp */; }; + E38E259D0D263CE000618676 /* action.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E257E0D263CE000618676 /* action.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E259E0D263CE000618676 /* control.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E257F0D263CE000618676 /* control.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E259F0D263CE000618676 /* controlbutton.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25800D263CE000618676 /* controlbutton.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25A00D263CE000618676 /* controlcheckmark.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25810D263CE000618676 /* controlcheckmark.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25A10D263CE000618676 /* controlfadelabel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25820D263CE000618676 /* controlfadelabel.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25A20D263CE000618676 /* controlgroup.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25830D263CE000618676 /* controlgroup.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25A30D263CE000618676 /* controlimage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25840D263CE000618676 /* controlimage.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25A40D263CE000618676 /* controllabel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25850D263CE000618676 /* controllabel.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25A50D263CE000618676 /* controllist.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25860D263CE000618676 /* controllist.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25A60D263CE000618676 /* controlprogress.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25870D263CE000618676 /* controlprogress.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25A70D263CE000618676 /* controlspin.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25880D263CE000618676 /* controlspin.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25A80D263CE000618676 /* controltextbox.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25890D263CE000618676 /* controltextbox.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25A90D263CE000618676 /* dialog.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E258A0D263CE000618676 /* dialog.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25AA0D263CE000618676 /* GUIPythonWindow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E258B0D263CE000618676 /* GUIPythonWindow.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25AB0D263CE000618676 /* GUIPythonWindowDialog.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E258C0D263CE000618676 /* GUIPythonWindowDialog.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25AC0D263CE000618676 /* GUIPythonWindowXML.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E258D0D263CE000618676 /* GUIPythonWindowXML.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25AD0D263CE000618676 /* GUIPythonWindowXMLDialog.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E258E0D263CE000618676 /* GUIPythonWindowXMLDialog.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25AE0D263CE000618676 /* infotagmusic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E258F0D263CE000618676 /* infotagmusic.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25AF0D263CE000618676 /* infotagvideo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25900D263CE000618676 /* infotagvideo.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25B00D263CE000618676 /* keyboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25910D263CE000618676 /* keyboard.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25B10D263CE000618676 /* listitem.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25920D263CE000618676 /* listitem.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25B20D263CE000618676 /* player.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25930D263CE000618676 /* player.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25B30D263CE000618676 /* pyplaylist.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25940D263CE000618676 /* pyplaylist.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25B40D263CE000618676 /* PythonPlayer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25950D263CE000618676 /* PythonPlayer.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25B50D263CE000618676 /* pyutil.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25960D263CE000618676 /* pyutil.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25B60D263CE000618676 /* window.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25970D263CE000618676 /* window.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25B70D263CE000618676 /* winxml.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25980D263CE000618676 /* winxml.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25B80D263CE000618676 /* winxmldialog.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25990D263CE000618676 /* winxmldialog.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25B90D263CE000618676 /* xbmcguimodule.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E259A0D263CE000618676 /* xbmcguimodule.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25BA0D263CE000618676 /* xbmcmodule.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E259B0D263CE000618676 /* xbmcmodule.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; + E38E25BB0D263CE000618676 /* xbmcplugin.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E259C0D263CE000618676 /* xbmcplugin.cpp */; settings = {COMPILER_FLAGS = "-I$XBMC_DEPENDS/include/python2.6"; }; }; E38E25C00D263DC100618676 /* DVDFactoryDemuxer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25BF0D263DC100618676 /* DVDFactoryDemuxer.cpp */; }; E38E25C30D263DE200618676 /* DVDDemuxFFmpeg.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E25C20D263DE200618676 /* DVDDemuxFFmpeg.cpp */; }; E38F12C20D29FF200035C331 /* FileShoutcast.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38F12C10D29FF200035C331 /* FileShoutcast.cpp */; }; @@ -1300,7 +1298,6 @@ F5A1C9370F6B06CF00A96ABD /* YUV2RGBShader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E16710D25F9FA00618676 /* YUV2RGBShader.cpp */; }; F5A1C9390F6B06CF00A96ABD /* CueDocument.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E167E0D25F9FA00618676 /* CueDocument.cpp */; }; F5A1C93A0F6B06CF00A96ABD /* Database.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E16800D25F9FA00618676 /* Database.cpp */; }; - F5A1C93B0F6B06CF00A96ABD /* DateTime.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E16820D25F9FA00618676 /* DateTime.cpp */; }; F5A1C93C0F6B06CF00A96ABD /* DetectDVDType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E16840D25F9FA00618676 /* DetectDVDType.cpp */; }; F5A1C93D0F6B06CF00A96ABD /* DNSNameCache.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E16890D25F9FA00618676 /* DNSNameCache.cpp */; }; F5A1C93E0F6B06CF00A96ABD /* DynamicDll.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E168C0D25F9FA00618676 /* DynamicDll.cpp */; }; @@ -1470,7 +1467,6 @@ F5A1C9FA0F6B06CF00A96ABD /* LangInfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E18580D25F9FA00618676 /* LangInfo.cpp */; }; F5A1C9FB0F6B06CF00A96ABD /* LastFmManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E185A0D25F9FA00618676 /* LastFmManager.cpp */; }; F5A1CA010F6B06CF00A96ABD /* XBPython.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E1A0D0D25F9FB00618676 /* XBPython.cpp */; }; - F5A1CA020F6B06CF00A96ABD /* XBPythonDll.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E1A0F0D25F9FB00618676 /* XBPythonDll.cpp */; }; F5A1CA030F6B06CF00A96ABD /* XBPyThread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E1A110D25F9FB00618676 /* XBPyThread.cpp */; }; F5A1CA040F6B06CF00A96ABD /* scrobbler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E1A250D25F9FB00618676 /* scrobbler.cpp */; }; F5A1CA050F6B06CF00A96ABD /* MediaCrawler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E38E1ABD0D25F9FB00618676 /* MediaCrawler.cpp */; }; @@ -1696,7 +1692,6 @@ F5A1CB520F6B06CF00A96ABD /* MusicFileDirectory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 880DBE530DC224A100E26B71 /* MusicFileDirectory.cpp */; }; F5A1CB530F6B06CF00A96ABD /* ASAPFileDirectory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 88ACB0190DCF40800083CFDF /* ASAPFileDirectory.cpp */; }; F5A1CB540F6B06CF00A96ABD /* ASAPCodec.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 88ACB01C0DCF409E0083CFDF /* ASAPCodec.cpp */; }; - F5A1CB560F6B06CF00A96ABD /* XBPythonDllFuncs.S in Sources */ = {isa = PBXBuildFile; fileRef = 88D9FF5F0DD264B500EDA56F /* XBPythonDllFuncs.S */; }; F5A1CB570F6B06CF00A96ABD /* DVDOverlayCodecSSA.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8883CE9E0DD817D1004E8B72 /* DVDOverlayCodecSSA.cpp */; }; F5A1CB580F6B06CF00A96ABD /* DVDSubtitleParserSSA.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8883CEA30DD81807004E8B72 /* DVDSubtitleParserSSA.cpp */; }; F5A1CB590F6B06CF00A96ABD /* DVDSubtitlesLibass.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8883CEA50DD81807004E8B72 /* DVDSubtitlesLibass.cpp */; }; @@ -2255,6 +2250,8 @@ 18C1D22C13033F6A00CFFE59 /* GLUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GLUtils.h; sourceTree = ""; }; 18CCEAEC1112F5B800615FC6 /* PCMRemap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PCMRemap.cpp; sourceTree = ""; }; 18CCEAED1112F5B800615FC6 /* PCMRemap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PCMRemap.h; sourceTree = ""; }; + 384718D61325BA04000486D6 /* XBDateTime.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = XBDateTime.cpp; sourceTree = ""; }; + 384718D71325BA04000486D6 /* XBDateTime.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XBDateTime.h; sourceTree = ""; }; 38B2BBD013131B4A00F83309 /* GlobalsHandling.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GlobalsHandling.h; sourceTree = ""; }; 430C881312D64A730098821A /* IPowerSyscall.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IPowerSyscall.h; sourceTree = ""; }; 431376FF12D6455C00680C15 /* GUIDialogCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GUIDialogCache.h; sourceTree = ""; }; @@ -2511,7 +2508,6 @@ 88ACB01C0DCF409E0083CFDF /* ASAPCodec.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ASAPCodec.cpp; sourceTree = ""; }; 88ACB01D0DCF409E0083CFDF /* ASAPCodec.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ASAPCodec.h; sourceTree = ""; }; 88ACB01E0DCF409E0083CFDF /* DllASAP.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DllASAP.h; sourceTree = ""; }; - 88D9FF5F0DD264B500EDA56F /* XBPythonDllFuncs.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = XBPythonDllFuncs.S; sourceTree = ""; }; 88ECB6580DE013C4003396A7 /* DiskArbitration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = DiskArbitration.framework; path = /System/Library/Frameworks/DiskArbitration.framework; sourceTree = ""; }; 8DD76F7E0486A8DE00D96B5E /* XBMC */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = XBMC; sourceTree = BUILT_PRODUCTS_DIR; }; C80425701158A0DE00D158A6 /* controlslider.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = controlslider.cpp; sourceTree = ""; }; @@ -2781,8 +2777,6 @@ E38E167F0D25F9FA00618676 /* CueDocument.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CueDocument.h; sourceTree = ""; }; E38E16800D25F9FA00618676 /* Database.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Database.cpp; sourceTree = ""; }; E38E16810D25F9FA00618676 /* Database.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Database.h; sourceTree = ""; }; - E38E16820D25F9FA00618676 /* DateTime.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DateTime.cpp; sourceTree = ""; }; - E38E16830D25F9FA00618676 /* DateTime.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DateTime.h; sourceTree = ""; }; E38E16840D25F9FA00618676 /* DetectDVDType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DetectDVDType.cpp; sourceTree = ""; }; E38E16850D25F9FA00618676 /* DetectDVDType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DetectDVDType.h; sourceTree = ""; }; E38E16860D25F9FA00618676 /* DllImageLib.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DllImageLib.h; sourceTree = ""; }; @@ -3155,7 +3149,6 @@ E38E1A080D25F9FB00618676 /* winxml.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = winxml.h; sourceTree = ""; }; E38E1A0D0D25F9FB00618676 /* XBPython.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = XBPython.cpp; sourceTree = ""; }; E38E1A0E0D25F9FB00618676 /* XBPython.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XBPython.h; sourceTree = ""; }; - E38E1A0F0D25F9FB00618676 /* XBPythonDll.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = XBPythonDll.cpp; sourceTree = ""; }; E38E1A100D25F9FB00618676 /* XBPythonDll.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XBPythonDll.h; sourceTree = ""; }; E38E1A110D25F9FB00618676 /* XBPyThread.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = XBPyThread.cpp; sourceTree = ""; }; E38E1A120D25F9FB00618676 /* XBPyThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XBPyThread.h; sourceTree = ""; }; @@ -5028,8 +5021,6 @@ E38E14730D25F9F900618676 /* BackgroundInfoLoader.h */, E38E167E0D25F9FA00618676 /* CueDocument.cpp */, E38E167F0D25F9FA00618676 /* CueDocument.h */, - E38E16820D25F9FA00618676 /* DateTime.cpp */, - E38E16830D25F9FA00618676 /* DateTime.h */, E38E168C0D25F9FA00618676 /* DynamicDll.cpp */, E38E168D0D25F9FA00618676 /* DynamicDll.h */, E38E16900D25F9FA00618676 /* Favourites.cpp */, @@ -5082,6 +5073,8 @@ E38E1E9A0D25F9FD00618676 /* ViewDatabase.h */, E38E1EA70D25F9FD00618676 /* XBApplicationEx.cpp */, E38E1EA80D25F9FD00618676 /* XBApplicationEx.h */, + 384718D61325BA04000486D6 /* XBDateTime.cpp */, + 384718D71325BA04000486D6 /* XBDateTime.h */, E38E1ED10D25F9FD00618676 /* xbmc.cpp */, ); path = xbmc; @@ -5927,11 +5920,9 @@ E38E19820D25F9FB00618676 /* python */ = { isa = PBXGroup; children = ( - 88D9FF5F0DD264B500EDA56F /* XBPythonDllFuncs.S */, E38E19DA0D25F9FB00618676 /* xbmcmodule */, E38E1A0D0D25F9FB00618676 /* XBPython.cpp */, E38E1A0E0D25F9FB00618676 /* XBPython.h */, - E38E1A0F0D25F9FB00618676 /* XBPythonDll.cpp */, E38E1A100D25F9FB00618676 /* XBPythonDll.h */, E38E1A110D25F9FB00618676 /* XBPyThread.cpp */, E38E1A120D25F9FB00618676 /* XBPyThread.h */, @@ -7361,7 +7352,6 @@ E38E1FF10D25F9FD00618676 /* YUV2RGBShader.cpp in Sources */, E38E1FF70D25F9FD00618676 /* CueDocument.cpp in Sources */, E38E1FF80D25F9FD00618676 /* Database.cpp in Sources */, - E38E1FF90D25F9FD00618676 /* DateTime.cpp in Sources */, E38E1FFA0D25F9FD00618676 /* DetectDVDType.cpp in Sources */, E38E1FFB0D25F9FD00618676 /* DNSNameCache.cpp in Sources */, E38E1FFC0D25F9FD00618676 /* DynamicDll.cpp in Sources */, @@ -7531,7 +7521,6 @@ E38E20D70D25F9FD00618676 /* LangInfo.cpp in Sources */, E38E20D80D25F9FD00618676 /* LastFmManager.cpp in Sources */, E38E21600D25F9FD00618676 /* XBPython.cpp in Sources */, - E38E21610D25F9FD00618676 /* XBPythonDll.cpp in Sources */, E38E21620D25F9FD00618676 /* XBPyThread.cpp in Sources */, E38E21670D25F9FD00618676 /* scrobbler.cpp in Sources */, E38E21740D25F9FD00618676 /* MediaCrawler.cpp in Sources */, @@ -7757,7 +7746,6 @@ 880DBE550DC224A100E26B71 /* MusicFileDirectory.cpp in Sources */, 88ACB01B0DCF40800083CFDF /* ASAPFileDirectory.cpp in Sources */, 88ACB01F0DCF409E0083CFDF /* ASAPCodec.cpp in Sources */, - 88D9FF600DD264B500EDA56F /* XBPythonDllFuncs.S in Sources */, 8883CEA10DD817D1004E8B72 /* DVDOverlayCodecSSA.cpp in Sources */, 8883CEA70DD81807004E8B72 /* DVDSubtitleParserSSA.cpp in Sources */, 8883CEA80DD81807004E8B72 /* DVDSubtitlesLibass.cpp in Sources */, @@ -8149,6 +8137,7 @@ F5AE40A713415D9E0004BD79 /* VideoLibrary.cpp in Sources */, F5AE40A813415D9E0004BD79 /* XBMCOperations.cpp in Sources */, C84BF7341349BB74006D6FC9 /* JSONServiceDescription.cpp in Sources */, + 384718D81325BA04000486D6 /* XBDateTime.cpp in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -8252,7 +8241,6 @@ F5A1C9370F6B06CF00A96ABD /* YUV2RGBShader.cpp in Sources */, F5A1C9390F6B06CF00A96ABD /* CueDocument.cpp in Sources */, F5A1C93A0F6B06CF00A96ABD /* Database.cpp in Sources */, - F5A1C93B0F6B06CF00A96ABD /* DateTime.cpp in Sources */, F5A1C93C0F6B06CF00A96ABD /* DetectDVDType.cpp in Sources */, F5A1C93D0F6B06CF00A96ABD /* DNSNameCache.cpp in Sources */, F5A1C93E0F6B06CF00A96ABD /* DynamicDll.cpp in Sources */, @@ -8422,7 +8410,6 @@ F5A1C9FA0F6B06CF00A96ABD /* LangInfo.cpp in Sources */, F5A1C9FB0F6B06CF00A96ABD /* LastFmManager.cpp in Sources */, F5A1CA010F6B06CF00A96ABD /* XBPython.cpp in Sources */, - F5A1CA020F6B06CF00A96ABD /* XBPythonDll.cpp in Sources */, F5A1CA030F6B06CF00A96ABD /* XBPyThread.cpp in Sources */, F5A1CA040F6B06CF00A96ABD /* scrobbler.cpp in Sources */, F5A1CA050F6B06CF00A96ABD /* MediaCrawler.cpp in Sources */, @@ -8648,7 +8635,6 @@ F5A1CB520F6B06CF00A96ABD /* MusicFileDirectory.cpp in Sources */, F5A1CB530F6B06CF00A96ABD /* ASAPFileDirectory.cpp in Sources */, F5A1CB540F6B06CF00A96ABD /* ASAPCodec.cpp in Sources */, - F5A1CB560F6B06CF00A96ABD /* XBPythonDllFuncs.S in Sources */, F5A1CB570F6B06CF00A96ABD /* DVDOverlayCodecSSA.cpp in Sources */, F5A1CB580F6B06CF00A96ABD /* DVDSubtitleParserSSA.cpp in Sources */, F5A1CB590F6B06CF00A96ABD /* DVDSubtitlesLibass.cpp in Sources */, diff --git a/configure.in b/configure.in index e98e383dfa..10b9cd0aee 100644 --- a/configure.in +++ b/configure.in @@ -5,6 +5,7 @@ AC_PREREQ(2.59) AC_INIT([xbmc], [9.11], [http://trac.xbmc.org]) AC_CONFIG_HEADERS([xbmc/config.h]) AH_TOP([#pragma once]) +m4_include([m4/ax_python_devel.m4]) AC_CONFIG_AUX_DIR([build-aux]) AM_INIT_AUTOMAKE([foreign]) @@ -891,29 +892,21 @@ fi # External Python if test "$use_external_python" = "yes"; then - AC_CHECK_LIB([python2.6], [main], - [AC_DEFINE([HAVE_LIBPYTHON2_6], [1], - [Define to 1 if you have the 'python2.6' library.]) - USE_PYTHON2_6=1], - [AC_CHECK_LIB([python2.5], [main], - [AC_DEFINE([HAVE_LIBPYTHON2_5], [1], - [Define to 1 if you have the 'python2.5' library.]) - USE_PYTHON2_5=1], - [AC_CHECK_LIB([python2.4], [main], - [AC_DEFINE([HAVE_LIBPYTHON2_4], [1], - [Define to 1 if you have the 'python2.4' library.]) - USE_PYTHON2_4=1], - [AC_MSG_ERROR($missing_library)] )] )] ) - - AC_MSG_NOTICE($external_python_enabled) - test "$USE_PYTHON2_6" && AC_MSG_NOTICE([Using Python 2.6]) - test "$USE_PYTHON2_5" && AC_MSG_NOTICE([Using Python 2.5]) - test "$USE_PYTHON2_4" && AC_MSG_NOTICE([Using Python 2.4]) - USE_EXTERNAL_PYTHON=1 - AC_DEFINE([USE_EXTERNAL_PYTHON], [1], [Whether to use external python library.]) + AX_PYTHON_DEVEL([>= 2.4]) + PYTHON_VERSION=$ac_python_version + + if test -z "$PYTHON_VERSION"; then + AC_MSG_NOTICE($external_python_disabled) + USE_EXTERNAL_PYTHON=0 + else + AC_MSG_NOTICE($external_python_enabled) + AC_MSG_NOTICE([Using Python $PYTHON_VERSION]) + USE_EXTERNAL_PYTHON=1 + AC_DEFINE([USE_EXTERNAL_PYTHON], [1], [Whether to use external python library.]) + fi else - AC_MSG_NOTICE($external_python_disabled) USE_EXTERNAL_PYTHON=0 + PYTHON_CPPFLAGS="-I\$(abs_top_srcdir)/lib/python/Include" fi # VDPAU @@ -1401,7 +1394,8 @@ OUTPUT_FILES="Makefile \ lib/libsquish/Makefile \ lib/libid3tag/Makefile \ lib/cximage-6.0/Makefile \ - xbmc/interfaces/python/linux/Makefile \ + xbmc/interfaces/python/Makefile \ + xbmc/interfaces/python/xbmcmodule/Makefile \ lib/libUPnP/Makefile \ xbmc/DllPaths_generated.h \ xbmc/linux/Makefile \ @@ -1434,9 +1428,7 @@ AC_SUBST(BUILD_DVDCSS) AC_SUBST(BUILD_GOOM) AC_SUBST(USE_EXTERNAL_FFMPEG) AC_SUBST(USE_EXTERNAL_PYTHON) -AC_SUBST(USE_PYTHON2_6) -AC_SUBST(USE_PYTHON2_5) -AC_SUBST(USE_PYTHON2_4) +AC_SUBST(PYTHON_VERSION) AC_SUBST(OUTPUT_FILES) AC_SUBST(HAVE_XBMC_NONFREE) AC_SUBST(USE_ASAP_CODEC) diff --git a/m4/ax_python_devel.m4 b/m4/ax_python_devel.m4 new file mode 100644 index 0000000000..adbd207475 --- /dev/null +++ b/m4/ax_python_devel.m4 @@ -0,0 +1,333 @@ +# =========================================================================== +# http://www.gnu.org/software/autoconf-archive/ax_python_devel.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_PYTHON_DEVEL([version]) +# +# DESCRIPTION +# +# Note: Defines as a precious variable "PYTHON_VERSION". Don't override it +# in your configure.ac. +# +# This macro checks for Python and tries to get the include path to +# 'Python.h'. It provides the $(PYTHON_CPPFLAGS) and $(PYTHON_LDFLAGS) +# output variables. It also exports $(PYTHON_EXTRA_LIBS) and +# $(PYTHON_EXTRA_LDFLAGS) for embedding Python in your code. +# +# You can search for some particular version of Python by passing a +# parameter to this macro, for example ">= '2.3.1'", or "== '2.4'". Please +# note that you *have* to pass also an operator along with the version to +# match, and pay special attention to the single quotes surrounding the +# version number. Don't use "PYTHON_VERSION" for this: that environment +# variable is declared as precious and thus reserved for the end-user. +# +# This macro should work for all versions of Python >= 2.1.0. As an end +# user, you can disable the check for the python version by setting the +# PYTHON_NOVERSIONCHECK environment variable to something else than the +# empty string. +# +# If you need to use this macro for an older Python version, please +# contact the authors. We're always open for feedback. +# +# LICENSE +# +# Copyright (c) 2009 Sebastian Huber +# Copyright (c) 2009 Alan W. Irwin +# Copyright (c) 2009 Rafael Laboissiere +# Copyright (c) 2009 Andrew Collier +# Copyright (c) 2009 Matteo Settenvini +# Copyright (c) 2009 Horst Knorr +# +# This program is free software: you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation, either version 3 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General +# Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program. If not, see . +# +# As a special exception, the respective Autoconf Macro's copyright owner +# gives unlimited permission to copy, distribute and modify the configure +# scripts that are the output of Autoconf when processing the Macro. You +# need not follow the terms of the GNU General Public License when using +# or distributing such scripts, even though portions of the text of the +# Macro appear in them. The GNU General Public License (GPL) does govern +# all other use of the material that constitutes the Autoconf Macro. +# +# This special exception to the GPL applies to versions of the Autoconf +# Macro released by the Autoconf Archive. When you make and distribute a +# modified version of the Autoconf Macro, you may extend this special +# exception to the GPL to apply to your modified version as well. + +#serial 8 + +AU_ALIAS([AC_PYTHON_DEVEL], [AX_PYTHON_DEVEL]) +AC_DEFUN([AX_PYTHON_DEVEL],[ + # + # Allow the use of a (user set) custom python version + # + AC_ARG_VAR([PYTHON_VERSION],[The installed Python + version to use, for example '2.3'. This string + will be appended to the Python interpreter + canonical name.]) + + AC_PATH_PROG([PYTHON],[python[$PYTHON_VERSION]]) + if test -z "$PYTHON"; then + AC_MSG_ERROR([Cannot find python$PYTHON_VERSION in your system path]) + PYTHON_VERSION="" + fi + + # + # Check for a version of Python >= 2.1.0 + # + AC_MSG_CHECKING([for a version of Python >= '2.1.0']) + ac_supports_python_ver=`$PYTHON -c "import sys; \ + ver = sys.version.split ()[[0]]; \ + print (ver >= '2.1.0')"` + if test "$ac_supports_python_ver" != "True"; then + if test -z "$PYTHON_NOVERSIONCHECK"; then + AC_MSG_RESULT([no]) + AC_MSG_FAILURE([ +This version of the AC@&t@_PYTHON_DEVEL macro +doesn't work properly with versions of Python before +2.1.0. You may need to re-run configure, setting the +variables PYTHON_CPPFLAGS, PYTHON_LDFLAGS, PYTHON_SITE_PKG, +PYTHON_EXTRA_LIBS and PYTHON_EXTRA_LDFLAGS by hand. +Moreover, to disable this check, set PYTHON_NOVERSIONCHECK +to something else than an empty string. +]) + else + AC_MSG_RESULT([skip at user request]) + fi + else + AC_MSG_RESULT([yes]) + fi + + # + # if the macro parameter ``version'' is set, honour it + # + if test -n "$1"; then + AC_MSG_CHECKING([for a version of Python $1]) + ac_supports_python_ver=`$PYTHON -c "import sys; \ + ver = sys.version.split ()[[0]]; \ + print (ver $1)"` + if test "$ac_supports_python_ver" = "True"; then + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) + AC_MSG_ERROR([this package requires Python $1. +If you have it installed, but it isn't the default Python +interpreter in your system path, please pass the PYTHON_VERSION +variable to configure. See ``configure --help'' for reference. +]) + PYTHON_VERSION="" + fi + fi + + # + # Check if you have distutils, else fail + # + AC_MSG_CHECKING([for the distutils Python package]) + ac_distutils_result=`$PYTHON -c "import distutils" 2>&1` + if test -z "$ac_distutils_result"; then + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) + AC_MSG_ERROR([cannot import Python module "distutils". +Please check your Python installation. The error was: +$ac_distutils_result]) + PYTHON_VERSION="" + fi + + # + # Check for Python include path + # + AC_MSG_CHECKING([for Python include path]) + if test -z "$PYTHON_CPPFLAGS"; then + python_path=`$PYTHON -c "import distutils.sysconfig; \ + print (distutils.sysconfig.get_python_inc ());"` + if test -n "${python_path}"; then + python_path="-I$python_path" + fi + PYTHON_CPPFLAGS=$python_path + fi + AC_MSG_RESULT([$PYTHON_CPPFLAGS]) + AC_SUBST([PYTHON_CPPFLAGS]) + + # + # Check for Python library path + # + AC_MSG_CHECKING([for Python library path]) + if test -z "$PYTHON_LDFLAGS"; then + # (makes two attempts to ensure we've got a version number + # from the interpreter) + ac_python_version=`cat<]], + [[Py_Initialize();]]) + ],[pythonexists=yes],[pythonexists=no]) + AC_LANG_POP([C]) + # turn back to default flags + CPPFLAGS="$ac_save_CPPFLAGS" + LIBS="$ac_save_LIBS" + + AC_MSG_RESULT([$pythonexists]) + + if test ! "x$pythonexists" = "xyes"; then + AC_MSG_FAILURE([ + Could not link test program to Python. Maybe the main Python library has been + installed in some non-standard library path. If so, pass it to configure, + via the LDFLAGS environment variable. + Example: ./configure LDFLAGS="-L/usr/non-standard-path/python/lib" + ============================================================================ + ERROR! + You probably have to install the development version of the Python package + for your distribution. The exact name of this package varies among them. + ============================================================================ + ]) + PYTHON_VERSION="" + fi + + # + # all done! + # +]) diff --git a/project/VS2010Express/XBMC.vcxproj b/project/VS2010Express/XBMC.vcxproj index c8ae1bb7b1..499fbae075 100644 --- a/project/VS2010Express/XBMC.vcxproj +++ b/project/VS2010Express/XBMC.vcxproj @@ -1,4 +1,4 @@ - + @@ -147,7 +147,7 @@ Disabled ..\..\;..\..\xbmc\;..\..\xbmc\win32\;..\..\xbmc\cores\dvdplayer;..\..\lib;..\..\lib\ffmpeg;..\..\lib\ffmpeg\include-xbmc-win32;..\..\lib\freetype\include;..\..\lib\jsoncpp\jsoncpp\include;..\..\lib\liblame\include;..\..\lib\libUPnP\Platinum\Source\Devices\MediaRenderer;..\..\lib\libUPnP\Platinum\Source\Devices\MediaConnect;..\..\lib\libUPnP\Platinum\Source\Devices\MediaServer;..\..\lib\libUPnP\Platinum\Source\Platinum;..\..\lib\libUPnP\Platinum\Source\Core;..\..\lib\libUPnP\Neptune\Source\Core;..\..\lib\libUPnP\Neptune\Source\System\Win32;..\..\lib\Python\PC;..\..\lib\win32\boost;..\..\lib\win32\libbluray_win32;..\..\lib\win32\libcdio\include;..\..\lib\win32\libiconv\include;..\..\lib\win32\libmicrohttpd_win32\include;..\..\lib\win32\libwavpack;..\..\lib\win32\pcre;..\..\lib\win32\vorbisfile\libvorbis\include;..\..\lib\win32\vorbisfile\ogg\include;..\..\lib\jsoncpp\include - _WINDOWS;_MSVC;WIN32;_DEBUG;_WIN32_WINNT=0x0501;WINVER=0x0500;NOMINMAX;_USE_32BIT_TIME_T;HAS_DX;Py_NO_ENABLE_SHARED;D3D_DEBUG_INFO;__STDC_CONSTANT_MACROS;%(PreprocessorDefinitions) + _WINDOWS;_MSVC;WIN32;_DEBUG;_WIN32_WINNT=0x0501;WINVER=0x0500;NOMINMAX;_USE_32BIT_TIME_T;HAS_DX;Py_NO_ENABLE_SHARED;USE_EXTERNAL_PYTHON;D3D_DEBUG_INFO;__STDC_CONSTANT_MACROS;%(PreprocessorDefinitions) true Async Default @@ -303,7 +303,6 @@ - @@ -739,7 +738,6 @@ - @@ -1079,6 +1077,7 @@ + @@ -1106,7 +1105,6 @@ - @@ -1565,6 +1563,7 @@ + update_git_rev.bat ..\..\xbmc\win32\git_rev.h;%(Outputs) diff --git a/project/VS2010Express/XBMC.vcxproj.filters b/project/VS2010Express/XBMC.vcxproj.filters index 2016f9a728..283046a997 100644 --- a/project/VS2010Express/XBMC.vcxproj.filters +++ b/project/VS2010Express/XBMC.vcxproj.filters @@ -1,4 +1,4 @@ - + @@ -1529,9 +1529,6 @@ interfaces\python - - interfaces\python - music\dialogs @@ -2303,9 +2300,6 @@ utils - - utils - utils @@ -2457,6 +2451,9 @@ interfaces\json-rpc + + utils + @@ -3967,9 +3964,6 @@ interfaces\python - - interfaces\python - interfaces\python @@ -4744,9 +4738,6 @@ utils - - utils - utils @@ -4915,6 +4906,12 @@ interfaces\json-rpc + + interfaces\python + + + utils + diff --git a/tools/osx/osx-depends/xbmc/Makefile b/tools/osx/osx-depends/xbmc/Makefile index 0e31ec2433..e8d5c7f84b 100644 --- a/tools/osx/osx-depends/xbmc/Makefile +++ b/tools/osx/osx-depends/xbmc/Makefile @@ -7,7 +7,8 @@ SOURCE=../../../../ # configuration settings CONFIGURE=./configure --prefix=$(PREFIX) --host=$(HOST) \ --enable-external-python \ - PKG_CONFIG_PATH=$(PREFIX)/lib/pkgconfig + PKG_CONFIG_PATH=$(PREFIX)/lib/pkgconfig \ + PYTHON=$(PREFIX)/bin/python all: configure diff --git a/xbmc/FileItem.h b/xbmc/FileItem.h index 78c142cb52..0015b60734 100644 --- a/xbmc/FileItem.h +++ b/xbmc/FileItem.h @@ -28,7 +28,7 @@ #include "guilib/GUIListItem.h" #include "utils/Archive.h" #include "utils/ISerializable.h" -#include "DateTime.h" +#include "XBDateTime.h" #include "SortFileItem.h" #include "utils/LabelFormatter.h" #include "GUIPassword.h" diff --git a/xbmc/GUIInfoManager.h b/xbmc/GUIInfoManager.h index 632b3347f9..250071b744 100644 --- a/xbmc/GUIInfoManager.h +++ b/xbmc/GUIInfoManager.h @@ -31,7 +31,7 @@ #include "threads/CriticalSection.h" #include "guilib/IMsgTargetCallback.h" #include "inttypes.h" -#include "DateTime.h" +#include "XBDateTime.h" #include #include diff --git a/xbmc/Makefile.in b/xbmc/Makefile.in index 83dfe889e1..e73035d807 100644 --- a/xbmc/Makefile.in +++ b/xbmc/Makefile.in @@ -4,7 +4,6 @@ SRCS=Application.cpp \ AutoSwitch.cpp \ BackgroundInfoLoader.cpp \ CueDocument.cpp \ - DateTime.cpp \ DynamicDll.cpp \ Favourites.cpp \ FileItem.cpp \ @@ -31,6 +30,7 @@ SRCS=Application.cpp \ Util.cpp \ ViewDatabase.cpp \ XBApplicationEx.cpp \ + XBDateTime.cpp \ xbmc.cpp \ LIB=xbmc.a diff --git a/xbmc/TextureDatabase.cpp b/xbmc/TextureDatabase.cpp index a9fc7a4278..59750b69dc 100644 --- a/xbmc/TextureDatabase.cpp +++ b/xbmc/TextureDatabase.cpp @@ -22,7 +22,7 @@ #include "TextureDatabase.h" #include "utils/log.h" #include "utils/Crc32.h" -#include "DateTime.h" +#include "XBDateTime.h" #include "dbwrappers/dataset.h" CTextureDatabase::CTextureDatabase() diff --git a/xbmc/DateTime.cpp b/xbmc/XBDateTime.cpp similarity index 99% rename from xbmc/DateTime.cpp rename to xbmc/XBDateTime.cpp index 3ebce6c51c..53d467d4a7 100644 --- a/xbmc/DateTime.cpp +++ b/xbmc/XBDateTime.cpp @@ -19,7 +19,7 @@ * */ -#include "DateTime.h" +#include "XBDateTime.h" #include "LangInfo.h" #include "guilib/LocalizeStrings.h" diff --git a/xbmc/DateTime.h b/xbmc/XBDateTime.h similarity index 100% rename from xbmc/DateTime.h rename to xbmc/XBDateTime.h diff --git a/xbmc/addons/AddonDatabase.cpp b/xbmc/addons/AddonDatabase.cpp index db01e09090..7c4e217407 100644 --- a/xbmc/addons/AddonDatabase.cpp +++ b/xbmc/addons/AddonDatabase.cpp @@ -22,7 +22,7 @@ #include "AddonDatabase.h" #include "addons/AddonManager.h" #include "utils/log.h" -#include "DateTime.h" +#include "XBDateTime.h" #include "addons/Service.h" #include "dbwrappers/dataset.h" diff --git a/xbmc/addons/Repository.h b/xbmc/addons/Repository.h index 7c88ea4411..ca0775da5e 100644 --- a/xbmc/addons/Repository.h +++ b/xbmc/addons/Repository.h @@ -22,7 +22,7 @@ #include "Addon.h" #include "AddonManager.h" -#include "DateTime.h" +#include "XBDateTime.h" #include "URL.h" #include "utils/Job.h" #include "threads/CriticalSection.h" diff --git a/xbmc/addons/Scraper.h b/xbmc/addons/Scraper.h index 7afc7d8474..d099ef4f5d 100644 --- a/xbmc/addons/Scraper.h +++ b/xbmc/addons/Scraper.h @@ -20,7 +20,7 @@ * */ #include "addons/Addon.h" -#include "DateTime.h" +#include "XBDateTime.h" #include "utils/ScraperParser.h" typedef enum diff --git a/xbmc/dialogs/GUIDialogSeekBar.h b/xbmc/dialogs/GUIDialogSeekBar.h index 2f7b77b57c..60ff5e28ec 100644 --- a/xbmc/dialogs/GUIDialogSeekBar.h +++ b/xbmc/dialogs/GUIDialogSeekBar.h @@ -22,7 +22,7 @@ */ #include "guilib/GUIDialog.h" -#include "DateTime.h" +#include "XBDateTime.h" class CGUIDialogSeekBar : public CGUIDialog { diff --git a/xbmc/filesystem/MythDirectory.h b/xbmc/filesystem/MythDirectory.h index ba8c409eb1..b942662a72 100644 --- a/xbmc/filesystem/MythDirectory.h +++ b/xbmc/filesystem/MythDirectory.h @@ -22,7 +22,7 @@ #include "IDirectory.h" #include "MythSession.h" -#include "DateTime.h" +#include "XBDateTime.h" namespace XFILE { diff --git a/xbmc/filesystem/MythFile.cpp b/xbmc/filesystem/MythFile.cpp index 8c0b9af1a8..97cea3335b 100644 --- a/xbmc/filesystem/MythFile.cpp +++ b/xbmc/filesystem/MythFile.cpp @@ -20,7 +20,7 @@ */ #include "MythFile.h" -#include "DateTime.h" +#include "XBDateTime.h" #include "FileItem.h" #include "utils/URIUtils.h" #include "DllLibCMyth.h" diff --git a/xbmc/filesystem/MythFile.h b/xbmc/filesystem/MythFile.h index 908f3598c2..c703c8ae7e 100644 --- a/xbmc/filesystem/MythFile.h +++ b/xbmc/filesystem/MythFile.h @@ -23,7 +23,7 @@ #include "IFile.h" #include "ILiveTV.h" #include "MythSession.h" -#include "DateTime.h" +#include "XBDateTime.h" #include "video/VideoInfoTag.h" #include diff --git a/xbmc/filesystem/MythSession.cpp b/xbmc/filesystem/MythSession.cpp index d61259d12e..17cc5ee5a4 100644 --- a/xbmc/filesystem/MythSession.cpp +++ b/xbmc/filesystem/MythSession.cpp @@ -23,7 +23,7 @@ #include "MythSession.h" #include "video/VideoInfoTag.h" #include "settings/AdvancedSettings.h" -#include "DateTime.h" +#include "XBDateTime.h" #include "FileItem.h" #include "URL.h" #include "utils/URIUtils.h" diff --git a/xbmc/guilib/GUIEditControl.cpp b/xbmc/guilib/GUIEditControl.cpp index 23112b8c5d..21d2005d21 100644 --- a/xbmc/guilib/GUIEditControl.cpp +++ b/xbmc/guilib/GUIEditControl.cpp @@ -25,7 +25,7 @@ #include "dialogs/GUIDialogKeyboard.h" #include "dialogs/GUIDialogNumeric.h" #include "LocalizeStrings.h" -#include "DateTime.h" +#include "XBDateTime.h" #include "utils/md5.h" #ifdef __APPLE__ diff --git a/xbmc/interfaces/python/Makefile b/xbmc/interfaces/python/Makefile deleted file mode 100644 index 11424fc560..0000000000 --- a/xbmc/interfaces/python/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -SRCS=XBPython.cpp \ - XBPythonDll.cpp \ - XBPythonDllFuncs.S \ - XBPyThread.cpp \ - -LIB=python.a - -include ../../../Makefile.include --include $(patsubst %.cpp,%.P,$(patsubst %.c,%.P,$(patsubst %.S,,$(SRCS)))) diff --git a/xbmc/interfaces/python/Makefile.in b/xbmc/interfaces/python/Makefile.in new file mode 100644 index 0000000000..b9fd7056d5 --- /dev/null +++ b/xbmc/interfaces/python/Makefile.in @@ -0,0 +1,14 @@ +SRCS=XBPython.cpp \ + XBPyThread.cpp + +ifneq (@USE_EXTERNAL_PYTHON@,1) +SRCS+=XBPythonDllFuncs.S \ + XBPythonDll.cpp +endif + +LIB=python.a + +INCLUDES+= @PYTHON_CPPFLAGS@ + +include @abs_top_srcdir@/Makefile.include +-include $(patsubst %.cpp,%.P,$(patsubst %.c,%.P,$(pathsubst %.S,,$(SRCS)))) diff --git a/xbmc/interfaces/python/XBPyThread.cpp b/xbmc/interfaces/python/XBPyThread.cpp index 377155ec87..944d55d939 100644 --- a/xbmc/interfaces/python/XBPyThread.cpp +++ b/xbmc/interfaces/python/XBPyThread.cpp @@ -19,25 +19,15 @@ * */ +#if (defined HAVE_CONFIG_H) && (!defined WIN32) + #include "config.h" +#endif + // python.h should always be included first before any other includes +#include +#include + #include "system.h" -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" - #include "python/Include/osdefs.h" -#endif #include "XBPythonDll.h" #include "filesystem/SpecialProtocol.h" #include "guilib/GUIWindowManager.h" @@ -180,7 +170,7 @@ void XBPyThread::Process() { // we want to use sys.path so it includes site-packages // if this fails, default to using Py_GetPath - PyObject *sysMod(PyImport_ImportModule("sys")); // must call Py_DECREF when finished + PyObject *sysMod(PyImport_ImportModule((char*)"sys")); // must call Py_DECREF when finished PyObject *sysModDict(PyModule_GetDict(sysMod)); // borrowed ref, no need to delete PyObject *pathObj(PyDict_GetItemString(sysModDict, "path")); // borrowed ref, no need to delete @@ -413,14 +403,14 @@ void XBPyThread::stop() if (m_threadState) { PyEval_AcquireLock(); - PyThreadState* old = PyThreadState_Swap(m_threadState); + PyThreadState* old = PyThreadState_Swap((PyThreadState*)m_threadState); PyObject *m; m = PyImport_AddModule((char*)"xbmc"); if(!m || PyObject_SetAttrString(m, (char*)"abortRequested", PyBool_FromLong(1))) CLog::Log(LOGERROR, "XBPyThread::stop - failed to set abortRequested"); - for(PyThreadState* state = m_threadState->interp->tstate_head; state; state = state->next) + for(PyThreadState* state = ((PyThreadState*)m_threadState)->interp->tstate_head; state; state = state->next) { Py_XDECREF(state->async_exc); state->async_exc = PyExc_SystemExit; diff --git a/xbmc/interfaces/python/XBPyThread.h b/xbmc/interfaces/python/XBPyThread.h index 489aefb6cd..2ffe1504c8 100644 --- a/xbmc/interfaces/python/XBPyThread.h +++ b/xbmc/interfaces/python/XBPyThread.h @@ -22,22 +22,6 @@ #ifndef XBPYTHREAD_H_ #define XBPYTHREAD_H_ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif #include "threads/Thread.h" class XBPython; @@ -54,8 +38,8 @@ class XBPyThread : public CThread void stop(); protected: - XBPython *m_pExecuter; - PyThreadState *m_threadState; + XBPython *m_pExecuter; + void *m_threadState; char m_type; char *m_source; diff --git a/xbmc/interfaces/python/XBPython.cpp b/xbmc/interfaces/python/XBPython.cpp index f4e02aab6d..0a0e679bb7 100644 --- a/xbmc/interfaces/python/XBPython.cpp +++ b/xbmc/interfaces/python/XBPython.cpp @@ -19,23 +19,14 @@ * */ -// python.h should always be included first before any other includes #if (defined HAVE_CONFIG_H) && (!defined WIN32) #include "config.h" #endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif + +// python.h should always be included first before any other includes +#include + +#include "system.h" #include "cores/DllLoader/DllLoaderContainer.h" #include "GUIPassword.h" @@ -363,6 +354,7 @@ void XBPython::Initialize() m_iDllScriptCounter++; if (!m_bInitialized) { +#if (!(defined _LINUX && defined USE_EXTERNAL_PYTHON)) m_pDll = DllLoaderContainer::LoadModule(PYTHON_DLL, NULL, true); if (!m_pDll || !python_load_dll(*m_pDll)) @@ -371,6 +363,7 @@ void XBPython::Initialize() Finalize(); return; } +#endif // first we check if all necessary files are installed #ifndef _LINUX @@ -476,7 +469,7 @@ void XBPython::Finalize() CLog::Log(LOGINFO, "Python, unloading python24.dll because no scripts are running anymore"); PyEval_AcquireLock(); - PyThreadState_Swap(m_mainThreadState); + PyThreadState_Swap((PyThreadState*)m_mainThreadState); Py_Finalize(); PyEval_ReleaseLock(); @@ -647,7 +640,7 @@ void XBPython::stopScript(int id) } } -PyThreadState *XBPython::getMainThreadState() +void* XBPython::getMainThreadState() { CSingleLock lock(m_critSection); return m_mainThreadState; diff --git a/xbmc/interfaces/python/XBPython.h b/xbmc/interfaces/python/XBPython.h index 520a1e4381..81b96352e6 100644 --- a/xbmc/interfaces/python/XBPython.h +++ b/xbmc/interfaces/python/XBPython.h @@ -98,7 +98,7 @@ class XBPython : public IPlayerCallback // returns -1 if no scripts exist with specified filename int getScriptId(const CStdString &strFile); - PyThreadState *getMainThreadState(); + void* getMainThreadState(); bool m_bLogin; CCriticalSection m_critSection; @@ -106,7 +106,7 @@ class XBPython : public IPlayerCallback bool FileExist(const char* strFile); int m_nextid; - PyThreadState* m_mainThreadState; + void* m_mainThreadState; ThreadIdentifier m_ThreadId; bool m_bInitialized; HANDLE m_hEvent; diff --git a/xbmc/interfaces/python/XBPythonDll.cpp b/xbmc/interfaces/python/XBPythonDll.cpp index c4c0563670..38f5c8be32 100644 --- a/xbmc/interfaces/python/XBPythonDll.cpp +++ b/xbmc/interfaces/python/XBPythonDll.cpp @@ -19,19 +19,9 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif +#include "system.h" #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif +#include #else #include "python/Include/pyconfig.h" #endif diff --git a/xbmc/interfaces/python/XBPythonDll.h b/xbmc/interfaces/python/XBPythonDll.h index 7d2e816f8f..5997d94fbe 100644 --- a/xbmc/interfaces/python/XBPythonDll.h +++ b/xbmc/interfaces/python/XBPythonDll.h @@ -24,6 +24,8 @@ #if (defined HAVE_CONFIG_H) && (!defined WIN32) #include "config.h" #endif + +#if (!defined USE_EXTERNAL_PYTHON) #define DATA_OBJECT(data) unsigned long pointer_##data; #define _Py_NoneStruct (*((PyObject*)pointer__Py_NoneStruct)) @@ -96,3 +98,4 @@ class LibraryLoader; } #endif +#endif diff --git a/xbmc/interfaces/python/XBPythonDllFuncs.S b/xbmc/interfaces/python/XBPythonDllFuncs.S index 44186acc12..33cc8ff6d2 100644 --- a/xbmc/interfaces/python/XBPythonDllFuncs.S +++ b/xbmc/interfaces/python/XBPythonDllFuncs.S @@ -2,15 +2,7 @@ #include "config.h" #endif #if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif +#include #else #include "python/Include/pyconfig.h" #endif diff --git a/xbmc/interfaces/python/xbmcmodule/GUIPythonWindow.cpp b/xbmc/interfaces/python/xbmcmodule/GUIPythonWindow.cpp index 666ecd61df..46a254ee0d 100644 --- a/xbmc/interfaces/python/xbmcmodule/GUIPythonWindow.cpp +++ b/xbmc/interfaces/python/xbmcmodule/GUIPythonWindow.cpp @@ -19,8 +19,8 @@ * */ -#include "GUIPythonWindow.h" #include "pyutil.h" +#include "GUIPythonWindow.h" #include "window.h" #include "control.h" #include "action.h" @@ -31,7 +31,7 @@ using namespace PYXBMC; -PyXBMCAction::PyXBMCAction(PyObject*& callback) +PyXBMCAction::PyXBMCAction(void*& callback) : param(0), pCallbackWindow(NULL), pObject(NULL), controlId(0), type(0) { // this is ugly, but we can't grab python lock @@ -43,15 +43,16 @@ PyXBMCAction::PyXBMCAction(PyObject*& callback) // callback can become null while we are trying // to grab python lock above, so anything using // this should allow that situation - pCallbackWindow = callback; - Py_XINCREF(callback); + void* tmp = callback; // copy the referenced value + pCallbackWindow = (PyObject*)tmp; // assign internally + Py_XINCREF((PyObject*)callback); PyEval_ReleaseLock(); } PyXBMCAction::~PyXBMCAction() { - Py_XDECREF(pObject); - Py_XDECREF(pCallbackWindow); + Py_XDECREF((PyObject*)pObject); + Py_XDECREF((PyObject*)pCallbackWindow); } CGUIPythonWindow::CGUIPythonWindow(int id) @@ -85,7 +86,7 @@ bool CGUIPythonWindow::OnAction(const CAction &action) inf->pObject = Action_FromAction(action); // aquire lock? - PyXBMC_AddPendingCall(m_threadState, Py_XBMC_Event_OnAction, inf); + PyXBMC_AddPendingCall((PyThreadState*)m_threadState, Py_XBMC_Event_OnAction, inf); PulseActionEvent(); } return ret; @@ -122,8 +123,8 @@ bool CGUIPythonWindow::OnMessage(CGUIMessage& message) Control* pControl = *it; if (pControl->iControlId == iControl) { - inf->pObject = (PyObject*)pControl; - Py_INCREF(inf->pObject); + inf->pObject = pControl; + Py_INCREF((PyObject*)inf->pObject); break; } ++it; @@ -132,12 +133,12 @@ bool CGUIPythonWindow::OnMessage(CGUIMessage& message) if (inf->pObject) { // currently we only accept messages from a button or controllist with a select action - if ((ControlList_CheckExact(inf->pObject) && (message.GetParam1() == ACTION_SELECT_ITEM || message.GetParam1() == ACTION_MOUSE_LEFT_CLICK)) || - ControlButton_CheckExact(inf->pObject) || ControlRadioButton_CheckExact(inf->pObject) || - ControlCheckMark_CheckExact(inf->pObject)) + if ((ControlList_CheckExact((PyObject*)inf->pObject) && (message.GetParam1() == ACTION_SELECT_ITEM || message.GetParam1() == ACTION_MOUSE_LEFT_CLICK)) || + ControlButton_CheckExact((PyObject*)inf->pObject) || ControlRadioButton_CheckExact((PyObject*)inf->pObject) || + ControlCheckMark_CheckExact((PyObject*)inf->pObject)) { // aquire lock? - PyXBMC_AddPendingCall(m_threadState, Py_XBMC_Event_OnControl, inf); + PyXBMC_AddPendingCall((PyThreadState*)m_threadState, Py_XBMC_Event_OnControl, inf); PulseActionEvent(); // return true here as we are handling the event @@ -155,7 +156,7 @@ bool CGUIPythonWindow::OnMessage(CGUIMessage& message) return CGUIWindow::OnMessage(message); } -void CGUIPythonWindow::SetCallbackWindow(PyThreadState *state, PyObject *object) +void CGUIPythonWindow::SetCallbackWindow(void *state, void *object) { pCallbackWindow = object; m_threadState = state; @@ -236,7 +237,7 @@ int Py_XBMC_Event_OnControl(void* arg) if (action->pCallbackWindow) { PyXBMCAction* action = (PyXBMCAction*)arg; - PyObject *ret = PyObject_CallMethod(action->pCallbackWindow, (char*)"onControl", (char*)"(O)", action->pObject); + PyObject *ret = PyObject_CallMethod((PyObject*)action->pCallbackWindow, (char*)"onControl", (char*)"(O)", (PyObject*)action->pObject); if (ret) { Py_DECREF(ret); } @@ -258,7 +259,7 @@ int Py_XBMC_Event_OnAction(void* arg) { Action *pAction= (Action *)action->pObject; - PyObject *ret = PyObject_CallMethod(action->pCallbackWindow, (char*)"onAction", (char*)"(O)", pAction); + PyObject *ret = PyObject_CallMethod((PyObject*)action->pCallbackWindow, (char*)"onAction", (char*)"(O)", (PyObject*)pAction); if (ret) { Py_DECREF(ret); } diff --git a/xbmc/interfaces/python/xbmcmodule/GUIPythonWindow.h b/xbmc/interfaces/python/xbmcmodule/GUIPythonWindow.h index 725105401a..2146d90773 100644 --- a/xbmc/interfaces/python/xbmcmodule/GUIPythonWindow.h +++ b/xbmc/interfaces/python/xbmcmodule/GUIPythonWindow.h @@ -22,35 +22,19 @@ */ #include "guilib/GUIWindow.h" -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif class PyXBMCAction { public: int param; - PyObject* pCallbackWindow; - PyObject* pObject; + void* pCallbackWindow; + void* pObject; int controlId; // for XML window #if defined(_LINUX) || defined(_WIN32) int type; // 0=Action, 1=Control; #endif - PyXBMCAction(PyObject*& callback); + PyXBMCAction(void*& callback); virtual ~PyXBMCAction() ; }; @@ -64,11 +48,11 @@ class CGUIPythonWindow : public CGUIWindow virtual ~CGUIPythonWindow(void); virtual bool OnMessage(CGUIMessage& message); virtual bool OnAction(const CAction &action); - void SetCallbackWindow(PyThreadState *state, PyObject *object); + void SetCallbackWindow(void* state, void *object); void WaitForActionEvent(unsigned int timeout); void PulseActionEvent(); protected: - PyObject* pCallbackWindow; - PyThreadState* m_threadState; + void* pCallbackWindow; + void* m_threadState; HANDLE m_actionEvent; }; diff --git a/xbmc/interfaces/python/xbmcmodule/GUIPythonWindowXML.cpp b/xbmc/interfaces/python/xbmcmodule/GUIPythonWindowXML.cpp index c54ea67358..f932810cc7 100644 --- a/xbmc/interfaces/python/xbmcmodule/GUIPythonWindowXML.cpp +++ b/xbmc/interfaces/python/xbmcmodule/GUIPythonWindowXML.cpp @@ -19,8 +19,8 @@ * */ -#include "GUIPythonWindowXML.h" #include "pyutil.h" +#include "GUIPythonWindowXML.h" #include "window.h" #include "control.h" #include "action.h" @@ -75,7 +75,7 @@ bool CGUIPythonWindowXML::OnAction(const CAction &action) inf->pObject = Action_FromAction(action); // aquire lock? - PyXBMC_AddPendingCall(m_threadState, Py_XBMC_Event_OnAction, inf); + PyXBMC_AddPendingCall((PyThreadState*)m_threadState, Py_XBMC_Event_OnAction, inf); PulseActionEvent(); } return ret; @@ -115,7 +115,7 @@ bool CGUIPythonWindowXML::OnMessage(CGUIMessage& message) CGUIMediaWindow::OnMessage(message); if(pCallbackWindow) { - PyXBMC_AddPendingCall(m_threadState, Py_XBMC_Event_OnInit, new PyXBMCAction(pCallbackWindow)); + PyXBMC_AddPendingCall((PyThreadState*)m_threadState, Py_XBMC_Event_OnInit, new PyXBMCAction(pCallbackWindow)); PulseActionEvent(); } return true; @@ -136,7 +136,7 @@ bool CGUIPythonWindowXML::OnMessage(CGUIMessage& message) PyXBMCAction* inf = new PyXBMCAction(pCallbackWindow); inf->controlId = iControl; // aquire lock? - PyXBMC_AddPendingCall(m_threadState, Py_XBMC_Event_OnFocus, inf); + PyXBMC_AddPendingCall((PyThreadState*)m_threadState, Py_XBMC_Event_OnFocus, inf); PulseActionEvent(); } } @@ -179,7 +179,7 @@ bool CGUIPythonWindowXML::OnMessage(CGUIMessage& message) PyXBMCAction* inf = new PyXBMCAction(pCallbackWindow); inf->controlId = iControl; // aquire lock? - PyXBMC_AddPendingCall(m_threadState, Py_XBMC_Event_OnClick, inf); + PyXBMC_AddPendingCall((PyThreadState*)m_threadState, Py_XBMC_Event_OnClick, inf); PulseActionEvent(); return true; } @@ -189,7 +189,7 @@ bool CGUIPythonWindowXML::OnMessage(CGUIMessage& message) inf->pObject = Action_FromAction(CAction(ACTION_CONTEXT_MENU)); // aquire lock? - PyXBMC_AddPendingCall(m_threadState, Py_XBMC_Event_OnAction, inf); + PyXBMC_AddPendingCall((PyThreadState*)m_threadState, Py_XBMC_Event_OnAction, inf); PulseActionEvent(); return true; } @@ -360,7 +360,7 @@ int Py_XBMC_Event_OnClick(void* arg) PyXBMCAction* action = (PyXBMCAction*)arg; if (action->pCallbackWindow) { - PyObject *ret = PyObject_CallMethod(action->pCallbackWindow, (char*)"onClick", (char*)"(i)", action->controlId); + PyObject *ret = PyObject_CallMethod((PyObject*)action->pCallbackWindow, (char*)"onClick", (char*)"(i)", action->controlId); if (ret) { Py_DECREF(ret); @@ -378,7 +378,7 @@ int Py_XBMC_Event_OnFocus(void* arg) PyXBMCAction* action = (PyXBMCAction*)arg; if (action->pCallbackWindow) { - PyObject *ret = PyObject_CallMethod(action->pCallbackWindow, (char*)"onFocus", (char*)"(i)", action->controlId); + PyObject *ret = PyObject_CallMethod((PyObject*)action->pCallbackWindow, (char*)"onFocus", (char*)"(i)", action->controlId); if (ret) { Py_DECREF(ret); @@ -396,7 +396,7 @@ int Py_XBMC_Event_OnInit(void* arg) PyXBMCAction* action = (PyXBMCAction*)arg; if (action->pCallbackWindow) { - PyObject *ret = PyObject_CallMethod(action->pCallbackWindow, (char*)"onInit", (char*)"()"); //, (char*)"O", &self); + PyObject *ret = PyObject_CallMethod((PyObject*)action->pCallbackWindow, (char*)"onInit", (char*)"()"); //, (char*)"O", &self); if (ret) { Py_XDECREF(ret); @@ -406,7 +406,7 @@ int Py_XBMC_Event_OnInit(void* arg) return 0; } -void CGUIPythonWindowXML::SetCallbackWindow(PyThreadState *state, PyObject *object) +void CGUIPythonWindowXML::SetCallbackWindow(void *state, void *object) { pCallbackWindow = object; m_threadState = state; diff --git a/xbmc/interfaces/python/xbmcmodule/GUIPythonWindowXML.h b/xbmc/interfaces/python/xbmcmodule/GUIPythonWindowXML.h index 3e26854d25..4b17b1fc61 100644 --- a/xbmc/interfaces/python/xbmcmodule/GUIPythonWindowXML.h +++ b/xbmc/interfaces/python/xbmcmodule/GUIPythonWindowXML.h @@ -47,7 +47,7 @@ class CGUIPythonWindowXML : public CGUIMediaWindow int GetListSize(); int GetCurrentListPosition(); void SetCurrentListPosition(int item); - void SetCallbackWindow(PyThreadState* state, PyObject *object); + void SetCallbackWindow(void* state, void* object); virtual bool OnClick(int iItem); void SetProperty(const CStdString &strProperty, const CStdString &strValue); @@ -58,8 +58,8 @@ class CGUIPythonWindowXML : public CGUIMediaWindow void ClearScriptStrings(); virtual bool Update(const CStdString &strPath); void SetupShares(); - PyObject* pCallbackWindow; - PyThreadState* m_threadState; + void* pCallbackWindow; + void* m_threadState; HANDLE m_actionEvent; bool m_bRunning; CStdString m_scriptPath; diff --git a/xbmc/interfaces/python/xbmcmodule/Makefile b/xbmc/interfaces/python/xbmcmodule/Makefile.in similarity index 92% rename from xbmc/interfaces/python/xbmcmodule/Makefile rename to xbmc/interfaces/python/xbmcmodule/Makefile.in index 388a05bce4..be956f34d0 100644 --- a/xbmc/interfaces/python/xbmcmodule/Makefile +++ b/xbmc/interfaces/python/xbmcmodule/Makefile.in @@ -37,5 +37,7 @@ SRCS=action.cpp \ LIB=xbmcmodule.a -include ../../../../Makefile.include +INCLUDES+= @PYTHON_CPPFLAGS@ + +include @abs_top_srcdir@/Makefile.include -include $(patsubst %.cpp,%.P,$(patsubst %.c,%.P,$(SRCS))) diff --git a/xbmc/interfaces/python/xbmcmodule/PythonAddon.h b/xbmc/interfaces/python/xbmcmodule/PythonAddon.h index 3a336d9da4..83237dc585 100644 --- a/xbmc/interfaces/python/xbmcmodule/PythonAddon.h +++ b/xbmc/interfaces/python/xbmcmodule/PythonAddon.h @@ -21,22 +21,7 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include #include "addons/IAddon.h" diff --git a/xbmc/interfaces/python/xbmcmodule/PythonPlayer.h b/xbmc/interfaces/python/xbmcmodule/PythonPlayer.h index cac9e19971..17eb7e12a5 100644 --- a/xbmc/interfaces/python/xbmcmodule/PythonPlayer.h +++ b/xbmc/interfaces/python/xbmcmodule/PythonPlayer.h @@ -21,22 +21,7 @@ #pragma once -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include #include "cores/IPlayer.h" diff --git a/xbmc/interfaces/python/xbmcmodule/action.h b/xbmc/interfaces/python/xbmcmodule/action.h index 6a583e6ff3..4b4346d751 100644 --- a/xbmc/interfaces/python/xbmcmodule/action.h +++ b/xbmc/interfaces/python/xbmcmodule/action.h @@ -19,22 +19,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "../XBPythonDll.h" #include "listitem.h" diff --git a/xbmc/interfaces/python/xbmcmodule/control.h b/xbmc/interfaces/python/xbmcmodule/control.h index 2dbb84e428..3877eb7bfa 100644 --- a/xbmc/interfaces/python/xbmcmodule/control.h +++ b/xbmc/interfaces/python/xbmcmodule/control.h @@ -19,22 +19,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "../XBPythonDll.h" #include "listitem.h" #include "guilib/GUIColorManager.h" diff --git a/xbmc/interfaces/python/xbmcmodule/controlbutton.cpp b/xbmc/interfaces/python/xbmcmodule/controlbutton.cpp index b0bc25db2b..90bb39a5cb 100644 --- a/xbmc/interfaces/python/xbmcmodule/controlbutton.cpp +++ b/xbmc/interfaces/python/xbmcmodule/controlbutton.cpp @@ -19,22 +19,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "../XBPythonDll.h" #include "guilib/GUIButtonControl.h" #include "guilib/GUIFontManager.h" diff --git a/xbmc/interfaces/python/xbmcmodule/controlcheckmark.cpp b/xbmc/interfaces/python/xbmcmodule/controlcheckmark.cpp index e74e6648ee..8aa66fc336 100644 --- a/xbmc/interfaces/python/xbmcmodule/controlcheckmark.cpp +++ b/xbmc/interfaces/python/xbmcmodule/controlcheckmark.cpp @@ -19,22 +19,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "../XBPythonDll.h" #include "guilib/GUICheckMarkControl.h" #include "guilib/GUIFontManager.h" diff --git a/xbmc/interfaces/python/xbmcmodule/controlfadelabel.cpp b/xbmc/interfaces/python/xbmcmodule/controlfadelabel.cpp index 202a583026..e014b0422b 100644 --- a/xbmc/interfaces/python/xbmcmodule/controlfadelabel.cpp +++ b/xbmc/interfaces/python/xbmcmodule/controlfadelabel.cpp @@ -19,22 +19,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "../XBPythonDll.h" #include "guilib/GUIFadeLabelControl.h" #include "guilib/GUIFontManager.h" diff --git a/xbmc/interfaces/python/xbmcmodule/controlgroup.cpp b/xbmc/interfaces/python/xbmcmodule/controlgroup.cpp index 21e7609bf5..a89204ec64 100644 --- a/xbmc/interfaces/python/xbmcmodule/controlgroup.cpp +++ b/xbmc/interfaces/python/xbmcmodule/controlgroup.cpp @@ -19,22 +19,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "guilib/GUIControlGroup.h" #include "guilib/GUIFontManager.h" #include "control.h" diff --git a/xbmc/interfaces/python/xbmcmodule/controlimage.cpp b/xbmc/interfaces/python/xbmcmodule/controlimage.cpp index 65ad8bccf6..c70a9f8e64 100644 --- a/xbmc/interfaces/python/xbmcmodule/controlimage.cpp +++ b/xbmc/interfaces/python/xbmcmodule/controlimage.cpp @@ -19,22 +19,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "../XBPythonDll.h" #include "guilib/GUIImage.h" #include "control.h" diff --git a/xbmc/interfaces/python/xbmcmodule/controllabel.cpp b/xbmc/interfaces/python/xbmcmodule/controllabel.cpp index 34e645bab8..93713b34f8 100644 --- a/xbmc/interfaces/python/xbmcmodule/controllabel.cpp +++ b/xbmc/interfaces/python/xbmcmodule/controllabel.cpp @@ -19,22 +19,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "../XBPythonDll.h" #include "guilib/GUILabelControl.h" #include "guilib/GUIFontManager.h" diff --git a/xbmc/interfaces/python/xbmcmodule/controllist.cpp b/xbmc/interfaces/python/xbmcmodule/controllist.cpp index 658539200d..576b8d7c90 100644 --- a/xbmc/interfaces/python/xbmcmodule/controllist.cpp +++ b/xbmc/interfaces/python/xbmcmodule/controllist.cpp @@ -19,22 +19,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "../XBPythonDll.h" #include "guilib/GUIListContainer.h" #include "guilib/GUIFontManager.h" diff --git a/xbmc/interfaces/python/xbmcmodule/controlprogress.cpp b/xbmc/interfaces/python/xbmcmodule/controlprogress.cpp index 9ffaedd775..39f4cf814f 100644 --- a/xbmc/interfaces/python/xbmcmodule/controlprogress.cpp +++ b/xbmc/interfaces/python/xbmcmodule/controlprogress.cpp @@ -19,22 +19,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "guilib/GUIProgressControl.h" #include "control.h" #include "pyutil.h" diff --git a/xbmc/interfaces/python/xbmcmodule/controlradiobutton.cpp b/xbmc/interfaces/python/xbmcmodule/controlradiobutton.cpp index 32251b9dcf..82e4827abc 100644 --- a/xbmc/interfaces/python/xbmcmodule/controlradiobutton.cpp +++ b/xbmc/interfaces/python/xbmcmodule/controlradiobutton.cpp @@ -19,22 +19,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "../XBPythonDll.h" #include "guilib/GUIRadioButtonControl.h" #include "guilib/GUIFontManager.h" diff --git a/xbmc/interfaces/python/xbmcmodule/controlslider.cpp b/xbmc/interfaces/python/xbmcmodule/controlslider.cpp index 55d67ac0ed..0af6645ec7 100644 --- a/xbmc/interfaces/python/xbmcmodule/controlslider.cpp +++ b/xbmc/interfaces/python/xbmcmodule/controlslider.cpp @@ -19,22 +19,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "guilib/GUISliderControl.h" #include "control.h" #include "pyutil.h" diff --git a/xbmc/interfaces/python/xbmcmodule/controlspin.cpp b/xbmc/interfaces/python/xbmcmodule/controlspin.cpp index f8e72f412d..ac076ac338 100644 --- a/xbmc/interfaces/python/xbmcmodule/controlspin.cpp +++ b/xbmc/interfaces/python/xbmcmodule/controlspin.cpp @@ -19,22 +19,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "../XBPythonDll.h" #include "guilib/GUISpinControl.h" #include "control.h" diff --git a/xbmc/interfaces/python/xbmcmodule/controltextbox.cpp b/xbmc/interfaces/python/xbmcmodule/controltextbox.cpp index dfce4ee1de..9f00225d9e 100644 --- a/xbmc/interfaces/python/xbmcmodule/controltextbox.cpp +++ b/xbmc/interfaces/python/xbmcmodule/controltextbox.cpp @@ -19,22 +19,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "../XBPythonDll.h" #include "guilib/GUITextBox.h" #include "guilib/GUIFontManager.h" diff --git a/xbmc/interfaces/python/xbmcmodule/dialog.cpp b/xbmc/interfaces/python/xbmcmodule/dialog.cpp index 42aa144941..aeefa42db2 100644 --- a/xbmc/interfaces/python/xbmcmodule/dialog.cpp +++ b/xbmc/interfaces/python/xbmcmodule/dialog.cpp @@ -19,23 +19,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif #include "dialog.h" -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif + #include "../XBPythonDll.h" #include "Application.h" #include "settings/Settings.h" diff --git a/xbmc/interfaces/python/xbmcmodule/dialog.h b/xbmc/interfaces/python/xbmcmodule/dialog.h index b006f0b589..93d0a9eb68 100644 --- a/xbmc/interfaces/python/xbmcmodule/dialog.h +++ b/xbmc/interfaces/python/xbmcmodule/dialog.h @@ -19,22 +19,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "window.h" #pragma once diff --git a/xbmc/interfaces/python/xbmcmodule/infotagmusic.h b/xbmc/interfaces/python/xbmcmodule/infotagmusic.h index 8106997f5f..448562bf2c 100644 --- a/xbmc/interfaces/python/xbmcmodule/infotagmusic.h +++ b/xbmc/interfaces/python/xbmcmodule/infotagmusic.h @@ -19,22 +19,7 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include #include "music/tags/MusicInfoTag.h" diff --git a/xbmc/interfaces/python/xbmcmodule/infotagvideo.h b/xbmc/interfaces/python/xbmcmodule/infotagvideo.h index 0dd65239da..4fed3bd8bf 100644 --- a/xbmc/interfaces/python/xbmcmodule/infotagvideo.h +++ b/xbmc/interfaces/python/xbmcmodule/infotagvideo.h @@ -19,22 +19,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "video/VideoInfoTag.h" #pragma once diff --git a/xbmc/interfaces/python/xbmcmodule/keyboard.h b/xbmc/interfaces/python/xbmcmodule/keyboard.h index 2643e9011d..b9335dd8db 100644 --- a/xbmc/interfaces/python/xbmcmodule/keyboard.h +++ b/xbmc/interfaces/python/xbmcmodule/keyboard.h @@ -19,22 +19,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "../XBPythonDll.h" #include #pragma once diff --git a/xbmc/interfaces/python/xbmcmodule/listitem.cpp b/xbmc/interfaces/python/xbmcmodule/listitem.cpp index c68c8d692f..37cff5b1cd 100644 --- a/xbmc/interfaces/python/xbmcmodule/listitem.cpp +++ b/xbmc/interfaces/python/xbmcmodule/listitem.cpp @@ -19,22 +19,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "../XBPythonDll.h" #include "listitem.h" #include "pyutil.h" diff --git a/xbmc/interfaces/python/xbmcmodule/listitem.h b/xbmc/interfaces/python/xbmcmodule/listitem.h index 499d73481e..3ec788cbb5 100644 --- a/xbmc/interfaces/python/xbmcmodule/listitem.h +++ b/xbmc/interfaces/python/xbmcmodule/listitem.h @@ -21,22 +21,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "FileItem.h" #define ListItem_Check(op) PyObject_TypeCheck(op, &ListItem_Type) diff --git a/xbmc/interfaces/python/xbmcmodule/player.cpp b/xbmc/interfaces/python/xbmcmodule/player.cpp index 54bf4e8c8d..1c8df78ae1 100644 --- a/xbmc/interfaces/python/xbmcmodule/player.cpp +++ b/xbmc/interfaces/python/xbmcmodule/player.cpp @@ -19,12 +19,12 @@ * */ +#include "pyutil.h" #include "Application.h" #include "GUIInfoManager.h" #include "PlayListPlayer.h" #include "player.h" #include "pyplaylist.h" -#include "pyutil.h" #include "infotagvideo.h" #include "infotagmusic.h" #include "listitem.h" diff --git a/xbmc/interfaces/python/xbmcmodule/player.h b/xbmc/interfaces/python/xbmcmodule/player.h index 30acacf7fb..e994b5757f 100644 --- a/xbmc/interfaces/python/xbmcmodule/player.h +++ b/xbmc/interfaces/python/xbmcmodule/player.h @@ -19,22 +19,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "../XBPythonDll.h" #include "PythonPlayer.h" #include "cores/playercorefactory/PlayerCoreFactory.h" diff --git a/xbmc/interfaces/python/xbmcmodule/pyplaylist.cpp b/xbmc/interfaces/python/xbmcmodule/pyplaylist.cpp index 04679b2462..253c1024da 100644 --- a/xbmc/interfaces/python/xbmcmodule/pyplaylist.cpp +++ b/xbmc/interfaces/python/xbmcmodule/pyplaylist.cpp @@ -19,26 +19,14 @@ * */ -#include "system.h" +#include + +#include "pyutil.h" #include "PlayListPlayer.h" #include "utils/URIUtils.h" #include "pyplaylist.h" -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/structmember.h" -#endif #include "../XBPythonDll.h" #include "playlists/PlayListFactory.h" -#include "pyutil.h" #include "listitem.h" #include "playlists/PlayList.h" #include "video/VideoInfoTag.h" diff --git a/xbmc/interfaces/python/xbmcmodule/pyplaylist.h b/xbmc/interfaces/python/xbmcmodule/pyplaylist.h index 9128f5f0de..15c1d9b242 100644 --- a/xbmc/interfaces/python/xbmcmodule/pyplaylist.h +++ b/xbmc/interfaces/python/xbmcmodule/pyplaylist.h @@ -21,22 +21,7 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include #include "FileItem.h" #define PlayList_Check(op) PyObject_TypeCheck(op, &PlayList_Type) diff --git a/xbmc/interfaces/python/xbmcmodule/pyutil.h b/xbmc/interfaces/python/xbmcmodule/pyutil.h index bca16b9e98..f5d456930f 100644 --- a/xbmc/interfaces/python/xbmcmodule/pyutil.h +++ b/xbmc/interfaces/python/xbmcmodule/pyutil.h @@ -19,25 +19,10 @@ * */ -#include "utils/StdString.h" +#include -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif #include "../XBPythonDll.h" +#include "utils/StdString.h" #ifdef __cplusplus extern "C" { diff --git a/xbmc/interfaces/python/xbmcmodule/window.h b/xbmc/interfaces/python/xbmcmodule/window.h index e355a6328a..a188b09d0e 100644 --- a/xbmc/interfaces/python/xbmcmodule/window.h +++ b/xbmc/interfaces/python/xbmcmodule/window.h @@ -19,22 +19,8 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "../XBPythonDll.h" #include "GUIPythonWindow.h" #include "GUIPythonWindowXML.h" diff --git a/xbmc/interfaces/python/xbmcmodule/winxml.cpp b/xbmc/interfaces/python/xbmcmodule/winxml.cpp index dd39f9f786..b05fb8f075 100644 --- a/xbmc/interfaces/python/xbmcmodule/winxml.cpp +++ b/xbmc/interfaces/python/xbmcmodule/winxml.cpp @@ -19,21 +19,9 @@ * */ -#include "system.h" +#include + #include "winxml.h" -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif #include "../XBPythonDll.h" #include "pyutil.h" #include "GUIPythonWindowXML.h" diff --git a/xbmc/interfaces/python/xbmcmodule/winxml.h b/xbmc/interfaces/python/xbmcmodule/winxml.h index 2df67f8863..82e284ee51 100644 --- a/xbmc/interfaces/python/xbmcmodule/winxml.h +++ b/xbmc/interfaces/python/xbmcmodule/winxml.h @@ -19,22 +19,7 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include #include "window.h" #pragma once diff --git a/xbmc/interfaces/python/xbmcmodule/winxmldialog.cpp b/xbmc/interfaces/python/xbmcmodule/winxmldialog.cpp index 3f665a17a8..aacb1455b6 100644 --- a/xbmc/interfaces/python/xbmcmodule/winxmldialog.cpp +++ b/xbmc/interfaces/python/xbmcmodule/winxmldialog.cpp @@ -19,22 +19,11 @@ * */ -#include "system.h" -#include "winxml.h" -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "../XBPythonDll.h" + +#include "winxml.h" #include "pyutil.h" #include "GUIPythonWindowXMLDialog.h" #include "addons/Skin.h" diff --git a/xbmc/interfaces/python/xbmcmodule/xbmcaddonmodule.cpp b/xbmc/interfaces/python/xbmcmodule/xbmcaddonmodule.cpp index c747cebbcb..512774c55f 100644 --- a/xbmc/interfaces/python/xbmcmodule/xbmcaddonmodule.cpp +++ b/xbmc/interfaces/python/xbmcmodule/xbmcaddonmodule.cpp @@ -19,22 +19,7 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include #include "PythonAddon.h" #include "pyutil.h" diff --git a/xbmc/interfaces/python/xbmcmodule/xbmcguimodule.cpp b/xbmc/interfaces/python/xbmcmodule/xbmcguimodule.cpp index 1c139578e6..0b7ea7fa7b 100644 --- a/xbmc/interfaces/python/xbmcmodule/xbmcguimodule.cpp +++ b/xbmc/interfaces/python/xbmcmodule/xbmcguimodule.cpp @@ -19,26 +19,9 @@ * */ -#if (defined HAVE_CONFIG_H) && (!defined WIN32) - #include "config.h" -#endif -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" - #include "python/Include/structmember.h" -#endif +#include +#include + #include "../XBPythonDll.h" #include "control.h" #include "window.h" diff --git a/xbmc/interfaces/python/xbmcmodule/xbmcmodule.cpp b/xbmc/interfaces/python/xbmcmodule/xbmcmodule.cpp index 9a1e239b3d..58ad3558d9 100644 --- a/xbmc/interfaces/python/xbmcmodule/xbmcmodule.cpp +++ b/xbmc/interfaces/python/xbmcmodule/xbmcmodule.cpp @@ -19,20 +19,8 @@ * */ -#include "system.h" -#if (defined USE_EXTERNAL_PYTHON) - #if (defined HAVE_LIBPYTHON2_6) - #include - #elif (defined HAVE_LIBPYTHON2_5) - #include - #elif (defined HAVE_LIBPYTHON2_4) - #include - #else - #error "Could not determine version of Python to use." - #endif -#else - #include "python/Include/Python.h" -#endif +#include + #include "../XBPythonDll.h" #include "player.h" #include "pyplaylist.h" diff --git a/xbmc/interfaces/python/xbmcmodule/xbmcplugin.cpp b/xbmc/interfaces/python/xbmcmodule/xbmcplugin.cpp index d6a46f479e..f1e3d3576c 100644 --- a/xbmc/interfaces/python/xbmcmodule/xbmcplugin.cpp +++ b/xbmc/interfaces/python/xbmcmodule/xbmcplugin.cpp @@ -19,13 +19,13 @@ * */ +// include for constants +#include "pyutil.h" + #include "filesystem/PluginDirectory.h" #include "listitem.h" #include "FileItem.h" -// include for constants -#include "pyutil.h" - using namespace std; using namespace XFILE; using namespace ADDON; diff --git a/xbmc/interfaces/python/xbmcmodule/xbmcvfsmodule.cpp b/xbmc/interfaces/python/xbmcmodule/xbmcvfsmodule.cpp index 5b0f5de2f9..96e5dcb74f 100644 --- a/xbmc/interfaces/python/xbmcmodule/xbmcvfsmodule.cpp +++ b/xbmc/interfaces/python/xbmcmodule/xbmcvfsmodule.cpp @@ -19,20 +19,8 @@ * */ -#include "system.h" -#if (defined USE_EXTERNAL_PYTHON) -#if (defined HAVE_LIBPYTHON2_6) -#include -#elif (defined HAVE_LIBPYTHON2_5) -#include -#elif (defined HAVE_LIBPYTHON2_4) -#include -#else -#error "Could not determine version of Python to use." -#endif -#else -#include "python/Include/Python.h" -#endif +#include + #include "../XBPythonDll.h" #include "filesystem/File.h" diff --git a/xbmc/network/WebServer.cpp b/xbmc/network/WebServer.cpp index 1ee5d9e16c..48548d0b2a 100644 --- a/xbmc/network/WebServer.cpp +++ b/xbmc/network/WebServer.cpp @@ -29,7 +29,7 @@ #include "utils/log.h" #include "utils/URIUtils.h" #include "threads/SingleLock.h" -#include "DateTime.h" +#include "XBDateTime.h" #include "addons/AddonManager.h" #ifdef _WIN32 diff --git a/xbmc/pictures/PictureInfoTag.cpp b/xbmc/pictures/PictureInfoTag.cpp index 96c1f4f020..e286d7ffa3 100644 --- a/xbmc/pictures/PictureInfoTag.cpp +++ b/xbmc/pictures/PictureInfoTag.cpp @@ -20,7 +20,7 @@ */ #include "PictureInfoTag.h" -#include "DateTime.h" +#include "XBDateTime.h" #include "Util.h" #include "utils/Variant.h" diff --git a/xbmc/playlists/SmartPlayList.cpp b/xbmc/playlists/SmartPlayList.cpp index 0540566853..7ddf34a834 100644 --- a/xbmc/playlists/SmartPlayList.cpp +++ b/xbmc/playlists/SmartPlayList.cpp @@ -29,7 +29,7 @@ #include "utils/XMLUtils.h" #include "video/VideoDatabase.h" #include "Util.h" -#include "DateTime.h" +#include "XBDateTime.h" #include "guilib/LocalizeStrings.h" using namespace std; diff --git a/xbmc/utils/StringUtils.h b/xbmc/utils/StringUtils.h index c290a0f339..9de22b0082 100644 --- a/xbmc/utils/StringUtils.h +++ b/xbmc/utils/StringUtils.h @@ -32,7 +32,7 @@ #ifndef __STRINGUTILS_H_ #define __STRINGUTILS_H_ -#include "DateTime.h" +#include "XBDateTime.h" #include "utils/StdString.h" #include #include diff --git a/xbmc/utils/TimeUtils.cpp b/xbmc/utils/TimeUtils.cpp index 07b88fbaf7..5f721dce68 100644 --- a/xbmc/utils/TimeUtils.cpp +++ b/xbmc/utils/TimeUtils.cpp @@ -20,7 +20,7 @@ */ #include "TimeUtils.h" -#include "DateTime.h" +#include "XBDateTime.h" #ifdef __APPLE__ #if defined(__ppc__) || defined(__arm__) diff --git a/xbmc/utils/Weather.cpp b/xbmc/utils/Weather.cpp index d654213dfb..0f75b66df2 100644 --- a/xbmc/utils/Weather.cpp +++ b/xbmc/utils/Weather.cpp @@ -39,7 +39,7 @@ #include "GUIUserMessages.h" #include "dialogs/GUIDialogProgress.h" #include "dialogs/GUIDialogSelect.h" -#include "DateTime.h" +#include "XBDateTime.h" #include "LangInfo.h" #include "guilib/LocalizeStrings.h" #include "filesystem/Directory.h" diff --git a/xbmc/video/VideoInfoDownloader.h b/xbmc/video/VideoInfoDownloader.h index 292887152f..b1d961092a 100644 --- a/xbmc/video/VideoInfoDownloader.h +++ b/xbmc/video/VideoInfoDownloader.h @@ -24,7 +24,7 @@ #include "threads/Thread.h" #include "VideoInfoTag.h" #include "addons/Scraper.h" -#include "DateTime.h" +#include "XBDateTime.h" #include "filesystem/FileCurl.h" // forward definitions diff --git a/xbmc/video/VideoInfoScanner.h b/xbmc/video/VideoInfoScanner.h index 19d4e725eb..9f16aff362 100644 --- a/xbmc/video/VideoInfoScanner.h +++ b/xbmc/video/VideoInfoScanner.h @@ -24,7 +24,7 @@ #include "addons/Scraper.h" #include "NfoFile.h" #include "VideoInfoDownloader.h" -#include "DateTime.h" +#include "XBDateTime.h" class CIMDB; class CRegExp; diff --git a/xbmc/video/windows/GUIWindowFullScreen.cpp b/xbmc/video/windows/GUIWindowFullScreen.cpp index de31f144d2..f143641fad 100644 --- a/xbmc/video/windows/GUIWindowFullScreen.cpp +++ b/xbmc/video/windows/GUIWindowFullScreen.cpp @@ -48,7 +48,7 @@ #include "threads/SingleLock.h" #include "utils/log.h" #include "utils/TimeUtils.h" -#include "DateTime.h" +#include "XBDateTime.h" #include "input/ButtonTranslator.h" #include diff --git a/xbmc/win32/XBMC_PC.cpp b/xbmc/win32/XBMC_PC.cpp index 192f9db3b9..4e98e120cc 100644 --- a/xbmc/win32/XBMC_PC.cpp +++ b/xbmc/win32/XBMC_PC.cpp @@ -24,7 +24,7 @@ #include "WIN32Util.h" #include "shellapi.h" #include "dbghelp.h" -#include "DateTime.h" +#include "XBDateTime.h" #include "threads/Thread.h" #include "Application.h"