build/win: Add a jhbuild project for making windows binaries.

This was originally here:
http://github.com/drawoc/windows-gimp-jhbuild
This commit is contained in:
Michael Henning 2013-08-28 16:05:18 -04:00
parent 0df8ae52fb
commit 7e80a4f891
49 changed files with 7087 additions and 0 deletions

2
build/windows/jhbuild/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
checkout/
targets/

View File

@ -0,0 +1,55 @@
Doing a Simple Build
====================
To begin with, you need to install jhbuild, mingw-w64, and a few other build-related dependencies.
If you're using debian, install these packages:
sudo apt-get install build-essential mingw-w64 git jhbuild automake autoconf libtool libgtk2.0-dev ragel intltool bison flex gperf gtk-doc-tools nasm ruby
From there, in theory, you can simply clone this repo, cd into it, and run:
./build
That will build the development version of the gimp.
If you'd rather build the stable version of the gimp, run this instead:
MODULE=gimp-stable ./build
If you'd like to build with debigging information, run:
BUILD_FLAVOUR=dbg ./build
What if it doesn't work out of the box?
=======================================
I've actually never had that work out of the box, so chances are you'll need to adjust things a bit.
If you get an error along the lines of `no: command not found` while building GTK+, then that means gdk-pixbuf-csource can't be found.
You can fix this by installing your distro's GTK+ 2 development package.
(libgtk2.0-dev on debian)
If you get an error that looks like this while building cairo:
In file included from getline.c:31:0:
cairo-missing.h:45:17: error: conflicting types for 'ssize_t'
In file included from /usr/lib/gcc/i486-mingw32/4.7.0/../../../../i486-mingw32/include/stdio.h:534:0,
from cairo-missing.h:36,
from getline.c:31:
/usr/lib/gcc/i486-mingw32/4.7.0/../../../../i486-mingw32/include/sys/types.h:118:18: note: previous declaration of 'ssize_t' was here
In file included from strndup.c:31:0:
cairo-missing.h:45:17: error: conflicting types for 'ssize_t'
In file included from /usr/lib/gcc/i486-mingw32/4.7.0/../../../../i486-mingw32/include/stdio.h:534:0,
from cairo-missing.h:36,
from strndup.c:31:
/usr/lib/gcc/i486-mingw32/4.7.0/../../../../i486-mingw32/include/sys/types.h:118:18: note: previous declaration of 'ssize_t' was here
Then you need to add `-D_SSIZE_T_DEFINED` to your MINGW_CFLAGS, like this:
export MINGW_CFLAGS="-D_SSIZE_T_DEFINED"
Other Scripts
=============
There are a few other scripts included in this repo:
* ./clean will remove all build artifacts (but leave the downloaded tarballs), leaving you with a clean setup.
* ./mkarchive will create self extracting archives of the gimp.
* ./split-build will do a special build where it builds both gimp-dev and gimp-stable but the two builds share the same dependencies. The directories then needs to be merged using ./mkarchive.

6
build/windows/jhbuild/build Executable file
View File

@ -0,0 +1,6 @@
#!/bin/sh
set -e
chmod a-w win32.cache
jhbuild --file=build.jhbuildrc $*
chmod u+w win32.cache

View File

@ -0,0 +1,244 @@
# -*- mode: python -*-
# This code is licensed under the GPLv2 License
# Derived work from the original freedesktop.org example.jhbuildrc
#
# This jhbuildrc file is created for the purpose of cross compile Gtk+
# with Mingw32 under Linux.
#
# Author: Alberto Ruiz <aruiz@gnome.org>
#
# modified by: Rolf Gebhardt <rg@klige.de>
#
moduleset = os.environ['PWD']+'/gimp.moduleset'
module = os.environ.get('MODULE', 'gimp-dev')
modules = [module]
flavour = os.environ.get('BUILD_FLAVOUR', 'rls')
if flavour == 'rls':
flavour_ext = ''
flavour_opt = '--enable-debug=no'
flavour_cflags = ""
else:
flavour_ext = '-dbg'
flavour_opt = "--enable-debug=yes"
flavour_cflags = " -g -O0 "
if module == 'gimp-common':
modules.append ("gdb")
# checkoutroot: path to download packages elsewhere
# prefix: target path to install the compiled binaries
checkoutroot = os.environ['PWD']+'/checkout/'
prefix = os.environ['PWD'] + '/targets/' + module + flavour_ext + '/'
os.environ['prefix'] = prefix
searchprefix = os.environ['PWD']+'/targets/gimp-common' + flavour_ext + '/'
#The host value is obtained with the result of executing
#the config.guess script on any of the packages.
#This value must be valid for most linux/x86 out there
os.environ['HOST'] = 'x86_64-unknown-linux-gnu'
os.environ['TARGET'] = os.environ.get('MINGW_TARGET', 'i686-w64-mingw32')
os.environ['PKG_CONFIG_LIBDIR'] = ""
addpath('PKG_CONFIG_LIBDIR', os.path.join(searchprefix, 'lib', 'pkgconfig'))
addpath('PKG_CONFIG_LIBDIR', os.path.join(searchprefix, 'share', 'pkgconfig'))
os.environ['PKG_CONFIG_PATH'] = os.environ['PKG_CONFIG_LIBDIR']
#Prefix for all the tools
mingw_tool_prefix = os.environ.get('MINGW_TOOLPREFIX', os.environ.get('MINGW_LOCATION', '/usr') + '/bin/' + os.environ['TARGET'] + '-')
mingw_tools = {'ADDR2LINE': 'addr2line',
'AS': 'as', 'CC': 'gcc', 'CPP': 'cpp',
'Cppfilt': 'c++filt', 'CXX': 'g++',
'DLLTOOL': 'dlltool', 'DLLWRAP': 'dllwrap',
'GCOV': 'gcov', 'LD': 'ld', 'NM': 'nm',
'OBJCOPY': 'objcopy', 'OBJDUMP': 'objdump',
'READELF': 'readelf', 'SIZE': 'size',
'STRINGS': 'strings', 'WINDRES': 'windres',
'AR': 'ar', 'RANLIB': 'ranlib', 'STRIP': 'strip'}
#Exporting all as enviroment variables with its prefix
mingw_tools_args = str()
for tool in mingw_tools.keys():
fullpath_tool = mingw_tool_prefix + mingw_tools[tool]
os.environ[tool] = fullpath_tool
# Allow enabling ccache
if os.environ.get('MINGW_USE_CCACHE', '') == 'yes':
os.environ['CC'] = 'ccache ' + os.environ['CC']
os.environ['CPP'] = 'ccache ' + os.environ['CPP']
os.environ['CXX'] = 'ccache ' + os.environ['CXX']
#Added another common env var name for windres
os.environ['RC'] = os.environ['WINDRES']
#Exporting tool flags enviroment variables
os.environ['LDFLAGS'] = '-L'+searchprefix+'/lib'
os.environ['CFLAGS'] = '-mms-bitfields -march=i686 -I'+searchprefix+'/include -DLIBXML_STATIC '
os.environ['CPPFLAGS'] = '-I'+searchprefix+'/include'
os.environ['CXXFLAGS'] = '-mms-bitfields -march=i686'
os.environ['CFLAGS'] += os.environ.get('MINGW_CFLAGS', '')
os.environ['CFLAGS'] += flavour_cflags
os.environ['CXXFLAGS']+= flavour_cflags
#Don't install libraries in lib64, even if compiling on 64-bit machines
use_lib64 = False
#Make scripts run with the interpreter that's running this script
#(required wherever /usr/bin/python is python 3)
import sys
os.environ['PYTHON'] = os.environ.get("PYTHON", sys.executable)
#needed by win32/Makefile.gcc of zlib
os.environ['INCLUDE_PATH'] = prefix+'/include'
os.environ['LIBRARY_PATH'] = prefix+'/lib'
os.environ['BINARY_PATH'] = prefix+'/bin'
#Populating autogenargs
autogenargs = ' --build='+os.environ['HOST']
autogenargs += ' --host='+os.environ['TARGET']
autogenargs += ' --disable-docs'
autogenargs += ' --enable-all-warnings --enable-maintainer-mode'
autogenargs += ' --disable-static'
autogenargs += ' '+flavour_opt
for tool in ('AR', 'RANLIB', 'STRIP', 'AS',
'DLLTOOL', 'OBJDUMP', 'NM', 'WINDRES'):
autogenargs += ' '+tool+'="'+os.environ[tool]+'" '
#Module specific configure arguments
module_autogenargs['zlib'] = ' --prefix='+prefix+' --shared'
module_autogenargs['jasper'] = autogenargs + """ --enable-shared"""
module_autogenargs['gettext'] = autogenargs + """ --without-emacs \
--without-cvs \
--disable-curses \
--disable-java \
--disable-native-java \
--enable-relocatable \
--enable-threads=win32"""
module_autogenargs['glib2'] = autogenargs + """ --disable-gtk-doc \
--disable-modular-tests \
--cache-file=""" + os.environ['PWD'] + "/win32.cache"
module_autogenargs['cairo'] = autogenargs + """ --enable-xlib=no \
--enable-xlib-xrender=no \
--enable-xcb=no \
--enable-xcb-shm=no \
--enable-pthread=no \
--enable-win32-font=yes"""
module_autogenargs['pixman'] = autogenargs + """ --enable-gtk=no"""
module_autogenargs['pango'] = autogenargs + """ --disable-gtk-doc \
--enable-explicit-deps=no \
--with-included-modules"""
module_autogenargs['atk'] = autogenargs + """ --disable-glibtest \
--disable-gtk-doc \
--enable-introspection=no"""
module_autogenargs['gdk-pixbuf2']= autogenargs + """ --with-included-loaders"""
module_autogenargs['gtk2'] = autogenargs + """ --disable-glibtest \
--disable-gtk-doc \
--disable-cups"""
module_autogenargs['gtk3'] = autogenargs + """ --disable-glibtest \
--disable-gtk-doc \
--disable-cups \
--enable-gtk2-dependency"""
module_autogenargs['fontconfig'] = autogenargs + """ --with-arch=i686 \
--enable-libxml2"""
module_autogenargs['icu'] = autogenargs + """ --with-cross-build=$(pwd)/../icu-native/ """
module_autogenargs['libxml2'] = autogenargs + """ --with-python=no \
--with-iconv=yes"""
module_autogenargs['librsvg'] = autogenargs + """ --enable-introspection=no"""
module_autogenargs['libsoup'] = autogenargs + """ --without-apache-httpd"""
module_autogenargs['libwmf'] = autogenargs + """ --disable-gd \
--without-x \
--with-freetype=""" + prefix
module_autogenargs['ghostscript']= autogenargs + """ --without-jasper \
--with-system-libtiff \
--without-x \
--disable-cups \
--disable-contrib """
module_autogenargs['poppler']= autogenargs + """ ac_cv_func_strcpy_s='no'\
ac_cv_func_strcat_s='no' """
module_autogenargs['webkitgtk'] = autogenargs + """ --with-gtk=2.0 \
--with-target=win32 \
--disable-webkit2 \
--disable-geolocation \
--disable-video \
--disable-spellcheck \
--disable-credential-storage \
--disable-fast-malloc \
--disable-debug \
--disable-debug-symbols \
--disable-debug-features \
\
--disable-gamepad \
--with-acceleration_backend=none"""
module_autogenargs['babl'] = autogenargs + """ --enable-introspection=no"""
module_autogenargs['gegl'] = autogenargs + """ --enable-introspection=no \
--with-sdl=no"""
module_autogenargs['gimp-stable']= autogenargs + """ --disable-python \
--disable-gtk-doc """
module_autogenargs['gimp-dev'] = autogenargs + """ --disable-python \
--disable-gtk-doc """
module_autogenargs['gimp-gtk3'] = autogenargs + """ --disable-python \
--disable-gtk-doc """
module_autogenargs['gdb'] = autogenargs.replace ("--disable-static", "")
module_makeargs['mingw32-pthreads']= " CROSS=" + mingw_tool_prefix
module_makeargs['libmng'] = " CC=" + mingw_tool_prefix + "gcc"
module_extra_env.update (
{'mingw32-pthreads':
{'PREFIX': prefix, 'INSTALL': 'install'},
'webkitgtk':
{'CXXFLAGS': os.environ['CXXFLAGS'] + ' -I' + checkoutroot + 'pthreads-w32-2-9-1-release -w'},
'libmng':
{'PREFIX': prefix, 'CFLAGS': os.environ['CFLAGS'] + os.environ['LDFLAGS']},
'ghostscript':
{'CFLAGS': os.environ['CFLAGS'].replace ("-march=i686", "").replace ("-O0", "").replace ("-mms-bitfields", ""), 'ac_cv_lib_pthread_pthread_create': 'no', 'CC': os.environ['CC'] + " -mms-bitfields"},
'icu-native': {},
# Ensure that gimp doesn't get the host machine's freetype-config
'gimp-dev':
{'FREETYPE_CONFIG': os.path.join(searchprefix, 'bin', 'freetype-config'),
'ac_cv_lib_bz2_BZ2_bzCompress': 'yes',
'WMF_CONFIG': os.path.join(searchprefix, 'bin', 'libwmf-config')},
'gimp-stable':
{'FREETYPE_CONFIG': os.path.join(searchprefix, 'bin', 'freetype-config'),
'ac_cv_lib_bz2_BZ2_bzCompress': 'yes',
'WMF_CONFIG': os.path.join(searchprefix, 'bin', 'libwmf-config')},
'gimp-gtk3':
{'FREETYPE_CONFIG': os.path.join(searchprefix, 'bin', 'freetype-config'),
'ac_cv_lib_bz2_BZ2_bzCompress': 'yes',
'WMF_CONFIG': os.path.join(searchprefix, 'bin', 'libwmf-config')},
})

