X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=extras%2Fcontrib%2Fsrc%2FMakefile;h=39a289c314fb952d9e41b7ae2ff80763b3f9989c;hb=91ef82f27f57a462ba9698d18210bbf2f71163d4;hp=b8c2b3c432748f18f807b5a98a7c902e5d22d530;hpb=3d9f01dcaa5224bd6682447347991818bab63819;p=vlc diff --git a/extras/contrib/src/Makefile b/extras/contrib/src/Makefile index b8c2b3c432..39a289c314 100644 --- a/extras/contrib/src/Makefile +++ b/extras/contrib/src/Makefile @@ -1,13 +1,13 @@ # *************************************************************************** # src/Makefile : Dearchive and compile all files necessary # *************************************************************************** -# Copyright (C) 2003 - 2005 the VideoLAN team +# Copyright (C) 2003 - 2006 the VideoLAN team # $Id$ # # Authors: Christophe Massiot # Derk-Jan Hartman # Eric Petit -# Felix Kühne +# Felix Kühne # Christophe Mutricy # Gildas Bazin # @@ -23,7 +23,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. # *************************************************************************** include ../config.mak @@ -36,6 +36,7 @@ include ./packages.mak export PATH := $(PREFIX)/bin:$(EXTRA_PATH):$(PATH) export PKG_CONFIG_PATH export DYLD_LIBRARY_PATH = $(PREFIX)/lib +export MACOSX_DEPLOYMENT_TARGET = $(SDK_TARGET) export LIBRARY_PATH := $(PREFIX)/lib:$(LIBRARY_PATH) export CFLAGS = -I$(PREFIX)/include $(EXTRA_CFLAGS) $(EXTRA_CPPFLAGS) export CPPFLAGS = -I$(PREFIX)/include $(EXTRA_CFLAGS) $(EXTRA_CPPFLAGS) @@ -65,6 +66,11 @@ ifneq ($(AR),) HOSTCC+= AR="$(AR)" endif +# Define ranlib on non-cross compilation setups +ifeq ($(RANLIB),) +RANLIB=ranlib +endif + # For libebml/libmatroska. Grrr. ifneq ($(AR),) HOSTCC2=$(HOSTCC) AR="$(AR) rcvu" @@ -78,7 +84,7 @@ HOSTCONF=--host=$(HOST) --build=$(BUILD) FFMPEGCONF=--cross-prefix=$(HOST)- X264CONF=--crosscompile=$(HOST) else - ifneq ($CC,) + ifneq ($(CC),) FFMPEGCONF=--cc="$(CC)" endif endif @@ -93,7 +99,7 @@ endif ifdef HAVE_WINCE HOSTCONF+= --without-pic --disable-shared -FFMPEGCONF+= --enable-mingwce --cpu=armv4l --disable-debug --disable-encoders --disable-muxers --disable-mpegaudio-hp --disable-codec=snow --disable-codec=vc9 --disable-codec=wmv3 --disable-codec=vorbis --disable-codec=vorbis --disable-codec=dvdsub --disable-codec=dvbsub --disable-protocols +FFMPEGCONF+= --enable-mingwce --cpu=armv4l --disable-debug --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 else FFMPEGCONF+= --enable-mp3lame --enable-faac endif @@ -102,18 +108,27 @@ ifdef HAVE_BEOS FFMPEGCONF+= --cpu=x86 endif +ifeq ($(HOST),i686-apple-darwin8) +FFMPEGCONF += --enable-memalign-hack +endif + # *************************************************************************** # Standard rules # *************************************************************************** ifdef HAVE_DARWIN_OS - all: .autoconf .automake .libtool .iconv .intl .pkgcfg .freetype .fribidi \ - .a52 .mpeg2 .id3tag .mad .ogg .vorbis .vorbisenc .x264 .theora \ - .FLAC .speex .shout .faad .faac .lame .twolame .ebml .matroska .ffmpeg .openslp \ - .dvdcss .dvdnav .dvbpsi .live .goom2k4 .caca .mod \ + all: .autoconf .automake .libtool .intl .pkgcfg .freetype .fribidi \ + .a52 .mpeg2 .id3tag .mad .ogg .vorbis .vorbisenc .theora \ + .FLAC .speex .shout .faad .faac .lame .twolame .ebml .matroska .ffmpeg \ + .dvdcss .dvdnav .dvdread .dvbpsi .live .x264 .caca .mod \ .png .gpg-error .gcrypt .gnutls .opendaap .cddb .cdio .vcdimager .SDL_image \ - .glib .libidl .gecko .libmpcdec .expat .clinkcc .aclocal + .glib .libidl .gecko .mpcdec .expat .clinkcc .aclocal +# .FLAC .expat .clinkcc don't work with SDK yet +# .glib .libidl .gecko are required to build the mozilla plugin # .mozilla will build an entire mozilla. it can be used if we need to create a new .gecko package +ifneq ($(HOST),i686-apple-darwin8) +all: .goom2k4 +endif else ifdef HAVE_BEOS @@ -139,10 +154,10 @@ else .a52 .mpeg2 .id3tag .mad .ogg .vorbis .vorbisenc .theora \ .FLAC .speex .faad .faac .lame .ebml .matroska .ffmpeg .dvdcss \ .live .goom2k4 .caca .mod .x264 .xml .twolame \ - .png .gpg-error .gcrypt .gnutls .libmpcdec \ + .png .gpg-error .gcrypt .gnutls .mpcdec \ .gnutls .dvdnav .dvbpsi .wxwidgets .dirac \ .dx_headers .dshow_headers .aclocal .gecko-win32 -# .SDL_image .daap .cddb .cdio .vcdimager .dts .portaudio +# .SDL_image .daap .cddb .cdio .vcdimager .dts .portaudio else ifdef HAVE_WINCE @@ -155,7 +170,7 @@ else .a52 .mpeg2 .id3tag .mad .ogg .vorbis .vorbisenc .theora \ .FLAC .speex .faad .faac .lame .ebml .dts .matroska .ffmpeg .dvdcss \ .live .goom2k4 .caca .mod .x264 .xml .twolame\ - .png .gpg-error .gcrypt .gnutls .libmpcdec\ + .png .gpg-error .gcrypt .gnutls .mpcdec\ .gnutls .dvdnav .dvbpsi .wxwidgets .dirac \ .aclocal # .SDL_image .daap .cddb .cdio .vcdimager @@ -238,8 +253,7 @@ perl-$(PERL_VERSION).tar.gz: perl: perl-$(PERL_VERSION).tar.gz $(EXTRACT_GZ) - mv perl/hints/beos.sh perl/hints/beos.sh.orig - sed 's%prefix="/boot/home/config"%prefix="$(PREFIX)"%' < perl/hints/beos.sh.orig > perl/hints/beos.sh + sed -i.orig 's%prefix="/boot/home/config"%prefix="$(PREFIX)"%' perl/hints/beos.sh .perl: perl (cd $<; ./Configure -d -e && make && make install && ln -sf perl5/$(PERL_VERSION)/BePC-beos/CORE/libperl.so $(PREFIX)/lib/libperl.so) @@ -275,6 +289,7 @@ DISTCLEAN_PKG += autoconf-$(AUTOCONF_VERSION).tar.gz ifdef HAVE_DARWIN_OS .libtool: if test -x /usr/bin/glibtoolize; then \ + mkdir -p $(PREFIX)/bin ; \ ln -sf /usr/bin/glibtoolize $(PREFIX)/bin/libtoolize ; \ fi if test -f /usr/share/aclocal/libtool.m4; then \ @@ -328,6 +343,7 @@ pkgconfig-$(PKGCFG_VERSION).tar.gz: pkgconfig: pkgconfig-$(PKGCFG_VERSION).tar.gz $(EXTRACT_GZ) + patch -d pkgconfig/glib-1.2.8 -p 1 < Patches/glib.patch .pkgcfg: pkgconfig (cd pkgconfig; ./configure --prefix=$(PREFIX) --disable-shared --enable-static && make && make install) @@ -346,9 +362,6 @@ gettext-$(GETTEXT_VERSION).tar.gz: gettext: gettext-$(GETTEXT_VERSION).tar.gz $(EXTRACT_GZ) -ifdef HAVE_DARWIN_OS - patch -p 0 < Patches/gettext-osx.patch -endif .intl: gettext .iconv ifdef HAVE_WIN32 @@ -359,7 +372,7 @@ endif ifeq ($(BUILD),i586-pc-beos) # The ugliest kludge ever - so libtool correctly links shared libraries # on BeOS. Sorry, I just can't figure out how libtool works - ( cd $< && for f in `find . -name libtool`; do mv $$f $$f.orig; sed -e 's/ -shared / -nostart /' -e 's/^predep_objects.*/predep_objects=""/' < $$f.orig > $$f; chmod +x $$f; rm $$f.orig; done ) + ( cd $< && for f in `find . -name libtool`; do sed -e 's/ -shared / -nostart /' -e 's/^predep_objects.*/predep_objects=""/' -i $$f; chmod +x $$f; done ) endif ifneq ($(HOST),$(BUILD)) # We'll use the installed gettext and only need to cross-compile libintl @@ -370,7 +383,7 @@ else endif # Work around another non-sense of autoconf. ifdef HAVE_WIN32 - (cd ../include; sed -i.bak '283 c #if !1' libintl.h) + (cd ../include; sed -i.orig '283 c #if !1' libintl.h) endif $(INSTALL_NAME) touch $@ @@ -392,14 +405,15 @@ ifdef HAVE_DARWIN_OS patch -p 0 < Patches/libiconv.patch endif -.iconv: libiconv ifdef HAVE_DARWIN_OS - (cd libiconv; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-nls && make && make install) +.iconv: + touch $@ else +.iconv: libiconv (cd libiconv; CPPFLAGS="-Dssize_t=long" $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-nls && make && make install) -endif $(INSTALL_NAME) touch $@ +endif CLEAN_FILE += .iconv CLEAN_PKG += libiconv @@ -549,9 +563,11 @@ libogg-$(OGG_VERSION).tar.gz: libogg: libogg-$(OGG_VERSION).tar.gz $(EXTRACT_GZ) patch -p 0 < Patches/ogg.patch + patch -p 0 < Patches/libogg-1.1.patch ifdef HAVE_WINCE patch -p 0 < Patches/libogg-wince.patch endif + (cd $@; autoconf) .ogg: libogg (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make install) @@ -578,6 +594,8 @@ libvorbis-$(VORBIS_VERSION).tar.gz: libvorbis: libvorbis-$(VORBIS_VERSION).tar.gz $(EXTRACT_GZ) + patch -p 0 < Patches/libvorbis-1.1.patch + (cd $@; autoconf) .vorbis: libvorbis .ogg # FIXME: shared libs disabled for now because of linking errors @@ -630,6 +648,7 @@ libtheora-$(THEORA_VERSION).tar.bz2: libtheora: libtheora-$(THEORA_VERSION).tar.bz2 $(EXTRACT_BZ2) patch -p0 < Patches/theora.patch + (cd $@; autoconf) .theora: libtheora .ogg (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-sdltest --disable-oggtest --disable-vorbistest && make && make install) @@ -668,6 +687,9 @@ flac-$(FLAC_VERSION).tar.gz: flac: flac-$(FLAC_VERSION).tar.gz $(EXTRACT_GZ) +ifdef HAVE_DARWIN_OS + patch -p 0 < Patches/flac-mactel.patch +endif ifneq ($(HOST),$(BUILD)) (patch -p 0 < Patches/flac-cross.patch && cd $@ && autoconf) endif @@ -676,7 +698,7 @@ endif ifdef HAVE_WIN32 (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-oggtest --disable-asm-optimizations && cd src&& make -C libFLAC&& make -C libFLAC install && cd .. && make -C include install) else - (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-oggtest && cd src&& make -C libFLAC&& make -C libFLAC install && cd .. && make -C include install) + (cd $<; autoconf && $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-oggtest && cd src&& make -C libFLAC&& make -C libFLAC install && cd .. && make -C include install) endif $(INSTALL_NAME) touch $@ @@ -721,11 +743,11 @@ faad2-$(FAAD2_VERSION).tar.bz2: faad2: faad2-$(FAAD2_VERSION).tar.bz2 $(EXTRACT_BZ2) - (cd faad2; patch -p 0 < ../Patches/faad2.patch && ./bootstrap) + (cd $@; patch -p 0 < ../Patches/faad2.patch && ./bootstrap) .faad: faad2 (cd $< && $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="-O3" && make -C libfaad && make -C libfaad install) -ifndef HAVE_DARWIN +ifndef HAVE_DARWIN_OS $(INSTALL_NAME) endif touch $@ @@ -840,20 +862,17 @@ DISTCLEAN_PKG += libmatroska-$(LIBMATROSKA_VERSION).tar.bz2 ffmpeg: echo $(FFMPEG_CVSROOT) A > ./ffmpeg.cvs CVS_PASSFILE=./ffmpeg.cvs cvs -z3 -d $(FFMPEG_CVSROOT) co ffmpeg - (cd $@;patch -p 0 <../Patches/ffmpeg-cvs.patch) ifeq ($(HOST),i586-pc-beos) - patch -p 0 < Patches/ffmpeg-beos.patch.cvs - (cd $@; ./bootstrap) + (cd $@; patch -p 0 < ../Patches/ffmpeg-cvs-beos.patch) endif ifdef HAVE_WIN32 patch -p 0 < Patches/ffmpeg-cvs-win32.patch - patch -p 1 < Patches/ffmpeg-cvs-wince.patch endif ifdef HAVE_WINCE patch -p 1 < Patches/ffmpeg-cvs-wince.patch endif -ifdef HAVE_DARWIN_OS - patch -p 0 < Patches/ffmpeg-cvs-osx.patch +ifeq ($(HOST),i686-apple-darwin8) + (cd $@;patch -p 0 < ../Patches/ffmpeg-cvs-mactel.patch) endif ffmpeg-$(FFMPEG_VERSION).tar.gz: @@ -868,32 +887,13 @@ ifdef HAVE_WINCE else .ffmpeg: ffmpeg .faac .lame endif - (cd $<; $(HOSTCC) ./configure $(FFMPEGCONF) --prefix=$(PREFIX) --extra-cflags="$(CFLAGS) -DRUNTIME_CPUDETECT" --extra-ldflags="$(LDFLAGS)" --enable-gpl --enable-pp --disable-vhook --disable-ffserver --disable-network --enable-a52 --disable-ffplay && for dir in libavcodec/libpostproc libavcodec libavformat libavutil; do make -C $$dir && make -C $$dir installlib; done) + (cd $<; $(HOSTCC) ./configure $(FFMPEGCONF) --prefix=$(PREFIX) --extra-cflags="$(CFLAGS) -DRUNTIME_CPUDETECT" --extra-ldflags="$(LDFLAGS)" --enable-gpl --enable-pp --disable-vhook --disable-ffserver --disable-network --enable-a52 --disable-ffplay && make install-libs install-headers) touch $@ CLEAN_FILE += .ffmpeg CLEAN_PKG += ffmpeg ffmpeg.cvs DISTCLEAN_PKG += ffmpeg-$(FFMPEG_VERSION).tar.gz -# *************************************************************************** -# openslp -# *************************************************************************** - -openslp-$(OPENSLP_VERSION).tar.gz: - $(WGET) $(OPENSLP_URL) - -openslp: openslp-$(OPENSLP_VERSION).tar.gz - $(EXTRACT_GZ) - patch -p 0 < Patches/openslp.patch - -.openslp: openslp - (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make SUBDIRS="common libslpattr slpd libslp slptool" && make install SUBDIRS="common libslpattr slpd libslp slptool") - touch $@ - -CLEAN_FILE += .openslp -CLEAN_PKG += openslp -DISTCLEAN_PKG += openslp-$(OPENSLP_VERSION).tar.gz - # *************************************************************************** # libdvdcss # *************************************************************************** @@ -920,32 +920,42 @@ CLEAN_PKG += libdvdcss DISTCLEAN_PKG += libdvdcss-$(LIBDVDCSS_VERSION).tar.gz # *************************************************************************** -# libdvdread +# libdvdread: We use dvdnav's dvdread # *************************************************************************** -libdvdread-$(LIBDVDREAD_VERSION).tar.bz2: - $(WGET) $(LIBDVDREAD_URL) +#libdvdread-$(LIBDVDREAD_VERSION).tar.bz2: +# $(WGET) $(LIBDVDREAD_URL) -libdvdread: libdvdread-$(LIBDVDREAD_VERSION).tar.bz2 - $(EXTRACT_BZ2) - patch -p 0 < Patches/libdvdread.patch -ifdef HAVE_WIN32 +#libdvdread: libdvdread-$(LIBDVDREAD_VERSION).tar.bz2 +# $(EXTRACT_BZ2) +# patch -p 0 < Patches/libdvdread.patch +#ifdef HAVE_WIN32 # if automake-1.4 --version >/dev/null 2>&1; then \ # echo "Please get rid of your automake 1.4"; \ # rm -rf $@ \ # exit 1; \ # fi - (cd libdvdread; patch -p 0 < ../Patches/libdvdread-20041028-win32.patch; ./bootstrap) -endif +# (cd libdvdread; patch -p 0 < ../Patches/libdvdread-20041028-win32.patch; ./bootstrap) +#endif -.dvdread: libdvdread .dvdcss - (cd libdvdread; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --with-libdvdcss=$(PREFIX) && make && make install) +#.dvdread: libdvdread .dvdcss +# (cd libdvdread; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --with-libdvdcss=$(PREFIX) && make && make install) +# $(INSTALL_NAME) +# touch $@ + +#CLEAN_FILE += .dvdread +#CLEAN_PKG += libdvdread +#DISTCLEAN_PKG += libdvdread-$(LIBDVDREAD_VERSION).tar.bz2 + +# *************************************************************************** +# dummy dvdread to trigger the INSTALL_NAME script +# *************************************************************************** +.dvdread: .dvdnav $(INSTALL_NAME) + (install_name_tool -change $(PREFIX)/lib/libdvdread.0.dylib @executable_path/lib/vlc_libdvdread.dylib $(PREFIX)/vlc-lib/libdvdnav.dylib) touch $@ CLEAN_FILE += .dvdread -CLEAN_PKG += libdvdread -DISTCLEAN_PKG += libdvdread-$(LIBDVDREAD_VERSION).tar.bz2 # *************************************************************************** # libdvdnav @@ -957,13 +967,14 @@ libdvdnav-$(LIBDVDNAV_VERSION).tar.bz2: libdvdnav: libdvdnav-$(LIBDVDNAV_VERSION).tar.bz2 $(EXTRACT_BZ2) patch -p 0 < Patches/dvdnav.patch + patch -p 0 < Patches/libdvdnav-mactel.patch (cd $@; ./autogen.sh noconfig) .dvdnav: libdvdnav .dvdcss ifdef HAVE_WIN32 - (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --enable-static --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS) -Dssize_t=long -DHAVE_DVDCSS_DVDCSS_H" && make && make install) + (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --enable-static --prefix=$(PREFIX) --with-libdvdcss=$(PREFIX) CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS) -Dssize_t=long" && make && make install) else - (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --enable-static --prefix=$(PREFIX) CFLAGS="$(CFLAGS) -Dlseek64=lseek -Doff64_t=off_t -DHAVE_DVDCSS_DVDCSS_H" && make && make install) + (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --enable-static --prefix=$(PREFIX) --with-libdvdcss=$(PREFIX) CFLAGS="$(CFLAGS) -Dlseek64=lseek -Doff64_t=off_t" && make && make install) endif $(INSTALL_NAME) touch $@ @@ -1002,16 +1013,19 @@ live: live555-$(LIVEDOTCOM_VERSION).tar.gz $(EXTRACT_GZ) patch -p 0 < Patches/live.patch patch -p 0 < Patches/livedotcom-win32.patch - patch -p 0 < Patches/livedotcom-osx.patch + patch -p 0 < Patches/live-osx.patch .live: live -ifeq ($(HOST),ppc-darwin) - (cd $<; ./genMakefiles macosx-before-version-10.4 && make ) +ifeq ($(HOST),powerpc-apple-darwin8) + (cd $<; sed -e 's%EXTRA_CFLAGS%$(EXTRA_CFLAGS)%' -e 's%EXTRA_LDFLAGS%$(EXTRA_LDFLAGS)%' -i.orig config.macosx) + (cd $<; ./genMakefiles macosx && make) else -ifdef HAVE_WIN32 +ifeq ($(HOST),powerpc-apple-darwin*) + (cd $<; ./genMakefiles macosx-before-version-10.4 && make ) +elif defined( HAVE_WIN32 ) (cd $<;./genMakefiles mingw && make $(HOSTCC)) else - (cd $<; ./genMakefiles macosx && make ) + (cd $<;./genMakefiles linux && make ) endif endif touch $@ @@ -1100,7 +1114,7 @@ libdts-$(LIBDTS_VERSION).tar.gz: ifeq ($(HOST),i586-pc-beos) # libdts 0.0.2 doesn't compile on BeOS libdts: - svn co svn://svn.videolan.org/libdts/trunk libdts + $(SVN) co svn://svn.videolan.org/libdts/trunk libdts (cd $@; ./bootstrap) else libdts: libdts-$(LIBDTS_VERSION).tar.gz @@ -1123,9 +1137,9 @@ ifdef SVN x264: $(SVN) co svn://svn.videolan.org/x264/trunk/ x264 ifdef HAVE_WIN32 - (cd x264; patch -p 0 <../Patches/x264-svn-win32.patch ) + (cd x264; patch -p 0 < ../Patches/x264-svn-win32.patch ) else - cd x264 && patch -p 0 < ../Patches/x264_svn.patch + patch -p 0 < Patches/x264_svn.patch rm x264/x264.c endif else @@ -1142,8 +1156,12 @@ else endif endif +ifeq ($(HOST),i686-apple-darwin8) +.x264: x264 .nasm +else .x264: x264 - (cd $<; ./configure $(X264CONF) --prefix=$(PREFIX) && make && make install) +endif + (cd $<; ./configure $(X264CONF) --prefix="$(PREFIX)" && make && make install) touch $@ CLEAN_FILE += .x264 @@ -1172,12 +1190,11 @@ DISTCLEAN_PKG += libmodplug-$(MODPLUG_VERSION).tar.gz # libcddb # *************************************************************************** -libcddb-$(CDDB_VERSION).tar.gz: +libcddb-$(CDDB_VERSION).tar.bz2: $(WGET) $(CDDB_URL) -libcddb: libcddb-$(CDDB_VERSION).tar.gz - $(EXTRACT_GZ) - patch -p 0 < Patches/libcddb.patch +libcddb: libcddb-$(CDDB_VERSION).tar.bz2 + $(EXTRACT_BZ2) .cddb: libcddb (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-shared --enable-static CFLAGS="$(CFLAGS) -D_BSD_SOCKLEN_T_=int" LDFLAGS="$(LDFLAGS) -liconv" && make && make install) @@ -1297,6 +1314,9 @@ pa_snapshot_v$(PORTAUDIO_VERSION).tar.gz: portaudio: pa_snapshot_v$(PORTAUDIO_VERSION).tar.gz $(EXTRACT_GZ) +ifneq ($(HOST),$(BUILD)) + (patch -p 0 < Patches/portaudio-cross.patch;cd $@; autoconf) +endif .portaudio: portaudio (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install) @@ -1362,10 +1382,12 @@ libpng-$(PNG_VERSION).tar.bz2: libpng: libpng-$(PNG_VERSION).tar.bz2 $(EXTRACT_BZ2) - cat Patches/libpng.patch | sed s,PREFIX,$(PREFIX), | patch -p0 ifdef HAVE_WIN32 - (cd $@; cat ../Patches/libpng-1.2.5-win32.patch | sed s,££PREFIX££,$(PREFIX), | patch -p0) + (cd $@; cat ../Patches/libpng-1.2.5-win32.patch | sed s,??PREFIX??,$(PREFIX), | patch -p0) +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 + .png: libpng ifdef HAVE_DARWIN_OS (cd $<; cp scripts/makefile.macosx Makefile && make && make install) @@ -1412,7 +1434,7 @@ libgpg-error: libgpg-error-$(GPGERROR_VERSION).tar.gz $(EXTRACT_GZ) .gpg-error: libgpg-error - (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-nls && make && make install) + (cd $<; ./autogen.sh && libtoolize --force && $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-nls && make && make install) $(INSTALL_NAME) touch $@ @@ -1433,7 +1455,7 @@ libgcrypt: libgcrypt-$(GCRYPT_VERSION).tar.bz2 .gcrypt: libgcrypt .gpg-error ifdef HAVE_WIN32 - (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --target=i586-mingw32msvc --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" && make && make install) + (cd $<; ./autogen.sh && $(HOSTCC) ./configure $(HOSTCONF) --target=i586-mingw32msvc --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" && make && make install) else (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" && make && make install) endif @@ -1457,7 +1479,7 @@ gnutls: gnutls-$(GNUTLS_VERSION).tar.bz2 .gnutls: gnutls .gcrypt .gpg-error ifdef HAVE_WIN32 - (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" --target=i586-mingw32msvc && cd crypto && make && cd ../gl && make && cd ../lib &&make && make install && cd ../includes && make install) + (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" --target=i586-mingw32msvc && cd gl && make && cd ../lib &&make && make install && cd ../includes && make install) else (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" && cd crypto && make && cd ../gl && make && cd ../lib &&make && make install && cd ../includes && make install) endif @@ -1497,6 +1519,7 @@ glib-$(GLIB_VERSION).tar.gz: glib: glib-$(GLIB_VERSION).tar.gz $(EXTRACT_GZ) + patch -p 0 < Patches/glib.patch .glib: glib (cd $<; ./configure --prefix=$(PREFIX) --host=powerpc-apple-macos && make && make install) @@ -1684,23 +1707,26 @@ DISTCLEAN_PKG += SDL_image-$(SDL_IMAGE_VERSION).tar.gz libmpcdec-$(MUSE_VERSION).tar.bz2: $(WGET) $(MUSE_URL) -libmpcdec: libmpcdec-$(MUSE_VERSION).tar.bz2 +mpcdec: libmpcdec-$(MUSE_VERSION).tar.bz2 $(EXTRACT_BZ2) - patch -p 0 < Patches/libmpcdec.patch + patch -p 0 < Patches/mpcdec.patch ifdef HAVE_WIN32 (cd $@; ./autogen.sh) endif -.libmpcdec: libmpcdec +.mpcdec: mpcdec ifdef HAVE_WIN32 (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS=-D_PTRDIFF_T=mpc_int32_t && make && make install) else (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install) +endif +ifdef HAVE_DARWIN_OS + $(INSTALL_NAME) endif touch $@ -CLEAN_FILE += .libmpcdec -CLEAN_PKG += libmpcdec +CLEAN_FILE += .mpcdec +CLEAN_PKG += mpcdec DISTCLEAN_PKG += libmpcdec-$(MUSE_VERSION).tar.bz2 # *************************************************************************** @@ -1790,6 +1816,29 @@ CLEAN_FILE += .clinkcc CLEAN_PKG += clinkcc DISTCLEAN_PKG += clinkcc-$(CLINKCC_VERSION).tar.gz +# *************************************************************************** +# NASM assembler +# *************************************************************************** + +nasm-$(NASM_VERSION).tar.bz2: + $(WGET) $(NASM_URL) + +nasm: nasm-$(NASM_VERSION).tar.bz2 + $(EXTRACT_BZ2) + +#nasm: +# echo $(NASM_CVSROOT) A > ./nasm.cvs +# CVS_PASSFILE=./nasm.cvs cvs -z3 -d $(NASM_CVSROOT) co nasm +# (cd $@ && autoconf && autoheader) + +.nasm: nasm + (cd $< && $(HOSTCC) ./configure --prefix=$(PREFIX) && make && make install) + touch $@ + +CLEAN_FILE += .nasm +CLEAN_PKG += nasm nasm.cvs +DISTCLEAN_PKG += nasm-$(NASM_VERSION).tar.bz2 + # *************************************************************************** # Copy aclocal files # This is necessary for --missing aclocal to succeed after a