X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=extras%2Fcontrib%2Fsrc%2FMakefile;h=2e80d5a8d1158e499da95975f98893bd9fe2ed71;hb=8faa8a8fc0fedeb05517e8ff9d86e4d1649605e7;hp=9e1c978ca31bf04e18c299c2695eee64137029e4;hpb=7700501e81b5b2eb092d93273d3849b19348b812;p=vlc diff --git a/extras/contrib/src/Makefile b/extras/contrib/src/Makefile index 9e1c978ca3..2e80d5a8d1 100644 --- a/extras/contrib/src/Makefile +++ b/extras/contrib/src/Makefile @@ -169,6 +169,7 @@ FFMPEGCONF+= --enable-libamr-nb --enable-libamr-wb --enable-nonfree endif ifdef HAVE_LINUX +FFMPEGCONF+= --target-os=linux ifdef HAVE_MAEMO ifneq ($(filter -m%=cortex-a8, $(EXTRA_CFLAGS)),) FFMPEGCONF += --disable-runtime-cpudetect --enable-neon --cpu=cortex-a8 @@ -472,7 +473,7 @@ 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 --disable-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 @@ -572,29 +573,6 @@ CLEAN_FILE += .mpeg2 CLEAN_PKG += libmpeg2 DISTCLEAN_PKG += libmpeg2-$(LIBMPEG2_VERSION).tar.gz -# *************************************************************************** -# libid3tag -# *************************************************************************** - -libid3tag-$(LIBID3TAG_VERSION).tar.gz: - $(WGET) $(LIBID3TAG_URL) - -libid3tag: libid3tag-$(LIBID3TAG_VERSION).tar.gz - $(EXTRACT_GZ) - patch -d libid3tag -p0 < Patches/libid3tag-0.15.1b-fix-CVE-2008-2109.patch -ifdef HAVE_DARWIN_OS - ( cd $@; sed -e 's%-dynamiclib%-dynamiclib -arch $(ARCH)%' -i.orig configure ) -endif - -.id3tag: libid3tag - (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install) - $(INSTALL_NAME) - touch $@ - -CLEAN_FILE += .id3tag -CLEAN_PKG += libid3tag -DISTCLEAN_PKG += libid3tag-$(LIBID3TAG_VERSION).tar.gz - # *************************************************************************** # pcre # *************************************************************************** @@ -906,6 +884,53 @@ CLEAN_FILE += .faad CLEAN_PKG += faad2 DISTCLEAN_PKG += faad2-$(FAAD2_VERSION).tar.gz +# *************************************************************************** +# libebml +# *************************************************************************** + +libebml-$(LIBEBML_VERSION).tar.bz2: + $(WGET) $(LIBEBML_URL) + +libebml: libebml-$(LIBEBML_VERSION).tar.bz2 + $(EXTRACT_BZ2) + +.ebml: libebml +ifdef HAVE_WIN32 + (cd $<; make -C make/mingw32 prefix=$(PREFIX) $(HOSTCC) SHARED=no && make -C make/linux install_staticlib install_headers prefix=$(PREFIX) $(HOSTCC)) +else + (cd $<; make -C make/linux prefix=$(PREFIX) $(HOSTCC2) staticlib && make -C make/linux install_staticlib install_headers prefix=$(PREFIX)) + $(RANLIB) $(PREFIX)/lib/libebml.a +endif + touch $@ + +CLEAN_FILE += .ebml +CLEAN_PKG += libebml +DISTCLEAN_PKG += libebml-$(LIBEBML_VERSION).tar.bz2 + +# *************************************************************************** +# libmatroska +# *************************************************************************** + +libmatroska-$(LIBMATROSKA_VERSION).tar.bz2: + $(WGET) $(LIBMATROSKA_URL) + +libmatroska: libmatroska-$(LIBMATROSKA_VERSION).tar.bz2 + $(EXTRACT_BZ2) + +.matroska: libmatroska .ebml +ifdef HAVE_WIN32 + (cd $<; make -C make/mingw32 prefix=$(PREFIX) $(HOSTCC) SHARED=no EBML_DLL=no libmatroska.a && make -C make/linux install_staticlib install_headers prefix=$(PREFIX) $(HOSTCC)) +else + (cd $<; make -C make/linux prefix=$(PREFIX) $(HOSTCC) staticlib && make -C make/linux install_staticlib install_headers prefix=$(PREFIX)) + $(RANLIB) $(PREFIX)/lib/libmatroska.a +endif + touch $@ + + +CLEAN_FILE += .matroska +CLEAN_PKG += libmatroska +DISTCLEAN_PKG += libmatroska-$(LIBMATROSKA_VERSION).tar.bz2 + # *************************************************************************** # libvp8 @@ -916,9 +941,6 @@ DISTCLEAN_PKG += faad2-$(FAAD2_VERSION).tar.gz libvpx: $(GIT) clone git://review.webmproject.org/libvpx.git -ifdef HAVE_DARWIN_OS - patch -p0 < Patches/libvpx-darwin.patch -endif ifdef HAVE_WIN32 VPX_TARGET=x86-win32-gcc @@ -968,56 +990,6 @@ CLEAN_FILE += .lame CLEAN_PKG += lame DISTCLEAN_PKG += lame-$(LAME_VERSION).tar.gz -# *************************************************************************** -# libebml -# *************************************************************************** - -libebml-$(LIBEBML_VERSION).tar.bz2: - $(WGET) $(LIBEBML_URL) - -libebml: libebml-$(LIBEBML_VERSION).tar.bz2 - $(EXTRACT_BZ2) - patch -p0 < Patches/libebml-win32.patch - -.ebml: libebml -ifdef HAVE_WIN32 - (cd $<; make -C make/mingw32 prefix=$(PREFIX) $(HOSTCC) CFLAGS="$(CFLAGS) -DWIN32" SHARED=no && make -C make/linux install_staticlib install_headers prefix=$(PREFIX) $(HOSTCC)) -else - (cd $<; make -C make/linux prefix=$(PREFIX) $(HOSTCC2) staticlib && make -C make/linux install_staticlib install_headers prefix=$(PREFIX)) - $(RANLIB) $(PREFIX)/lib/libebml.a -endif - touch $@ - -CLEAN_FILE += .ebml -CLEAN_PKG += libebml -DISTCLEAN_PKG += libebml-$(LIBEBML_VERSION).tar.bz2 - -# *************************************************************************** -# libmatroska -# *************************************************************************** - -libmatroska-$(LIBMATROSKA_VERSION).tar.bz2: - $(WGET) $(LIBMATROSKA_URL) - -libmatroska: libmatroska-$(LIBMATROSKA_VERSION).tar.bz2 - $(EXTRACT_BZ2) -ifdef HAVE_WIN32 - patch -p0 < Patches/libmatroska-win32.patch -endif - -.matroska: libmatroska .ebml -ifdef HAVE_WIN32 - (cd $<; make -C make/mingw32 prefix=$(PREFIX) $(HOSTCC) SHARED=no EBML_DLL=no libmatroska.a && make -C make/linux install_staticlib install_headers prefix=$(PREFIX) $(HOSTCC)) -else - (cd $<; make -C make/linux prefix=$(PREFIX) $(HOSTCC) staticlib && make -C make/linux install_staticlib install_headers prefix=$(PREFIX)) - $(RANLIB) $(PREFIX)/lib/libmatroska.a -endif - touch $@ - - -CLEAN_FILE += .matroska -CLEAN_PKG += libmatroska -DISTCLEAN_PKG += libmatroska-$(LIBMATROSKA_VERSION).tar.bz2 # *************************************************************************** # libamrnb @@ -1065,7 +1037,7 @@ ifdef SVN ifdef HAVE_WIN32 ffmpeg: .dshow_headers else -ffmpeg: +ffmpeg: endif $(SVN) co $(FFMPEG_SVN) ffmpeg ifdef HAVE_ISA_THUMB @@ -1079,6 +1051,9 @@ ifdef HAVE_UCLIBC patch -p0 < Patches/ffmpeg-svn-internal-define.patch patch -p0 < Patches/ffmpeg-svn-libavformat.patch endif +ifdef HAVE_WIN32 + sed -i "s/std=c99/std=gnu99/" ffmpeg/configure +endif else ffmpeg-$(FFMPEG_VERSION).tar.gz: echo "ffmpeg snapshot is too old, you MUST use subversion !" @@ -1093,12 +1068,13 @@ FFMPEGCONF += \ --disable-debug \ --enable-gpl \ --enable-postproc \ + --disable-ffprobe \ --disable-ffserver \ --disable-ffmpeg \ --disable-ffplay \ --disable-devices \ --disable-protocols \ - --disable-filters \ + --disable-avfilter \ --disable-network ifdef HAVE_WIN64 FFMPEGCONF += --disable-bzlib --disable-decoder=dca --disable-encoder=vorbis --enable-libmp3lame --enable-w32threads --disable-dxva2 --disable-bsfs @@ -1108,6 +1084,7 @@ FFMPEGCONF += --disable-bzlib --disable-decoder=dca --disable-encoder=vorbis --e else FFMPEGCONF += --enable-pthreads endif +FFMPEG_CFLAGS += --std=gnu99 endif ifdef HAVE_WINCE @@ -1116,10 +1093,14 @@ else ifdef HAVE_UCLIBC .ffmpeg: ffmpeg else -.ffmpeg: ffmpeg .lame .gsm .libvpx +ifeq ($(ARCH),armel) +.ffmpeg: ffmpeg .lame .gsm .zlib +else +.ffmpeg: ffmpeg .lame .gsm .libvpx .zlib endif endif - (cd $<; $(HOSTCC) ./configure --prefix=$(PREFIX) --extra-cflags="$(CFLAGS) $(FFMPEG_CFLAGS) -DHAVE_STDINT_H" --extra-ldflags="$(LDFLAGS)" $(FFMPEGCONF) --disable-shared --enable-static && make && make install-libs install-headers) +endif + (cd $<; $(HOSTCC) ./configure --prefix=$(PREFIX) --extra-cflags="$(FFMPEG_CFLAGS) -DHAVE_STDINT_H" --extra-ldflags="$(LDFLAGS)" $(FFMPEGCONF) --disable-shared --enable-static && make && make install-libs install-headers) touch $@ ifdef SVN @@ -1165,15 +1146,6 @@ CLEAN_FILE += .dvdcss CLEAN_PKG += libdvdcss DISTCLEAN_PKG += libdvdcss-$(LIBDVDCSS_VERSION).tar.bz2 -# *************************************************************************** -# dummy dvdread to trigger the INSTALL_NAME script -# *************************************************************************** -# .dvdread: .dvdnav -# $(INSTALL_NAME) -# touch $@ -# -# CLEAN_FILE += .dvdread - # *************************************************************************** # libdvdread: We use dvdnav's dvdread # *************************************************************************** @@ -1229,14 +1201,30 @@ CLEAN_FILE += .dvdnav CLEAN_PKG += libdvdnav DISTCLEAN_PKG += libdvdnav-$(LIBDVDNAV_VERSION).tar.bz2 +# *************************************************************************** +# libbluray +# *************************************************************************** + +libbluray: + $(GIT) clone git://git.videolan.org/libbluray.git + +.libbluray: libbluray + (cd $<; ./bootstrap; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install) + $(INSTALL_NAME) + touch $@ + +CLEAN_FILE += .libbluray +CLEAN_PKG += libbluray + + # *************************************************************************** # libdvbpsi # *************************************************************************** -libdvbpsi5-$(LIBDVBPSI_VERSION).tar.gz: +libdvbpsi-$(LIBDVBPSI_VERSION).tar.gz: $(WGET) $(LIBDVBPSI_URL) -libdvbpsi: libdvbpsi5-$(LIBDVBPSI_VERSION).tar.gz +libdvbpsi: libdvbpsi-$(LIBDVBPSI_VERSION).tar.gz $(EXTRACT_GZ) .dvbpsi: libdvbpsi @@ -1246,7 +1234,7 @@ libdvbpsi: libdvbpsi5-$(LIBDVBPSI_VERSION).tar.gz CLEAN_FILE += .dvbpsi CLEAN_PKG += libdvbpsi -DISTCLEAN_PKG += libdvbpsi5-$(LIBDVBPSI_VERSION).tar.gz +DISTCLEAN_PKG += libdvbpsi-$(LIBDVBPSI_VERSION).tar.gz # *************************************************************************** # live @@ -1348,17 +1336,20 @@ libcaca-$(LIBCACA_VERSION).tar.gz: libcaca: libcaca-$(LIBCACA_VERSION).tar.gz $(EXTRACT_GZ) - patch -p0 < Patches/libcaca-static.patch ifdef HAVE_DARWIN_OS patch -p0 < Patches/libcaca-osx-sdkofourchoice.patch (cd $@; sed -e 's%/Developer/SDKs/MacOSX10.4u.sdk%$(MACOSX_SDK)%' -i.orig configure) endif +ifdef HAVE_WIN32 + patch -p0 < Patches/libcaca-win32-static.patch +endif + .caca: libcaca -ifdef HAVE_WIN32 - (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --enable-win32 --disable-x11 --disable-imlib2 --disable-doc --disable-ruby --disable-csharp --disable-cxx && make && make install) +ifdef HAVE_DARWIN_OS + (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-imlib2 --disable-doc --disable-ruby --disable-csharp --disable-cxx --disable-x11 && cd caca && make && make install) else - (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-imlib2 --disable-doc --disable-ruby --disable-csharp --disable-cxx && make && make install) + (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-imlib2 --disable-doc --disable-ruby --disable-csharp --disable-cxx && cd caca && make && make install) endif touch $@ @@ -1447,10 +1438,6 @@ libmodplug-$(MODPLUG_VERSION).tar.gz: libmodplug: libmodplug-$(MODPLUG_VERSION).tar.gz $(EXTRACT_GZ) -ifdef HAVE_WIN32 - patch -p0 < Patches/libmodplug-win32.patch - (cd $@; autoreconf -ivf ) -endif .mod: libmodplug (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-shared --enable-static && make && make install) @@ -1595,10 +1582,10 @@ DISTCLEAN_PKG += qt-win-opensource-$(QT4T_VERSION)-mingw.exe # qt4 (source-code compilation for Mac) # *************************************************************************** -qt-mac-opensource-src-$(QT4_MAC_VERSION).tar.gz: +qt-everywhere-opensource-src-$(QT4_MAC_VERSION).tar.gz: $(WGET) $(QT4_MAC_URL) -qt4_mac: qt-mac-opensource-src-$(QT4_MAC_VERSION).tar.gz +qt4_mac: qt-everywhere-opensource-src-$(QT4_MAC_VERSION).tar.gz $(EXTRACT_GZ) .qt4_mac: qt4_mac @@ -1618,10 +1605,11 @@ zlib-$(ZLIB_VERSION).tar.gz: zlib: zlib-$(ZLIB_VERSION).tar.gz $(EXTRACT_GZ) - patch -p0 < Patches/zlib.patch + patch -p0 < Patches/zlib-wince.patch + patch -p0 < Patches/zlib-static.patch .zlib: zlib - (cd zlib; $(HOSTCC2) ./configure --prefix=$(PREFIX) && make install) + (cd zlib; $(HOSTCC) ./configure --prefix=$(PREFIX) --static && make install) $(INSTALL_NAME) touch $@ @@ -1718,9 +1706,6 @@ else (cat Patches/libpng-osx.patch | sed -e 's%??PREFIX??%$(PREFIX)%' -e 's%??EXTRA_CFLAGS??%$(EXTRA_CFLAGS)%' -e 's%??EXTRA_LDFLAGS??%$(EXTRA_LDFLAGS)%' | patch -p0) endif (patch -p0 < Patches/libpng-makefile.patch) -ifdef HAVE_DARWIN_OS_ON_INTEL - (patch -p0 < Patches/libpng-darwin-mactel.patch) -endif .png: libpng .zlib ifdef HAVE_DARWIN_OS @@ -1825,6 +1810,10 @@ libgpg-error-$(GPGERROR_VERSION).tar.bz2: libgpg-error: libgpg-error-$(GPGERROR_VERSION).tar.bz2 $(EXTRACT_BZ2) +ifdef HAVE_WIN32 +# patch -p 0 < Patches/libgpg-error-win32.patch +# (cd $@; ./autogen.sh) +endif .gpg-error: libgpg-error ifdef HAVE_DARWIN_OS_ON_INTEL @@ -2120,8 +2109,12 @@ dshow-headers.tgz: dxva2api.h: $(WGET) $(DXVA2_URL) -.dshow_headers: dshow-headers.tgz dxva2api.h +d2d_headers.tar.gz: + $(WGET) $(D2D_URL) -O $@ + +.dshow_headers: dshow-headers.tgz dxva2api.h d2d_headers.tar.gz tar xzf $< -C $(PREFIX)/include + tar xzf d2d_headers.tar.gz -C $(PREFIX)/include cp dxva2api.h $(PREFIX)/include touch $@ @@ -2149,31 +2142,6 @@ CLEAN_FILE += .expat CLEAN_PKG += expat DISTCLEAN_PKG += expat-$(EXPAT_VERSION).tar.gz -# *************************************************************************** -# CyberLink C++ UPnP library -# *************************************************************************** - -clinkcc$(CLINKCC_VERSION).tar.gz: - $(WGET) $(CLINKCC_URL) - -clinkcc: clinkcc$(CLINKCC_VERSION).tar.gz - tar xzf $< - mv $(patsubst %.tar.gz,Cyberlink,$(patsubst %.tgz,Cyberlink,$(notdir $<))) $@ || true - touch $@ - patch -p0 < Patches/clinkcc.patch -ifdef HAVE_DARWIN_OS - patch -p0 < Patches/clinkcc_osx.patch -endif - (cd $@; ./bootstrap) - -.clinkcc: clinkcc - (cd $<;./configure --prefix=$(PREFIX) --enable-expat && make && chmod 755 config/install-sh && make install ) - touch $@ - -CLEAN_FILE += .clinkcc -CLEAN_PKG += clinkcc -DISTCLEAN_PKG += clinkcc$(CLINKCC_VERSION).tar.gz - # *************************************************************************** # YASM assembler # *************************************************************************** @@ -2439,9 +2407,19 @@ libupnp-$(UPNP_VERSION).tar.bz2: libupnp: libupnp-$(UPNP_VERSION).tar.bz2 $(EXTRACT_BZ2) + patch -p0 < Patches/libupnp-mingw.patch +ifdef HAVE_WIN32 + patch -p0 < Patches/libupnp-win32.patch + patch -p0 < Patches/libupnp-configure.patch + cd $@; libtoolize&& autoreconf +endif + +ifdef HAVE_WIN32 +LIBUPNP_ECFLAGS=-DPTW32_STATIC_LIB +endif .libupnp: libupnp - (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-samples --without-documentation --disable-webserver CFLAGS="$(CFLAGS) -O3" && make && make install) + (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-samples --without-documentation --enable-static --disable-webserver CFLAGS="$(CFLAGS) -O3 -DUPNP_STATIC_LIB $(LIBUPNP_ECFLAGS)" && make && make install) touch $@ CLEAN_FILE += .libupnp @@ -2498,15 +2476,15 @@ DISTCLEAN_PKG += glew-$(GLEW_VERSION)-src.tgz # *************************************************************************** # projectM # *************************************************************************** -libprojectM-$(LIBPROJECTM_VERSION)-Source.tar.gz: +projectM-$(LIBPROJECTM_VERSION)-Source.tar.gz: $(WGET) $(LIBPROJECTM_URL) -libprojectM: libprojectM-$(LIBPROJECTM_VERSION)-Source.tar.gz +libprojectM: projectM-$(LIBPROJECTM_VERSION)-Source.tar.gz rm -rf $@ || true gunzip -c $< | tar xf - --exclude='[*?:<>\|]' mv projectM-$(LIBPROJECTM_VERSION)-Source $@ || true patch -p0 < Patches/libprojectM-win32.patch - cd $@; rm CMakeCache.txt + -cd $@; rm CMakeCache.txt .libprojectM: libprojectM .glew (cd $<; $(HOSTCC) CPPFLAGS="$(CPPFLAGS)" cmake . -DCMAKE_TOOLCHAIN_FILE=../../toolchain.cmake -DINCLUDE-PROJECTM-LIBVISUAL:BOOL=OFF -DDISABLE_NATIVE_PRESETS:BOOL=ON -DUSE_FTGL:BOOL=OFF -DINCLUDE-PROJECTM-PULSEAUDIO:BOOL=OFF -DINCLUDE-PROJECTM-QT:BOOL=OFF -DBUILD_PROJECTM_STATIC:BOOL=ON -DCMAKE_INSTALL_PREFIX=$(PREFIX) && make install)