View File

@ -0,0 +1,14 @@
#!/bin/bash
grep -e entry targets/*/_jhbuild/packagedb.xml | grep -o -e "package[^//]*" | while read line; do
COUPLE=`echo $line | grep -o -e "\"[^\"]*\"" | sed s/\"//g`
PACKAGE=`echo "$COUPLE" | sed -n 1p`
VERSION=`echo "$COUPLE" | sed -n 2p | grep -o -e "[^- :]*" | sed -n 1p`
PACVERSION=`pacman -Qi $PACKAGE | grep Version | grep -o -e "[^- :]*" | sed -n 2p`
if [ "$VERSION" != "$PACVERSION" ]; then
echo $PACKAGE ":" $VERSION ":" $PACVERSION
fi
done
#pacman -Qi $1 | grep Version | grep -o -e "[^- :]*" | sed -n 2p

10
build/windows/jhbuild/clean Executable file
View File

@ -0,0 +1,10 @@
#!/bin/bash
pushd checkout
rm -rf *-*/
popd
if [[ "$1" != "--skip-targets" ]]; then
echo "Cleaning targets"
rm -rf targets/*
fi

View File

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<moduleset>
<repository type="tarball" name="bzip.org" href="http://www.bzip.org/" />
<repository type="tarball" name="tukaani.org"
href="http://tukaani.org/" />
<repository type="tarball" name="zlib.net"
href="http://zlib.net/" />
<autotools id="bzip2">
<branch version="1.0.6" repo="bzip.org"
module="1.0.6/bzip2-1.0.6.tar.gz"
hash="md5:00b516f4704d4a7cb50a1d97e6e8e15b">
<!-- From http://ftp.suse.com/pub/people/sbrabec/bzip2/ -->
<patch file="bzip2-1.0.6-autoconfiscated.patch" strip="1" />
<!-- From openSUSE buildservice -->
<patch file="bzip2-1.0.5-slash.patch" strip="1" />
</branch>
</autotools>
<autotools id="xz" autogen-sh="configure">
<branch version="5.0.5" repo="tukaani.org"
module="xz/xz-5.0.5.tar.xz"
hash="sha256:3515c74d170d0f6ec00820de63106ad16c07bae55a59c174b4741242c76264a4">
</branch>
</autotools>
<autotools id="zlib" autogen-sh="configure" makeargs="-f win32/Makefile.gcc -e zlib1.dll SHARED_MODE=1" makeinstallargs="-f win32/Makefile.gcc -e install SHARED_MODE=1">
<branch version="1.2.8" repo="zlib.net"
module="zlib-1.2.8.tar.xz"
hash="md5:28f1205d8dd2001f26fec1e8c2cebe37">
</branch>
</autotools>
</moduleset>

View File

@ -0,0 +1,3 @@
all:
mkdir -p $(DESTDIR)/$(DESTDIR)/bin/
#echo hi > $(DESTDIR)/$(DESTDIR)/bin/friendly.sh

View File

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<moduleset>
<repository type="tarball" name="ftp.gnu.org"
href="http://ftp.gnu.org/gnu/" />
<repository type="tarball" name="sf.net"
href="http://downloads.sourceforge.net/project/" />
<autotools id="expat" autogen-sh="configure">
<branch version="2.1.0" repo="sf.net"
module="expat/expat/2.1.0/expat-2.1.0.tar.gz"
hash="sha1:b08197d146930a5543a7b99e871cba3da614f6f0">
</branch>
</autotools>
<autotools id="gdb" autogen-sh="configure" makeargs="-j1">
<branch version="7.5.1" repo="ftp.gnu.org"
module="gdb/gdb-7.5.1.tar.bz2"
hash="sha1:d04c832698ac470a88788e719d19ca7c1d4d803d">
</branch>
<dependencies>
<dep package="expat"/>
</dependencies>
</autotools>
</moduleset>

View File

@ -0,0 +1,81 @@
<?xml version="1.0" encoding="UTF-8"?>
<moduleset>
<repository type="git" name="git.gnome.org" default="yes"
href="git://git.gnome.org/"/>
<include href="gtk+.moduleset"/>
<include href="webkitgtk.moduleset"/>
<include href="misclibs.moduleset"/>
<include href="gdb.moduleset"/>
<autotools id="babl">
<branch/>
</autotools>
<autotools id="gegl-0.2">
<branch module="gegl" revision="gegl-0-2"/>
<dependencies>
<dep package="glib2"/>
<dep package="babl"/>
</dependencies>
</autotools>
<autotools id="gegl">
<branch/>
<dependencies>
<dep package="glib2"/>
<dep package="babl"/>
<dep package="libpng"/>
<dep package="libjpeg-turbo"/>
<dep package="libwebp"/>
</dependencies>
</autotools>
<metamodule id="gimp-common">
<dependencies>
<dep package="babl"/>
<dep package="gtk2"/>
<dep package="xz"/>
<dep package="librsvg"/>
<dep package="libexif"/>
<dep package="libmng"/>
<dep package="iso-codes"/>
<dep package="libwmf"/>
<dep package="ghostscript"/>
<dep package="poppler"/>
</dependencies>
<suggests>
<dep package="webkitgtk"/>
</suggests>
</metamodule>
<autotools id="gimp-stable">
<branch module="gimp" revision="gimp-2-8"/>
<dependencies>
<dep package="gimp-common"/>
<dep package="lcms"/>
<dep package="gegl-0.2"/>
</dependencies>
</autotools>
<autotools id="gimp-dev">
<branch module="gimp" revision="master"/>
<dependencies>
<dep package="gimp-common"/>
<dep package="lcms2"/>
<dep package="gegl"/>
</dependencies>
</autotools>
<autotools id="gimp-gtk3">
<branch module="gimp" revision="origin/gtk3-port"/>
<dependencies>
<dep package="gimp-common"/>
<dep package="lcms2"/>
<dep package="gegl"/>
<dep package="gtk3"/>
</dependencies>
</autotools>
</moduleset>

View File

@ -0,0 +1,48 @@
<?xml version="1.0" encoding="UTF-8"?>
<moduleset>
<repository type="tarball" name="gnu.org"
href="http://ftp.gnu.org/pub/gnu/" />
<repository type="tarball" name="gnome.org"
href="http://ftp.gnome.org/pub/gnome/sources/" />
<repository type="tarball" name="sourceware.org"
href="ftp://sourceware.org/pub/" />
<autotools id="iconv" autogen-sh="configure">
<branch version="1.14" repo="gnu.org"
module="libiconv/libiconv-1.14.tar.gz"
hash="sha256:72b24ded17d687193c3366d0ebe7cde1e6b18f0df8c55438ac95be39e8a30613">
</branch>
</autotools>
<autotools id="gettext" autogen-sh="configure">
<branch version="0.18.1.1" repo="gnu.org"
module="gettext/gettext-0.18.1.1.tar.gz"
hash="sha256:93ac71a7afa5b70c1b1032516663658c51e653087f42a3fc8044752c026443e9">
<patch file="gettext_0_18_crossbuild_override_tools_fix.patch"/>
</branch>
<dependencies>
<dep package="iconv"/>
</dependencies>
</autotools>
<autotools id="libffi" autogen-sh="configure">
<branch version="3.0.13" repo="sourceware.org"
module="libffi/libffi-3.0.13.tar.gz"
hash="md5:45f3b6dbc9ee7c7dfbbbc5feba571529">
</branch>
</autotools>
<autotools id="glib2">
<branch version="2.36.3" repo="gnome.org"
module="glib/2.36/glib-2.36.3.tar.xz"
hash="sha256:5ec433bf6ce02e4c436619c3d0b9cecdd1898469398a636bad27c1f5804c761e">
</branch>
<dependencies>
<dep package="gettext"/>
<dep package="iconv"/>
<dep package="zlib"/>
<dep package="libffi"/>
</dependencies>
</autotools>
</moduleset>

View File

@ -0,0 +1,187 @@
<?xml version="1.0" encoding="UTF-8"?>
<moduleset>
<include href="glib.moduleset"/>
<include href="imglibs.moduleset"/>
<include href="compresslibs.moduleset"/>
<repository type="tarball" name="cairographics.org"
href="http://cairographics.org/releases/" />
<repository type="tarball" name="freedesktop.org"
href="http://www.freedesktop.org/software/" />
<repository type="tarball" name="gnome.org"
href="http://ftp.gnome.org/pub/gnome/sources/" />
<repository type="tarball" name="savannah.gnu.org"
href="http://download.savannah.gnu.org/releases/" />
<repository type="tarball" name="xmlsoft.org"
href="ftp://xmlsoft.org/" />
<repository type="git" name="anongit.freedesktop.org"
href="git://anongit.freedesktop.org/"/>
<repository type="tarball" name="icu-project.org"
href="http://download.icu-project.org/files/" />
<autotools id="cairo">
<branch module="cairo" repo="anongit.freedesktop.org"
revision="fb8881e84bb24b2a54ee5aa449b6f5638de36404"/>
<dependencies>
<dep package="zlib"/>
<dep package="libpng"/>
<dep package="pixman"/>
<dep package="fontconfig"/>
<dep package="glib2"/>
</dependencies>
</autotools>
<autotools id="pixman" autogen-sh="configure">
<branch version="0.30.0" repo="cairographics.org"
module="pixman-0.30.0.tar.gz"
hash="sha1:9c25dd0efa2023216e82033b71fcfe1bae9ebaac">
</branch>
</autotools>
<autotools id="pango" autogen-sh="configure">
<branch version="1.34.1" repo="gnome.org"
module="pango/1.34/pango-1.34.1.tar.xz"
hash="sha256:1aea30df34a8ae4fcce71afd22aa5b57224b52916d46e3ea81ff9f1eb130e64c">
</branch>
<dependencies>
<dep package="cairo"/>
<dep package="pixman"/>
<dep package="glib2"/>
<dep package="fontconfig"/>
<dep package="harfbuzz"/>
</dependencies>
</autotools>
<autotools id="atk" autogen-sh="configure" makeinstallargs="install -j1">
<branch version="2.8.0" repo="gnome.org"
module="atk/2.8/atk-2.8.0.tar.xz"
hash="sha256:b22519176226f3e07cf6d932b77852e6b6be4780977770704b32d0f4e0686df4">
</branch>
<dependencies>
<dep package="glib2"/>
</dependencies>
</autotools>
<autotools id="fontconfig" autogen-sh="configure" makeinstallargs="install -j1">
<branch version="2.10.93" repo="freedesktop.org"
module="fontconfig/release/fontconfig-2.10.93.tar.bz2"
hash="sha256:ea901f278848829ed9937d76fb0ce63ad362d7d5b9e75aa6a6b78bfef42e529c">
<!-- local config patch -->
<patch file="fontconfig-fix-config-dir.patch" strip="0"/>
</branch>
<dependencies>
<dep package="freetype2"/>
</dependencies>
</autotools>
<autotools id="freetype2" autogen-sh="configure">
<branch version="2.4.10" repo="savannah.gnu.org"
module="freetype/freetype-2.4.10.tar.bz2"
hash="sha256:0c8e242c33c45928de560d7d595db06feb41d1b22167e37260ceabe72f9e992f">
</branch>
<dependencies>
<dep package="bzip2"/>
<dep package="libxml2"/>
</dependencies>
</autotools>
<autotools id="icu" autogen-sh="source/runConfigureICU MinGW ">
<branch version="51.2" repo="icu-project.org"
checkoutdir="icu-mingw"
module="icu4c/51.2/icu4c-51_2-src.tgz"
hash="md5:072e501b87065f3a0ca888f1b5165709">
<patch file="icu-unexport-target.patch" strip="1"/>
<patch file="icu-fix-library-names.patch" strip="1"/>
</branch>
<dependencies>
<dep package="icu-native"/>
</dependencies>
</autotools>
<autotools id="icu-native" autogen-sh=" || env -i source/runConfigureICU Linux ; true " makeinstallargs=" -f ../../fake.mk ">
<branch version="51.2" repo="icu-project.org"
checkoutdir="icu-native"
module="icu4c/51.2/icu4c-51_2-src.tgz"
hash="md5:072e501b87065f3a0ca888f1b5165709">
<patch file="icu-unexport-target.patch" strip="1"/>
</branch>
</autotools>
<autotools id="harfbuzz">
<branch version="0.9.19" repo="freedesktop.org"
module="harfbuzz/release/harfbuzz-0.9.19.tar.bz2"
hash="sha256:d2da0f060d47f6ad9de8c8781bb21fa4b9eae8ea1cd1e956b814095baa002f35">
</branch>
<dependencies>
<dep package="cairo"/>
<dep package="icu"/>
<dep package="freetype2"/>
</dependencies>
</autotools>
<autotools id="libxml2" autogen-sh="configure">
<branch version="2.9.1" repo="xmlsoft.org"
module="libxml2/libxml2-2.9.1.tar.gz"
hash="sha256:fd3c64cb66f2c4ea27e934d275904d92cec494a8e8405613780cbc8a71680fdb">
</branch>
<dependencies>
<dep package="iconv"/>
</dependencies>
</autotools>
<autotools id="libxslt" autogen-sh="configure">
<branch version="1.1.28" repo="xmlsoft.org"
module="libxslt/libxslt-1.1.28.tar.gz"
hash="sha256:5fc7151a57b89c03d7b825df5a0fae0a8d5f05674c0e7cf2937ecec4d54a028c">
<!-- From: OBS -->
<patch file="libxslt-1.1.26-w64.patch" strip="1"/>
</branch>
<dependencies>
<dep package="iconv"/>
<dep package="libxml2"/>
<dep package="zlib"/>
</dependencies>
</autotools>
<autotools id="gdk-pixbuf2" autogen-sh="configure">
<branch version="2.28.2" repo="gnome.org"
module="gdk-pixbuf/2.28/gdk-pixbuf-2.28.2.tar.xz"
hash="sha256:183113c2eb2232963e88864a6a54fd963dbfeb1a3679fb0d3456f9e0b79e4617">
</branch>
<dependencies>
<dep package="glib2"/>
<dep package="imglibs"/>
</dependencies>
</autotools>
<autotools id="gtk2" autogen-sh="configure" makeinstallargs="install -j1">
<branch version="2.24.20" repo="gnome.org"
module="gtk+/2.24/gtk+-2.24.20.tar.xz"
hash="sha256:cc66bcbf9239a7d9861175c681ba95894b55c70dc0b37aad8345c46ecfda0da3">
<!-- https://bug699673.bugzilla-attachments.gnome.org/attachment.cgi?id=244107 -->
<patch file="gtk2-uuid.patch" strip="1"/>
</branch>
<dependencies>
<dep package="glib2"/>
<dep package="gdk-pixbuf2"/>
<dep package="cairo"/>
<dep package="atk"/>
<dep package="pango"/>
</dependencies>
</autotools>
<autotools id="gtk3" autogen-sh="configure" makeinstallargs="install -j1">
<branch version="3.8.2" repo="gnome.org"
module="gtk+/3.8/gtk+-3.8.2.tar.xz"
hash="sha256:1ca80c9c15a1df95d74cefb8c2afe4682ba272a4b489106f04877be2a7aff297">
</branch>
<dependencies>
<dep package="glib2"/>
<dep package="gdk-pixbuf2"/>
<dep package="cairo"/>
<dep package="atk"/>
<dep package="pango"/>
</dependencies>
</autotools>
</moduleset>

View File

@ -0,0 +1,85 @@
<?xml version="1.0" encoding="UTF-8"?>
<moduleset>
<repository type="tarball" name="jasper" href="http://www.ece.uvic.ca/~frodo/jasper/software/" />
<repository type="tarball" name="osgeo.org"
href="http://download.osgeo.org/" />
<repository type="tarball" name="sf.net"
href="http://downloads.sourceforge.net/project/" />
<repository type="tarball" name="webp"
href="https://webp.googlecode.com/files/" />
<include href="compresslibs.moduleset"/>
<autotools id="libtiff" autogen-sh="configure">
<branch version="4.0.3" repo="osgeo.org"
module="libtiff/tiff-4.0.3.zip"
hash="sha1:851126a9876e261bee808f347711be74e3566ed6">
</branch>
<dependencies>
<dep package="libjpeg-turbo"/>
</dependencies>
</autotools>
<autotools id="libpng" autogen-sh="configure">
<branch version="1.6.3" repo="sf.net"
module="libpng/libpng16/1.6.3/libpng-1.6.3.tar.xz"
hash="sha1:adc60a2c117a0929e18bf357e0a1e6115a9e3b76">
</branch>
<dependencies>
<dep package="zlib"/>
</dependencies>
</autotools>
<autotools id="libjpeg-turbo" autogen-sh="configure">
<branch version="1.3.0" repo="sf.net"
module="libjpeg-turbo/1.3.0/libjpeg-turbo-1.3.0.tar.gz"
hash="sha1:1792c964b35604cebd3a8846f1ca6de5976e9c28">
<patch file="libjpeg-turbo-int32.patch" strip="1"/>
<patch file="libjpeg-turbo-boolean.patch" strip="1"/>
</branch>
</autotools>
<autotools id="jasper">
<branch version="1.900.1" repo="jasper"
module="jasper-1.900.1.zip"
hash="sha256:6b905a9c2aca2e275544212666eefc4eb44d95d0a57e4305457b407fe63f9494">
<!-- From openSUSE buildservice -->
<patch file="jasper-1.900.1-sleep.patch" strip="1"/>
<patch file="jasper-1.900.1-mingw32.patch" strip="1"/>
</branch>
<dependencies>
<dep package="libjpeg-turbo"/>
</dependencies>
</autotools>
<metamodule id="imglibs">
<dependencies>
<dep package="libpng"/>
<dep package="libtiff"/>
<dep package="libjpeg-turbo"/>
<dep package="jasper"/>
</dependencies>
</metamodule>
<autotools id="libmng" autogen-sh=" || true" makeargs="-f makefiles/makefile.mingwdll" makeinstallargs="-f makefiles/makefile.mingwdll install">
<branch version="1.0.10" repo="sf.net"
module="libmng/libmng-devel/1.0.10/libmng-1.0.10.tar.gz"
hash="sha1:78ad516a1de79d00de720bf2a7c9afea2c896b09">
<patch file="libmng-1.0.10-mingw.patch" strip="1"/>
<patch file="libmng-1.0.9-dont-leak-zlib-streams.patch" strip="0"/>
<patch file="libmng-change-locations.patch" strip="1"/>
</branch>
<dependencies>
<dep package="zlib"/>
<dep package="libjpeg-turbo"/>
</dependencies>
</autotools>
<autotools id="libwebp" autogen-sh="configure">
<branch version="0.3.1" repo="webp"
module="libwebp-0.3.1.tar.gz"
hash="sha1:52e3d2b6c0b80319baa33b8ebed89618769d9dd8">
</branch>
</autotools>
</moduleset>

View File

@ -0,0 +1,119 @@
<?xml version="1.0" encoding="UTF-8"?>
<moduleset>
<repository type="tarball" name="gnome.org"
href="http://ftp.gnome.org/pub/gnome/sources/" />
<repository type="tarball" name="sf.net"
href="http://downloads.sourceforge.net/project/" />
<repository type="tarball" name="pkg-isocodes"
href="http://pkg-isocodes.alioth.debian.org/downloads/" />
<repository type="tarball" name="poppler"
href="http://poppler.freedesktop.org/" />
<include href="gtk+.moduleset"/>
<autotools id="libcroco" autogen-sh="configure">
<branch version="0.6.8" repo="gnome.org"
module="libcroco/0.6/libcroco-0.6.8.tar.xz"
hash="sha256:ea6e1b858c55219cefd7109756bff5bc1a774ba7a55f7d3ccd734d6b871b8570">
</branch>
<dependencies>
<dep package="glib2"/>
<dep package="libxml2"/>
</dependencies>
</autotools>
<autotools id="librsvg" autogen-sh="configure">
<branch version="2.37.0" repo="gnome.org"
module="librsvg/2.37/librsvg-2.37.0.tar.xz"
hash="sha256:06c57dbcb29369d147b4e6ff4257c42ae5120c504c30fb567a27034ee30fd835">
</branch>
<dependencies>
<dep package="glib2"/>
<dep package="gdk-pixbuf2"/>
<dep package="libxml2"/>
<dep package="cairo"/>
<dep package="pango"/>
<dep package="libcroco"/>
</dependencies>
</autotools>
<autotools id="lcms" autogen-sh="configure">
<branch version="1.19" repo="sf.net"
module="lcms/lcms/1.19/lcms-1.19.tar.gz"
hash="sha256:80ae32cb9f568af4dc7ee4d3c05a4c31fc513fc3e31730fed0ce7378237273a9">
</branch>
</autotools>
<autotools id="lcms2" autogen-sh="configure">
<branch version="2.5" repo="sf.net"
module="lcms/lcms/2.5/lcms2-2.5.tar.gz"
hash="sha256:6727772b44470a2111dba53b9ce4c952b87e7d1b72a31c5ebdf44ba6eb0aa72b">
</branch>
</autotools>
<autotools id="libexif" autogen-sh="configure">
<branch version="0.6.21" repo="sf.net"
module="libexif/libexif/0.6.21/libexif-0.6.21.tar.bz2"
hash="sha1:a52219b12dbc8d33fc096468591170fda71316c0">
</branch>
</autotools>
<autotools id="iso-codes" autogen-sh="configure">
<branch version="3.44" repo="pkg-isocodes"
module="iso-codes-3.44.tar.xz"
hash="sha1:628300675948a637ebd69b21673df73a0fbe1cf4">
</branch>
</autotools>
<autotools id="libwmf" autogen-sh=" || (make clean || true); ./configure">
<branch version="0.2.8.4" repo="sf.net"
module="wvware/libwmf/0.2.8.4/libwmf-0.2.8.4.tar.gz"
hash="sha1:822ab3bd0f5e8f39ad732f2774a8e9f18fc91e89">
<!-- sigh... upstream practically gone... so many patches. -->
<!-- from OBS -->
<patch file="libwmf/libwmf-0.2.8.3-nodocs.patch" strip="1"/>
<patch file="libwmf/libwmf-0.2.8.3-relocatablefonts.patch" strip="1"/>
<patch file="libwmf/libwmf-0.2.8.4-intoverflow.patch" strip="1"/>
<patch file="libwmf/libwmf-0.2.8.4-multiarchdevel.patch" strip="1"/>
<patch file="libwmf/libwmf-0.2.8.4-deps.patch" strip="1"/>
<patch file="libwmf/libwmf-0.2.8.4-reducesymbols.patch" strip="1"/>
<patch file="libwmf/libwmf-0.2.8.4-fallbackfont.patch" strip="1"/>
<patch file="libwmf/libwmf-0.2.8.4-useafterfree.patch" strip="1"/>
<!-- from archlinux -->
<patch file="libwmf/libwmf-0.2.8.4-libpng-1.5.patch" strip="1"/>
</branch>
<dependencies>
<dep package="freetype2"/>
<dep package="zlib"/>
<dep package="libpng"/>
<dep package="libjpeg-turbo"/>
</dependencies>
</autotools>
<autotools id="ghostscript" makeargs="so" makeinstallargs="soinstall">
<branch version="8.71" repo="sf.net"
module="ghostscript/GPL%20Ghostscript/8.71/ghostscript-8.71.tar.xz"
hash="sha1:aa2df7ba23abdfe95d36acec7333eac51768c47d">
<!-- From OBS -->
<patch file="ghostscript-8.71-windows.patch" strip="1"/>
<!-- Local patch: -->
<patch file="ghostscript-change-install-paths.patch" strip="1"/>
</branch>
<dependencies>
<dep package="libtiff"/>
</dependencies>
</autotools>
<autotools id="poppler" autogen-sh="configure">
<branch version="0.22.5" repo="poppler"
module="poppler-0.22.5.tar.gz"
hash="sha1:9491bb33788d7f0ee67da572dc4798004f98323a">
</branch>
<dependencies>
<dep package="freetype2"/>
<dep package="imglibs"/>
<dep package="cairo"/>
</dependencies>
</autotools>
</moduleset>

83
build/windows/jhbuild/mkarchive Executable file
View File

@ -0,0 +1,83 @@
#!/bin/bash
dll_loc=${DLL_LOC:-/usr/lib/gcc/i686-w64-mingw32/4.6}
add_dll (){
cp --reflink=auto $dll_loc/$1 ./bin/
}
dostuff (){
f=$1-i686-`date +%Y-%m-%d`
mkdir -p combined/$f
cp -R -d -L --reflink=auto ./gimp-common$3/* combined/$f
cp -R -d -L --reflink=auto ./$1/* combined/$f
pushd combined
pushd $f
mv lib/libicu*.dll bin/
rm -rf _jhbuild
rm -rf man
rm -rf share/doc
rm -rf share/gtk-doc
rm -rf share/gtk-2.0/demo
rm -rf share/icons
rm -rf share/applications
rm -rf share/info
rm -rf share/man
rm -rf share/gdb
rm -rf share/gettext
rm -f etc/gconf/2/path.jhbuild
rm -f `find -name *.exe | sed -e /gimp/d -e /gspawn/d -e /gdb.exe/d`
add_dll libstdc++-6.dll
add_dll libgcc_s_sjlj-1.dll
pushd bin
rm -f `ls | sed -e /.exe/d -e /.dll/d`
popd
rm -f `find -name *.html`
rm -f `find -name *.htm`
rm -f `find -name *.a`
rm -f `find -name *.def`
rm -f `find -name *.sh`
rm -f `find -name *.h`
rm -f `find -name *.c`
rm -f `find -name *.hxx`
rm -f `find -name *.pc`
rm -f `find -name *.m4`
rm -f `find -name *.manifest`
find -depth -type d -empty -exec rmdir {} \;
echo "@echo off
SET PATH=%~dp0bin\\
start $2" | unix2dos > run_gimp.bat
popd
if [ -e $f/bin/gimp-2.*.exe ]; then
7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on $f.7z $f
cat ~/bin/7z.sfx $f.7z > $f.exe
rm -f $f.7z
else
echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
echo "!! GIMP EXECUTABLE NOT FOUND !!"
echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
fi
rm -rf $f
popd
}
cd targets
dostuff gimp-stable gimp-2.8.exe ""
dostuff gimp-dev gimp-2.9.exe ""
dostuff gimp-stable-dbg gimp-2.8.exe "-dbg"
dostuff gimp-dev-dbg gimp-2.9.exe "-dbg"

View File

@ -0,0 +1,11 @@
--- bzip2-1.0.5.orig/bzip2.c 2007-12-09 12:22:06.000000000 +0000
+++ bzip2-1.0.5/bzip2.c 2008-09-25 12:31:02.000000000 +0100
@@ -128,7 +128,7 @@
#if BZ_LCCWIN32
# include <io.h>
# include <fcntl.h>
-# include <sys\stat.h>
+# include <sys/stat.h>
# define NORETURN /**/
# define PATH_SEP '\\'

