X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=extras%2Fcontrib%2Fsrc%2FMakefile;h=ff8eab463daeac1879878cfb4b85dc00c23a5c09;hb=85fadc92b7c93bd2f74e7dae13d602a0adbbe0ea;hp=6fe27f75875aeaad5c82ac72f40a015eac846948;hpb=e2ae35588014ad882f634d20ed573af389ad5e0c;p=vlc diff --git a/extras/contrib/src/Makefile b/extras/contrib/src/Makefile index 6fe27f7587..ff8eab463d 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 @@ -376,9 +377,6 @@ gettext-$(GETTEXT_VERSION).tar.gz: gettext: gettext-$(GETTEXT_VERSION).tar.gz $(EXTRACT_GZ) -ifdef HAVE_WIN32 - patch -p0 < Patches/gettext-win32.patch -endif ifdef HAVE_DARWIN_OS patch -p0 < Patches/gettext-macosx.patch endif @@ -392,18 +390,18 @@ endif ifneq ($(HOST),$(BUILD)) ifndef HAVE_CYGWIN # We'll use the installed gettext and only need to cross-compile libintl, also build autopoint and gettextsize tools need for VLC bootstrap - ( cd $< && make -C gettext-runtime/intl && patch -p1 < ../Patches/libintl.patch && make -C gettext-runtime/intl install && make -C gettext-tools/misc install ) + ( cd $< && make -C gettext-runtime/intl && make -C gettext-runtime/intl install && make -C gettext-tools/misc install ) else # We are compiling for MinGW on Cygwin -- build the full current gettext - ( cd $< && make && patch -p1 < ../Patches/libintl.patch && make install ) + ( cd $< && make && make install ) endif else # Build and install the whole gettext - ( cd $< && make && patch -p1 < ../Patches/libintl.patch && make install ) + ( cd $< && make && make install ) endif # Work around another non-sense of autoconf. ifdef HAVE_WIN32 - (cd $(PREFIX)/include; sed -i.orig '311 c #if 0' libintl.h) + (cd $(PREFIX)/include; sed -i.orig '314 c #if 0' libintl.h) endif $(INSTALL_NAME) touch $@ @@ -693,7 +691,7 @@ libogg-$(OGG_VERSION).tar.gz: libogg: libogg-$(OGG_VERSION).tar.gz $(EXTRACT_GZ) - patch -p0 < Patches/ogg.patch + patch -p0 < Patches/libogg-inttypes.patch patch -p0 < Patches/libogg-1.1.patch ifdef HAVE_WINCE patch -p0 < Patches/libogg-wince.patch @@ -909,6 +907,50 @@ CLEAN_FILE += .faad CLEAN_PKG += faad2 DISTCLEAN_PKG += faad2-$(FAAD2_VERSION).tar.gz + +# *************************************************************************** +# libvp8 +# *************************************************************************** + +#ibvpx-$(VPX_VERSION).tar.bz2: +#$(WGET) $(VPX_URL) + +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 +CROSS= +else +ifdef HAVE_DARWIN_OS +ifdef HAVE_DARWIN_64 +VPX_TARGET=x86_64-darwin9-gcc +else +ifdef HAVE_DARWIN_OS_ON_INTEL +VPX_TARGET=x86-darwin9-gcc +else +VPX_TARGET=ppc32-darwin9-gcc +endif +endif +else +VPX_TARGET=FIXME +endif +endif + +.libvpx: libvpx + (cd $<; CROSS=$(HOST)- ./configure --target=$(VPX_TARGET) --disable-install-bins --disable-install-srcs --disable-install-libs --disable-examples && make && make install) + (rm -rf $(PREFIX)/include/vpx/ && mkdir $(PREFIX)/include/vpx/; cd $< && cp vpx/*.h vpx_ports/*.h $(PREFIX)/include/vpx/) # Of course, why the hell would one expect it to be listed or in make install? + rm $(PREFIX)/include/vpx/config.h + (cd $<; $(RANLIB) libvpx.a && cp libvpx.a $(PREFIX)/lib) # Of course, why the hell would one expect it to be listed or in make install? + touch $@ + +CLEAN_FILE += .libvpx +CLEAN_PKG += libvpx +#DISTCLEAN_PKG += libvpx-$(VPX_VERSION).tar.bz2 + # *************************************************************************** # lame # *************************************************************************** @@ -936,16 +978,10 @@ libebml-$(LIBEBML_VERSION).tar.bz2: libebml: libebml-$(LIBEBML_VERSION).tar.bz2 $(EXTRACT_BZ2) -ifdef HAVE_WIN32 - (cd $@; patch -p0 < ../Patches/libebml-svn-win32.patch) -endif -ifdef HAVE_WIN64 - patch -p0 < Patches/libebml-win64.patch -endif .ebml: libebml ifdef HAVE_WIN32 - (cd $<; make -C make/mingw32 prefix=$(PREFIX) $(HOSTCC2) CFLAGS="$(CFLAGS) -DWIN32" SHARED=no && make -C make/linux install_staticlib install_headers prefix=$(PREFIX) $(HOSTCC2)) + (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 @@ -965,16 +1001,12 @@ libmatroska-$(LIBMATROSKA_VERSION).tar.bz2: libmatroska: libmatroska-$(LIBMATROSKA_VERSION).tar.bz2 $(EXTRACT_BZ2) - patch -p0 < ./Patches/libmatroska-kaxblock.patch -ifdef HAVE_WIN32 - (cd $@; patch -p0 < ../Patches/libmatroska-win32.patch) -endif .matroska: libmatroska .ebml ifdef HAVE_WIN32 - (cd $<; make -C make/mingw32 prefix=$(PREFIX) $(HOSTCC2) SHARED=no EBML_DLL=no libmatroska.a && make -C make/linux install_staticlib install_headers prefix=$(PREFIX) $(HOSTCC2)) + (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) $(HOSTCC2) staticlib && make -C make/linux install_staticlib install_headers prefix=$(PREFIX)) + (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 $@ @@ -1036,6 +1068,9 @@ endif 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 @@ -1063,12 +1098,12 @@ FFMPEGCONF += \ --disable-filters \ --disable-network ifdef HAVE_WIN64 -FFMPEGCONF += --disable-bzlib --disable-decoder=dca --disable-encoder=vorbis --enable-libmp3lame --enable-w32threads --disable-dxva2 --disable-bsfs +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=vorbis --enable-libmp3lame --enable-w32threads --enable-dxva2 --disable-bsfs +FFMPEGCONF += --disable-bzlib --disable-decoder=dca --disable-encoder=vorbis --enable-libmp3lame --enable-w32threads --enable-dxva2 --disable-bsfs --enable-libvpx else -FFMPEGCONFG += --enable-pthreads +FFMPEGCONF += --enable-pthreads endif endif @@ -1078,10 +1113,14 @@ else ifdef HAVE_UCLIBC .ffmpeg: ffmpeg else -.ffmpeg: ffmpeg .lame .gsm +ifeq ($(ARCH),armel) +.ffmpeg: ffmpeg .lame .gsm .zlib +else +.ffmpeg: ffmpeg .lame .gsm .libvpx .zlib +endif endif endif - (cd $<; $(HOSTCC) ./configure --prefix=$(PREFIX) --extra-cflags="$(CFLAGS) $(FFMPEG_CFLAGS)" --extra-ldflags="$(LDFLAGS)" $(FFMPEGCONF) --disable-shared --enable-static && make && make install-libs install-headers) + (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) touch $@ ifdef SVN @@ -1284,7 +1323,7 @@ goom$(GOOM2k4_VERSION).tar.gz: goom: goom$(GOOM2k4_VERSION).tar.gz $(EXTRACT_GZ) ifdef HAVE_WIN32 - (cd $@; dos2unix configure.in) + (cd $@; fromdos configure.in) patch -p0 < Patches/goom2k4-0-win32.patch else patch -p0 < Patches/goom2k4-0-mmx.patch @@ -1363,19 +1402,11 @@ x264: ifdef HAVE_WIN32 (cd x264; patch -p0 < ../Patches/x264-svn-win32.patch ) endif - else +x264: + echo "x264 snapshot is too old, you MUST use Git !" + exit -1 -x264: x264-$(X264_VERSION).tar.gz - $(EXTRACT_GZ) -ifdef HAVE_WIN32 - ifndef HAVE_CYGWIN - (cd x264;patch -p0 <../Patches/x264-20050624-win32.patch) - endif -else - patch -p0 < Patches/x264.patch - rm x264/x264.c -endif endif ifdef HAVE_WIN32 @@ -1588,10 +1619,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 $@ @@ -1899,55 +1931,12 @@ CLEAN_FILE += .opendaap CLEAN_PKG += libopendaap DISTCLEAN_PKG += libopendaap-$(DAAP_VERSION).tar.bz2 -# *************************************************************************** -# glib -# *************************************************************************** - -glib-$(GLIB_VERSION).tar.bz2: - $(WGET) $(GLIB_URL) - -glib: glib-$(GLIB_VERSION).tar.bz2 - $(EXTRACT_BZ2) - (cd $@; patch -p0 < ../Patches/glib-remove-gtkdoc.patch) -ifdef HAVE_DARWIN_64 - (cd $@; patch -p0 < ../Patches/glib-Darwin64.patch) -endif - -.glib: glib - (cd $<; sh autogen.sh --prefix=$(PREFIX) --host=$(HOST) && make && make install) - touch $@ - -CLEAN_FILE += .glib -CLEAN_PKG += glib -DISTCLEAN_PKG += glib-$(GLIB_VERSION).tar.gz - -# *************************************************************************** -# libIDL -# *************************************************************************** - -libIDL-$(LIBIDL_VERSION).tar.bz2: - $(WGET) $(LIBIDL_URL) - -libIDL: libIDL-$(LIBIDL_VERSION).tar.bz2 - $(EXTRACT_BZ2) - -.IDL: libIDL - (cd $<; ./configure --prefix=$(PREFIX) --host=$(HOST) && make && make install ) - touch $@ - -CLEAN_FILE += .IDL -CLEAN_PKG += libIDL -DISTCLEAN_PKG += libIDL-$(LIBIDL_VERSION).tar.gz - # *************************************************************************** # Gecko SDK # *************************************************************************** -xulrunner-1.9.2.en-US.mac-i386.sdk.tar.bz2: - $(WGET) $(GECKO_SDK_MAC_URL) - -gecko-sdk: xulrunner-1.9.2.en-US.mac-i386.sdk.tar.bz2 - $(EXTRACT_BZ2) +gecko-sdk: + $(SVN) co $(NPAPI_HEADERS_SVN_URL) -r $(NPAPI_HEADERS_SVN_REVISION) gecko-sdk/include .gecko: gecko-sdk rm -rf $(PREFIX)/gecko-sdk @@ -1958,60 +1947,7 @@ gecko-sdk: xulrunner-1.9.2.en-US.mac-i386.sdk.tar.bz2 CLEAN_FILE += .gecko CLEAN_PKG += gecko-sdk -DISTCLEAN_PKG += xulrunner-1.9.2.en-US.mac-i386.sdk.tar.bz2 - -# *************************************************************************** -# Gecko SDK win32 -# *************************************************************************** - -xulrunner-1.9.2.en-US.win32.sdk.zip: - $(WGET) $(GECKO_SDK_WIN32_URL) - -libIDL-0.6.3-win32-bin.zip: - $(WGET) $(LIBIDL_WIN32_BIN_URL) - -glib-19990228.zip: - $(WGET) $(GLIB_WIN32_BIN_URL) - -.gecko-win32: xulrunner-1.9.2.en-US.win32.sdk.zip libIDL-0.6.3-win32-bin.zip glib-19990228.zip - unzip xulrunner-1.9.2.en-US.win32.sdk.zip - rm -rf $(PREFIX)/gecko-sdk - mv xulrunner-sdk $(PREFIX)/gecko-sdk - unzip -j libIDL-0.6.3-win32-bin.zip libIDL-0.6.3-win32-bin/libIDL-0.6.dll -d $(PREFIX)/gecko-sdk/bin - unzip glib-19990228.zip glib-1.2.dll -d $(PREFIX)/gecko-sdk/bin - chmod a+x $(PREFIX)/gecko-sdk/bin/* - touch $@ - -CLEAN_FILE += .gecko-win32 -CLEAN_PKG += gecko-sdk-win32 -DISTCLEAN_PKG += xulrunner-1.9.2.en-US.win32.sdk.zip libIDL-0.6.3-win32-bin.zip glib-19990228.zip - -# *************************************************************************** -# mozilla-macosx -# -# Note that this dependency needs to be compiled against the 10.4u SDK using -# using GCC-4.0. Using newer releases of one of these won't lead to a -# successful compilation! Adapt the respective variables in ../config.mak! -# *************************************************************************** - -firefox-$(MOZILLA_VERSION)-source.tar.bz2: - $(WGET) $(MOZILLA_URL) - -mozilla: firefox-$(MOZILLA_VERSION)-source.tar.bz2 - $(EXTRACT_BZ2) - (cd $@; patch -p0 < ../Patches/firefox-darwin.patch) - -.mozilla-macosx: mozilla .glib .IDL - ifneq($(SDK_TARGET),"10.4") - echo "Compiling the mozilla target requires the 10.4 SDK!" - exit -1 - endif - (cd $<; ./configure --prefix=$(PREFIX)/gecko-sdk-new --enable-default-toolkit=cairo-cocoa --enable-standalone-modules=xpcom,plugin --enable-application=xulrunner && make && make install) - touch $@ - -CLEAN_FILE += .mozilla-macosx -CLEAN_PKG += mozilla -DISTCLEAN_PKG += firefox-source-$(MOZILLA_VERSION).tar.bz2 +DISTCLEAN_PKG += gecko-sdk # *************************************************************************** # libjpeg @@ -2325,7 +2261,7 @@ ifdef HAVE_CYGWIN endif .tag: taglib - (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install) + (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --enable-mp4 --enable-asf --prefix=$(PREFIX) && make && make install) $(INSTALL_NAME) touch $@ @@ -2394,11 +2330,13 @@ endif --disable-ladspa \ --disable-oss-support \ --disable-alsa-support \ + --disable-pulse-support \ --disable-midishare \ --disable-jack-support \ --disable-coreaudio \ --disable-lash \ --disable-ladcca \ + --disable-portaudio-support \ --without-readline cd $< && make cd $< && make install @@ -2412,28 +2350,24 @@ DISTCLEAN_PKG += fluidsynth-$(FLUID_VERSION).tar.gz # liboil # *************************************************************************** -liboil-$(OIL_VERSION).tar.gz: - $(WGET) $(OIL_URL) +orc-$(ORC_VERSION).tar.gz: + $(WGET) $(ORC_URL) -liboil: liboil-$(OIL_VERSION).tar.gz +orc: orc-$(ORC_VERSION).tar.gz $(EXTRACT_GZ) - patch -d liboil -p1 < Patches/liboil-noshared.patch - patch -d liboil -p1 < Patches/liboil-win64.patch - patch -d liboil -p1 < Patches/liboil-Xcompile.patch - (cd $@; autoreconf) -.liboil: liboil +.orc: orc ifdef HAVE_DARWIN_OS (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS)") else - (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS) -O2") + (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX)) endif (cd $<; make && make install) touch $@ -CLEAN_FILE += .liboil -CLEAN_PKG += liboil -DISTCLEAN_PKG += liboil-$(OIL_VERSION).tar.gz +CLEAN_FILE += .orc +CLEAN_PKG += orc +DISTCLEAN_PKG += orc-$(ORC_VERSION).tar.gz # *************************************************************************** # Schroedinger library @@ -2447,8 +2381,14 @@ schroedinger: schroedinger-$(SCHROED_VERSION).tar.gz patch -p0 < Patches/schroedinger-notests.patch (cd $@; autoreconf -iv) -.schroedinger: schroedinger .liboil - (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --with-thread=none --disable-gtk-doc --prefix=$(PREFIX) CFLAGS="$(CFLAGS) -O3" && make && make install) +ifdef HAVE_WIN32 +ORCC="wine $(PREFIX)/bin/orcc.exe" +else +ORCC="orcc" +endif + +.schroedinger: schroedinger .orc + (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --with-thread=none --disable-gtk-doc --prefix=$(PREFIX) CFLAGS="$(CFLAGS) -O3" && make ORCC=$(ORCC) && make install) touch $@ CLEAN_FILE += .schroedinger