diff options
author | Alessio Treglia <alessio@debian.org> | 2012-09-06 17:32:55 +0200 |
---|---|---|
committer | Alessio Treglia <alessio@debian.org> | 2012-09-06 17:32:55 +0200 |
commit | 3c46cd7449c32f71b7b3246b4f32aace3d9e3f84 (patch) | |
tree | 0b1f4f501c9251ffbc622508c726e0ae58370fd0 /contrib | |
parent | 5927940f774494d20baf7fc501326c2b084e3846 (diff) |
Imported Upstream version 3.3.1
Diffstat (limited to 'contrib')
-rw-r--r-- | contrib/win32/notes.html | 497 | ||||
-rw-r--r-- | contrib/win32/notes.rtf | 266 | ||||
-rw-r--r-- | contrib/win32/patches/any2ppm.c.diff | 63 | ||||
-rw-r--r-- | contrib/win32/patches/binwrap.cpp.diff | 10 | ||||
-rw-r--r-- | contrib/win32/patches/cairo-surface-xy.diff | 381 | ||||
-rw-r--r-- | contrib/win32/patches/cairo-win32-surface.c.diff | 22 | ||||
-rw-r--r-- | contrib/win32/patches/gcontenttype.c.diff | 11 | ||||
-rw-r--r-- | contrib/win32/patches/gdk-pixbuf-configure.diff | 13 | ||||
-rw-r--r-- | contrib/win32/patches/gtk-configure.diff | 24 | ||||
-rw-r--r-- | contrib/win32/patches/gtkrc.diff | 8 | ||||
-rw-r--r-- | contrib/win32/patches/gwin32.c.diff | 20 | ||||
-rw-r--r-- | contrib/win32/patches/gwin32.h.diff | 14 | ||||
-rw-r--r-- | contrib/win32/patches/libxml-testThreads.c.diff | 10 | ||||
-rw-r--r-- | contrib/win32/patches/mms-Makefile.am.diff | 11 |
14 files changed, 1066 insertions, 284 deletions
diff --git a/contrib/win32/notes.html b/contrib/win32/notes.html new file mode 100644 index 0000000..f95e7e5 --- /dev/null +++ b/contrib/win32/notes.html @@ -0,0 +1,497 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> + +<html> +<head> +<meta http-equiv="Content-type" content="text/html;charset=UTF-8"> +<title>Notes for Building Audacious on Windows</title> +</head> +<body> + +<h2>Notes for Building Audacious on Windows</h2> + +<p><em>John Lindgren<br> +August 11, 2012</em></p> + +<p>Several patch files should accompany this document.</p> + +<h3>Install MinGW</h3> + +<p>Download and run:<br> +<a href="http://sourceforge.net/projects/mingw/files/Installer/mingw-get-inst/mingw-get-inst-20120426/mingw-get-inst-20120426.exe/download"> +<tt>http://sourceforge.net/projects/mingw/files/Installer/mingw-get-inst/mingw-get-inst-20120426/mingw-get-inst-20120426.exe/download</tt></a></p> + +<p>When prompted, use these options:</p> +<ul><li>Use pre-packaged repository catalogues</li> +<li>C++ compiler</li> +<li>MinGW Developer Toolkit</li></ul> + +<p>Copy <tt>C:\MinGW\lib\libiconv.*</tt> to <tt>C:\MinGW\msys\1.0\lib</tt>.<br> +Apply the patch <tt>libintl.h.diff</tt> to <tt>C:\MinGW\include\libintl.h</tt>.</p> + +<h3>Install Python</h3> + +<p>Download and run:<br> +<a href="http://www.python.org/ftp/python/2.7.2/python-2.7.2.msi"> +<tt>http://www.python.org/ftp/python/2.7.2/python-2.7.2.msi</tt></a></p> + +<p>Follow the prompts to install with default options to <tt>C:\Python27</tt>.</p> + +<h3>Set up system paths</h3> + +<p>Under <em>My Computer -> Properties -> Advanced -> Environment Variables</em>, set:</p> +<blockquote><p><tt>PATH=C:\MinGW\bin;C:\MinGW\msys\1.0\bin;C:\Python27;C:\GTK\bin;C:\libs\bin;C:\aud\bin<br> +PKG_CONFIG_PATH=/C/GTK/lib/pkgconfig:/C/libs/lib/pkgconfig:/C/aud/lib/pkgconfig<br> +C_INCLUDE_PATH=/C/GTK/include:/C/libs/include<br> +CPLUS_INCLUDE_PATH=/C/GTK/include:/C/libs/include<br> +LIBRARY_PATH=/C/GTK/lib:/C/libs/lib</tt></p></blockquote> + +<h3>Install zlib</h3> + +<p>Download and unzip to <tt>C:\zlib</tt>:<br> +<a href="http://zlib.net/zlib-1.2.7.tar.gz"> +<tt>http://zlib.net/zlib-1.2.7.tar.gz</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/zlib<br> +cp win32/Makefile.gcc Makefile<br> +make<br> +BINARY_PATH=/C/GTK/bin INCLUDE_PATH=/C/GTK/include LIBRARY_PATH=/C/GTK/lib make install<br> +mkdir -p /C/GTK/bin<br> +cp zlib1.dll /C/GTK/bin<br> +cp libz.dll.a /C/GTK/lib</tt></p></blockquote> + +<h3>Install libpng</h3> + +<p>Download and unzip to <tt>C:\libpng</tt>:<br> +<a href="http://download.sourceforge.net/libpng/libpng-1.5.12.tar.xz"> +<tt>http://download.sourceforge.net/libpng/libpng-1.5.12.tar.xz</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/libpng<br> +./configure --prefix=/C/GTK<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install libjpeg</h3> + +<p>Download and unzip to <tt>C:\libjpeg</tt>:<br> +<a href="http://www.ijg.org/files/jpegsrc.v8d.tar.gz"> +<tt>http://www.ijg.org/files/jpegsrc.v8d.tar.gz</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/libjpeg<br> +./configure --prefix=/C/GTK<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install libffi</h3> + +<p>Download and unzip to <tt>C:\libffi</tt>:<br> +<a href="ftp://sourceware.org/pub/libffi/libffi-3.0.11.tar.gz"> +<tt>ftp://sourceware.org/pub/libffi/libffi-3.0.11.tar.gz</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/libffi<br> +./configure --prefix=/C/GTK<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install GLib</h3> + +<p>Download and unzip to <tt>C:\glib</tt>:<br> +<a href="http://ftp.gnome.org/pub/GNOME/sources/glib/2.32/glib-2.32.4.tar.xz"> +<tt>http://ftp.gnome.org/pub/GNOME/sources/glib/2.32/glib-2.32.4.tar.xz</tt></a></p> + +<p>Apply the patch <tt>gwin32.c.diff</tt> to <tt>C:\glib\glib\gwin32.c</tt>.<br> +Apply the patch <tt>gwin32.h.diff</tt> to <tt>C:\glib\glib\gwin32.h</tt>.<br> +Apply the patch <tt>gcontenttype.c.diff</tt> to <tt>C:\glib\gio\gcontenttype.c</tt>.</p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/glib<br> +CFLAGS="-march=i486" LIBFFI_CFLAGS="-I/C/GTK/lib/libffi-3.0.11/include" LIBFFI_LIBS="-lffi" ZLIB_CFLAGS="" ZLIB_LIBS="-lz" ./configure --prefix=/C/GTK<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install pkg-config</h3> + +<p>Download and unzip to <tt>C:\pkgconfig</tt>:<br> +<a href="http://pkgconfig.freedesktop.org/releases/pkg-config-0.27.tar.gz"> +<tt>http://pkgconfig.freedesktop.org/releases/pkg-config-0.27.tar.gz</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/pkgconfig<br> +GLIB_CFLAGS="-I/C/GTK/include/glib-2.0 -I/C/GTK/lib/glib-2.0/include" GLIB_LIBS="-lglib-2.0" ./configure --prefix=/C/GTK<br> +make<br> +make install</tt></p></blockquote> + +<p>Copy <tt>C:\GTK\share\aclocal\pkg.m4</tt> to <tt>C:\MinGW\share\aclocal</tt>.</p> + +<h3>Install pixman</h3> + +<p>Download and unzip to <tt>C:\pixman</tt>:<br> +<a href="http://cairographics.org/releases/pixman-0.26.2.tar.gz"> +<tt>http://cairographics.org/releases/pixman-0.26.2.tar.gz</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/pixman<br> +./configure --prefix=/C/GTK<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install Cairo</h3> + +<p>Download and unzip to <tt>C:\cairo</tt>:<br> +<a href="http://cairographics.org/releases/cairo-1.10.2.tar.gz"> +<tt>http://cairographics.org/releases/cairo-1.10.2.tar.gz</tt></a></p> + +<p>Apply the patch <tt>cairo-win32-surface.c.diff</tt> to <tt>C:\cairo\src\cairo-win32-surface.c</tt>.<br> +Apply the patch <tt>cairo-surface-xy.diff</tt> (it changes multiple files).<br> +Apply the patch <tt>any2ppm.c.diff</tt> to <tt>C:\cairo\test\any2ppm.c</tt>.</p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/cairo<br> +./configure --prefix=/C/GTK --disable-interpreter<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install Pango</h3> + +<p>Download and unzip to <tt>C:\pango</tt>:<br> +<a href="http://ftp.gnome.org/pub/GNOME/sources/pango/1.30/pango-1.30.0.tar.xz"> +<tt>http://ftp.gnome.org/pub/GNOME/sources/pango/1.30/pango-1.30.0.tar.xz</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/pango<br> +./configure --prefix=/C/GTK<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install gdk-pixbuf</h3> + +<p>Download and unzip to <tt>C:\gdk-pixbuf</tt>:<br> +<a href="http://ftp.gnome.org/pub/gnome/sources/gdk-pixbuf/2.26/gdk-pixbuf-2.26.0.tar.xz"> +<tt>http://ftp.gnome.org/pub/gnome/sources/gdk-pixbuf/2.26/gdk-pixbuf-2.26.0.tar.xz</tt></a></p> + +<p>Apply the patch <tt>gdk-pixbuf-configure.diff</tt> to <tt>C:\gdk-pixbuf\configure</tt>.</p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/gdk-pixbuf<br> +./configure --prefix=/C/GTK --without-gdiplus --without-libtiff<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install ATK</h3> + +<p>Download and unzip to <tt>C:\atk</tt>:<br> +<a href="http://ftp.gnome.org/pub/gnome/sources/atk/2.4/atk-2.4.0.tar.xz"> +<tt>http://ftp.gnome.org/pub/gnome/sources/atk/2.4/atk-2.4.0.tar.xz</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/atk<br> +./configure --prefix=/C/GTK<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install GTK+</h3> + +<p>Download and unzip to <tt>C:\gtksrc</tt>:<br> +<a href="http://ftp.gnome.org/pub/GNOME/sources/gtk+/3.4/gtk+-3.4.4.tar.xz"> +<tt>http://ftp.gnome.org/pub/GNOME/sources/gtk+/3.4/gtk+-3.4.4.tar.xz</tt></a></p> + +<p>Apply the patch <tt>gtk-configure.diff</tt> to <tt>C:\gtksrc\configure</tt>.</p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/gtksrc<br> +CFLAGS="-DHAVE_ISNAN -DHAVE_ISINF" ./configure --prefix=/C/GTK<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install SDL</h3> + +<p>Download and unzip to <tt>C:\libs</tt>:<br> +<a href="http://www.libsdl.org/release/SDL-devel-1.2.15-mingw32.tar.gz"> +<tt>http://www.libsdl.org/release/SDL-devel-1.2.15-mingw32.tar.gz</tt></a></p> + +<p>Apply the patch <tt>sdl-config.diff</tt> to <tt>C:\libs\bin\sdl-config</tt>.<br> +Copy <tt>C:\libs\share\aclocal\sdl.m4</tt> to <tt>C:\MinGW\share\aclocal</tt>.</p> + +<h3>Install libxml</h3> + +<p>Download and unzip to <tt>C:\libxml</tt>:<br> +<a href="ftp://xmlsoft.org/libxml2/libxml2-2.8.0.tar.gz"> +<tt>ftp://xmlsoft.org/libxml2/libxml2-2.8.0.tar.gz</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/libxml<br> +./configure --prefix=/C/libs<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install regex</h3> + +<p>Download and unzip to <tt>C:\libs</tt>:<br> +<a href="http://sourceforge.net/projects/mingw/files/Other/UserContributed/regex/mingw-regex-2.5.1/mingw-libgnurx-2.5.1-dev.tar.gz/download"> +<tt>http://sourceforge.net/projects/mingw/files/Other/UserContributed/regex/mingw-regex-2.5.1/mingw-libgnurx-2.5.1-bin.tar.gz/download</tt></a><br> +<a href="http://sourceforge.net/projects/mingw/files/Other/UserContributed/regex/mingw-regex-2.5.1/mingw-libgnurx-2.5.1-dev.tar.gz/download"> +<tt>http://sourceforge.net/projects/mingw/files/Other/UserContributed/regex/mingw-regex-2.5.1/mingw-libgnurx-2.5.1-bin.tar.gz/download</tt></a></p> + +<h3>Install mpg123</h3> + +<p>Download and unzip to <tt>C:\mpg123</tt>:<br> +<a href="http://mpg123.de/download/mpg123-1.14.3.tar.bz2"> +<tt>http://mpg123.de/download/mpg123-1.14.3.tar.bz2</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/mpg123<br> +./configure --prefix=/C/libs<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install libfaad</h3> + +<p>Download and unzip to <tt>C:\libfaad</tt>:<br> +<a href="http://sourceforge.net/projects/faac/files/faad2-src/faad2-2.7/faad2-2.7.tar.bz2/download"> +<tt>http://sourceforge.net/projects/faac/files/faad2-src/faad2-2.7/faad2-2.7.tar.bz2/download</tt></a></p> + +<p>Apply the patch <tt>libfaad-main.c.diff</tt> to <tt>C:\libfaad\frontend\main.c</tt>.</p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/libfaad<br> +./configure --prefix=/C/libs<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install libsndfile</h3> + +<p>Download and unzip to <tt>C:\libsndfile</tt>:<br> +<a href="http://www.mega-nerd.com/libsndfile/files/libsndfile-1.0.25.tar.gz"> +<tt>http://www.mega-nerd.com/libsndfile/files/libsndfile-1.0.25.tar.gz</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/libsndfile<br> +./configure --prefix=/C/libs<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install libbs2b</h3> + +<p>Download and unzip to <tt>C:\libbs2b</tt>:<br> +<a href="http://sourceforge.net/projects/bs2b/files/libbs2b/3.1.0/libbs2b-3.1.0.tar.bz2/download"> +<tt>http://sourceforge.net/projects/bs2b/files/libbs2b/3.1.0/libbs2b-3.1.0.tar.bz2/download</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/libbs2b<br> +./configure --prefix=/C/libs<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install libcdio</h3> + +<p>Download and unzip to <tt>C:\libcdio</tt>:<br> +<a href="http://ftp.gnu.org/gnu/libcdio/libcdio-0.83.tar.bz2"> +<tt>http://ftp.gnu.org/gnu/libcdio/libcdio-0.83.tar.bz2</tt></a></p> + +<p>Apply the patch <tt>libcdio-util.c.diff</tt> to <tt>C:\libcdio\src\util.c</tt>.</p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/libcdio<br> +./configure --prefix=/C/libs --disable-rock<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install libcddb</h3> + +<p>Download and unzip to <tt>C:\libcddb</tt>:<br> +<a href="http://sourceforge.net/projects/libcddb/files/libcddb/1.3.2/libcddb-1.3.2.tar.bz2/download"> +<tt>http://sourceforge.net/projects/libcddb/files/libcddb/1.3.2/libcddb-1.3.2.tar.bz2/download</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/libcddb<br> +./configure --prefix=/C/libs<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install libcue</h3> + +<p>Download and unzip to <tt>C:\libcue</tt>:<br> +<a href="http://sourceforge.net/projects/libcue/files/libcue/1.4.0/libcue-1.4.0.tar.bz2/download"> +<tt>http://sourceforge.net/projects/libcue/files/libcue/1.4.0/libcue-1.4.0.tar.bz2/download</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/libcue<br> +./configure --prefix=/C/libs<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install LAME</h3> + +<p>Download and unzip to <tt>C:\lame</tt>:<br> +<a href="http://sourceforge.net/projects/lame/files/lame/3.99/lame-3.99.3.tar.gz/download"> +<tt>http://sourceforge.net/projects/lame/files/lame/3.99/lame-3.99.3.tar.gz/download</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/lame<br> +./configure --prefix=/C/libs<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install libflac</h3> + +<p>Download and unzip to <tt>C:\libflac</tt>:<br> +<a href="http://downloads.xiph.org/releases/flac/flac-1.2.1.tar.gz"> +<tt>http://downloads.xiph.org/releases/flac/flac-1.2.1.tar.gz</tt></a></p> + +<p>Apply the patch <tt>libflac-alloc.h.diff</tt> to <tt>C:\libflac\include\share\alloc.h</tt>.<br> +Apply the patch <tt>libflac-main.cpp.diff</tt> to <tt>C:\libflac\examples\cpp\encode\file\main.cpp</tt>.</p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/libflac<br> +./configure --prefix=/C/libs<br> +make<br> +make install</tt></p></blockquote> + +<p>Apply the patch <tt>flac.pc.diff</tt> to <tt>C:\libs\lib\pkgconfig\flac.pc</tt>.</p> + +<h3>Install libogg</h3> + +<p>Download and unzip to <tt>C:\libogg</tt>:<br> +<a href="http://downloads.xiph.org/releases/ogg/libogg-1.3.0.tar.gz"> +<tt>http://downloads.xiph.org/releases/ogg/libogg-1.3.0.tar.gz</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/libogg<br> +./configure --prefix=/C/libs<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install libvorbis</h3> + +<p>Download and unzip to <tt>C:\libvorbis</tt>:<br> +<a href="http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.3.tar.bz2"> +<tt>http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.3.tar.bz2</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/libvorbis<br> +./configure --prefix=/C/libs<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install libneon</h3> + +<p>Download and unzip to <tt>C:\libneon</tt>:<br> +<a href="http://www.webdav.org/neon/neon-0.29.6.tar.gz"> +<tt>http://www.webdav.org/neon/neon-0.29.6.tar.gz</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/libneon<br> +./configure --prefix=/C/libs<br> +make<br> +make install</tt></p></blockquote> + +<p>Apply the patch <tt>neon.pc.diff</tt> to <tt>C:\libs\lib\pkgconfig\neon.pc</tt>.</p> + +<h3>Install libsamplerate</h3> + +<p>Download and unzip to <tt>C:\libsamplerate</tt>:<br> +<a href="http://www.mega-nerd.com/SRC/libsamplerate-0.1.8.tar.gz"> +<tt>http://www.mega-nerd.com/SRC/libsamplerate-0.1.8.tar.gz</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/libsamplerate<br> +./configure --prefix=/C/libs<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install libwavpack</h3> + +<p>Download and unzip to <tt>C:\libwavpack</tt>:<br> +<a href="http://www.wavpack.com/wavpack-4.60.1.tar.bz2"> +<tt>http://www.wavpack.com/wavpack-4.60.1.tar.bz2</tt></a></p> + +<p>Apply the patch <tt>libwavpack-utils.c.diff</tt> to <tt>C:\libwavpack\cli\utils.c</tt>.</p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/libwavpack<br> +./configure --prefix=/C/libs<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install FFmpeg</h3> + +<p>Download and unzip to <tt>C:\ffmpeg</tt>:<br> +<a href="http://ffmpeg.org/releases/ffmpeg-0.11.1.tar.bz2"> +<tt>http://ffmpeg.org/releases/ffmpeg-0.11.1.tar.bz2</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/ffmpeg<br> +./configure --prefix=/C/libs --disable-yasm<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install libbinio</h3> + +<p>Download and unzip to <tt>C:\libbinio</tt>:<br> +<a href="http://sourceforge.net/projects/libbinio/files/libbinio/1.4/libbinio-1.4.tar.bz2/download"> +<tt>http://sourceforge.net/projects/libbinio/files/libbinio/1.4/libbinio-1.4.tar.bz2/download</tt></a></p> + +<p>Apply the patch <tt>binwrap.cpp.diff</tt> to <tt>C:\libbinio\src\binwrap.cpp</tt>.</p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/libbinio<br> +./configure --prefix=/C/libs<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install libcurl</h3> + +<p>Download and unzip to <tt>C:\libcurl</tt>:<br> +<a href="http://curl.haxx.se/download/curl-7.26.0.tar.bz2"> +<tt>http://curl.haxx.se/download/curl-7.26.0.tar.bz2</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/libcurl<br> +./configure --prefix=/C/libs<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install libmms</h3> + +<p>Download and unzip to <tt>C:\libmms</tt>:<br> +<a href="http://sourceforge.net/projects/libmms/files/libmms/0.6.2/libmms-0.6.2.tar.gz/download"> +<tt>http://sourceforge.net/projects/libmms/files/libmms/0.6.2/libmms-0.6.2.tar.gz/download</tt></a></p> + +<p>Apply the patch <tt>mms-Makefile.am.diff</tt> to <tt>C:\libmms\src\Makefile.am</tt>.</p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/libmms<br> +./autogen.sh<br> +./configure --prefix=/C/libs<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install Audacious</h3> + +<p>Download and unzip to <tt>C:\audacious</tt>:<br> +<a href="http://distfiles.audacious-media-player.org/audacious-3.3.1.tar.bz2"> +<tt>http://distfiles.audacious-media-player.org/audacious-3.3.1.tar.bz2</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/audacious<br> +./configure --prefix=/C/aud<br> +make<br> +make install</tt></p></blockquote> + +<h3>Install Audacious Plugins</h3> + +<p>Download and unzip to <tt>C:\audacious-plugins</tt>:<br> +<a href="http://distfiles.audacious-media-player.org/audacious-plugins-3.3.1.tar.bz2"> +<tt>http://distfiles.audacious-media-player.org/audacious-plugins-3.3.1.tar.bz2</tt></a></p> + +<p>In the MinGW shell:</p> +<blockquote><p><tt>cd /C/audacious-plugins<br> +./configure --prefix=/C/aud<br> +make<br> +make install</tt></p></blockquote> + +</body> +</html> diff --git a/contrib/win32/notes.rtf b/contrib/win32/notes.rtf deleted file mode 100644 index 850bb6a..0000000 --- a/contrib/win32/notes.rtf +++ /dev/null @@ -1,266 +0,0 @@ -{\rtf1\ansi\fs24 -{\b Notes for Building Audacious on Windows} -\par -\par {John Lindgren} -\par {May 24, 2012} -\par -\par {This is not intended to be a complete set of instructions, but merely an outline. Use at your own risk, etc., etc.} -\par -\par {Several patch files should accompany this document.} -\par -\par {\ul Install MinGW} -\par -\par {Download and run:} -\par {\fs20 http://sourceforge.net/projects/mingw/files/Automated%20MinGW%20Installer/mingw-get-inst/mingw-get-inst-20110802/mingw-get-inst-20110802.exe/download} -\par -\par {When prompted, use these options:} -\par {\fs20 Use pre-packaged repository catalogues} -\par {\fs20 C++ compiler} -\par {\fs20 MinGW Developer Toolkit} -\par -\par {Copy }{\fs20 C:\\MinGW\\lib\\libiconv.*}{ to }{\fs20 C:\\MinGW\\msys\\1.0\\lib}{.} -\par {Apply the patch }{\fs20 libintl.h.diff}{ to }{\fs20 C:\\MinGW\\include\\libintl.h}{.} -\par -\par {\ul Install GTK+} -\par -\par {Download and unzip to }{\fs20 C:\\GTK}{:} -\par {\fs20 http://ftp.gnome.org/pub/gnome/binaries/win32/gtk+/2.24/gtk+-bundle_2.24.8-20111122_win32.zip} -\par -\par {Copy }{\fs20 C:\\GTK\\share\\aclocal\\pkg.m4}{ to }{\fs20 C:\\MinGW\\share\\aclocal}{.} -\par {Apply the patch }{\fs20 gtkrc.diff}{ to }{\fs20 C:\\GTK\\share\\themes\\MS-Windows\\gtk-2.0\\gtkrc}{.} -\par -\par {\ul Install SDL} -\par -\par {Download and unzip to }{\fs20 C:\\libs}{:} -\par {\fs20 http://www.libsdl.org/release/SDL-devel-1.2.14-mingw32.tar.gz} -\par -\par {\ul Set up system paths} -\par -\par {Under }{\fs20 My Computer -> Properties -> Advanced -> Environment Variables}{, set:} -\par {\fs20 PATH=C:\\MinGW\\bin;C:\\MinGW\\msys\\1.0\\bin;C:\\GTK\\bin;C:\\libs\\bin;C:\\aud\\bin} -\par {\fs20 PKG_CONFIG_PATH=/C/GTK/lib/pkgconfig:/C/libs/lib/pkgconfig:/C/aud/lib/pkgconfig} -\par {\fs20 C_INCLUDE_PATH=/C/GTK/include:/C/libs/include} -\par {\fs20 CPLUS_INCLUDE_PATH=/C/GTK/include:/C/libs/include} -\par {\fs20 LIBRARY_PATH=/C/GTK/lib:/C/libs/lib} -\par -\par {\ul Install libxml} -\par -\par {Download and unzip to }{\fs20 C:\\libxml}{:} -\par {\fs20 ftp://xmlsoft.org/libxml2/libxml2-2.7.8.tar.gz} -\par -\par {Apply the patch }{\fs20 libxml-testThreads.c.diff}{ to }{\fs20 C:\\libxml\\testThreads.c}{.} -\par -\par {In the MinGW shell:} -\par {\fs20 cd /C/libxml} -\par {\fs20 ./configure --prefix=/C/libs} -\par {\fs20 make} -\par {\fs20 make install} -\par -\par {\ul Install regex} -\par -\par {Download and unzip to }{\fs20 C:\\libs}{:} -\par {\fs20 http://sourceforge.net/projects/mingw/files/Other/UserContributed/regex/mingw-regex-2.5.1/mingw-libgnurx-2.5.1-dev.tar.gz/download} -\par {\fs20 http://sourceforge.net/projects/mingw/files/Other/UserContributed/regex/mingw-regex-2.5.1/mingw-libgnurx-2.5.1-bin.tar.gz/download} -\par -\par {\ul Install mpg123} -\par -\par {Download and unzip to }{\fs20 C:\\mpg123}{:} -\par {\fs20 http://mpg123.de/download/mpg123-1.13.4.tar.bz2} -\par -\par {In the MinGW shell:} -\par {\fs20 cd /C/mpg123} -\par {\fs20 ./configure --prefix=/C/libs} -\par {\fs20 make} -\par {\fs20 make install} -\par -\par {\ul Install libfaad} -\par -\par {Download and unzip to }{\fs20 C:\\libfaad}{:} -\par {\fs20 http://sourceforge.net/projects/faac/files/faad2-src/faad2-2.7/faad2-2.7.tar.bz2/download} -\par -\par {Apply the patch }{\fs20 libfaad-main.c.diff}{ to }{\fs20 C:\\libfaad\\frontend\\main.c}{.} -\par -\par {In the MinGW shell:} -\par {\fs20 cd /C/libfaad} -\par {\fs20 ./configure --prefix=/C/libs} -\par {\fs20 make} -\par {\fs20 make install} -\par -\par {\ul Install libsndfile} -\par -\par {Download and unzip to }{\fs20 C:\\libsndfile}{:} -\par {\fs20 http://www.mega-nerd.com/libsndfile/files/libsndfile-1.0.25.tar.gz} -\par -\par {In the MinGW shell:} -\par {\fs20 cd /C/libsndfile} -\par {\fs20 ./configure --prefix=/C/libs} -\par {\fs20 make} -\par {\fs20 make install} -\par -\par {\ul Install libbs2b} -\par -\par {Download and unzip to }{\fs20 C:\\libbs2b}{:} -\par {\fs20 https://sourceforge.net/projects/bs2b/files/libbs2b/3.1.0/libbs2b-3.1.0.tar.bz2/download} -\par -\par {In the MinGW shell:} -\par {\fs20 cd /C/libbs2b} -\par {\fs20 ./configure --prefix=/C/libs} -\par {\fs20 make} -\par {\fs20 make install} -\par -\par {\ul Install libcdio} -\par -\par {Download and unzip to }{\fs20 C:\\libcdio}{:} -\par {\fs20 http://ftp.gnu.org/gnu/libcdio/libcdio-0.83.tar.bz2} -\par -\par {Apply the patch }{\fs20 libcdio-util.c.diff}{ to }{\fs20 C:\\libcdio\\src\\util.c}{.} -\par -\par {In the MinGW shell:} -\par {\fs20 cd /C/libcdio} -\par {\fs20 ./configure --prefix=/C/libs --disable-rock} -\par {\fs20 make} -\par {\fs20 make install} -\par -\par {\ul Install libcddb} -\par -\par {Download and unzip to }{\fs20 C:\\libcddb}{:} -\par {\fs20 https://sourceforge.net/projects/libcddb/files/libcddb/1.3.2/libcddb-1.3.2.tar.bz2/download} -\par -\par {In the MinGW shell:} -\par {\fs20 cd /C/libcddb} -\par {\fs20 ./configure --prefix=/C/libs} -\par {\fs20 make} -\par {\fs20 make install} -\par -\par {\ul Install libcue} -\par -\par {Download and unzip to }{\fs20 C:\\libcue}{:} -\par {\fs20 https://sourceforge.net/projects/libcue/files/libcue/1.4.0/libcue-1.4.0.tar.bz2/download} -\par -\par {In the MinGW shell:} -\par {\fs20 cd /C/libcue} -\par {\fs20 ./configure --prefix=/C/libs} -\par {\fs20 make} -\par {\fs20 make install} -\par -\par {\ul Install LAME} -\par -\par {Download and unzip to }{\fs20 C:\\lame}{:} -\par {\fs20 http://sourceforge.net/projects/lame/files/lame/3.99/lame-3.99.3.tar.gz/download} -\par -\par {In the MinGW shell:} -\par {\fs20 cd /C/lame} -\par {\fs20 ./configure --prefix=/C/libs} -\par {\fs20 make} -\par {\fs20 make install} -\par -\par {\ul Install libflac} -\par -\par {Download and unzip to }{\fs20 C:\\libflac}{:} -\par {\fs20 http://downloads.xiph.org/releases/flac/flac-1.2.1.tar.gz} -\par -\par {Apply the patch }{\fs20 libflac-alloc.h.diff}{ to }{\fs20 C:\\libflac\\include\\share\\alloc.h}{.} -\par {Apply the patch }{\fs20 libflac-main.cpp.diff}{ to }{\fs20 C:\\libflac\\examples\\cpp\\encode\\file\\main.cpp}{.} -\par -\par {In the MinGW shell:} -\par {\fs20 cd /C/libflac} -\par {\fs20 ./configure --prefix=/C/libs} -\par {\fs20 make} -\par {\fs20 make install} -\par -\par {Apply the patch }{\fs20 flac.pc.diff}{ to }{\fs20 C:\\libs\\lib\\pkgconfig\\flac.pc}{.} -\par -\par {\ul Install libogg} -\par -\par {Download and unzip to }{\fs20 C:\\libogg}{:} -\par {\fs20 http://downloads.xiph.org/releases/ogg/libogg-1.3.0.tar.gz} -\par -\par {In the MinGW shell:} -\par {\fs20 cd /C/libogg} -\par {\fs20 ./configure --prefix=/C/libs} -\par {\fs20 make} -\par {\fs20 make install} -\par -\par {\ul Install libvorbis} -\par -\par {Download and unzip to }{\fs20 C:\\libvorbis}{:} -\par {\fs20 http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.2.tar.bz2} -\par -\par {In the MinGW shell:} -\par {\fs20 cd /C/libvorbis} -\par {\fs20 ./configure --prefix=/C/libs} -\par {\fs20 make} -\par {\fs20 make install} -\par -\par {\ul Install libneon} -\par -\par {Download and unzip to }{\fs20 C:\\libneon}{:} -\par {\fs20 http://www.webdav.org/neon/neon-0.29.6.tar.gz} -\par -\par {In the MinGW shell:} -\par {\fs20 cd /C/libneon} -\par {\fs20 ./configure --prefix=/C/libs} -\par {\fs20 make} -\par {\fs20 make install} -\par -\par {Apply the patch }{\fs20 neon.pc.diff}{ to }{\fs20 C:\\libs\\lib\\pkgconfig\\neon.pc}{.} -\par -\par {\ul Install libsamplerate} -\par -\par {Download and unzip to }{\fs20 C:\\libsamplerate}{:} -\par {\fs20 http://www.mega-nerd.com/SRC/libsamplerate-0.1.8.tar.gz} -\par -\par {In the MinGW shell:} -\par {\fs20 cd /C/libsamplerate} -\par {\fs20 ./configure --prefix=/C/libs} -\par {\fs20 make} -\par {\fs20 make install} -\par -\par {\ul Install libwavpack} -\par -\par {Download and unzip to }{\fs20 C:\\libwavpack}{:} -\par {\fs20 http://www.wavpack.com/wavpack-4.60.1.tar.bz2} -\par -\par {Apply the patch }{\fs20 libwavpack-utils.c.diff}{ to }{\fs20 C:\\libwavpack\\cli\\utils.c}{.} -\par -\par {In the MinGW shell:} -\par {\fs20 cd /C/libwavpack} -\par {\fs20 ./configure --prefix=/C/libs} -\par {\fs20 make} -\par {\fs20 make install} -\par -\par {\ul Install FFmpeg} -\par -\par {Download and unzip to }{\fs20 C:\\ffmpeg}{:} -\par {\fs20 http://ffmpeg.org/releases/ffmpeg-0.9.tar.bz2} -\par -\par {In the MinGW shell:} -\par {\fs20 cd /C/ffmpeg} -\par {\fs20 ./configure --prefix=/C/libs --disable-yasm} -\par {\fs20 make} -\par {\fs20 make install} -\par -\par {\ul Install Audacious} -\par -\par {Download and unzip to }{\fs20 C:\\audacious}{:} -\par {\fs20 http://distfiles.audacious-media-player.org/audacious-3.2.3.tar.bz2} -\par -\par {In the MinGW shell:} -\par {\fs20 cd /C/audacious} -\par {\fs20 ./configure --prefix=/C/aud} -\par {\fs20 make} -\par {\fs20 make install} -\par -\par {\ul Install Audacious plugins} -\par -\par {Download and unzip to }{\fs20 C:\\audacious-plugins}{:} -\par {\fs20 http://distfiles.audacious-media-player.org/audacious-plugins-3.2.3.tar.bz2} -\par -\par {In the MinGW shell:} -\par {\fs20 cd /C/audacious-plugins} -\par {\fs20 export SDL_CFLAGS="-I/C/libs/include/SDL"} -\par {\fs20 export SDL_LIBS="-L/C/libs/lib -lSDL"} -\par {\fs20 ./configure --prefix=/C/aud} -\par {\fs20 make} -\par {\fs20 make install} -} diff --git a/contrib/win32/patches/any2ppm.c.diff b/contrib/win32/patches/any2ppm.c.diff new file mode 100644 index 0000000..22cc05d --- /dev/null +++ b/contrib/win32/patches/any2ppm.c.diff @@ -0,0 +1,63 @@ +--- any2ppm.c.0 2012-02-29 07:10:30 -0500 ++++ any2ppm.c 2012-04-01 21:38:26 -0400 +@@ -96,7 +96,7 @@ + #define ARRAY_LENGTH(A) (sizeof (A) / sizeof (A[0])) + + static int +-_writen (int fd, char *buf, int len) ++do_writen (int fd, char *buf, int len) + { + while (len) { + int ret; +@@ -120,7 +120,7 @@ + } + + static int +-_write (int fd, ++do_write (int fd, + char *buf, int maxlen, int buflen, + const unsigned char *src, int srclen) + { +@@ -141,7 +141,7 @@ + src += len; + + if (buflen == maxlen) { +- if (! _writen (fd, buf, buflen)) ++ if (! do_writen (fd, buf, buflen)) + return -1; + + buflen = 0; +@@ -204,7 +204,7 @@ + + switch ((int) format) { + case CAIRO_FORMAT_ARGB32: +- len = _write (fd, ++ len = do_write (fd, + buf, sizeof (buf), len, + (unsigned char *) row, 4 * width); + break; +@@ -215,13 +215,13 @@ + rgb[0] = (p & 0xff0000) >> 16; + rgb[1] = (p & 0x00ff00) >> 8; + rgb[2] = (p & 0x0000ff) >> 0; +- len = _write (fd, ++ len = do_write (fd, + buf, sizeof (buf), len, + rgb, 3); + } + break; + case CAIRO_FORMAT_A8: +- len = _write (fd, ++ len = do_write (fd, + buf, sizeof (buf), len, + (unsigned char *) row, width); + break; +@@ -230,7 +230,7 @@ + return "write failed"; + } + +- if (len && ! _writen (fd, buf, len)) ++ if (len && ! do_writen (fd, buf, len)) + return "write failed"; + + return NULL; diff --git a/contrib/win32/patches/binwrap.cpp.diff b/contrib/win32/patches/binwrap.cpp.diff new file mode 100644 index 0000000..eec4d96 --- /dev/null +++ b/contrib/win32/patches/binwrap.cpp.diff @@ -0,0 +1,10 @@ +--- binwrap.cpp.0 2003-03-08 11:02:34 -0500 ++++ binwrap.cpp 2012-07-01 20:28:48 -0400 +@@ -17,6 +17,7 @@ + * Copyright (C) 2002, 2003 Simon Peter <dn.tlp@gmx.net> + */ + ++#include <cstdio> + #include "binwrap.h" + + #if BINIO_ENABLE_IOSTREAM diff --git a/contrib/win32/patches/cairo-surface-xy.diff b/contrib/win32/patches/cairo-surface-xy.diff new file mode 100644 index 0000000..0af7c03 --- /dev/null +++ b/contrib/win32/patches/cairo-surface-xy.diff @@ -0,0 +1,381 @@ +diff --git a/src/cairo-composite-rectangles-private.h b/src/cairo-composite-rectangles-private.h +index a0f7c1a..8b24939 100644 +--- a/src/cairo-composite-rectangles-private.h ++++ b/src/cairo-composite-rectangles-private.h +@@ -60,6 +60,7 @@ struct _cairo_composite_rectangles { + + cairo_private cairo_int_status_t + _cairo_composite_rectangles_init_for_paint (cairo_composite_rectangles_t *extents, ++ int surface_x, int surface_y, + int surface_width, int surface_height, + cairo_operator_t op, + const cairo_pattern_t *source, +@@ -67,6 +68,7 @@ _cairo_composite_rectangles_init_for_paint (cairo_composite_rectangles_t *extent + + cairo_private cairo_int_status_t + _cairo_composite_rectangles_init_for_mask (cairo_composite_rectangles_t *extents, ++ int surface_x, int surface_y, + int surface_width, int surface_height, + cairo_operator_t op, + const cairo_pattern_t *source, +@@ -75,6 +77,7 @@ _cairo_composite_rectangles_init_for_mask (cairo_composite_rectangles_t *extents + + cairo_private cairo_int_status_t + _cairo_composite_rectangles_init_for_stroke (cairo_composite_rectangles_t *extents, ++ int surface_x, int surface_y, + int surface_width, int surface_height, + cairo_operator_t op, + const cairo_pattern_t *source, +@@ -85,6 +88,7 @@ _cairo_composite_rectangles_init_for_stroke (cairo_composite_rectangles_t *exten + + cairo_private cairo_int_status_t + _cairo_composite_rectangles_init_for_fill (cairo_composite_rectangles_t *extents, ++ int surface_x, int surface_y, + int surface_width, int surface_height, + cairo_operator_t op, + const cairo_pattern_t *source, +@@ -93,6 +97,7 @@ _cairo_composite_rectangles_init_for_fill (cairo_composite_rectangles_t *extents + + cairo_private cairo_int_status_t + _cairo_composite_rectangles_init_for_glyphs (cairo_composite_rectangles_t *extents, ++ int surface_x, int surface_y, + int surface_width, int surface_height, + cairo_operator_t op, + const cairo_pattern_t *source, +diff --git a/src/cairo-composite-rectangles.c b/src/cairo-composite-rectangles.c +index 0aebee3..a1a7637 100644 +--- a/src/cairo-composite-rectangles.c ++++ b/src/cairo-composite-rectangles.c +@@ -42,12 +42,14 @@ + + static inline cairo_bool_t + _cairo_composite_rectangles_init (cairo_composite_rectangles_t *extents, ++ int x, int y, + int width, int height, + cairo_operator_t op, + const cairo_pattern_t *source, + cairo_clip_t *clip) + { +- extents->unbounded.x = extents->unbounded.y = 0; ++ extents->unbounded.x = x; ++ extents->unbounded.y = y; + extents->unbounded.width = width; + extents->unbounded.height = height; + +@@ -76,12 +78,14 @@ _cairo_composite_rectangles_init (cairo_composite_rectangles_t *extents, + + cairo_int_status_t + _cairo_composite_rectangles_init_for_paint (cairo_composite_rectangles_t *extents, ++ int surface_x, int surface_y, + int surface_width, int surface_height, + cairo_operator_t op, + const cairo_pattern_t *source, + cairo_clip_t *clip) + { + if (! _cairo_composite_rectangles_init (extents, ++ surface_x, surface_y, + surface_width, surface_height, + op, source, clip)) + { +@@ -106,6 +110,7 @@ _cairo_composite_rectangles_intersect (cairo_composite_rectangles_t *extents) + + cairo_int_status_t + _cairo_composite_rectangles_init_for_mask (cairo_composite_rectangles_t *extents, ++ int surface_x, int surface_y, + int surface_width, int surface_height, + cairo_operator_t op, + const cairo_pattern_t *source, +@@ -113,6 +118,7 @@ _cairo_composite_rectangles_init_for_mask (cairo_composite_rectangles_t *extents + cairo_clip_t *clip) + { + if (! _cairo_composite_rectangles_init (extents, ++ surface_x, surface_y, + surface_width, surface_height, + op, source, clip)) + { +@@ -126,6 +132,7 @@ _cairo_composite_rectangles_init_for_mask (cairo_composite_rectangles_t *extents + + cairo_int_status_t + _cairo_composite_rectangles_init_for_stroke (cairo_composite_rectangles_t *extents, ++ int surface_x, int surface_y, + int surface_width, int surface_height, + cairo_operator_t op, + const cairo_pattern_t *source, +@@ -135,6 +142,7 @@ _cairo_composite_rectangles_init_for_stroke (cairo_composite_rectangles_t *exten + cairo_clip_t *clip) + { + if (! _cairo_composite_rectangles_init (extents, ++ surface_x, surface_y, + surface_width, surface_height, + op, source, clip)) + { +@@ -148,6 +156,7 @@ _cairo_composite_rectangles_init_for_stroke (cairo_composite_rectangles_t *exten + + cairo_int_status_t + _cairo_composite_rectangles_init_for_fill (cairo_composite_rectangles_t *extents, ++ int surface_x, int surface_y, + int surface_width, int surface_height, + cairo_operator_t op, + const cairo_pattern_t *source, +@@ -155,6 +164,7 @@ _cairo_composite_rectangles_init_for_fill (cairo_composite_rectangles_t *extents + cairo_clip_t *clip) + { + if (! _cairo_composite_rectangles_init (extents, ++ surface_x, surface_y, + surface_width, surface_height, + op, source, clip)) + { +@@ -168,6 +178,7 @@ _cairo_composite_rectangles_init_for_fill (cairo_composite_rectangles_t *extents + + cairo_int_status_t + _cairo_composite_rectangles_init_for_glyphs (cairo_composite_rectangles_t *extents, ++ int surface_x, int surface_y, + int surface_width, int surface_height, + cairo_operator_t op, + const cairo_pattern_t *source, +@@ -180,6 +191,7 @@ _cairo_composite_rectangles_init_for_glyphs (cairo_composite_rectangles_t *exten + cairo_status_t status; + + if (! _cairo_composite_rectangles_init (extents, ++ surface_x, surface_y, + surface_width, surface_height, + op, source, clip)) + { +diff --git a/src/cairo-gl-surface.c b/src/cairo-gl-surface.c +index e53506c..0980a57 100644 +--- a/src/cairo-gl-surface.c ++++ b/src/cairo-gl-surface.c +@@ -1479,6 +1479,7 @@ _cairo_gl_surface_stroke (void *abstract_surface, + cairo_status_t status; + + status = _cairo_composite_rectangles_init_for_stroke (&extents, ++ 0, 0, + surface->width, + surface->height, + op, source, +@@ -1545,6 +1546,7 @@ _cairo_gl_surface_fill (void *abstract_surface, + cairo_status_t status; + + status = _cairo_composite_rectangles_init_for_fill (&extents, ++ 0, 0, + surface->width, + surface->height, + op, source, path, +diff --git a/src/cairo-image-surface.c b/src/cairo-image-surface.c +index 4d65ee6..01e60a2 100644 +--- a/src/cairo-image-surface.c ++++ b/src/cairo-image-surface.c +@@ -3248,6 +3248,7 @@ _cairo_image_surface_paint (void *abstract_surface, + cairo_status_t status; + + status = _cairo_composite_rectangles_init_for_paint (&extents, ++ 0, 0, + surface->width, + surface->height, + op, source, +@@ -3368,7 +3369,7 @@ _cairo_image_surface_mask (void *abstract_surface, + cairo_status_t status; + + status = _cairo_composite_rectangles_init_for_mask (&extents, +- surface->width, surface->height, ++ 0, 0, surface->width, surface->height, + op, source, mask, clip); + if (unlikely (status)) + return status; +@@ -3599,6 +3600,7 @@ _cairo_image_surface_stroke (void *abstract_surface, + cairo_status_t status; + + status = _cairo_composite_rectangles_init_for_stroke (&extents, ++ 0, 0, + surface->width, + surface->height, + op, source, +@@ -3691,6 +3693,7 @@ _cairo_image_surface_fill (void *abstract_surface, + cairo_status_t status; + + status = _cairo_composite_rectangles_init_for_fill (&extents, ++ 0, 0, + surface->width, + surface->height, + op, source, path, +@@ -4022,6 +4025,7 @@ _cairo_image_surface_glyphs (void *abstract_surface, + cairo_status_t status; + + status = _cairo_composite_rectangles_init_for_glyphs (&extents, ++ 0, 0, + surface->width, + surface->height, + op, source, +diff --git a/src/cairo-pdf-surface.c b/src/cairo-pdf-surface.c +index c60e636..24a6119 100644 +--- a/src/cairo-pdf-surface.c ++++ b/src/cairo-pdf-surface.c +@@ -5399,6 +5399,7 @@ _cairo_pdf_surface_paint (void *abstract_surface, + cairo_composite_rectangles_t extents; + + status = _cairo_composite_rectangles_init_for_paint (&extents, ++ 0, 0, + surface->width, surface->height, + op, source, clip); + if (unlikely (status)) { +@@ -5514,6 +5515,7 @@ _cairo_pdf_surface_mask (void *abstract_surface, + cairo_composite_rectangles_t extents; + + status = _cairo_composite_rectangles_init_for_mask (&extents, ++ 0, 0, + surface->width, surface->height, + op, source, mask, clip); + if (unlikely (status)) { +@@ -5623,6 +5625,7 @@ _cairo_pdf_surface_stroke (void *abstract_surface, + cairo_status_t status; + + status = _cairo_composite_rectangles_init_for_stroke (&extents, ++ 0, 0, + surface->width, + surface->height, + op, source, +@@ -5752,6 +5755,7 @@ _cairo_pdf_surface_fill (void *abstract_surface, + cairo_composite_rectangles_t extents; + + status = _cairo_composite_rectangles_init_for_fill (&extents, ++ 0, 0, + surface->width, + surface->height, + op, source, path, +@@ -6032,6 +6036,7 @@ _cairo_pdf_surface_show_text_glyphs (void *abstract_surface, + cairo_status_t status; + + status = _cairo_composite_rectangles_init_for_glyphs (&extents, ++ 0, 0, + surface->width, + surface->height, + op, source, +diff --git a/src/cairo-ps-surface.c b/src/cairo-ps-surface.c +index c73214e..3b7139a 100644 +--- a/src/cairo-ps-surface.c ++++ b/src/cairo-ps-surface.c +@@ -3497,6 +3497,7 @@ _cairo_ps_surface_paint (void *abstract_surface, + cairo_status_t status; + + status = _cairo_composite_rectangles_init_for_paint (&extents, ++ 0, 0, + surface->width, surface->height, + op, source, clip); + if (unlikely (status)) +@@ -3565,6 +3566,7 @@ _cairo_ps_surface_stroke (void *abstract_surface, + cairo_int_status_t status; + + status = _cairo_composite_rectangles_init_for_stroke (&extents, ++ 0, 0, + surface->width, + surface->height, + op, source, +@@ -3630,6 +3632,7 @@ _cairo_ps_surface_fill (void *abstract_surface, + cairo_int_status_t status; + + status = _cairo_composite_rectangles_init_for_fill (&extents, ++ 0, 0, + surface->width, + surface->height, + op, source, path, +@@ -3718,6 +3721,7 @@ _cairo_ps_surface_show_glyphs (void *abstract_surface, + cairo_status_t status; + + status = _cairo_composite_rectangles_init_for_glyphs (&extents, ++ 0, 0, + surface->width, + surface->height, + op, source, +diff --git a/src/cairo-surface-fallback.c b/src/cairo-surface-fallback.c +index 99ea07e..c63be72 100644 +--- a/src/cairo-surface-fallback.c ++++ b/src/cairo-surface-fallback.c +@@ -896,6 +896,8 @@ _cairo_surface_fallback_paint (cairo_surface_t *surface, + ASSERT_NOT_REACHED; + + status = _cairo_composite_rectangles_init_for_paint (&extents, ++ rect.x, ++ rect.y, + rect.width, + rect.height, + op, source, +@@ -1007,6 +1009,7 @@ _cairo_surface_fallback_mask (cairo_surface_t *surface, + ASSERT_NOT_REACHED; + + status = _cairo_composite_rectangles_init_for_mask (&extents, ++ rect.x, rect.y, + rect.width, rect.height, + op, source, mask, clip); + if (unlikely (status)) +@@ -1052,6 +1055,8 @@ _cairo_surface_fallback_stroke (cairo_surface_t *surface, + ASSERT_NOT_REACHED; + + status = _cairo_composite_rectangles_init_for_stroke (&extents, ++ rect.x, ++ rect.y, + rect.width, + rect.height, + op, source, +@@ -1146,6 +1151,8 @@ _cairo_surface_fallback_fill (cairo_surface_t *surface, + ASSERT_NOT_REACHED; + + status = _cairo_composite_rectangles_init_for_fill (&extents, ++ rect.x, ++ rect.y, + rect.width, + rect.height, + op, source, path, +@@ -1316,6 +1323,8 @@ _cairo_surface_fallback_show_glyphs (cairo_surface_t *surface, + ASSERT_NOT_REACHED; + + status = _cairo_composite_rectangles_init_for_glyphs (&extents, ++ rect.x, ++ rect.y, + rect.width, + rect.height, + op, source, +diff --git a/src/cairo-xcb-surface-render.c b/src/cairo-xcb-surface-render.c +index 8294a47..a38ea78 100644 +--- a/src/cairo-xcb-surface-render.c ++++ b/src/cairo-xcb-surface-render.c +@@ -3122,6 +3122,7 @@ _cairo_xcb_surface_render_paint (cairo_xcb_surface_t *surface, + } + + status = _cairo_composite_rectangles_init_for_paint (&extents, ++ 0, 0, + surface->width, + surface->height, + op, source, +@@ -3191,6 +3192,7 @@ _cairo_xcb_surface_render_mask (cairo_xcb_surface_t *surface, + return CAIRO_INT_STATUS_UNSUPPORTED; + + status = _cairo_composite_rectangles_init_for_mask (&extents, ++ 0, 0, + surface->width, surface->height, + op, source, mask, clip); + if (unlikely (status)) +@@ -3475,6 +3477,7 @@ _cairo_xcb_surface_render_stroke (cairo_xcb_surface_t *surface, + } + + status = _cairo_composite_rectangles_init_for_stroke (&extents, ++ 0, 0, + surface->width, + surface->height, + op, source, +@@ -3659,6 +3662,7 @@ _cairo_xcb_surface_render_fill (cairo_xcb_surface_t *surface, + } + + status = _cairo_composite_rectangles_init_for_fill (&extents, ++ 0, 0, + surface->width, + surface->height, + op, source, path, +@@ -4621,6 +4625,7 @@ _cairo_xcb_surface_render_glyphs (cairo_xcb_surface_t *surface, + return CAIRO_INT_STATUS_UNSUPPORTED; + + status = _cairo_composite_rectangles_init_for_glyphs (&extents, ++ 0, 0, + surface->width, + surface->height, + op, source, + diff --git a/contrib/win32/patches/cairo-win32-surface.c.diff b/contrib/win32/patches/cairo-win32-surface.c.diff new file mode 100644 index 0000000..5ce0963 --- /dev/null +++ b/contrib/win32/patches/cairo-win32-surface.c.diff @@ -0,0 +1,22 @@ +commit a02dd8ddc7dde30ba71e87ab5e90bf910b68da2b +Author: Alexander Larsson <alexl@redhat.com> +Date: Fri Nov 11 16:15:31 2011 +0100 + + win32: Reset clip in _cairo_win32_surface_release_dest_image + + Without this we were using leftover clip regions from e.g. show_glyphs + which made the fallback drawing results disappear. + +diff --git a/src/cairo-win32-surface.c b/src/cairo-win32-surface.c +index 660aaba..59305f1 100644 +--- a/src/cairo-win32-surface.c ++++ b/src/cairo-win32-surface.c +@@ -630,6 +630,8 @@ _cairo_win32_surface_release_dest_image (void *abstract_surfa + if (!local) + return; + ++ _cairo_win32_surface_set_clip_region (surface, NULL); ++ + if (!BitBlt (surface->dc, + image_rect->x, image_rect->y, + image_rect->width, image_rect->height, diff --git a/contrib/win32/patches/gcontenttype.c.diff b/contrib/win32/patches/gcontenttype.c.diff new file mode 100644 index 0000000..2c1e6d1 --- /dev/null +++ b/contrib/win32/patches/gcontenttype.c.diff @@ -0,0 +1,11 @@ +--- gcontenttype.c.0 2012-07-14 16:33:18 -0400 ++++ gcontenttype.c 2012-08-04 16:02:09 -0400 +@@ -332,7 +332,7 @@ + + /* our test suite and potentially other code used -1 in the past, which is + * not documented and not allowed; guard against that */ +- g_return_val_if_fail (data_size != (gsize) -1, g_strdup (XDG_MIME_TYPE_UNKNOWN)); ++ g_return_val_if_fail (data_size != (gsize) -1, g_strdup ("*")); + + if (filename) + { diff --git a/contrib/win32/patches/gdk-pixbuf-configure.diff b/contrib/win32/patches/gdk-pixbuf-configure.diff new file mode 100644 index 0000000..6dc1188 --- /dev/null +++ b/contrib/win32/patches/gdk-pixbuf-configure.diff @@ -0,0 +1,13 @@ +--- configure.0 2012-04-01 23:42:14 -0400 ++++ configure 2012-04-01 23:42:29 -0400 +@@ -18792,8 +18792,8 @@ + GDK_PIXBUF_PACKAGES="gmodule-no-export-2.0 gobject-2.0 gio-2.0" + GDK_PIXBUF_EXTRA_LIBS="$STATIC_LIB_DEPS $MATH_LIB $MEDIA_LIB" + GDK_PIXBUF_EXTRA_CFLAGS= +-GDK_PIXBUF_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $PNG_DEP_CFLAGS_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS" +-GDK_PIXBUF_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $PNG_DEP_CFLAGS_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS" ++GDK_PIXBUF_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $PNG_DEP_CFLAGS_PACKAGES`"" $GDK_PIXBUF_EXTRA_LIBS" ++GDK_PIXBUF_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $PNG_DEP_CFLAGS_PACKAGES`"" $GDK_PIXBUF_EXTRA_CFLAGS" + + + diff --git a/contrib/win32/patches/gtk-configure.diff b/contrib/win32/patches/gtk-configure.diff new file mode 100644 index 0000000..77c56be --- /dev/null +++ b/contrib/win32/patches/gtk-configure.diff @@ -0,0 +1,24 @@ +--- configure.0 2012-04-02 00:33:16 -0400 ++++ configure 2012-04-02 00:44:08 -0400 +@@ -23213,8 +23213,8 @@ + GDK_PRIVATE_PACKAGES="$GDK_PRIVATE_PACKAGES pangoft2" + fi + +-GDK_DEP_LIBS="$GDK_EXTRA_LIBS `$PKG_CONFIG --libs $GDK_PACKAGES $GDK_PRIVATE_PACKAGES` $MATH_LIB" +-GDK_DEP_CFLAGS="`$PKG_CONFIG --cflags $GDK_PACKAGES $GDK_PRIVATE_PACKAGES` $GDK_EXTRA_CFLAGS" ++GDK_DEP_LIBS="$GDK_EXTRA_LIBS ""`$PKG_CONFIG --libs $GDK_PACKAGES $GDK_PRIVATE_PACKAGES`"" $MATH_LIB" ++GDK_DEP_CFLAGS="`$PKG_CONFIG --cflags $GDK_PACKAGES $GDK_PRIVATE_PACKAGES`"" $GDK_EXTRA_CFLAGS" + # + # If we aren't writing explicit dependencies, then don't put the extra libraries we need + # into the pkg-config files +@@ -23294,8 +23294,8 @@ + GTK_EXTRA_LIBS= + + GTK_EXTRA_CFLAGS= +-GTK_DEP_LIBS="$GDK_EXTRA_LIBS $GTK_DEP_LIBS_FOR_X `$PKG_CONFIG --libs $PANGO_PACKAGES $GTK_PACKAGES_FOR_X $GTK_PACKAGES $GTK_PRIVATE_PACKAGES` $GTK_EXTRA_LIBS $MATH_LIB" +-GTK_DEP_CFLAGS="`$PKG_CONFIG --cflags $GDK_PACKAGES $GTK_PACKAGES $GTK_PRIVATE_PACKAGES` $GDK_EXTRA_CFLAGS $GTK_EXTRA_CFLAGS" ++GTK_DEP_LIBS="$GDK_EXTRA_LIBS $GTK_DEP_LIBS_FOR_X ""`$PKG_CONFIG --libs $PANGO_PACKAGES $GTK_PACKAGES_FOR_X $GTK_PACKAGES $GTK_PRIVATE_PACKAGES`"" $GTK_EXTRA_LIBS $MATH_LIB" ++GTK_DEP_CFLAGS="`$PKG_CONFIG --cflags $GDK_PACKAGES $GTK_PACKAGES $GTK_PRIVATE_PACKAGES`"" $GDK_EXTRA_CFLAGS $GTK_EXTRA_CFLAGS" + + if test x"$os_win32" = xyes; then + GTK_EXTRA_CFLAGS="$msnative_struct" diff --git a/contrib/win32/patches/gtkrc.diff b/contrib/win32/patches/gtkrc.diff deleted file mode 100644 index 5654fe1..0000000 --- a/contrib/win32/patches/gtkrc.diff +++ /dev/null @@ -1,8 +0,0 @@ ---- gtkrc.0 2009-07-31 06:31:16 -0400 -+++ gtkrc 2011-04-02 03:05:34 -0500 -@@ -1,4 +1,4 @@ --gtk-icon-sizes = "gtk-menu=13,13:gtk-small-toolbar=16,16:gtk-large-toolbar=24,24:gtk-dnd=32,32" -+gtk-icon-sizes = "gtk-menu=16,16:gtk-button=16,16:gtk-small-toolbar=16,16:gtk-large-toolbar=24,24:gtk-dnd=32,32" - gtk-toolbar-icon-size = small-toolbar - - # disable images in buttons. i've only seen ugly delphi apps use this feature. diff --git a/contrib/win32/patches/gwin32.c.diff b/contrib/win32/patches/gwin32.c.diff new file mode 100644 index 0000000..0738768 --- /dev/null +++ b/contrib/win32/patches/gwin32.c.diff @@ -0,0 +1,20 @@ +--- gwin32.c.0 2012-04-01 15:34:07 -0400 ++++ gwin32.c 2012-04-01 15:33:21 -0400 +@@ -396,6 +396,8 @@ + + #if !defined (_WIN64) + ++#undef g_win32_get_package_installation_directory ++ + /* DLL ABI binary compatibility version that uses system codepage file names */ + + gchar * +@@ -473,6 +475,8 @@ + + #if !defined (_WIN64) + ++#undef g_win32_get_package_installation_subdirectory ++ + /* DLL ABI binary compatibility version that uses system codepage file names */ + + gchar * diff --git a/contrib/win32/patches/gwin32.h.diff b/contrib/win32/patches/gwin32.h.diff new file mode 100644 index 0000000..f917392 --- /dev/null +++ b/contrib/win32/patches/gwin32.h.diff @@ -0,0 +1,14 @@ +--- gwin32.h.0 2012-03-11 20:42:42 -0400 ++++ gwin32.h 2012-04-01 15:13:03 -0400 +@@ -86,11 +86,9 @@ + #ifndef G_DISABLE_DEPRECATED + + #ifndef __GTK_DOC_IGNORE__ +-#ifdef _WIN64 + #define g_win32_get_package_installation_directory g_win32_get_package_installation_directory_utf8 + #define g_win32_get_package_installation_subdirectory g_win32_get_package_installation_subdirectory_utf8 + #endif +-#endif + + gchar* g_win32_get_package_installation_directory (const gchar *package, + const gchar *dll_name); diff --git a/contrib/win32/patches/libxml-testThreads.c.diff b/contrib/win32/patches/libxml-testThreads.c.diff deleted file mode 100644 index c8177fe..0000000 --- a/contrib/win32/patches/libxml-testThreads.c.diff +++ /dev/null @@ -1,10 +0,0 @@ ---- testThreads.c.0 2010-10-12 02:25:32 -0400 -+++ testThreads.c 2011-12-28 18:36:34 -0500 -@@ -107,7 +107,6 @@ - - for (i = 0; i < num_threads; i++) { - results[i] = NULL; -- tid[i] = (pthread_t) -1; - } - - for (i = 0; i < num_threads; i++) { diff --git a/contrib/win32/patches/mms-Makefile.am.diff b/contrib/win32/patches/mms-Makefile.am.diff new file mode 100644 index 0000000..50c5c97 --- /dev/null +++ b/contrib/win32/patches/mms-Makefile.am.diff @@ -0,0 +1,11 @@ +--- Makefile.am.0 2012-07-01 21:24:36 -0400 ++++ Makefile.am 2012-07-01 21:24:56 -0400 +@@ -22,7 +22,7 @@ + # noinst_HEADERS = + + libmms_la_LDFLAGS = -version-info 0:2:0 -no-undefined -export-dynamic +-libmms_la_LIBADD = $(GLIB_LIBS) ++libmms_la_LIBADD = $(MMS_LIBS) $(GLIB_LIBS) + + libmmsincdir = $(includedir)/libmms + |