View File

@ -0,0 +1,287 @@
diff -urN files/autogen.sh ./autogen.sh
--- bzip2-1.0.5.orig/autogen.sh 1970-01-01 01:00:00.000000000 +0100
+++ bzip2-1.0.5.autoconfiscated/autogen.sh 2009-11-06 12:10:43.574602171 +0100
@@ -0,0 +1,9 @@
+mv LICENSE COPYING
+mv CHANGES NEWS
+touch AUTHORS
+touch ChangeLog
+libtoolize --force
+aclocal
+automake --add-missing --gnu
+autoconf
+./configure "$@"
diff -urN bzip2-1.0.5.orig/README.autotools bzip2-1.0.5.autoconfiscated/README.autotools
--- bzip2-1.0.5.orig/README.autotools 1970-01-01 01:00:00.000000000 +0100
+++ bzip2-1.0.5.autoconfiscated/README.autotools 2010-11-02 17:04:06.000000000 +0100
@@ -0,0 +1,39 @@
+bzip2 autoconfiscated
+=====================
+
+Temporarily at http://ftp.suse.com/pub/people/sbrabec/bzip2/ expecting
+that it will become a new upstream version to prevent per-distribution
+shared library patching done by nearly each Linux vendor separately.
+
+Autoconfiscation brings standard ./configure ; make ; make install
+installation, seamless support of DESTDIR, automatic check for supported
+CFLAGS, standard shared library support, automatic large files CFLAGS
+check and all things that are supported by automake.
+
+It makes obsolete Makefile-libbz2_so and README.COMPILATION.PROBLEMS.
+Now configure should automatically detect correct build flags.
+
+In case of any problem or question with autotools support feel free to
+contact me: Stanislav Brabec <sbrabec@suse.cz>
+
+Autoconfiscated version binaries are exactly equal to
+bzip2-1.0.5.tar.gz. There are only few changes. See below.
+
+
+New features:
+
+Trivial link man pages for bzcat and bunzip2 added.
+
+bzip2.pc file for pkg-config. Packages can use it for checks.
+
+
+Incompatible changes:
+
+soname change. Libtool has no support for two parts soname suffix (e. g.
+libbz2.so.1.0). It must be a single number (e. g. libbz2.so.1). That is
+why soname must change. But I see not a big problem with it. Several
+distributions already use the new number instead of the non-standard
+number from Makefile-libbz2_so.
+
+To be super-safe, I incremented minor number of the library file, so
+both instances of the shared library can live together.
diff -urN bzip2-1.0.5.orig/configure.ac bzip2-1.0.5.autoconfiscated/configure.ac
--- bzip2-1.0.5.orig/configure.ac 1970-01-01 01:00:00.000000000 +0100
+++ bzip2-1.0.5.autoconfiscated/configure.ac 2010-11-02 17:53:47.000000000 +0100
@@ -0,0 +1,70 @@
+# -*- Autoconf -*-
+# Process this file with autoconf to produce a configure script.
+
+AC_PREREQ([2.57])
+AC_INIT([bzip2], [1.0.5], [Julian Seward <jseward@bzip.org>])
+BZIP2_LT_CURRENT=1
+BZIP2_LT_REVISION=6
+BZIP2_LT_AGE=0
+AC_CONFIG_SRCDIR([bzlib.h])
+AC_CONFIG_MACRO_DIR([m4])
+
+AM_INIT_AUTOMAKE
+AM_MAINTAINER_MODE
+
+# Checks for programs.
+AC_PROG_AWK
+AC_PROG_CC
+AC_PROG_INSTALL
+AC_PROG_LN_S
+AC_PROG_MAKE_SET
+AC_PROG_LIBTOOL
+PKG_PROG_PKG_CONFIG
+
+# Checks for libraries.
+
+# Checks for header files.
+
+# Checks for typedefs, structures, and compiler characteristics.
+
+# Check for system features.
+AC_SYS_LARGEFILE
+
+AC_MSG_CHECKING([whether compiler understands -Wall])
+save_CFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS -Wall"
+AC_TRY_COMPILE([], [], [
+ AC_MSG_RESULT([yes])
+], [
+ AC_MSG_RESULT([no])
+ CFLAGS="$save_CFLAGS"
+])
+
+AC_MSG_CHECKING([whether compiler understands -Winline])
+save_CFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS -Winline"
+AC_TRY_COMPILE([], [], [
+ AC_MSG_RESULT([yes])
+], [
+ AC_MSG_RESULT([no])
+ CFLAGS="$save_CFLAGS"
+])
+
+AC_MSG_CHECKING([whether compiler understands -fno-strength-reduce])
+save_CFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS -fno-strength-reduce"
+AC_TRY_COMPILE([], [], [
+ AC_MSG_RESULT([yes])
+], [
+ AC_MSG_RESULT([no])
+ CFLAGS="$save_CFLAGS"
+])
+
+# Checks for library functions.
+
+# Write the output.
+AC_SUBST([BZIP2_LT_CURRENT])
+AC_SUBST([BZIP2_LT_REVISION])
+AC_SUBST([BZIP2_LT_AGE])
+AC_CONFIG_FILES([Makefile bzip2.pc])
+AC_OUTPUT
diff -urN bzip2-1.0.5.orig/Makefile.am bzip2-1.0.5.autoconfiscated/Makefile.am
--- bzip2-1.0.5.orig/Makefile.am 1970-01-01 01:00:00.000000000 +0100
+++ bzip2-1.0.5.autoconfiscated/Makefile.am 2009-11-05 16:45:11.000000000 +0100
@@ -0,0 +1,138 @@
+lib_LTLIBRARIES = libbz2.la
+
+libbz2_la_SOURCES = \
+ blocksort.c \
+ huffman.c \
+ crctable.c \
+ randtable.c \
+ compress.c \
+ decompress.c \
+ bzlib.c
+
+libbz2_la_LDFLAGS = \
+ -version-info $(BZIP2_LT_CURRENT):$(BZIP2_LT_REVISION):$(BZIP2_LT_AGE) \
+ -no-undefined
+
+include_HEADERS = bzlib.h
+
+noinst_HEADERS = bzlib_private.h
+
+bin_PROGRAMS = bzip2 bzip2recover
+
+bzip2_SOURCES = bzip2.c
+bzip2_LDADD = libbz2.la
+
+bzip2recover_SOURCES = bzip2recover.c
+bzip2recover_LDADD = libbz2.la
+
+bin_SCRIPTS = bzgrep bzmore bzdiff
+
+man_MANS = bzip2.1 bzgrep.1 bzmore.1 bzdiff.1
+
+pkgconfigdir = $(libdir)/pkgconfig
+pkgconfig_DATA = bzip2.pc
+
+$(pkgconfig_DATA): $(srcdir)/bzip2.pc.in config.status
+
+install-exec-hook:
+ rm -f $(DESTDIR)$(bindir)/`echo "bunzip2" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
+ rm -f $(DESTDIR)$(bindir)/`echo "bzcat" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
+ rm -f $(DESTDIR)$(bindir)/`echo "bzegrep" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
+ rm -f $(DESTDIR)$(bindir)/`echo "bzfgrep" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
+ rm -f $(DESTDIR)$(bindir)/`echo "bzless" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
+ rm -f $(DESTDIR)$(bindir)/`echo "bzcmp" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
+ $(LN_S) `echo "bzip2" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'` $(DESTDIR)$(bindir)/`echo "bunzip2" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
+ $(LN_S) `echo "bzip2" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'` $(DESTDIR)$(bindir)/`echo "bzcat" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
+ $(LN_S) `echo "bzgrep" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'` $(DESTDIR)$(bindir)/`echo "bzegrep" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
+ $(LN_S) `echo "bzgrep" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'` $(DESTDIR)$(bindir)/`echo "bzfgrep" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
+ $(LN_S) `echo "bzmore" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'` $(DESTDIR)$(bindir)/`echo "bzless" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
+ $(LN_S) `echo "bzdiff" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'` $(DESTDIR)$(bindir)/`echo "bzcmp" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
+
+install-data-hook:
+ echo ".so man1/`echo "bzip2" | sed 's,^.*/,,;$(transform)'`.1" >$(DESTDIR)$(mandir)/man1/`echo "bunzip2" | sed 's,^.*/,,;$(transform)'`.1
+ echo ".so man1/`echo "bzip2" | sed 's,^.*/,,;$(transform)'`.1" >$(DESTDIR)$(mandir)/man1/`echo "bzcat" | sed 's,^.*/,,;$(transform)'`.1
+ echo ".so man1/`echo "bzgrep" | sed 's,^.*/,,;$(transform)'`.1" >$(DESTDIR)$(mandir)/man1/`echo "bzegrep" | sed 's,^.*/,,;$(transform)'`.1
+ echo ".so man1/`echo "bzgrep" | sed 's,^.*/,,;$(transform)'`.1" >$(DESTDIR)$(mandir)/man1/`echo "bzfgrep" | sed 's,^.*/,,;$(transform)'`.1
+ echo ".so man1/`echo "bzmore" | sed 's,^.*/,,;$(transform)'`.1" >$(DESTDIR)$(mandir)/man1/`echo "bzless" | sed 's,^.*/,,;$(transform)'`.1
+ echo ".so man1/`echo "bzdiff" | sed 's,^.*/,,;$(transform)'`.1" >$(DESTDIR)$(mandir)/man1/`echo "bzcmp" | sed 's,^.*/,,;$(transform)'`.1
+
+uninstall-hook:
+ rm -f $(DESTDIR)$(bindir)/`echo "bunzip2" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
+ rm -f $(DESTDIR)$(bindir)/`echo "bzcat" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
+ rm -f $(DESTDIR)$(bindir)/`echo "bzegrep" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
+ rm -f $(DESTDIR)$(bindir)/`echo "bzfgrep" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
+ rm -f $(DESTDIR)$(bindir)/`echo "bzless" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
+ rm -f $(DESTDIR)$(bindir)/`echo "bzcmp" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
+ rm -f $(DESTDIR)$(mandir)/man1/`echo "bunzip2" | sed 's,^.*/,,;$(transform)'`.1
+ rm -f $(DESTDIR)$(mandir)/man1/`echo "bzcat" | sed 's,^.*/,,;$(transform)'`.1
+ rm -f $(DESTDIR)$(mandir)/man1/`echo "bzegrep" | sed 's,^.*/,,;$(transform)'`.1
+ rm -f $(DESTDIR)$(mandir)/man1/`echo "bzfgrep" | sed 's,^.*/,,;$(transform)'`.1
+ rm -f $(DESTDIR)$(mandir)/man1/`echo "bzless" | sed 's,^.*/,,;$(transform)'`.1
+ rm -f $(DESTDIR)$(mandir)/man1/`echo "bzcmp" | sed 's,^.*/,,;$(transform)'`.1
+
+test: bzip2
+ @cat $(srcdir)/words1
+ ./bzip2 -1 <$(srcdir)/sample1.ref >sample1.rb2
+ ./bzip2 -2 <$(srcdir)/sample2.ref >sample2.rb2
+ ./bzip2 -3 <$(srcdir)/sample3.ref >sample3.rb2
+ ./bzip2 -d <$(srcdir)/sample1.bz2 >sample1.tst
+ ./bzip2 -d <$(srcdir)/sample2.bz2 >sample2.tst
+ ./bzip2 -ds <$(srcdir)/sample3.bz2 >sample3.tst
+ cmp $(srcdir)/sample1.bz2 sample1.rb2
+ cmp $(srcdir)/sample2.bz2 sample2.rb2
+ cmp $(srcdir)/sample3.bz2 sample3.rb2
+ cmp sample1.tst $(srcdir)/sample1.ref
+ cmp sample2.tst $(srcdir)/sample2.ref
+ cmp sample3.tst $(srcdir)/sample3.ref
+ @cat $(srcdir)/words3
+
+manual: $(srcdir)/manual.html $(srcdir)/manual.ps $(srcdir)/manual.pdf
+
+manual.ps: $(MANUAL_SRCS)
+ cd $(srcdir); ./xmlproc.sh -ps manual.xml
+
+manual.pdf: $(MANUAL_SRCS)
+ cd $(srcdir); ./xmlproc.sh -pdf manual.xml
+
+manual.html: $(MANUAL_SRCS)
+ cd $(srcdir); ./xmlproc.sh -html manual.xml
+
+EXTRA_DIST = \
+ $(bin_SCRIPTS) \
+ $(man_MANS) \
+ README.autotools \
+ README.XML.STUFF \
+ bz-common.xsl \
+ bz-fo.xsl \
+ bz-html.xsl \
+ bzip.css \
+ bzip2.1.preformatted \
+ bzip2.pc.in \
+ bzip2.txt \
+ dlltest.c \
+ dlltest.dsp \
+ entities.xml \
+ format.pl \
+ libbz2.def \
+ libbz2.dsp \
+ makefile.msc \
+ manual.html \
+ manual.pdf \
+ manual.ps \
+ manual.xml \
+ mk251.c \
+ sample1.bz2 \
+ sample1.ref \
+ sample2.bz2 \
+ sample2.ref \
+ sample3.bz2 \
+ sample3.ref \
+ spewG.c \
+ unzcrash.c \
+ words0 \
+ words1 \
+ words2 \
+ words3 \
+ xmlproc.sh
+
+ACLOCAL_AMFLAGS = -I m4
diff -urN bzip2-1.0.5.orig/bzip2.pc.in bzip2-1.0.5.autoconfiscated/bzip2.pc.in
--- bzip2-1.0.5.orig/bzip2.pc.in 1970-01-01 01:00:00.000000000 +0100
+++ bzip2-1.0.5.autoconfiscated/bzip2.pc.in 2009-11-03 18:48:28.000000000 +0100
@@ -0,0 +1,11 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+bindir=@bindir@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: bzip2
+Description: Lossless, block-sorting data compression
+Version: @VERSION@
+Libs: -L${libdir} -lbz2
+Cflags: -I${includedir}

