[gimp] build/win: Add a jhbuild project for making windows binaries.
- From: Michael Henning <mhenning src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp] build/win: Add a jhbuild project for making windows binaries.
- Date: Wed, 28 Aug 2013 20:31:28 +0000 (UTC)
commit 7e80a4f891310a1c029420cda53c9e1adc9d1f41
Author: Michael Henning <drawoc darkrefraction com>
Date: Wed Aug 28 16:05:18 2013 -0400
build/win: Add a jhbuild project for making windows binaries.
This was originally here:
http://github.com/drawoc/windows-gimp-jhbuild
build/windows/jhbuild/.gitignore | 2 +
build/windows/jhbuild/README.md | 55 +
build/windows/jhbuild/build | 6 +
build/windows/jhbuild/build.jhbuildrc | 244 ++
build/windows/jhbuild/checkversions.sh | 14 +
build/windows/jhbuild/clean | 10 +
build/windows/jhbuild/compresslibs.moduleset | 34 +
build/windows/jhbuild/fake.mk | 3 +
build/windows/jhbuild/gdb.moduleset | 25 +
build/windows/jhbuild/gimp.moduleset | 81 +
build/windows/jhbuild/glib.moduleset | 48 +
build/windows/jhbuild/gtk+.moduleset | 187 +
build/windows/jhbuild/imglibs.moduleset | 85 +
build/windows/jhbuild/misclibs.moduleset | 119 +
build/windows/jhbuild/mkarchive | 83 +
.../jhbuild/patches/bzip2-1.0.5-slash.patch | 11 +
.../patches/bzip2-1.0.6-autoconfiscated.patch | 287 ++
.../patches/fontconfig-fix-config-dir.patch | 11 +
...ettext_0_18_crossbuild_override_tools_fix.patch | 11 +
.../jhbuild/patches/ghostscript-8.71-windows.patch | 4535 ++++++++++++++++++++
.../patches/ghostscript-change-install-paths.patch | 24 +
build/windows/jhbuild/patches/gtk2-uuid.patch | 30 +
.../jhbuild/patches/icu-fix-library-names.patch | 21 +
.../jhbuild/patches/icu-unexport-target.patch | 11 +
.../jhbuild/patches/jasper-1.900.1-mingw32.patch | 22 +
.../jhbuild/patches/jasper-1.900.1-sleep.patch | 18 +
.../jhbuild/patches/libjpeg-turbo-boolean.patch | 11 +
.../jhbuild/patches/libjpeg-turbo-int32.patch | 17 +
.../jhbuild/patches/libmng-1.0.10-mingw.patch | 44 +
.../libmng-1.0.9-dont-leak-zlib-streams.patch | 14 +
.../jhbuild/patches/libmng-change-locations.patch | 19 +
.../patches/libsoup-request-file-string-h.patch | 13 +
.../patches/libwmf/libwmf-0.2.8.3-nodocs.patch | 29 +
.../libwmf/libwmf-0.2.8.3-relocatablefonts.patch | 36 +
.../patches/libwmf/libwmf-0.2.8.4-deps.patch | 27 +
.../libwmf/libwmf-0.2.8.4-fallbackfont.patch | 18 +
.../libwmf/libwmf-0.2.8.4-intoverflow.patch | 27 +
.../patches/libwmf/libwmf-0.2.8.4-libpng-1.5.patch | 12 +
.../libwmf/libwmf-0.2.8.4-multiarchdevel.patch | 130 +
.../libwmf/libwmf-0.2.8.4-reducesymbols.patch | 520 +++
.../libwmf/libwmf-0.2.8.4-useafterfree.patch | 10 +
.../jhbuild/patches/libxslt-1.1.26-w64.patch | 24 +
.../jhbuild/patches/pthreads-add-install-mk.patch | 8 +
.../jhbuild/patches/webkit-2.0-disable-tests.patch | 15 +
.../jhbuild/patches/webkit-add-autogen.patch | 31 +
build/windows/jhbuild/split-build | 31 +
build/windows/jhbuild/targetisunchanged | 10 +
build/windows/jhbuild/webkitgtk.moduleset | 58 +
build/windows/jhbuild/win32.cache | 6 +
49 files changed, 7087 insertions(+), 0 deletions(-)
---
diff --git a/build/windows/jhbuild/.gitignore b/build/windows/jhbuild/.gitignore
new file mode 100644
index 0000000..58b5464
--- /dev/null
+++ b/build/windows/jhbuild/.gitignore
@@ -0,0 +1,2 @@
+checkout/
+targets/
diff --git a/build/windows/jhbuild/README.md b/build/windows/jhbuild/README.md
new file mode 100644
index 0000000..1c1a198
--- /dev/null
+++ b/build/windows/jhbuild/README.md
@@ -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.
diff --git a/build/windows/jhbuild/build b/build/windows/jhbuild/build
new file mode 100755
index 0000000..b4c2c9e
--- /dev/null
+++ b/build/windows/jhbuild/build
@@ -0,0 +1,6 @@
+#!/bin/sh
+set -e
+
+chmod a-w win32.cache
+jhbuild --file=build.jhbuildrc $*
+chmod u+w win32.cache
diff --git a/build/windows/jhbuild/build.jhbuildrc b/build/windows/jhbuild/build.jhbuildrc
new file mode 100644
index 0000000..9459bf9
--- /dev/null
+++ b/build/windows/jhbuild/build.jhbuildrc
@@ -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')},
+})
diff --git a/build/windows/jhbuild/checkversions.sh b/build/windows/jhbuild/checkversions.sh
new file mode 100755
index 0000000..84e388f
--- /dev/null
+++ b/build/windows/jhbuild/checkversions.sh
@@ -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
diff --git a/build/windows/jhbuild/clean b/build/windows/jhbuild/clean
new file mode 100755
index 0000000..fdd5728
--- /dev/null
+++ b/build/windows/jhbuild/clean
@@ -0,0 +1,10 @@
+#!/bin/bash
+
+pushd checkout
+rm -rf *-*/
+popd
+
+if [[ "$1" != "--skip-targets" ]]; then
+ echo "Cleaning targets"
+ rm -rf targets/*
+fi
diff --git a/build/windows/jhbuild/compresslibs.moduleset b/build/windows/jhbuild/compresslibs.moduleset
new file mode 100644
index 0000000..7677517
--- /dev/null
+++ b/build/windows/jhbuild/compresslibs.moduleset
@@ -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>
diff --git a/build/windows/jhbuild/fake.mk b/build/windows/jhbuild/fake.mk
new file mode 100644
index 0000000..cd151b8
--- /dev/null
+++ b/build/windows/jhbuild/fake.mk
@@ -0,0 +1,3 @@
+all:
+ mkdir -p $(DESTDIR)/$(DESTDIR)/bin/
+ #echo hi > $(DESTDIR)/$(DESTDIR)/bin/friendly.sh
diff --git a/build/windows/jhbuild/gdb.moduleset b/build/windows/jhbuild/gdb.moduleset
new file mode 100644
index 0000000..bf29eb4
--- /dev/null
+++ b/build/windows/jhbuild/gdb.moduleset
@@ -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>
diff --git a/build/windows/jhbuild/gimp.moduleset b/build/windows/jhbuild/gimp.moduleset
new file mode 100644
index 0000000..e5f4b6e
--- /dev/null
+++ b/build/windows/jhbuild/gimp.moduleset
@@ -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>
diff --git a/build/windows/jhbuild/glib.moduleset b/build/windows/jhbuild/glib.moduleset
new file mode 100644
index 0000000..c6a96a7
--- /dev/null
+++ b/build/windows/jhbuild/glib.moduleset
@@ -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>
diff --git a/build/windows/jhbuild/gtk+.moduleset b/build/windows/jhbuild/gtk+.moduleset
new file mode 100644
index 0000000..c91d0dd
--- /dev/null
+++ b/build/windows/jhbuild/gtk+.moduleset
@@ -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>
diff --git a/build/windows/jhbuild/imglibs.moduleset b/build/windows/jhbuild/imglibs.moduleset
new file mode 100644
index 0000000..9ccc721
--- /dev/null
+++ b/build/windows/jhbuild/imglibs.moduleset
@@ -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>
diff --git a/build/windows/jhbuild/misclibs.moduleset b/build/windows/jhbuild/misclibs.moduleset
new file mode 100644
index 0000000..0326ad1
--- /dev/null
+++ b/build/windows/jhbuild/misclibs.moduleset
@@ -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>
diff --git a/build/windows/jhbuild/mkarchive b/build/windows/jhbuild/mkarchive
new file mode 100755
index 0000000..4c010bd
--- /dev/null
+++ b/build/windows/jhbuild/mkarchive
@@ -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"
diff --git a/build/windows/jhbuild/patches/bzip2-1.0.5-slash.patch
b/build/windows/jhbuild/patches/bzip2-1.0.5-slash.patch
new file mode 100644
index 0000000..3b5ed14
--- /dev/null
+++ b/build/windows/jhbuild/patches/bzip2-1.0.5-slash.patch
@@ -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 '\\'
diff --git a/build/windows/jhbuild/patches/bzip2-1.0.6-autoconfiscated.patch
b/build/windows/jhbuild/patches/bzip2-1.0.6-autoconfiscated.patch
new file mode 100644
index 0000000..a12a0fb
--- /dev/null
+++ b/build/windows/jhbuild/patches/bzip2-1.0.6-autoconfiscated.patch
@@ -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}
diff --git a/build/windows/jhbuild/patches/fontconfig-fix-config-dir.patch
b/build/windows/jhbuild/patches/fontconfig-fix-config-dir.patch
new file mode 100644
index 0000000..9299e16
--- /dev/null
+++ b/build/windows/jhbuild/patches/fontconfig-fix-config-dir.patch
@@ -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 -->
+
diff --git a/build/windows/jhbuild/patches/gettext_0_18_crossbuild_override_tools_fix.patch
b/build/windows/jhbuild/patches/gettext_0_18_crossbuild_override_tools_fix.patch
new file mode 100644
index 0000000..190a670
--- /dev/null
+++ b/build/windows/jhbuild/patches/gettext_0_18_crossbuild_override_tools_fix.patch
@@ -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.
+
diff --git a/build/windows/jhbuild/patches/ghostscript-8.71-windows.patch
b/build/windows/jhbuild/patches/ghostscript-8.71-windows.patch
new file mode 100644
index 0000000..7f6ab4b
--- /dev/null
+++ b/build/windows/jhbuild/patches/ghostscript-8.71-windows.patch
@@ -0,0 +1,4535 @@
+--- ghostscript-8.71/base/aux.mak 1970-01-01 01:00:00.000000000 +0100
++++ ghostscript-8.71/base/aux.mak 2010-02-26 16:33:59.000000000 +0100
+@@ -0,0 +1,50 @@
++# Copyright (C) 2001-2006 Artifex Software, Inc.
++# All Rights Reserved.
++#
++# This software is provided AS-IS with no warranty, either express or
++# implied.
++#
++# This software is distributed under license and may not be copied, modified
++# or distributed except as expressly authorized under the terms of that
++# license. Refer to licensing information at http://www.artifex.com/
++# or contact Artifex Software, Inc., 7 Mt. Lassen Drive - Suite A-134,
++# San Rafael, CA 94903, U.S.A., +1(415)492-9861, for further information.
++#
++# $Id$
++# Partial makefile common to all configurations.
++# This makefile contains the build rules for the auxiliary programs such as
++# echogs.
++
++# Define the name of this makefile.
++AUX_MAK=$(GLSRC)aux.mak
++
++# -------------------------- Auxiliary programs --------------------------- #
++
++$(ECHOGS_XE): $(GLSRC)echogs.c $(AK) $(stdpre_h)
++ $(CCAUX) $(I_)$(GLSRCDIR)$(_I) $(O_)$(ECHOGS_XE) $(GLSRC)echogs.c
++
++# On the RS/6000 (at least), compiling genarch.c with gcc with -O
++# produces a buggy executable.
++$(GENARCH_XE): $(GLSRC)genarch.c $(AK) $(GENARCH_DEPS)
++ $(CCAUX) $(I_)$(GLSRCDIR)$(_I) $(O_)$(GENARCH_XE) $(GLSRC)genarch.c
++
++$(GENCONF_XE): $(GLSRC)genconf.c $(AK) $(GENCONF_DEPS)
++ $(CCAUX) $(I_)$(GLSRCDIR)$(_I) $(O_)$(GENCONF_XE) $(GLSRC)genconf.c
++
++$(GENDEV_XE): $(GLSRC)gendev.c $(AK) $(GENDEV_DEPS)
++ $(CCAUX) $(I_)$(GLSRCDIR)$(_I) $(O_)$(GENDEV_XE) $(GLSRC)gendev.c
++
++$(GENHT_XE): $(GLSRC)genht.c $(AK) $(GENHT_DEPS)
++ $(CCAUX) $(GENHT_CFLAGS) $(O_)$(GENHT_XE) $(GLSRC)genht.c
++
++$(GENINIT_XE): $(GLSRC)geninit.c $(AK) $(GENINIT_DEPS)
++ $(CCAUX) $(I_)$(GLSRCDIR)$(_I) $(O_)$(GENINIT_XE) $(GLSRC)geninit.c
++
++MKROMFS_SOURCES=$(GLSRC)mkromfs.c $(MKROMFS_ZLIB_SOURCES) $(GLGEN)gscdefs.c \
++ $(GLSRC)gsmisc.c $(GLSRC)gpmisc.c $(GLSRC)gslibctx.c $(GLSRC)gp_getnv.c \
++ $(GLSRC)gp_unifs.c $(GLSRC)gp_unifn.c \
++ $(GLSRC)gp_stdia.c $(GLSRC)gsutil.c
++
++$(MKROMFS_XE): $(GLSRC)mkromfs.c $(MKROMFS_COMMON_DEPS) $(MKROMFS_SOURCES)
++ $(CCAUX) $(GENOPT) $(CFLAGS) $(I_)$(GLSRCDIR)$(_I) $(I_)$(GLOBJ)$(_I) $(I_)$(ZSRCDIR)$(_I)
$(MKROMFS_SOURCES) $(O_)$(MKROMFS_XE) -lm
++
+--- ghostscript-8.71/base/configure.ac 2009-11-24 09:36:27.000000000 +0100
++++ ghostscript-8.71/base/configure.ac 2010-02-26 16:33:59.000000000 +0100
+@@ -21,6 +21,7 @@
+ AC_INIT
+ AC_PREREQ(2.52)
+ AC_CONFIG_SRCDIR(psi/gs.c)
++AC_CONFIG_HEADERS([config.h:config.hin])
+
+ dnl Inherit compiler flags from the environment...
+ CFLAGS="${CFLAGS:=}"
+@@ -63,6 +64,38 @@
+ done
+ ])
+
++AC_DEFUN([AM_CONDITIONAL],
++[
++AC_SUBST([$1_TRUE])
++AC_SUBST([$1_FALSE])
++if $2; then
++ $1_TRUE=
++ $1_FALSE='#'
++else
++ $1_TRUE='#'
++ $1_FALSE=
++fi
++])
++
++dnl --------------------------------------------------
++dnl Check for OS
++dnl --------------------------------------------------
++
++AC_CANONICAL_HOST
++
++case "$host_os" in
++ mingw*)
++ os_win32=yes
++ LIBS="$LIBS -lwinspool"
++ ;;
++ *)
++ os_unix=yes
++ ;;
++esac
++
++AM_CONDITIONAL(OS_UNIX, test x"$os_unix" = "xyes")
++AM_CONDITIONAL(OS_WIN32, test x"$os_win32" = "xyes")
++
+ dnl --------------------------------------------------
+ dnl Check for programs
+ dnl --------------------------------------------------
+@@ -74,6 +107,25 @@
+ AC_PROG_CPP
+ CFLAGS=$save_cflags
+
++dnl ---HACK -0-------------------------------------
++dnl AC_PROG_CC_AUX
++
++AC_LANG_PUSH(C)dnl
++AC_ARG_VAR([CCAUX],[C compiler command for auxiliary build programs])dnl
++AC_CHECK_PROG(CCAUX, gcc, gcc)
++if test -z "$CCAUX"; then
++ AC_CHECK_PROG(CCAUX, cc, cc)
++fi
++if test -z "$CCAUX"; then
++ AC_CHECK_PROG(CCAUX, cc, cc, , , /usr/ucb/cc)
++fi
++if test -z "$CCAUX"; then
++ AC_CHECK_PROGS(CCAUX, cl.exe)
++fi
++AC_LANG_POP(C)dnl
++AC_SUBST(CCAUX)
++dnl ---HACK END -0-------------------------------------
++
+ AC_PROG_RANLIB
+ #AC_PROG_INSTALL
+
+@@ -144,7 +196,7 @@
+
+ AC_HEADER_DIRENT
+ AC_HEADER_STDC
+-AC_CHECK_HEADERS([errno.h fcntl.h limits.h malloc.h memory.h stdlib.h string.h strings.h sys/ioctl.h
sys/param.h sys/time.h syslog.h unistd.h])
++AC_CHECK_HEADERS([errno.h fcntl.h limits.h malloc.h memory.h stdlib.h string.h strings.h sys/ioctl.h
sys/param.h sys/time.h syslog.h unistd.h ndir.h sys/dir.h sys/ndir.h sys/times.h])
+
+ # for gdev3b1.c (AT&T terminal interface)
+ AC_CHECK_HEADER([sys/window.h])
+@@ -209,7 +261,7 @@
+ fi
+
+ dnl pkg-config is used for several tests now...
+-AC_PATH_PROG(PKGCONFIG, pkg-config)
++AC_PATH_TOOL([PKGCONFIG], [pkg-config])
+
+ dnl Fontconfig support
+ HAVE_FONTCONFIG=""
+--- ghostscript-8.71/base/gp_mswin.c 2007-09-25 15:31:24.000000000 +0200
++++ ghostscript-8.71/base/gp_mswin.c 2010-02-26 16:33:59.000000000 +0100
+@@ -720,7 +720,7 @@
+
+ /* Microsoft Visual C++ 2005 doesn't properly define snprintf,
+ which is defined in the C standard ISO/IEC 9899:1999 (E) */
+-
++#if _MSC_VER==1400
+ int snprintf(char *buffer, size_t count, const char *format, ...)
+ {
+ if (count > 0) {
+@@ -735,3 +735,4 @@
+ } else
+ return 0;
+ }
++#endif
+--- ghostscript-8.71/base/head.mak 1970-01-01 01:00:00.000000000 +0100
++++ ghostscript-8.71/base/head.mak 2010-02-26 16:33:59.000000000 +0100
+@@ -0,0 +1,68 @@
++# Copyright (C) 2001-2006 Artifex Software, Inc.
++# All Rights Reserved.
++#
++# This software is provided AS-IS with no warranty, either express or
++# implied.
++#
++# This software is distributed under license and may not be copied, modified
++# or distributed except as expressly authorized under the terms of that
++# license. Refer to licensing information at http://www.artifex.com/
++# or contact Artifex Software, Inc., 7 Mt. Lassen Drive - Suite A-134,
++# San Rafael, CA 94903, U.S.A., +1(415)492-9861, for further information.
++#
++# $Id$
++# Partial makefile common to all unix-like configurations.
++
++
++# ----------------------------- Generic stuff ----------------------------- #
++
++# Define the syntax for command, object, and executable files.
++
++# Work around the fact that some `make' programs drop trailing spaces
++# or interpret == as a special definition operator.
++NULL=
++
++CMD=
++C_=-c
++D_=-D
++_D_=$(NULL)=
++_D=
++I_=-I
++II=-I
++_I=
++NO_OP=@:
++O_=-o $(NULL)
++OBJ=o
++Q=
++
++# Define the current directory prefix and command invocations.
++
++CAT=cat
++D=/
++EXP=
++SHELL=/bin/sh
++SH=$(SHELL)
++
++# Define generic commands.
++
++CP_=cp
++RM_=rm -f
++RMN_=rm -f
++
++# Define the arguments for genconf.
++
++CONFILES=-p "%s&s&&" -pl "&-l%s&s&&" -pL "&-L%s&s&&"
++CONFLDTR=-ol
++
++# Define the compilation rules and flags.
++
++CC_D=$(CC_)
++CC_INT=$(CC_)
++
++BEGINFILES=
++
++# Define the default build rule, so the object directories get created
++# automatically.
++
++std: STDDIRS default
++ $(NO_OP)
+--- ghostscript-8.71/base/lib.mak 2009-12-29 23:18:01.000000000 +0100
++++ ghostscript-8.71/base/lib.mak 2010-02-26 16:33:59.000000000 +0100
+@@ -532,10 +532,12 @@
+ $(CP_) $(GLSRC)gconf.c $(GLGEN)gconfig.c
+ $(GLCC) $(GLO_)gconfig.$(OBJ) $(C_) $(GLGEN)gconfig.c
+
+-$(GLOBJ)gscdefs.$(OBJ) : $(GLSRC)gscdef.c\
+- $(std_h) $(gscdefs_h) $(gconfigd_h) $(TOP_MAKEFILES)
++$(GLGEN)gscdefs.c: $(GLSRC)gscdef.c
+ $(RM_) $(GLGEN)gscdefs.c
+ $(CP_) $(GLSRC)gscdef.c $(GLGEN)gscdefs.c
++
++$(GLOBJ)gscdefs.$(OBJ) : $(GLGEN)gscdefs.c\
++ $(std_h) $(gscdefs_h) $(gconfigd_h) $(TOP_MAKEFILES)
+ $(GLCC) $(GLO_)gscdefs.$(OBJ) $(C_) $(GLGEN)gscdefs.c
+
+ $(GLOBJ)gxacpath.$(OBJ) : $(GLSRC)gxacpath.c $(GXERR)\
+@@ -2712,6 +2714,8 @@
+
+ # Define the ZLIB modules needed by mnkromfs here to factor it out of top makefiles
+ # Also put the .h dependencies here for the same reason
++MKROMFS_ZLIB_SOURCES=$(ZSRC)compress.c $(ZSRC)deflate.c $(ZSRC)zutil.c \
++ $(ZSRC)adler32.c $(ZSRC)crc32.c $(ZSRC)trees.c
+ MKROMFS_ZLIB_OBJS=$(GLOBJ)compress.$(OBJ) $(GLOBJ)deflate.$(OBJ) \
+ $(GLOBJ)zutil.$(OBJ) $(GLOBJ)adler32.$(OBJ) $(GLOBJ)crc32.$(OBJ) \
+ $(GLOBJ)trees.$(OBJ)
+--- ghostscript-8.71/base/Makefile.in 2009-12-18 08:04:10.000000000 +0100
++++ ghostscript-8.71/base/Makefile.in 2010-02-26 16:35:12.000000000 +0100
+@@ -136,7 +136,7 @@
+
+ # Define the name of the executable file.
+
+-GS= GS@@EXEEXT@
++GS= GS@
+
+ # Define the directories for debugging and profiling binaries, relative to
+ # the standard binaries.
+@@ -223,7 +223,8 @@
+ # See ijs.mak for more information.
+
+ IJSSRCDIR= IJSDIR@
+-IJSEXECTYPE=unix
++ OS_UNIX_TRUE@IJSEXECTYPE=unix
++ OS_WIN32_TRUE@IJSEXECTYPE=win
+
+ # Define the directory where the imdi library source is stored.
+ # See devs.mak for more information.
+@@ -239,6 +240,16 @@
+
+ # ------ Platform-specific options ------ #
+
++# Define the platform name. For a "stock" System V platform,
++# use sysv_ instead of unix_.
++
++ OS_UNIX_TRUE@PLATFORM=unix_
++ OS_WIN32_TRUE@PLATFORM=mswin32_
++
++# Define executable files extension.
++
++XE= EXEEXT@
++
+ # Define the name of the C compiler.
+
+ CC= CC@
+@@ -468,7 +479,7 @@
+ # used in dependencies.
+
+ MAKEFILE=Makefile
+-TOP_MAKEFILES=$(MAKEFILE) $(GLSRCDIR)/unixhead.mak
++TOP_MAKEFILES=$(MAKEFILE) $(GLSRCDIR)/head.mak
+
+ # Define the auxiliary program dependency. We don't use this.
+
+@@ -478,7 +489,8 @@
+
+ CCFLAGS=$(GENOPT) $(CAPOPT) $(CFLAGS)
+ CC_=$(CC) $(CCFLAGS)
+-CCAUX=$(CC) $(CFLAGS)
++CCAUX= CCAUX@ $(GCFLAGS)
++XEAUX=
+ CC_LEAF=$(CC_)
+ # note gcc can't use -fomit-frame-pointer with -pg.
+ CC_LEAF_PG=$(CC_)
+@@ -490,7 +502,7 @@
+ # ---------------- End of platform-specific section ---------------- #
+
+ INSTALL_CONTRIB= INSTALL_CONTRIB@
+-include $(GLSRCDIR)/unixhead.mak
++include $(GLSRCDIR)/head.mak
+ include $(GLSRCDIR)/gs.mak
+ # psromfs.mak must precede lib.mak
+ include $(PSSRCDIR)/psromfs.mak
+@@ -509,7 +521,13 @@
+ include $(GLSRCDIR)/ijs.mak
+ include $(GLSRCDIR)/devs.mak
+ include $(GLSRCDIR)/contrib.mak
+-include $(GLSRCDIR)/unix-aux.mak
++include $(GLSRCDIR)/aux.mak
++ OS_UNIX_TRUE@include $(GLSRCDIR)/unix-plt.mak
++ OS_WIN32_TRUE@CC_WX=$(CC)
++ OS_WIN32_TRUE@GLCCWIN=$(CC_WX) $(GENOPT) -DCHECK_INTERRUPTS -D_Windows -D__WIN32__ $(CCWINFLAGS)
$(I_)$(GLI_)$(_I) $(GLF_)
++ OS_WIN32_TRUE@include $(GLSRCDIR)/winplat.mak
++ OS_WIN32_TRUE@include $(GLSRCDIR)/pcwin.mak
++ OS_WIN32_TRUE@include $(GLSRCDIR)/w32-plt.mak
+ include $(GLSRCDIR)/unixlink.mak
+ include $(GLSRCDIR)/unix-dll.mak
+ include $(GLSRCDIR)/unix-end.mak
+@@ -534,3 +552,6 @@
+ check : default
+ $(NO_OP)
+
++$(gconfig__h): config.h
++ $(CP_) config.h $(gconfig__h)
++
+--- ghostscript-8.71/base/unix-aux.mak 2009-01-08 10:17:18.000000000 +0100
++++ ghostscript-8.71/base/unix-aux.mak 2010-02-26 16:33:59.000000000 +0100
+@@ -18,84 +18,7 @@
+ # Define the name of this makefile.
+ UNIX_AUX_MAK=$(GLSRC)unix-aux.mak
+
+-# -------------------------------- Library -------------------------------- #
++include unix-plt.mak
++include aux.mak
++include unix-cfg.mak
+
+-## The Unix platforms
+-
+-# We have to include a test for the existence of sys/time.h,
+-# because some System V platforms don't have it.
+-
+-# Unix platforms other than System V, and also System V Release 4
+-# (SVR4) platforms.
+-unix__=$(GLOBJ)gp_getnv.$(OBJ) $(GLOBJ)gp_upapr.$(OBJ) $(GLOBJ)gp_unix.$(OBJ) $(GLOBJ)gp_unifs.$(OBJ)
$(GLOBJ)gp_unifn.$(OBJ) $(GLOBJ)gp_stdia.$(OBJ) $(GLOBJ)gp_unix_cache.$(OBJ)
+-$(GLGEN)unix_.dev: $(unix__) $(GLD)nosync.dev $(GLD)smd5.dev
+- $(SETMOD) $(GLGEN)unix_ $(unix__) -include $(GLD)nosync
+- $(ADDMOD) $(GLGEN)unix_ -include $(GLD)smd5
+-
+-$(GLOBJ)gp_unix.$(OBJ): $(GLSRC)gp_unix.c $(AK)\
+- $(pipe__h) $(string__h) $(time__h)\
+- $(gx_h) $(gsexit_h) $(gp_h)
+- $(GLCC) $(FONTCONFIG_CFLAGS) $(GLO_)gp_unix.$(OBJ) $(C_) $(GLSRC)gp_unix.c
+-
+-$(GLOBJ)gp_unix_cache.$(OBJ): $(GLSRC)gp_unix_cache.c $(AK)\
+- $(stdio__h) $(string__h) $(time__h) $(gconfigd_h) $(gp_h) $(md5_h)
+- $(GLCC) $(GLO_)gp_unix_cache.$(OBJ) $(C_) $(GLSRC)gp_unix_cache.c
+-
+-# assume all Unix platforms support unbuffered read
+-$(GLOBJ)gp_stdia.$(OBJ): $(GLSRC)gp_stdia.c $(AK)\
+- $(stdio__h) $(time__h) $(unistd__h) $(gx_h) $(gp_h)
+- $(GLCC) $(GLO_)gp_stdia.$(OBJ) $(C_) $(GLSRC)gp_stdia.c
+-
+-# System V platforms other than SVR4, which lack some system calls,
+-# but have pipes.
+-sysv__=$(GLOBJ)gp_getnv.$(OBJ) $(GLOBJ)gp_upapr.$(OBJ) $(GLOBJ)gp_unix.$(OBJ) $(GLOBJ)gp_unifs.$(OBJ)
$(GLOBJ)gp_unifn.$(OBJ) $(GLOBJ)gp_sysv.$(OBJ)
+-$(GLGEN)sysv_.dev: $(sysv__) $(GLD)nosync.dev
+- $(SETMOD) $(GLGEN)sysv_ $(sysv__) -include $(GLD)nosync
+-
+-$(GLOBJ)gp_sysv.$(OBJ): $(GLSRC)gp_sysv.c $(stdio__h) $(time__h) $(AK)
+- $(GLCC) $(GLO_)gp_sysv.$(OBJ) $(C_) $(GLSRC)gp_sysv.c
+-
+-# -------------------------- Auxiliary programs --------------------------- #
+-
+-$(ECHOGS_XE): $(GLSRC)echogs.c $(AK) $(stdpre_h)
+- $(CCAUX) $(I_)$(GLSRCDIR)$(_I) $(O_)$(ECHOGS_XE) $(GLSRC)echogs.c
+-
+-# On the RS/6000 (at least), compiling genarch.c with gcc with -O
+-# produces a buggy executable.
+-$(GENARCH_XE): $(GLSRC)genarch.c $(AK) $(GENARCH_DEPS)
+- $(CCAUX) $(I_)$(GLSRCDIR)$(_I) $(O_)$(GENARCH_XE) $(GLSRC)genarch.c
+-
+-$(GENCONF_XE): $(GLSRC)genconf.c $(AK) $(GENCONF_DEPS)
+- $(CCAUX) $(I_)$(GLSRCDIR)$(_I) $(O_)$(GENCONF_XE) $(GLSRC)genconf.c
+-
+-$(GENDEV_XE): $(GLSRC)gendev.c $(AK) $(GENDEV_DEPS)
+- $(CCAUX) $(I_)$(GLSRCDIR)$(_I) $(O_)$(GENDEV_XE) $(GLSRC)gendev.c
+-
+-$(GENHT_XE): $(GLSRC)genht.c $(AK) $(GENHT_DEPS)
+- $(CCAUX) $(GENHT_CFLAGS) $(O_)$(GENHT_XE) $(GLSRC)genht.c
+-
+-$(GENINIT_XE): $(GLSRC)geninit.c $(AK) $(GENINIT_DEPS)
+- $(CCAUX) $(I_)$(GLSRCDIR)$(_I) $(O_)$(GENINIT_XE) $(GLSRC)geninit.c
+-
+-MKROMFS_OBJS=$(MKROMFS_ZLIB_OBJS) $(GLOBJ)gscdefs.$(OBJ) $(GLOBJ)gsmisc.$(OBJ) \
+- $(GLOBJ)gpmisc.$(OBJ) $(GLOBJ)gslibctx.$(OBJ) $(GLOBJ)gp_getnv.$(OBJ) \
+- $(GLOBJ)gp_unix.$(OBJ) $(GLOBJ)gp_unifs.$(OBJ) $(GLOBJ)gp_unifn.$(OBJ) \
+- $(GLOBJ)gp_stdia.$(OBJ) $(GLOBJ)gsutil.$(OBJ)
+-
+-$(MKROMFS_XE): $(GLSRC)mkromfs.c $(MKROMFS_COMMON_DEPS) $(MKROMFS_OBJS)
+- $(CCAUX) $(GENOPT) $(CFLAGS) $(I_)$(GLSRCDIR)$(_I) $(I_)$(GLOBJ)$(_I) $(I_)$(ZSRCDIR)$(_I)
$(GLSRC)mkromfs.c $(O_)$(MKROMFS_XE) $(MKROMFS_OBJS) -lm $(EXTRALIBS)
+-
+-# Query the environment to construct gconfig_.h.
+-# The "else true;" is required because Ultrix's implementation of sh -e
+-# terminates execution of a command if any error occurs, even if the command
+-# traps the error with ||.
+-INCLUDE=/usr/include
+-$(gconfig__h): $(UNIX_AUX_MAK) $(ECHOGS_XE)
+- $(ECHOGS_XE) -w $(gconfig__h) -x 2f2a -s This file was generated automatically by unix-aux.mak. -s -x
2a2f
+- if ( test -f $(INCLUDE)/dirent.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_DIRENT_H;
else true; fi
+- if ( test -f $(INCLUDE)/ndir.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_NDIR_H; else
true; fi
+- if ( test -f $(INCLUDE)/sys/dir.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_SYS_DIR_H;
else true; fi
+- if ( test -f $(INCLUDE)/sys/ndir.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define
HAVE_SYS_NDIR_H; else true; fi
+- if ( test -f $(INCLUDE)/sys/time.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define
HAVE_SYS_TIME_H; else true; fi
+- if ( test -f $(INCLUDE)/sys/times.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define
HAVE_SYS_TIMES_H; else true; fi
+- if ( test -f $(JSRCDIR)/jmemsys.h); then true; else $(ECHOGS_XE) -a $(gconfig__h) -x 23 define
DONT_HAVE_JMEMSYS_H; fi
+--- ghostscript-8.71/base/unix-cfg.mak 1970-01-01 01:00:00.000000000 +0100
++++ ghostscript-8.71/base/unix-cfg.mak 2010-02-26 16:33:59.000000000 +0100
+@@ -0,0 +1,33 @@
++# Copyright (C) 2001-2006 Artifex Software, Inc.
++# All Rights Reserved.
++#
++# This software is provided AS-IS with no warranty, either express or
++# implied.
++#
++# This software is distributed under license and may not be copied, modified
++# or distributed except as expressly authorized under the terms of that
++# license. Refer to licensing information at http://www.artifex.com/
++# or contact Artifex Software, Inc., 7 Mt. Lassen Drive - Suite A-134,
++# San Rafael, CA 94903, U.S.A., +1(415)492-9861, for further information.
++#
++# $Id$
++# Partial makefile common to all Unix configurations.
++# This makefile contains the build rules for configuration files.
++
++# Define the name of this makefile.
++UNIX_CFG_MAK=$(GLSRC)unix-cfg.mak
++
++# Query the environment to construct gconfig_.h.
++# The "else true;" is required because Ultrix's implementation of sh -e
++# terminates execution of a command if any error occurs, even if the command
++# traps the error with ||.
++INCLUDE=/usr/include
++$(gconfig__h): $(UNIX_CFG_MAK) $(ECHOGS_XE)
++ $(ECHOGS_XE) -w $(gconfig__h) -x 2f2a -s This file was generated automatically by unix-aux.mak. -s -x
2a2f
++ if ( test -f $(INCLUDE)/dirent.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_DIRENT_H;
else true; fi
++ if ( test -f $(INCLUDE)/ndir.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_NDIR_H; else
true; fi
++ if ( test -f $(INCLUDE)/sys/dir.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define HAVE_SYS_DIR_H;
else true; fi
++ if ( test -f $(INCLUDE)/sys/ndir.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define
HAVE_SYS_NDIR_H; else true; fi
++ if ( test -f $(INCLUDE)/sys/time.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define
HAVE_SYS_TIME_H; else true; fi
++ if ( test -f $(INCLUDE)/sys/times.h ); then $(ECHOGS_XE) -a $(gconfig__h) -x 23 define
HAVE_SYS_TIMES_H; else true; fi
++ if ( test -f $(JSRCDIR)/jmemsys.h); then true; else $(ECHOGS_XE) -a $(gconfig__h) -x 23 define
DONT_HAVE_JMEMSYS_H; fi
+--- ghostscript-8.71/base/unix-dll.mak 2009-10-19 22:24:53.000000000 +0200
++++ ghostscript-8.71/base/unix-dll.mak 2010-02-26 16:33:59.000000000 +0100
+@@ -49,7 +49,10 @@
+ GS_SONAME=$(GS_SONAME_BASE).$(GS_SOEXT)
+ GS_SONAME_MAJOR=$(GS_SONAME).$(GS_VERSION_MAJOR)
+ GS_SONAME_MAJOR_MINOR=$(GS_SONAME).$(GS_VERSION_MAJOR).$(GS_VERSION_MINOR)
+-LDFLAGS_SO=-shared -Wl,-soname=$(GS_SONAME_MAJOR)
++LDFLAGS_SO=-shared -Wl,-soname=$(GS_SONAME_MAJOR) -Wl,--out-implib=./sobin/$(GS_SONAME_BASE).dll.a
./$(GS_SONAME_BASE).def
++
++# Windows
++GS_SONAME_MAJOR_MINOR=$(GS_SONAME_BASE)-$(GS_VERSION_MAJOR).dll
+
+ # MacOS X
+ #GS_SOEXT=dylib
+@@ -88,8 +91,9 @@
+
+ # ------------------------- Recursive make targets ------------------------- #
+
+-SODEFS=LDFLAGS='$(LDFLAGS) $(LDFLAGS_SO)'\
++SODEFS=\
+ GS_XE=$(BINDIR)/$(SOBINRELDIR)/$(GS_SONAME_MAJOR_MINOR)\
++ GS_XE_LDFLAGS="$(LDFLAGS_SO)"\
+ STDIO_IMPLEMENTATION=c\
+ DISPLAY_DEV=$(DD)$(SOOBJRELDIR)/display.dev\
+ BINDIR=$(BINDIR)/$(SOBINRELDIR)\
+--- ghostscript-8.71/base/unixhead.mak 2007-12-31 19:07:59.000000000 +0100
++++ ghostscript-8.71/base/unixhead.mak 2010-02-26 16:33:59.000000000 +0100
+@@ -23,55 +23,9 @@
+
+ PLATFORM=unix_
+
+-# Define the syntax for command, object, and executable files.
+-
+-# Work around the fact that some `make' programs drop trailing spaces
+-# or interpret == as a special definition operator.
+-NULL=
+-
+-CMD=
+-C_=-c
+-D_=-D
+-_D_=$(NULL)=
+-_D=
+-I_=-I
+-II=-I
+-_I=
+-NO_OP=@:
+-O_=-o $(NULL)
+-OBJ=o
+-Q=
++# Define executable files extension.
+ XE=
+ XEAUX=
+
+-# Define the current directory prefix and command invocations.
+-
+-CAT=cat
+-D=/
+-EXP=
+-SHELL=/bin/sh
+-SH=$(SHELL)
+-
+-# Define generic commands.
+-
+-CP_=cp
+-RM_=rm -f
+-RMN_=rm -f
+-
+-# Define the arguments for genconf.
+-
+-CONFILES=-p "%s&s&&" -pl "&-l%s&s&&" -pL "&-L%s&s&&"
+-CONFLDTR=-ol
+-
+-# Define the compilation rules and flags.
+-
+-CC_D=$(CC_)
+-CC_INT=$(CC_)
+-
+-BEGINFILES=
+-
+-# Define the default build rule, so the object directories get created
+-# automatically.
++include $(GLSRCDIR)/head.mak
+
+-std: STDDIRS default
+- $(NO_OP)
+--- ghostscript-8.71/base/unixlink.mak 2008-02-29 09:13:08.000000000 +0100
++++ ghostscript-8.71/base/unixlink.mak 2010-02-26 16:33:59.000000000 +0100
+@@ -50,7 +50,7 @@
+ # which has limited environment space.
+ ldt_tr=$(PSOBJ)ldt.tr
+ $(GS_XE): $(ld_tr) $(ECHOGS_XE) $(XE_ALL) $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ)
+- $(ECHOGS_XE) -w $(ldt_tr) -n - $(CCLD) $(LDFLAGS) -o $(GS_XE)
++ $(ECHOGS_XE) -w $(ldt_tr) -n - $(CCLD) $(GS_XE_LDFLAGS) $(LDFLAGS) -o $(GS_XE)
+ $(ECHOGS_XE) -a $(ldt_tr) -n -s $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ) $(PSOBJ)gs.$(OBJ) -s
+ cat $(ld_tr) >>$(ldt_tr)
+ $(ECHOGS_XE) -a $(ldt_tr) -s - $(EXTRALIBS) $(STDLIBS)
+--- ghostscript-8.71/base/unix-plt.mak 1970-01-01 01:00:00.000000000 +0100
++++ ghostscript-8.71/base/unix-plt.mak 2010-02-26 16:33:59.000000000 +0100
+@@ -0,0 +1,56 @@
++# Copyright (C) 2001-2006 Artifex Software, Inc.
++# All Rights Reserved.
++#
++# This software is provided AS-IS with no warranty, either express or
++# implied.
++#
++# This software is distributed under license and may not be copied, modified
++# or distributed except as expressly authorized under the terms of that
++# license. Refer to licensing information at http://www.artifex.com/
++# or contact Artifex Software, Inc., 7 Mt. Lassen Drive - Suite A-134,
++# San Rafael, CA 94903, U.S.A., +1(415)492-9861, for further information.
++#
++# $Id$
++# Partial makefile common to all Unix configurations.
++# This makefile contains the build rules for the 'platform' modules.
++
++# Define the name of this makefile.
++UNIX_PLT_MAK=$(GLSRC)unix-plt.mak
++
++# -------------------------------- Library -------------------------------- #
++
++## The Unix platforms
++
++# We have to include a test for the existence of sys/time.h,
++# because some System V platforms don't have it.
++
++# Unix platforms other than System V, and also System V Release 4
++# (SVR4) platforms.
++unix__=$(GLOBJ)gp_getnv.$(OBJ) $(GLOBJ)gp_upapr.$(OBJ) $(GLOBJ)gp_unix.$(OBJ) $(GLOBJ)gp_unifs.$(OBJ)
$(GLOBJ)gp_unifn.$(OBJ) $(GLOBJ)gp_stdia.$(OBJ) $(GLOBJ)gp_unix_cache.$(OBJ)
++$(GLGEN)unix_.dev: $(unix__) $(GLD)nosync.dev $(GLD)smd5.dev
++ $(SETMOD) $(GLGEN)unix_ $(unix__) -include $(GLD)nosync
++ $(ADDMOD) $(GLGEN)unix_ -include $(GLD)smd5
++
++$(GLOBJ)gp_unix.$(OBJ): $(GLSRC)gp_unix.c $(AK)\
++ $(pipe__h) $(string__h) $(time__h)\
++ $(gx_h) $(gsexit_h) $(gp_h)
++ $(GLCC) $(FONTCONFIG_CFLAGS) $(GLO_)gp_unix.$(OBJ) $(C_) $(GLSRC)gp_unix.c
++
++$(GLOBJ)gp_unix_cache.$(OBJ): $(GLSRC)gp_unix_cache.c $(AK)\
++ $(stdio__h) $(string__h) $(time__h) $(gconfigd_h) $(gp_h) $(md5_h)
++ $(GLCC) $(GLO_)gp_unix_cache.$(OBJ) $(C_) $(GLSRC)gp_unix_cache.c
++
++# assume all Unix platforms support unbuffered read
++$(GLOBJ)gp_stdia.$(OBJ): $(GLSRC)gp_stdia.c $(AK)\
++ $(stdio__h) $(time__h) $(unistd__h) $(gx_h) $(gp_h)
++ $(GLCC) $(GLO_)gp_stdia.$(OBJ) $(C_) $(GLSRC)gp_stdia.c
++
++# System V platforms other than SVR4, which lack some system calls,
++# but have pipes.
++sysv__=$(GLOBJ)gp_getnv.$(OBJ) $(GLOBJ)gp_upapr.$(OBJ) $(GLOBJ)gp_unix.$(OBJ) $(GLOBJ)gp_unifs.$(OBJ)
$(GLOBJ)gp_unifn.$(OBJ) $(GLOBJ)gp_sysv.$(OBJ)
++$(GLGEN)sysv_.dev: $(sysv__) $(GLD)nosync.dev
++ $(SETMOD) $(GLGEN)sysv_ $(sysv__) -include $(GLD)nosync
++
++$(GLOBJ)gp_sysv.$(OBJ): $(GLSRC)gp_sysv.c $(stdio__h) $(time__h) $(AK)
++ $(GLCC) $(GLO_)gp_sysv.$(OBJ) $(C_) $(GLSRC)gp_sysv.c
++
+--- ghostscript-8.71/base/w32-plt.mak 1970-01-01 01:00:00.000000000 +0100
++++ ghostscript-8.71/base/w32-plt.mak 2010-02-26 16:33:59.000000000 +0100
+@@ -0,0 +1,79 @@
++# Copyright (C) 2001-2006 Artifex Software, Inc.
++# All Rights Reserved.
++#
++# This software is provided AS-IS with no warranty, either express or
++# implied.
++#
++# This software is distributed under license and may not be copied, modified
++# or distributed except as expressly authorized under the terms of that
++# license. Refer to licensing information at http://www.artifex.com/
++# or contact Artifex Software, Inc., 7 Mt. Lassen Drive - Suite A-134,
++# San Rafael, CA 94903, U.S.A., +1(415)492-9861, for further information.
++#
++# $Id$
++# Common makefile section for 32-bit MS Windows.
++
++# This makefile must be acceptable for all make's. For this reason,
++# no directives are allowed.
++
++# -------------------------------- Library -------------------------------- #
++
++# The Windows Win32 platform
++
++mswin32__=$(GLOBJ)gp_mswin.$(OBJ) $(GLOBJ)gp_wgetv.$(OBJ) $(GLOBJ)gp_wpapr.$(OBJ) $(GLOBJ)gp_stdia.$(OBJ)
++mswin32_inc=$(GLD)nosync.dev $(GLD)winplat.dev
++
++$(GLGEN)mswin32_.dev: $(mswin32__) $(ECHOGS_XE) $(mswin32_inc)
++ $(SETMOD) $(GLGEN)mswin32_ $(mswin32__)
++ $(ADDMOD) $(GLGEN)mswin32_ -include $(mswin32_inc)
++
++$(GLOBJ)gp_mswin.$(OBJ): $(GLSRC)gp_mswin.c $(AK) $(gp_mswin_h) \
++ $(ctype__h) $(dos__h) $(malloc__h) $(memory__h) $(pipe__h) \
++ $(stdio__h) $(string__h) $(windows__h) \
++ $(gx_h) $(gp_h) $(gpcheck_h) $(gpmisc_h) $(gserrors_h) $(gsexit_h)
++ $(GLCCWIN) $(GLO_)gp_mswin.$(OBJ) $(C_) $(GLSRC)gp_mswin.c
++
++$(GLOBJ)gp_wgetv.$(OBJ): $(GLSRC)gp_wgetv.c $(AK) $(gscdefs_h)
++ $(GLCCWIN) $(GLO_)gp_wgetv.$(OBJ) $(C_) $(GLSRC)gp_wgetv.c
++
++$(GLOBJ)gp_wpapr.$(OBJ): $(GLSRC)gp_wpapr.c $(AK) $(gp_h)
++ $(GLCCWIN) $(GLO_)gp_wpapr.$(OBJ) $(C_) $(GLSRC)gp_wpapr.c
++
++$(GLOBJ)gp_stdia.$(OBJ): $(GLSRC)gp_stdia.c $(AK)\
++ $(stdio__h) $(time__h) $(unistd__h) $(gx_h) $(gp_h)
++ $(GLCCWIN) $(GLO_)gp_stdia.$(OBJ) $(C_) $(GLSRC)gp_stdia.c
++
++# Define MS-Windows handles (file system) as a separable feature.
++
++mshandle_=$(GLOBJ)gp_mshdl.$(OBJ)
++$(GLD)mshandle.dev: $(ECHOGS_XE) $(mshandle_)
++ $(SETMOD) $(GLD)mshandle $(mshandle_)
++ $(ADDMOD) $(GLD)mshandle -iodev handle
++
++$(GLOBJ)gp_mshdl.$(OBJ): $(GLSRC)gp_mshdl.c $(AK)\
++ $(ctype__h) $(errno__h) $(stdio__h) $(string__h)\
++ $(gserror_h) $(gsmemory_h) $(gstypes_h) $(gxiodev_h)
++ $(GLCC) $(GLO_)gp_mshdl.$(OBJ) $(C_) $(GLSRC)gp_mshdl.c
++
++# Define MS-Windows printer (file system) as a separable feature.
++
++msprinter_=$(GLOBJ)gp_msprn.$(OBJ)
++$(GLD)msprinter.dev: $(ECHOGS_XE) $(msprinter_)
++ $(SETMOD) $(GLD)msprinter $(msprinter_)
++ $(ADDMOD) $(GLD)msprinter -iodev printer
++
++$(GLOBJ)gp_msprn.$(OBJ): $(GLSRC)gp_msprn.c $(AK)\
++ $(ctype__h) $(errno__h) $(stdio__h) $(string__h)\
++ $(gserror_h) $(gsmemory_h) $(gstypes_h) $(gxiodev_h)
++ $(GLCCWIN) $(GLO_)gp_msprn.$(OBJ) $(C_) $(GLSRC)gp_msprn.c
++
++# Define MS-Windows polling as a separable feature
++# because it is not needed by the gslib.
++mspoll_=$(GLOBJ)gp_mspol.$(OBJ)
++$(GLD)mspoll.dev: $(ECHOGS_XE) $(mspoll_)
++ $(SETMOD) $(GLD)mspoll $(mspoll_)
++
++$(GLOBJ)gp_mspol.$(OBJ): $(GLSRC)gp_mspol.c $(AK)\
++ $(gx_h) $(gp_h) $(gpcheck_h)
++ $(GLCCWIN) $(GLO_)gp_mspol.$(OBJ) $(C_) $(GLSRC)gp_mspol.c
++
+--- ghostscript-8.71/base/winlib.mak 2009-11-11 16:50:28.000000000 +0100
++++ ghostscript-8.71/base/winlib.mak 2010-02-26 16:33:59.000000000 +0100
+@@ -135,65 +135,8 @@
+ $(gconfig__h): $(TOP_MAKEFILES)
+ $(ECHOGS_XE) -w $(gconfig__h) -x 2f2a20 This file deliberately left blank. -x 2a2f
+
+-# -------------------------------- Library -------------------------------- #
++# ---------------------------------------------------------------------- #
+
+-# The Windows Win32 platform
+-
+-mswin32__=$(GLOBJ)gp_mswin.$(OBJ) $(GLOBJ)gp_wgetv.$(OBJ) $(GLOBJ)gp_wpapr.$(OBJ) $(GLOBJ)gp_stdia.$(OBJ)
+-mswin32_inc=$(GLD)nosync.dev $(GLD)winplat.dev
+-
+-$(GLGEN)mswin32_.dev: $(mswin32__) $(ECHOGS_XE) $(mswin32_inc)
+- $(SETMOD) $(GLGEN)mswin32_ $(mswin32__)
+- $(ADDMOD) $(GLGEN)mswin32_ -include $(mswin32_inc)
+-
+-$(GLOBJ)gp_mswin.$(OBJ): $(GLSRC)gp_mswin.c $(AK) $(gp_mswin_h) \
+- $(ctype__h) $(dos__h) $(malloc__h) $(memory__h) $(pipe__h) \
+- $(stdio__h) $(string__h) $(windows__h) \
+- $(gx_h) $(gp_h) $(gpcheck_h) $(gpmisc_h) $(gserrors_h) $(gsexit_h)
+- $(GLCCWIN) $(GLO_)gp_mswin.$(OBJ) $(C_) $(GLSRC)gp_mswin.c
+-
+-$(GLOBJ)gp_wgetv.$(OBJ): $(GLSRC)gp_wgetv.c $(AK) $(gscdefs_h)
+- $(GLCCWIN) $(GLO_)gp_wgetv.$(OBJ) $(C_) $(GLSRC)gp_wgetv.c
+-
+-$(GLOBJ)gp_wpapr.$(OBJ): $(GLSRC)gp_wpapr.c $(AK) $(gp_h)
+- $(GLCCWIN) $(GLO_)gp_wpapr.$(OBJ) $(C_) $(GLSRC)gp_wpapr.c
+-
+-$(GLOBJ)gp_stdia.$(OBJ): $(GLSRC)gp_stdia.c $(AK)\
+- $(stdio__h) $(time__h) $(unistd__h) $(gx_h) $(gp_h)
+- $(GLCCWIN) $(GLO_)gp_stdia.$(OBJ) $(C_) $(GLSRC)gp_stdia.c
+-
+-# Define MS-Windows handles (file system) as a separable feature.
+-
+-mshandle_=$(GLOBJ)gp_mshdl.$(OBJ)
+-$(GLD)mshandle.dev: $(ECHOGS_XE) $(mshandle_)
+- $(SETMOD) $(GLD)mshandle $(mshandle_)
+- $(ADDMOD) $(GLD)mshandle -iodev handle
+-
+-$(GLOBJ)gp_mshdl.$(OBJ): $(GLSRC)gp_mshdl.c $(AK)\
+- $(ctype__h) $(errno__h) $(stdio__h) $(string__h)\
+- $(gserror_h) $(gsmemory_h) $(gstypes_h) $(gxiodev_h)
+- $(GLCC) $(GLO_)gp_mshdl.$(OBJ) $(C_) $(GLSRC)gp_mshdl.c
+-
+-# Define MS-Windows printer (file system) as a separable feature.
+-
+-msprinter_=$(GLOBJ)gp_msprn.$(OBJ)
+-$(GLD)msprinter.dev: $(ECHOGS_XE) $(msprinter_)
+- $(SETMOD) $(GLD)msprinter $(msprinter_)
+- $(ADDMOD) $(GLD)msprinter -iodev printer
+-
+-$(GLOBJ)gp_msprn.$(OBJ): $(GLSRC)gp_msprn.c $(AK)\
+- $(ctype__h) $(errno__h) $(stdio__h) $(string__h)\
+- $(gserror_h) $(gsmemory_h) $(gstypes_h) $(gxiodev_h)
+- $(GLCCWIN) $(GLO_)gp_msprn.$(OBJ) $(C_) $(GLSRC)gp_msprn.c
+-
+-# Define MS-Windows polling as a separable feature
+-# because it is not needed by the gslib.
+-mspoll_=$(GLOBJ)gp_mspol.$(OBJ)
+-$(GLD)mspoll.dev: $(ECHOGS_XE) $(mspoll_)
+- $(SETMOD) $(GLD)mspoll $(mspoll_)
+-
+-$(GLOBJ)gp_mspol.$(OBJ): $(GLSRC)gp_mspol.c $(AK)\
+- $(gx_h) $(gp_h) $(gpcheck_h)
+- $(GLCCWIN) $(GLO_)gp_mspol.$(OBJ) $(C_) $(GLSRC)gp_mspol.c
++!include $(GLSRCDIR)\w32-plt.mak
+
+ # end of winlib.mak
+--- ghostscript-8.71/config.guess 1970-01-01 01:00:00.000000000 +0100
++++ ghostscript-8.71/config.guess 2010-02-26 16:33:59.000000000 +0100
+@@ -0,0 +1,1526 @@
++#! /bin/sh
++# Attempt to guess a canonical system name.
++# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
++# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
++# Free Software Foundation, Inc.
++
++timestamp='2008-01-23'
++
++# This file is free software; you can redistribute it and/or modify it
++# under the terms of the GNU General Public License as published by
++# the Free Software Foundation; either version 2 of the License, or
++# (at your option) any later version.
++#
++# This program is distributed in the hope that it will be useful, but
++# WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++# General Public License for more details.
++#
++# You should have received a copy of the GNU General Public License
++# along with this program; if not, write to the Free Software
++# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
++# 02110-1301, USA.
++#
++# As a special exception to the GNU General Public License, if you
++# distribute this file as part of a program that contains a
++# configuration script generated by Autoconf, you may include it under
++# the same distribution terms that you use for the rest of that program.
++
++
++# Originally written by Per Bothner <per bothner com>.
++# Please send patches to <config-patches gnu org>. Submit a context
++# diff and a properly formatted ChangeLog entry.
++#
++# This script attempts to guess a canonical system name similar to
++# config.sub. If it succeeds, it prints the system name on stdout, and
++# exits with 0. Otherwise, it exits with 1.
++#
++# The plan is that this can be called by configure scripts if you
++# don't specify an explicit build system type.
++
++me=`echo "$0" | sed -e 's,.*/,,'`
++
++usage="\
++Usage: $0 [OPTION]
++
++Output the configuration name of the system \`$me' is run on.
++
++Operation modes:
++ -h, --help print this help, then exit
++ -t, --time-stamp print date of last modification, then exit
++ -v, --version print version number, then exit
++
++Report bugs and patches to <config-patches gnu org>."
++
++version="\
++GNU config.guess ($timestamp)
++
++Originally written by Per Bothner.
++Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
++2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
++
++This is free software; see the source for copying conditions. There is NO
++warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
++
++help="
++Try \`$me --help' for more information."
++
++# Parse command line
++while test $# -gt 0 ; do
++ case $1 in
++ --time-stamp | --time* | -t )
++ echo "$timestamp" ; exit ;;
++ --version | -v )
++ echo "$version" ; exit ;;
++ --help | --h* | -h )
++ echo "$usage"; exit ;;
++ -- ) # Stop option processing
++ shift; break ;;
++ - ) # Use stdin as input.
++ break ;;
++ -* )
++ echo "$me: invalid option $1$help" >&2
++ exit 1 ;;
++ * )
++ break ;;
++ esac
++done
++
++if test $# != 0; then
++ echo "$me: too many arguments$help" >&2
++ exit 1
++fi
++
++trap 'exit 1' 1 2 15
++
++# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
++# compiler to aid in system detection is discouraged as it requires
++# temporary files to be created and, as you can see below, it is a
++# headache to deal with in a portable fashion.
++
++# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
++# use `HOST_CC' if defined, but it is deprecated.
++
++# Portable tmp directory creation inspired by the Autoconf team.
++
++set_cc_for_build='
++trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
++trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
++: ${TMPDIR=/tmp} ;
++ { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
++ { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
++ { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ;
} ||
++ { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
++dummy=$tmp/dummy ;
++tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
++case $CC_FOR_BUILD,$HOST_CC,$CC in
++ ,,) echo "int x;" > $dummy.c ;
++ for c in cc gcc c89 c99 ; do
++ if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
++ CC_FOR_BUILD="$c"; break ;
++ fi ;
++ done ;
++ if test x"$CC_FOR_BUILD" = x ; then
++ CC_FOR_BUILD=no_compiler_found ;
++ fi
++ ;;
++ ,,*) CC_FOR_BUILD=$CC ;;
++ ,*,*) CC_FOR_BUILD=$HOST_CC ;;
++esac ; set_cc_for_build= ;'
++
++# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
++# (ghazi noc rutgers edu 1994-08-24)
++if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
++ PATH=$PATH:/.attbin ; export PATH
++fi
++
++UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
++UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
++UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
++UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
++
++# Note: order is significant - the case branches are not exclusive.
++
++case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
++ *:NetBSD:*:*)
++ # NetBSD (nbsd) targets should (where applicable) match one or
++ # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
++ # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
++ # switched to ELF, *-*-netbsd* would select the old
++ # object file format. This provides both forward
++ # compatibility and a consistent mechanism for selecting the
++ # object file format.
++ #
++ # Note: NetBSD doesn't particularly care about the vendor
++ # portion of the name. We always set it to "unknown".
++ sysctl="sysctl -n hw.machine_arch"
++ UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
++ /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
++ case "${UNAME_MACHINE_ARCH}" in
++ armeb) machine=armeb-unknown ;;
++ arm*) machine=arm-unknown ;;
++ sh3el) machine=shl-unknown ;;
++ sh3eb) machine=sh-unknown ;;
++ sh5el) machine=sh5le-unknown ;;
++ *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
++ esac
++ # The Operating System including object format, if it has switched
++ # to ELF recently, or will in the future.
++ case "${UNAME_MACHINE_ARCH}" in
++ arm*|i386|m68k|ns32k|sh3*|sparc|vax)
++ eval $set_cc_for_build
++ if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
++ | grep __ELF__ >/dev/null
++ then
++ # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
++ # Return netbsd for either. FIX?
++ os=netbsd
++ else
++ os=netbsdelf
++ fi
++ ;;
++ *)
++ os=netbsd
++ ;;
++ esac
++ # The OS release
++ # Debian GNU/NetBSD machines have a different userland, and
++ # thus, need a distinct triplet. However, they do not need
++ # kernel version information, so it can be replaced with a
++ # suitable tag, in the style of linux-gnu.
++ case "${UNAME_VERSION}" in
++ Debian*)
++ release='-gnu'
++ ;;
++ *)
++ release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
++ ;;
++ esac
++ # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
++ # contains redundant information, the shorter form:
++ # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
++ echo "${machine}-${os}${release}"
++ exit ;;
++ *:OpenBSD:*:*)
++ UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
++ echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
++ exit ;;
++ *:ekkoBSD:*:*)
++ echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
++ exit ;;
++ *:SolidBSD:*:*)
++ echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
++ exit ;;
++ macppc:MirBSD:*:*)
++ echo powerpc-unknown-mirbsd${UNAME_RELEASE}
++ exit ;;
++ *:MirBSD:*:*)
++ echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
++ exit ;;
++ alpha:OSF1:*:*)
++ case $UNAME_RELEASE in
++ *4.0)
++ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
++ ;;
++ *5.*)
++ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
++ ;;
++ esac
++ # According to Compaq, /usr/sbin/psrinfo has been available on
++ # OSF/1 and Tru64 systems produced since 1995. I hope that
++ # covers most systems running today. This code pipes the CPU
++ # types through head -n 1, so we only detect the type of CPU 0.
++ ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n
1`
++ case "$ALPHA_CPU_TYPE" in
++ "EV4 (21064)")
++ UNAME_MACHINE="alpha" ;;
++ "EV4.5 (21064)")
++ UNAME_MACHINE="alpha" ;;
++ "LCA4 (21066/21068)")
++ UNAME_MACHINE="alpha" ;;
++ "EV5 (21164)")
++ UNAME_MACHINE="alphaev5" ;;
++ "EV5.6 (21164A)")
++ UNAME_MACHINE="alphaev56" ;;
++ "EV5.6 (21164PC)")
++ UNAME_MACHINE="alphapca56" ;;
++ "EV5.7 (21164PC)")
++ UNAME_MACHINE="alphapca57" ;;
++ "EV6 (21264)")
++ UNAME_MACHINE="alphaev6" ;;
++ "EV6.7 (21264A)")
++ UNAME_MACHINE="alphaev67" ;;
++ "EV6.8CB (21264C)")
++ UNAME_MACHINE="alphaev68" ;;
++ "EV6.8AL (21264B)")
++ UNAME_MACHINE="alphaev68" ;;
++ "EV6.8CX (21264D)")
++ UNAME_MACHINE="alphaev68" ;;
++ "EV6.9A (21264/EV69A)")
++ UNAME_MACHINE="alphaev69" ;;
++ "EV7 (21364)")
++ UNAME_MACHINE="alphaev7" ;;
++ "EV7.9 (21364A)")
++ UNAME_MACHINE="alphaev79" ;;
++ esac
++ # A Pn.n version is a patched version.
++ # A Vn.n version is a released version.
++ # A Tn.n version is a released field test version.
++ # A Xn.n version is an unreleased experimental baselevel.
++ # 1.2 uses "1.2" for uname -r.
++ echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr
'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
++ exit ;;
++ Alpha\ *:Windows_NT*:*)
++ # How do we know it's Interix rather than the generic POSIX subsystem?
++ # Should we change UNAME_MACHINE based on the output of uname instead
++ # of the specific Alpha model?
++ echo alpha-pc-interix
++ exit ;;
++ 21064:Windows_NT:50:3)
++ echo alpha-dec-winnt3.5
++ exit ;;
++ Amiga*:UNIX_System_V:4.0:*)
++ echo m68k-unknown-sysv4
++ exit ;;
++ *:[Aa]miga[Oo][Ss]:*:*)
++ echo ${UNAME_MACHINE}-unknown-amigaos
++ exit ;;
++ *:[Mm]orph[Oo][Ss]:*:*)
++ echo ${UNAME_MACHINE}-unknown-morphos
++ exit ;;
++ *:OS/390:*:*)
++ echo i370-ibm-openedition
++ exit ;;
++ *:z/VM:*:*)
++ echo s390-ibm-zvmoe
++ exit ;;
++ *:OS400:*:*)
++ echo powerpc-ibm-os400
++ exit ;;
++ arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
++ echo arm-acorn-riscix${UNAME_RELEASE}
++ exit ;;
++ arm:riscos:*:*|arm:RISCOS:*:*)
++ echo arm-unknown-riscos
++ exit ;;
++ SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
++ echo hppa1.1-hitachi-hiuxmpp
++ exit ;;
++ Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
++ # akee wpdis03 wpafb af mil (Earle F. Ake) contributed MIS and NILE.
++ if test "`(/bin/universe) 2>/dev/null`" = att ; then
++ echo pyramid-pyramid-sysv3
++ else
++ echo pyramid-pyramid-bsd
++ fi
++ exit ;;
++ NILE*:*:*:dcosx)
++ echo pyramid-pyramid-svr4
++ exit ;;
++ DRS?6000:unix:4.0:6*)
++ echo sparc-icl-nx6
++ exit ;;
++ DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
++ case `/usr/bin/uname -p` in
++ sparc) echo sparc-icl-nx7; exit ;;
++ esac ;;
++ sun4H:SunOS:5.*:*)
++ echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
++ exit ;;
++ sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
++ echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
++ exit ;;
++ i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
++ echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
++ exit ;;
++ sun4*:SunOS:6*:*)
++ # According to config.sub, this is the proper way to canonicalize
++ # SunOS6. Hard to guess exactly what SunOS6 will be like, but
++ # it's likely to be more like Solaris than SunOS4.
++ echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
++ exit ;;
++ sun4*:SunOS:*:*)
++ case "`/usr/bin/arch -k`" in
++ Series*|S4*)
++ UNAME_RELEASE=`uname -v`
++ ;;
++ esac
++ # Japanese Language versions have a version number like `4.1.3-JL'.
++ echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
++ exit ;;
++ sun3*:SunOS:*:*)
++ echo m68k-sun-sunos${UNAME_RELEASE}
++ exit ;;
++ sun*:*:4.2BSD:*)
++ UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
++ test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
++ case "`/bin/arch`" in
++ sun3)
++ echo m68k-sun-sunos${UNAME_RELEASE}
++ ;;
++ sun4)
++ echo sparc-sun-sunos${UNAME_RELEASE}
++ ;;
++ esac
++ exit ;;
++ aushp:SunOS:*:*)
++ echo sparc-auspex-sunos${UNAME_RELEASE}
++ exit ;;
++ # The situation for MiNT is a little confusing. The machine name
++ # can be virtually everything (everything which is not
++ # "atarist" or "atariste" at least should have a processor
++ # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
++ # to the lowercase version "mint" (or "freemint"). Finally
++ # the system name "TOS" denotes a system which is actually not
++ # MiNT. But MiNT is downward compatible to TOS, so this should
++ # be no problem.
++ atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
++ echo m68k-atari-mint${UNAME_RELEASE}
++ exit ;;
++ atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
++ echo m68k-atari-mint${UNAME_RELEASE}
++ exit ;;
++ *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
++ echo m68k-atari-mint${UNAME_RELEASE}
++ exit ;;
++ milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
++ echo m68k-milan-mint${UNAME_RELEASE}
++ exit ;;
++ hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
++ echo m68k-hades-mint${UNAME_RELEASE}
++ exit ;;
++ *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
++ echo m68k-unknown-mint${UNAME_RELEASE}
++ exit ;;
++ m68k:machten:*:*)
++ echo m68k-apple-machten${UNAME_RELEASE}
++ exit ;;
++ powerpc:machten:*:*)
++ echo powerpc-apple-machten${UNAME_RELEASE}
++ exit ;;
++ RISC*:Mach:*:*)
++ echo mips-dec-mach_bsd4.3
++ exit ;;
++ RISC*:ULTRIX:*:*)
++ echo mips-dec-ultrix${UNAME_RELEASE}
++ exit ;;
++ VAX*:ULTRIX*:*:*)
++ echo vax-dec-ultrix${UNAME_RELEASE}
++ exit ;;
++ 2020:CLIX:*:* | 2430:CLIX:*:*)
++ echo clipper-intergraph-clix${UNAME_RELEASE}
++ exit ;;
++ mips:*:*:UMIPS | mips:*:*:RISCos)
++ eval $set_cc_for_build
++ sed 's/^ //' << EOF >$dummy.c
++#ifdef __cplusplus
++#include <stdio.h> /* for printf() prototype */
++ int main (int argc, char *argv[]) {
++#else
++ int main (argc, argv) int argc; char *argv[]; {
++#endif
++ #if defined (host_mips) && defined (MIPSEB)
++ #if defined (SYSTYPE_SYSV)
++ printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
++ #endif
++ #if defined (SYSTYPE_SVR4)
++ printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
++ #endif
++ #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
++ printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
++ #endif
++ #endif
++ exit (-1);
++ }
++EOF
++ $CC_FOR_BUILD -o $dummy $dummy.c &&
++ dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
++ SYSTEM_NAME=`$dummy $dummyarg` &&
++ { echo "$SYSTEM_NAME"; exit; }
++ echo mips-mips-riscos${UNAME_RELEASE}
++ exit ;;
++ Motorola:PowerMAX_OS:*:*)
++ echo powerpc-motorola-powermax
++ exit ;;
++ Motorola:*:4.3:PL8-*)
++ echo powerpc-harris-powermax
++ exit ;;
++ Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
++ echo powerpc-harris-powermax
++ exit ;;
++ Night_Hawk:Power_UNIX:*:*)
++ echo powerpc-harris-powerunix
++ exit ;;
++ m88k:CX/UX:7*:*)
++ echo m88k-harris-cxux7
++ exit ;;
++ m88k:*:4*:R4*)
++ echo m88k-motorola-sysv4
++ exit ;;
++ m88k:*:3*:R3*)
++ echo m88k-motorola-sysv3
++ exit ;;
++ AViiON:dgux:*:*)
++ # DG/UX returns AViiON for all architectures
++ UNAME_PROCESSOR=`/usr/bin/uname -p`
++ if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
++ then
++ if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
++ [ ${TARGET_BINARY_INTERFACE}x = x ]
++ then
++ echo m88k-dg-dgux${UNAME_RELEASE}
++ else
++ echo m88k-dg-dguxbcs${UNAME_RELEASE}
++ fi
++ else
++ echo i586-dg-dgux${UNAME_RELEASE}
++ fi
++ exit ;;
++ M88*:DolphinOS:*:*) # DolphinOS (SVR3)
++ echo m88k-dolphin-sysv3
++ exit ;;
++ M88*:*:R3*:*)
++ # Delta 88k system running SVR3
++ echo m88k-motorola-sysv3
++ exit ;;
++ XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
++ echo m88k-tektronix-sysv3
++ exit ;;
++ Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
++ echo m68k-tektronix-bsd
++ exit ;;
++ *:IRIX*:*:*)
++ echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
++ exit ;;
++ ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
++ echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
++ exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
++ i*86:AIX:*:*)
++ echo i386-ibm-aix
++ exit ;;
++ ia64:AIX:*:*)
++ if [ -x /usr/bin/oslevel ] ; then
++ IBM_REV=`/usr/bin/oslevel`
++ else
++ IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
++ fi
++ echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
++ exit ;;
++ *:AIX:2:3)
++ if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
++ eval $set_cc_for_build
++ sed 's/^ //' << EOF >$dummy.c
++ #include <sys/systemcfg.h>
++
++ main()
++ {
++ if (!__power_pc())
++ exit(1);
++ puts("powerpc-ibm-aix3.2.5");
++ exit(0);
++ }
++EOF
++ if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
++ then
++ echo "$SYSTEM_NAME"
++ else
++ echo rs6000-ibm-aix3.2.5
++ fi
++ elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
++ echo rs6000-ibm-aix3.2.4
++ else
++ echo rs6000-ibm-aix3.2
++ fi
++ exit ;;
++ *:AIX:*:[456])
++ IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
++ if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
++ IBM_ARCH=rs6000
++ else
++ IBM_ARCH=powerpc
++ fi
++ if [ -x /usr/bin/oslevel ] ; then
++ IBM_REV=`/usr/bin/oslevel`
++ else
++ IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
++ fi
++ echo ${IBM_ARCH}-ibm-aix${IBM_REV}
++ exit ;;
++ *:AIX:*:*)
++ echo rs6000-ibm-aix
++ exit ;;
++ ibmrt:4.4BSD:*|romp-ibm:BSD:*)
++ echo romp-ibm-bsd4.4
++ exit ;;
++ ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
++ echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
++ exit ;; # report: romp-ibm BSD 4.3
++ *:BOSX:*:*)
++ echo rs6000-bull-bosx
++ exit ;;
++ DPX/2?00:B.O.S.:*:*)
++ echo m68k-bull-sysv3
++ exit ;;
++ 9000/[34]??:4.3bsd:1.*:*)
++ echo m68k-hp-bsd
++ exit ;;
++ hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
++ echo m68k-hp-bsd4.4
++ exit ;;
++ 9000/[34678]??:HP-UX:*:*)
++ HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
++ case "${UNAME_MACHINE}" in
++ 9000/31? ) HP_ARCH=m68000 ;;
++ 9000/[34]?? ) HP_ARCH=m68k ;;
++ 9000/[678][0-9][0-9])
++ if [ -x /usr/bin/getconf ]; then
++ sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
++ sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
++ case "${sc_cpu_version}" in
++ 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
++ 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
++ 532) # CPU_PA_RISC2_0
++ case "${sc_kernel_bits}" in
++ 32) HP_ARCH="hppa2.0n" ;;
++ 64) HP_ARCH="hppa2.0w" ;;
++ '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
++ esac ;;
++ esac
++ fi
++ if [ "${HP_ARCH}" = "" ]; then
++ eval $set_cc_for_build
++ sed 's/^ //' << EOF >$dummy.c
++
++ #define _HPUX_SOURCE
++ #include <stdlib.h>
++ #include <unistd.h>
++
++ int main ()
++ {
++ #if defined(_SC_KERNEL_BITS)
++ long bits = sysconf(_SC_KERNEL_BITS);
++ #endif
++ long cpu = sysconf (_SC_CPU_VERSION);
++
++ switch (cpu)
++ {
++ case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
++ case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
++ case CPU_PA_RISC2_0:
++ #if defined(_SC_KERNEL_BITS)
++ switch (bits)
++ {
++ case 64: puts ("hppa2.0w"); break;
++ case 32: puts ("hppa2.0n"); break;
++ default: puts ("hppa2.0"); break;
++ } break;
++ #else /* !defined(_SC_KERNEL_BITS) */
++ puts ("hppa2.0"); break;
++ #endif
++ default: puts ("hppa1.0"); break;
++ }
++ exit (0);
++ }
++EOF
++ (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
++ test -z "$HP_ARCH" && HP_ARCH=hppa
++ fi ;;
++ esac
++ if [ ${HP_ARCH} = "hppa2.0w" ]
++ then
++ eval $set_cc_for_build
++
++ # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
++ # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
++ # generating 64-bit code. GNU and HP use different nomenclature:
++ #
++ # $ CC_FOR_BUILD=cc ./config.guess
++ # => hppa2.0w-hp-hpux11.23
++ # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
++ # => hppa64-hp-hpux11.23
++
++ if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
++ grep __LP64__ >/dev/null
++ then
++ HP_ARCH="hppa2.0w"
++ else
++ HP_ARCH="hppa64"
++ fi
++ fi
++ echo ${HP_ARCH}-hp-hpux${HPUX_REV}
++ exit ;;
++ ia64:HP-UX:*:*)
++ HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
++ echo ia64-hp-hpux${HPUX_REV}
++ exit ;;
++ 3050*:HI-UX:*:*)
++ eval $set_cc_for_build
++ sed 's/^ //' << EOF >$dummy.c
++ #include <unistd.h>
++ int
++ main ()
++ {
++ long cpu = sysconf (_SC_CPU_VERSION);
++ /* The order matters, because CPU_IS_HP_MC68K erroneously returns
++ true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
++ results, however. */
++ if (CPU_IS_PA_RISC (cpu))
++ {
++ switch (cpu)
++ {
++ case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
++ case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
++ case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
++ default: puts ("hppa-hitachi-hiuxwe2"); break;
++ }
++ }
++ else if (CPU_IS_HP_MC68K (cpu))
++ puts ("m68k-hitachi-hiuxwe2");
++ else puts ("unknown-hitachi-hiuxwe2");
++ exit (0);
++ }
++EOF
++ $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
++ { echo "$SYSTEM_NAME"; exit; }
++ echo unknown-hitachi-hiuxwe2
++ exit ;;
++ 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
++ echo hppa1.1-hp-bsd
++ exit ;;
++ 9000/8??:4.3bsd:*:*)
++ echo hppa1.0-hp-bsd
++ exit ;;
++ *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
++ echo hppa1.0-hp-mpeix
++ exit ;;
++ hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
++ echo hppa1.1-hp-osf
++ exit ;;
++ hp8??:OSF1:*:*)
++ echo hppa1.0-hp-osf
++ exit ;;
++ i*86:OSF1:*:*)
++ if [ -x /usr/sbin/sysversion ] ; then
++ echo ${UNAME_MACHINE}-unknown-osf1mk
++ else
++ echo ${UNAME_MACHINE}-unknown-osf1
++ fi
++ exit ;;
++ parisc*:Lites*:*:*)
++ echo hppa1.1-hp-lites
++ exit ;;
++ C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
++ echo c1-convex-bsd
++ exit ;;
++ C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
++ if getsysinfo -f scalar_acc
++ then echo c32-convex-bsd
++ else echo c2-convex-bsd
++ fi
++ exit ;;
++ C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
++ echo c34-convex-bsd
++ exit ;;
++ C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
++ echo c38-convex-bsd
++ exit ;;
++ C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
++ echo c4-convex-bsd
++ exit ;;
++ CRAY*Y-MP:*:*:*)
++ echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
++ exit ;;
++ CRAY*[A-Z]90:*:*:*)
++ echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
++ | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
++ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
++ -e 's/\.[^.]*$/.X/'
++ exit ;;
++ CRAY*TS:*:*:*)
++ echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
++ exit ;;
++ CRAY*T3E:*:*:*)
++ echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
++ exit ;;
++ CRAY*SV1:*:*:*)
++ echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
++ exit ;;
++ *:UNICOS/mp:*:*)
++ echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
++ exit ;;
++ F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
++ FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
++ FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e
's/\///'`
++ FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
++ echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
++ exit ;;
++ 5000:UNIX_System_V:4.*:*)
++ FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e
's/\///'`
++ FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' |
sed -e 's/ /_/'`
++ echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
++ exit ;;
++ i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
++ echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
++ exit ;;
++ sparc*:BSD/OS:*:*)
++ echo sparc-unknown-bsdi${UNAME_RELEASE}
++ exit ;;
++ *:BSD/OS:*:*)
++ echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
++ exit ;;
++ *:FreeBSD:*:*)
++ case ${UNAME_MACHINE} in
++ pc98)
++ echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
++ amd64)
++ echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
++ *)
++ echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
++ esac
++ exit ;;
++ i*:CYGWIN*:*)
++ echo ${UNAME_MACHINE}-pc-cygwin
++ exit ;;
++ *:MINGW*:*)
++ echo ${UNAME_MACHINE}-w64-mingw32
++ exit ;;
++ i*:windows32*:*)
++ # uname -m includes "-pc" on this system.
++ echo ${UNAME_MACHINE}-mingw32
++ exit ;;
++ i*:PW*:*)
++ echo ${UNAME_MACHINE}-pc-pw32
++ exit ;;
++ *:Interix*:[3456]*)
++ case ${UNAME_MACHINE} in
++ x86)
++ echo i586-pc-interix${UNAME_RELEASE}
++ exit ;;
++ EM64T | authenticamd)
++ echo x86_64-unknown-interix${UNAME_RELEASE}
++ exit ;;
++ IA64)
++ echo ia64-unknown-interix${UNAME_RELEASE}
++ exit ;;
++ esac ;;
++ [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
++ echo i${UNAME_MACHINE}-pc-mks
++ exit ;;
++ i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
++ # How do we know it's Interix rather than the generic POSIX subsystem?
++ # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
++ # UNAME_MACHINE based on the output of uname instead of i386?
++ echo i586-pc-interix
++ exit ;;
++ i*:UWIN*:*)
++ echo ${UNAME_MACHINE}-pc-uwin
++ exit ;;
++ amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
++ echo x86_64-unknown-cygwin
++ exit ;;
++ p*:CYGWIN*:*)
++ echo powerpcle-unknown-cygwin
++ exit ;;
++ prep*:SunOS:5.*:*)
++ echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
++ exit ;;
++ *:GNU:*:*)
++ # the GNU system
++ echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
++ exit ;;
++ *:GNU/*:*:*)
++ # other systems with GNU libc and userland
++ echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo
${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
++ exit ;;
++ i*86:Minix:*:*)
++ echo ${UNAME_MACHINE}-pc-minix
++ exit ;;
++ arm*:Linux:*:*)
++ eval $set_cc_for_build
++ if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
++ | grep -q __ARM_EABI__
++ then
++ echo ${UNAME_MACHINE}-unknown-linux-gnu
++ else
++ echo ${UNAME_MACHINE}-unknown-linux-gnueabi
++ fi
++ exit ;;
++ avr32*:Linux:*:*)
++ echo ${UNAME_MACHINE}-unknown-linux-gnu
++ exit ;;
++ cris:Linux:*:*)
++ echo cris-axis-linux-gnu
++ exit ;;
++ crisv32:Linux:*:*)
++ echo crisv32-axis-linux-gnu
++ exit ;;
++ frv:Linux:*:*)
++ echo frv-unknown-linux-gnu
++ exit ;;
++ ia64:Linux:*:*)
++ echo ${UNAME_MACHINE}-unknown-linux-gnu
++ exit ;;
++ m32r*:Linux:*:*)
++ echo ${UNAME_MACHINE}-unknown-linux-gnu
++ exit ;;
++ m68*:Linux:*:*)
++ echo ${UNAME_MACHINE}-unknown-linux-gnu
++ exit ;;
++ mips:Linux:*:*)
++ eval $set_cc_for_build
++ sed 's/^ //' << EOF >$dummy.c
++ #undef CPU
++ #undef mips
++ #undef mipsel
++ #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
++ CPU=mipsel
++ #else
++ #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
++ CPU=mips
++ #else
++ CPU=
++ #endif
++ #endif
++EOF
++ eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
++ /^CPU/{
++ s: ::g
++ p
++ }'`"
++ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
++ ;;
++ mips64:Linux:*:*)
++ eval $set_cc_for_build
++ sed 's/^ //' << EOF >$dummy.c
++ #undef CPU
++ #undef mips64
++ #undef mips64el
++ #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
++ CPU=mips64el
++ #else
++ #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
++ CPU=mips64
++ #else
++ CPU=
++ #endif
++ #endif
++EOF
++ eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
++ /^CPU/{
++ s: ::g
++ p
++ }'`"
++ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
++ ;;
++ or32:Linux:*:*)
++ echo or32-unknown-linux-gnu
++ exit ;;
++ ppc:Linux:*:*)
++ echo powerpc-unknown-linux-gnu
++ exit ;;
++ ppc64:Linux:*:*)
++ echo powerpc64-unknown-linux-gnu
++ exit ;;
++ alpha:Linux:*:*)
++ case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
++ EV5) UNAME_MACHINE=alphaev5 ;;
++ EV56) UNAME_MACHINE=alphaev56 ;;
++ PCA56) UNAME_MACHINE=alphapca56 ;;
++ PCA57) UNAME_MACHINE=alphapca56 ;;
++ EV6) UNAME_MACHINE=alphaev6 ;;
++ EV67) UNAME_MACHINE=alphaev67 ;;
++ EV68*) UNAME_MACHINE=alphaev68 ;;
++ esac
++ objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
++ if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
++ echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
++ exit ;;
++ parisc:Linux:*:* | hppa:Linux:*:*)
++ # Look for CPU level
++ case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
++ PA7*) echo hppa1.1-unknown-linux-gnu ;;
++ PA8*) echo hppa2.0-unknown-linux-gnu ;;
++ *) echo hppa-unknown-linux-gnu ;;
++ esac
++ exit ;;
++ parisc64:Linux:*:* | hppa64:Linux:*:*)
++ echo hppa64-unknown-linux-gnu
++ exit ;;
++ s390:Linux:*:* | s390x:Linux:*:*)
++ echo ${UNAME_MACHINE}-ibm-linux
++ exit ;;
++ sh64*:Linux:*:*)
++ echo ${UNAME_MACHINE}-unknown-linux-gnu
++ exit ;;
++ sh*:Linux:*:*)
++ echo ${UNAME_MACHINE}-unknown-linux-gnu
++ exit ;;
++ sparc:Linux:*:* | sparc64:Linux:*:*)
++ echo ${UNAME_MACHINE}-unknown-linux-gnu
++ exit ;;
++ vax:Linux:*:*)
++ echo ${UNAME_MACHINE}-dec-linux-gnu
++ exit ;;
++ x86_64:Linux:*:*)
++ echo x86_64-unknown-linux-gnu
++ exit ;;
++ xtensa*:Linux:*:*)
++ echo ${UNAME_MACHINE}-unknown-linux-gnu
++ exit ;;
++ i*86:Linux:*:*)
++ # The BFD linker knows what the default object file format is, so
++ # first see if it will tell us. cd to the root directory to prevent
++ # problems with other programs or directories called `ld' in the path.
++ # Set LC_ALL=C to ensure ld outputs messages in English.
++ ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
++ | sed -ne '/supported targets:/!d
++ s/[ ][ ]*/ /g
++ s/.*supported targets: *//
++ s/ .*//
++ p'`
++ case "$ld_supported_targets" in
++ elf32-i386)
++ TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
++ ;;
++ a.out-i386-linux)
++ echo "${UNAME_MACHINE}-pc-linux-gnuaout"
++ exit ;;
++ coff-i386)
++ echo "${UNAME_MACHINE}-pc-linux-gnucoff"
++ exit ;;
++ "")
++ # Either a pre-BFD a.out linker (linux-gnuoldld) or
++ # one that does not give us useful --help.
++ echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
++ exit ;;
++ esac
++ # Determine whether the default compiler is a.out or elf
++ eval $set_cc_for_build
++ sed 's/^ //' << EOF >$dummy.c
++ #include <features.h>
++ #ifdef __ELF__
++ # ifdef __GLIBC__
++ # if __GLIBC__ >= 2
++ LIBC=gnu
++ # else
++ LIBC=gnulibc1
++ # endif
++ # else
++ LIBC=gnulibc1
++ # endif
++ #else
++ #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
++ LIBC=gnu
++ #else
++ LIBC=gnuaout
++ #endif
++ #endif
++ #ifdef __dietlibc__
++ LIBC=dietlibc
++ #endif
++EOF
++ eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
++ /^LIBC/{
++ s: ::g
++ p
++ }'`"
++ test x"${LIBC}" != x && {
++ echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
++ exit
++ }
++ test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
++ ;;
++ i*86:DYNIX/ptx:4*:*)
++ # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
++ # earlier versions are messed up and put the nodename in both
++ # sysname and nodename.
++ echo i386-sequent-sysv4
++ exit ;;
++ i*86:UNIX_SV:4.2MP:2.*)
++ # Unixware is an offshoot of SVR4, but it has its own version
++ # number series starting with 2...
++ # I am not positive that other SVR4 systems won't match this,
++ # I just have to hope. -- rms.
++ # Use sysv4.2uw... so that sysv4* matches it.
++ echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
++ exit ;;
++ i*86:OS/2:*:*)
++ # If we were able to find `uname', then EMX Unix compatibility
++ # is probably installed.
++ echo ${UNAME_MACHINE}-pc-os2-emx
++ exit ;;
++ i*86:XTS-300:*:STOP)
++ echo ${UNAME_MACHINE}-unknown-stop
++ exit ;;
++ i*86:atheos:*:*)
++ echo ${UNAME_MACHINE}-unknown-atheos
++ exit ;;
++ i*86:syllable:*:*)
++ echo ${UNAME_MACHINE}-pc-syllable
++ exit ;;
++ i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
++ echo i386-unknown-lynxos${UNAME_RELEASE}
++ exit ;;
++ i*86:*DOS:*:*)
++ echo ${UNAME_MACHINE}-pc-msdosdjgpp
++ exit ;;
++ i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
++ UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
++ if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
++ echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
++ else
++ echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
++ fi
++ exit ;;
++ i*86:*:5:[678]*)
++ # UnixWare 7.x, OpenUNIX and OpenServer 6.
++ case `/bin/uname -X | grep "^Machine"` in
++ *486*) UNAME_MACHINE=i486 ;;
++ *Pentium) UNAME_MACHINE=i586 ;;
++ *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
++ esac
++ echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
++ exit ;;
++ i*86:*:3.2:*)
++ if test -f /usr/options/cb.name; then
++ UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
++ echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
++ elif /bin/uname -X 2>/dev/null >/dev/null ; then
++ UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
++ (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
++ (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
++ && UNAME_MACHINE=i586
++ (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
++ && UNAME_MACHINE=i686
++ (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
++ && UNAME_MACHINE=i686
++ echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
++ else
++ echo ${UNAME_MACHINE}-pc-sysv32
++ fi
++ exit ;;
++ pc:*:*:*)
++ # Left here for compatibility:
++ # uname -m prints for DJGPP always 'pc', but it prints nothing about
++ # the processor, so we play safe by assuming i386.
++ echo i386-pc-msdosdjgpp
++ exit ;;
++ Intel:Mach:3*:*)
++ echo i386-pc-mach3
++ exit ;;
++ paragon:*:*:*)
++ echo i860-intel-osf1
++ exit ;;
++ i860:*:4.*:*) # i860-SVR4
++ if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
++ echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
++ else # Add other i860-SVR4 vendors below as they are discovered.
++ echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
++ fi
++ exit ;;
++ mini*:CTIX:SYS*5:*)
++ # "miniframe"
++ echo m68010-convergent-sysv
++ exit ;;
++ mc68k:UNIX:SYSTEM5:3.51m)
++ echo m68k-convergent-sysv
++ exit ;;
++ M680?0:D-NIX:5.3:*)
++ echo m68k-diab-dnix
++ exit ;;
++ M68*:*:R3V[5678]*:*)
++ test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
++ 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 |
4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
++ OS_REL=''
++ test -r /etc/.relid \
++ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
++ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
++ && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
++ /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
++ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
++ 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
++ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
++ && { echo i486-ncr-sysv4; exit; } ;;
++ m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
++ echo m68k-unknown-lynxos${UNAME_RELEASE}
++ exit ;;
++ mc68030:UNIX_System_V:4.*:*)
++ echo m68k-atari-sysv4
++ exit ;;
++ TSUNAMI:LynxOS:2.*:*)
++ echo sparc-unknown-lynxos${UNAME_RELEASE}
++ exit ;;
++ rs6000:LynxOS:2.*:*)
++ echo rs6000-unknown-lynxos${UNAME_RELEASE}
++ exit ;;
++ PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
++ echo powerpc-unknown-lynxos${UNAME_RELEASE}
++ exit ;;
++ SM[BE]S:UNIX_SV:*:*)
++ echo mips-dde-sysv${UNAME_RELEASE}
++ exit ;;
++ RM*:ReliantUNIX-*:*:*)
++ echo mips-sni-sysv4
++ exit ;;
++ RM*:SINIX-*:*:*)
++ echo mips-sni-sysv4
++ exit ;;
++ *:SINIX-*:*:*)
++ if uname -p 2>/dev/null >/dev/null ; then
++ UNAME_MACHINE=`(uname -p) 2>/dev/null`
++ echo ${UNAME_MACHINE}-sni-sysv4
++ else
++ echo ns32k-sni-sysv
++ fi
++ exit ;;
++ PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
++ # says <Richard M Bartel ccMail Census GOV>
++ echo i586-unisys-sysv4
++ exit ;;
++ *:UNIX_System_V:4*:FTX*)
++ # From Gerald Hewes <hewes openmarket com>.
++ # How about differentiating between stratus architectures? -djm
++ echo hppa1.1-stratus-sysv4
++ exit ;;
++ *:*:*:FTX*)
++ # From seanf swdc stratus com
++ echo i860-stratus-sysv4
++ exit ;;
++ i*86:VOS:*:*)
++ # From Paul Green stratus com
++ echo ${UNAME_MACHINE}-stratus-vos
++ exit ;;
++ *:VOS:*:*)
++ # From Paul Green stratus com
++ echo hppa1.1-stratus-vos
++ exit ;;
++ mc68*:A/UX:*:*)
++ echo m68k-apple-aux${UNAME_RELEASE}
++ exit ;;
++ news*:NEWS-OS:6*:*)
++ echo mips-sony-newsos6
++ exit ;;
++ R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
++ if [ -d /usr/nec ]; then
++ echo mips-nec-sysv${UNAME_RELEASE}
++ else
++ echo mips-unknown-sysv${UNAME_RELEASE}
++ fi
++ exit ;;
++ BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
++ echo powerpc-be-beos
++ exit ;;
++ BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
++ echo powerpc-apple-beos
++ exit ;;
++ BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
++ echo i586-pc-beos
++ exit ;;
++ SX-4:SUPER-UX:*:*)
++ echo sx4-nec-superux${UNAME_RELEASE}
++ exit ;;
++ SX-5:SUPER-UX:*:*)
++ echo sx5-nec-superux${UNAME_RELEASE}
++ exit ;;
++ SX-6:SUPER-UX:*:*)
++ echo sx6-nec-superux${UNAME_RELEASE}
++ exit ;;
++ SX-7:SUPER-UX:*:*)
++ echo sx7-nec-superux${UNAME_RELEASE}
++ exit ;;
++ SX-8:SUPER-UX:*:*)
++ echo sx8-nec-superux${UNAME_RELEASE}
++ exit ;;
++ SX-8R:SUPER-UX:*:*)
++ echo sx8r-nec-superux${UNAME_RELEASE}
++ exit ;;
++ Power*:Rhapsody:*:*)
++ echo powerpc-apple-rhapsody${UNAME_RELEASE}
++ exit ;;
++ *:Rhapsody:*:*)
++ echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
++ exit ;;
++ *:Darwin:*:*)
++ UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
++ case $UNAME_PROCESSOR in
++ unknown) UNAME_PROCESSOR=powerpc ;;
++ esac
++ echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
++ exit ;;
++ *:procnto*:*:* | *:QNX:[0123456789]*:*)
++ UNAME_PROCESSOR=`uname -p`
++ if test "$UNAME_PROCESSOR" = "x86"; then
++ UNAME_PROCESSOR=i386
++ UNAME_MACHINE=pc
++ fi
++ echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
++ exit ;;
++ *:QNX:*:4*)
++ echo i386-pc-qnx
++ exit ;;
++ NSE-?:NONSTOP_KERNEL:*:*)
++ echo nse-tandem-nsk${UNAME_RELEASE}
++ exit ;;
++ NSR-?:NONSTOP_KERNEL:*:*)
++ echo nsr-tandem-nsk${UNAME_RELEASE}
++ exit ;;
++ *:NonStop-UX:*:*)
++ echo mips-compaq-nonstopux
++ exit ;;
++ BS2000:POSIX*:*:*)
++ echo bs2000-siemens-sysv
++ exit ;;
++ DS/*:UNIX_System_V:*:*)
++ echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
++ exit ;;
++ *:Plan9:*:*)
++ # "uname -m" is not consistent, so use $cputype instead. 386
++ # is converted to i386 for consistency with other x86
++ # operating systems.
++ if test "$cputype" = "386"; then
++ UNAME_MACHINE=i386
++ else
++ UNAME_MACHINE="$cputype"
++ fi
++ echo ${UNAME_MACHINE}-unknown-plan9
++ exit ;;
++ *:TOPS-10:*:*)
++ echo pdp10-unknown-tops10
++ exit ;;
++ *:TENEX:*:*)
++ echo pdp10-unknown-tenex
++ exit ;;
++ KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
++ echo pdp10-dec-tops20
++ exit ;;
++ XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
++ echo pdp10-xkl-tops20
++ exit ;;
++ *:TOPS-20:*:*)
++ echo pdp10-unknown-tops20
++ exit ;;
++ *:ITS:*:*)
++ echo pdp10-unknown-its
++ exit ;;
++ SEI:*:*:SEIUX)
++ echo mips-sei-seiux${UNAME_RELEASE}
++ exit ;;
++ *:DragonFly:*:*)
++ echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
++ exit ;;
++ *:*VMS:*:*)
++ UNAME_MACHINE=`(uname -p) 2>/dev/null`
++ case "${UNAME_MACHINE}" in
++ A*) echo alpha-dec-vms ; exit ;;
++ I*) echo ia64-dec-vms ; exit ;;
++ V*) echo vax-dec-vms ; exit ;;
++ esac ;;
++ *:XENIX:*:SysV)
++ echo i386-pc-xenix
++ exit ;;
++ i*86:skyos:*:*)
++ echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
++ exit ;;
++ i*86:rdos:*:*)
++ echo ${UNAME_MACHINE}-pc-rdos
++ exit ;;
++esac
++
++#echo '(No uname command or uname output not recognized.)' 1>&2
++#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
++
++eval $set_cc_for_build
++cat >$dummy.c <<EOF
++#ifdef _SEQUENT_
++# include <sys/types.h>
++# include <sys/utsname.h>
++#endif
++main ()
++{
++#if defined (sony)
++#if defined (MIPSEB)
++ /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
++ I don't know.... */
++ printf ("mips-sony-bsd\n"); exit (0);
++#else
++#include <sys/param.h>
++ printf ("m68k-sony-newsos%s\n",
++#ifdef NEWSOS4
++ "4"
++#else
++ ""
++#endif
++ ); exit (0);
++#endif
++#endif
++
++#if defined (__arm) && defined (__acorn) && defined (__unix)
++ printf ("arm-acorn-riscix\n"); exit (0);
++#endif
++
++#if defined (hp300) && !defined (hpux)
++ printf ("m68k-hp-bsd\n"); exit (0);
++#endif
++
++#if defined (NeXT)
++#if !defined (__ARCHITECTURE__)
++#define __ARCHITECTURE__ "m68k"
++#endif
++ int version;
++ version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
++ if (version < 4)
++ printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
++ else
++ printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
++ exit (0);
++#endif
++
++#if defined (MULTIMAX) || defined (n16)
++#if defined (UMAXV)
++ printf ("ns32k-encore-sysv\n"); exit (0);
++#else
++#if defined (CMU)
++ printf ("ns32k-encore-mach\n"); exit (0);
++#else
++ printf ("ns32k-encore-bsd\n"); exit (0);
++#endif
++#endif
++#endif
++
++#if defined (__386BSD__)
++ printf ("i386-pc-bsd\n"); exit (0);
++#endif
++
++#if defined (sequent)
++#if defined (i386)
++ printf ("i386-sequent-dynix\n"); exit (0);
++#endif
++#if defined (ns32000)
++ printf ("ns32k-sequent-dynix\n"); exit (0);
++#endif
++#endif
++
++#if defined (_SEQUENT_)
++ struct utsname un;
++
++ uname(&un);
++
++ if (strncmp(un.version, "V2", 2) == 0) {
++ printf ("i386-sequent-ptx2\n"); exit (0);
++ }
++ if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
++ printf ("i386-sequent-ptx1\n"); exit (0);
++ }
++ printf ("i386-sequent-ptx\n"); exit (0);
++
++#endif
++
++#if defined (vax)
++# if !defined (ultrix)
++# include <sys/param.h>
++# if defined (BSD)
++# if BSD == 43
++ printf ("vax-dec-bsd4.3\n"); exit (0);
++# else
++# if BSD == 199006
++ printf ("vax-dec-bsd4.3reno\n"); exit (0);
++# else
++ printf ("vax-dec-bsd\n"); exit (0);
++# endif
++# endif
++# else
++ printf ("vax-dec-bsd\n"); exit (0);
++# endif
++# else
++ printf ("vax-dec-ultrix\n"); exit (0);
++# endif
++#endif
++
++#if defined (alliant) && defined (i860)
++ printf ("i860-alliant-bsd\n"); exit (0);
++#endif
++
++ exit (1);
++}
++EOF
++
++$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
++ { echo "$SYSTEM_NAME"; exit; }
++
++# Apollos put the system type in the environment.
++
++test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
++
++# Convex versions that predate uname can use getsysinfo(1)
++
++if [ -x /usr/convex/getsysinfo ]
++then
++ case `getsysinfo -f cpu_type` in
++ c1*)
++ echo c1-convex-bsd
++ exit ;;
++ c2*)
++ if getsysinfo -f scalar_acc
++ then echo c32-convex-bsd
++ else echo c2-convex-bsd
++ fi
++ exit ;;
++ c34*)
++ echo c34-convex-bsd
++ exit ;;
++ c38*)
++ echo c38-convex-bsd
++ exit ;;
++ c4*)
++ echo c4-convex-bsd
++ exit ;;
++ esac
++fi
++
++cat >&2 <<EOF
++$0: unable to guess system type
++
++This script, last modified $timestamp, has failed to recognize
++the operating system you are using. It is advised that you
++download the most up to date version of the config scripts from
++
++ http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
++and
++ http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
++
++If the version you run ($0) is already up to date, please
++send the following data and any information you think might be
++pertinent to <config-patches gnu org> in order to provide the needed
++information to handle your system.
++
++config.guess timestamp = $timestamp
++
++uname -m = `(uname -m) 2>/dev/null || echo unknown`
++uname -r = `(uname -r) 2>/dev/null || echo unknown`
++uname -s = `(uname -s) 2>/dev/null || echo unknown`
++uname -v = `(uname -v) 2>/dev/null || echo unknown`
++
++/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
++/bin/uname -X = `(/bin/uname -X) 2>/dev/null`
++
++hostinfo = `(hostinfo) 2>/dev/null`
++/bin/universe = `(/bin/universe) 2>/dev/null`
++/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
++/bin/arch = `(/bin/arch) 2>/dev/null`
++/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
++/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
++
++UNAME_MACHINE = ${UNAME_MACHINE}
++UNAME_RELEASE = ${UNAME_RELEASE}
++UNAME_SYSTEM = ${UNAME_SYSTEM}
++UNAME_VERSION = ${UNAME_VERSION}
++EOF
++
++exit 1
++
++# Local variables:
++# eval: (add-hook 'write-file-hooks 'time-stamp)
++# time-stamp-start: "timestamp='"
++# time-stamp-format: "%:y-%02m-%02d"
++# time-stamp-end: "'"
++# End:
+--- ghostscript-8.71/config.hin 1970-01-01 01:00:00.000000000 +0100
++++ ghostscript-8.71/config.hin 2010-02-26 16:33:59.000000000 +0100
+@@ -0,0 +1,21 @@
++
++/* Define to 1 if you have the <dirent.h> header file. */
++#undef HAVE_DIRENT_H
++
++/* Define to 1 if you have the <ndir.h> header file. */
++#undef HAVE_NDIR_H
++
++/* Define to 1 if you have the <sys/dir.h> header file. */
++#undef HAVE_SYS_DIR_H
++
++/* Define to 1 if you have the <sys/ndir.h> header file. */
++#undef HAVE_SYS_NDIR_H
++
++/* Define to 1 if you have the <sys/time.h> header file. */
++#undef HAVE_SYS_TIME_H
++
++/* Define to 1 if you have the <sys/times.h> header file. */
++#undef HAVE_SYS_TIMES_H
++
++/* TODO: jmemsys.h */
++
+--- ghostscript-8.71/config.sub 1970-01-01 01:00:00.000000000 +0100
++++ ghostscript-8.71/config.sub 2010-02-26 16:33:59.000000000 +0100
+@@ -0,0 +1,1658 @@
++#! /bin/sh
++# Configuration validation subroutine script.
++# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
++# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
++# Free Software Foundation, Inc.
++
++timestamp='2008-01-16'
++
++# This file is (in principle) common to ALL GNU software.
++# The presence of a machine in this file suggests that SOME GNU software
++# can handle that machine. It does not imply ALL GNU software can.
++#
++# This file is free software; you can redistribute it and/or modify
++# it under the terms of the GNU General Public License as published by
++# the Free Software Foundation; either version 2 of the License, or
++# (at your option) any later version.
++#
++# This program is distributed in the hope that it will be useful,
++# but WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++# GNU General Public License for more details.
++#
++# You should have received a copy of the GNU General Public License
++# along with this program; if not, write to the Free Software
++# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
++# 02110-1301, USA.
++#
++# As a special exception to the GNU General Public License, if you
++# distribute this file as part of a program that contains a
++# configuration script generated by Autoconf, you may include it under
++# the same distribution terms that you use for the rest of that program.
++
++
++# Please send patches to <config-patches gnu org>. Submit a context
++# diff and a properly formatted ChangeLog entry.
++#
++# Configuration subroutine to validate and canonicalize a configuration type.
++# Supply the specified configuration type as an argument.
++# If it is invalid, we print an error message on stderr and exit with code 1.
++# Otherwise, we print the canonical config type on stdout and succeed.
++
++# This file is supposed to be the same for all GNU packages
++# and recognize all the CPU types, system types and aliases
++# that are meaningful with *any* GNU software.
++# Each package is responsible for reporting which valid configurations
++# it does not support. The user should be able to distinguish
++# a failure to support a valid configuration from a meaningless
++# configuration.
++
++# The goal of this file is to map all the various variations of a given
++# machine specification into a single specification in the form:
++# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
++# or in some cases, the newer four-part form:
++# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
++# It is wrong to echo any other type of specification.
++
++me=`echo "$0" | sed -e 's,.*/,,'`
++
++usage="\
++Usage: $0 [OPTION] CPU-MFR-OPSYS
++ $0 [OPTION] ALIAS
++
++Canonicalize a configuration name.
++
++Operation modes:
++ -h, --help print this help, then exit
++ -t, --time-stamp print date of last modification, then exit
++ -v, --version print version number, then exit
++
++Report bugs and patches to <config-patches gnu org>."
++
++version="\
++GNU config.sub ($timestamp)
++
++Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
++2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
++
++This is free software; see the source for copying conditions. There is NO
++warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
++
++help="
++Try \`$me --help' for more information."
++
++# Parse command line
++while test $# -gt 0 ; do
++ case $1 in
++ --time-stamp | --time* | -t )
++ echo "$timestamp" ; exit ;;
++ --version | -v )
++ echo "$version" ; exit ;;
++ --help | --h* | -h )
++ echo "$usage"; exit ;;
++ -- ) # Stop option processing
++ shift; break ;;
++ - ) # Use stdin as input.
++ break ;;
++ -* )
++ echo "$me: invalid option $1$help"
++ exit 1 ;;
++
++ *local*)
++ # First pass through any local machine types.
++ echo $1
++ exit ;;
++
++ * )
++ break ;;
++ esac
++done
++
++case $# in
++ 0) echo "$me: missing argument$help" >&2
++ exit 1;;
++ 1) ;;
++ *) echo "$me: too many arguments$help" >&2
++ exit 1;;
++esac
++
++# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
++# Here we must recognize all the valid KERNEL-OS combinations.
++maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
++case $maybe_os in
++ nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
++ uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
++ storm-chaos* | os2-emx* | rtmk-nova*)
++ os=-$maybe_os
++ basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
++ ;;
++ *)
++ basic_machine=`echo $1 | sed 's/-[^-]*$//'`
++ if [ $basic_machine != $1 ]
++ then os=`echo $1 | sed 's/.*-/-/'`
++ else os=; fi
++ ;;
++esac
++
++### Let's recognize common machines as not being operating systems so
++### that things like config.sub decstation-3100 work. We also
++### recognize some manufacturers as not being operating systems, so we
++### can provide default operating systems below.
++case $os in
++ -sun*os*)
++ # Prevent following clause from handling this invalid input.
++ ;;
++ -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
++ -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
++ -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
++ -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
++ -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
++ -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
++ -apple | -axis | -knuth | -cray)
++ os=
++ basic_machine=$1
++ ;;
++ -sim | -cisco | -oki | -wec | -winbond)
++ os=
++ basic_machine=$1
++ ;;
++ -scout)
++ ;;
++ -wrs)
++ os=-vxworks
++ basic_machine=$1
++ ;;
++ -chorusos*)
++ os=-chorusos
++ basic_machine=$1
++ ;;
++ -chorusrdb)
++ os=-chorusrdb
++ basic_machine=$1
++ ;;
++ -hiux*)
++ os=-hiuxwe2
++ ;;
++ -sco6)
++ os=-sco5v6
++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
++ ;;
++ -sco5)
++ os=-sco3.2v5
++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
++ ;;
++ -sco4)
++ os=-sco3.2v4
++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
++ ;;
++ -sco3.2.[4-9]*)
++ os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
++ ;;
++ -sco3.2v[4-9]*)
++ # Don't forget version if it is 3.2v4 or newer.
++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
++ ;;
++ -sco5v6*)
++ # Don't forget version if it is 3.2v4 or newer.
++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
++ ;;
++ -sco*)
++ os=-sco3.2v2
++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
++ ;;
++ -udk*)
++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
++ ;;
++ -isc)
++ os=-isc2.2
++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
++ ;;
++ -clix*)
++ basic_machine=clipper-intergraph
++ ;;
++ -isc*)
++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
++ ;;
++ -lynx*)
++ os=-lynxos
++ ;;
++ -ptx*)
++ basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
++ ;;
++ -windowsnt*)
++ os=`echo $os | sed -e 's/windowsnt/winnt/'`
++ ;;
++ -psos*)
++ os=-psos
++ ;;
++ -mint | -mint[0-9]*)
++ basic_machine=m68k-atari
++ os=-mint
++ ;;
++esac
++
++# Decode aliases for certain CPU-COMPANY combinations.
++case $basic_machine in
++ # Recognize the basic CPU types without company name.
++ # Some are omitted here because they have special meanings below.
++ 1750a | 580 \
++ | a29k \
++ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
++ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
++ | am33_2.0 \
++ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
++ | bfin \
++ | c4x | clipper \
++ | d10v | d30v | dlx | dsp16xx \
++ | fido | fr30 | frv \
++ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
++ | i370 | i860 | i960 | ia64 \
++ | ip2k | iq2000 \
++ | m32c | m32r | m32rle | m68000 | m68k | m88k \
++ | maxq | mb | microblaze | mcore | mep \
++ | mips | mipsbe | mipseb | mipsel | mipsle \
++ | mips16 \
++ | mips64 | mips64el \
++ | mips64vr | mips64vrel \
++ | mips64orion | mips64orionel \
++ | mips64vr4100 | mips64vr4100el \
++ | mips64vr4300 | mips64vr4300el \
++ | mips64vr5000 | mips64vr5000el \
++ | mips64vr5900 | mips64vr5900el \
++ | mipsisa32 | mipsisa32el \
++ | mipsisa32r2 | mipsisa32r2el \
++ | mipsisa64 | mipsisa64el \
++ | mipsisa64r2 | mipsisa64r2el \
++ | mipsisa64sb1 | mipsisa64sb1el \
++ | mipsisa64sr71k | mipsisa64sr71kel \
++ | mipstx39 | mipstx39el \
++ | mn10200 | mn10300 \
++ | mt \
++ | msp430 \
++ | nios | nios2 \
++ | ns16k | ns32k \
++ | or32 \
++ | pdp10 | pdp11 | pj | pjl \
++ | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
++ | pyramid \
++ | score \
++ | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
++ | sh64 | sh64le \
++ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
++ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
++ | spu | strongarm \
++ | tahoe | thumb | tic4x | tic80 | tron \
++ | v850 | v850e \
++ | we32k \
++ | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
++ | z8k)
++ basic_machine=$basic_machine-unknown
++ ;;
++ m6811 | m68hc11 | m6812 | m68hc12)
++ # Motorola 68HC11/12.
++ basic_machine=$basic_machine-unknown
++ os=-none
++ ;;
++ m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
++ ;;
++ ms1)
++ basic_machine=mt-unknown
++ ;;
++
++ # We use `pc' rather than `unknown'
++ # because (1) that's what they normally are, and
++ # (2) the word "unknown" tends to confuse beginning users.
++ i*86 | x86_64)
++ basic_machine=$basic_machine-pc
++ ;;
++ # Object if more than one company name word.
++ *-*-*)
++ echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
++ exit 1
++ ;;
++ # Recognize the basic CPU types with company name.
++ 580-* \
++ | a29k-* \
++ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
++ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
++ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
++ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
++ | avr-* | avr32-* \
++ | bfin-* | bs2000-* \
++ | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
++ | clipper-* | craynv-* | cydra-* \
++ | d10v-* | d30v-* | dlx-* \
++ | elxsi-* \
++ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
++ | h8300-* | h8500-* \
++ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
++ | i*86-* | i860-* | i960-* | ia64-* \
++ | ip2k-* | iq2000-* \
++ | m32c-* | m32r-* | m32rle-* \
++ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
++ | m88110-* | m88k-* | maxq-* | mcore-* \
++ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
++ | mips16-* \
++ | mips64-* | mips64el-* \
++ | mips64vr-* | mips64vrel-* \
++ | mips64orion-* | mips64orionel-* \
++ | mips64vr4100-* | mips64vr4100el-* \
++ | mips64vr4300-* | mips64vr4300el-* \
++ | mips64vr5000-* | mips64vr5000el-* \
++ | mips64vr5900-* | mips64vr5900el-* \
++ | mipsisa32-* | mipsisa32el-* \
++ | mipsisa32r2-* | mipsisa32r2el-* \
++ | mipsisa64-* | mipsisa64el-* \
++ | mipsisa64r2-* | mipsisa64r2el-* \
++ | mipsisa64sb1-* | mipsisa64sb1el-* \
++ | mipsisa64sr71k-* | mipsisa64sr71kel-* \
++ | mipstx39-* | mipstx39el-* \
++ | mmix-* \
++ | mt-* \
++ | msp430-* \
++ | nios-* | nios2-* \
++ | none-* | np1-* | ns16k-* | ns32k-* \
++ | orion-* \
++ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
++ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
++ | pyramid-* \
++ | romp-* | rs6000-* \
++ | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
++ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
++ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
++ | sparclite-* \
++ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
++ | tahoe-* | thumb-* \
++ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
++ | tron-* \
++ | v850-* | v850e-* | vax-* \
++ | we32k-* \
++ | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
++ | xstormy16-* | xtensa*-* \
++ | ymp-* \
++ | z8k-*)
++ ;;
++ # Recognize the basic CPU types without company name, with glob match.
++ xtensa*)
++ basic_machine=$basic_machine-unknown
++ ;;
++ # Recognize the various machine names and aliases which stand
++ # for a CPU type and a company and sometimes even an OS.
++ 386bsd)
++ basic_machine=i386-unknown
++ os=-bsd
++ ;;
++ 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
++ basic_machine=m68000-att
++ ;;
++ 3b*)
++ basic_machine=we32k-att
++ ;;
++ a29khif)
++ basic_machine=a29k-amd
++ os=-udi
++ ;;
++ abacus)
++ basic_machine=abacus-unknown
++ ;;
++ adobe68k)
++ basic_machine=m68010-adobe
++ os=-scout
++ ;;
++ alliant | fx80)
++ basic_machine=fx80-alliant
++ ;;
++ altos | altos3068)
++ basic_machine=m68k-altos
++ ;;
++ am29k)
++ basic_machine=a29k-none
++ os=-bsd
++ ;;
++ amd64)
++ basic_machine=x86_64-pc
++ ;;
++ amd64-*)
++ basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
++ ;;
++ amdahl)
++ basic_machine=580-amdahl
++ os=-sysv
++ ;;
++ amiga | amiga-*)
++ basic_machine=m68k-unknown
++ ;;
++ amigaos | amigados)
++ basic_machine=m68k-unknown
++ os=-amigaos
++ ;;
++ amigaunix | amix)
++ basic_machine=m68k-unknown
++ os=-sysv4
++ ;;
++ apollo68)
++ basic_machine=m68k-apollo
++ os=-sysv
++ ;;
++ apollo68bsd)
++ basic_machine=m68k-apollo
++ os=-bsd
++ ;;
++ aux)
++ basic_machine=m68k-apple
++ os=-aux
++ ;;
++ balance)
++ basic_machine=ns32k-sequent
++ os=-dynix
++ ;;
++ blackfin)
++ basic_machine=bfin-unknown
++ os=-linux
++ ;;
++ blackfin-*)
++ basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
++ os=-linux
++ ;;
++ c90)
++ basic_machine=c90-cray
++ os=-unicos
++ ;;
++ convex-c1)
++ basic_machine=c1-convex
++ os=-bsd
++ ;;
++ convex-c2)
++ basic_machine=c2-convex
++ os=-bsd
++ ;;
++ convex-c32)
++ basic_machine=c32-convex
++ os=-bsd
++ ;;
++ convex-c34)
++ basic_machine=c34-convex
++ os=-bsd
++ ;;
++ convex-c38)
++ basic_machine=c38-convex
++ os=-bsd
++ ;;
++ cray | j90)
++ basic_machine=j90-cray
++ os=-unicos
++ ;;
++ craynv)
++ basic_machine=craynv-cray
++ os=-unicosmp
++ ;;
++ cr16)
++ basic_machine=cr16-unknown
++ os=-elf
++ ;;
++ crds | unos)
++ basic_machine=m68k-crds
++ ;;
++ crisv32 | crisv32-* | etraxfs*)
++ basic_machine=crisv32-axis
++ ;;
++ cris | cris-* | etrax*)
++ basic_machine=cris-axis
++ ;;
++ crx)
++ basic_machine=crx-unknown
++ os=-elf
++ ;;
++ da30 | da30-*)
++ basic_machine=m68k-da30
++ ;;
++ decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
++ basic_machine=mips-dec
++ ;;
++ decsystem10* | dec10*)
++ basic_machine=pdp10-dec
++ os=-tops10
++ ;;
++ decsystem20* | dec20*)
++ basic_machine=pdp10-dec
++ os=-tops20
++ ;;
++ delta | 3300 | motorola-3300 | motorola-delta \
++ | 3300-motorola | delta-motorola)
++ basic_machine=m68k-motorola
++ ;;
++ delta88)
++ basic_machine=m88k-motorola
++ os=-sysv3
++ ;;
++ djgpp)
++ basic_machine=i586-pc
++ os=-msdosdjgpp
++ ;;
++ dpx20 | dpx20-*)
++ basic_machine=rs6000-bull
++ os=-bosx
++ ;;
++ dpx2* | dpx2*-bull)
++ basic_machine=m68k-bull
++ os=-sysv3
++ ;;
++ ebmon29k)
++ basic_machine=a29k-amd
++ os=-ebmon
++ ;;
++ elxsi)
++ basic_machine=elxsi-elxsi
++ os=-bsd
++ ;;
++ encore | umax | mmax)
++ basic_machine=ns32k-encore
++ ;;
++ es1800 | OSE68k | ose68k | ose | OSE)
++ basic_machine=m68k-ericsson
++ os=-ose
++ ;;
++ fx2800)
++ basic_machine=i860-alliant
++ ;;
++ genix)
++ basic_machine=ns32k-ns
++ ;;
++ gmicro)
++ basic_machine=tron-gmicro
++ os=-sysv
++ ;;
++ go32)
++ basic_machine=i386-pc
++ os=-go32
++ ;;
++ h3050r* | hiux*)
++ basic_machine=hppa1.1-hitachi
++ os=-hiuxwe2
++ ;;
++ h8300hms)
++ basic_machine=h8300-hitachi
++ os=-hms
++ ;;
++ h8300xray)
++ basic_machine=h8300-hitachi
++ os=-xray
++ ;;
++ h8500hms)
++ basic_machine=h8500-hitachi
++ os=-hms
++ ;;
++ harris)
++ basic_machine=m88k-harris
++ os=-sysv3
++ ;;
++ hp300-*)
++ basic_machine=m68k-hp
++ ;;
++ hp300bsd)
++ basic_machine=m68k-hp
++ os=-bsd
++ ;;
++ hp300hpux)
++ basic_machine=m68k-hp
++ os=-hpux
++ ;;
++ hp3k9[0-9][0-9] | hp9[0-9][0-9])
++ basic_machine=hppa1.0-hp
++ ;;
++ hp9k2[0-9][0-9] | hp9k31[0-9])
++ basic_machine=m68000-hp
++ ;;
++ hp9k3[2-9][0-9])
++ basic_machine=m68k-hp
++ ;;
++ hp9k6[0-9][0-9] | hp6[0-9][0-9])
++ basic_machine=hppa1.0-hp
++ ;;
++ hp9k7[0-79][0-9] | hp7[0-79][0-9])
++ basic_machine=hppa1.1-hp
++ ;;
++ hp9k78[0-9] | hp78[0-9])
++ # FIXME: really hppa2.0-hp
++ basic_machine=hppa1.1-hp
++ ;;
++ hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
++ # FIXME: really hppa2.0-hp
++ basic_machine=hppa1.1-hp
++ ;;
++ hp9k8[0-9][13679] | hp8[0-9][13679])
++ basic_machine=hppa1.1-hp
++ ;;
++ hp9k8[0-9][0-9] | hp8[0-9][0-9])
++ basic_machine=hppa1.0-hp
++ ;;
++ hppa-next)
++ os=-nextstep3
++ ;;
++ hppaosf)
++ basic_machine=hppa1.1-hp
++ os=-osf
++ ;;
++ hppro)
++ basic_machine=hppa1.1-hp
++ os=-proelf
++ ;;
++ i370-ibm* | ibm*)
++ basic_machine=i370-ibm
++ ;;
++# I'm not sure what "Sysv32" means. Should this be sysv3.2?
++ i*86v32)
++ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
++ os=-sysv32
++ ;;
++ i*86v4*)
++ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
++ os=-sysv4
++ ;;
++ i*86v)
++ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
++ os=-sysv
++ ;;
++ i*86sol2)
++ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
++ os=-solaris2
++ ;;
++ i386mach)
++ basic_machine=i386-mach
++ os=-mach
++ ;;
++ i386-vsta | vsta)
++ basic_machine=i386-unknown
++ os=-vsta
++ ;;
++ iris | iris4d)
++ basic_machine=mips-sgi
++ case $os in
++ -irix*)
++ ;;
++ *)
++ os=-irix4
++ ;;
++ esac
++ ;;
++ isi68 | isi)
++ basic_machine=m68k-isi
++ os=-sysv
++ ;;
++ m68knommu)
++ basic_machine=m68k-unknown
++ os=-linux
++ ;;
++ m68knommu-*)
++ basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
++ os=-linux
++ ;;
++ m88k-omron*)
++ basic_machine=m88k-omron
++ ;;
++ magnum | m3230)
++ basic_machine=mips-mips
++ os=-sysv
++ ;;
++ merlin)
++ basic_machine=ns32k-utek
++ os=-sysv
++ ;;
++ mingw32)
++ basic_machine=i386-pc
++ os=-mingw32
++ ;;
++ mingw32ce)
++ basic_machine=arm-unknown
++ os=-mingw32ce
++ ;;
++ miniframe)
++ basic_machine=m68000-convergent
++ ;;
++ *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
++ basic_machine=m68k-atari
++ os=-mint
++ ;;
++ mips3*-*)
++ basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
++ ;;
++ mips3*)
++ basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
++ ;;
++ monitor)
++ basic_machine=m68k-rom68k
++ os=-coff
++ ;;
++ morphos)
++ basic_machine=powerpc-unknown
++ os=-morphos
++ ;;
++ msdos)
++ basic_machine=i386-pc
++ os=-msdos
++ ;;
++ ms1-*)
++ basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
++ ;;
++ mvs)
++ basic_machine=i370-ibm
++ os=-mvs
++ ;;
++ ncr3000)
++ basic_machine=i486-ncr
++ os=-sysv4
++ ;;
++ netbsd386)
++ basic_machine=i386-unknown
++ os=-netbsd
++ ;;
++ netwinder)
++ basic_machine=armv4l-rebel
++ os=-linux
++ ;;
++ news | news700 | news800 | news900)
++ basic_machine=m68k-sony
++ os=-newsos
++ ;;
++ news1000)
++ basic_machine=m68030-sony
++ os=-newsos
++ ;;
++ news-3600 | risc-news)
++ basic_machine=mips-sony
++ os=-newsos
++ ;;
++ necv70)
++ basic_machine=v70-nec
++ os=-sysv
++ ;;
++ next | m*-next )
++ basic_machine=m68k-next
++ case $os in
++ -nextstep* )
++ ;;
++ -ns2*)
++ os=-nextstep2
++ ;;
++ *)
++ os=-nextstep3
++ ;;
++ esac
++ ;;
++ nh3000)
++ basic_machine=m68k-harris
++ os=-cxux
++ ;;
++ nh[45]000)
++ basic_machine=m88k-harris
++ os=-cxux
++ ;;
++ nindy960)
++ basic_machine=i960-intel
++ os=-nindy
++ ;;
++ mon960)
++ basic_machine=i960-intel
++ os=-mon960
++ ;;
++ nonstopux)
++ basic_machine=mips-compaq
++ os=-nonstopux
++ ;;
++ np1)
++ basic_machine=np1-gould
++ ;;
++ nsr-tandem)
++ basic_machine=nsr-tandem
++ ;;
++ op50n-* | op60c-*)
++ basic_machine=hppa1.1-oki
++ os=-proelf
++ ;;
++ openrisc | openrisc-*)
++ basic_machine=or32-unknown
++ ;;
++ os400)
++ basic_machine=powerpc-ibm
++ os=-os400
++ ;;
++ OSE68000 | ose68000)
++ basic_machine=m68000-ericsson
++ os=-ose
++ ;;
++ os68k)
++ basic_machine=m68k-none
++ os=-os68k
++ ;;
++ pa-hitachi)
++ basic_machine=hppa1.1-hitachi
++ os=-hiuxwe2
++ ;;
++ paragon)
++ basic_machine=i860-intel
++ os=-osf
++ ;;
++ parisc)
++ basic_machine=hppa-unknown
++ os=-linux
++ ;;
++ parisc-*)
++ basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
++ os=-linux
++ ;;
++ pbd)
++ basic_machine=sparc-tti
++ ;;
++ pbb)
++ basic_machine=m68k-tti
++ ;;
++ pc532 | pc532-*)
++ basic_machine=ns32k-pc532
++ ;;
++ pc98)
++ basic_machine=i386-pc
++ ;;
++ pc98-*)
++ basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
++ ;;
++ pentium | p5 | k5 | k6 | nexgen | viac3)
++ basic_machine=i586-pc
++ ;;
++ pentiumpro | p6 | 6x86 | athlon | athlon_*)
++ basic_machine=i686-pc
++ ;;
++ pentiumii | pentium2 | pentiumiii | pentium3)
++ basic_machine=i686-pc
++ ;;
++ pentium4)
++ basic_machine=i786-pc
++ ;;
++ pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
++ basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
++ ;;
++ pentiumpro-* | p6-* | 6x86-* | athlon-*)
++ basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
++ ;;
++ pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
++ basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
++ ;;
++ pentium4-*)
++ basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
++ ;;
++ pn)
++ basic_machine=pn-gould
++ ;;
++ power) basic_machine=power-ibm
++ ;;
++ ppc) basic_machine=powerpc-unknown
++ ;;
++ ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
++ ;;
++ ppcle | powerpclittle | ppc-le | powerpc-little)
++ basic_machine=powerpcle-unknown
++ ;;
++ ppcle-* | powerpclittle-*)
++ basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
++ ;;
++ ppc64) basic_machine=powerpc64-unknown
++ ;;
++ ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
++ ;;
++ ppc64le | powerpc64little | ppc64-le | powerpc64-little)
++ basic_machine=powerpc64le-unknown
++ ;;
++ ppc64le-* | powerpc64little-*)
++ basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
++ ;;
++ ps2)
++ basic_machine=i386-ibm
++ ;;
++ pw32)
++ basic_machine=i586-unknown
++ os=-pw32
++ ;;
++ rdos)
++ basic_machine=i386-pc
++ os=-rdos
++ ;;
++ rom68k)
++ basic_machine=m68k-rom68k
++ os=-coff
++ ;;
++ rm[46]00)
++ basic_machine=mips-siemens
++ ;;
++ rtpc | rtpc-*)
++ basic_machine=romp-ibm
++ ;;
++ s390 | s390-*)
++ basic_machine=s390-ibm
++ ;;
++ s390x | s390x-*)
++ basic_machine=s390x-ibm
++ ;;
++ sa29200)
++ basic_machine=a29k-amd
++ os=-udi
++ ;;
++ sb1)
++ basic_machine=mipsisa64sb1-unknown
++ ;;
++ sb1el)
++ basic_machine=mipsisa64sb1el-unknown
++ ;;
++ sde)
++ basic_machine=mipsisa32-sde
++ os=-elf
++ ;;
++ sei)
++ basic_machine=mips-sei
++ os=-seiux
++ ;;
++ sequent)
++ basic_machine=i386-sequent
++ ;;
++ sh)
++ basic_machine=sh-hitachi
++ os=-hms
++ ;;
++ sh5el)
++ basic_machine=sh5le-unknown
++ ;;
++ sh64)
++ basic_machine=sh64-unknown
++ ;;
++ sparclite-wrs | simso-wrs)
++ basic_machine=sparclite-wrs
++ os=-vxworks
++ ;;
++ sps7)
++ basic_machine=m68k-bull
++ os=-sysv2
++ ;;
++ spur)
++ basic_machine=spur-unknown
++ ;;
++ st2000)
++ basic_machine=m68k-tandem
++ ;;
++ stratus)
++ basic_machine=i860-stratus
++ os=-sysv4
++ ;;
++ sun2)
++ basic_machine=m68000-sun
++ ;;
++ sun2os3)
++ basic_machine=m68000-sun
++ os=-sunos3
++ ;;
++ sun2os4)
++ basic_machine=m68000-sun
++ os=-sunos4
++ ;;
++ sun3os3)
++ basic_machine=m68k-sun
++ os=-sunos3
++ ;;
++ sun3os4)
++ basic_machine=m68k-sun
++ os=-sunos4
++ ;;
++ sun4os3)
++ basic_machine=sparc-sun
++ os=-sunos3
++ ;;
++ sun4os4)
++ basic_machine=sparc-sun
++ os=-sunos4
++ ;;
++ sun4sol2)
++ basic_machine=sparc-sun
++ os=-solaris2
++ ;;
++ sun3 | sun3-*)
++ basic_machine=m68k-sun
++ ;;
++ sun4)
++ basic_machine=sparc-sun
++ ;;
++ sun386 | sun386i | roadrunner)
++ basic_machine=i386-sun
++ ;;
++ sv1)
++ basic_machine=sv1-cray
++ os=-unicos
++ ;;
++ symmetry)
++ basic_machine=i386-sequent
++ os=-dynix
++ ;;
++ t3e)
++ basic_machine=alphaev5-cray
++ os=-unicos
++ ;;
++ t90)
++ basic_machine=t90-cray
++ os=-unicos
++ ;;
++ tic54x | c54x*)
++ basic_machine=tic54x-unknown
++ os=-coff
++ ;;
++ tic55x | c55x*)
++ basic_machine=tic55x-unknown
++ os=-coff
++ ;;
++ tic6x | c6x*)
++ basic_machine=tic6x-unknown
++ os=-coff
++ ;;
++ tile*)
++ basic_machine=tile-unknown
++ os=-linux-gnu
++ ;;
++ tx39)
++ basic_machine=mipstx39-unknown
++ ;;
++ tx39el)
++ basic_machine=mipstx39el-unknown
++ ;;
++ toad1)
++ basic_machine=pdp10-xkl
++ os=-tops20
++ ;;
++ tower | tower-32)
++ basic_machine=m68k-ncr
++ ;;
++ tpf)
++ basic_machine=s390x-ibm
++ os=-tpf
++ ;;
++ udi29k)
++ basic_machine=a29k-amd
++ os=-udi
++ ;;
++ ultra3)
++ basic_machine=a29k-nyu
++ os=-sym1
++ ;;
++ v810 | necv810)
++ basic_machine=v810-nec
++ os=-none
++ ;;
++ vaxv)
++ basic_machine=vax-dec
++ os=-sysv
++ ;;
++ vms)
++ basic_machine=vax-dec
++ os=-vms
++ ;;
++ vpp*|vx|vx-*)
++ basic_machine=f301-fujitsu
++ ;;
++ vxworks960)
++ basic_machine=i960-wrs
++ os=-vxworks
++ ;;
++ vxworks68)
++ basic_machine=m68k-wrs
++ os=-vxworks
++ ;;
++ vxworks29k)
++ basic_machine=a29k-wrs
++ os=-vxworks
++ ;;
++ w65*)
++ basic_machine=w65-wdc
++ os=-none
++ ;;
++ w89k-*)
++ basic_machine=hppa1.1-winbond
++ os=-proelf
++ ;;
++ xbox)
++ basic_machine=i686-pc
++ os=-mingw32
++ ;;
++ xps | xps100)
++ basic_machine=xps100-honeywell
++ ;;
++ ymp)
++ basic_machine=ymp-cray
++ os=-unicos
++ ;;
++ z8k-*-coff)
++ basic_machine=z8k-unknown
++ os=-sim
++ ;;
++ none)
++ basic_machine=none-none
++ os=-none
++ ;;
++
++# Here we handle the default manufacturer of certain CPU types. It is in
++# some cases the only manufacturer, in others, it is the most popular.
++ w89k)
++ basic_machine=hppa1.1-winbond
++ ;;
++ op50n)
++ basic_machine=hppa1.1-oki
++ ;;
++ op60c)
++ basic_machine=hppa1.1-oki
++ ;;
++ romp)
++ basic_machine=romp-ibm
++ ;;
++ mmix)
++ basic_machine=mmix-knuth
++ ;;
++ rs6000)
++ basic_machine=rs6000-ibm
++ ;;
++ vax)
++ basic_machine=vax-dec
++ ;;
++ pdp10)
++ # there are many clones, so DEC is not a safe bet
++ basic_machine=pdp10-unknown
++ ;;
++ pdp11)
++ basic_machine=pdp11-dec
++ ;;
++ we32k)
++ basic_machine=we32k-att
++ ;;
++ sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
++ basic_machine=sh-unknown
++ ;;
++ sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
++ basic_machine=sparc-sun
++ ;;
++ cydra)
++ basic_machine=cydra-cydrome
++ ;;
++ orion)
++ basic_machine=orion-highlevel
++ ;;
++ orion105)
++ basic_machine=clipper-highlevel
++ ;;
++ mac | mpw | mac-mpw)
++ basic_machine=m68k-apple
++ ;;
++ pmac | pmac-mpw)
++ basic_machine=powerpc-apple
++ ;;
++ *-unknown)
++ # Make sure to match an already-canonicalized machine name.
++ ;;
++ *)
++ echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
++ exit 1
++ ;;
++esac
++
++# Here we canonicalize certain aliases for manufacturers.
++case $basic_machine in
++ *-digital*)
++ basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
++ ;;
++ *-commodore*)
++ basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
++ ;;
++ *)
++ ;;
++esac
++
++# Decode manufacturer-specific aliases for certain operating systems.
++
++if [ x"$os" != x"" ]
++then
++case $os in
++ # First match some system type aliases
++ # that might get confused with valid system types.
++ # -solaris* is a basic system type, with this one exception.
++ -solaris1 | -solaris1.*)
++ os=`echo $os | sed -e 's|solaris1|sunos4|'`
++ ;;
++ -solaris)
++ os=-solaris2
++ ;;
++ -svr4*)
++ os=-sysv4
++ ;;
++ -unixware*)
++ os=-sysv4.2uw
++ ;;
++ -gnu/linux*)
++ os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
++ ;;
++ # First accept the basic system types.
++ # The portable systems comes first.
++ # Each alternative MUST END IN A *, to match a version number.
++ # -sysv* is not here because it comes later, after sysvr4.
++ -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
++ | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
++ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
++ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
++ | -aos* \
++ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
++ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
++ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
++ | -openbsd* | -solidbsd* \
++ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
++ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
++ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
++ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
++ | -chorusos* | -chorusrdb* \
++ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
++ | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
++ | -uxpv* | -beos* | -mpeix* | -udk* \
++ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
++ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
++ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
++ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
++ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
++ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
++ | -skyos* | -haiku* | -rdos* | -toppers* | -drops*)
++ # Remember, each alternative MUST END IN *, to match a version number.
++ ;;
++ -qnx*)
++ case $basic_machine in
++ x86-* | i*86-*)
++ ;;
++ *)
++ os=-nto$os
++ ;;
++ esac
++ ;;
++ -nto-qnx*)
++ ;;
++ -nto*)
++ os=`echo $os | sed -e 's|nto|nto-qnx|'`
++ ;;
++ -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
++ | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
++ | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
++ ;;
++ -mac*)
++ os=`echo $os | sed -e 's|mac|macos|'`
++ ;;
++ -linux-dietlibc)
++ os=-linux-dietlibc
++ ;;
++ -linux*)
++ os=`echo $os | sed -e 's|linux|linux-gnu|'`
++ ;;
++ -sunos5*)
++ os=`echo $os | sed -e 's|sunos5|solaris2|'`
++ ;;
++ -sunos6*)
++ os=`echo $os | sed -e 's|sunos6|solaris3|'`
++ ;;
++ -opened*)
++ os=-openedition
++ ;;
++ -os400*)
++ os=-os400
++ ;;
++ -wince*)
++ os=-wince
++ ;;
++ -osfrose*)
++ os=-osfrose
++ ;;
++ -osf*)
++ os=-osf
++ ;;
++ -utek*)
++ os=-bsd
++ ;;
++ -dynix*)
++ os=-bsd
++ ;;
++ -acis*)
++ os=-aos
++ ;;
++ -atheos*)
++ os=-atheos
++ ;;
++ -syllable*)
++ os=-syllable
++ ;;
++ -386bsd)
++ os=-bsd
++ ;;
++ -ctix* | -uts*)
++ os=-sysv
++ ;;
++ -nova*)
++ os=-rtmk-nova
++ ;;
++ -ns2 )
++ os=-nextstep2
++ ;;
++ -nsk*)
++ os=-nsk
++ ;;
++ # Preserve the version number of sinix5.
++ -sinix5.*)
++ os=`echo $os | sed -e 's|sinix|sysv|'`
++ ;;
++ -sinix*)
++ os=-sysv4
++ ;;
++ -tpf*)
++ os=-tpf
++ ;;
++ -triton*)
++ os=-sysv3
++ ;;
++ -oss*)
++ os=-sysv3
++ ;;
++ -svr4)
++ os=-sysv4
++ ;;
++ -svr3)
++ os=-sysv3
++ ;;
++ -sysvr4)
++ os=-sysv4
++ ;;
++ # This must come after -sysvr4.
++ -sysv*)
++ ;;
++ -ose*)
++ os=-ose
++ ;;
++ -es1800*)
++ os=-ose
++ ;;
++ -xenix)
++ os=-xenix
++ ;;
++ -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
++ os=-mint
++ ;;
++ -aros*)
++ os=-aros
++ ;;
++ -kaos*)
++ os=-kaos
++ ;;
++ -zvmoe)
++ os=-zvmoe
++ ;;
++ -none)
++ ;;
++ *)
++ # Get rid of the `-' at the beginning of $os.
++ os=`echo $os | sed 's/[^-]*-//'`
++ echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
++ exit 1
++ ;;
++esac
++else
++
++# Here we handle the default operating systems that come with various machines.
++# The value should be what the vendor currently ships out the door with their
++# machine or put another way, the most popular os provided with the machine.
++
++# Note that if you're going to try to match "-MANUFACTURER" here (say,
++# "-sun"), then you have to tell the case statement up towards the top
++# that MANUFACTURER isn't an operating system. Otherwise, code above
++# will signal an error saying that MANUFACTURER isn't an operating
++# system, and we'll never get to this point.
++
++case $basic_machine in
++ score-*)
++ os=-elf
++ ;;
++ spu-*)
++ os=-elf
++ ;;
++ *-acorn)
++ os=-riscix1.2
++ ;;
++ arm*-rebel)
++ os=-linux
++ ;;
++ arm*-semi)
++ os=-aout
++ ;;
++ c4x-* | tic4x-*)
++ os=-coff
++ ;;
++ # This must come before the *-dec entry.
++ pdp10-*)
++ os=-tops20
++ ;;
++ pdp11-*)
++ os=-none
++ ;;
++ *-dec | vax-*)
++ os=-ultrix4.2
++ ;;
++ m68*-apollo)
++ os=-domain
++ ;;
++ i386-sun)
++ os=-sunos4.0.2
++ ;;
++ m68000-sun)
++ os=-sunos3
++ # This also exists in the configure program, but was not the
++ # default.
++ # os=-sunos4
++ ;;
++ m68*-cisco)
++ os=-aout
++ ;;
++ mep-*)
++ os=-elf
++ ;;
++ mips*-cisco)
++ os=-elf
++ ;;
++ mips*-*)
++ os=-elf
++ ;;
++ or32-*)
++ os=-coff
++ ;;
++ *-tti) # must be before sparc entry or we get the wrong os.
++ os=-sysv3
++ ;;
++ sparc-* | *-sun)
++ os=-sunos4.1.1
++ ;;
++ *-be)
++ os=-beos
++ ;;
++ *-haiku)
++ os=-haiku
++ ;;
++ *-ibm)
++ os=-aix
++ ;;
++ *-knuth)
++ os=-mmixware
++ ;;
++ *-wec)
++ os=-proelf
++ ;;
++ *-winbond)
++ os=-proelf
++ ;;
++ *-oki)
++ os=-proelf
++ ;;
++ *-hp)
++ os=-hpux
++ ;;
++ *-hitachi)
++ os=-hiux
++ ;;
++ i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
++ os=-sysv
++ ;;
++ *-cbm)
++ os=-amigaos
++ ;;
++ *-dg)
++ os=-dgux
++ ;;
++ *-dolphin)
++ os=-sysv3
++ ;;
++ m68k-ccur)
++ os=-rtu
++ ;;
++ m88k-omron*)
++ os=-luna
++ ;;
++ *-next )
++ os=-nextstep
++ ;;
++ *-sequent)
++ os=-ptx
++ ;;
++ *-crds)
++ os=-unos
++ ;;
++ *-ns)
++ os=-genix
++ ;;
++ i370-*)
++ os=-mvs
++ ;;
++ *-next)
++ os=-nextstep3
++ ;;
++ *-gould)
++ os=-sysv
++ ;;
++ *-highlevel)
++ os=-bsd
++ ;;
++ *-encore)
++ os=-bsd
++ ;;
++ *-sgi)
++ os=-irix
++ ;;
++ *-siemens)
++ os=-sysv4
++ ;;
++ *-masscomp)
++ os=-rtu
++ ;;
++ f30[01]-fujitsu | f700-fujitsu)
++ os=-uxpv
++ ;;
++ *-rom68k)
++ os=-coff
++ ;;
++ *-*bug)
++ os=-coff
++ ;;
++ *-apple)
++ os=-macos
++ ;;
++ *-atari*)
++ os=-mint
++ ;;
++ *)
++ os=-none
++ ;;
++esac
++fi
++
++# Here we handle the case where we know the os, and the CPU type, but not the
++# manufacturer. We pick the logical manufacturer.
++vendor=unknown
++case $basic_machine in
++ *-unknown)
++ case $os in
++ -riscix*)
++ vendor=acorn
++ ;;
++ -sunos*)
++ vendor=sun
++ ;;
++ -aix*)
++ vendor=ibm
++ ;;
++ -beos*)
++ vendor=be
++ ;;
++ -hpux*)
++ vendor=hp
++ ;;
++ -mpeix*)
++ vendor=hp
++ ;;
++ -hiux*)
++ vendor=hitachi
++ ;;
++ -unos*)
++ vendor=crds
++ ;;
++ -dgux*)
++ vendor=dg
++ ;;
++ -luna*)
++ vendor=omron
++ ;;
++ -genix*)
++ vendor=ns
++ ;;
++ -mvs* | -opened*)
++ vendor=ibm
++ ;;
++ -os400*)
++ vendor=ibm
++ ;;
++ -ptx*)
++ vendor=sequent
++ ;;
++ -tpf*)
++ vendor=ibm
++ ;;
++ -vxsim* | -vxworks* | -windiss*)
++ vendor=wrs
++ ;;
++ -aux*)
++ vendor=apple
++ ;;
++ -hms*)
++ vendor=hitachi
++ ;;
++ -mpw* | -macos*)
++ vendor=apple
++ ;;
++ -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
++ vendor=atari
++ ;;
++ -vos*)
++ vendor=stratus
++ ;;
++ esac
++ basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
++ ;;
++esac
++
++echo $basic_machine$os
++exit
++
++# Local variables:
++# eval: (add-hook 'write-file-hooks 'time-stamp)
++# time-stamp-start: "timestamp='"
++# time-stamp-format: "%:y-%02m-%02d"
++# time-stamp-end: "'"
++# End:
+--- ghostscript-8.71/install-sh 1970-01-01 01:00:00.000000000 +0100
++++ ghostscript-8.71/install-sh 2010-02-26 16:33:59.000000000 +0100
+@@ -0,0 +1,519 @@
++#!/bin/sh
++# install - install a program, script, or datafile
++
++scriptversion=2006-12-25.00
++
++# This originates from X11R5 (mit/util/scripts/install.sh), which was
++# later released in X11R6 (xc/config/util/install.sh) with the
++# following copyright and license.
++#
++# Copyright (C) 1994 X Consortium
++#
++# Permission is hereby granted, free of charge, to any person obtaining a copy
++# of this software and associated documentation files (the "Software"), to
++# deal in the Software without restriction, including without limitation the
++# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
++# sell copies of the Software, and to permit persons to whom the Software is
++# furnished to do so, subject to the following conditions:
++#
++# The above copyright notice and this permission notice shall be included in
++# all copies or substantial portions of the Software.
++#
++# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
++# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
++# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
++# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
++# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++#
++# Except as contained in this notice, the name of the X Consortium shall not
++# be used in advertising or otherwise to promote the sale, use or other deal-
++# ings in this Software without prior written authorization from the X Consor-
++# tium.
++#
++#
++# FSF changes to this file are in the public domain.
++#
++# Calling this script install-sh is preferred over install.sh, to prevent
++# `make' implicit rules from creating a file called install from it
++# when there is no Makefile.
++#
++# This script is compatible with the BSD install script, but was written
++# from scratch.
++
++nl='
++'
++IFS=" "" $nl"
++
++# set DOITPROG to echo to test this script
++
++# Don't use :- since 4.3BSD and earlier shells don't like it.
++doit=${DOITPROG-}
++if test -z "$doit"; then
++ doit_exec=exec
++else
++ doit_exec=$doit
++fi
++
++# Put in absolute file names if you don't have them in your path;
++# or use environment vars.
++
++chgrpprog=${CHGRPPROG-chgrp}
++chmodprog=${CHMODPROG-chmod}
++chownprog=${CHOWNPROG-chown}
++cmpprog=${CMPPROG-cmp}
++cpprog=${CPPROG-cp}
++mkdirprog=${MKDIRPROG-mkdir}
++mvprog=${MVPROG-mv}
++rmprog=${RMPROG-rm}
++stripprog=${STRIPPROG-strip}
++
++posix_glob='?'
++initialize_posix_glob='
++ test "$posix_glob" != "?" || {
++ if (set -f) 2>/dev/null; then
++ posix_glob=
++ else
++ posix_glob=:
++ fi
++ }
++'
++
++posix_mkdir=
++
++# Desired mode of installed file.
++mode=0755
++
++chgrpcmd=
++chmodcmd=$chmodprog
++chowncmd=
++mvcmd=$mvprog
++rmcmd="$rmprog -f"
++stripcmd=
++
++src=
++dst=
++dir_arg=
++dst_arg=
++
++copy_on_change=false
++no_target_directory=
++
++usage="\
++Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
++ or: $0 [OPTION]... SRCFILES... DIRECTORY
++ or: $0 [OPTION]... -t DIRECTORY SRCFILES...
++ or: $0 [OPTION]... -d DIRECTORIES...
++
++In the 1st form, copy SRCFILE to DSTFILE.
++In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
++In the 4th, create DIRECTORIES.
++
++Options:
++ --help display this help and exit.
++ --version display version info and exit.
++
++ -c (ignored)
++ -C install only if different (preserve the last data modification time)
++ -d create directories instead of installing files.
++ -g GROUP $chgrpprog installed files to GROUP.
++ -m MODE $chmodprog installed files to MODE.
++ -o USER $chownprog installed files to USER.
++ -s $stripprog installed files.
++ -t DIRECTORY install into DIRECTORY.
++ -T report an error if DSTFILE is a directory.
++
++Environment variables override the default commands:
++ CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
++ RMPROG STRIPPROG
++"
++
++while test $# -ne 0; do
++ case $1 in
++ -c) ;;
++
++ -C) copy_on_change=true;;
++
++ -d) dir_arg=true;;
++
++ -g) chgrpcmd="$chgrpprog $2"
++ shift;;
++
++ --help) echo "$usage"; exit $?;;
++
++ -m) mode=$2
++ case $mode in
++ *' '* | *' '* | *'
++'* | *'*'* | *'?'* | *'['*)
++ echo "$0: invalid mode: $mode" >&2
++ exit 1;;
++ esac
++ shift;;
++
++ -o) chowncmd="$chownprog $2"
++ shift;;
++
++ -s) stripcmd=$stripprog;;
++
++ -t) dst_arg=$2
++ shift;;
++
++ -T) no_target_directory=true;;
++
++ --version) echo "$0 $scriptversion"; exit $?;;
++
++ --) shift
++ break;;
++
++ -*) echo "$0: invalid option: $1" >&2
++ exit 1;;
++
++ *) break;;
++ esac
++ shift
++done
++
++if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
++ # When -d is used, all remaining arguments are directories to create.
++ # When -t is used, the destination is already specified.
++ # Otherwise, the last argument is the destination. Remove it from $
++ for arg
++ do
++ if test -n "$dst_arg"; then
++ # $@ is not empty: it contains at least $arg.
++ set fnord "$@" "$dst_arg"
++ shift # fnord
++ fi
++ shift # arg
++ dst_arg=$arg
++ done
++fi
++
++if test $# -eq 0; then
++ if test -z "$dir_arg"; then
++ echo "$0: no input file specified." >&2
++ exit 1
++ fi
++ # It's OK to call `install-sh -d' without argument.
++ # This can happen when creating conditional directories.
++ exit 0
++fi
++
++if test -z "$dir_arg"; then
++ trap '(exit $?); exit' 1 2 13 15
++
++ # Set umask so as not to create temps with too-generous modes.
++ # However, 'strip' requires both read and write access to temps.
++ case $mode in
++ # Optimize common cases.
++ *644) cp_umask=133;;
++ *755) cp_umask=22;;
++
++ *[0-7])
++ if test -z "$stripcmd"; then
++ u_plus_rw=
++ else
++ u_plus_rw='% 200'
++ fi
++ cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
++ *)
++ if test -z "$stripcmd"; then
++ u_plus_rw=
++ else
++ u_plus_rw=,u+rw
++ fi
++ cp_umask=$mode$u_plus_rw;;
++ esac
++fi
++
++for src
++do
++ # Protect names starting with `-'.
++ case $src in
++ -*) src=./$src;;
++ esac
++
++ if test -n "$dir_arg"; then
++ dst=$src
++ dstdir=$dst
++ test -d "$dstdir"
++ dstdir_status=$?
++ else
++
++ # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
++ # might cause directories to be created, which would be especially bad
++ # if $src (and thus $dsttmp) contains '*'.
++ if test ! -f "$src" && test ! -d "$src"; then
++ echo "$0: $src does not exist." >&2
++ exit 1
++ fi
++
++ if test -z "$dst_arg"; then
++ echo "$0: no destination specified." >&2
++ exit 1
++ fi
++
++ dst=$dst_arg
++ # Protect names starting with `-'.
++ case $dst in
++ -*) dst=./$dst;;
++ esac
++
++ # If destination is a directory, append the input filename; won't work
++ # if double slashes aren't ignored.
++ if test -d "$dst"; then
++ if test -n "$no_target_directory"; then
++ echo "$0: $dst_arg: Is a directory" >&2
++ exit 1
++ fi
++ dstdir=$dst
++ dst=$dstdir/`basename "$src"`
++ dstdir_status=0
++ else
++ # Prefer dirname, but fall back on a substitute if dirname fails.
++ dstdir=`
++ (dirname "$dst") 2>/dev/null ||
++ expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
++ X"$dst" : 'X\(//\)[^/]' \| \
++ X"$dst" : 'X\(//\)$' \| \
++ X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
++ echo X"$dst" |
++ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
++ s//\1/
++ q
++ }
++ /^X\(\/\/\)[^/].*/{
++ s//\1/
++ q
++ }
++ /^X\(\/\/\)$/{
++ s//\1/
++ q
++ }
++ /^X\(\/\).*/{
++ s//\1/
++ q
++ }
++ s/.*/./; q'
++ `
++
++ test -d "$dstdir"
++ dstdir_status=$?
++ fi
++ fi
++
++ obsolete_mkdir_used=false
++
++ if test $dstdir_status != 0; then
++ case $posix_mkdir in
++ '')
++ # Create intermediate dirs using mode 755 as modified by the umask.
++ # This is like FreeBSD 'install' as of 1997-10-28.
++ umask=`umask`
++ case $stripcmd.$umask in
++ # Optimize common cases.
++ *[2367][2367]) mkdir_umask=$umask;;
++ .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
++
++ *[0-7])
++ mkdir_umask=`expr $umask + 22 \
++ - $umask % 100 % 40 + $umask % 20 \
++ - $umask % 10 % 4 + $umask % 2
++ `;;
++ *) mkdir_umask=$umask,go-w;;
++ esac
++
++ # With -d, create the new directory with the user-specified mode.
++ # Otherwise, rely on $mkdir_umask.
++ if test -n "$dir_arg"; then
++ mkdir_mode=-m$mode
++ else
++ mkdir_mode=
++ fi
++
++ posix_mkdir=false
++ case $umask in
++ *[123567][0-7][0-7])
++ # POSIX mkdir -p sets u+wx bits regardless of umask, which
++ # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
++ ;;
++ *)
++ tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
++ trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
++
++ if (umask $mkdir_umask &&
++ exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
++ then
++ if test -z "$dir_arg" || {
++ # Check for POSIX incompatibilities with -m.
++ # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
++ # other-writeable bit of parent directory when it shouldn't.
++ # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
++ ls_ld_tmpdir=`ls -ld "$tmpdir"`
++ case $ls_ld_tmpdir in
++ d????-?r-*) different_mode=700;;
++ d????-?--*) different_mode=755;;
++ *) false;;
++ esac &&
++ $mkdirprog -m$different_mode -p -- "$tmpdir" && {
++ ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
++ test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
++ }
++ }
++ then posix_mkdir=:
++ fi
++ rmdir "$tmpdir/d" "$tmpdir"
++ else
++ # Remove any dirs left behind by ancient mkdir implementations.
++ rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
++ fi
++ trap '' 0;;
++ esac;;
++ esac
++
++ if
++ $posix_mkdir && (
++ umask $mkdir_umask &&
++ $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
++ )
++ then :
++ else
++
++ # The umask is ridiculous, or mkdir does not conform to POSIX,
++ # or it failed possibly due to a race condition. Create the
++ # directory the slow way, step by step, checking for races as we go.
++
++ case $dstdir in
++ /*) prefix='/';;
++ -*) prefix='./';;
++ *) prefix='';;
++ esac
++
++ eval "$initialize_posix_glob"
++
++ oIFS=$IFS
++ IFS=/
++ $posix_glob set -f
++ set fnord $dstdir
++ shift
++ $posix_glob set +f
++ IFS=$oIFS
++
++ prefixes=
++
++ for d
++ do
++ test -z "$d" && continue
++
++ prefix=$prefix$d
++ if test -d "$prefix"; then
++ prefixes=
++ else
++ if $posix_mkdir; then
++ (umask=$mkdir_umask &&
++ $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
++ # Don't fail if two instances are running concurrently.
++ test -d "$prefix" || exit 1
++ else
++ case $prefix in
++ *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
++ *) qprefix=$prefix;;
++ esac
++ prefixes="$prefixes '$qprefix'"
++ fi
++ fi
++ prefix=$prefix/
++ done
++
++ if test -n "$prefixes"; then
++ # Don't fail if two instances are running concurrently.
++ (umask $mkdir_umask &&
++ eval "\$doit_exec \$mkdirprog $prefixes") ||
++ test -d "$dstdir" || exit 1
++ obsolete_mkdir_used=true
++ fi
++ fi
++ fi
++
++ if test -n "$dir_arg"; then
++ { test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
++ { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
++ { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
++ test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
++ else
++
++ # Make a couple of temp file names in the proper directory.
++ dsttmp=$dstdir/_inst.$$_
++ rmtmp=$dstdir/_rm.$$_
++
++ # Trap to clean up those temp files at exit.
++ trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
++
++ # Copy the file name to the temp name.
++ (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
++
++ # and set any options; do chmod last to preserve setuid bits.
++ #
++ # If any of these fail, we abort the whole thing. If we want to
++ # ignore errors from any of these, just make sure not to ignore
++ # errors from the above "$doit $cpprog $src $dsttmp" command.
++ #
++ { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
++ { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
++ { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
++ { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
++
++ # If -C, don't bother to copy if it wouldn't change the file.
++ if $copy_on_change &&
++ old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
++ new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
++
++ eval "$initialize_posix_glob" &&
++ $posix_glob set -f &&
++ set X $old && old=:$2:$4:$5:$6 &&
++ set X $new && new=:$2:$4:$5:$6 &&
++ $posix_glob set +f &&
++
++ test "$old" = "$new" &&
++ $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
++ then
++ rm -f "$dsttmp"
++ else
++ # Rename the file to the real destination.
++ $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
++
++ # The rename failed, perhaps because mv can't rename something else
++ # to itself, or perhaps because mv is so ancient that it does not
++ # support -f.
++ {
++ # Now remove or move aside any old file at destination location.
++ # We try this two ways since rm can't unlink itself on some
++ # systems and the destination file might be busy for other
++ # reasons. In this case, the final cleanup might fail but the new
++ # file should still install successfully.
++ {
++ test ! -f "$dst" ||
++ $doit $rmcmd -f "$dst" 2>/dev/null ||
++ { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
++ { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
++ } ||
++ { echo "$0: cannot unlink or rename $dst" >&2
++ (exit 1); exit 1
++ }
++ } &&
++
++ # Now rename the file to the real destination.
++ $doit $mvcmd "$dsttmp" "$dst"
++ }
++ fi || exit 1
++
++ trap '' 0
++ fi
++done
++
++# Local variables:
++# eval: (add-hook 'write-file-hooks 'time-stamp)
++# time-stamp-start: "scriptversion="
++# time-stamp-format: "%:y-%02m-%02d.%02H"
++# time-stamp-end: "$"
++# End:
+--- ghostscript-8.71/libgs.def 1970-01-01 01:00:00.000000000 +0100
++++ ghostscript-8.71/libgs.def 2010-02-26 16:33:59.000000000 +0100
+@@ -0,0 +1,16 @@
++EXPORTS
++gsapi_delete_instance
++gsapi_exit
++gsapi_init_with_args
++gsapi_new_instance
++gsapi_revision
++gsapi_run_file
++gsapi_run_string
++gsapi_run_string_begin
++gsapi_run_string_continue
++gsapi_run_string_end
++gsapi_run_string_with_length
++gsapi_set_display_callback
++gsapi_set_poll
++gsapi_set_stdio
++gsapi_set_visual_tracer
diff --git a/build/windows/jhbuild/patches/ghostscript-change-install-paths.patch
b/build/windows/jhbuild/patches/ghostscript-change-install-paths.patch
new file mode 100644
index 0000000..5803f5e
--- /dev/null
+++ b/build/windows/jhbuild/patches/ghostscript-change-install-paths.patch
@@ -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
diff --git a/build/windows/jhbuild/patches/gtk2-uuid.patch b/build/windows/jhbuild/patches/gtk2-uuid.patch
new file mode 100644
index 0000000..4e73be6
--- /dev/null
+++ b/build/windows/jhbuild/patches/gtk2-uuid.patch
@@ -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
\ No newline at end of file
diff --git a/build/windows/jhbuild/patches/icu-fix-library-names.patch
b/build/windows/jhbuild/patches/icu-fix-library-names.patch
new file mode 100644
index 0000000..ecd9f6d
--- /dev/null
+++ b/build/windows/jhbuild/patches/icu-fix-library-names.patch
@@ -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.
diff --git a/build/windows/jhbuild/patches/icu-unexport-target.patch
b/build/windows/jhbuild/patches/icu-unexport-target.patch
new file mode 100644
index 0000000..a64ae06
--- /dev/null
+++ b/build/windows/jhbuild/patches/icu-unexport-target.patch
@@ -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
diff --git a/build/windows/jhbuild/patches/jasper-1.900.1-mingw32.patch
b/build/windows/jhbuild/patches/jasper-1.900.1-mingw32.patch
new file mode 100644
index 0000000..02180ea
--- /dev/null
+++ b/build/windows/jhbuild/patches/jasper-1.900.1-mingw32.patch
@@ -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
+
diff --git a/build/windows/jhbuild/patches/jasper-1.900.1-sleep.patch
b/build/windows/jhbuild/patches/jasper-1.900.1-sleep.patch
new file mode 100644
index 0000000..b647e48
--- /dev/null
+++ b/build/windows/jhbuild/patches/jasper-1.900.1-sleep.patch
@@ -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);
diff --git a/build/windows/jhbuild/patches/libjpeg-turbo-boolean.patch
b/build/windows/jhbuild/patches/libjpeg-turbo-boolean.patch
new file mode 100644
index 0000000..3675938
--- /dev/null
+++ b/build/windows/jhbuild/patches/libjpeg-turbo-boolean.patch
@@ -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 */
diff --git a/build/windows/jhbuild/patches/libjpeg-turbo-int32.patch
b/build/windows/jhbuild/patches/libjpeg-turbo-int32.patch
new file mode 100644
index 0000000..56231a8
--- /dev/null
+++ b/build/windows/jhbuild/patches/libjpeg-turbo-int32.patch
@@ -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
diff --git a/build/windows/jhbuild/patches/libmng-1.0.10-mingw.patch
b/build/windows/jhbuild/patches/libmng-1.0.10-mingw.patch
new file mode 100644
index 0000000..e790df7
--- /dev/null
+++ b/build/windows/jhbuild/patches/libmng-1.0.10-mingw.patch
@@ -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.
diff --git a/build/windows/jhbuild/patches/libmng-1.0.9-dont-leak-zlib-streams.patch
b/build/windows/jhbuild/patches/libmng-1.0.9-dont-leak-zlib-streams.patch
new file mode 100644
index 0000000..9ac03d6
--- /dev/null
+++ b/build/windows/jhbuild/patches/libmng-1.0.9-dont-leak-zlib-streams.patch
@@ -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);
+
+
diff --git a/build/windows/jhbuild/patches/libmng-change-locations.patch
b/build/windows/jhbuild/patches/libmng-change-locations.patch
new file mode 100644
index 0000000..2ea23b8
--- /dev/null
+++ b/build/windows/jhbuild/patches/libmng-change-locations.patch
@@ -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
+
diff --git a/build/windows/jhbuild/patches/libsoup-request-file-string-h.patch
b/build/windows/jhbuild/patches/libsoup-request-file-string-h.patch
new file mode 100644
index 0000000..58684a8
--- /dev/null
+++ b/build/windows/jhbuild/patches/libsoup-request-file-string-h.patch
@@ -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
diff --git a/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.3-nodocs.patch
b/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.3-nodocs.patch
new file mode 100644
index 0000000..cc48fcb
--- /dev/null
+++ b/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.3-nodocs.patch
@@ -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 = \
diff --git a/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.3-relocatablefonts.patch
b/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.3-relocatablefonts.patch
new file mode 100644
index 0000000..a5708b1
--- /dev/null
+++ b/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.3-relocatablefonts.patch
@@ -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
+
diff --git a/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.4-deps.patch
b/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.4-deps.patch
new file mode 100644
index 0000000..ee38ecb
--- /dev/null
+++ b/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.4-deps.patch
@@ -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
diff --git a/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.4-fallbackfont.patch
b/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.4-fallbackfont.patch
new file mode 100644
index 0000000..8338313
--- /dev/null
+++ b/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.4-fallbackfont.patch
@@ -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
+ */
diff --git a/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.4-intoverflow.patch
b/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.4-intoverflow.patch
new file mode 100644
index 0000000..507fe66
--- /dev/null
+++ b/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.4-intoverflow.patch
@@ -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...");
diff --git a/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.4-libpng-1.5.patch
b/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.4-libpng-1.5.patch
new file mode 100644
index 0000000..ab04e41
--- /dev/null
+++ b/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.4-libpng-1.5.patch
@@ -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);
diff --git a/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.4-multiarchdevel.patch
b/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.4-multiarchdevel.patch
new file mode 100644
index 0000000..3afcc94
--- /dev/null
+++ b/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.4-multiarchdevel.patch
@@ -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 \
diff --git a/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.4-reducesymbols.patch
b/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.4-reducesymbols.patch
new file mode 100644
index 0000000..45d82b3
--- /dev/null
+++ b/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.4-reducesymbols.patch
@@ -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
diff --git a/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.4-useafterfree.patch
b/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.4-useafterfree.patch
new file mode 100644
index 0000000..328c541
--- /dev/null
+++ b/build/windows/jhbuild/patches/libwmf/libwmf-0.2.8.4-useafterfree.patch
@@ -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++;
diff --git a/build/windows/jhbuild/patches/libxslt-1.1.26-w64.patch
b/build/windows/jhbuild/patches/libxslt-1.1.26-w64.patch
new file mode 100644
index 0000000..c67474c
--- /dev/null
+++ b/build/windows/jhbuild/patches/libxslt-1.1.26-w64.patch
@@ -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
diff --git a/build/windows/jhbuild/patches/pthreads-add-install-mk.patch
b/build/windows/jhbuild/patches/pthreads-add-install-mk.patch
new file mode 100644
index 0000000..56b6b23
--- /dev/null
+++ b/build/windows/jhbuild/patches/pthreads-add-install-mk.patch
@@ -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
diff --git a/build/windows/jhbuild/patches/webkit-2.0-disable-tests.patch
b/build/windows/jhbuild/patches/webkit-2.0-disable-tests.patch
new file mode 100644
index 0000000..2da38da
--- /dev/null
+++ b/build/windows/jhbuild/patches/webkit-2.0-disable-tests.patch
@@ -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 \
diff --git a/build/windows/jhbuild/patches/webkit-add-autogen.patch
b/build/windows/jhbuild/patches/webkit-add-autogen.patch
new file mode 100644
index 0000000..c397008
--- /dev/null
+++ b/build/windows/jhbuild/patches/webkit-add-autogen.patch
@@ -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
++
diff --git a/build/windows/jhbuild/split-build b/build/windows/jhbuild/split-build
new file mode 100755
index 0000000..2eee4af
--- /dev/null
+++ b/build/windows/jhbuild/split-build
@@ -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
diff --git a/build/windows/jhbuild/targetisunchanged b/build/windows/jhbuild/targetisunchanged
new file mode 100755
index 0000000..d9a0a72
--- /dev/null
+++ b/build/windows/jhbuild/targetisunchanged
@@ -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))
diff --git a/build/windows/jhbuild/webkitgtk.moduleset b/build/windows/jhbuild/webkitgtk.moduleset
new file mode 100644
index 0000000..6e46179
--- /dev/null
+++ b/build/windows/jhbuild/webkitgtk.moduleset
@@ -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>
diff --git a/build/windows/jhbuild/win32.cache b/build/windows/jhbuild/win32.cache
new file mode 100644
index 0000000..0bf5a06
--- /dev/null
+++ b/build/windows/jhbuild/win32.cache
@@ -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
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]