OSDN Git Service

LinGui: make it possible to build outside srcdir
[handbrake-jp/handbrake-jp-git.git] / contrib / Jamfile
index aaeb38f..d0450cd 100644 (file)
@@ -4,7 +4,7 @@ SubDir TOP contrib ;
 # is installed for all other systems
 if $(OS) = MACOSX
 {
-    WGET = curl -L -o ;
+    WGET = curl -q -L -o ;
 }
 else
 {
@@ -68,7 +68,7 @@ actions LibFaad2
 {
     cd `dirname $(>)` && CONTRIB=`pwd` &&
     rm -rf faad2 && (gzip -dc faad2.tar.gz | tar xf -) &&
-    cd faad2 &&
+    cd faad2 && $(PATCH) -p1 < ../patch-faad2-libtool22.patch &&
     ./bootstrap && ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared && $(MAKE) && $(MAKE) install
 }
 Wget     $(SUBDIR)/faad2.tar.gz    : $(SUBDIR)/version_faad2.txt ;
@@ -78,6 +78,8 @@ LibFaad2 $(SUBDIR)/lib/libfaad.a : $(SUBDIR)/faad2.tar.gz ;
 rule LibAvCodec
 {
     FFMPEG_PATCH = "$(PATCH) -p0 < ../patch-ffmpeg.patch" ;
+    FFMPEG_PATCH += " && $(PATCH) -p0 < ../patch-ffmpeg-latm.patch " ;
+    FFMPEG_PATCH += " && $(PATCH) -p0 < ../patch-ffmpeg-mpegleak.patch " ;
     if $(OS) = CYGWIN
     {
         FFMPEG_PATCH += " && $(PATCH) -p1 < ../patch-ffmpeg-cygwin.patch " ;
@@ -85,8 +87,22 @@ rule LibAvCodec
     else if $(OS) = SOLARIS
     {
         FFMPEG_PATCH += " && $(PATCH) -p1 < ../patch-ffmpeg-solaris.patch " ;
-        FFMPEG_OPTIONS = " --disable-mmx --extra-cflags=-fpic " ;
     }
+    else if $(OS) = MACOSX
+    {
+        FFMPEG_PATCH += " && $(PATCH) -p1 < ../patch-ffmpeg-h264dsp-crash.diff " ;
+    }
+
+    if $(OS) = SOLARIS
+    {
+       #
+       # Not all of ffmpeg works on Solaris - disable the bits that
+       # don't. When we get new versions of FFMPEG we can try enabling
+       # then again.
+       #
+       FFMPEG_EXTRA_OPTIONS = "--disable-vis --disable-demuxer=mpc8 --disable-vhook --disable-network" ;
+    }
+
     Depends $(<) : $(>) ;
     Depends lib  : $(<) ;
 }
@@ -99,9 +115,9 @@ actions LibAvCodec
         --disable-shared --enable-static --disable-encoders \
         --enable-encoder=mpeg4 --enable-encoder=ac3 --enable-encoder=snow \
         --enable-libfaad --disable-ffmpeg --disable-ffserver \
-        --disable-muxers --enable-muxer=ipod --disable-bsfs \
+        --disable-muxers --enable-muxer=ipod --disable-bsfs --disable-vhook \
         --extra-cflags="-I$CONTRIB/include" \
-        --extra-ldflags="-L$CONTRIB/lib" &&
+        --extra-ldflags="-L$CONTRIB/lib" $(FFMPEG_EXTRA_OPTIONS) &&
     $(MAKE) && $(MAKE) install &&
     $(STRIP) $CONTRIB/lib/libavcodec.a
 }
@@ -171,6 +187,11 @@ rule LibDvdRead
     {
         DVDREAD_PATCH = "$(PATCH) -p0 < ../patch-libdvdread-css-vlc-dylib.patch &&" ;
     }
+       
+    if $(OS) = CYGWIN
+    {
+        DVDREAD_PATCH = "$(PATCH) -p1 < ../patch-libdvdread-cygwin.patch &&" ;
+    }
     
 }
 if $(CSS) = 1 # Include CSS support in libdvdread if requested
@@ -207,12 +228,16 @@ rule LibFaac
 {
     Depends $(<) : $(>) ;
     Depends lib  : $(<) ;
+       if $(OS) = CYGWIN
+    {
+        CYGWIN_PATCH = "$(PATCH) -p1 < ../patch-faac-cygwin.patch &&" ;
+    }
 }
 actions LibFaac
 {
     cd `dirname $(>)` && CONTRIB=`pwd` &&
-    rm -rf faac && (gzip -dc faac.tar.gz | tar xf - ) && cd faac &&
-    ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared --enable-static &&
+    rm -rf faac && (gzip -dc faac.tar.gz | tar xf - ) && cd faac && $(CYGWIN_PATCH) ./bootstrap &&
+    ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared --enable-static --without-mp4v2 &&
     $(MAKE) && $(MAKE) install &&
     $(STRIP) $CONTRIB/lib/libfaac.a
 }