View File

@ -0,0 +1,11 @@
--- fonts.conf.in.b 2012-07-23 22:01:32.000000000 -0400
+++ fonts.conf.in 2012-12-08 13:47:35.035690934 -0500
@@ -68,7 +68,7 @@
<!--
Load local system customization file
-->
- <include ignore_missing="yes">@CONFIGDIR@</include>
+ <include ignore_missing="yes">conf.d</include>
<!-- Font cache directory list -->

View File

@ -0,0 +1,11 @@
--- Makefile.in.orig 2010-05-09 20:59:19.000000000 +0200
+++ Makefile.in 2010-10-02 00:59:46.000000000 +0200
@@ -211,7 +211,7 @@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = 1.5 gnu no-dependencies
ACLOCAL_AMFLAGS = -I m4
-SUBDIRS = gnulib-local gettext-runtime gettext-tools
+SUBDIRS = gnulib-local gettext-runtime
# DJGPP port.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,24 @@
--- a/base/unix-dll.mak 2013-01-26 13:47:45.112366000 -0500
+++ b/base/unix-dll.mak 2013-01-26 14:03:08.292073462 -0500
@@ -127,13 +127,14 @@
-mkdir -p $(DESTDIR)$(bindir)
-mkdir -p $(DESTDIR)$(libdir)
-mkdir -p $(DESTDIR)$(gsincludedir)
- $(INSTALL_PROGRAM) $(GSSOC) $(DESTDIR)$(bindir)/$(GSSOC_XENAME)
- $(INSTALL_PROGRAM) $(GSSOX) $(DESTDIR)$(bindir)/$(GSSOX_XENAME)
- $(INSTALL_PROGRAM) $(BINDIR)/$(SOBINRELDIR)/$(GS_SONAME_MAJOR_MINOR) $(DESTDIR)$(libdir)/$(GS_SONAME_MAJOR_MINOR)
- $(RM_) $(DESTDIR)$(libdir)/$(GS_SONAME)
- ln -s $(GS_SONAME_MAJOR_MINOR) $(DESTDIR)$(libdir)/$(GS_SONAME)
- $(RM_) $(DESTDIR)$(libdir)/$(GS_SONAME_MAJOR)
- ln -s $(GS_SONAME_MAJOR_MINOR) $(DESTDIR)$(libdir)/$(GS_SONAME_MAJOR)
+ #$(INSTALL_PROGRAM) $(GSSOC) $(DESTDIR)$(bindir)/$(GSSOC_XENAME)
+ #$(INSTALL_PROGRAM) $(GSSOX) $(DESTDIR)$(bindir)/$(GSSOX_XENAME)
+ $(INSTALL_PROGRAM) $(BINDIR)/$(SOBINRELDIR)/$(GS_SONAME_MAJOR_MINOR) $(DESTDIR)$(bindir)/$(GS_SONAME_MAJOR_MINOR)
+ $(INSTALL_PROGRAM) $(BINDIR)/$(SOBINRELDIR)/$(GS_SONAME_BASE).dll.a $(DESTDIR)$(libdir)/$(GS_SONAME_BASE).dll.a
+ #$(RM_) $(DESTDIR)$(libdir)/$(GS_SONAME)
+ #ln -s $(GS_SONAME_MAJOR_MINOR) $(DESTDIR)$(libdir)/$(GS_SONAME)
+ #$(RM_) $(DESTDIR)$(libdir)/$(GS_SONAME_MAJOR)
+ #ln -s $(GS_SONAME_MAJOR_MINOR) $(DESTDIR)$(libdir)/$(GS_SONAME_MAJOR)
$(INSTALL_DATA) $(PSSRC)iapi.h $(DESTDIR)$(gsincludedir)iapi.h
$(INSTALL_DATA) $(PSSRC)ierrors.h $(DESTDIR)$(gsincludedir)ierrors.h
$(INSTALL_DATA) $(GLSRC)gdevdsp.h $(DESTDIR)$(gsincludedir)gdevdsp.h

