3 # Use curl on Mac OS X since it's always installed, and assume wget
4 # is installed for all other systems
30 # Wget rule: downloads $(<) from the link in $(>)
38 $(WGET) $(<) `cat $(>)` &&
39 ( touch $(<) || true )
51 cd `dirname $(>)` && CONTRIB=`pwd` &&
52 rm -rf a52dec && (gzip -dc a52dec.tar.gz | tar xf -) &&
53 cd a52dec && $(PATCH) -p1 < ../patch-a52dec.patch &&
54 ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache && $(MAKE) && $(MAKE) install &&
55 $(STRIP) $CONTRIB/lib/liba52.a
57 Wget $(SUBDIR)/a52dec.tar.gz : $(SUBDIR)/version_a52dec.txt ;
58 LibA52 $(SUBDIR)/lib/liba52.a : $(SUBDIR)/a52dec.tar.gz ;
63 FFMPEG_PATCH = "$(PATCH) -p0 < ../patch-ffmpeg.patch" ;
66 FFMPEG_PATCH += " && $(PATCH) -p1 < ../patch-ffmpeg-cygwin.patch " ;
68 else if $(OS) = SOLARIS
70 FFMPEG_PATCH += " && $(PATCH) -p1 < ../patch-ffmpeg-solaris.patch " ;
71 FFMPEG_OPTIONS = " --disable-mmx --extra-cflags=-fpic " ;
78 cd `dirname $(>)` && CONTRIB=`pwd` &&
79 rm -rf ffmpeg && (gzip -dc ffmpeg.tar.gz | tar xf -) &&
80 cd ffmpeg && $(FFMPEG_PATCH) &&
81 ./configure --prefix=$CONTRIB --enable-gpl --enable-pthreads --enable-swscaler --disable-audio-beos --disable-shared --enable-static \
82 --disable-decoders --enable-decoder=mp2 --disable-parsers --enable-parser=mpegaudio \
83 --disable-encoders --enable-encoder=mpeg4 --enable-encoder=ac3 --enable-encoder=snow \
84 --disable-muxers --enable-muxer=ipod --disable-demuxers --disable-protocols --disable-bsfs &&
85 $(MAKE) && $(MAKE) install &&
86 $(STRIP) $CONTRIB/lib/libavcodec.a
88 Wget $(SUBDIR)/ffmpeg.tar.gz : $(SUBDIR)/version_ffmpeg.txt ;
89 LibAvCodec $(SUBDIR)/lib/libavcodec.a : $(SUBDIR)/ffmpeg.tar.gz ;
100 LibAvUtil $(SUBDIR)/lib/libavutil.a : $(SUBDIR)/lib/libavcodec.a ;
101 LibAvUtil $(SUBDIR)/lib/libavformat.a : $(SUBDIR)/lib/libavcodec.a ;
102 LibAvUtil $(SUBDIR)/lib/libswscale.a : $(SUBDIR)/lib/libavcodec.a ;
104 # CSS doesn't work on Cygwin/Windows as of now, so don't use it.
108 # We need libdvdcss.so for libdvdread's configure to work...
111 Depends $(<) : $(>) ;
116 cd `dirname $(>)` && CONTRIB=`pwd` &&
117 rm -rf libdvdcss && (gzip -dc libdvdcss.tar.gz | tar xf - ) &&
119 ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache && $(MAKE) && $(MAKE) install &&
120 $(STRIP) $CONTRIB/lib/libdvdcss.a
122 Wget $(SUBDIR)/libdvdcss.tar.gz : $(SUBDIR)/version_libdvdcss.txt ;
123 LibDvdCss $(SUBDIR)/lib/libdvdcss.a : $(SUBDIR)/libdvdcss.tar.gz ;
129 Depends $(<) : $(>) ;
134 cd `dirname $(>)` && CONTRIB=`pwd` &&
135 rm -rf libdca && (gzip -dc libdca.tar.gz | tar xf - ) &&
136 cd libdca && $(PATCH) -p1 < ../patch-libdca.patch &&
137 ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache && $(MAKE) && $(MAKE) install &&
138 $(STRIP) $CONTRIB/lib/libdca.a
140 Wget $(SUBDIR)/libdca.tar.gz : $(SUBDIR)/version_libdca.txt ;
141 LibDCA $(SUBDIR)/lib/libdca.a : $(SUBDIR)/libdca.tar.gz ;
146 Depends $(<) : $(>) ;
153 cd `dirname $(>)` && CONTRIB=`pwd` &&
154 rm -rf libdvdread && (gzip -dc libdvdread.tar.gz | tar xf - ) &&
156 ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared --with-libdvdcss=$CONTRIB &&
157 $(MAKE) && $(MAKE) install &&
158 $(STRIP) $CONTRIB/lib/libdvdread.a
162 # Cygwin/Windows doesn't use CSS as of now, so don't include it on the
166 cd `dirname $(>)` && CONTRIB=`pwd` &&
167 rm -rf libdvdread && (gzip -dc libdvdread.tar.gz | tar xf - ) &&
169 ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared &&
170 $(MAKE) && $(MAKE) install &&
171 $(STRIP) $CONTRIB/lib/libdvdread.a
174 Wget $(SUBDIR)/libdvdread.tar.gz : $(SUBDIR)/version_libdvdread.txt ;
175 LibDvdRead $(SUBDIR)/lib/libdvdread.a : $(SUBDIR)/libdvdread.tar.gz ;
180 Depends $(<) : $(>) ;
185 cd `dirname $(>)` && CONTRIB=`pwd` &&
186 rm -rf faac && (gzip -dc faac.tar.gz | tar xf - ) && cd faac &&
187 ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared --enable-static &&
188 $(MAKE) && $(MAKE) install &&
189 $(STRIP) $CONTRIB/lib/libfaac.a
191 Wget $(SUBDIR)/faac.tar.gz : $(SUBDIR)/version_faac.txt ;
192 LibFaac $(SUBDIR)/lib/libfaac.a : $(SUBDIR)/faac.tar.gz ;
197 Depends $(<) : $(>) ;
202 cd `dirname $(>)` && CONTRIB=`pwd` &&
203 rm -rf lame && (gzip -dc lame.tar.gz | tar xf - ) && cd lame &&
204 ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared &&
205 $(MAKE) && $(MAKE) install &&
206 $(STRIP) $CONTRIB/lib/libmp3lame.a
208 Wget $(SUBDIR)/lame.tar.gz : $(SUBDIR)/version_lame.txt ;
209 LibMp3Lame $(SUBDIR)/lib/libmp3lame.a : $(SUBDIR)/lame.tar.gz ;
214 LIBMP4V2_PATCH = "" ;
217 LIBMP4V2_PATCH += "$(PATCH) -p1 < ../patch_mpeg4ip_cygwin.patch && " ;
219 LIBMP4V2_PATCH += "$(PATCH) -p1 < ../patch-mpeg4ip.patch && " ;
220 LIBMP4V2_PATCH += "$(PATCH) -p1 < ../patch-mpeg4ip-nasm-2.00-configure.patch && " ;
221 LIBMP4V2_PATCH += "$(PATCH) -p1 < ../patch-mpeg4ip-ac3.patch && " ;
222 Depends $(<) : $(>) ;
227 cd `dirname $(>)` && CONTRIB=`pwd` &&
228 rm -rf mpeg4ip && (gzip -dc mpeg4ip.tar.gz | tar xf - ) &&
229 cd mpeg4ip && $(LIBMP4V2_PATCH)
230 ./bootstrap --cache-file=$CONTRIB/config.cache --disable-mp3lame --disable-faac --disable-x264 --disable-server --disable-player &&
231 $(MAKE) -C lib/mp4v2 libmp4v2.la && cp lib/mp4v2/.libs/libmp4v2.a $CONTRIB/lib &&
232 cp mpeg4ip_config.h include/mpeg4ip.h include/mpeg4ip_version.h \
233 include/mpeg4ip_win32.h lib/mp4v2/*.h $CONTRIB/include &&
234 $(STRIP) $CONTRIB/lib/libmp4v2.a
236 Wget $(SUBDIR)/mpeg4ip.tar.gz : $(SUBDIR)/version_mpeg4ip.txt ;
237 LibMp4v2 $(SUBDIR)/lib/libmp4v2.a : $(SUBDIR)/mpeg4ip.tar.gz ;
241 Depends $(<) : $(>) ;
246 cd `dirname $(>)` && CONTRIB=`pwd` &&
247 rm -rf libmkv && (gzip -dc libmkv.tar.gz | tar xf - ) &&
249 ./configure --disable-shared --enable-static --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache &&
250 $(MAKE) && $(MAKE) install &&
251 $(STRIP) $CONTRIB/lib/libmkv.a
253 Wget $(SUBDIR)/libmkv.tar.gz : $(SUBDIR)/version_libmkv.txt ;
254 LibMkv $(SUBDIR)/lib/libmkv.a : $(SUBDIR)/libmkv.tar.gz ;
259 Depends $(<) : $(>) ;
264 cd `dirname $(>)` && CONTRIB=`pwd` &&
265 rm -rf mpeg2dec && (gzip -dc mpeg2dec.tar.gz | tar xf - ) &&
266 cd mpeg2dec && $(PATCH) -p1 < ../patch-libmpeg2.patch &&
267 ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared --disable-sdl &&
268 $(MAKE) && $(MAKE) install &&
269 $(STRIP) $CONTRIB/lib/libmpeg2.a
271 Wget $(SUBDIR)/mpeg2dec.tar.gz : $(SUBDIR)/version_mpeg2dec.txt ;
272 LibMpeg2 $(SUBDIR)/lib/libmpeg2.a : $(SUBDIR)/mpeg2dec.tar.gz ;
277 Depends $(<) : $(>) ;
282 cd `dirname $(>)` && CONTRIB=`pwd` &&
283 rm -rf libogg && (gzip -dc libogg.tar.gz | tar xf - ) &&
285 ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared &&
286 $(MAKE) && $(MAKE) install &&
287 $(STRIP) $CONTRIB/lib/libogg.a
289 Wget $(SUBDIR)/libogg.tar.gz : $(SUBDIR)/version_libogg.txt ;
290 LibOgg $(SUBDIR)/lib/libogg.a : $(SUBDIR)/libogg.tar.gz ;
295 Depends $(<) : $(>) ;
298 actions LibSampleRate
300 cd `dirname $(>)` && CONTRIB=`pwd` &&
301 rm -rf libsamplerate && (gzip -dc libsamplerate.tar.gz | tar xf - ) &&
303 ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared &&
304 $(MAKE) && $(MAKE) install &&
305 $(STRIP) $CONTRIB/lib/libsamplerate.a
307 Wget $(SUBDIR)/libsamplerate.tar.gz : $(SUBDIR)/version_libsamplerate.txt ;
308 LibSampleRate $(SUBDIR)/lib/libsamplerate.a : $(SUBDIR)/libsamplerate.tar.gz ;
313 Depends $(<) : $(>) ;
318 cd `dirname $(>)` && CONTRIB=`pwd` &&
319 rm -rf libvorbis && (gzip -dc libvorbis.tar.gz | tar xf - ) &&
321 ./configure --prefix=$CONTRIB --with-ogg=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared &&
322 $(MAKE) && $(MAKE) install &&
323 $(STRIP) $CONTRIB/lib/libvorbis.a
325 Wget $(SUBDIR)/libvorbis.tar.gz : $(SUBDIR)/version_libvorbis.txt ;
326 LibVorbis $(SUBDIR)/lib/libvorbis.a : $(SUBDIR)/libvorbis.tar.gz ;
330 Depends $(<) : $(>) ;
337 LibVorbisEnc $(SUBDIR)/lib/libvorbisenc.a : $(SUBDIR)/lib/libvorbis.a ;
345 LIBX264_PATCH += "$(PATCH) -p1 < ../patch-x264-cygwin.patch && " ;
347 else if $(OS) = SOLARIS
349 LIBX264_PATCH += " $(PATCH) -p1 < ../patch-x264-solaris.patch && " ;
351 # AQ is temporarily disabled LIBX264_PATCH += "$(PATCH) -p0 < ../patch-x264-aq.patch && " ;
352 LIBX264_PATCH += "$(PATCH) -p0 < ../patch-x264-idr.patch && " ;
353 LIBX264_PATCH += "$(PATCH) -p0 < ../patch-x264-vbv-2pass.patch && " ;
354 Depends $(<) : $(>) ;
359 cd `dirname $(>)` && CONTRIB=`pwd` &&
360 rm -rf x264 && (gzip -dc x264.tar.gz | tar xf - ) &&
361 cd x264 && $(LIBX264_PATCH)
362 bash ./configure --prefix=$CONTRIB --enable-pthread &&
363 $(MAKE) libx264.a && cp libx264.a $CONTRIB/lib/ && cp x264.h $CONTRIB/include/ && $(STRIP) $CONTRIB/lib/libx264.a
365 Wget $(SUBDIR)/x264.tar.gz : $(SUBDIR)/version_x264.txt ;
366 LibX264 $(SUBDIR)/lib/libx264.a : $(SUBDIR)/x264.tar.gz ;
371 LIBXVIDCORE_PATCH = "" ;
374 LIBXVIDCORE_PATCH = "$(PATCH) -p1 < ../patch-xvidcore-macosx.patch && " ;
376 else if $(OS) = CYGWIN
378 LIBXVIDCORE_PATCH = "$(PATCH) -p1 < ../patch-xvidcore-cygwin.patch && " ;
380 LIBXVIDCORE_PATCH += "$(PATCH) -p1 < ../patch-xvidcore-nasm-2.00-configure.patch && " ;
381 Depends $(<) : $(>) ;
386 cd `dirname $(>)` && CONTRIB=`pwd` &&
387 rm -rf xvidcore && (gzip -dc xvidcore.tar.gz | tar xf - ) &&
388 cd xvidcore && $(LIBXVIDCORE_PATCH)
389 cd build/generic/ && ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache && $(MAKE) libxvidcore.a &&
390 cp ./=build/libxvidcore.a $CONTRIB/lib/ &&
391 cp ../../src/xvid.h $CONTRIB/include/ &&
392 $(STRIP) $CONTRIB/lib/libxvidcore.a
394 Wget $(SUBDIR)/xvidcore.tar.gz : $(SUBDIR)/version_xvidcore.txt ;
395 LibXvidCore $(SUBDIR)/lib/libxvidcore.a : $(SUBDIR)/xvidcore.tar.gz ;
402 Depends $(<) : $(>) ;
407 cd `dirname $(>)` && CONTRIB=`pwd` &&
408 rm -rf zlib && (gzip -dc zlib.tar.gz | tar xf - ) &&
409 cd zlib && ./configure --prefix=$CONTRIB &&
410 $(MAKE) && $(MAKE) install && touch $CONTRIB/.contrib &&
411 $(STRIP) $CONTRIB/lib/libz.a
413 Wget $(SUBDIR)/zlib.tar.gz : $(SUBDIR)/version_zlib.txt ;
414 Zlib $(SUBDIR)/lib/libz.a : $(SUBDIR)/zlib.tar.gz ;