OSDN Git Service

Updates x264 to revision 665 and applies Haali's adaptive quantizer patch, creating...
[handbrake-jp/handbrake-jp-git.git] / contrib / Jamfile
index 33e9c2e..a1cd814 100644 (file)
@@ -11,6 +11,11 @@ else
     WGET = wget -O ;
 }
 
+if $(OS) = UNKNOWN
+{
+    OS = CYGWIN ;
+}
+
 # Wget rule: downloads $(<) from the link in $(>)
 rule Wget
 {
@@ -31,8 +36,9 @@ rule LibA52
 }
 actions LibA52
 {
+
     cd `dirname $(>)` && CONTRIB=`pwd` &&
-    rm -rf a52dec && tar xzf a52dec.tar.gz && cd a52dec &&
+    rm -rf a52dec && tar xzf a52dec.tar.gz && cd a52dec && patch -p1 < ../patch-a52dec.patch
     ./configure --prefix=$CONTRIB && make && make install &&
     strip -S $CONTRIB/lib/liba52.a
 }
@@ -61,8 +67,8 @@ actions LibAvCodec
     cd `dirname $(>)` && CONTRIB=`pwd` &&
     rm -rf ffmpeg && tar xzf ffmpeg.tar.gz &&
     cd ffmpeg && $(FFMPEG_PATCH) &&
-    ./configure --prefix=$CONTRIB $(FFMPEG_OPTIONS) --enable-gpl --disable-audio-beos &&
-    make lib && make install-libs install-headers &&
+    ./configure --prefix=$CONTRIB $(FFMPEG_OPTIONS) --enable-gpl --disable-audio-beos --enable-shared --enable-static&&
+    make && make install &&
     strip -S $CONTRIB/lib/libavcodec.a
 }
 Wget       $(SUBDIR)/ffmpeg.tar.gz    : $(SUBDIR)/version_ffmpeg.txt ;
@@ -101,10 +107,29 @@ if $(OS) != CYGWIN
     LibDvdCss $(SUBDIR)/lib/libdvdcss.a  : $(SUBDIR)/libdvdcss.tar.gz ;
 }
 
+# libdca
+rule LibDCA
+{
+    Depends $(<) : $(>) ;
+    Depends lib  : $(<) ;
+}
+actions LibDCA
+{
+    cd `dirname $(>)` && CONTRIB=`pwd` &&
+    rm -rf libdca && tar xzf libdca.tar.gz && cd libdca && patch -p1 < ../patch-libdca.patch
+       ./configure && make &&
+       cp libdca/.libs/libdca.a $CONTRIB/lib &&
+       cp include/dca.h $CONTRIB/include &&
+       strip -S $CONTRIB/lib/libdca.a
+}
+Wget   $(SUBDIR)/libdca.tar.gz : $(SUBDIR)/version_libdca.txt ;
+LibDCA $(SUBDIR)/lib/libdca.a  : $(SUBDIR)/libdca.tar.gz ;
+
 # libdvdread
 rule LibDvdRead
 {
-    LIBDVDREAD_PATCH = "patch -p1 < ../patch-libdvdread.patch" ;
+    # Not needed anymore since Clee fixed the problem in dvd.c
+    # LIBDVDREAD_PATCH = "patch -p1 < ../patch-libdvdread.patch" ;
     Depends $(<) : $(>) ;
     Depends lib  : $(<) ;
 }