View File

@ -0,0 +1,30 @@
From be65810b445b429e5db935c8cf8cb1639dcd9356 Mon Sep 17 00:00:00 2001
From: Hib Eris <hib@hiberis.nl>
Date: Mon, 13 May 2013 15:45:18 +0200
Subject: [PATCH] Define INITGUID only for mingw.org compiler
Defining INITGUID causes a build failure with mingw-w64 > r5589.
https://bugzilla.gnome.org/show_bug.cgi?id=699673
---
gdk/win32/gdkdnd-win32.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/gdk/win32/gdkdnd-win32.c b/gdk/win32/gdkdnd-win32.c
index 35ab204..6b35059 100644
--- a/gdk/win32/gdkdnd-win32.c
+++ b/gdk/win32/gdkdnd-win32.c
@@ -68,7 +68,11 @@
*
*/
+/* The mingw.org compiler does not export GUIDS in it's import library. To work
+ * around that, define INITGUID to have the GUIDS declared. */
+#if defined(__MINGW32__) && !defined(__MINGW64_VERSION_MAJOR)
#define INITGUID
+#endif
#include "gdkdnd.h"
#include "gdkproperty.h"
--
1.8.1.2

View File

@ -0,0 +1,21 @@
--- a/source/config/mh-mingw 2012-12-28 16:52:21.141964000 -0500
+++ b/source/config/mh-mingw 2012-12-28 18:24:11.955818449 -0500
@@ -66,16 +66,8 @@
LIBSICU = $(LIBPREFIX)$(STATIC_PREFIX)$(ICUPREFIX)
A = a
-## An import library is needed for z/OS and MSVC
-IMPORT_LIB_EXT = .lib
-
-LIBPREFIX=
-
-# Change the stubnames so that poorly working FAT disks and installation programs can work.
-# This is also for backwards compatibility.
-DATA_STUBNAME = dt
-I18N_STUBNAME = in
-LIBICU = $(STATIC_PREFIX_WHEN_USED)$(ICUPREFIX)
+## import libraries are nice to have under mingw
+IMPORT_LIB_EXT = .dll.a
# The #M# is used to delete lines for icu-config
# Current full path directory.

View File

@ -0,0 +1,11 @@
--- a/source/Makefile.in 2012-12-17 13:17:16.000000000 -0500
+++ b/source/Makefile.in 2012-12-28 14:16:07.628294189 -0500
@@ -21,6 +21,8 @@
docsrchdir = $(docfilesdir)/search
docsrchfiles = $(docsrchdir)/*
+unexport TARGET
+
##
## Build directory information

View File

@ -0,0 +1,22 @@
diff -rup jasper-1.900.1.orig/src/libjasper/Makefile.am jasper-1.900.1.new/src/libjasper/Makefile.am
--- jasper-1.900.1.orig/src/libjasper/Makefile.am 2007-01-19 16:43:07.000000000 -0500
+++ jasper-1.900.1.new/src/libjasper/Makefile.am 2008-09-09 10:08:53.000000000 -0400
@@ -85,5 +85,5 @@ libjasper_la_LIBADD = \
# -release $(LT_RELEASE)
libjasper_la_LDFLAGS = \
- -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
+ -no-undefined -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
diff -rup jasper-1.900.1.orig/src/libjasper/Makefile.in jasper-1.900.1.new/src/libjasper/Makefile.in
--- jasper-1.900.1.orig/src/libjasper/Makefile.in 2007-01-19 16:54:45.000000000 -0500
+++ jasper-1.900.1.new/src/libjasper/Makefile.in 2008-09-09 10:08:43.000000000 -0400
@@ -290,7 +290,7 @@ libjasper_la_LIBADD = \
# -release $(LT_RELEASE)
libjasper_la_LDFLAGS = \
- -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
+ -no-undefined -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
all: all-recursive

View File

@ -0,0 +1,18 @@
diff -rup jasper-1.900.1/src/appl/tmrdemo.c jasper-1.900.1.new/src/appl/tmrdemo.c
--- jasper-1.900.1/src/appl/tmrdemo.c 2007-01-19 16:43:08.000000000 -0500
+++ jasper-1.900.1.new/src/appl/tmrdemo.c 2008-09-09 09:14:21.000000000 -0400
@@ -1,4 +1,5 @@
#include <jasper/jasper.h>
+#include <windows.h>
int main(int argc, char **argv)
{
@@ -43,7 +44,7 @@ int main(int argc, char **argv)
printf("zero time %.3f us\n", t * 1e6);
jas_tmr_start(&tmr);
- sleep(1);
+ Sleep(1);
jas_tmr_stop(&tmr);
t = jas_tmr_get(&tmr);
printf("time delay %.8f s\n", t);

View File

@ -0,0 +1,11 @@
--- a/jmorecfg.h 2013-07-23 22:01:08.303919000 -0400
+++ b/jmorecfg.h 2013-07-23 22:48:46.230315172 -0400
@@ -235,7 +235,7 @@
*/
#ifndef HAVE_BOOLEAN
-typedef int boolean;
+typedef unsigned char boolean;
#endif
#ifndef FALSE /* in case these macros already exist */
#define FALSE 0 /* values of boolean */

View File

@ -0,0 +1,17 @@
--- a/jmorecfg.h 2013-01-06 12:59:42.000000000 -0500
+++ b/jmorecfg.h 2013-07-23 21:55:22.913095787 -0400
@@ -160,8 +160,14 @@
/* INT32 must hold at least signed 32-bit values. */
#ifndef XMD_H /* X11/xmd.h correctly defines INT32 */
+#ifndef _BASETSD_H_ /* Microsoft defines it in basetsd.h */
+#ifndef _BASETSD_H /* MinGW is slightly different */
+#ifndef QGLOBAL_H /* Qt defines it in qglobal.h */
typedef long INT32;
#endif
+#endif
+#endif
+#endif
/* Datatype used for image dimensions. The JPEG standard only supports
* images up to 64K*64K due to 16-bit fields in SOF markers. Therefore

View File

@ -0,0 +1,44 @@
diff -u -r libmng-1.0.10/makefiles/makefile.mingwdll libmng-1.0.10/makefiles/makefile.mingwdll
--- libmng-1.0.10/makefiles/makefile.mingwdll 2005-01-30 11:28:00.000000000 +0100
+++ libmng-1.0.10/makefiles/makefile.mingwdll 2009-12-08 09:35:23.000000000 +0100
@@ -10,8 +10,8 @@
#
# outputs
-LIBMNG_A = libmng.a
-LIBMNG_DLL = libmng.1.dll
+LIBMNG_A = libmng.dll.a
+LIBMNG_DLL = libmng-1.dll
INSTALL_PREFIX = C:/MinGW/
# maybe you sould replace with anti-slashes
@@ -51,7 +51,7 @@
# for i386:
#ALIGN=-malign-loops=2 -malign-functions=2
-CFLAGS=$(ZLIBINC) $(JPEGINC) $(LCMSINC) -Wall -O3 -funroll-loops $(OPTIONS) $(ALIGN) -s
+CFLAGS+=$(ZLIBINC) $(JPEGINC) $(OPTIONS) $(ALIGN) -s
LDFLAGS=-L. -lmng $(ZLIBLIB) $(JPEGLIB) $(LCMSLIB) -lm -s
INCPATH=$(prefix)/include
@@ -88,9 +88,11 @@
$(LIBMNG_A): $(LIBMNG_DLL)
$(LIBMNG_DLL) : $(OBJS)
- dllwrap --implib=$(LIBMNG_A) --dllname=$(LIBMNG_DLL) $(OBJS) $(LDFLAGS)
+ $(CC) --shared -o $(LIBMNG_DLL) $(OBJS) -Wl,--out-implib,$(LIBMNG_A) -Wl,--kill-at $(JPEGLIB) $(ZLIBLIB)
install : $(LIBMNG_A)
+ $(MKDIR) $(INSTALL_PREFIX)bin
+ $(COPY) $(LIBMNG_DLL) $(INSTALL_PREFIX)bin
$(MKDIR) $(INSTALL_PREFIX)include
$(COPY) libmng.h $(INSTALL_PREFIX)include
$(COPY) libmng_conf.h $(INSTALL_PREFIX)include
@@ -99,7 +101,7 @@
$(COPY) $(LIBMNG_A) $(INSTALL_PREFIX)lib
clean:
- $(RM) *.o
+ $(RM) *.o $(LIBMNG_DLL) $(LIBMNG_A)
# DO NOT DELETE THIS LINE -- make depend depends on it.

View File

@ -0,0 +1,14 @@
diff -ur libmng-orig/libmng_zlib.c libmng-1.0.10/libmng_zlib.c
--- libmng_zlib.c 2005-12-15 00:53:13.000000000 +0100
+++ libmng_zlib.c 2007-07-19 13:17:44.000000000 +0200
@@ -162,6 +162,9 @@
#ifdef MNG_SUPPORT_TRACE
MNG_TRACE (pData, MNG_FN_ZLIB_INFLATEINIT, MNG_LC_START);
#endif
+
+ if (pData->bInflating) /* free the old zlib structures */
+ inflateEnd(&pData->sZlib);
/* initialize zlib structures and such */
iZrslt = inflateInit (&pData->sZlib);

View File

@ -0,0 +1,19 @@
--- a/makefiles/makefile.mingwdll 2013-01-06 19:22:47.420140000 -0500
+++ b/makefiles/makefile.mingwdll 2013-01-06 19:23:21.192600233 -0500
@@ -12,14 +12,14 @@
# outputs
LIBMNG_A = libmng.dll.a
LIBMNG_DLL = libmng-1.dll
-INSTALL_PREFIX = C:/MinGW/
+INSTALL_PREFIX = $(DESTDIR)/$(PREFIX)
# maybe you sould replace with anti-slashes
# default build options
OPTIONS = -DMNG_BUILD_DLL -DMNG_ACCESS_CHUNKS -DMNG_STORE_CHUNKS
# Where the zlib library and include files are located
-ZLIBLIB=-lz
+ZLIBLIB=-L$(PREFIX)/lib -lz
#ZLIBLIB=-L../zlib -lz
#ZLIBINC=-I../zlib