@@ -240,29 +265,19 @@ LibMp3Lame $(SUBDIR)/lib/libmp3lame.a : $(SUBDIR)/lame.tar.gz ;
 rule LibMp4v2
 {
     LIBMP4V2_PATCH = "" ;
-    if $(OS) = CYGWIN
-    {
-        LIBMP4V2_PATCH += "$(PATCH) -p1 < ../patch_mpeg4ip_cygwin.patch && " ;
-    }
-    LIBMP4V2_PATCH += "$(PATCH) -p1 < ../patch-mpeg4ip.patch && " ;
-    LIBMP4V2_PATCH += "$(PATCH) -p1 < ../patch-mpeg4ip-nasm-2.00-configure.patch && " ;
-    LIBMP4V2_PATCH += "$(PATCH) -p1 < ../patch-mpeg4ip-ac3.patch && " ;
     Depends $(<) : $(>) ;
     Depends lib  : $(<) ;
 }
 actions LibMp4v2
 {
     cd `dirname $(>)` && CONTRIB=`pwd` &&
-    rm -rf mpeg4ip && (gzip -dc mpeg4ip.tar.gz | tar xf - ) &&
-    cd mpeg4ip && $(LIBMP4V2_PATCH)
-    ./bootstrap --cache-file=$CONTRIB/config.cache --disable-mp3lame --disable-faac --disable-x264 --disable-server --disable-player &&
-    $(MAKE) -C lib/mp4v2 libmp4v2.la && cp lib/mp4v2/.libs/libmp4v2.a $CONTRIB/lib &&
-    cp mpeg4ip_config.h include/mpeg4ip.h include/mpeg4ip_version.h \
-        include/mpeg4ip_win32.h lib/mp4v2/*.h $CONTRIB/include &&
+    rm -rf libmp4v2 && (gzip -dc libmp4v2.tar.gz | tar xf - ) &&
+    cd libmp4v2 && $(LIBMP4V2_PATCH) rm -rf build && mkdir build && cd build &&
+    ../configure --disable-shared --disable-debug --prefix=$CONTRIB && $(MAKE) && $(MAKE) install &&
     $(STRIP) $CONTRIB/lib/libmp4v2.a
 }
-Wget     $(SUBDIR)/mpeg4ip.tar.gz : $(SUBDIR)/version_mpeg4ip.txt ;
-LibMp4v2 $(SUBDIR)/lib/libmp4v2.a : $(SUBDIR)/mpeg4ip.tar.gz ;
+Wget     $(SUBDIR)/libmp4v2.tar.gz : $(SUBDIR)/version_libmp4v2.txt ;
+LibMp4v2 $(SUBDIR)/lib/libmp4v2.a : $(SUBDIR)/libmp4v2.tar.gz ;
 
 rule LibMkv
 {
@@ -291,8 +306,8 @@ actions LibMpeg2
 {
     cd `dirname $(>)` && CONTRIB=`pwd` &&
     rm -rf mpeg2dec && (gzip -dc mpeg2dec.tar.gz | tar xf - ) && 
-    cd mpeg2dec && $(PATCH) -p1 < ../patch-libmpeg2.patch &&
-    ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared --disable-sdl &&
+    cd mpeg2dec &&
+    ./configure --prefix=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared --disable-sdl --without-x &&
     $(MAKE) && $(MAKE) install &&
     $(STRIP) $CONTRIB/lib/libmpeg2.a
 }
@@ -374,6 +389,7 @@ actions LibTheora
 {
     cd `dirname $(>)` && CONTRIB=`pwd` && rm -rf libtheora &&
     (gzip -dc libtheora.tar.gz | tar xf - ) && cd libtheora &&
+    HAVE_PKG_CONFIG="no" && export HAVE_PKG_CONFIG &&
     ./configure --prefix=$CONTRIB --with-ogg=$CONTRIB --with-vorbis=$CONTRIB --cache-file=$CONTRIB/config.cache --disable-shared \
             --disable-oggtest --disable-vorbistest --disable-sdltest --disable-examples &&
     $(MAKE) && $(MAKE) install &&
@@ -394,8 +410,6 @@ rule LibX264
     {
         LIBX264_PATCH += " $(PATCH) -p1 < ../patch-x264-solaris.patch && " ;
     }
-    LIBX264_PATCH += "$(PATCH) -p0 < ../patch-x264-idr.patch && " ;
-       LIBX264_PATCH += "$(PATCH) -p0 < ../patch-x264-vbv-2pass.patch && " ;
     Depends $(<) : $(>) ;
     Depends lib  : $(<) ;
 }
@@ -459,3 +473,22 @@ if $(OS) = CYGWIN
     Wget  $(SUBDIR)/zlib.tar.gz : $(SUBDIR)/version_zlib.txt ;
     Zlib  $(SUBDIR)/lib/libz.a  : $(SUBDIR)/zlib.tar.gz ;
 }
+
+# bzip2
+if $(OS) = CYGWIN
+{
+    rule BZip2
+    {
+        Depends $(<) : $(>) ;
+        Depends lib  : $(<) ;
+    }
+    actions BZip2
+    {
+        cd `dirname $(>)` && CONTRIB=`pwd` &&
+        rm -rf bzip2 && (gzip -dc bzip2.tar.gz | tar xf - ) &&
+        cd bzip2 && $(MAKE) && $(MAKE) install && cp libbz2.a $CONTRIB/lib/ &&
+        $(STRIP) $CONTRIB/lib/libbz2.a
+    }
+    Wget  $(SUBDIR)/bzip2.tar.gz : $(SUBDIR)/version_bzip2.txt ;
+    BZip2  $(SUBDIR)/lib/libbz2.a  : $(SUBDIR)/bzip2.tar.gz ;
+}