@@ -114,7 +139,7 @@ if $(OS) != CYGWIN
     {
         cd `dirname $(>)` && CONTRIB=`pwd` &&
             rm -rf libdvdread && tar xzf libdvdread.tar.gz && cd libdvdread &&
-            $(LIBDVDREAD_PATCH) &&
+            $(LIBDVDREAD_PATCH) &&
             ./configure --prefix=$CONTRIB --disable-shared --with-libdvdcss=$CONTRIB &&
             make && make install &&
             strip -S $CONTRIB/lib/libdvdread.a
@@ -127,7 +152,7 @@ else {
     {
         cd `dirname $(>)` && CONTRIB=`pwd` &&
             rm -rf libdvdread && tar xzf libdvdread.tar.gz && cd libdvdread &&
-            $(LIBDVDREAD_PATCH) &&
+            $(LIBDVDREAD_PATCH) &&
             ./configure --prefix=$CONTRIB --disable-shared &&
             make && make install &&
             strip -S $CONTRIB/lib/libdvdread.a
@@ -146,7 +171,7 @@ actions LibFaac
 {
     cd `dirname $(>)` && CONTRIB=`pwd` &&
     rm -rf faac && tar xzf faac.tar.gz && cd faac &&
-    ./configure --prefix=$CONTRIB --disable-shared &&
+    ./configure --prefix=$CONTRIB --enable-shared --enable-static &&
     make && make install &&
     strip -S $CONTRIB/lib/libfaac.a
 }
@@ -170,6 +195,44 @@ actions LibMp3Lame
 Wget       $(SUBDIR)/lame.tar.gz      : $(SUBDIR)/version_lame.txt ;
 LibMp3Lame $(SUBDIR)/lib/libmp3lame.a : $(SUBDIR)/lame.tar.gz ;
 
+# libmp4v2
+rule LibMp4v2
+{
+    Depends $(<) : $(>) ;
+    Depends lib  : $(<) ;
+}
+if $(OS) != CYGWIN
+{
+       actions LibMp4v2
+       {
+       cd `dirname $(>)` && CONTRIB=`pwd` &&
+       rm -rf mpeg4ip && tar xzf mpeg4ip.tar.gz && cd mpeg4ip &&
+       patch -p1 < ../patch-mpeg4ip.patch &&
+       ./bootstrap  --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 &&
+       strip -S $CONTRIB/lib/libmp4v2.a
+       }
+}
+else
+{
+       actions LibMp4v2
+       {
+       cd `dirname $(>)` && CONTRIB=`pwd` &&
+       rm -rf mpeg4ip && tar xzf mpeg4ip.tar.gz && cd mpeg4ip &&
+       patch -p1 < ../patch-mpeg4ip.patch &&
+       patch -p1 < ../patch_mpeg4ip_cygwin.patch && ./bootstrap && 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 &&
+       strip -S $CONTRIB/lib/libmp4v2.a
+       }
+}
+
+Wget     $(SUBDIR)/mpeg4ip.tar.gz : $(SUBDIR)/version_mpeg4ip.txt ;
+LibMp4v2 $(SUBDIR)/lib/libmp4v2.a : $(SUBDIR)/mpeg4ip.tar.gz ;
+
 # libmpeg2
 rule LibMpeg2
 {
@@ -261,13 +324,18 @@ rule LibX264
     {
         LIBX264_PATCH = " patch -p1 < ../patch-x264-cygwin.patch && " ;
     }
+#    else if $(OS) = LINUX
+#    {
+#        LIBX264_PATCH = " patch -p1 < ../patch-x264-linux.patch && " ;
+#    }
+    LIBX264_AQ_PATCH = " patch -p0 < ../patch-x264-aq.patch && " ;
     Depends $(<) : $(>) ;
     Depends lib  : $(<) ;
 }
 actions LibX264
 {
     cd `dirname $(>)` && CONTRIB=`pwd` &&
-    rm -rf x264 && tar xzf x264.tar.gz && cd x264 && $(LIBX264_PATCH)
+    rm -rf x264 && tar xzf x264.tar.gz && cd x264 && $(LIBX264_PATCH) $(LIBX264_AQ_PATCH)
     ./configure --prefix=$CONTRIB --enable-pthread && make &&
     make install &&
     strip -S $CONTRIB/lib/libx264.a
@@ -302,3 +370,39 @@ actions LibXvidCore
 }
 Wget        $(SUBDIR)/xvidcore.tar.gz   : $(SUBDIR)/version_xvidcore.txt ;
 LibXvidCore $(SUBDIR)/lib/libxvidcore.a : $(SUBDIR)/xvidcore.tar.gz ;
+
+# zlib
+if $(OS) = CYGWIN
+{
+rule Zlib
+{
+    Depends $(<) : $(>) ;
+    Depends lib  : $(<) ;
+}
+actions Zlib
+{
+    cd `dirname $(>)` && CONTRIB=`pwd` &&
+    rm -rf zlib && tar xzf zlib.tar.gz &&
+    cd zlib && 
+    ./configure --prefix=$CONTRIB && make && make install && touch $CONTRIB/.contrib
+    strip -S $CONTRIB/lib/libz.a
+}
+Wget        $(SUBDIR)/zlib.tar.gz   : $(SUBDIR)/version_zlib.txt ;
+Zlib $(SUBDIR)/lib/libz.a : $(SUBDIR)/zlib.tar.gz ;
+}
+
+rule LibMkv
+{
+    Depends $(<) : $(>) ;
+    Depends lib  : $(<) ;
+}
+actions LibMkv
+{
+    cd `dirname $(>)` && CONTRIB=`pwd` &&
+    rm -rf libmkv && tar xzf libmkv.tar.gz && cd libmkv &&
+    ./configure --disable-shared --enable-static --prefix=$CONTRIB &&
+    make && make install &&
+    strip -S $CONTRIB/lib/libmkv.a
+}
+Wget    $(SUBDIR)/libmkv.tar.gz : $(SUBDIR)/version_libmkv.txt ;
+LibMkv  $(SUBDIR)/lib/libmkv.a  : $(SUBDIR)/libmkv.tar.gz ;