fixed:[osx] more make changes and it's "make xcode-depends" for building xcode depend...
[xbmc:xbmc-antiquated.git] / XBMC / Makefile.in
1 BIN_DIRS=       \
2         guilib \
3         guilib/common \
4         guilib/tinyXML \
5         xbmc \
6         xbmc/cdrip \
7         xbmc/cores \
8         xbmc/cores/DllLoader \
9         xbmc/cores/DllLoader/exports \
10         xbmc/cores/DllLoader/exports/util \
11         xbmc/cores/dvdplayer \
12         xbmc/cores/dvdplayer/DVDCodecs \
13         xbmc/cores/dvdplayer/DVDCodecs/Audio \
14         xbmc/cores/dvdplayer/DVDCodecs/Overlay \
15         xbmc/cores/dvdplayer/DVDCodecs/Video \
16         xbmc/cores/dvdplayer/DVDDemuxers/ \
17         xbmc/cores/dvdplayer/DVDInputStreams/ \
18         xbmc/cores/dvdplayer/DVDSubtitles/ \
19         xbmc/cores/paplayer \
20         xbmc/cores/AudioRenderers \
21         xbmc/cores/VideoRenderers \
22         xbmc/cores/VideoRenderers/VideoShaders \
23         xbmc/cores/ExternalPlayer \
24         xbmc/FileSystem \
25         xbmc/FileSystem/MusicDatabaseDirectory \
26         xbmc/FileSystem/VideoDatabaseDirectory \
27         xbmc/karaoke \
28         xbmc/lib/libcmyth \
29         xbmc/lib/libhts \
30         xbmc/lib/libGoAhead \
31         xbmc/lib/libPython \
32         xbmc/lib/libPython/xbmcmodule \
33         xbmc/lib/libRTMP \
34         xbmc/lib/libRTV \
35         xbmc/lib/libscrobbler \
36         xbmc/lib/libshout \
37         xbmc/lib/libUPnP \
38         xbmc/lib/libXBMS \
39         xbmc/lib/libXDAAP \
40         xbmc/lib/sqLite \
41         xbmc/lib/UnrarXLib \
42         xbmc/visualizations \
43         xbmc/screensavers \
44         xbmc/utils \
45         xbmc/settings \
46         xbmc/linux \
47         xbmc/xbox \
48         xbmc/osx
49
50 EC_DIRS= \
51         tools/EventClients
52
53 XBMCTEX_DIRS= \
54         tools/XBMCTex
55
56 DVDPCODECS_DIRS= \
57         xbmc/cores/dvdplayer/Codecs \
58         xbmc/cores/dvdplayer/Codecs/libdvd \
59         xbmc/lib/libass/xbmc \
60
61 PAPCODECS_DIRS= \
62         xbmc/cores/paplayer/AC3Codec \
63         xbmc/cores/paplayer/ADPCMCodec \
64         xbmc/cores/paplayer/AACCodec \
65         xbmc/cores/paplayer/NSFCodec \
66         xbmc/cores/paplayer/timidity \
67         xbmc/cores/paplayer/SIDCodec \
68         xbmc/cores/paplayer/WavPackCodec \
69         xbmc/cores/paplayer/GYMCodec \
70         xbmc/cores/paplayer/YMCodec/StSoundLibrary \
71         xbmc/cores/paplayer/ModuleCodec/vc6/dumb \
72         xbmc/cores/paplayer/MPCCodec/xbmc \
73         xbmc/cores/paplayer/SPCCodec/SNES/SNESAPU \
74         xbmc/cores/paplayer/vgmstream \
75         xbmc/cores/paplayer/MP3Codec \
76         xbmc/cores/paplayer/flac-1.2.1/ \
77         xbmc/cores/paplayer/MACDll \
78         xbmc/cores/paplayer/vorbisfile
79
80 LIB_DIRS=\
81         xbmc/lib/cximage-6.0 \
82         xbmc/lib/libexif \
83         xbmc/lib/libhdhomerun \
84         xbmc/lib/libid3tag \
85         xbmc/lib/libPython/linux
86
87 SS_DIRS=\
88         xbmc/screensavers/rsxs-0.9/xbmc
89
90 VIS_DIRS=\
91         xbmc/visualizations/OpenGLSpectrum \
92         xbmc/visualizations/WaveForm \
93         xbmc/visualizations/XBMCProjectM \
94         xbmc/visualizations/Goom
95
96 PM3_MEDIA=skin/Project\ Mayhem\ III/media
97 PM3HD_MEDIA=skin/PM3.HD/media
98
99 DIRS= $(BIN_DIRS) $(EC_DIRS) $(XBMCTEX_DIRS) $(DVDPCODECS_DIRS) $(PAPCODECS_DIRS) \
100         $(LIB_DIRS) $(SS_DIRS) $(VIS_DIRS)
101
102 DEBUG_FLAGS=@DEBUG_FLAGS@
103 LIBS=@LIBS@
104 CFLAGS=@CFLAGS@
105 CXXFLAGS=@CXXFLAGS@
106 LDFLAGS=@LDFLAGS@
107 INCLUDES=@INCLUDES@
108
109 CLEAN_FILES=xbmc.bin xbmc-xrandr
110
111 all : xbmc.bin externals xbmc-xrandr $(PM3_MEDIA)/Textures.xpr $(PM3HD_MEDIA)/Textures.xpr
112
113 include Makefile.include
114
115 .PHONY : dllloader exports visualizations screensavers eventclients papcodecs dvdpcodecs imagelib codecs externals force
116
117 $(PM3_MEDIA)/Textures.xpr: tools/XBMCTex/XBMCTex $(PM3_MEDIA)/*.png $(PM3_MEDIA)/*/*.png
118          tools/XBMCTex/XBMCTex -input \"$(PM3_MEDIA)\" -output \"$(PM3_MEDIA)/Textures.xpr\"
119
120 $(PM3HD_MEDIA)/Textures.xpr: tools/XBMCTex/XBMCTex $(PM3HD_MEDIA)/*.png $(PM3HD_MEDIA)/*/*.png
121          tools/XBMCTex/XBMCTex -input \"$(PM3HD_MEDIA)\" -output \"$(PM3HD_MEDIA)/Textures.xpr\"
122
123 guilib/guilib.a: force
124         make -C guilib
125 guilib/common/gui_common.a: force
126         make -C guilib/common
127 guilib/tinyXML/tinyxml.a: force
128         make -C guilib/tinyXML
129 xbmc/xbmc.a: force
130         make -C xbmc
131 xbmc/cdrip/cdrip.a: force
132         make -C xbmc/cdrip
133 xbmc/cores/cores.a: force
134         make -C xbmc/cores
135 xbmc/cores/DllLoader/dllloader.a: force
136         make -C xbmc/cores/DllLoader/
137 xbmc/cores/DllLoader/exports/exports.a: force
138         make -C xbmc/cores/DllLoader/exports
139 xbmc/cores/DllLoader/exports/util/exports_utils.a: force
140         make -C xbmc/cores/DllLoader/exports/util
141 xbmc/cores/dvdplayer/DVDPlayer.a: force
142         make -C xbmc/cores/dvdplayer
143 xbmc/cores/dvdplayer/DVDCodecs/DVDCodecs.a: force
144         make -C xbmc/cores/dvdplayer/DVDCodecs
145 xbmc/cores/dvdplayer/DVDCodecs/Audio/Audio.a: force
146         make -C xbmc/cores/dvdplayer/DVDCodecs/Audio
147 xbmc/cores/dvdplayer/DVDCodecs/Overlay/Overlay.a: force
148         make -C xbmc/cores/dvdplayer/DVDCodecs/Overlay
149 xbmc/cores/dvdplayer/DVDCodecs/Video/Video.a: force
150         make -C xbmc/cores/dvdplayer/DVDCodecs/Video
151 xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxers.a: force
152         make -C xbmc/cores/dvdplayer/DVDDemuxers
153 xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreams.a: force
154         make -C xbmc/cores/dvdplayer/DVDInputStreams
155 xbmc/cores/dvdplayer/DVDSubtitles/DVDSubtitles.a: force
156         make -C xbmc/cores/dvdplayer/DVDSubtitles
157 xbmc/cores/paplayer/paplayer.a: force
158         make -C xbmc/cores/paplayer
159 xbmc/cores/AudioRenderers/audiorenderers.a: force
160         make -C xbmc/cores/AudioRenderers
161 xbmc/cores/VideoRenderers/VideoRenderer.a: force
162         make -C xbmc/cores/VideoRenderers
163 xbmc/cores/VideoRenderers/VideoShaders/VideoShaders.a: force
164         make -C xbmc/cores/VideoRenderers/VideoShaders
165 xbmc/cores/ExternalPlayer/ExternalPlayer.a: force
166         make -C xbmc/cores/ExternalPlayer
167 xbmc/FileSystem/filesystem.a: force
168         make -C xbmc/FileSystem
169 xbmc/FileSystem/MusicDatabaseDirectory/musicdatabasedirectory.a: force
170         make -C xbmc/FileSystem/MusicDatabaseDirectory
171 xbmc/FileSystem/VideoDatabaseDirectory/videodatabasedirectory.a: force
172         make -C xbmc/FileSystem/VideoDatabaseDirectory
173 xbmc/karaoke/karaoke.a: force
174         make -C xbmc/karaoke
175 xbmc/lib/libcmyth/libcmyth.a: force
176         make -C xbmc/lib/libcmyth
177 xbmc/lib/libhts/libhts.a: force
178         make -C xbmc/lib/libhts
179 xbmc/lib/libPython/python.a: force
180         make -C xbmc/lib/libPython
181 xbmc/lib/libPython/xbmcmodule/xbmcmodule.a: force
182         make -C xbmc/lib/libPython/xbmcmodule
183 xbmc/lib/libRTMP/librtmp.a: force
184         make -C xbmc/lib/libRTMP
185 xbmc/lib/libscrobbler/scrobbler.a: force
186         make -C xbmc/lib/libscrobbler
187 xbmc/lib/libRTV/librtv-@ARCH@.a: force
188         make -C xbmc/lib/libRTV
189 xbmc/lib/libshout/libshout-@ARCH@.a: force
190         make -C xbmc/lib/libshout
191 xbmc/lib/libUPnP/libupnp-@ARCH@.a: force
192         make -C xbmc/lib/libUPnP
193 xbmc/lib/libXBMS/libxbms-@ARCH@.a: force
194         make -C xbmc/lib/libXBMS
195 xbmc/lib/libXDAAP/libxdaap-@ARCH@.a: force
196         make -C xbmc/lib/libXDAAP
197 xbmc/lib/libGoAhead/libGoAhead-@ARCH@.a: force
198         make -C xbmc/lib/libGoAhead
199 xbmc/lib/sqLite/sqllite.a: force
200         make -C xbmc/lib/sqLite
201 xbmc/lib/UnrarXLib/UnrarXLib.a: force
202         make -C xbmc/lib/UnrarXLib
203 xbmc/linux/linux.a: force
204         make -C xbmc/linux
205 xbmc/screensavers/screensaver.a: force
206         make -C xbmc/screensavers
207 xbmc/settings/settings.a: force
208         make -C xbmc/settings
209 xbmc/utils/utils.a: force
210         make -C xbmc/utils
211 xbmc/visualizations/visualization.a: force
212         make -C xbmc/visualizations
213 xbmc/xbox/xbox.a: force
214         make -C xbmc/xbox
215 xbmc/osx/osx.a: force
216         make -C xbmc/osx
217 #xbmc/lib/libSDL-OSX/libSDL-@ARCH@.a: force
218 #xbmc/lib/libSDL-OSX/libSDL_image-@ARCH@.a: force
219 #xbmc/lib/libSDL-OSX/libSDL_mixer-@ARCH@.a: force
220 #       make -C xbmc/lib/libSDL-OSX
221 system/players/dvdplayer/avutil-49-@ARCH@.a: force
222 system/players/dvdplayer/avcodec-52-@ARCH@.a: force
223 system/players/dvdplayer/swscale-0.6.1-@ARCH@.a: force
224 system/players/dvdplayer/avformat-52-@ARCH@.a: force
225 system/players/dvdplayer/postproc-51-@ARCH@.a: force
226         make -C xbmc/cores/dvdplayer/Codecs
227
228 exports:
229         $(MAKE) xbmc/cores/DllLoader/exports/exports.a
230         $(MAKE) xbmc/cores/DllLoader/exports/util/exports_utils.a
231         $(MAKE) -C xbmc/cores/DllLoader/exports wrapper.def
232 dllloader: exports
233         $(MAKE) xbmc/cores/DllLoader/dllloader.a
234 visualizations: exports
235         $(MAKE) -C xbmc/visualizations/OpenGLSpectrum
236         $(MAKE) -C xbmc/visualizations/WaveForm
237         $(MAKE) -C xbmc/visualizations/XBMCProjectM
238         $(MAKE) -C xbmc/visualizations/Goom
239 screensavers: exports
240         $(MAKE) -C xbmc/screensavers/rsxs-0.9/xbmc
241 libpython: dllloader
242         $(MAKE) -C xbmc/lib/libPython
243         $(MAKE) -C xbmc/lib/libPython/xbmcmodule
244 python: dllloader
245         $(MAKE) -C xbmc/lib/libPython/linux
246 dvdpcodecs: dllloader
247         $(MAKE) -C xbmc/cores/dvdplayer/Codecs
248         $(MAKE) -C xbmc/cores/dvdplayer/Codecs/libdvd
249         $(MAKE) -C xbmc/lib/libass/xbmc
250 eventclients:
251 ifeq ($(findstring osx,$(ARCH)), osx)
252         $(MAKE) -C tools/EventClients/Clients/OSXRemote
253 else
254         $(MAKE) -C tools/EventClients
255 endif
256 libexif: dllloader
257         $(MAKE) -C xbmc/lib/libexif
258 libhdhomerun: dllloader
259         $(MAKE) -C xbmc/lib/libhdhomerun
260 libid3tag: dllloader
261         $(MAKE) -C xbmc/lib/libid3tag
262 papcodecs: dllloader dvdpcodecs
263         $(MAKE) -C xbmc/cores/paplayer/AACCodec
264         $(MAKE) -C xbmc/cores/paplayer/AC3Codec
265         $(MAKE) -C xbmc/cores/paplayer/ADPCMCodec
266         $(MAKE) -C xbmc/cores/paplayer/flac-1.2.1
267         $(MAKE) -C xbmc/cores/paplayer/GYMCodec
268         $(MAKE) -C xbmc/cores/paplayer/vgmstream
269         $(MAKE) -C xbmc/cores/paplayer/timidity
270         $(MAKE) -C xbmc/cores/paplayer/MPCCodec/xbmc
271         $(MAKE) -C xbmc/cores/paplayer/MP3Codec
272         $(MAKE) -C xbmc/cores/paplayer/NSFCodec
273         $(MAKE) -C xbmc/cores/paplayer/SIDCodec
274         $(MAKE) -C xbmc/cores/paplayer/vorbisfile
275         $(MAKE) -C xbmc/cores/paplayer/WavPackCodec
276         $(MAKE) -C xbmc/cores/paplayer/YMCodec/StSoundLibrary   
277 ifneq ($(ARCH), powerpc-osx)
278         $(MAKE) -C xbmc/cores/paplayer/MACDll
279 endif
280 ifneq ($(ARCH), x86_64-linux)
281         $(MAKE) -C xbmc/cores/paplayer/ModuleCodec
282         $(MAKE) -C xbmc/cores/paplayer/SPCCodec/SNES/SNESAPU
283 endif
284 imagelib: dllloader
285         $(MAKE) -C xbmc/lib/cximage-6.0
286
287 codecs: papcodecs dvdpcodecs
288 libs: libhdhomerun libid3tag imagelib libexif python
289 externals: codecs libs python visualizations screensavers
290
291 xcode_depends:
292         codecs libs python visualizations screensavers \
293         xbmc/lib/libRTMP/librtmp.a \
294         xbmc/lib/libXBMS/libxbms-x86-osx.a \
295         xbmc/lib/libRTV/librtv-x86-osx.a \
296         xbmc/lib/libXDAAP/libxdaap-x86-osx.a \
297         xbmc/lib/libshout/libshout-x86-osx.a \
298         xbmc/lib/libGoAhead/libGoAhead-x86-osx.a
299
300 # platform independend objects
301 OBJSXBMC=       \
302         guilib/guilib.a \
303         guilib/common/gui_common.a \
304         guilib/tinyXML/tinyxml.a \
305         xbmc/xbmc.a \
306         xbmc/cdrip/cdrip.a \
307         xbmc/cores/cores.a \
308         xbmc/cores/DllLoader/dllloader.a \
309         xbmc/cores/DllLoader/exports/exports.a \
310         xbmc/cores/DllLoader/exports/util/exports_utils.a \
311         xbmc/cores/dvdplayer/DVDPlayer.a \
312         xbmc/cores/dvdplayer/DVDCodecs/DVDCodecs.a \
313         xbmc/cores/dvdplayer/DVDCodecs/Audio/Audio.a \
314         xbmc/cores/dvdplayer/DVDCodecs/Overlay/Overlay.a \
315         xbmc/cores/dvdplayer/DVDCodecs/Video/Video.a \
316         xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxers.a \
317         xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreams.a \
318         xbmc/cores/dvdplayer/DVDSubtitles/DVDSubtitles.a \
319         xbmc/cores/paplayer/paplayer.a \
320         xbmc/cores/AudioRenderers/audiorenderers.a \
321         xbmc/cores/VideoRenderers/VideoRenderer.a \
322         xbmc/cores/VideoRenderers/VideoShaders/VideoShaders.a \
323         xbmc/cores/ExternalPlayer/ExternalPlayer.a \
324         xbmc/FileSystem/filesystem.a \
325         xbmc/FileSystem/MusicDatabaseDirectory/musicdatabasedirectory.a \
326         xbmc/FileSystem/VideoDatabaseDirectory/videodatabasedirectory.a \
327         xbmc/karaoke/karaoke.a \
328         xbmc/lib/libcmyth/libcmyth.a \
329         xbmc/lib/libhts/libhts.a \
330         xbmc/lib/libPython/python.a \
331         xbmc/lib/libPython/xbmcmodule/xbmcmodule.a \
332         xbmc/lib/libRTMP/librtmp.a \
333         xbmc/lib/libscrobbler/scrobbler.a \
334         xbmc/lib/libRTV/librtv-@ARCH@.a \
335         xbmc/lib/libshout/libshout-@ARCH@.a \
336         xbmc/lib/libUPnP/libupnp-@ARCH@.a \
337         xbmc/lib/libXBMS/libxbms-@ARCH@.a \
338         xbmc/lib/libXDAAP/libxdaap-@ARCH@.a \
339         xbmc/lib/libGoAhead/libGoAhead-@ARCH@.a \
340         xbmc/lib/sqLite/sqllite.a \
341         xbmc/lib/UnrarXLib/UnrarXLib.a \
342         xbmc/linux/linux.a \
343         xbmc/screensavers/screensaver.a \
344         xbmc/settings/settings.a \
345         xbmc/utils/utils.a \
346         xbmc/visualizations/visualization.a \
347         xbmc/xbox/xbox.a
348
349 # platform dependend objects
350 ifeq ($(findstring osx,$(ARCH)), osx)
351 OBJSXBMC += \
352         xbmc/osx/osx.a \
353         xbmc/lib/libSDL-OSX/libSDL-@ARCH@.a \
354         xbmc/lib/libSDL-OSX/libSDL_image-@ARCH@.a \
355         xbmc/lib/libSDL-OSX/libSDL_mixer-@ARCH@.a \
356         system/players/dvdplayer/avutil-49-@ARCH@.a \
357         system/players/dvdplayer/avcodec-52-@ARCH@.a \
358         system/players/dvdplayer/swscale-0.6.1-@ARCH@.a \
359         system/players/dvdplayer/avformat-52-@ARCH@.a \
360         system/players/dvdplayer/postproc-51-@ARCH@.a
361 else
362 OBJSXBMC += \
363         xbmc/lib/libsmb/libsmbclient-@ARCH@.a
364 endif
365
366 # TODO: XBPythonDLLFuncs.S not implemented on PowerPC
367 ifeq ($(ARCH), powerpc64-linux)
368         # For some reason the XBMC version of libpython gets linker errors - use system version instead
369         #OBJSXBMC += xbmc/lib/libPython/Python/libpython2.4.a
370         LIBS += -lpython2.4
371 endif
372
373 xbmc.bin: $(OBJSXBMC)
374 ifeq ($(findstring osx,$(ARCH)), osx)
375         $(CXX) $(CXXFLAGS) $(DEBUG_FLAGS) -o xbmc.bin -Wl,-all_load,-ObjC $(OBJSXBMC) $(LIBS) $(LDFLAGS) -rdynamic
376 else
377         $(CXX) $(CXXFLAGS) $(DEBUG_FLAGS) -o xbmc.bin -Wl,--whole-archive $(OBJSXBMC) -Wl,--no-whole-archive $(LIBS) $(LDFLAGS) -rdynamic
378 endif
379
380 xbmc-xrandr: xbmc-xrandr.c
381 ifeq ($(findstring osx,$(ARCH)), osx)
382         # xbmc-xrandr.c gets picked up by the default make rules
383         #  so only exclude it for osx builds
384         @echo "excluding xbmc-xrandr"
385 else
386         $(CC) $(CFLAGS) $(DEBUG_FLAGS) -o xbmc-xrandr xbmc-xrandr.c -lXrandr -lXrender -lX11 
387 endif
388
389 tools/XBMCTex/XBMCTex:
390 ifeq ($(findstring osx,$(ARCH)), osx)
391         # hack this for now
392         $(MAKE) -C tools/XBMCTex -f Makefile.osx
393 else
394         $(MAKE) -C tools/XBMCTex/
395 endif
396
397 install-bin: xbmc.bin # developement convenience target
398         sudo cp -f xbmc.bin $(prefix)/share/xbmc
399
400 ifeq ($(findstring osx,$(ARCH)), osx)
401         # TODO: add osx install
402 else
403 install: install-datas install-web
404         @echo "Copying XBMC binary to $(prefix)/share/xbmc/xbmc.bin"
405         @cp -f xbmc.bin $(prefix)/share/xbmc/xbmc.bin
406         @mkdir -p $(prefix)/bin
407         @cp tools/Linux/xbmc.sh $(prefix)/bin/xbmc
408         @cp tools/Linux/xbmc-standalone.sh $(prefix)/bin/xbmc-standalone
409         @cp tools/Linux/FEH.py $(prefix)/share/xbmc/FEH.py
410         @mkdir -p $(prefix)/share/xsessions
411         @cp tools/Linux/xbmc-xsession.desktop $(prefix)/share/xsessions/XBMC.desktop
412         @chmod 755 $(prefix)/bin/xbmc
413         @chmod 755 $(prefix)/bin/xbmc-standalone
414         @echo "Copying support and legal files,,,"
415         @cp README.linux LICENSE.GPL *.txt xbmc-xrandr $(prefix)/share/xbmc/
416         @echo "Done!"
417         @echo "You can run XBMC with the command 'xbmc'"
418 endif
419
420 install-datas:
421         @echo "Creating target directories in $(prefix)/share/xbmc"
422         @find language media screensavers scripts skin sounds userdata visualisations system -type d -not -iregex ".*svn.*" -exec mkdir -p $(prefix)/share/xbmc/"{}" \; -printf " -- %f                           \r"
423         @echo "Copying system files to $(prefix)/share/xbmc"
424         @# Arch independent files
425         @find language media screensavers scripts sounds userdata visualisations system -regextype posix-extended -type f -not -iregex ".*svn.*|.*\.so|.*\.dll|.*win32\.vis|.*osx\.vis" -exec cp "{}" $(prefix)/share/xbmc/"{}" \; -printf " -- %f                           \r"
426         @# Arch dependent files
427         @find system -regextype posix-extended -type f -not -iregex ".*svn.*" -iregex ".*@ARCH@.*" -exec cp "{}" $(prefix)/share/xbmc/"{}" \; -printf " -- %f                           \r"
428         @# Skins
429         @find skin -regextype posix-extended -type f -not -iregex ".*svn.*|.*\.png|.*\.gif" -exec cp '{}' $(prefix)/share/xbmc/'{}' \; -printf " -- %f                            \r"
430
431 install-livedatas:
432         @echo "Install Live CD datas in $(prefix) ..."
433         @mkdir -p $(prefix)/bin 
434         @cp tools/XBMCLive/diskmounter $(prefix)/bin
435         @cp tools/XBMCLive/installXBMC.py $(prefix)/bin
436         @cp tools/XBMCLive/runXBMC.sh $(prefix)/bin
437         @cp tools/XBMCLive/setAlsaVolumes.py $(prefix)/bin
438
439 install-web:
440         @mkdir -p $(prefix)/share/xbmc/web
441         @unzip -oq web/Project_Mayhem_III_webserver_v1.0.zip \
442                 -d $(prefix)/share/xbmc/web
443
444 uninstall:
445         @echo "Removing XBMC..."
446         @rm -rf $(prefix)/share/xbmc $(prefix)/bin/xbmc
447         @rm -rf $(prefix)/bin/xbmc-standalone
448         @rm -rf /usr/share/xsessions/XBMC.desktop
449         @echo "Done!"
450
451 reallyclean:
452         @echo " This will delete ALL unversioned files in"; \
453          echo " your XBMC source tree. If you aren't sure"; \
454          echo " you want to do this, answer anything but"; \
455          echo " 'Y' (case sensitive) to the following."; \
456          echo " DISCLAIMER: Team XBMC is NOT responsible"; \
457          echo " for ANYTHING lost if you execute this command!"; \
458          echo -n " Damnserious? (Y/*) "; \
459          read -n1 PROMPT; \
460          if [[ "$$PROMPT" = "Y" ]]; then \
461                 SVNV=$$(svnversion -n | cut -d':' -f1); _IFS=$$IFS; IFS=$$'\t\n'; \
462                 for i in `svn st --no-ignore | grep ^[I\?] | cut -d' ' -f7-`; do \
463                         if [[ $${i:(-4)} != "diff" && $${i:(-5)} != "patch" ]]; then \
464                                 echo "  Deleting $$i"; \
465                                 rm -rf "$$i"; \
466                         fi; \
467                 done; \
468                 IFS=$$_IFS; \
469                 echo " Recovering any missing files."; \
470                 svn up -r $${SVNV/M/} | cut -d' ' -f7- | awk '{print "  "$$0}'; \
471                 echo " Done."; \
472                 echo " The following files may need reverted (svn revert <file>)"; \
473                 svn st | grep ^M | cut -d' ' -f7- | awk '{print "  "$$0}'; \
474          else \
475                 echo; \
476          fi
477
478 clean-xbmc.bin:
479         rm -f xbmc.bin
480         for d in $(BIN_DIRS); do if test -f $$d/Makefile; then $(MAKE) -C $$d clean; fi; done
481 clean-eventclients:
482         for d in $(EC_DIRS); do if test -f $$d/Makefile; then $(MAKE) -C $$d clean; fi; done
483 clean-xbmctex:
484         for d in $(XBMCTEX_DIRS); do if test -f $$d/Makefile; then $(MAKE) -C $$d clean; fi; done
485 clean-dvdpcodecs: 
486         for d in $(DVDPCODECS_DIRS); do if test -f $$d/Makefile; then $(MAKE) -C $$d clean; fi; done
487 clean-papcodecs:
488         for d in $(PAPCODECS_DIRS); do if test -f $$d/Makefile; then $(MAKE) -C $$d clean; fi; done
489 clean-libs: 
490         for d in $(LIB_DIRS); do if test -f $$d/Makefile; then $(MAKE) -C $$d clean; fi; done
491 clean-screensavers: 
492         for d in $(SS_DIRS); do if test -f $$d/Makefile; then $(MAKE) -C $$d clean; fi; done
493 clean-visualisations:
494         for d in $(VIS_DIRS); do if test -f $$d/Makefile; then $(MAKE) -C $$d clean; fi; done
495
496 clean-codecs: clean-dvdpcodecs clean-papcodecs
497
498 clean-externals: clean-codecs clean-eventclients clean-xbmctex clean-libs \
499         clean-screensavers clean-visualisations
500