2008-08-01, 02:10
Important notes regarding the recent SVN changes (14612) regarding the building of XBMC for Mac.
1) The project files and all internal lib makefiles have been changed to target the 10.4 SDK. This mean XBMC for Mac is now 10.4 and 10.5 binary compatible. For this to work correctly, the MacPort referenced libs need to be built on a 10.4 platform as it is not possible at the current time to build MacPorts libs on a 10.5 system to be 10.4 compatible. There is a MacPorts-mpkgs-1.0.zip archive available to download on the XBMC SourceForge project site that contains the current set of MacPorts libs referenced by XBMC on Mac. These libs are 10.4/10.5 compatible and are selfcontained (no need to install MacPorts). You have a choice to use the 10.4/10.5 compatible pre-built MacPorts libs or you can use your existing MacPorts install but remember that any MacPorts libs built on a 10.5 system will NOT work under a 10.4 system. If any MacPorts libs are missing from the mpkgs, please contact me and I can create an new MacPorts-mpkgs that include them.
2) The XCode project file has been purged of any non-referenced header/library references. Also any libs that do not have a make method or source code have been redirected back to a MacPorts built lib (ie. libcpio). Once a source code build is in svn, then they can be re-directed back. Just a note, libcpio in the mpkgs does have the osx patches.
3) There are several new targets, "configure", "clean libraries", "build libraries" and "build XBMCHelper". The "tiger" target has been removed as the "XBMC" target build is 10.5/10.4 compatible. "configure" is a deps of the "XBMC" target so don't worry about it. "clean libraries" and "build libraries" will clean/build the internal refs libs including ffmpeg. "build XBMCHelper" builds the XBMCHelper and places a copy at the xbmc root.
4) The ffmpeg headers that XBMC references have been updated to match the ffmpeg built headers. This is important as the ffmpeg ABI MUST match between the XBMC binary and the ffmpeg lib binary.
5) The internal libs have a uniform postfix of "-osx". This includes ffmpeg. Since they are now all built to 10.4 sdk, they will work under both 10.5 and 10.4. If a future build includes ppc, then the internal libs can be built universal so there is no need for a i386/ppc designation on internal libs. The same will apply to external libs.
6) I've been extremely cautious in making sure these changes will not break the build but one never knows So I'm sure that there will be some adjustment time required as various items are tweaked.
Good Luck and enjoy as XBMC can now be built to run under both 10.4 and 10.5 Mac OS X systems.
1) The project files and all internal lib makefiles have been changed to target the 10.4 SDK. This mean XBMC for Mac is now 10.4 and 10.5 binary compatible. For this to work correctly, the MacPort referenced libs need to be built on a 10.4 platform as it is not possible at the current time to build MacPorts libs on a 10.5 system to be 10.4 compatible. There is a MacPorts-mpkgs-1.0.zip archive available to download on the XBMC SourceForge project site that contains the current set of MacPorts libs referenced by XBMC on Mac. These libs are 10.4/10.5 compatible and are selfcontained (no need to install MacPorts). You have a choice to use the 10.4/10.5 compatible pre-built MacPorts libs or you can use your existing MacPorts install but remember that any MacPorts libs built on a 10.5 system will NOT work under a 10.4 system. If any MacPorts libs are missing from the mpkgs, please contact me and I can create an new MacPorts-mpkgs that include them.
2) The XCode project file has been purged of any non-referenced header/library references. Also any libs that do not have a make method or source code have been redirected back to a MacPorts built lib (ie. libcpio). Once a source code build is in svn, then they can be re-directed back. Just a note, libcpio in the mpkgs does have the osx patches.
3) There are several new targets, "configure", "clean libraries", "build libraries" and "build XBMCHelper". The "tiger" target has been removed as the "XBMC" target build is 10.5/10.4 compatible. "configure" is a deps of the "XBMC" target so don't worry about it. "clean libraries" and "build libraries" will clean/build the internal refs libs including ffmpeg. "build XBMCHelper" builds the XBMCHelper and places a copy at the xbmc root.
4) The ffmpeg headers that XBMC references have been updated to match the ffmpeg built headers. This is important as the ffmpeg ABI MUST match between the XBMC binary and the ffmpeg lib binary.
5) The internal libs have a uniform postfix of "-osx". This includes ffmpeg. Since they are now all built to 10.4 sdk, they will work under both 10.5 and 10.4. If a future build includes ppc, then the internal libs can be built universal so there is no need for a i386/ppc designation on internal libs. The same will apply to external libs.
6) I've been extremely cautious in making sure these changes will not break the build but one never knows So I'm sure that there will be some adjustment time required as various items are tweaked.
Good Luck and enjoy as XBMC can now be built to run under both 10.4 and 10.5 Mac OS X systems.