View File

@ -0,0 +1,13 @@
--- a/libsoup/soup-request-file.c 2013-03-10 12:57:01.000000000 -0400
+++ b/libsoup/soup-request-file.c 2013-06-27 14:38:43.857078461 -0400
@@ -30,6 +30,10 @@
#include "soup-directory-input-stream.h"
#include "soup-requester.h"
+#ifdef G_OS_WIN32
+#include <string.h>
+#endif
+
/**
* SECTION:soup-request-file
* @short_description: SoupRequest support for "file" and "resource" URIs

View File

@ -0,0 +1,29 @@
diff -ru libwmf-0.2.8.3.orig/Makefile.am libwmf-0.2.8.3/Makefile.am
--- libwmf-0.2.8.3.orig/Makefile.am 2002-12-05 17:09:53.000000000 +0000
+++ libwmf-0.2.8.3/Makefile.am 2004-06-11 13:28:56.149819830 +0100
@@ -1,10 +1,10 @@
if LIBWMF_BUILD_ALL
-DIRHEAVY = . src include fonts doc
+DIRHEAVY = . src include fonts
else
DIRHEAVY = . src include
endif
-DIST_SUBDIRS = . src include fonts doc
+DIST_SUBDIRS = . src include fonts
SUBDIRS = $(DIRHEAVY)
--- libwmf-0.2.8.4.orig/Makefile.in 2005-07-28 09:46:20.000000000 +0100
+++ libwmf-0.2.8.4/Makefile.in 2005-07-28 09:46:29.000000000 +0100
@@ -231,8 +231,8 @@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
@LIBWMF_BUILD_ALL_FALSE@DIRHEAVY = . src include
-@LIBWMF_BUILD_ALL_TRUE@DIRHEAVY = . src include fonts doc
-DIST_SUBDIRS = . src include fonts doc
+@LIBWMF_BUILD_ALL_TRUE@DIRHEAVY = . src include fonts
+DIST_SUBDIRS = . src include fonts
SUBDIRS = $(DIRHEAVY)
bin_SCRIPTS = libwmf-config
WMFEXAMPLES = \

View File

@ -0,0 +1,36 @@
diff -r -u libwmf-0.2.8.3.old/configure.in libwmf-0.2.8.3/configure.in
--- libwmf-0.2.8.3.old/configure.in 2004-02-10 12:47:44.000000000 +0000
+++ libwmf-0.2.8.3/configure.in 2004-05-20 14:16:15.804198513 +0100
@@ -764,14 +764,15 @@
fi
])
-AC_ARG_WITH(fontdir,[ --with-fontdir=DIR install Type1 fonts in DIR],[
- WMF_FONTDIR=$withval
-],[ if test "x$prefix" = "xNONE"; then
- WMF_FONTDIR=$ac_default_prefix/share/$PACKAGE/fonts
- else
- WMF_FONTDIR=$prefix/share/$PACKAGE/fonts
- fi
-])
+#AC_ARG_WITH(fontdir,[ --with-fontdir=DIR install Type1 fonts in DIR],[
+# WMF_FONTDIR=$withval
+#],[ if test "x$prefix" = "xNONE"; then
+# WMF_FONTDIR=$ac_default_prefix/share/$PACKAGE/fonts
+# else
+# WMF_FONTDIR=$prefix/share/$PACKAGE/fonts
+# fi
+#])
+WMF_FONTDIR=$datadir/$PACKAGE/fonts
AC_ARG_WITH(sysfontmap,[ --with-sysfontmap=FILE [default is /usr/share/fonts/fontmap]],[
WMF_SYS_FONTMAP=$withval
diff -r -u libwmf-0.2.8.3.old/fonts/Makefile.am libwmf-0.2.8.3/fonts/Makefile.am
--- libwmf-0.2.8.3.old/fonts/Makefile.am 2001-08-11 15:49:27.000000000 +0100
+++ libwmf-0.2.8.3/fonts/Makefile.am 2004-05-20 14:17:22.970701362 +0100
@@ -1,4 +1,4 @@
-fontdir = @WMF_FONTDIR@
+fontdir = $(datadir)/libwmf/fonts/
bin_SCRIPTS = libwmf-fontmap

View File

@ -0,0 +1,27 @@
--- libwmf-0.2.8.3/libwmf-config.in.noextras-2 2004-02-10 06:41:26.000000000 -0600
+++ libwmf-0.2.8.3/libwmf-config.in 2005-07-06 15:18:26.000000000 -0500
@@ -105,7 +105,7 @@
libwmf_buildstyle=@LIBWMF_BUILDSTYLE@
if test $libwmf_buildstyle = heavy; then
- wmf_libs="-lwmf -lwmflite $wmf_liblflags"
+ wmf_libs="-lwmf -lwmflite"
else
wmf_libs="-lwmflite"
fi
@@ -116,7 +116,7 @@
includes="$includes -I@includedir@/libwmf/gd"
fi
if test "$lib_wmf" = "yes"; then
- includes="$includes -I@includedir@"
+ includes="$includes"
fi
echo $includes
fi
@@ -134,5 +134,5 @@
fi
done
- echo $libdirs $my_wmf_libs
+ echo $my_wmf_libs
fi

View File

@ -0,0 +1,18 @@
diff -ru libwmf-0.2.8.4.orig/src/font.c libwmf-0.2.8.4/src/font.c
--- libwmf-0.2.8.4.orig/src/font.c 2005-07-27 21:35:06.000000000 +0100
+++ libwmf-0.2.8.4/src/font.c 2006-01-03 12:53:38.000000000 +0000
@@ -1429,11 +1429,9 @@
if (GS->len == 0) return (0);
name = font->lfFaceName;
- if (name == 0)
- { WMF_DEBUG (API,"No font name?");
- API->err = wmf_E_Glitch;
- return (0);
- }
+
+ if (name == 0 || name[0] == 0)
+ name = "Times";
/* Find first white-space character or eol
*/

View File

@ -0,0 +1,27 @@
--- libwmf-0.2.8.4.orig/src/player.c 2002-12-10 19:30:26.000000000 +0000
+++ libwmf-0.2.8.4/src/player.c 2006-07-12 15:12:52.000000000 +0100
@@ -42,6 +42,7 @@
#include "player/defaults.h" /* Provides: default settings */
#include "player/record.h" /* Provides: parameter mechanism */
#include "player/meta.h" /* Provides: record interpreters */
+#include <stdint.h>
/**
* @internal
@@ -132,8 +134,14 @@
}
}
-/* P->Parameters = (unsigned char*) wmf_malloc (API,(MAX_REC_SIZE(API)-3) * 2 * sizeof (unsigned char));
- */ P->Parameters = (unsigned char*) wmf_malloc (API,(MAX_REC_SIZE(API) ) * 2 * sizeof (unsigned char));
+ if (MAX_REC_SIZE(API) > UINT32_MAX / 2)
+ {
+ API->err = wmf_E_InsMem;
+ WMF_DEBUG (API,"bailing...");
+ return (API->err);
+ }
+
+ P->Parameters = (unsigned char*) wmf_malloc (API,(MAX_REC_SIZE(API) ) * 2 * sizeof (unsigned char));
if (ERR (API))
{ WMF_DEBUG (API,"bailing...");

View File

@ -0,0 +1,12 @@
diff -urN libwmf-0.2.8.4.old/src/ipa/ipa/bmp.h libwmf-0.2.8.4/src/ipa/ipa/bmp.h
--- libwmf-0.2.8.4.old/src/ipa/ipa/bmp.h 2011-05-23 19:14:23.000000000 +0200
+++ libwmf-0.2.8.4/src/ipa/ipa/bmp.h 2011-05-23 19:15:11.000000000 +0200
@@ -66,7 +66,7 @@
return;
}
- if (setjmp (png_ptr->jmpbuf))
+ if (setjmp(png_jmpbuf(png_ptr)))
{ WMF_DEBUG (API,"Failed to write bitmap as PNG! (setjmp failed)");
png_destroy_write_struct (&png_ptr,&info_ptr);
wmf_free (API,buffer);

View File

@ -0,0 +1,130 @@
--- libwmf-0.2.8.4.orig/configure.in 2006-05-02 09:08:35.000000000 +0100
+++ libwmf-0.2.8.4/configure.in 2006-05-02 09:21:10.000000000 +0100
@@ -884,7 +884,7 @@
src/extra/gd/Makefile
src/ipa/Makefile
src/convert/Makefile
-libwmf-config
+libwmf.pc
libwmf.spec
])
--- /dev/null 2006-04-29 13:38:37.035974750 +0100
+++ libwmf-0.2.8.4/libwmf-config 2006-05-02 09:20:49.000000000 +0100
@@ -0,0 +1,91 @@
+#!/bin/sh
+
+exec_prefix_set=no
+
+prefix=`pkg-config --variable=prefix libwmf`
+exec_prefix=`pkg-config --variable=exec_prefix libwmf`
+
+usage()
+{
+ cat <<EOF
+Usage: libwmf-config [OPTIONS] [LIBRARIES]
+Options:
+ [--prefix[=DIR]]
+ [--exec-prefix[=DIR]]
+ [--version]
+ [--libs]
+ [--cflags]
+Libraries/Headers:
+ gd
+ wmf
+EOF
+ exit $1
+}
+
+if test $# -eq 0; then
+ usage 1 1>&2
+fi
+
+lib_gd=no
+lib_wmf=yes
+
+while test $# -gt 0; do
+ case "$1" in
+ -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
+ *) optarg= ;;
+ esac
+
+ case $1 in
+ --prefix=*)
+ prefix=$optarg
+ if test $exec_prefix_set = no ; then
+ exec_prefix=$optarg
+ fi
+ ;;
+ --prefix)
+ echo_prefix=yes
+ ;;
+ --exec-prefix=*)
+ exec_prefix=$optarg
+ exec_prefix_set=yes
+ ;;
+ --exec-prefix)
+ echo_exec_prefix=yes
+ ;;
+ --version)
+ pkg-config --modversion libwmf
+ ;;
+ --cflags)
+ echo_cflags=yes
+ ;;
+ --libs)
+ echo_libs=yes
+ ;;
+ gd)
+ lib_gd=yes
+ ;;
+ wmf)
+ lib_wmf=yes
+ ;;
+ *)
+ usage 1 1>&2
+ ;;
+ esac
+ shift
+done
+
+if test "$echo_prefix" = "yes"; then
+ echo $prefix
+fi
+
+if test "$echo_exec_prefix" = "yes"; then
+ echo $exec_prefix
+fi
+
+if test "$echo_cflags" = "yes"; then
+ pkg-config --cflags libwmf
+fi
+
+if test "$echo_libs" = "yes"; then
+ pkg-config --libs libwmf
+fi
--- /dev/null 2006-04-29 13:38:37.035974750 +0100
+++ libwmf-0.2.8.4/libwmf.pc.in 2006-05-02 09:21:24.000000000 +0100
@@ -0,0 +1,10 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: libwmf
+Description: A library for reading and converting Windows MetaFile vector graphics (WMF)
+Version: @LIBWMF_VERSION@
+Libs: -lwmf -lwmflite @WMF_LIBFLAGS@
+Cflags: @WMF_CONFIG_CFLAGS@
--- libwmf-0.2.8.4.orig/Makefile.am 2006-05-02 09:08:35.000000000 +0100
+++ libwmf-0.2.8.4/Makefile.am 2006-05-02 09:28:34.000000000 +0100
@@ -10,6 +10,9 @@
bin_SCRIPTS = libwmf-config
+pkgconfigdir = $(libdir)/pkgconfig
+pkgconfig_DATA = libwmf.pc
+
WMFEXAMPLES = \
examples/2doorvan.wmf \
examples/Eg.wmf \

View File

