X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=extras%2Fcontrib%2Fsrc%2FMakefile;h=411e4355bc62c8d061d7c922f20c61a92720adf7;hb=b2c48abbf83774ecb46549351fd9de73d381ef24;hp=53f2381e88dcf54c74ad98f8e9907120b558223f;hpb=050b995e8376d21f7e4b194c9ee104e7341a1c4c;p=vlc diff --git a/extras/contrib/src/Makefile b/extras/contrib/src/Makefile index 53f2381e88..411e4355bc 100644 --- a/extras/contrib/src/Makefile +++ b/extras/contrib/src/Makefile @@ -115,7 +115,7 @@ endif # ifdef HAVE_WIN32 HOSTCONF+= --without-pic --disable-shared --enable-msw --disable-dependency-tracking -FFMPEGCONF+= --target-os=mingw32 --enable-memalign-hack +FFMPEGCONF+= --target-os=mingw32 --arch=x86 --enable-memalign-hack ifdef HAVE_WIN64 FFMPEGCONF+= --cpu=athlon64 --arch=x86_64 else @@ -125,7 +125,7 @@ endif ifdef HAVE_WINCE HOSTCONF+= --without-pic --disable-shared -FFMPEGCONF+= --arch=armv4l --cpu=armv4t --disable-encoders --disable-muxers --disable-mpegaudio-hp --disable-decoder=snow --disable-decoder=vc9 --disable-decoder=wmv3 --disable-decoder=vorbis --disable-decoder=dvdsub --disable-decoder=dvbsub --disable-protocols +FFMPEGCONF+= --target-os=mingw32ce --arch=armv4l --cpu=armv4t --disable-encoders --disable-muxers --disable-mpegaudio-hp --disable-decoder=snow --disable-decoder=vc9 --disable-decoder=wmv3 --disable-decoder=vorbis --disable-decoder=dvdsub --disable-decoder=dvbsub --disable-protocols endif ifdef HAVE_UCLIBC @@ -149,7 +149,11 @@ endif ifdef HAVE_DARWIN_OS X264CONF=--host=$(HOST) X264CONF += --enable-pic +ifdef HAVE_DARWIN_32 +FFMPEGCONF += --cc=gcc-4.0 +else FFMPEGCONF += --cc=$(CC) +endif FFMPEGCONF += --arch=$(ARCH) ifdef HAVE_DARWIN_64 FFMPEGCONF += --cpu=core2 @@ -181,6 +185,8 @@ ifdef HAVE_ISA_THUMB NOTHUMB ?= -mno-thumb endif +X264CONF+= --disable-avs-input --disable-lavf-input --disable-ffms-input --disable-mp4-output + DATE=`date +%Y-%m-%d` # *************************************************************************** @@ -294,9 +300,6 @@ cmake-$(CMAKE_VERSION).tar.gz: cmake: cmake-$(CMAKE_VERSION).tar.gz $(EXTRACT_GZ) -#cmake: -# cvs -d :pserver:anonymous:cmake@www.cmake.org:/cvsroot/CMake co -d cmake CMake - .cmake: cmake (cd $<; ./configure --prefix=$(PREFIX) && make && make install) touch $@ @@ -354,8 +357,6 @@ pkg-config-$(PKGCFG_VERSION).tar.gz: pkgconfig: pkg-config-$(PKGCFG_VERSION).tar.gz $(EXTRACT_GZ) - patch -d pkgconfig/glib-1.2.8 -p 1 < Patches/glib.patch - patch -d pkgconfig -p0 < Patches/pkgcfg.patch (cd $@; autoconf) .pkgcfg: pkgconfig @@ -402,7 +403,7 @@ else endif # Work around another non-sense of autoconf. ifdef HAVE_WIN32 - (cd ../include; sed -i.orig '311 c #if 0' libintl.h) + (cd $(PREFIX)/include; sed -i.orig '311 c #if 0' libintl.h) endif $(INSTALL_NAME) touch $@ @@ -423,6 +424,10 @@ libiconv: libiconv-$(LIBICONV_VERSION).tar.gz ifdef HAVE_WIN64 patch -p0 < Patches/libiconv-win64.patch endif +ifdef HAVE_WINCE + patch -p0 < Patches/libiconv-wince.patch + patch -p0 < Patches/libiconv-wince-hack.patch +endif libiconv-snowleopard.tar.bz2: $(WGET) $(LIBICONVMAC_URL) @@ -433,7 +438,7 @@ libiconv-snowleopard: libiconv-snowleopard.tar.bz2 ifdef HAVE_DARWIN_OS ifdef HAVE_DARWIN_10 .iconv: libiconv-snowleopard - (cd libiconv-snowleopard && cp libiconv.* ../../lib/) + (cd libiconv-snowleopard && cp libiconv.* $(PREFIX)/lib/) touch $@ else .iconv: @@ -459,17 +464,18 @@ fontconfig-$(FONTCONFIG_VERSION).tar.gz: fontconfig: fontconfig-$(FONTCONFIG_VERSION).tar.gz Patches/fontconfig.patch $(EXTRACT_GZ) + patch -p0 < Patches/fontconfig-march.patch patch -p0 < Patches/fontconfig-nodocs.patch ifdef HAVE_WIN32 patch -p0 < Patches/fontconfig.patch patch -p0 < Patches/fontconfig-noxml2.patch -endif (cd $@; autoreconf -ivf) +endif .fontconfig: fontconfig .xml .freetype ifdef HAVE_WIN32 ifdef HAVE_CYGWIN - (cd $<; ./configure --target=$(HOST) --disable-pic --disable-shared --disable-docs --with-arch=i686 --prefix=$(PREFIX) --with-freetype-config=$(PREFIX)/bin/freetype-config --enable-libxml2 && make && make install) + (cd $<; ./configure --target=$(HOST) --disable-pic --disable-shared --disable-docs --with-arch=i686 --prefix=$(PREFIX) --with-freetype-config=$(PREFIX)/bin/freetype-config --enable-libxml2 && make && make install) else (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --with-arch=i686 --prefix=$(PREFIX) --with-freetype-config=$(PREFIX)/bin/freetype-config --disable-libxml2 --disable-docs && make && make install) endif @@ -498,11 +504,7 @@ freetype2: freetype-$(FREETYPE2_VERSION).tar.gz $(EXTRACT_GZ) .freetype: freetype2 -ifdef HAVE_CYGWIN - (cd $<; ./configure --target=$(HOST) --disable-pic --disable-shared --prefix=$(PREFIX) && make && make install) -else (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install) -endif $(INSTALL_NAME) touch $@ @@ -561,6 +563,7 @@ libmpeg2-$(LIBMPEG2_VERSION).tar.gz: libmpeg2: libmpeg2-$(LIBMPEG2_VERSION).tar.gz $(EXTRACT_GZ) + patch -p0 < Patches/libmpeg2-arm-pld.patch cd libmpeg2 && patch -p0 < ../Patches/libmpeg2-mc-neon.patch cd libmpeg2 && ./bootstrap @@ -715,6 +718,7 @@ libvorbis-$(VORBIS_VERSION).tar.gz: libvorbis: libvorbis-$(VORBIS_VERSION).tar.gz $(EXTRACT_GZ) + patch -p0 < Patches/vorbis-noapps.patch .vorbis: libvorbis .ogg (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install) @@ -846,19 +850,18 @@ endif FLAC_DISABLE_FLAGS = --disable-oggtest --disable-xmms-plugin --disable-cpplibs .flac: flac .ogg -ifdef HAVE_WIN32 - (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) $(FLAC_DISABLE_FLAGS) && cd src&& make -C libFLAC&& make -C libFLAC install && cd .. && make -C include install) -else -ifdef HAVE_DARWIN_OS ifdef HAVE_DARWIN_OS_ON_INTEL - (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-asm-optimizations && cd src && make -C libFLAC && make -C libFLAC install && cd .. && make -C include install) -else - (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) $(FLAC_DISABLE_FLAGS) && cd src && make -C libFLAC && make -C libFLAC install && cd .. && make -C include install) -endif + cd $< && \ + $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-asm-optimizations $(FLAC_DISABLE_FLAGS) else - (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) $(FLAC_DISABLE_FLAGS) && cd src && make -C libFLAC && make -C libFLAC install && cd .. && make -C include install) -endif -endif + cd $< && \ + $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) $(FLAC_DISABLE_FLAGS) +endif + cd $> libFLAC/flac.pc && \ + make -C libFLAC install + cd $< && make -C include install $(INSTALL_NAME) touch $@ @@ -906,6 +909,36 @@ CLEAN_FILE += .faad CLEAN_PKG += faad2 DISTCLEAN_PKG += faad2-$(FAAD2_VERSION).tar.gz + +# *************************************************************************** +# libvp8 +# *************************************************************************** + +libvpx-$(VPX_VERSION).tar.bz2: + $(WGET) $(VPX_URL) + +vpx: libvpx-$(VPX_VERSION).tar.bz2 + $(EXTRACT_BZ2) +ifneq ($(HOST),$(BUILD)) + patch -p0 < Patches/libvpx-cross.patch +endif + +ifdef HAVE_WIN32 +VPX_TARGET=x86-win32-gcc +else +VPX_TARGET=FIXME +endif + +.vpx: vpx + (cd $<; ./configure --target=$(VPX_TARGET) --disable-install-bins --disable-install-srcs --disable-install-libs --disable-examples && XCC=$(CC) XNM=$(NM) XSTRIP=$(STRIP) make && make install) + (cd $<; cp vp8/*.h vpx_codec/*.h $(PREFIX)/include) # Of course, why the hell would one expect it to be listed or in make install? + (cd $<; cp libvpx.a $(PREFIX)/lib) # Of course, why the hell would one expect it to be listed or in make install? + touch $@ + +CLEAN_FILE += .vpx +CLEAN_PKG += vpx +DISTCLEAN_PKG += libvpx-$(VPX_VERSION).tar.bz2 + # *************************************************************************** # lame # *************************************************************************** @@ -1024,24 +1057,23 @@ DISTCLEAN_PKG += amrwb-$(LIBAMR_WB_VERSION).tar.bz2 # *************************************************************************** ifdef SVN -ffmpeg: +ifdef HAVE_WIN32 +ffmpeg: .dshow_headers +else +ffmpeg: +endif $(SVN) co $(FFMPEG_SVN) ffmpeg ifdef HAVE_ISA_THUMB patch -p0 < Patches/ffmpeg-avcodec-no-thumb.patch endif +ifdef HAVE_WIN64 + (cd ffmpeg/libswscale; patch -p0 < ../../Patches/ffmpeg-win64.patch;) +endif ifdef HAVE_UCLIBC patch -p0 < Patches/ffmpeg-svn-uclibc.patch patch -p0 < Patches/ffmpeg-svn-internal-define.patch patch -p0 < Patches/ffmpeg-svn-libavformat.patch endif -ifdef HAVE_WIN32 - (cd $@; patch -p0 < ../Patches/ffmpeg-svn-win32.patch) -endif -ifdef NO_TEXT_RELOCATION - echo "Broken LD. Fix your tools." - exit -1 -endif - (cd $@; patch -p1 < ../Patches/eac3_spectral.patch) else ffmpeg-$(FFMPEG_VERSION).tar.gz: echo "ffmpeg snapshot is too old, you MUST use subversion !" @@ -1061,12 +1093,17 @@ FFMPEGCONF += \ --disable-ffplay \ --disable-devices \ --disable-protocols \ + --disable-filters \ --disable-network +ifdef HAVE_WIN64 +FFMPEGCONF += --disable-bzlib --disable-decoder=dca --disable-encoder=vorbis --enable-libmp3lame --enable-w32threads --disable-dxva2 --disable-bsfs +else ifdef HAVE_WIN32 -FFMPEGCONF += --disable-bzlib --disable-decoder=dca --disable-encoder=ac3 --enable-libmp3lame --enable-w32threads +FFMPEGCONF += --disable-bzlib --disable-decoder=dca --disable-encoder=vorbis --enable-libmp3lame --enable-w32threads --enable-dxva2 --disable-bsfs else FFMPEGCONFG += --enable-pthreads endif +endif ifdef HAVE_WINCE .ffmpeg: ffmpeg .zlib @@ -1095,33 +1132,33 @@ DISTCLEAN_PKG += ffmpeg-$(FFMPEG_VERSION).tar.gz # libdvdcss # *************************************************************************** -libdvdcss-$(LIBDVDCSS_VERSION).tar.gz: +libdvdcss-$(LIBDVDCSS_VERSION).tar.bz2: $(WGET) $(LIBDVDCSS_URL) -ifdef SVN -libdvdcss: - $(SVN) co svn://svn.videolan.org/libdvdcss/trunk libdvdcss - cd $@ && sh bootstrap -else -libdvdcss: libdvdcss-$(LIBDVDCSS_VERSION).tar.gz - $(EXTRACT_GZ) -endif +# ifdef SVN +# libdvdcss: +# $(SVN) co svn://svn.videolan.org/libdvdcss/trunk libdvdcss +# cd $@ && sh bootstrap +# else +libdvdcss: libdvdcss-$(LIBDVDCSS_VERSION).tar.bz2 + $(EXTRACT_BZ2) +# endif .dvdcss: libdvdcss (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --disable-doc --prefix=$(PREFIX) && make && make install) $(INSTALL_NAME) touch $@ -ifdef SVN -libdvdcss-source: libdvdcss - tar cv --exclude=.svn libdvdcss | bzip2 > libdvdcss-$(DATE).tar.bz2 - -SOURCE += libdvdcss-source -endif +# ifdef SVN +# libdvdcss-source: libdvdcss +# tar cv --exclude=.svn libdvdcss | bzip2 > libdvdcss-$(DATE).tar.bz2 +# +# SOURCE += libdvdcss-source +# endif CLEAN_FILE += .dvdcss CLEAN_PKG += libdvdcss -DISTCLEAN_PKG += libdvdcss-$(LIBDVDCSS_VERSION).tar.gz +DISTCLEAN_PKG += libdvdcss-$(LIBDVDCSS_VERSION).tar.bz2 # *************************************************************************** # dummy dvdread to trigger the INSTALL_NAME script @@ -1135,11 +1172,9 @@ DISTCLEAN_PKG += libdvdcss-$(LIBDVDCSS_VERSION).tar.gz # *************************************************************************** # libdvdread: We use dvdnav's dvdread # *************************************************************************** - - libdvdread: $(SVN) co $(LIBDVDREAD_SVN) libdvdread - (cd $@; patch -p 0 < ../Patches/libdvdread.patch) + (cd $@; patch -p 0 < ../Patches/libdvdread-dvdcss-static.patch) ifdef HAVE_WIN32 (cd $@; patch -p 0 < ../Patches/libdvdread-win32.patch) endif @@ -1180,7 +1215,7 @@ endif ifdef HAVE_WIN32 (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --enable-static --prefix=$(PREFIX) && make && make install) else - (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --enable-static --prefix=$(PREFIX) CFLAGS="$(CFLAGS) -Dlseek64=lseek -Doff64_t=off_t" && make && make install) + (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --enable-static --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" && make && make install) endif $(INSTALL_NAME) touch $@ @@ -1217,13 +1252,15 @@ live555-$(LIVEDOTCOM_VERSION).tar.gz: live: live555-$(LIVEDOTCOM_VERSION).tar.gz $(EXTRACT_GZ) - patch -p0 < Patches/live-noapps.patch patch -p0 < Patches/live-uselocale.patch + patch -p0 < Patches/live-inet_ntop.patch ifdef HAVE_WIN64 patch -p0 < Patches/live-win64.patch endif -ifdef HAVE_WINCE - patch -p0 < Patches/live-wince.patch +ifndef HAVE_WIN32 +ifndef HAVE_WINCE + patch -p0 < Patches/live-getaddrinfo.patch +endif endif .live: live @@ -1231,10 +1268,11 @@ ifdef HAVE_WIN32 (cd $<;./genMakefiles mingw && make $(HOSTCC)) else ifdef HAVE_WINCE + (cd $<; sed -e 's/-lws2_32/-lws2/g' -i.orig config.mingw) (cd $<;./genMakefiles mingw && make $(HOSTCC)) else ifdef HAVE_DARWIN_OS - (cd $<; sed -e 's%-DBSD=1%-DBSD=1\ $(EXTRA_CFLAGS)\ $(EXTRA_LDFLAGS)%' -e 's%cc%$(CC)%' -e 's%c++%$(CXX)%' -i.orig config.macosx) + (cd $<; sed -e 's%-DBSD=1%-DBSD=1\ $(EXTRA_CFLAGS)\ $(EXTRA_LDFLAGS)%' -e 's%cc%$(CC)%' -e 's%c++%$(CXX)\ $(EXTRA_LDFLAGS)%' -i.orig config.macosx) (cd $<; ./genMakefiles macosx && make) else (cd $<; sed -e 's/=/= EXTRA_CPPFLAGS/' -e 's%EXTRA_CPPFLAGS%-I/include%' -i.orig groupsock/Makefile.head) @@ -1242,12 +1280,16 @@ ifdef HAVE_UCLIBC ifdef HAVE_BIGENDIAN (cd $<; ./genMakefiles armeb-uclibc && make $(HOSTCC)) endif +else +ifeq ($(ARCH)$(HAVE_MAEMO),armel) + (cd $<; ./genMakefiles armlinux && make $(HOSTCC)) else (cd $<; sed -e 's%-D_FILE_OFFSET_BITS=64%-D_FILE_OFFSET_BITS=64\ -fPIC\ -DPIC%' -i.orig config.linux) (cd $<; ./genMakefiles linux && make $(HOSTCC)) endif endif endif +endif endif mkdir -p $(PREFIX)/lib $(PREFIX)/include cp $