]> git.sesse.net Git - vlc/blob - extras/contrib/src/Makefile
* extras/contrib/src/ dvdnav packages
[vlc] / extras / contrib / src / Makefile
1 # ***************************************************************************
2 # src/Makefile : Dearchive and compile all files necessary
3 # ***************************************************************************
4 # Copyright (C) 2003, 2004 VideoLAN
5 # $Id: Makefile,v 1.14 2004/01/24 21:06:52 hartman Exp $
6 #
7 # Authors: Christophe Massiot <massiot@via.ecp.fr>
8 #          Derk-Jan Hartman <hartman at videolan dot org>
9 #
10 # This program is free software; you can redistribute it and/or modify
11 # it under the terms of the GNU General Public License as published by
12 # the Free Software Foundation; either version 2 of the License, or
13 # (at your option) any later version.
14 #
15 # This program is distributed in the hope that it will be useful,
16 # but WITHOUT ANY WARRANTY; without even the implied warranty of
17 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 # GNU General Public License for more details.
19 #
20 # You should have received a copy of the GNU General Public License
21 # along with this program; if not, write to the Free Software
22 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
23 # ***************************************************************************
24
25 include ../config.mak
26 include ./packages.mak
27
28 # ***************************************************************************
29 # Set a clean environment
30 # ***************************************************************************
31
32 export PATH = $(PREFIX)/bin:/bin:/usr/bin
33 export DYLD_LIBRARY_PATH = $(PREFIX)/lib
34 export CPPFLAGS = -I$(PREFIX)/include $(EXTRA_CPPFLAGS)
35 export CFLAGS = -I$(PREFIX)/include $(EXTRA_CPPFLAGS)
36 export CXXFLAGS = -I$(PREFIX)/include $(EXTRA_CPPFLAGS)
37 export LDFLAGS = -L$(PREFIX)/lib
38
39 # ***************************************************************************
40 # Standard rules
41 # ***************************************************************************
42
43 all: .autoconf .libtool .automake .iconv .intl .freetype .fribidi \
44         .a52 .mpeg2 .id3tag .mad .ogg .vorbis .vorbisenc .theora \
45         .FLAC .speex .faad .lame .ebml .matroska .ffmpeg .openslp \
46         .dvdcss .dvdread .dvdplay .dvdnav .dvbpsi .live .goom .caca
47 FORCE:
48
49 # ***************************************************************************
50 # Useful macros
51 # ***************************************************************************
52
53 define EXTRACT_GZ
54         tar xzf $<
55         mv $(patsubst %.tar.gz,%,$(patsubst %.tgz,%,$(notdir $<))) $@ || true
56         touch $@
57 endef
58
59 define EXTRACT_BZ2
60         bunzip2 -c $< | tar xf -
61         mv $(patsubst %.tar.bz2,%,$(notdir $<)) $@ || true
62         touch $@
63 endef
64
65 ### Darwin-specific ###
66 # These macros prepare the dynamic libraries for inclusion in the Mac OS X
67 # bundle. For instance if you're building a library named libtoto.dylib,
68 # which depends on the contrib library libtata.dylib, you should have the
69 # following entry :
70 # .toto: toto_directory .tata
71 #       cd $< ; ./configure --prefix=$(PREFIX)
72 #       $(MAKE) -C $<
73 #       $(MAKE) -C $< install
74 #       $(INSTALL_NAME)
75 #       touch $@
76
77 define INSTALL_NAME_LIB
78         install_name_tool \
79                 -change $(PREFIX)/lib/$(shell cd $(PREFIX)/lib; ls | grep "lib$(INSTALL_LIB).[0-9]*.dylib") \
80                 @executable_path/lib/vlc_lib$(INSTALL_LIB).dylib \
81                 $(PREFIX)/vlc-lib/lib$(patsubst .%,%,$@).dylib ;
82 endef
83
84 define INSTALL_NAME
85         if which install_name_tool >/dev/null; then \
86                 mkdir -p $(PREFIX)/vlc-lib ; \
87                 cp $(PREFIX)/lib/lib$(patsubst .%,%,$@).dylib \
88                         $(PREFIX)/vlc-lib/lib$(patsubst .%,%,$@).dylib ; \
89                 install_name_tool \
90                         -id @executable_path/lib/vlc_lib$(patsubst .%,%,$@).dylib \
91                         $(PREFIX)/vlc-lib/lib$(patsubst .%,%,$@).dylib ; \
92                 $(foreach INSTALL_LIB,$(patsubst .%,%,$(filter .%,$^)), \
93                         $(INSTALL_NAME_LIB)) \
94         fi
95 endef
96
97 # ***************************************************************************
98 # autoconf
99 # ***************************************************************************
100
101 autoconf-$(AUTOCONF_VERSION).tar.gz:
102         $(WGET) $(AUTOCONF_URL)
103
104 autoconf: autoconf-$(AUTOCONF_VERSION).tar.gz
105         $(EXTRACT_GZ)
106
107 .autoconf: autoconf
108         (cd $<; ./configure --prefix=$(PREFIX) && make && make install)
109         touch $@
110
111 CLEAN_FILE += .autoconf
112 CLEAN_PKG += autoconf
113 DISTCLEAN_PKG += autoconf-$(AUTOCONF_VERSION).tar.gz
114
115 # ***************************************************************************
116 # libtool
117 # ***************************************************************************
118
119 # This breaks under Darwin
120 #libtool_$(LIBTOOL_VERSION).orig.tar.gz:
121 #       $(WGET) $(LIBTOOL_URL)
122
123 #libtool: libtool_$(LIBTOOL_VERSION).orig.tar.gz
124 #       $(EXTRACT_GZ)
125 #       rm $@
126 #       mv libtool-$(LIBTOOL_VERSION) $@
127
128 #.libtool: libtool
129 #       (cd $<; ./configure --prefix=$(PREFIX) && make && make install)
130 #       touch $@
131
132 # Darwin-specific
133 .libtool:
134         if test -x /usr/bin/glibtoolize; then \
135                 ln -sf /usr/bin/glibtoolize $(PREFIX)/bin/libtoolize ; \
136         fi
137         touch $@
138
139 CLEAN_FILE += .libtool
140
141 # ***************************************************************************
142 # automake
143 # ***************************************************************************
144
145 automake-$(AUTOMAKE_VERSION).tar.gz:
146         $(WGET) $(AUTOMAKE_URL)
147
148 automake: automake-$(AUTOMAKE_VERSION).tar.gz
149         $(EXTRACT_GZ)
150
151 .automake: automake
152         (cd $<; ./configure --prefix=$(PREFIX) && make && make install)
153         touch $@
154
155 CLEAN_FILE += .automake
156 CLEAN_PKG += automake
157 DISTCLEAN_PKG += automake-$(AUTOMAKE_VERSION).tar.gz
158
159 # ***************************************************************************
160 # libiconv
161 # ***************************************************************************
162
163 libiconv-$(LIBICONV_VERSION).tar.gz:
164         $(WGET) $(LIBICONV_URL)
165
166 libiconv: libiconv-$(LIBICONV_VERSION).tar.gz
167         $(EXTRACT_GZ)
168
169 .iconv: libiconv
170         (cd libiconv; ./configure --prefix=$(PREFIX) && make && make install)
171         $(INSTALL_NAME)
172         touch $@
173
174 CLEAN_FILE += .iconv
175 CLEAN_PKG += libiconv
176 DISTCLEAN_PKG += libiconv-$(LIBICONV_VERSION).tar.gz
177
178 # ***************************************************************************
179 # gettext
180 # ***************************************************************************
181
182 gettext-$(GETTEXT_VERSION).tar.gz:
183         $(WGET) $(GETTEXT_URL)
184
185 gettext: gettext-$(GETTEXT_VERSION).tar.gz
186         $(EXTRACT_GZ)
187
188 .intl: gettext .iconv
189         (cd $<; ./configure --prefix=$(PREFIX) && make && make install)
190         $(INSTALL_NAME)
191         touch $@
192
193 CLEAN_FILE += .intl
194 CLEAN_PKG += gettext
195 DISTCLEAN_PKG += gettext-$(GETTEXT_VERSION).tar.gz
196
197 # ***************************************************************************
198 # freetype2
199 # ***************************************************************************
200
201 freetype-$(FREETYPE2_VERSION).tar.gz:
202         $(WGET) $(FREETYPE2_URL)
203
204 freetype2: freetype-$(FREETYPE2_VERSION).tar.gz
205         $(EXTRACT_GZ)
206
207 .freetype: freetype2
208         (cd $<; ./configure --prefix=$(PREFIX) && make && make install)
209         $(INSTALL_NAME)
210         touch $@
211
212 CLEAN_FILE += .freetype
213 CLEAN_PKG += freetype2
214 DISTCLEAN_PKG += freetype-$(FREETYPE2_VERSION).tar.gz
215
216 # ***************************************************************************
217 # fribidi
218 # ***************************************************************************
219
220 fribidi-$(FRIBIDI_VERSION).tar.gz:
221         $(WGET) $(FRIBIDI_URL)
222
223 fribidi: fribidi-$(FRIBIDI_VERSION).tar.gz
224         $(EXTRACT_GZ)
225         patch -p 0 < Patches/fribidi.patch
226
227 .fribidi: fribidi
228         (cd $<; ./configure --prefix=$(PREFIX) && make && make install)
229         $(INSTALL_NAME)
230         touch $@
231
232 CLEAN_FILE += .fribidi
233 CLEAN_PKG += fribidi
234 DISTCLEAN_PKG += fribidi-$(FRIBIDI_VERSION).tar.gz
235
236 # ***************************************************************************
237 # liba52
238 # ***************************************************************************
239
240 a52dec-$(A52DEC_VERSION).tar.gz:
241         $(WGET) $(A52DEC_URL)
242
243 a52dec: a52dec-$(A52DEC_VERSION).tar.gz
244         $(EXTRACT_GZ)
245
246 .a52: a52dec
247         (cd $<; ./configure --prefix=$(PREFIX) && make && make install)
248         touch $@
249
250 CLEAN_FILE += .a52
251 CLEAN_PKG += a52dec
252 DISTCLEAN_PKG += a52dec-$(A52DEC_VERSION).tar.gz
253
254 # ***************************************************************************
255 # mpeg2dec
256 # ***************************************************************************
257
258 #mpeg2dec:
259 #       @echo "*** Please press return here : ***"
260 #       cvs -d $(MPEG2DEC_CVSROOT) login
261 #       cvs -d $(MPEG2DEC_CVSROOT) co mpeg2dec
262 #       (cd $@; ./bootstrap)
263
264 # It is easier to use bootstrapped versions...
265 mpeg2dec-$(MPEG2DEC_VERSION).tar.gz:
266         $(WGET) $(MPEG2DEC_SNAPSHOT)
267         mv mpeg2dec-snapshot.tar.gz $@
268
269 mpeg2dec: mpeg2dec-$(MPEG2DEC_VERSION).tar.gz
270         $(EXTRACT_GZ)
271
272 .mpeg2: mpeg2dec
273         (cd $<; ./configure --prefix=$(PREFIX) --without-x --disable-dsl && make && make install)
274         touch $@
275
276 CLEAN_FILE += .mpeg2
277 CLEAN_PKG += mpeg2dec
278 DISTCLEAN_PKG += mpeg2dec-$(MPEG2_DEC_VERSION).tar.gz
279
280 # ***************************************************************************
281 # libid3tag
282 # ***************************************************************************
283
284 libid3tag-$(LIBID3TAG_VERSION).tar.gz:
285         $(WGET) $(LIBID3TAG_URL)
286
287 libid3tag: libid3tag-$(LIBID3TAG_VERSION).tar.gz
288         $(EXTRACT_GZ)
289
290 .id3tag: libid3tag
291         (cd $<; ./configure --prefix=$(PREFIX) && make && make install)
292         $(INSTALL_NAME)
293         touch $@
294
295 CLEAN_FILE += .id3tag
296 CLEAN_PKG += libid3tag
297 DISTCLEAN_PKG += libid3tag-$(LIBID3TAG_VERSION).tar.gz
298
299 # ***************************************************************************
300 # libmad
301 # ***************************************************************************
302
303 mad-$(LIBMAD_VERSION).tar.gz:
304         $(WGET) $(LIBMAD_URL)
305
306 mad: mad-$(LIBMAD_VERSION).tar.gz
307         $(EXTRACT_GZ)
308
309 .mad: mad
310         (cd $<; ./configure --prefix=$(PREFIX) && make && make install)
311         $(INSTALL_NAME)
312         touch $@
313
314 CLEAN_FILE += .mad
315 CLEAN_PKG += mad
316 DISTCLEAN_PKG += mad-$(LIBMAD_VERSION).tar.gz
317
318 # ***************************************************************************
319 # ogg
320 # ***************************************************************************
321
322 #ogg:
323 #       @echo "*** Please type \"anoncvs\" here : ***"
324 #       cvs -d $(OGG_CVSROOT) login
325 #       cvs -d $(OGG_CVSROOT) co ogg
326 #       (cd $@; ./autogen.sh)
327
328 libogg-$(OGG_VERSION).tar.gz:
329         $(WGET) $(OGG_URL)
330
331 libogg: libogg-$(OGG_VERSION).tar.gz
332         $(EXTRACT_GZ)
333
334 .ogg: libogg
335         (cd $<; ./configure --prefix=$(PREFIX) && make && make install)
336         $(INSTALL_NAME)
337         touch $@
338
339 CLEAN_FILE += .ogg
340 CLEAN_PKG += libogg
341 DISTCLEAN_PKG += libogg-$(OGG_VERSION).tar.gz
342
343 # ***************************************************************************
344 # vorbis
345 # ***************************************************************************
346
347 #vorbis:
348 #       @echo "*** Please type \"anoncvs\" here : ***"
349 #       cvs -d $(OGG_CVSROOT) login
350 #       cvs -d $(OGG_CVSROOT) co vorbis
351 #       (cd $@; ./autogen.sh)
352 #       patch -p 0 < Patches/vorbis.patch
353
354 libvorbis-$(VORBIS_VERSION).tar.gz:
355         $(WGET) $(VORBIS_URL)
356
357 libvorbis: libvorbis-$(VORBIS_VERSION).tar.gz
358         $(EXTRACT_GZ)
359
360 .vorbis: libvorbis .ogg
361         (cd $<; ./configure --prefix=$(PREFIX) && make && make install)
362         $(INSTALL_NAME)
363         touch $@
364
365 .vorbisenc: .vorbis .ogg
366         $(INSTALL_NAME)
367         touch $@
368
369 CLEAN_FILE += .vorbis .vorbisenc
370 CLEAN_PKG += libvorbis
371 DISTCLEAN_PKG += libvorbis-$(VORBIS_VERSION).tar.gz
372
373 # ***************************************************************************
374 # theora
375 # ***************************************************************************
376
377 libtheora-$(THEORA_VERSION).tar.gz:
378         $(WGET) $(THEORA_URL)
379
380 libtheora: libtheora-$(THEORA_VERSION).tar.gz
381         $(EXTRACT_GZ)
382         patch -p 0 < Patches/theora.patch
383
384 .theora: libtheora
385         (cd $<; CC="gcc $(CFLAGS)" ./configure --prefix=$(PREFIX) && make && make install)
386         touch $@
387
388 CLEAN_FILE += .theora
389 CLEAN_PKG += libtheora
390 DISTCLEAN_PKG += libtheora-$(THEORA_VERSION).tar.gz
391
392 # ***************************************************************************
393 # flac
394 # ***************************************************************************
395
396 flac-$(FLAC_VERSION).tar.gz:
397         $(WGET) $(FLAC_URL)
398
399 flac: flac-$(FLAC_VERSION).tar.gz
400         $(EXTRACT_GZ)
401
402 .FLAC: flac
403         (cd $<; ./configure --prefix=$(PREFIX) && make && make install)
404         $(INSTALL_NAME)
405         touch $@
406
407 CLEAN_FILE += .flac
408 CLEAN_PKG += flac
409 DISTCLEAN_PKG += flac-$(FLAC_VERSION).tar.gz
410
411 # ***************************************************************************
412 # speex
413 # ***************************************************************************
414
415 speex-$(SPEEX_VERSION).tar.gz:
416         $(WGET) $(SPEEX_URL)
417
418 speex: speex-$(SPEEX_VERSION).tar.gz
419         $(EXTRACT_GZ)
420
421 .speex: speex
422         (cd $<; ./configure --prefix=$(PREFIX) && make && make install)
423         $(INSTALL_NAME)
424         touch $@
425
426 CLEAN_FILE += .speex
427 CLEAN_PKG += speex
428 DISTCLEAN_PKG += speex-$(SPEEX_VERSION).tar.gz
429
430 # ***************************************************************************
431 # faad2
432 # ***************************************************************************
433
434 #faad2:
435 #       @echo "*** Please type return here : ***"
436 #       cvs -d $(FAAD2_CVSROOT) login
437 #       cvs -d $(FAAD2_CVSROOT) co faad2
438 #       (cd $@; patch -p 0 < ../Patches/faad2.patch)
439 #       (cd $@; sh ./bootstrap)
440
441 faad2-$(FAAD2_VERSION).tar.gz:
442         $(WGET) $(FAAD2_URL)
443
444 faad2: faad2-$(FAAD2_VERSION).tar.gz
445         $(EXTRACT_GZ)
446         (cd $@; patch -p 0 < ../Patches/faad2.patch)
447
448 .faad: faad2
449         (cd $<; ./configure --prefix=$(PREFIX) && make -C libfaad && make -C libfaad install)
450         $(INSTALL_NAME)
451         touch $@
452
453 CLEAN_FILE += .faad
454 CLEAN_PKG += faad2
455 DISTCLEAN_PKG += faad2-$(FAAD2_VERSION).tar.gz
456
457 # ***************************************************************************
458 # lame
459 # ***************************************************************************
460
461 lame-$(LAME_VERSION).tar.gz:
462         $(WGET) $(LAME_URL)
463
464 lame: lame-$(LAME_VERSION).tar.gz
465         $(EXTRACT_GZ)
466
467 .lame: lame
468         (cd $<; ./configure --prefix=$(PREFIX) && make && make install)
469         touch $@
470
471 CLEAN_FILE += .lame
472 CLEAN_PKG += lame
473 DISTCLEAN_PKG += lame-$(LAME_VERSION).tar.gz
474
475 # ***************************************************************************
476 # libebml
477 # ***************************************************************************
478
479 libebml-$(LIBEBML_VERSION).tar.gz:
480         $(WGET) $(LIBEBML_URL)
481
482 libebml: libebml-$(LIBEBML_VERSION).tar.gz
483         $(EXTRACT_GZ)
484         -rm -rf $@/CVS
485
486 .ebml: libebml
487         (cd $<; make -C make/linux prefix=$(PREFIX) && make -C make/linux install prefix=$(PREFIX))
488         ranlib $(PREFIX)/lib/libebml.a
489         touch $@
490
491 CLEAN_FILE += .ebml
492 CLEAN_PKG += libebml
493 DISTCLEAN_PKG += libebml-$(LIBEBML_VERSION).tar.gz
494
495 # ***************************************************************************
496 # libmatroska
497 # ***************************************************************************
498
499 libmatroska-$(LIBMATROSKA_VERSION).tar.gz:
500         $(WGET) $(LIBMATROSKA_URL)
501
502 libmatroska: libmatroska-$(LIBMATROSKA_VERSION).tar.gz
503         $(EXTRACT_GZ)
504         -rm -rf $@/CVS
505
506 .matroska: libmatroska
507         (cd $<; make -C make/linux prefix=$(PREFIX) && make -C make/linux install prefix=$(PREFIX))
508         ranlib $(PREFIX)/lib/libmatroska.a
509         touch $@
510
511 CLEAN_FILE += .matroska
512 CLEAN_PKG += libmatroska
513 DISTCLEAN_PKG += libmatroska-$(LIBMATROSKA_VERSION).tar.gz
514
515 # ***************************************************************************
516 # ffmpeg
517 # ***************************************************************************
518
519 #ffmpeg:
520 #       cvs -d $(FFMPEG_CVSROOT) login
521 #       cvs -d $(FFMPEG_CVSROOT) co ffmpeg
522 #       patch -p 0 < Patches/ffmpeg.patch.cvs
523 #       (cd $@; ./bootstrap)
524
525 ffmpeg-$(FFMPEG_VERSION).tar.gz:
526         $(WGET) $(FFMPEG_URL)
527
528 ffmpeg: ffmpeg-$(FFMPEG_VERSION).tar.gz
529         $(EXTRACT_GZ)
530         patch -p 0 < Patches/ffmpeg.patch
531
532 .ffmpeg: ffmpeg
533         (cd $<; ./configure --prefix=$(PREFIX) --extra-cflags="$(CFLAGS)" --extra-ldflags="$(LDFLAGS)" --enable-mp3lame --enable-pp --disable-vhook --disable-vorbis --disable-faad --disable-a52 --enable-mp3lame && make && make -C libavcodec/libpostproc install && make -C libavcodec installlib && make -C libavformat installlib)
534         touch $@
535
536 CLEAN_FILE += .ffmpeg
537 CLEAN_PKG += ffmpeg
538 DISTCLEAN_PKG += ffmpeg-$(FFMPEG_VERSION).tar.gz
539
540 # ***************************************************************************
541 # openslp
542 # ***************************************************************************
543
544 openslp-$(OPENSLP_VERSION).tar.gz:
545         $(WGET) $(OPENSLP_URL)
546
547 openslp: openslp-$(OPENSLP_VERSION).tar.gz
548         $(EXTRACT_GZ)
549         patch -p 0 < Patches/openslp.patch
550
551 .openslp: openslp
552         (cd $<; ./configure --prefix=$(PREFIX) && make SUBDIRS="common libslpattr slpd libslp slptool" && make install SUBDIRS="common libslpattr slpd libslp slptool")
553         touch $@
554
555 CLEAN_FILE += .openslp
556 CLEAN_PKG += openslp
557 DISTCLEAN_PKG += openslp-$(OPENSLP_VERSION).tar.gz
558
559 # ***************************************************************************
560 # libdvdcss
561 # ***************************************************************************
562
563 libdvdcss-$(LIBDVDCSS_VERSION).tar.gz:
564         $(WGET) $(LIBDVDCSS_URL)
565
566 libdvdcss: libdvdcss-$(LIBDVDCSS_VERSION).tar.gz
567         $(EXTRACT_GZ)
568
569 .dvdcss: libdvdcss
570         (cd $<; ./configure --prefix=$(PREFIX) && make && make install)
571         $(INSTALL_NAME)
572         touch $@
573
574 CLEAN_FILE += .dvdcss
575 CLEAN_PKG += libdvdcss
576 DISTCLEAN_PKG += libdvdcss-$(LIBDVDCSS_VERSION).tar.gz
577
578 # ***************************************************************************
579 # libdvdread
580 # ***************************************************************************
581
582 libdvdread-$(LIBDVDREAD_VERSION).tar.gz:
583         $(WGET) $(LIBDVDREAD_URL)
584
585 libdvdread: libdvdread-$(LIBDVDREAD_VERSION).tar.gz
586         $(EXTRACT_GZ)
587
588 .dvdread: libdvdread .dvdcss
589         (cd $<; ./configure --prefix=$(PREFIX) --with-libdvdcss=$(PREFIX) && make && make install)
590         $(INSTALL_NAME)
591         touch $@
592
593 CLEAN_FILE += .dvdread
594 CLEAN_PKG += libdvdread
595 DISTCLEAN_PKG += libdvdread-$(LIBDVDREAD_VERSION).tar.gz
596
597 # ***************************************************************************
598 # libdvdplay
599 # ***************************************************************************
600
601 libdvdplay-$(LIBDVDPLAY_VERSION).tar.gz:
602         $(WGET) $(LIBDVDPLAY_URL)
603
604 libdvdplay: libdvdplay-$(LIBDVDPLAY_VERSION).tar.gz
605         $(EXTRACT_GZ)
606
607 .dvdplay: libdvdplay .dvdread
608         (cd $<; ./configure --prefix=$(PREFIX) && make && make install)
609         $(INSTALL_NAME)
610         touch $@
611
612 CLEAN_FILE += .dvdplay
613 CLEAN_PKG += libdvdplay
614 DISTCLEAN_PKG += libdvdplay-$(LIBDVDPLAY_VERSION).tar.gz
615
616 # ***************************************************************************
617 # libdvdnav
618 # ***************************************************************************
619
620 libdvdnav-$(LIBDVDNAV_VERSION).tar.gz:
621         $(WGET) $(LIBDVDNAV_URL)
622
623 libdvdnav: libdvdnav-$(LIBDVDNAV_VERSION).tar.gz
624         $(EXTRACT_GZ)
625
626 .dvdnav: libdvdnav .dvdread
627         (cd $<; ./configure --prefix=$(PREFIX) CFLAGS="$(CFLAGS) -Dlseek64=lseek -Doff64_t=off_t" && make && make install)
628         $(INSTALL_NAME)
629         touch $@
630
631 CLEAN_FILE += .dvdnav
632 CLEAN_PKG += libdvdnav
633 DISTCLEAN_PKG += libdvdnav-$(LIBDVDNAV_VERSION).tar.gz
634
635 # ***************************************************************************
636 # libdvbpsi
637 # ***************************************************************************
638
639 libdvbpsi3-$(LIBDVBPSI_VERSION).tar.gz:
640         $(WGET) $(LIBDVBPSI_URL)
641
642 libdvbpsi: libdvbpsi3-$(LIBDVBPSI_VERSION).tar.gz
643         $(EXTRACT_GZ)
644
645 .dvbpsi: libdvbpsi
646         (cd $<; ./configure --prefix=$(PREFIX) && make && make install)
647         $(INSTALL_NAME)
648         touch $@
649
650 CLEAN_FILE += .dvbpsi
651 CLEAN_PKG += libdvbpsi
652 DISTCLEAN_PKG += libdvbpsi-$(LIBDVBPSI_VERSION).tar.gz
653
654 # ***************************************************************************
655 # live
656 # ***************************************************************************
657
658 live.$(LIVEDOTCOM_VERSION).tar.gz:
659         $(WGET) $(LIVEDOTCOM_URL)
660
661 live: live.$(LIVEDOTCOM_VERSION).tar.gz
662         $(EXTRACT_GZ)
663         patch -p 0 < Patches/live.patch
664
665 .live: live
666         (cd $<; ./genmakefiles macosx && make )
667         touch $@
668
669 CLEAN_FILE += .live
670 CLEAN_PKG += live
671 DISTCLEAN_PKG += live.$(LIVEDOTCOM_VERSION).tar.gz
672
673 # ***************************************************************************
674 # goom
675 # ***************************************************************************
676
677 goom-dj.tar.gz:
678         $(WGET) $(GOOMDJ_URL)
679
680 goom: goom-dj.tar.gz
681         $(EXTRACT_GZ)
682
683 .goom: goom
684         (cd $<;)
685         touch $@
686
687 CLEAN_FILE += .goom
688 CLEAN_PKG += goom
689 DISTCLEAN_PKG += goom-dj.tar.gz
690
691 # ***************************************************************************
692 # libcaca
693 # ***************************************************************************
694
695 libcaca-$(LIBCACA_VERSION).tar.gz:
696         $(WGET) $(LIBCACA_URL)
697
698 libcaca: libcaca-$(LIBCACA_VERSION).tar.gz
699         $(EXTRACT_GZ)
700
701 .caca: libcaca
702         (cd $<; ./configure --prefix=$(PREFIX) --disable-imlib2 --disable-doc && make && make install)
703         touch $@
704
705 CLEAN_FILE += .caca
706 CLEAN_PKG += libcaca
707 DISTCLEAN_PKG += libcaca-$(LIBCACA_VERSION).tar.gz
708
709 # ***************************************************************************
710 # Some cleansing
711 # ***************************************************************************
712
713 clean-dots: FORCE
714         rm -f $(CLEAN_FILE)
715
716 clean: clean-dots
717         rm -rf $(CLEAN_PKG)
718
719 clean-src: clean
720         rm -rf $(DISTCLEAN_PKG)
721
722 distclean: clean-src