@ -0,0 +1,520 @@
diff -ru libwmf-0.2.8.4/src/extra/gd/gd.c libwmf-0.2.8.4.symbols/src/extra/gd/gd.c
--- libwmf-0.2.8.4/src/extra/gd/gd.c 2005-07-27 21:35:05.000000000 +0100
+++ libwmf-0.2.8.4.symbols/src/extra/gd/gd.c 2006-11-16 12:27:05.000000000 +0000
@@ -249,6 +249,7 @@
}
HWBType;
+#if 0
static HWBType *
RGB_to_HWB (RGBType RGB, HWBType * HWB)
{
@@ -308,7 +309,6 @@
return diff;
}
-#if 0
/*
* This is not actually used, but is here for completeness, in case someone wants to
* use the HWB stuff for anything else...
@@ -355,6 +355,7 @@
}
#endif
+#if 0
int
gdImageColorClosestHWB (gdImagePtr im, int r, int g, int b)
{
@@ -384,6 +385,7 @@
}
return ct;
}
+#endif
int
gdImageColorExact (gdImagePtr im, int r, int g, int b)
@@ -677,7 +679,7 @@
}
}
-int
+static int
gdImageGetTrueColorPixel (gdImagePtr im, int x, int y)
{
int p = gdImageGetPixel (im, x, y);
@@ -1286,11 +1288,11 @@
return len;
}
-#ifndef HAVE_LSQRT
+#if 0
/* If you don't have a nice square root function for longs, you can use
** this hack
*/
-long
+static long
lsqrt (long n)
{
long result = (long) sqrt ((double) n);
@@ -2250,7 +2252,7 @@
}
}
-int gdCompareInt (const void *a, const void *b);
+static int gdCompareInt (const void *a, const void *b);
/* THANKS to Kirsten Schulz for the polygon fixes! */
diff -ru libwmf-0.2.8.4/src/extra/gd/gdcache.h libwmf-0.2.8.4.symbols/src/extra/gd/gdcache.h
--- libwmf-0.2.8.4/src/extra/gd/gdcache.h 2001-08-21 15:40:33.000000000 +0100
+++ libwmf-0.2.8.4.symbols/src/extra/gd/gdcache.h 2006-11-16 12:13:40.000000000 +0000
@@ -41,6 +41,9 @@
/*********************************************************/
/* #include <malloc.h> */
+
+#pragma GCC visibility push(hidden)
+
#ifndef NULL
#define NULL (void *)0
#endif
@@ -81,3 +84,5 @@
void *
gdCacheGet( gdCache_head_t *head, void *keydata );
+
+#pragma GCC visibility pop
diff -ru libwmf-0.2.8.4/src/extra/gd/gd_clip.h libwmf-0.2.8.4.symbols/src/extra/gd/gd_clip.h
--- libwmf-0.2.8.4/src/extra/gd/gd_clip.h 2001-03-28 10:37:30.000000000 +0100
+++ libwmf-0.2.8.4.symbols/src/extra/gd/gd_clip.h 2006-11-16 12:11:49.000000000 +0000
@@ -1,6 +1,8 @@
#ifndef GD_CLIP_H
#define GD_CLIP_H 1
+#pragma GCC visibility push(hidden)
+
#ifdef __cplusplus
extern "C" {
#endif
@@ -23,4 +25,6 @@
}
#endif
+#pragma GCC visibility pop
+
#endif /* GD_CLIP_H */
diff -ru libwmf-0.2.8.4/src/extra/gd/gdfontg.h libwmf-0.2.8.4.symbols/src/extra/gd/gdfontg.h
--- libwmf-0.2.8.4/src/extra/gd/gdfontg.h 2001-03-28 10:37:30.000000000 +0100
+++ libwmf-0.2.8.4.symbols/src/extra/gd/gdfontg.h 2006-11-16 12:12:03.000000000 +0000
@@ -2,6 +2,8 @@
#ifndef _GDFONTG_H_
#define _GDFONTG_H_ 1
+#pragma GCC visibility push(hidden)
+
#ifdef __cplusplus
extern "C" {
#endif
@@ -25,5 +27,7 @@
}
#endif
+#pragma GCC visibility pop
+
#endif
diff -ru libwmf-0.2.8.4/src/extra/gd/gdfontl.h libwmf-0.2.8.4.symbols/src/extra/gd/gdfontl.h
--- libwmf-0.2.8.4/src/extra/gd/gdfontl.h 2001-03-28 10:37:30.000000000 +0100
+++ libwmf-0.2.8.4.symbols/src/extra/gd/gdfontl.h 2006-11-16 12:12:11.000000000 +0000
@@ -2,6 +2,8 @@
#ifndef _GDFONTL_H_
#define _GDFONTL_H_ 1
+#pragma GCC visibility push(hidden)
+
#ifdef __cplusplus
extern "C" {
#endif
@@ -26,5 +28,7 @@
}
#endif
+#pragma GCC visibility pop
+
#endif
diff -ru libwmf-0.2.8.4/src/extra/gd/gdfontmb.h libwmf-0.2.8.4.symbols/src/extra/gd/gdfontmb.h
--- libwmf-0.2.8.4/src/extra/gd/gdfontmb.h 2001-03-28 10:37:30.000000000 +0100
+++ libwmf-0.2.8.4.symbols/src/extra/gd/gdfontmb.h 2006-11-16 12:12:19.000000000 +0000
@@ -2,6 +2,8 @@
#ifndef _GDFONTMB_H_
#define _GDFONTMB_H_ 1
+#pragma GCC visibility push(hidden)
+
#ifdef __cplusplus
extern "C" {
#endif
@@ -24,5 +26,7 @@
}
#endif
+#pragma GCC visibility pop
+
#endif
diff -ru libwmf-0.2.8.4/src/extra/gd/gdfonts.h libwmf-0.2.8.4.symbols/src/extra/gd/gdfonts.h
--- libwmf-0.2.8.4/src/extra/gd/gdfonts.h 2001-03-28 10:37:30.000000000 +0100
+++ libwmf-0.2.8.4.symbols/src/extra/gd/gdfonts.h 2006-11-16 12:12:28.000000000 +0000
@@ -2,6 +2,8 @@
#ifndef _GDFONTS_H_
#define _GDFONTS_H_ 1
+#pragma GCC visibility push(hidden)
+
#ifdef __cplusplus
extern "C" {
#endif
@@ -24,5 +26,7 @@
}
#endif
+#pragma GCC visibility pop
+
#endif
diff -ru libwmf-0.2.8.4/src/extra/gd/gdfontt.h libwmf-0.2.8.4.symbols/src/extra/gd/gdfontt.h
--- libwmf-0.2.8.4/src/extra/gd/gdfontt.h 2001-03-28 10:37:30.000000000 +0100
+++ libwmf-0.2.8.4.symbols/src/extra/gd/gdfontt.h 2006-11-16 12:12:36.000000000 +0000
@@ -2,6 +2,8 @@
#ifndef _GDFONTT_H_
#define _GDFONTT_H_ 1
+#pragma GCC visibility push(hidden)
+
#ifdef __cplusplus
extern "C" {
#endif
@@ -25,5 +27,7 @@
}
#endif
+#pragma GCC visibility pop
+
#endif
diff -ru libwmf-0.2.8.4/src/extra/gd/gdft.c libwmf-0.2.8.4.symbols/src/extra/gd/gdft.c
--- libwmf-0.2.8.4/src/extra/gd/gdft.c 2005-07-27 21:35:05.000000000 +0100
+++ libwmf-0.2.8.4.symbols/src/extra/gd/gdft.c 2006-11-16 12:24:50.000000000 +0000
@@ -533,7 +533,7 @@
}
/* draw_bitmap - transfers glyph bitmap to GD image */
-/* static */ char *
+static char *
gdft_draw_bitmap (gdImage * im, int fg, FT_Bitmap bitmap, int pen_x, int pen_y)
{
unsigned char *pixel = 0;
@@ -643,7 +643,7 @@
return (char *) NULL;
}
-int
+static int
gdroundupdown (FT_F26Dot6 v1, int updown)
{
return (!updown)
@@ -651,7 +651,9 @@
: (v1 > 0 ? ((v1 + 63) >> 6) : v1 >> 6);
}
+#pragma GCC visibility push(hidden)
extern int any2eucjp (char *, char *, unsigned int);
+#pragma GCC visibility pop
/********************************************************************/
/* gdImageStringFT - render a utf8 string onto a gd image */
diff -ru libwmf-0.2.8.4/src/extra/gd/gd_gd2.c libwmf-0.2.8.4.symbols/src/extra/gd/gd_gd2.c
--- libwmf-0.2.8.4/src/extra/gd/gd_gd2.c 2005-07-27 21:35:05.000000000 +0100
+++ libwmf-0.2.8.4.symbols/src/extra/gd/gd_gd2.c 2006-11-16 12:21:28.000000000 +0000
@@ -34,8 +34,10 @@
}
t_chunk_info;
+#pragma GCC visibility push(hidden)
extern int _gdGetColors (gdIOCtx * in, gdImagePtr im, int gd2xFlag);
extern void _gdPutColors (gdImagePtr im, gdIOCtx * out);
+#pragma GCC visibility pop
/* */
/* Read the extra info in the gd2 header. */
diff -ru libwmf-0.2.8.4/src/extra/gd/gd_gd.c libwmf-0.2.8.4.symbols/src/extra/gd/gd_gd.c
--- libwmf-0.2.8.4/src/extra/gd/gd_gd.c 2005-07-27 21:35:05.000000000 +0100
+++ libwmf-0.2.8.4.symbols/src/extra/gd/gd_gd.c 2006-11-16 12:21:43.000000000 +0000
@@ -11,6 +11,11 @@
/* Exported functions: */
extern void gdImageGd (gdImagePtr im, FILE * out);
+#pragma GCC visibility push(hidden)
+int _gdGetColors (gdIOCtx * in, gdImagePtr im, int gd2xFlag);
+void _gdPutColors (gdImagePtr im, gdIOCtx * out);
+#pragma GCC visibility pop
+
/* Use this for commenting out debug-print statements. */
/* Just use the first '#define' to allow all the prints... */
diff -ru libwmf-0.2.8.4/src/extra/gd/gd.h libwmf-0.2.8.4.symbols/src/extra/gd/gd.h
--- libwmf-0.2.8.4/src/extra/gd/gd.h 2002-12-05 20:09:11.000000000 +0000
+++ libwmf-0.2.8.4.symbols/src/extra/gd/gd.h 2006-11-16 12:14:11.000000000 +0000
@@ -25,6 +25,8 @@
#include <gd_io.h>
#include <gd_clip.h>
+#pragma GCC visibility push(hidden)
+
/* The maximum number of palette entries in palette-based images.
In the wonderful new world of gd 2.0, you can of course have
many more colors when using truecolor mode. */
@@ -497,6 +499,8 @@
/* resolution affects ttf font rendering, particularly hinting */
#define GD_RESOLUTION 96 /* pixels per inch */
+#pragma GCC visibility pop
+
#ifdef __cplusplus
}
#endif
diff -ru libwmf-0.2.8.4/src/extra/gd/gdhelpers.h libwmf-0.2.8.4.symbols/src/extra/gd/gdhelpers.h
--- libwmf-0.2.8.4/src/extra/gd/gdhelpers.h 2001-03-28 10:37:31.000000000 +0100
+++ libwmf-0.2.8.4.symbols/src/extra/gd/gdhelpers.h 2006-11-16 12:12:55.000000000 +0000
@@ -1,6 +1,8 @@
#ifndef GDHELPERS_H
#define GDHELPERS_H 1
+#pragma GCC visibility push(hidden)
+
/* TBB: strtok_r is not universal; provide an implementation of it. */
extern char *gd_strtok_r(char *s, char *sep, char **state);
@@ -13,5 +15,7 @@
void *gdMalloc(size_t size);
void *gdRealloc(void *ptr, size_t size);
+#pragma GCC visibility pop
+
#endif /* GDHELPERS_H */
diff -ru libwmf-0.2.8.4/src/extra/gd/gd_io.h libwmf-0.2.8.4.symbols/src/extra/gd/gd_io.h
--- libwmf-0.2.8.4/src/extra/gd/gd_io.h 2001-03-28 10:37:30.000000000 +0100
+++ libwmf-0.2.8.4.symbols/src/extra/gd/gd_io.h 2006-11-16 12:13:08.000000000 +0000
@@ -2,6 +2,8 @@
#define GD_IO_H 1
#include <stdio.h>
+
+#pragma GCC visibility push(hidden)
typedef struct gdIOCtx {
int (*getC)(struct gdIOCtx*);
@@ -36,4 +38,6 @@
int gdSeek(gdIOCtx *ctx, const int);
long gdTell(gdIOCtx *ctx);
+#pragma GCC visibility pop
+
#endif
diff -ru libwmf-0.2.8.4/src/extra/gd/gd_jpeg.c libwmf-0.2.8.4.symbols/src/extra/gd/gd_jpeg.c
--- libwmf-0.2.8.4/src/extra/gd/gd_jpeg.c 2005-07-27 21:35:06.000000000 +0100
+++ libwmf-0.2.8.4.symbols/src/extra/gd/gd_jpeg.c 2006-11-16 12:28:13.000000000 +0000
@@ -99,7 +99,7 @@
return rv;
}
-void jpeg_gdIOCtx_dest (j_compress_ptr cinfo, gdIOCtx * outfile);
+static void jpeg_gdIOCtx_dest (j_compress_ptr cinfo, gdIOCtx * outfile);
void
gdImageJpegCtx (gdImagePtr im, gdIOCtx * outfile, int quality)
@@ -266,7 +266,7 @@
return im;
}
-void
+static void
jpeg_gdIOCtx_src (j_decompress_ptr cinfo,
gdIOCtx * infile);
@@ -511,7 +511,7 @@
* before any data is actually read.
*/
-void
+static void
init_source (j_decompress_ptr cinfo)
{
my_src_ptr src = (my_src_ptr) cinfo->src;
@@ -559,7 +559,7 @@
#define END_JPEG_SEQUENCE "\r\n[*]--:END JPEG:--[*]\r\n"
-safeboolean
+static safeboolean
fill_input_buffer (j_decompress_ptr cinfo)
{
my_src_ptr src = (my_src_ptr) cinfo->src;
@@ -627,7 +627,7 @@
* buffer is the application writer's problem.
*/
-void
+static void
skip_input_data (j_decompress_ptr cinfo, long num_bytes)
{
my_src_ptr src = (my_src_ptr) cinfo->src;
@@ -669,7 +669,7 @@
* for error exit.
*/
-void
+static void
term_source (j_decompress_ptr cinfo)
{
@@ -742,7 +742,7 @@
* before any data is actually written.
*/
-void
+static void
init_destination (j_compress_ptr cinfo)
{
my_dest_ptr dest = (my_dest_ptr) cinfo->dest;
@@ -780,7 +780,7 @@
* write it out when emptying the buffer externally.
*/
-safeboolean
+static safeboolean
empty_output_buffer (j_compress_ptr cinfo)
{
my_dest_ptr dest = (my_dest_ptr) cinfo->dest;
@@ -805,7 +805,7 @@
* for error exit.
*/
-void
+static void
term_destination (j_compress_ptr cinfo)
{
my_dest_ptr dest = (my_dest_ptr) cinfo->dest;
diff -ru libwmf-0.2.8.4/src/extra/gd/gdkanji.c libwmf-0.2.8.4.symbols/src/extra/gd/gdkanji.c
--- libwmf-0.2.8.4/src/extra/gd/gdkanji.c 2001-05-19 14:09:34.000000000 +0100
+++ libwmf-0.2.8.4.symbols/src/extra/gd/gdkanji.c 2006-11-16 12:29:42.000000000 +0000
@@ -555,6 +555,11 @@
return kanji;
}
+#pragma GCC visibility push(hidden)
+int
+any2eucjp (unsigned char *dest, unsigned char *src, unsigned int dest_max);
+#pragma GCC visibility pop
+
int
any2eucjp (unsigned char *dest, unsigned char *src, unsigned int dest_max)
{
diff -ru libwmf-0.2.8.4/src/extra/gd/gd_topal.c libwmf-0.2.8.4.symbols/src/extra/gd/gd_topal.c
--- libwmf-0.2.8.4/src/extra/gd/gd_topal.c 2005-07-27 21:35:06.000000000 +0100
+++ libwmf-0.2.8.4.symbols/src/extra/gd/gd_topal.c 2006-11-16 12:25:45.000000000 +0000
@@ -1129,7 +1129,7 @@
* Map some rows of pixels to the output colormapped representation.
*/
-void
+static void
pass2_no_dither (gdImagePtr im, my_cquantize_ptr cquantize)
/* This version performs no dithering */
{
@@ -1217,7 +1217,7 @@
#endif
-void
+static void
pass2_fs_dither (gdImagePtr im, my_cquantize_ptr cquantize)
/* This version performs Floyd-Steinberg dithering */
diff -ru libwmf-0.2.8.4/src/extra/gd/gd_wbmp.c libwmf-0.2.8.4.symbols/src/extra/gd/gd_wbmp.c
--- libwmf-0.2.8.4/src/extra/gd/gd_wbmp.c 2001-05-19 14:09:34.000000000 +0100
+++ libwmf-0.2.8.4.symbols/src/extra/gd/gd_wbmp.c 2006-11-16 12:28:33.000000000 +0000
@@ -67,7 +67,7 @@
** Wrapper around gdPutC for use with writewbmp
**
*/
-void
+static void
gd_putout (int i, void *out)
{
gdPutC (i, (gdIOCtx *) out);
@@ -79,7 +79,7 @@
** Wrapper around gdGetC for use with readwbmp
**
*/
-int
+static int
gd_getin (void *in)
{
return (gdGetC ((gdIOCtx *) in));
diff -ru libwmf-0.2.8.4/src/extra/gd/gdxpm.c libwmf-0.2.8.4.symbols/src/extra/gd/gdxpm.c
--- libwmf-0.2.8.4/src/extra/gd/gdxpm.c 2001-05-19 14:09:34.000000000 +0100
+++ libwmf-0.2.8.4.symbols/src/extra/gd/gdxpm.c 2006-11-16 12:18:29.000000000 +0000
@@ -10,6 +10,7 @@
#include "gd.h"
#include "gdhelpers.h"
+#if 0
#ifndef HAVE_XPM
gdImagePtr
gdImageCreateFromXpm (char *filename)
@@ -146,3 +147,4 @@
return (im);
}
#endif
+#endif
diff -ru libwmf-0.2.8.4/src/extra/gd/jisx0208.h libwmf-0.2.8.4.symbols/src/extra/gd/jisx0208.h
--- libwmf-0.2.8.4/src/extra/gd/jisx0208.h 2001-03-28 10:37:35.000000000 +0100
+++ libwmf-0.2.8.4.symbols/src/extra/gd/jisx0208.h 2006-11-16 12:13:19.000000000 +0000
@@ -1,5 +1,8 @@
#ifndef JISX0208_H
#define JISX0208_H
+
+#pragma GCC visibility push(hidden)
+
/* This file was derived from "src/VF_Ftype.c" in VFlib2-2.24.2
by Dr. Kakugawa */
@@ -1202,4 +1205,6 @@
0x2170, 0x2171, 0x2172, 0x2173, 0x2174, 0x2175, 0x2176, 0x2177,
0x2178, 0x2179, 0xFFE2, 0xFFE4, 0xFF07, 0xFF02}};
+#pragma GCC visibility pop
+
#endif /* JISX0208_H */
diff -ru libwmf-0.2.8.4/src/extra/gd/wbmp.h libwmf-0.2.8.4.symbols/src/extra/gd/wbmp.h
--- libwmf-0.2.8.4/src/extra/gd/wbmp.h 2001-03-28 10:37:37.000000000 +0100
+++ libwmf-0.2.8.4.symbols/src/extra/gd/wbmp.h 2006-11-16 12:14:19.000000000 +0000
@@ -12,6 +12,8 @@
#ifndef __WBMP_H
#define __WBMP_H 1
+#pragma GCC visibility push(hidden)
+
/* WBMP struct
** -----------
@@ -44,4 +46,6 @@
void freewbmp( Wbmp *wbmp );
void printwbmp( Wbmp *wbmp );
+#pragma GCC visibility pop
+
#endif

View File

@ -0,0 +1,10 @@
--- libwmf-0.2.8.4/src/extra/gd/gd_clip.c.CVE-2009-1364-im-clip-list 2009-04-24 04:06:44.000000000 -0400
+++ libwmf-0.2.8.4/src/extra/gd/gd_clip.c 2009-04-24 04:08:30.000000000 -0400
@@ -70,6 +70,7 @@ void gdClipSetAdd(gdImagePtr im,gdClipRe
{ more = gdRealloc (im->clip->list,(im->clip->max + 8) * sizeof (gdClipRectangle));
if (more == 0) return;
im->clip->max += 8;
+ im->clip->list = more;
}
im->clip->list[im->clip->count] = (*rect);
im->clip->count++;

View File

@ -0,0 +1,24 @@
diff -ur libxslt-1.1.26/configure.in libxslt-1.1.26/configure.in
--- libxslt-1.1.26/configure.in 2009-09-24 16:27:30.000000000 +0200
+++ libxslt-1.1.26/configure.in 2009-11-11 17:51:06.000000000 +0100
@@ -627,7 +627,7 @@
WIN32_EXTRA_LDFLAGS="-no-undefined"
;;
*-*-mingw*)
- WIN32_EXTRA_LIBADD="-lwsock32"
+ WIN32_EXTRA_LIBADD="-lws2_32 -lmswsock"
WIN32_EXTRA_LDFLAGS="-no-undefined"
AC_DEFINE([_WINSOCKAPI_],1,[Using the Win32 Socket implementation])
AC_DEFINE([snprintf],[_snprintf],[Win32 Std C name mangling work-around])
Only in libxslt-1.1.26: configure.in.orig
diff -ur libxslt-1.1.26/libxslt/security.c libxslt-1.1.26/libxslt/security.c
--- libxslt-1.1.26/libxslt/security.c 2009-08-13 15:04:24.000000000 +0200
+++ libxslt-1.1.26/libxslt/security.c 2009-11-11 17:51:06.000000000 +0100
@@ -39,6 +39,7 @@
#ifndef INVALID_FILE_ATTRIBUTES
#define INVALID_FILE_ATTRIBUTES ((DWORD)-1)
#endif
+#define mkdir(d,m) _mkdir(d)
#endif
#ifndef HAVE_STAT

View File

@ -0,0 +1,8 @@
--- a/install.mk 2012-12-30 01:59:23.989187337 -0500
+++ b/install.mk 2012-12-30 15:13:26.126841253 -0500
@@ -0,0 +1,5 @@
+install:
+ mkdir -p $(DESTDIR)/$(PREFIX)/bin
+ mkdir -p $(DESTDIR)/$(PREFIX)/lib
+ $(INSTALL) pthreadGC2.dll $(DESTDIR)/$(PREFIX)/bin/pthreadGC2.dll
+ $(INSTALL) libpthreadGC2.a $(DESTDIR)/$(PREFIX)/lib/libpthread.a

View File

@ -0,0 +1,15 @@
--- a/Tools/GNUmakefile.am 2013-06-28 11:37:12.433956926 -0400
+++ b/Tools/GNUmakefile.am 2013-06-28 11:40:42.681835206 -0400
@@ -1,12 +1,6 @@
noinst_PROGRAMS += \
Programs/ImageDiff
-if ENABLE_WEBKIT1
-noinst_PROGRAMS += \
- Programs/DumpRenderTree \
- Programs/GtkLauncher
-endif
-
# GtkLauncher
Programs_GtkLauncher_CPPFLAGS = \
-I$(srcdir)/Source/WebKit/gtk \

View File

@ -0,0 +1,31 @@
--- a/autogen.sh 2012-12-28 01:35:14.039456371 -0500
+++ b/autogen.sh 2012-12-28 20:52:50.687399680 -0500
@@ -0,0 +1,28 @@
+#! /bin/sh
+
+# Allow invocation from a separate build directory; in that case, we change
+# to the source directory to run the auto*, then change back before running configure
+srcdir=`dirname $0`
+test -z "$srcdir" && srcdir=.
+
+ORIGDIR=`pwd`
+cd $srcdir
+
+rm -f $top_srcdir/autom4te.cache
+
+touch README INSTALL
+
+Tools/gtk/override-feature-defines $ORIGDIR
+
+if test -z `which autoreconf`; then
+ echo "Error: autoreconf not found, please install it."
+ exit 1
+fi
+autoreconf --verbose --install -I Source/autotools $ACLOCAL_FLAGS|| exit $?
+
+cd $ORIGDIR || exit 1
+
+if test -z "$NOCONFIGURE"; then
+ $srcdir/configure $AUTOGEN_CONFIGURE_ARGS "$@" || exit $?
+fi
+

View File

@ -0,0 +1,31 @@
#!/bin/sh
set -e
if [ "x$BUILD_FLAVOUR" == "xdbg" ]; then
EXT="-dbg"
else
EXT=""
fi
init_target (){
echo "Cleaning Target $1"
rm -rf targets/$1 || true
mkdir -p targets/$1/_jhbuild/manifests
cp -a targets/gimp-common$EXT/_jhbuild/manifests/* targets/$1/_jhbuild/manifests
cp -a targets/gimp-common$EXT/_jhbuild/packagedb.xml targets/$1/_jhbuild/
}
chmod a-w win32.cache
export MODULE=gimp-common
jhbuild --file=build.jhbuildrc $* build gimp-common || true
./targetisunchanged gimp-common$EXT gimp-stable$EXT || init_target gimp-stable$EXT
export MODULE=gimp-stable
jhbuild --file=build.jhbuildrc $* build --start-at=gimp-common || true
./targetisunchanged gimp-common$EXT gimp-dev$EXT || init_target gimp-dev$EXT
export MODULE=gimp-dev
jhbuild --file=build.jhbuildrc $* build --start-at=gimp-common || true
chmod u+w win32.cache

View File

@ -0,0 +1,10 @@
#!/bin/bash
sort targets/$1/_jhbuild/packagedb.xml > /tmp/packagedb.xml.a
sort targets/$2/_jhbuild/packagedb.xml > /tmp/packagedb.xml.b
COUNT=`diff -u /tmp/packagedb.xml.a /tmp/packagedb.xml.b | grep "^-" --count --max-count 2`
rm /tmp/packagedb.xml.{a,b}
exit $((COUNT - 1))

View File

@ -0,0 +1,58 @@
<?xml version="1.0" encoding="UTF-8"?>
<moduleset>
<repository type="tarball" name="gnome.org"
href="http://ftp.gnome.org/pub/gnome/sources/" />
<repository type="tarball" name="webkitgtk.org"
href="http://webkitgtk.org/releases/" />
<repository type="tarball" name="sqlite.org"
href="http://www.sqlite.org/" />
<repository type="tarball" name="sourceware.org"
href="ftp://sourceware.org/pub/" />
<include href="gtk+.moduleset"/>
<autotools id="mingw32-pthreads" autogen-sh=" || true" makeargs="clean GC -j1" makeinstallargs=" -f install.mk">
<branch version="2.9.1" repo="sourceware.org"
module="pthreads-win32/pthreads-w32-2-9-1-release.tar.gz"
hash="md5:36ba827d6aa0fa9f9ae740a35626e2e3">
<patch file="pthreads-add-install-mk.patch" strip="1"/>
</branch>
</autotools>
<autotools id="libsoup" autogen-sh="configure">
<branch version="2.42.2" repo="gnome.org"
module="libsoup/2.42/libsoup-2.42.2.tar.xz"
hash="sha256:1f4f9cc55ba483dc8defea0c3f97cc507dc48384c5529179e29c1e6d05630dbf">
<patch file="libsoup-request-file-string-h.patch" strip="1"/>
</branch>
<dependencies>
<dep package="gtk2"/>
<dep package="sqlite"/>
</dependencies>
</autotools>
<autotools id="sqlite" autogen-sh="configure">
<branch version="3071501" repo="sqlite.org"
module="sqlite-autoconf-3071501.tar.gz"
hash="sha1:0247b4ff581e7bacaad97663116a029ad1976f1c">
</branch>
</autotools>
<autotools id="webkitgtk">
<branch version="2.0.3" repo="webkitgtk.org"
module="webkitgtk-2.0.3.tar.xz"
hash="sha1:136c649c34956cadfaac9b13bbad368b70d38820">
<patch file="webkit-add-autogen.patch" strip="1"/>
<patch file="webkit-2.0-disable-tests.patch" strip="1"/>
</branch>
<dependencies>
<dep package="mingw32-pthreads"/>
<dep package="libsoup"/>
<dep package="sqlite"/>
<dep package="gtk2"/>
<dep package="libwebp"/>
<dep package="libxslt"/>
</dependencies>
</autotools>
</moduleset>

View File

@ -0,0 +1,6 @@
ac_cv_alignof_guint32=${ac_cv_alignof_guint32=4}
ac_cv_alignof_guint64=${ac_cv_alignof_guint64=8}
ac_cv_alignof_unsigned_long=${ac_cv_alignof_unsigned_long=4}
glib_cv_long_long_format=I64
glib_cv_stack_grows=no