Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

778 lines (719 sloc) 24.788 kb
AUTOGENERATED_MAKEFILES=@OUTPUT_FILES@
BIN_DIRS= \
xbmc/guilib \
lib/tinyXML \
xbmc \
xbmc/addons \
xbmc/cdrip \
xbmc/cores \
xbmc/cores/DllLoader \
xbmc/cores/DllLoader/exports \
xbmc/cores/DllLoader/exports/util \
xbmc/cores/dvdplayer \
xbmc/cores/dvdplayer/DVDCodecs \
xbmc/cores/dvdplayer/DVDCodecs/Audio \
xbmc/cores/dvdplayer/DVDCodecs/Overlay \
xbmc/cores/dvdplayer/DVDCodecs/Video \
xbmc/cores/dvdplayer/DVDDemuxers/ \
xbmc/cores/dvdplayer/DVDInputStreams/ \
xbmc/cores/dvdplayer/DVDSubtitles/ \
xbmc/cores/paplayer \
xbmc/cores/AudioRenderers \
xbmc/cores/VideoRenderers \
xbmc/cores/VideoRenderers/VideoShaders \
xbmc/cores/ExternalPlayer \
xbmc/cores/playercorefactory \
xbmc/filesystem \
xbmc/filesystem/MusicDatabaseDirectory \
xbmc/filesystem/VideoDatabaseDirectory \
xbmc/dialogs \
xbmc/music \
xbmc/music/dialogs \
xbmc/music/infoscanner \
xbmc/music/karaoke \
xbmc/music/tags \
xbmc/music/windows \
xbmc/pictures \
xbmc/programs \
xbmc/video \
xbmc/video/dialogs \
xbmc/video/windows \
xbmc/windows \
xbmc/network \
xbmc/playlists \
xbmc/powermanagement \
xbmc/powermanagement/linux \
xbmc/storage \
xbmc/storage/linux \
xbmc/storage/osx \
lib/cmyth/libcmyth \
lib/cmyth/librefmem \
lib/libhts \
xbmc/interfaces \
xbmc/interfaces/http-api \
xbmc/interfaces/json-rpc \
xbmc/interfaces/python \
xbmc/interfaces/python/xbmcmodule \
lib/libRTV \
xbmc/network/libscrobbler \
lib/libUPnP \
lib/libXBMS \
lib/libXDAAP \
xbmc/dbwrappers \
lib/UnrarXLib \
lib/libsquish \
xbmc/visualizations \
xbmc/screensavers \
xbmc/utils \
xbmc/settings \
xbmc/linux \
xbmc/input \
xbmc/input/linux \
xbmc/osx \
xbmc/threads \
xbmc/threads/posix \
xbmc/windowing \
ifeq (@USE_OPENGL@,1)
BIN_DIRS += xbmc/rendering/gl
endif
ifeq (@USE_OPENGLES@,1)
BIN_DIRS += xbmc/rendering/gles
BIN_DIRS += xbmc/windowing/egl
endif
ifeq ($(findstring osx,@ARCH@),osx)
BIN_DIRS += xbmc/windowing/osx
BIN_DIRS += xbmc/network/osx
BIN_DIRS += xbmc/storage/osx
BIN_DIRS += xbmc/powermanagement/osx
else
BIN_DIRS += xbmc/windowing/X11
endif
EC_DIRS= \
tools/EventClients
XBMCTEX_DIRS= \
tools/TexturePacker
DVDPCODECS_DIRS= \
lib \
lib/libdvd \
ifneq (@USE_EXTERNAL_LIBASS@,1)
DVDPCODECS_DIRS+=lib/libass/xbmc
endif
PAPCODECS_DIRS= \
lib/xbadpcm \
lib/nosefart \
lib/timidity \
lib/libsidplay2 \
lib/stsound/StSoundLibrary \
lib/snesapu/SNES/SNESAPU \
lib/vgmstream \
ifeq (@USE_ASAP_CODEC@,1)
PAPCODEC_DIRS+= \
lib/asap
endif
ifeq ($(findstring osx,@ARCH@),osx)
PAPCODEC_DIRS+= \
lib/libflac
endif
LIB_DIRS=\
lib/cximage-6.0 \
lib/libexif \
lib/libhdhomerun \
lib/libid3tag \
lib/libapetag \
xbmc/interfaces/python/linux \
lib/cpluff \
lib/libmodplug \
lib/xbmc-dll-symbols \
lib/jsoncpp/src/lib_json
ifeq ($(findstring osx,@ARCH@), osx)
LIB_DIRS+=lib/libmicrohttpd
endif
SS_DIRS=\
xbmc/screensavers/rsxs-0.9/xbmc
VIS_DIRS=
ifeq (@USE_OPENGL@,1)
VIS_DIRS+=\
xbmc/visualizations/OpenGLSpectrum \
xbmc/visualizations/WaveForm \
xbmc/visualizations/XBMCProjectM \
endif
ifeq ($(findstring osx,@ARCH@), osx)
VIS_DIRS+=xbmc/visualizations/iTunes \
endif
ifneq (@BUILD_GOOM@,1)
VIS_DIRS+=xbmc/visualizations/Goom \
endif
CONFLUENCE_MEDIA=addons/skin.confluence/media
SKIN_DIRS=\
$(CONFLUENCE_MEDIA)
DIRS= $(BIN_DIRS) $(EC_DIRS) $(XBMCTEX_DIRS) $(DVDPCODECS_DIRS) $(PAPCODECS_DIRS) \
$(LIB_DIRS) $(SS_DIRS) $(VIS_DIRS) $(SKIN_DIRS)
LIBS=@LIBS@
CFLAGS=@CFLAGS@
CXXFLAGS=@CXXFLAGS@
LDFLAGS=@LDFLAGS@
INCLUDES=$(sort @INCLUDES@)
CLEAN_FILES=xbmc.bin xbmc-xrandr
DISTCLEAN_FILES=config.h config.log config.status tools/Linux/xbmc.sh \
tools/Linux/xbmc-standalone.sh autom4te.cache config.h.in~ \
lib/python/Include/pyconfig.h \
lib/python/configure.lineno \
lib/python/libpython2.4.so.1.0 \
system/libcpluff-@ARCH@.so
all : Makefile externals xbmc.bin xbmc-xrandr skins
include Makefile.include
.PHONY : dllloader exports visualizations screensavers eventclients papcodecs \
dvdpcodecs imagelib codecs externals force skins
# hack targets to keep build system up to date
Makefile : config.status $(addsuffix .in, $(AUTOGENERATED_MAKEFILES))
@echo "Regenerating Makefiles..."
@./config.status &> /dev/null
@echo "done"
config.status: configure
@echo "Build system configuration is stale."
@echo "Please (re)run configure."
@test -n "$$XBMC_IGNORE_STALE"
configure: configure.in
@echo 'configure is outdated, regenerating...'
@./bootstrap
# skin textures
ifeq (@HAVE_SDL_IMAGE@, 1)
skins: tools/TexturePacker/TexturePacker force
$(MAKE) -C $(CONFLUENCE_MEDIA)
else
skins:
endif
xbmc/guilib/guilib.a: force
$(MAKE) -C xbmc/guilib
lib/tinyXML/tinyxml.a: force
$(MAKE) -C lib/tinyXML
xbmc/xbmc.a: force
$(MAKE) -C xbmc
xbmc/cdrip/cdrip.a: force
$(MAKE) -C xbmc/cdrip
xbmc/cores/cores.a: force
$(MAKE) -C xbmc/cores
xbmc/cores/DllLoader/dllloader.a: force
$(MAKE) -C xbmc/cores/DllLoader/
xbmc/cores/DllLoader/exports/exports.a: force
$(MAKE) -C xbmc/cores/DllLoader/exports
xbmc/cores/DllLoader/exports/util/exports_utils.a: force
$(MAKE) -C xbmc/cores/DllLoader/exports/util
xbmc/cores/dvdplayer/DVDPlayer.a: force
$(MAKE) -C xbmc/cores/dvdplayer
xbmc/cores/dvdplayer/DVDCodecs/DVDCodecs.a: force
$(MAKE) -C xbmc/cores/dvdplayer/DVDCodecs
xbmc/cores/dvdplayer/DVDCodecs/Audio/Audio.a: force
$(MAKE) -C xbmc/cores/dvdplayer/DVDCodecs/Audio
xbmc/cores/dvdplayer/DVDCodecs/Overlay/Overlay.a: force
$(MAKE) -C xbmc/cores/dvdplayer/DVDCodecs/Overlay
xbmc/cores/dvdplayer/DVDCodecs/Video/Video.a: force
$(MAKE) -C xbmc/cores/dvdplayer/DVDCodecs/Video
xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxers.a: force
$(MAKE) -C xbmc/cores/dvdplayer/DVDDemuxers
xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreams.a: force
$(MAKE) -C xbmc/cores/dvdplayer/DVDInputStreams
xbmc/cores/dvdplayer/DVDSubtitles/DVDSubtitles.a: force
$(MAKE) -C xbmc/cores/dvdplayer/DVDSubtitles
xbmc/cores/paplayer/paplayer.a: force papcodecs
$(MAKE) -C xbmc/cores/paplayer
xbmc/cores/AudioRenderers/audiorenderers.a: force
$(MAKE) -C xbmc/cores/AudioRenderers
xbmc/cores/VideoRenderers/VideoRenderer.a: force
$(MAKE) -C xbmc/cores/VideoRenderers
xbmc/cores/VideoRenderers/VideoShaders/VideoShaders.a: force
$(MAKE) -C xbmc/cores/VideoRenderers/VideoShaders
xbmc/cores/ExternalPlayer/ExternalPlayer.a: force
$(MAKE) -C xbmc/cores/ExternalPlayer
xbmc/cores/playercorefactory/playercorefactory.a: force
$(MAKE) -C xbmc/cores/playercorefactory
xbmc/filesystem/filesystem.a: force
$(MAKE) -C xbmc/filesystem
xbmc/filesystem/MusicDatabaseDirectory/musicdatabasedirectory.a: force
$(MAKE) -C xbmc/filesystem/MusicDatabaseDirectory
xbmc/filesystem/VideoDatabaseDirectory/videodatabasedirectory.a: force
$(MAKE) -C xbmc/filesystem/VideoDatabaseDirectory
xbmc/input/input.a: force
$(MAKE) -C xbmc/input
xbmc/input/linux/input_linux.a: force
$(MAKE) -C xbmc/input/linux
xbmc/music/karaoke/karaoke.a: force
$(MAKE) -C xbmc/music/karaoke
xbmc/network/network.a: force
$(MAKE) -C xbmc/network
xbmc/network/osx/network.a: force
$(MAKE) -C xbmc/network/osx
xbmc/pictures/pictures.a: force
$(MAKE) -C xbmc/pictures
xbmc/programs/programs.a: force
$(MAKE) -C xbmc/programs
xbmc/network/linux/network_linux.a: force
$(MAKE) -C xbmc/network/linux
xbmc/playlists/playlists.a: force
$(MAKE) -C xbmc/playlists
xbmc/powermanagement/powermanagement.a: force
$(MAKE) -C xbmc/powermanagement
xbmc/powermanagement/linux/powermanagement_linux.a: force
$(MAKE) -C xbmc/powermanagement/linux
xbmc/powermanagement/osx/powermanagement.a: force
$(MAKE) -C xbmc/powermanagement/osx
xbmc/windowing/X11/windowing_X11.a: force
$(MAKE) -C xbmc/windowing/X11
xbmc/rendering/rendering.a: force
$(MAKE) -C xbmc/rendering
xbmc/rendering/gl/rendering_gl.a: force
$(MAKE) -C xbmc/rendering/gl
xbmc/rendering/gles/rendering_gles.a: force
$(MAKE) -C xbmc/rendering/gles
xbmc/windowing/windowing.a: force
$(MAKE) -C xbmc/windowing
xbmc/windowing/egl/windowing_egl.a: force
$(MAKE) -C xbmc/windowing/egl
xbmc/windowing/osx/windowing_osx.a: force
$(MAKE) -C xbmc/windowing/osx
xbmc/storage/storage.a: force
$(MAKE) -C xbmc/storage
xbmc/storage/linux/storage_linux.a: force
$(MAKE) -C xbmc/storage/linux
xbmc/storage/osx/storage.a: force
$(MAKE) -C xbmc/storage/osx
xbmc/threads/threads.a: force
$(MAKE) -C xbmc/threads
xbmc/music/music.a: force
$(MAKE) -C xbmc/music
xbmc/music/tags/musictags.a: force
$(MAKE) -C xbmc/music/tags
xbmc/music/dialogs/musicdialogs.a: force
$(MAKE) -C xbmc/music/dialogs
xbmc/music/windows/musicwindows.a: force
$(MAKE) -C xbmc/music/windows
xbmc/music/infoscanner/musicscanner.a: force
$(MAKE) -C xbmc/music/infoscanner
xbmc/video/video.a: force
$(MAKE) -C xbmc/video
xbmc/video/dialogs/videodialogs.a: force
$(MAKE) -C xbmc/video/dialogs
xbmc/video/windows/videowindows.a: force
$(MAKE) -C xbmc/video/windows
xbmc/dialogs/dialogs.a: force
$(MAKE) -C xbmc/dialogs
xbmc/windows/windows.a: force
$(MAKE) -C xbmc/windows
lib/cmyth/libcmyth/libcmyth.a: force
$(MAKE) -C lib/cmyth/libcmyth
lib/cmyth/librefmem/librefmem.a: force
$(MAKE) -C lib/cmyth/librefmem
lib/libhts/libhts.a: force
$(MAKE) -C lib/libhts
xbmc/interfaces/interfaces.a: force
$(MAKE) -C xbmc/interfaces
xbmc/interfaces/python/python.a: force
$(MAKE) -C xbmc/interfaces/python
xbmc/interfaces/python/xbmcmodule/xbmcmodule.a: force
$(MAKE) -C xbmc/interfaces/python/xbmcmodule
xbmc/network/libscrobbler/scrobbler.a: force
$(MAKE) -C xbmc/network/libscrobbler
lib/libRTV/librtv-@ARCH@.a: force
$(MAKE) -C lib/libRTV
lib/libUPnP/libupnp-@ARCH@.a: force
$(MAKE) -C lib/libUPnP
lib/libXBMS/libxbms-@ARCH@.a: force
$(MAKE) -C lib/libXBMS
lib/libXDAAP/libxdaap-@ARCH@.a: force
$(MAKE) -C lib/libXDAAP
lib/jsoncpp/src/lib_json/libjsoncpp.a: force
$(MAKE) -C lib/jsoncpp/src/lib_json
xbmc/interfaces/http-api/http-api.a: force
$(MAKE) -C xbmc/interfaces/http-api
xbmc/interfaces/json-rpc/json-rpc.a: force
$(MAKE) -C xbmc/interfaces/json-rpc
xbmc/dbwrappers/dbwrappers.a: force
$(MAKE) -C xbmc/dbwrappers
lib/UnrarXLib/UnrarXLib.a: force
$(MAKE) -C lib/UnrarXLib
lib/libsquish/libsquish-@ARCH@.a: force
$(MAKE) -C lib/libsquish
xbmc/linux/linux.a: force
$(MAKE) -C xbmc/linux
xbmc/threads/posix/threads_posix.a: force
$(MAKE) -C xbmc/threads/posix
xbmc/threads/darwin/threads_darwin.a: force
$(MAKE) -C xbmc/threads/darwin
xbmc/addons/addons.a: force
$(MAKE) -C xbmc/addons
xbmc/settings/settings.a: force
$(MAKE) -C xbmc/settings
xbmc/utils/utils.a: force
$(MAKE) -C xbmc/utils
xbmc/osx/osx.a: force
$(MAKE) -C xbmc/osx
lib/libapetag/.libs/libapetag.a: force
$(MAKE) -C lib/libapetag
lib/cpluff/libcpluff/.libs/libcpluff.a: force
$(MAKE) -C lib/cpluff/libcpluff
system/libcpluff-@ARCH@.so: lib/cpluff/libcpluff/.libs/libcpluff.a
ifeq ($(findstring osx,@ARCH@), osx)
ifeq (@ARCH@, powerpc-osx)
ld -all_load -bundle -flat_namespace -undefined suppress -arch @ARCHTYPE@ -L/opt/local/lib -lexpat -lbundle1.o -o $@ $<
else
ld -all_load -bundle -flat_namespace -undefined suppress -arch @ARCHTYPE@ -L/opt/local/lib -lexpat -o $@ $<
endif
else
cp lib/cpluff/libcpluff/.libs/libcpluff.so $@
endif
lib/libmodplug/src/.libs/libmodplug.a: force
$(MAKE) -C lib/libmodplug
system/players/paplayer/libmodplug-@ARCH@.so: lib/libmodplug/src/.libs/libmodplug.a
ifeq (@ARCH@, powerpc-osx)
ld -all_load -bundle -flat_namespace -undefined suppress -arch @ARCHTYPE@ -lbundle1.o -o $@ $<
else
ld -all_load -bundle -flat_namespace -undefined suppress -arch @ARCHTYPE@ -o $@ $<
endif
lib/xbmc-dll-symbols/dll-symbols.a: force
$(MAKE) -C lib/xbmc-dll-symbols
lib/libmicrohttpd/src/daemon/.libs/libmicrohttpd.a: force
$(MAKE) -C lib/libmicrohttpd
exports:
$(MAKE) xbmc/cores/DllLoader/exports/exports.a
$(MAKE) xbmc/cores/DllLoader/exports/util/exports_utils.a
$(MAKE) -C xbmc/cores/DllLoader/exports wrapper.def
dllloader: exports
$(MAKE) xbmc/cores/DllLoader/dllloader.a
visualizations: exports
ifneq (arm, @ARCH@)
$(MAKE) -C xbmc/visualizations/OpenGLSpectrum
$(MAKE) -C xbmc/visualizations/WaveForm
$(MAKE) -C xbmc/visualizations/XBMCProjectM
ifeq ($(findstring osx,@ARCH@), osx)
$(MAKE) -C xbmc/visualizations/iTunes
endif
ifneq (@BUILD_GOOM@,1)
ifeq ($(or $(findstring powerpc-linux,@ARCH@),$(findstring powerpc64-linux,@ARCH@)),)
$(MAKE) -C xbmc/visualizations/Goom
endif
endif
endif
screensavers: exports
ifneq (arm, @ARCH@)
$(MAKE) -C xbmc/screensavers/rsxs-0.9/xbmc
endif
libpython: dllloader
$(MAKE) -C xbmc/interfaces/python
$(MAKE) -C xbmc/interfaces/python/xbmcmodule
python: dllloader
$(MAKE) -C xbmc/interfaces/python/linux
dvdpcodecs: dllloader
$(MAKE) -C lib
$(MAKE) -C lib/libdvd
ifneq (@USE_EXTERNAL_LIBASS@,1)
$(MAKE) -C lib/libass/xbmc
endif
eventclients:
ifeq ($(findstring osx,@ARCH@), osx)
$(MAKE) -C tools/EventClients/Clients/OSXRemote
else
$(MAKE) -C tools/EventClients
endif
libexif: dllloader
$(MAKE) -C lib/libexif
libhdhomerun: dllloader
$(MAKE) -C lib/libhdhomerun
libid3tag: dllloader
$(MAKE) -C lib/libid3tag
papcodecs: dllloader dvdpcodecs
$(MAKE) -C lib/xbadpcm
ifeq ($(findstring osx,@ARCH@), osx)
$(MAKE) -C lib/libflac
endif
$(MAKE) -C lib/vgmstream
$(MAKE) -C lib/timidity
$(MAKE) -C lib/nosefart
$(MAKE) -C lib/libsidplay2
ifeq (@USE_ASAP_CODEC@,1)
ifneq ($(findstring osx,@ARCH@), osx)
$(MAKE) -C lib/asap asap-xbmc
endif
endif
$(MAKE) -C lib/stsound/StSoundLibrary
ifeq ($(or $(findstring powerpc,@ARCH@),$(findstring x86_64-linux,@ARCH@),$(findstring arm, @ARCH@)),)
$(MAKE) -C lib/snesapu/SNES/SNESAPU
endif
imagelib: dllloader
$(MAKE) -C lib/cximage-6.0
codecs: papcodecs dvdpcodecs
ifeq ($(findstring osx,@ARCH@), osx)
libs: libhdhomerun libid3tag imagelib libexif python system/libcpluff-@ARCH@.so system/players/paplayer/libmodplug-@ARCH@.so
else
libs: libhdhomerun libid3tag imagelib libexif python system/libcpluff-@ARCH@.so
endif
externals: codecs libs python visualizations screensavers
xcode_depends: \
codecs libs python visualizations screensavers eventclients skins \
lib/libsquish/libsquish-@ARCH@.a \
lib/libapetag/.libs/libapetag.a \
lib/cmyth/libcmyth/libcmyth.a \
lib/cmyth/librefmem/librefmem.a \
lib/libXBMS/libxbms-@ARCH@.a \
lib/libRTV/librtv-@ARCH@.a \
lib/libXDAAP/libxdaap-@ARCH@.a \
xbmc/interfaces/interfaces.a \
xbmc/interfaces/http-api/http-api.a \
xbmc/interfaces/json-rpc/json-rpc.a \
lib/jsoncpp/src/lib_json/libjsoncpp.a \
lib/libmicrohttpd/src/daemon/.libs/libmicrohttpd.a
# platform independend objects
OBJSXBMC= \
xbmc/xbmc.a \
xbmc/addons/addons.a \
xbmc/cores/playercorefactory/playercorefactory.a \
xbmc/cores/dvdplayer/DVDPlayer.a \
xbmc/cores/paplayer/paplayer.a \
xbmc/cores/VideoRenderers/VideoRenderer.a \
xbmc/cores/VideoRenderers/VideoShaders/VideoShaders.a \
lib/tinyXML/tinyxml.a \
xbmc/cores/cores.a \
xbmc/interfaces/python/python.a \
xbmc/cores/DllLoader/dllloader.a \
xbmc/cores/dvdplayer/DVDCodecs/DVDCodecs.a \
xbmc/cores/dvdplayer/DVDCodecs/Audio/Audio.a \
xbmc/cores/dvdplayer/DVDCodecs/Overlay/Overlay.a \
xbmc/cores/dvdplayer/DVDCodecs/Video/Video.a \
xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxers.a \
xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreams.a \
xbmc/cores/dvdplayer/DVDSubtitles/DVDSubtitles.a \
xbmc/cores/AudioRenderers/audiorenderers.a \
xbmc/cores/ExternalPlayer/ExternalPlayer.a \
xbmc/filesystem/filesystem.a \
xbmc/filesystem/MusicDatabaseDirectory/musicdatabasedirectory.a \
xbmc/filesystem/VideoDatabaseDirectory/videodatabasedirectory.a \
xbmc/input/input.a \
xbmc/dialogs/dialogs.a \
xbmc/music/karaoke/karaoke.a \
xbmc/music/music.a \
xbmc/music/dialogs/musicdialogs.a \
xbmc/music/infoscanner/musicscanner.a \
xbmc/music/tags/musictags.a \
xbmc/music/windows/musicwindows.a \
xbmc/video/dialogs/videodialogs.a \
xbmc/pictures/pictures.a \
xbmc/playlists/playlists.a \
xbmc/programs/programs.a \
xbmc/powermanagement/powermanagement.a \
xbmc/storage/storage.a \
xbmc/threads/threads.a \
xbmc/windows/windows.a \
xbmc/interfaces/python/xbmcmodule/xbmcmodule.a \
xbmc/network/libscrobbler/scrobbler.a \
lib/libRTV/librtv-@ARCH@.a \
lib/libUPnP/libupnp-@ARCH@.a \
lib/libXDAAP/libxdaap-@ARCH@.a \
xbmc/interfaces/interfaces.a \
xbmc/cdrip/cdrip.a \
xbmc/interfaces/json-rpc/json-rpc.a \
lib/jsoncpp/src/lib_json/libjsoncpp.a \
xbmc/interfaces/http-api/http-api.a \
xbmc/dbwrappers/dbwrappers.a \
lib/libsquish/libsquish-@ARCH@.a \
lib/libapetag/.libs/libapetag.a \
lib/xbmc-dll-symbols/dll-symbols.a \
xbmc/rendering/rendering.a \
xbmc/windowing/windowing.a \
ifeq (@USE_OPENGL@,1)
OBJSXBMC+= \
xbmc/rendering/gl/rendering_gl.a
endif
ifeq (@USE_OPENGLES@,1)
OBJSXBMC+= \
xbmc/rendering/gles/rendering_gles.a \
xbmc/windowing/egl/windowing_egl.a
endif
ifeq (@HAVE_XBMC_NONFREE@,1)
OBJSXBMC+= \
lib/libXBMS/libxbms-@ARCH@.a \
lib/UnrarXLib/UnrarXLib.a
endif
ifneq (arm, @ARCH@)
# Can't include libhts for arm due to GPLv3
OBJSXBMC+= \
lib/libhts/libhts.a
endif
# platform dependend objects
ifeq ($(findstring osx,@ARCH@), osx)
OBJSXBMC += \
xbmc/osx/osx.a \
xbmc/windowing/osx/windowing_osx.a \
lib/darwin/libSDL-OSX/libSDL-@ARCH@.a \
lib/darwin/libSDL-OSX/libSDL_mixer-@ARCH@.a \
lib/libmicrohttpd/src/daemon/.libs/libmicrohttpd.a \
xbmc/threads/darwin/threads_darwin.a \
xbmc/powermanagement/osx/powermanagement.a \
xbmc/network/osx/network.a \
xbmc/storage/osx/storage.a \
xbmc/network/linux/network_linux.a \
else
OBJSXBMC += \
xbmc/threads/posix/threads_posix.a \
xbmc/input/linux/input_linux.a \
xbmc/network/linux/network_linux.a \
xbmc/powermanagement/linux/powermanagement_linux.a \
xbmc/storage/linux/storage_linux.a
ifeq (@USE_OPENGL@,1)
OBJSXBMC+= \
xbmc/windowing/X11/windowing_X11.a
endif
endif
DYNOBJSXBMC= \
lib/cmyth/libcmyth/libcmyth.a \
lib/cmyth/librefmem/librefmem.a \
xbmc/linux/linux.a \
xbmc/network/network.a \
xbmc/video/windows/videowindows.a \
xbmc/utils/utils.a \
xbmc/cores/DllLoader/exports/util/exports_utils.a \
xbmc/cores/DllLoader/exports/exports.a \
xbmc/settings/settings.a \
xbmc/video/video.a \
xbmc/guilib/guilib.a # must be dynamic to avoid linker errors
ifeq (arm, @ARCH@)
# Force external python2.6 for now!
LIBS +=-lpython2.6
endif
xbmc.bin: $(OBJSXBMC) $(DYNOBJSXBMC)
ifeq ($(findstring osx,@ARCH@), osx)
$(CXX) $(LDFLAGS) -o xbmc.bin -Wl,-all_load,-ObjC $(DYNOBJSXBMC) $(OBJSXBMC) $(LIBS) -rdynamic
else
$(CXX) $(CXXFLAGS) $(LDFLAGS) -o xbmc.bin -Wl,--whole-archive $(DYNOBJSXBMC) $(OBJSXBMC) -Wl,--no-whole-archive $(LIBS) -rdynamic
endif
xbmc-xrandr: xbmc-xrandr.c
ifeq ($(findstring osx,@ARCH@), osx)
# xbmc-xrandr.c gets picked up by the default make rules
# so only exclude it for osx builds
@echo "excluding xbmc-xrandr"
else
$(CC) $(CFLAGS) $(LDFLAGS) -o xbmc-xrandr xbmc-xrandr.c -lXrandr -lX11
endif
tools/XBMCTex/XBMCTex:
ifeq ($(findstring osx,@ARCH@), osx)
# hack this for now
$(MAKE) -C tools/XBMCTex -f Makefile.osx
else
$(MAKE) -C tools/XBMCTex/
endif
tools/TexturePacker/TexturePacker: xbmc/guilib/guilib.a lib/libsquish/libsquish-@ARCH@.a
$(MAKE) -C tools/TexturePacker/
install-bin: xbmc.bin # developement convenience target
sudo install -d $(DESTDIR)$(libdir)
sudo install xbmc.bin $(DESTDIR)$(libdir)/xbmc
ifeq ($(findstring osx,@ARCH@), osx)
# TODO: add osx install
else
install: install-binaries install-arch install-datas
install-binaries: install-scripts
@echo "Copying XBMC binary to $(DESTDIR)$(libdir)/xbmc/xbmc.bin"
@install -d $(DESTDIR)$(libdir)/xbmc
@install xbmc.bin $(DESTDIR)$(libdir)/xbmc/xbmc.bin
@install xbmc-xrandr $(DESTDIR)$(libdir)/xbmc/xbmc-xrandr
@echo "You can run XBMC with the command 'xbmc'"
endif
install-arch:
@# Arch dependent files
ifeq ($(findstring freebsd,@ARCH@), freebsd)
@find -E system addons -type f -not -iregex ".*svn.*|.*script\.module\..*" \
-iregex ".*@ARCH@.*|.*\.vis|.*\.xbs|.*python.*\.zip" \
-exec sh -c "install -d \"$(DESTDIR)$(libdir)/xbmc/\`dirname '{}'\`\"" \; \
-and \
-exec install "{}" $(DESTDIR)$(libdir)/xbmc/"{}" \; \
-exec printf " -- %-75.75s\r" "{}" \;
else
@find system addons -regextype posix-extended -type f -not -iregex ".*svn.*|.*script\.module\..*" -iregex ".*@ARCH@.*|.*\.vis|.*\.xbs|.*python.*\.zip" -exec install -D "{}" $(DESTDIR)$(libdir)/xbmc/"{}" \; -printf " -- %-75.75f\r"
endif
@cp -r addons/script.module.pil $(DESTDIR)$(libdir)/xbmc/addons/
@cp -r addons/script.module.pysqlite $(DESTDIR)$(libdir)/xbmc/addons/
install-scripts:
@install -d $(DESTDIR)$(bindir)
@install tools/Linux/xbmc.sh $(DESTDIR)$(bindir)/xbmc
@install tools/Linux/xbmc-standalone.sh $(DESTDIR)$(bindir)/xbmc-standalone
@install -d $(DESTDIR)$(datarootdir)/xbmc
@install -m 0644 tools/Linux/FEH.py $(DESTDIR)$(datarootdir)/xbmc/FEH.py
@install -d $(DESTDIR)$(datarootdir)/xsessions
@install -m 0644 tools/Linux/xbmc-xsession.desktop $(DESTDIR)$(datarootdir)/xsessions/XBMC.desktop
install-datas: install-scripts
@echo "Copying support and legal files..."
@install -d $(DESTDIR)$(docdir)
@for FILE in `ls README.linux LICENSE.GPL *.txt`; do \
install -m 0644 "$$FILE" "$(DESTDIR)$(docdir)/$$FILE"; done
@echo "Done!"
@echo "Copying system files to $(DESTDIR)$(datarootdir)/xbmc"
@install -d $(DESTDIR)$(datarootdir)/xbmc
@# Arch independent files
ifeq ($(findstring bsd,@ARCH@), bsd)
@find -E addons language media sounds userdata system -type f \
-not -iregex ".*script\.module\..*|.*@ARCH@.*|.*\.vis|.*\.xbs|.*svn.*|.*\.so|.*\.dll|.*\.pyd|.*python.*\.zip" \
-exec sh -c "install -d \"$(DESTDIR)$(datarootdir)/xbmc/\`dirname '{}'\`\"" \; \
-and \
-exec install -m 0644 "{}" $(DESTDIR)$(datarootdir)/xbmc/"{}" \; \
-exec printf " -- %-75.75s\r" "{}" \;
else
@find addons language media sounds userdata system -regextype posix-extended -type f -not -iregex ".*script\.module\..*|.*@ARCH@.*|.*\.vis|.*\.xbs|.*svn.*|.*\.so|.*\.dll|.*\.pyd|.*python.*\.zip" -exec install -D -m 0644 "{}" $(DESTDIR)$(datarootdir)/xbmc/"{}" \; -printf " -- %-75.75f\r"
endif
@# Icons and links
@install -d $(DESTDIR)$(datarootdir)/applications
@install tools/Linux/xbmc.desktop $(DESTDIR)$(datarootdir)/applications/xbmc.desktop
@install -d $(DESTDIR)$(datadir)/icons/hicolor/48x48/apps
@install -m 0644 tools/Linux/xbmc-48x48.png $(DESTDIR)$(datadir)/icons/hicolor/48x48/apps/xbmc.png
@install -d $(DESTDIR)$(datadir)/icons/hicolor/256x256/apps
@install -m 0644 media/icon.png $(DESTDIR)$(datadir)/icons/hicolor/256x256/apps/xbmc.png
@test -z "$(DESTDIR)" && gtk-update-icon-cache -f -q -t $(datadir)/icons/hicolor || :
uninstall:
@echo "Removing XBMC..."
@rm -rf $(DESTDIR)$(libdir)/xbmc
@rm -rf $(DESTDIR)$(datarootdir)/xbmc $(DESTDIR)$(bindir)/xbmc
@rm -rf $(DESTDIR)$(bindir)/xbmc-standalone
@rm -rf $(DESTDIR)$(datarootdir)/xsessions/XBMC.desktop
@echo "Done!"
reallyclean:
@echo " This will delete ALL unversioned files in"; \
echo " your XBMC source tree. If you aren't sure"; \
echo " you want to do this, answer anything but"; \
echo " 'Y' (case sensitive) to the following."; \
echo " DISCLAIMER: Team XBMC is NOT responsible"; \
echo " for ANYTHING lost if you execute this command!"; \
echo -n " Damnserious? (Y/*) "; \
read -n1 PROMPT; \
if [[ "$$PROMPT" = "Y" ]]; then \
SVNV=$$(svnversion -n | cut -d':' -f1); _IFS=$$IFS; IFS=$$'\t\n'; \
for i in `svn st --no-ignore | grep ^[I\?] | cut -d' ' -f7-`; do \
if [[ $${i:(-4)} != "diff" && $${i:(-5)} != "patch" ]]; then \
echo " Deleting $$i"; \
rm -rf "$$i"; \
fi; \
done; \
IFS=$$_IFS; \
echo " Recovering any missing files."; \
svn up -r $${SVNV/M/} | sed -e "s/.*'\(.*\)'/ \1/p" -e d; \
echo " Done."; \
echo " The following files may need reverted (svn revert <file>)"; \
svn st | sed -e "s/^M */ /p" -e d; \
else \
echo; \
fi
clean-xbmc.bin:
rm -f xbmc.bin
for d in $(BIN_DIRS); do if test -f $$d/Makefile; then $(MAKE) -C $$d clean; fi; done
clean-eventclients:
for d in $(EC_DIRS); do if test -f $$d/Makefile; then $(MAKE) -C $$d clean; fi; done
clean-xbmctex:
for d in $(XBMCTEX_DIRS); do if test -f $$d/Makefile; then $(MAKE) -C $$d clean; fi; done
clean-dvdpcodecs:
for d in $(DVDPCODECS_DIRS); do if test -f $$d/Makefile; then $(MAKE) -C $$d clean; fi; done
clean-papcodecs:
for d in $(PAPCODECS_DIRS); do if test -f $$d/Makefile; then $(MAKE) -C $$d clean; fi; done
clean-libs:
for d in $(LIB_DIRS); do if test -f $$d/Makefile; then $(MAKE) -C $$d clean; fi; done
clean-screensavers:
for d in $(SS_DIRS); do if test -f $$d/Makefile; then $(MAKE) -C $$d clean; fi; done
clean-visualisations:
for d in $(VIS_DIRS); do if test -f $$d/Makefile; then $(MAKE) -C $$d clean; fi; done
clean-codecs: clean-dvdpcodecs clean-papcodecs
clean-externals: clean-codecs clean-eventclients clean-xbmctex clean-libs \
clean-screensavers clean-visualisations
Jump to Line
Something went wrong with that request. Please try again.