3 # Use curl on Mac OS X since it's always installed, and assume wget
4 # is installed for all other systems
19 # Wget rule: downloads $(<) from the link in $(>)
27 $(WGET) $(<) `cat $(>)` &&
28 ( touch $(<) || true )
40 cd `dirname $(>)` && CONTRIB=`pwd` &&
41 rm -rf a52dec && tar xzf a52dec.tar.gz && cd a52dec && patch -p1 < ../patch-a52dec.patch &&
42 ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache && make && make install &&
43 strip -S $CONTRIB/lib/liba52.a
45 Wget $(SUBDIR)/a52dec.tar.gz : $(SUBDIR)/version_a52dec.txt ;
46 LibA52 $(SUBDIR)/lib/liba52.a : $(SUBDIR)/a52dec.tar.gz ;
51 FFMPEG_PATCH = "patch -p0 < ../patch-ffmpeg.patch" ;
54 FFMPEG_PATCH += " && patch -p1 < ../patch-ffmpeg-cygwin.patch " ;
61 cd `dirname $(>)` && CONTRIB=`pwd` &&
62 rm -rf ffmpeg && tar xzf ffmpeg.tar.gz &&
63 cd ffmpeg && $(FFMPEG_PATCH) &&
64 ./configure --prefix=$CONTRIB --enable-gpl --enable-pthreads --enable-swscaler --disable-audio-beos --disable-shared --enable-static \
65 --disable-decoders --enable-decoder=mp2 --disable-parsers --enable-parser=mpegaudio \
66 --disable-encoders --enable-encoder=mpeg4 --enable-encoder=ac3 --enable-encoder=snow \
67 --disable-muxers --enable-muxer=ipod --disable-demuxers --disable-protocols --disable-bsfs &&
68 make && make install &&
69 strip -S $CONTRIB/lib/libavcodec.a
71 Wget $(SUBDIR)/ffmpeg.tar.gz : $(SUBDIR)/version_ffmpeg.txt ;
72 LibAvCodec $(SUBDIR)/lib/libavcodec.a : $(SUBDIR)/ffmpeg.tar.gz ;
83 LibAvUtil $(SUBDIR)/lib/libavutil.a : $(SUBDIR)/lib/libavcodec.a ;
84 LibAvUtil $(SUBDIR)/lib/libavformat.a : $(SUBDIR)/lib/libavcodec.a ;
85 LibAvUtil $(SUBDIR)/lib/libswscale.a : $(SUBDIR)/lib/libavcodec.a ;
87 # CSS doesn't work on Cygwin/Windows as of now, so don't use it.
91 # We need libdvdcss.so for libdvdread's configure to work...
99 cd `dirname $(>)` && CONTRIB=`pwd` &&
100 rm -rf libdvdcss && tar xzf libdvdcss.tar.gz && cd libdvdcss &&
101 ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache && make && make install &&
102 strip -S $CONTRIB/lib/libdvdcss.a
104 Wget $(SUBDIR)/libdvdcss.tar.gz : $(SUBDIR)/version_libdvdcss.txt ;
105 LibDvdCss $(SUBDIR)/lib/libdvdcss.a : $(SUBDIR)/libdvdcss.tar.gz ;
111 Depends $(<) : $(>) ;
116 cd `dirname $(>)` && CONTRIB=`pwd` &&
117 rm -rf libdca && tar xzf libdca.tar.gz && cd libdca && patch -p1 < ../patch-libdca.patch &&
118 ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache && make && make install &&
119 strip -S $CONTRIB/lib/libdca.a
121 Wget $(SUBDIR)/libdca.tar.gz : $(SUBDIR)/version_libdca.txt ;
122 LibDCA $(SUBDIR)/lib/libdca.a : $(SUBDIR)/libdca.tar.gz ;
127 Depends $(<) : $(>) ;
134 cd `dirname $(>)` && CONTRIB=`pwd` &&
135 rm -rf libdvdread && tar xzf libdvdread.tar.gz && cd libdvdread &&
136 ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared --with-libdvdcss=$CONTRIB &&
137 make && make install &&
138 strip -S $CONTRIB/lib/libdvdread.a
142 # Cygwin/Windows doesn't use CSS as of now, so don't include it on the
146 cd `dirname $(>)` && CONTRIB=`pwd` &&
147 rm -rf libdvdread && tar xzf libdvdread.tar.gz && cd libdvdread &&
148 ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared &&
149 make && make install &&
150 strip -S $CONTRIB/lib/libdvdread.a
153 Wget $(SUBDIR)/libdvdread.tar.gz : $(SUBDIR)/version_libdvdread.txt ;
154 LibDvdRead $(SUBDIR)/lib/libdvdread.a : $(SUBDIR)/libdvdread.tar.gz ;
159 Depends $(<) : $(>) ;
164 cd `dirname $(>)` && CONTRIB=`pwd` &&
165 rm -rf faac && tar xzf faac.tar.gz && cd faac &&
166 ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared --enable-static &&
167 make && make install &&
168 strip -S $CONTRIB/lib/libfaac.a
170 Wget $(SUBDIR)/faac.tar.gz : $(SUBDIR)/version_faac.txt ;
171 LibFaac $(SUBDIR)/lib/libfaac.a : $(SUBDIR)/faac.tar.gz ;
176 Depends $(<) : $(>) ;
181 cd `dirname $(>)` && CONTRIB=`pwd` &&
182 rm -rf lame && tar xzf lame.tar.gz && cd lame &&
183 ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared &&
184 make && make install &&
185 strip -S $CONTRIB/lib/libmp3lame.a
187 Wget $(SUBDIR)/lame.tar.gz : $(SUBDIR)/version_lame.txt ;
188 LibMp3Lame $(SUBDIR)/lib/libmp3lame.a : $(SUBDIR)/lame.tar.gz ;
193 Depends $(<) : $(>) ;
200 cd `dirname $(>)` && CONTRIB=`pwd` &&
201 rm -rf mpeg4ip && tar xzf mpeg4ip.tar.gz && cd mpeg4ip &&
202 patch -p1 < ../patch-mpeg4ip.patch && patch -p0 < ../patch-mpeg4ip-pascal-str.patch &&
203 ./bootstrap --cache-file=$CONTRIB/config.cache --disable-mp3lame --disable-faac --disable-x264 --disable-server --disable-player &&
204 make -C lib/mp4v2 libmp4v2.la && cp lib/mp4v2/.libs/libmp4v2.a $CONTRIB/lib &&
205 cp mpeg4ip_config.h include/mpeg4ip.h include/mpeg4ip_version.h \
206 include/mpeg4ip_win32.h lib/mp4v2/*.h $CONTRIB/include &&
207 strip -S $CONTRIB/lib/libmp4v2.a
214 cd `dirname $(>)` && CONTRIB=`pwd` &&
215 rm -rf mpeg4ip && tar xzf mpeg4ip.tar.gz && cd mpeg4ip &&
216 patch -p1 < ../patch-mpeg4ip.patch && patch -p1 < ../patch_mpeg4ip_cygwin.patch && patch -p0 < ../patch-mpeg4ip-pascal-str.patch &&
217 ./bootstrap --cache-file=$CONTRIB/config.cache --disable-mp3lame --disable-faac --disable-x264 --disable-server --disable-player &&
218 make -C lib/mp4v2 libmp4v2.la && cp lib/mp4v2/.libs/libmp4v2.a $CONTRIB/lib &&
219 cp mpeg4ip_config.h include/mpeg4ip.h include/mpeg4ip_version.h \
220 include/mpeg4ip_win32.h lib/mp4v2/*.h $CONTRIB/include &&
221 strip -S $CONTRIB/lib/libmp4v2.a
224 Wget $(SUBDIR)/mpeg4ip.tar.gz : $(SUBDIR)/version_mpeg4ip.txt ;
225 LibMp4v2 $(SUBDIR)/lib/libmp4v2.a : $(SUBDIR)/mpeg4ip.tar.gz ;
229 Depends $(<) : $(>) ;
234 cd `dirname $(>)` && CONTRIB=`pwd` &&
235 rm -rf libmkv && tar xzf libmkv.tar.gz && cd libmkv &&
236 ./configure --disable-shared --enable-static --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache &&
237 make && make install &&
238 strip -S $CONTRIB/lib/libmkv.a
240 Wget $(SUBDIR)/libmkv.tar.gz : $(SUBDIR)/version_libmkv.txt ;
241 LibMkv $(SUBDIR)/lib/libmkv.a : $(SUBDIR)/libmkv.tar.gz ;
246 Depends $(<) : $(>) ;
251 cd `dirname $(>)` && CONTRIB=`pwd` &&
252 rm -rf mpeg2dec && tar xzf mpeg2dec.tar.gz && cd mpeg2dec && patch -p1 < ../patch-libmpeg2.patch &&
253 ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared --disable-sdl &&
254 make && make install &&
255 strip -S $CONTRIB/lib/libmpeg2.a
257 Wget $(SUBDIR)/mpeg2dec.tar.gz : $(SUBDIR)/version_mpeg2dec.txt ;
258 LibMpeg2 $(SUBDIR)/lib/libmpeg2.a : $(SUBDIR)/mpeg2dec.tar.gz ;
263 Depends $(<) : $(>) ;
268 cd `dirname $(>)` && CONTRIB=`pwd` &&
269 rm -rf libogg && tar xzf libogg.tar.gz && cd libogg &&
270 ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared &&
271 make && make install &&
272 strip -S $CONTRIB/lib/libogg.a
274 Wget $(SUBDIR)/libogg.tar.gz : $(SUBDIR)/version_libogg.txt ;
275 LibOgg $(SUBDIR)/lib/libogg.a : $(SUBDIR)/libogg.tar.gz ;
280 Depends $(<) : $(>) ;
283 actions LibSampleRate
285 cd `dirname $(>)` && CONTRIB=`pwd` &&
286 rm -rf libsamplerate && tar xzf libsamplerate.tar.gz && cd libsamplerate &&
287 ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared &&
288 make && make install &&
289 strip -S $CONTRIB/lib/libsamplerate.a
291 Wget $(SUBDIR)/libsamplerate.tar.gz : $(SUBDIR)/version_libsamplerate.txt ;
292 LibSampleRate $(SUBDIR)/lib/libsamplerate.a : $(SUBDIR)/libsamplerate.tar.gz ;
297 Depends $(<) : $(>) ;
302 cd `dirname $(>)` && CONTRIB=`pwd` &&
303 rm -rf libvorbis && tar xzf libvorbis.tar.gz && cd libvorbis &&
304 ./configure --prefix=$CONTRIB --with-ogg=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared &&
305 make && make install &&
306 strip -S $CONTRIB/lib/libvorbis.a
308 Wget $(SUBDIR)/libvorbis.tar.gz : $(SUBDIR)/version_libvorbis.txt ;
309 LibVorbis $(SUBDIR)/lib/libvorbis.a : $(SUBDIR)/libvorbis.tar.gz ;
313 Depends $(<) : $(>) ;
320 LibVorbisEnc $(SUBDIR)/lib/libvorbisenc.a : $(SUBDIR)/lib/libvorbis.a ;
326 if $(OS) = MACOSX && $(OSPLAT) = X86
328 LIBX264_PATCH += "patch -p1 < ../patch-x264-macintel.patch && " ;
330 else if $(OS) = CYGWIN
332 LIBX264_PATCH += "patch -p1 < ../patch-x264-cygwin.patch && " ;
334 LIBX264_PATCH += "patch -p0 < ../patch-x264-aq.patch && " ;
335 LIBX264_PATCH += "patch -p0 < ../patch-x264-idr.patch && " ;
336 Depends $(<) : $(>) ;
341 cd `dirname $(>)` && CONTRIB=`pwd` &&
342 rm -rf x264 && tar xzf x264.tar.gz && cd x264 && $(LIBX264_PATCH)
343 ./configure --prefix=$CONTRIB --enable-pthread && make &&
345 strip -S $CONTRIB/lib/libx264.a
347 Wget $(SUBDIR)/x264.tar.gz : $(SUBDIR)/version_x264.txt ;
348 LibX264 $(SUBDIR)/lib/libx264.a : $(SUBDIR)/x264.tar.gz ;
353 LIBXVIDCORE_PATCH = "" ;
356 LIBXVIDCORE_PATCH = "patch -p1 < ../patch-xvidcore-macosx.patch && " ;
358 else if $(OS) = CYGWIN
360 LIBXVIDCORE_PATCH = "patch -p1 < ../patch-xvidcore-cygwin.patch && " ;
362 Depends $(<) : $(>) ;
367 cd `dirname $(>)` && CONTRIB=`pwd` &&
368 rm -rf xvidcore && tar xzf xvidcore.tar.gz &&
369 cd xvidcore && $(LIBXVIDCORE_PATCH)
370 cd build/generic/ && ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache && make libxvidcore.a &&
371 cp ./=build/libxvidcore.a $CONTRIB/lib/ &&
372 cp ../../src/xvid.h $CONTRIB/include/ &&
373 strip -S $CONTRIB/lib/libxvidcore.a
375 Wget $(SUBDIR)/xvidcore.tar.gz : $(SUBDIR)/version_xvidcore.txt ;
376 LibXvidCore $(SUBDIR)/lib/libxvidcore.a : $(SUBDIR)/xvidcore.tar.gz ;
383 Depends $(<) : $(>) ;
388 cd `dirname $(>)` && CONTRIB=`pwd` &&
389 rm -rf zlib && tar xzf zlib.tar.gz &&
390 cd zlib && ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache &&
391 make && make install && touch $CONTRIB/.contrib &&
392 strip -S $CONTRIB/lib/libz.a
394 Wget $(SUBDIR)/zlib.tar.gz : $(SUBDIR)/version_zlib.txt ;
395 Zlib $(SUBDIR)/lib/libz.a : $(SUBDIR)/zlib.tar.gz ;