Add Win32 build scripts into sources

See win32/readme.txt for more information.
This commit is contained in:
Milan Crha 2014-08-25 11:36:19 +02:00
parent 9a86044009
commit 396e5e82c1
38 changed files with 5603 additions and 0 deletions

2
win32/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
/src
/downloads

736
win32/Makefile Normal file
View File

@ -0,0 +1,736 @@
all: help
help:
@echo Creates evolution from sources
@echo usual call order is:
@echo " - dependencies - builds dependencies, including evolution-data-server"
@echo " - evolution - builds evolution itself"
@echo " - addons - builds 3rd-party connectors, like ews and rss"
env:
@if test "$(BUILD_ROOT_DEPS)" = "" -o "$(BUILD_ROOT_EVO)" = "" ; then \
echo "Run 'source setup-env' first" >&2; \
exit 1; \
fi
@if test ! -d src ; then \
mkdir src; \
fi
@if test ! -d downloads ; then \
mkdir downloads; \
fi
# use `make V=1` to get verbose build
VERBOSE="$(V)"
DISABLE_GTK_DOC=--disable-gtk-doc --disable-gtk-doc-html --disable-gtk-doc-pdf
# Shortcuts
deps: dependencies
eds: evolution-data-server
evo: evolution
ews: evolution-ews
rss: evolution-rss
dependencies: core-tools zlib fake-gtk-doc gnome-common dbus glib gtk librsvg2 icon-themes gsettings-desktop-schemas shared-mime-info libsoup nss liboauth libgdata libgweather openldap libical iso-codes enchant gtkspell gcr webkitgtk gtkhtml
addons: evolution-ews evolution-rss
evolution-data-server: dependencies evolution-data-server$(EVO_BUILD_SUFFIX)
evolution: evolution$(EVO_BUILD_SUFFIX)
evolution-ews: evolution-ews$(EVO_BUILD_SUFFIX)
evolution-rss: evolution-rss$(EVO_BUILD_SUFFIX)
# !!! TODO !!! FixMe !!! TODO !!!
evolution-data-server-stable: evolution-data-server-master
evolution-stable: evolution-master
evolution-ews-stable: evolution-ews-master
evolution-rss-stable: evolution-rss-master
evolution-data-server-master: env dependencies $(BUILD_ROOT_EVO)/lib/pkgconfig/libedataserver-1.2.pc
$(BUILD_ROOT_EVO)/lib/pkgconfig/libedataserver-1.2.pc:
@if test ! -d "../../evolution-data-server" ; then \
cd ../.. && \
git clone git://git.gnome.org/evolution-data-server; \
fi
@if test ! -f "../../evolution-data-server/gtk-doc.make" ; then \
cp "patches/gtk-doc.make" "../../evolution-data-server/"; \
fi
@./build acmmi "$(BUILD_ROOT_EVO)" ../../../evolution-data-server "" "--enable-weather --disable-goa --disable-uoa --disable-examples --without-libdb --with-openldap=$(BUILD_ROOT_DEPS) $(DISABLE_GTK_DOC)" $(VERBOSE)
evolution-master: env evolution-data-server-master $(BUILD_ROOT_EVO)/lib/pkgconfig/evolution-shell-3.0.pc
$(BUILD_ROOT_EVO)/lib/pkgconfig/evolution-shell-3.0.pc:
@if test ! -d "../../evolution" ; then \
cd ../.. && \
git clone git://git.gnome.org/evolution; \
fi
@if test ! -f "../../evolution/gtk-doc.make" ; then \
cp "patches/gtk-doc.make" "../../evolution/"; \
fi
@./build acmmi "$(BUILD_ROOT_EVO)" ../../../evolution "" "--enable-plugins=all --enable-weather --disable-canberra --disable-contact-maps --disable-goa --disable-libcryptui --disable-bogofilter --disable-spamassassin --disable-text-highlight --disable-pst-import --disable-gnome-desktop --without-clutter --without-help $(DISABLE_GTK_DOC)" $(VERBOSE)
evolution-ews-master: env evolution-master $(BUILD_ROOT_EVO)/lib/evolution-data-server/libeews-1.2.dll.a
$(BUILD_ROOT_EVO)/lib/evolution-data-server/libeews-1.2.dll.a:
@if test ! -d "../../evolution-ews" ; then \
cd ../.. && \
git clone git://git.gnome.org/evolution-ews; \
fi
@if test ! -f "../../evolution-ews/gtk-doc.make" ; then \
cp "patches/gtk-doc.make" "../../evolution-ews/"; \
fi
@./build acmmi "$(BUILD_ROOT_EVO)" ../../../evolution-ews "" "--with-internal-lzx" $(VERBOSE)
@mv $(BUILD_ROOT_EVO)/lib/bin/* $(BUILD_ROOT_EVO)/bin/
evolution-rss-master: env evolution-master $(BUILD_ROOT_EVO)/share/glib-2.0/schemas/org.gnome.evolution.plugin.evolution-rss.gschema.xml
$(BUILD_ROOT_EVO)/share/glib-2.0/schemas/org.gnome.evolution.plugin.evolution-rss.gschema.xml:
@if test ! -d "../../evolution-rss" ; then \
cd ../.. && \
git clone git://git.gnome.org/evolution-rss; \
fi
@if test ! -f "../../evolution-rss/gtk-doc.make" ; then \
cp "patches/gtk-doc.make" "../../evolution-rss/"; \
fi
@./build acmmi "$(BUILD_ROOT_EVO)" ../../../evolution-rss "rss.patch" "" $(VERBOSE)
gcr: env gtk dbus $(BUILD_ROOT_DEPS)/lib/pkgconfig/gcr-3.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/gcr-3.pc:
@./get-src https://download.gnome.org/sources/gcr/3.10 gcr-3.10.1.tar.xz
@./build acmmi "$(BUILD_ROOT_DEPS)" gcr-3.10.1 "gcr.patch" "$(DISABLE_GTK_DOC)" $(VERBOSE)
shared-mime-info: env $(BUILD_ROOT_DEPS)/share/pkgconfig/shared-mime-info.pc
$(BUILD_ROOT_DEPS)/share/pkgconfig/shared-mime-info.pc:
@./get-src http://freedesktop.org/~hadess shared-mime-info-1.2.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" shared-mime-info-1.2 "" "" $(VERBOSE)
glib: env zlib libxml2 libffi fake-gtk-doc $(BUILD_ROOT_DEPS)/lib/pkgconfig/glib-2.0.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/glib-2.0.pc:
@./get-src https://download.gnome.org/sources/glib/2.40 glib-2.40.0.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" glib-2.40.0 "" "--disable-static" $(VERBOSE)
glib-networking: env glib gnutls $(BUILD_ROOT_DEPS)/lib/gio/modules/libgiognutls.la
$(BUILD_ROOT_DEPS)/lib/gio/modules/libgiognutls.la:
@./get-src https://download.gnome.org/sources/glib-networking/2.40 glib-networking-2.40.1.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" glib-networking-2.40.1 "" "--without-ca-certificates" $(VERBOSE)
libmspack: env $(BUILD_ROOT_DEPS)/lib/pkgconfig/libmspack.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/libmspack.pc:
@./get-src http://www.cabextract.org.uk/libmspack libmspack-0.4alpha.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" libmspack-0.4alpha "" "" $(VERBOSE)
libsoup: env glib-networking sqlite $(BUILD_ROOT_DEPS)/lib/pkgconfig/libsoup-2.4.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/libsoup-2.4.pc:
@./get-src https://download.gnome.org/sources/libsoup/2.44 libsoup-2.44.2.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" libsoup-2.44.2 "" "--disable-tls-check $(DISABLE_GTK_DOC)" $(VERBOSE)
libical: env tzdata cmake $(BUILD_ROOT_DEPS)/lib/pkgconfig/libical.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/libical.pc:
@./get-src "http://downloads.sourceforge.net/project/freeassociation/libical/libical-1.0/libical-1.0.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Ffreeassociation%2Ffiles%2Flibical%2Flibical-1.0%2F&ts=1395872482&use_mirror=cznic" "0" libical-1.0.tar.gz
@cd src/libical-1.0 && \
cmake -G "MSYS Makefiles" -DCMAKE_PREFIX_PATH=$(BUILD_ROOT_DEPS) -DCMAKE_INSTALL_PREFIX=$(BUILD_ROOT_DEPS) .
@./build mmi "$(BUILD_ROOT_DEPS)" libical-1.0 "libical.patch" "" $(VERBOSE)
libgweather: env libsoup tzdata $(BUILD_ROOT_DEPS)/lib/pkgconfig/gweather-3.0.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/gweather-3.0.pc:
@./get-src https://download.gnome.org/sources/libgweather/3.10 libgweather-3.10.2.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" libgweather-3.10.2 "libgweather.patch" "--with-zoneinfo-dir=$(BUILD_ROOT_DEPS)/share/zoneinfo $(DISABLE_GTK_DOC)" $(VERBOSE)
tzdata: env $(BUILD_ROOT_DEPS)/share/zoneinfo/zone.tab
$(BUILD_ROOT_DEPS)/share/zoneinfo/zone.tab:
@./get-src https://www.iana.org/time-zones/repository/releases tzdata2014b.tar.gz "" src/tzdata2014b
@./get-src https://www.iana.org/time-zones/repository/releases tzcode2014b.tar.gz "" src/tzcode2014b
@cp src/tzcode2014b/* src/tzdata2014b/
@./build mmi "$(BUILD_ROOT_DEPS)" tzdata2014b "tzdata.patch" "TOPDIR=$(BUILD_ROOT_DEPS) CC=gcc" $(VERBOSE)
iso-codes: env $(BUILD_ROOT_DEPS)/share/pkgconfig/iso-codes.pc
$(BUILD_ROOT_DEPS)/share/pkgconfig/iso-codes.pc:
@./get-src https://pkg-isocodes.alioth.debian.org/downloads iso-codes-3.51.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" iso-codes-3.51 "" "" $(VERBOSE)
enchant: env $(BUILD_ROOT_DEPS)/lib/pkgconfig/enchant.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/enchant.pc:
@./get-src http://www.abisource.com/downloads/enchant/1.6.0 enchant-1.6.0.tar.gz
@export CFLAGS="$(CFLAGS) -DNO_STRICT=1" && ./build cmmi "$(BUILD_ROOT_DEPS)" enchant-1.6.0 "" "" $(VERBOSE)
nss: env moztools $(BUILD_ROOT_DEPS)/lib/pkgconfig/nss.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/nss.pcAAA:
@./get-src ftp://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_15_4_RTM/src nss-3.15.4-with-nspr-4.10.2.tar.gz "" "" "nss-3.15.4"
@cd src/nss-3.15.4/ && \
(patch -p1 -f <../../patches/nss.patch || echo a > /dev/null) && \
export BUILD_OPT=1 && \
export OS_TARGET=WINNT && \
export NS_USE_GCC=1 && \
export NSPR_USE_GCC=1 && \
export NSPR_PREFIX=`pwd`/dist/WINNT6.1_gcc_OPT.OBJ && \
../../build cmmi "$(BUILD_ROOT_DEPS)" nspr "" "--host=i586-pc-mingw32 --prefix=$(BUILD_ROOT_DEPS) --with-dist-prefix=`pwd`/dist/WINNT6.1_gcc_OPT.OBJ --with-dist-includedir=`pwd`/dist/WINNT6.1_gcc_OPT.OBJ/include --enable-win32-target=WINNT" $(VERBOSE) "nspr" && \
mv $(BUILD_ROOT_DEPS)/lib/libnspr4.dll $(BUILD_ROOT_DEPS)/bin/ && \
mv $(BUILD_ROOT_DEPS)/lib/libplc4.dll $(BUILD_ROOT_DEPS)/bin/ && \
mv $(BUILD_ROOT_DEPS)/lib/libplds4.dll $(BUILD_ROOT_DEPS)/bin/ && \
../../build m "$(BUILD_ROOT_DEPS)" nss "" "all" $(VERBOSE) "nss" && \
cp -rf dist/public/* "$(BUILD_ROOT_DEPS)/include/" && \
mv dist/WINNT6.1_gcc_OPT.OBJ/lib/*.dll "$(BUILD_ROOT_DEPS)/bin/" && \
mv dist/WINNT6.1_gcc_OPT.OBJ/lib/* "$(BUILD_ROOT_DEPS)/lib/" && \
echo "prefix=$(BUILD_ROOT_DEPS)" >$(BUILD_ROOT_DEPS)/lib/pkgconfig/nss.pc && \
cat nss/nss.pc >>$(BUILD_ROOT_DEPS)/lib/pkgconfig/nss.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/nss.pc:
@./get-src ftp://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_15_4_RTM/src nss-3.15.4-with-nspr-4.10.2.tar.gz "" "" "nss-3.15.4"
@cd src/nss-3.15.4/ && \
(patch -p1 -f <../../patches/nss.patch || echo a > /dev/null) && \
export NSPR_USE_GCC=1 && \
export NSPR_PREFIX=`pwd`/dist/WIN954.0_gcc_OPT.OBJ && \
export BUILD_OPT=1 && \
export NS_USE_GCC=1 && \
../../build cmmi "$(BUILD_ROOT_DEPS)" nspr "" "--prefix=$(BUILD_ROOT_DEPS) --enable-win32-target=WIN95 --enable-debug=no --with-dist-prefix=`pwd`/dist/WIN954.0_gcc_OPT.OBJ --with-dist-includedir=`pwd`/dist/WIN954.0_gcc_OPT.OBJ/include " "$(VERBOSE)" "nspr" "'-DRELEASE_OBJDIR_NAME=WIN954.0_gcc_OPT.OBJ'" && \
../../build m "$(BUILD_ROOT_DEPS)" nss "" "all" "$(VERBOSE)" "nss" && \
cp -rf dist/public/* "$(BUILD_ROOT_DEPS)/include/" && \
mv $(BUILD_ROOT_DEPS)/lib/nspr4.dll $(BUILD_ROOT_DEPS)/bin/libnspr4.dll && \
mv $(BUILD_ROOT_DEPS)/lib/plc4.dll $(BUILD_ROOT_DEPS)/bin/libplc4.dll && \
mv $(BUILD_ROOT_DEPS)/lib/plds4.dll $(BUILD_ROOT_DEPS)/bin/libplds4.dll && \
mv dist/WIN954.0_gcc_OPT.OBJ/lib/*.dll "$(BUILD_ROOT_DEPS)/bin/" && \
mv dist/WIN954.0_gcc_OPT.OBJ/lib/* "$(BUILD_ROOT_DEPS)/lib/" && \
echo "prefix=$(BUILD_ROOT_DEPS)" >$(BUILD_ROOT_DEPS)/lib/pkgconfig/nss.pc && \
cat nss/nss.pc >>$(BUILD_ROOT_DEPS)/lib/pkgconfig/nss.pc
moztools: env $(BUILD_ROOT_DEPS)/bin/nsinstall.exe
$(BUILD_ROOT_DEPS)/bin/nsinstall.exe:
@./get-src http://ftp.mozilla.org/pub/mozilla.org/mozilla/libraries/win32 moztools-static.zip "" "" "moztools"
@cp src/moztools/bin/nsinstall.exe $(BUILD_ROOT_DEPS)/bin/
gnutls: env zlib gmp nettle p11-kit $(BUILD_ROOT_DEPS)/lib/pkgconfig/gnutls.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/gnutls.pc:
@./get-src ftp://ftp.gnutls.org/gcrypt/gnutls/v3.2 gnutls-3.2.12.1.tar.xz "" "" "gnutls-3.2.12"
@./build cmmi "$(BUILD_ROOT_DEPS)" gnutls-3.2.12 "@gnutls.patch" "--disable-guile --disable-doc --disable-libdane --disable-crywrap" $(VERBOSE)
gnupg: env gnutls pth libassuan libksba $(BUILD_ROOT_DEPS)/bin/gpg2.exe
$(BUILD_ROOT_DEPS)/bin/gpg2.exe:
@./get-src ftp://ftp.gnupg.org/gcrypt/gnupg gnupg-2.0.22.tar.bz2
@./build cmmi "$(BUILD_ROOT_DEPS)" gnupg-2.0.22 "" "" $(VERBOSE)
pth: env $(BUILD_ROOT_DEPS)/lib/libw32pth.dll.a
$(BUILD_ROOT_DEPS)/lib/libw32pth.dll.a:
@./get-src ftp://ftp.g10code.com/g10code/w32pth w32pth-2.0.5.tar.bz2
@cd src/w32pth-2.0.5 && \
mv libw32pth.def libw32pth.def.orig && \
echo EXPORTS >libw32pth.def && \
cat libw32pth.def.orig | grep -v EXPORTS >>libw32pth.def
@./build cmmi "$(BUILD_ROOT_DEPS)" w32pth-2.0.5 "" "" $(VERBOSE)
libassuan: env $(BUILD_ROOT_DEPS)/lib/libassuan.dll.a
$(BUILD_ROOT_DEPS)/lib/libassuan.dll.a:
@./get-src ftp://ftp.gnupg.org/gcrypt/libassuan libassuan-2.1.1.tar.bz2
@cd src/libassuan-2.1.1/src && \
mv libassuan.def libassuan.def.orig && \
echo EXPORTS >libassuan.def && \
cat libassuan.def.orig | grep -v EXPORTS >>libassuan.def
@./build cmmi "$(BUILD_ROOT_DEPS)" libassuan-2.1.1 "" "" $(VERBOSE)
libksba: env $(BUILD_ROOT_DEPS)/lib/libksba.dll.a
$(BUILD_ROOT_DEPS)/lib/libksba.dll.a:
@./get-src ftp://ftp.gnupg.org/gcrypt/libksba libksba-1.3.0.tar.bz2
@cd src/libksba-1.3.0/src && \
mv libksba.def libksba.def.orig && \
echo EXPORTS >libksba.def.def && \
cat libksba.def.orig | grep -v EXPORTS >>libksba.def
@./build cmmi "$(BUILD_ROOT_DEPS)" libksba-1.3.0 "" "" $(VERBOSE)
sqlite: env $(BUILD_ROOT_DEPS)/lib/pkgconfig/sqlite3.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/sqlite3.pc:
@./get-src http://sqlite.org/2014 sqlite-autoconf-3080300.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" sqlite-autoconf-3080300 "" "" $(VERBOSE)
nettle: env $(BUILD_ROOT_DEPS)/lib/pkgconfig/nettle.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/nettle.pc:
@./get-src http://www.lysator.liu.se/~nisse/archive nettle-2.7.1.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" nettle-2.7.1 "" "" $(VERBOSE)
gmp: env $(BUILD_ROOT_DEPS)/lib/libgmp.la
$(BUILD_ROOT_DEPS)/lib/libgmp.la:
@./get-src https://gmplib.org/download/gmp gmp-4.3.2.tar.bz2
@./build cmmi "$(BUILD_ROOT_DEPS)" gmp-4.3.2 "" "--disable-assembly --disable-fft --without-readline --enable-shared --disable-static --disable-rpath" $(VERBOSE)
p11-kit: env libtasn1 $(BUILD_ROOT_DEPS)/lib/pkgconfig/p11-kit-1.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/p11-kit-1.pc:
@./get-src http://cgit.freedesktop.org/p11-glue/p11-kit/snapshot p11-kit-98292d6bbc.tar.gz
@./build acmmi "$(BUILD_ROOT_DEPS)" p11-kit-98292d6bbc "p11-kit.patch" "--disable-rpath --disable-trust-module --without-trust-paths" $(VERBOSE)
trousers: env openssl $(BUILD_ROOT_DEPS)/lib/pkgconfig/trousers.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/trousers.pc:
@./get-src "http://downloads.sourceforge.net/project/trousers/trousers/0.3.11/trousers-0.3.11.2.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Ftrousers%2Ffiles%2Ftrousers%2F0.3.11%2F&ts=1390773464&use_mirror=skylink" "0" trousers-0.3.11.2.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" trousers-0.3.11.2 "" "" $(VERBOSE)
libunbound: env openssl ldns $(BUILD_ROOT_DEPS)/lib/pkgconfig/libunbound.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/libunbound.pc:
@./get-src http://unbound.net/downloads unbound-1.4.21.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" unbound-1.4.21 "" "--with-ssl=$(BUILD_ROOT_DEPS) --with-libexpat=$(BUILD_ROOT_DEPS) --with-libunbound-only --disable-ecdsa" $(VERBOSE)
ldns: env $(BUILD_ROOT_DEPS)/lib/pkgconfig/ldns.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/ldns.pc:
@./get-src http://www.nlnetlabs.nl/downloads/ldns ldns-1.6.16.tar.gz
@mkdir src/ldns-1.6.16/lib
@mkdir src/ldns-1.6.16/lib/.libs
@./build cmmi "$(BUILD_ROOT_DEPS)" ldns-1.6.16 "" "--with-ssl=$(BUILD_ROOT_DEPS) " $(VERBOSE)
liboauth: env nss $(BUILD_ROOT_DEPS)/lib/pkgconfig/oauth.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/oauth.pc:
@./get-src "http://downloads.sourceforge.net/project/liboauth/liboauth-1.0.1.tar.gz?r=http%3A%2F%2Fliboauth.sourceforge.net%2F&ts=1394912907&use_mirror=heanet" "0" liboauth-1.0.1.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" liboauth-1.0.1 "@liboauth.patch" "--enable-nss" $(VERBOSE)
@rm $(BUILD_ROOT_DEPS)/lib/liboauth.la
curl: env nss openldap $(BUILD_ROOT_DEPS)/lib/pkgconfig/curl.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/curl.pc:
@./get-src http://curl.haxx.se/download curl-7.35.0.tar.bz2
@./build cmmi "$(BUILD_ROOT_DEPS)" curl-7.35.0 "" "--with-nss" $(VERBOSE)
heimdal: env nss ncurses openssl openldap $(BUILD_ROOT_DEPS)/lib/pkgconfig/heimdal.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/heimdal.pc:
@./get-src http://www.h5l.org/dist/src heimdal-1.5.2.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" heimdal-1.5.2 "" "" $(VERBOSE)
ncurses: env $(BUILD_ROOT_DEPS)/lib/libncurses.a
$(BUILD_ROOT_DEPS)/lib/libncurses.a:
@./get-src ftp://invisible-island.net/ncurses ncurses-5.9.tgz
@./build cmmi "$(BUILD_ROOT_DEPS)" ncurses-5.9 "ncurses.patch" "--without-ada --without-manpages --without-progs --without-tests" $(VERBOSE)
openldap: env regex gnutls libgpg-error libgcrypt $(BUILD_ROOT_DEPS)/lib/libldap.la
$(BUILD_ROOT_DEPS)/lib/libldap.la:
@./get-src ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release openldap-2.4.9.tgz
@./build cmmi "$(BUILD_ROOT_DEPS)" openldap-2.4.9 "@openldap.patch" "--disable-backends --disable-overlays --disable-slapd --disable-debug --enable-dynamic --without-threads --with-tls=gnutls" $(VERBOSE)
libgpg-error: env gnutls $(BUILD_ROOT_DEPS)/lib/libgpg-error.la
$(BUILD_ROOT_DEPS)/lib/libgpg-error.la:
@./get-src ftp://ftp.gnutls.org/gcrypt/libgpg-error libgpg-error-1.12.tar.bz2
@./build cmmi "$(BUILD_ROOT_DEPS)" libgpg-error-1.12 "libgpg-error.patch" "" $(VERBOSE)
libgcrypt: env libgpg-error $(BUILD_ROOT_DEPS)/lib/libgcrypt.la
$(BUILD_ROOT_DEPS)/lib/libgcrypt.la:
@./get-src ftp://ftp.gnutls.org/gcrypt/libgcrypt libgcrypt-1.6.1.tar.bz2
@export w32root=$(BUILD_ROOT_DEPS) && \
./build acmmi "$(BUILD_ROOT_DEPS)" libgcrypt-1.6.1 "" "--build-w32^" $(VERBOSE)
regex: env $(BUILD_ROOT_DEPS)/include/regex.h
$(BUILD_ROOT_DEPS)/include/regex.h:
@./get-src "http://downloads.sourceforge.net/project/mingw/MSYS/Base/regex/regex-1.20090805-2/regex-1.20090805-2-msys-1.0.13-src.tar.lzma?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fmingw%2Ffiles%2FMSYS%2FBase%2Fregex%2Fregex-1.20090805-2%2Fregex-1.20090805-2-msys-1.0.13-src.tar.lzma%2Fdownload&ts=1395255273&use_mirror=cznic" "0" regex-1.20090805-2-msys-1.0.13-src.tar.lzma
@tar -xf src/regex-20090805.tar.xz --directory=src
@./build cmmi "$(BUILD_ROOT_DEPS)" regex-20090805 "regex.patch" "" $(VERBOSE)
catgets: env $(BUILD_ROOT_DEPS)/include/langinfo.h
$(BUILD_ROOT_DEPS)/include/langinfo.h:
@./get-src "http://downloads.sourceforge.net/project/mingw/MinGW/Extension/catgets/mingw-catgets-1.0.1/mingw-catgets-1.0.1-src.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fmingw%2Ffiles%2FMinGW%2FExtension%2Fcatgets%2Fmingw-catgets-1.0.1%2F&ts=1396202721&use_mirror=freefr" "0" mingw-catgets-1.0.1-src.tar.gz "mingw-catgets-1.0.1"
@./build cmmi "$(BUILD_ROOT_DEPS)" mingw-catgets-1.0.1 "" "" $(VERBOSE)
libdb: env $(BUILD_ROOT_DEPS)/lib/libdb.a
$(BUILD_ROOT_DEPS)/lib/libdb.a:
@./get-src http://download.oracle.com/berkeley-db db-5.1.29.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" db-5.1.29/build_unix "@libdb.patch" "../dist/configure --enable-smallbuild --disable-cxx --disable-java --disable-replication --enable-mingw" $(VERBOSE)
libgdata: env glib libsoup liboauth json-glib $(BUILD_ROOT_DEPS)/lib/pkgconfig/libgdata.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/libgdata.pc:
@./get-src https://download.gnome.org/sources/libgdata/0.15 libgdata-0.15.1.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" libgdata-0.15.1 "libgdata.patch" "--disable-gnome --disable-goa $(DISABLE_GTK_DOC)" $(VERBOSE)
gsettings-desktop-schemas: env gtk $(BUILD_ROOT_DEPS)/share/pkgconfig/gsettings-desktop-schemas.pc
$(BUILD_ROOT_DEPS)/share/pkgconfig/gsettings-desktop-schemas.pc:
@./get-src https://download.gnome.org/sources/gsettings-desktop-schemas/3.10 gsettings-desktop-schemas-3.10.1.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" gsettings-desktop-schemas-3.10.1 "" "" $(VERBOSE)
gtkspell: env gtk enchant $(BUILD_ROOT_DEPS)/lib/pkgconfig/gtkspell3-3.0.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/gtkspell3-3.0.pc:
@./get-src "http://downloads.sourceforge.net/project/gtkspell/3.0.4/gtkspell3-3.0.4.tar.gz?r=http%3A%2F%2Fgtkspell.sourceforge.net%2F&ts=1395867752&use_mirror=skylink" "0" gtkspell3-3.0.4.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" gtkspell3-3.0.4 "" "$(DISABLE_GTK_DOC)" $(VERBOSE)
gtkhtml: env $(BUILD_ROOT_DEPS)/lib/pkgconfig/libgtkhtml-4.0.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/libgtkhtml-4.0.pc:
@./get-src https://download.gnome.org/sources/gtkhtml/4.8 gtkhtml-4.8.0.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" gtkhtml-4.8.0 "" "$(DISABLE_GTK_DOC)" $(VERBOSE)
gnome-common: env $(BUILD_ROOT_DEPS)/share/aclocal/gnome-common.m4
$(BUILD_ROOT_DEPS)/share/aclocal/gnome-common.m4:
@./get-src https://download.gnome.org/sources/gnome-common/3.10 gnome-common-3.10.0.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" gnome-common-3.10.0 "" "" $(VERBOSE)
webkitgtk: env gtk enchant libsoup ruby gperf libwebp icu libsecret libxslt $(BUILD_ROOT_DEPS)/lib/pkgconfig/webkitgtk-3.0.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/webkitgtk-3.0.pc:
@./get-src http://webkitgtk.org/releases webkitgtk-2.4.4.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" webkitgtk-2.4.4 "webkitgtk.patch" "--enable-win32-target --enable-spellcheck --enable-jit --disable-geolocation --disable-video --disable-web-audio --disable-webgl --disable-accelerated-compositing --disable-glx --disable-egl --disable-gles2 --disable-webkit2 $(DISABLE_GTK_DOC)" $(VERBOSE)
ruby: env 7zip $(BUILD_ROOT_DEPS)/bin/ruby.exe
$(BUILD_ROOT_DEPS)/bin/ruby.exe:
@./get-src http://dl.bintray.com/oneclick/rubyinstaller ruby-1.9.3-p545-i386-mingw32.7z
@cp -r src/ruby-1.9.3-p545-i386-mingw32/bin/* $(BUILD_ROOT_DEPS)/bin/
@cp -r src/ruby-1.9.3-p545-i386-mingw32/include/* $(BUILD_ROOT_DEPS)/include/
@cp -r src/ruby-1.9.3-p545-i386-mingw32/lib/* $(BUILD_ROOT_DEPS)/lib/
gperf: env $(BUILD_ROOT_DEPS)/bin/gperf.exe
$(BUILD_ROOT_DEPS)/bin/gperf.exe:
@./get-src http://ftp.gnu.org/pub/gnu/gperf gperf-3.0.4.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" gperf-3.0.4 "" "" $(VERBOSE)
libwebp: env giflib $(BUILD_ROOT_DEPS)/lib/pkgconfig/libwebp.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/libwebp.pc:
@./get-src https://webp.googlecode.com/files libwebp-0.4.0.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" libwebp-0.4.0 "" "" $(VERBOSE)
icu: env $(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-uc.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-uc.pc:
@./get-src http://download.icu-project.org/files/icu4c/53.1 icu4c-53_1-src.tgz "" "" icu
@./build cmmi "$(BUILD_ROOT_DEPS)" icu/source "" "--disable-rpath" $(VERBOSE)
@mv $(BUILD_ROOT_DEPS)/lib/icu*.dll $(BUILD_ROOT_DEPS)/bin/
@mv $(BUILD_ROOT_DEPS)/lib/icudt.dll.a $(BUILD_ROOT_DEPS)/lib/libicudt.dll.a
@mv $(BUILD_ROOT_DEPS)/lib/icuin.dll.a $(BUILD_ROOT_DEPS)/lib/libicuin.dll.a
@mv $(BUILD_ROOT_DEPS)/lib/icuio.dll.a $(BUILD_ROOT_DEPS)/lib/libicuio.dll.a
@mv $(BUILD_ROOT_DEPS)/lib/icule.dll.a $(BUILD_ROOT_DEPS)/lib/libicule.dll.a
@mv $(BUILD_ROOT_DEPS)/lib/iculx.dll.a $(BUILD_ROOT_DEPS)/lib/libiculx.dll.a
@mv $(BUILD_ROOT_DEPS)/lib/icutest.dll.a $(BUILD_ROOT_DEPS)/lib/libicutest.dll.a
@mv $(BUILD_ROOT_DEPS)/lib/icutu.dll.a $(BUILD_ROOT_DEPS)/lib/libicutu.dll.a
@mv $(BUILD_ROOT_DEPS)/lib/icuuc.dll.a $(BUILD_ROOT_DEPS)/lib/libicuuc.dll.a
@mv $(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-i18n.pc $(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-i18n.pc.bak && \
cat $(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-i18n.pc.bak | grep -v "Libs: -licuin53" >$(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-i18n.pc && \
echo "Libs: -licuin" >>$(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-i18n.pc && \
rm $(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-i18n.pc.bak
@mv $(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-io.pc $(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-io.pc.bak && \
cat $(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-io.pc.bak | grep -v "Libs: -licuio53" >$(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-io.pc && \
echo "Libs: -licuio" >>$(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-io.pc && \
rm $(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-io.pc.bak
@mv $(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-le.pc $(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-le.pc.bak && \
cat $(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-le.pc.bak | grep -v "Libs: -licule53" >$(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-le.pc && \
echo "Libs: -licule" >>$(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-le.pc && \
rm $(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-le.pc.bak
@mv $(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-lx.pc $(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-lx.pc.bak && \
cat $(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-lx.pc.bak | grep -v "Libs: -liculx53" >$(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-lx.pc && \
echo "Libs: -liculx" >>$(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-lx.pc && \
rm $(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-lx.pc.bak
@mv $(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-uc.pc $(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-uc.pc.bak && \
cat $(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-uc.pc.bak | grep -v "} -licuuc53 -licudt53" >$(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-uc.pc && \
echo "Libs: -L$(BUILD_ROOT_DEPS)/lib/ -licuuc -licudt" >>$(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-uc.pc && \
rm $(BUILD_ROOT_DEPS)/lib/pkgconfig/icu-uc.pc.bak
libsecret: env $(BUILD_ROOT_DEPS)/lib/pkgconfig/libsecret-1.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/libsecret-1.pc:
@./get-src https://download.gnome.org/sources/libsecret/0.16 libsecret-0.16.tar.xz
@./build acmmi "$(BUILD_ROOT_DEPS)" libsecret-0.16 "libsecret.patch" "--disable-manpages" $(VERBOSE)
libxslt: env libxml2 $(BUILD_ROOT_DEPS)/lib/pkgconfig/libxslt.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/libxslt.pc:
@./get-src https://git.gnome.org/browse/libxslt/snapshot libxslt-1.1.28.tar.gz
@./build acmmi "$(BUILD_ROOT_DEPS)" libxslt-1.1.28 "libxslt.patch" "" $(VERBOSE)
json-glib: env glib $(BUILD_ROOT_DEPS)/lib/pkgconfig/json-glib-1.0.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/json-glib-1.0.pc:
@./get-src https://download.gnome.org/sources/json-glib/0.99 json-glib-0.99.2.tar.xz
@mv $(BUILD_ROOT_DEPS)/bin/msgmerge.exe $(BUILD_ROOT_DEPS)/bin/msgmerge.ex && \
./build cmmi "$(BUILD_ROOT_DEPS)" json-glib-0.99.2 "" "$(DISABLE_GTK_DOC)" $(VERBOSE) && \
mv $(BUILD_ROOT_DEPS)/bin/msgmerge.ex $(BUILD_ROOT_DEPS)/bin/msgmerge.exe
libunistring: env $(BUILD_ROOT_DEPS)/lib/pkgconfig/libunistring.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/libunistring.pc:
@./get-src ftp://ftp.gnu.org/pub/gnu/libunistring libunistring-0.9.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" libunistring-0.9 "" "" $(VERBOSE)
libtasn1: env $(BUILD_ROOT_DEPS)/lib/pkgconfig/libtasn1.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/libtasn1.pc:
@./get-src http://ftp.gnu.org/gnu/libtasn1 libtasn1-3.4.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" libtasn1-3.4 "@libtasn1.patch" "" $(VERBOSE)
openssl: env $(BUILD_ROOT_DEPS)/lib/pkgconfig/openssl.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/openssl.pc:
@./get-src http://www.openssl.org/source openssl-1.0.1g.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" openssl-1.0.1g "" "mingw" $(VERBOSE)
gtk: env glib intltool atk gdk-pixbuf cairo pango $(BUILD_ROOT_DEPS)/lib/pkgconfig/gtk+-3.0.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/gtk+-3.0.pc:
@./get-src https://download.gnome.org/sources/gtk+/3.10 gtk+-3.10.6.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" gtk+-3.10.6 "gtk.patch" "--disable-static $(DISABLE_GTK_DOC) --disable-man" $(VERBOSE)
atk: env glib $(BUILD_ROOT_DEPS)/lib/pkgconfig/atk.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/atk.pc:
@./get-src https://download.gnome.org/sources/atk/2.10 atk-2.10.0.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" atk-2.10.0 "atk.patch" "--disable-static" $(VERBOSE)
cairo: env glib pixman libpng freetype fontconfig $(BUILD_ROOT_DEPS)/lib/pkgconfig/cairo.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/cairo.pc:
@./get-src http://cairographics.org/releases cairo-1.12.16.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" cairo-1.12.16 "" "--disable-static $(DISABLE_GTK_DOC)" $(VERBOSE)
pixman: env $(BUILD_ROOT_DEPS)/lib/pkgconfig/pixman-1.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/pixman-1.pc:
@./get-src http://cairographics.org/releases pixman-0.32.4.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" pixman-0.32.4 "" "--disable-static" $(VERBOSE)
libpng: env zlib $(BUILD_ROOT_DEPS)/lib/pkgconfig/libpng.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/libpng.pc:
@./get-src http://download.sourceforge.net/libpng libpng-1.6.7.tar.xz
@./build mmi "$(BUILD_ROOT_DEPS)" libpng-1.6.7 "libpng.patch" "-f scripts/makefile.msys prefix=$(BUILD_ROOT_DEPS)" $(VERBOSE)
@cp $(BUILD_ROOT_DEPS)/lib/libpng16.dll.a $(BUILD_ROOT_DEPS)/lib/libpng.dll.a
fontconfig: env freetype expat $(BUILD_ROOT_DEPS)/lib/pkgconfig/fontconfig.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/fontconfig.pc:
@./get-src http://www.freedesktop.org/software/fontconfig/release fontconfig-2.11.0.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" fontconfig-2.11.0 "@fontconfig.patch" "--disable-docs" $(VERBOSE)
freetype: env zlib giflib libpng libjpeg libtiff jasper $(BUILD_ROOT_DEPS)/lib/pkgconfig/freetype2.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/freetype2.pc:
@./get-src http://download.savannah.gnu.org/releases/freetype freetype-2.5.2.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" freetype-2.5.2 "freetype.patch" "" $(VERBOSE)
harfbuzz: env cairo freetype glib icu $(BUILD_ROOT_DEPS)/lib/pkgconfig/harfbuzz.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/harfbuzz.pc:
@./get-src http://www.freedesktop.org/software/harfbuzz/release harfbuzz-0.9.27.tar.bz2 || test -d src/harfbuzz-0.9.27
@./build cmmi "$(BUILD_ROOT_DEPS)" harfbuzz-0.9.27 "harfbuzz.patch" "--with-icu=yes --disable-static" $(VERBOSE)
librsvg2: env zlib cairo gdk-pixbuf libcroco $(BUILD_ROOT_DEPS)/lib/pkgconfig/librsvg-2.0.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/librsvg-2.0.pc:
@./get-src http://ftp.acc.umu.se/pub/gnome/sources/librsvg/2.36 librsvg-2.36.4.tar.xz
@export PATH="$(PATH):`pwd`/src/librsvg-2.36.4/.libs" && \
./build cmmi "$(BUILD_ROOT_DEPS)" librsvg-2.36.4 "" "--disable-gtk-theme --enable-pixbuf-loader --enable-introspection=no $(DISABLE_GTK_DOC)" $(VERBOSE)
pango: env glib cairo fontconfig freetype harfbuzz $(BUILD_ROOT_DEPS)/lib/pkgconfig/pango.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/pango.pc:
@./get-src http://ftp.gnome.org/pub/GNOME/sources/pango/1.36 pango-1.36.1.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" pango-1.36.1 "" "" $(VERBOSE)
icon-themes: hicolor-icon-theme icon-naming-utils gnome-icon-theme gnome-icon-theme-symbolic
hicolor-icon-theme: env $(BUILD_ROOT_DEPS)/share/icons/hicolor/index.theme
$(BUILD_ROOT_DEPS)/share/icons/hicolor/index.theme:
@./get-src http://icon-theme.freedesktop.org/releases hicolor-icon-theme-0.13.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" hicolor-icon-theme-0.13 "" "" $(VERBOSE)
perl-xml-simple: /lib/perl5/5.8/XML
/lib/perl5/5.8/XML:
@./get-src http://pkgs.fedoraproject.org/repo/pkgs/perl-XML-Simple/XML-Simple-2.18.tar.gz/593aa8001e5c301cdcdb4bb3b63abc33 XML-Simple-2.18.tar.gz
@cp -r src/XML-Simple-2.18/lib/XML /lib/perl5/5.8/
icon-naming-utils: env perl-xml-simple $(BUILD_ROOT_DEPS)/share/pkgconfig/icon-naming-utils.pc
$(BUILD_ROOT_DEPS)/share/pkgconfig/icon-naming-utils.pc:
@./get-src http://tango.freedesktop.org/releases icon-naming-utils-0.8.90.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" icon-naming-utils-0.8.90 "" "" $(VERBOSE)
gnome-icon-theme: env icon-naming-utils gtk $(BUILD_ROOT_DEPS)/share/pkgconfig/gnome-icon-theme.pc
$(BUILD_ROOT_DEPS)/share/pkgconfig/gnome-icon-theme.pc:
@./get-src https://download.gnome.org/sources/gnome-icon-theme/3.10 gnome-icon-theme-3.10.0.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" gnome-icon-theme-3.10.0 "" "" $(VERBOSE)
gnome-icon-theme-symbolic: env gnome-icon-theme $(BUILD_ROOT_DEPS)/share/pkgconfig/gnome-icon-theme-symbolic.pc
$(BUILD_ROOT_DEPS)/share/pkgconfig/gnome-icon-theme-symbolic.pc:
@./get-src https://download.gnome.org/sources/gnome-icon-theme-symbolic/3.10 gnome-icon-theme-symbolic-3.10.1.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" gnome-icon-theme-symbolic-3.10.1 "" "" $(VERBOSE)
gdk-pixbuf: env giflib libpng libjpeg libtiff jasper glib $(BUILD_ROOT_DEPS)/lib/pkgconfig/gdk-pixbuf-2.0.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/gdk-pixbuf-2.0.pc:
@./get-src https://download.gnome.org/sources/gdk-pixbuf/2.30 gdk-pixbuf-2.30.2.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" gdk-pixbuf-2.30.2 "" "--disable-static --with-libjasper" $(VERBOSE)
libcroco: env glib $(BUILD_ROOT_DEPS)/lib/pkgconfig/libcroco-0.6.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/libcroco-0.6.pc:
@./get-src http://ftp.acc.umu.se/pub/gnome/sources/libcroco/0.6 libcroco-0.6.8.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" libcroco-0.6.8 "" "$(DISABLE_GTK_DOC)" $(VERBOSE)
giflib: env $(BUILD_ROOT_DEPS)/include/gif_lib.h
$(BUILD_ROOT_DEPS)/include/gif_lib.h:
@./get-src "http://downloads.sourceforge.net/project/giflib/giflib-5.0.6.tar.bz2?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fgiflib%2F&ts=1398011957&use_mirror=kent" "0" giflib-5.0.6.tar.bz2
@./build cmmi "$(BUILD_ROOT_DEPS)" giflib-5.0.6 "" "" $(VERBOSE)
libjpeg: env zlib $(BUILD_ROOT_DEPS)/bin/libjpeg-9.dll
$(BUILD_ROOT_DEPS)/bin/libjpeg-9.dll:
@./get-src http://www.ijg.org/files jpegsrc.v9.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" jpeg-9 "" "" $(VERBOSE)
libtiff: env zlib $(BUILD_ROOT_DEPS)/lib/pkgconfig/libtiff-4.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/libtiff-4.pc:
@./get-src ftp://ftp.remotesensing.org/pub/libtiff tiff-4.0.3.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" tiff-4.0.3 "" "" $(VERBOSE)
jasper: env zlib $(BUILD_ROOT_DEPS)/include/jasper/jasper.h
$(BUILD_ROOT_DEPS)/include/jasper/jasper.h:
@./get-src http://www.ece.uvic.ca/~frodo/jasper/software jasper-1.900.1.zip
@./build cmmi "$(BUILD_ROOT_DEPS)" jasper-1.900.1 "jasper.patch" "" $(VERBOSE)
libffi: env $(BUILD_ROOT_DEPS)/lib/pkgconfig/libffi.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/libffi.pc:
@./get-src ftp://sourceware.org/pub/libffi/ libffi-3.0.9.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" libffi-3.0.9 "" "" $(VERBOSE)
dbus: env expat $(BUILD_ROOT_DEPS)/lib/pkgconfig/dbus-1.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/dbus-1.pc:
@./get-src http://dbus.freedesktop.org/releases/dbus dbus-1.8.0.tar.gz
@./build rcmmi "$(BUILD_ROOT_DEPS)" dbus-1.8.0 "dbus.patch" "--build=mingw32" $(VERBOSE)
expat: env libxml2 $(BUILD_ROOT_DEPS)/lib/pkgconfig/expat.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/expat.pc:
@./get-src "http://downloads.sourceforge.net/project/expat/expat/2.1.0/expat-2.1.0.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fexpat%2Ffiles%2Fexpat%2F2.1.0%2F&ts=1388081569&use_mirror=heanet" "0" expat-2.1.0.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" expat-2.1.0 "" "" $(VERBOSE)
krb5: env $(BUILD_ROOT_DEPS)/include/krb5.h
$(BUILD_ROOT_DEPS)/include/krb5.h:
@./get-src http://web.mit.edu/kerberos/dist/krb5/1.12 krb5-1.12-signed.tar
@./build cmmi "$(BUILD_ROOT_DEPS)" krb5-1.12-signed "" "" $(VERBOSE)
# to be able to call ./autogen.sh
fake-gtk-doc: env $(BUILD_ROOT_DEPS)/bin/gtkdocize
$(BUILD_ROOT_DEPS)/bin/gtkdocize:
@echo "#!/bin/bash" >$(BUILD_ROOT_DEPS)/bin/gtkdocize
@echo "echo fake gtkdocize binary >&2" >>$(BUILD_ROOT_DEPS)/bin/gtkdocize
@echo "#if [ x$-1 = x--version ] ; then" >>$(BUILD_ROOT_DEPS)/bin/gtkdocize
@echo " echo 1.20.1" >>$(BUILD_ROOT_DEPS)/bin/gtkdocize
@echo " exit 0" >>$(BUILD_ROOT_DEPS)/bin/gtkdocize
@echo "#fi" >>$(BUILD_ROOT_DEPS)/bin/gtkdocize
@echo "exit 1" >>$(BUILD_ROOT_DEPS)/bin/gtkdocize
@cp patches/gtk-doc.m4 $(BUILD_ROOT_DEPS)/share/aclocal/
@cp patches/yelp.m4 $(BUILD_ROOT_DEPS)/share/aclocal/
libxml2: env libiconv $(BUILD_ROOT_DEPS)/lib/pkgconfig/libxml-2.0.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/libxml-2.0.pc:
@./get-src ftp://xmlsoft.org/libxml2 libxml2-2.8.0.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" libxml2-2.8.0 "" "" $(VERBOSE)
zlib: env pkg-config $(BUILD_ROOT_DEPS)/lib/pkgconfig/zlib.pc
$(BUILD_ROOT_DEPS)/lib/pkgconfig/zlib.pc:
@./get-src http://zlib.net/ zlib-1.2.8.tar.xz
@./build mmi "$(BUILD_ROOT_DEPS)" zlib-1.2.8 "" "-f win32/Makefile.gcc NO_MSCVER_FILE64_FUNC=1" $(VERBOSE)
@cd src/zlib-1.2.8 && \
cp libz.dll.a $(BUILD_ROOT_DEPS)/lib/ && \
cp zlib1.dll $(BUILD_ROOT_DEPS)/bin/ && \
cd ../..
cmake: env $(BUILD_ROOT_DEPS)/bin/cmake.exe
$(BUILD_ROOT_DEPS)/bin/cmake.exe:
@./get-src http://www.cmake.org/files/v2.8 cmake-2.8.12.2-win32-x86.zip
@cp -r src/cmake-2.8.12.2-win32-x86/share/* $(BUILD_ROOT_DEPS)/share/
@cp -r src/cmake-2.8.12.2-win32-x86/bin/* $(BUILD_ROOT_DEPS)/bin/
7zip: env $(BUILD_ROOT_DEPS)/bin/7za.exe
$(BUILD_ROOT_DEPS)/bin/7za.exe:
@./get-src http://downloads.sourceforge.net/sevenzip 7za920.zip
@cp src/7za.exe $(BUILD_ROOT_DEPS)/bin/7za.exe
intltool: env $(BUILD_ROOT_DEPS)/bin/intltoolize
$(BUILD_ROOT_DEPS)/bin/intltoolize:
@./get-src https://launchpad.net/intltool/trunk/0.50.2/+download intltool-0.50.2.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" intltool-0.50.2 "" "" $(VERBOSE)
core-tools: regex libtool autoconf automake pkg-config intltool libiconv gettext
libtool: env $(BUILD_ROOT_DEPS)/bin/libtool
$(BUILD_ROOT_DEPS)/bin/libtool:
@./get-src http://ftp.gnu.org/gnu/libtool libtool-2.4.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" libtool-2.4 "" "" $(VERBOSE)
autoconf: env $(BUILD_ROOT_DEPS)/bin/autoconf
$(BUILD_ROOT_DEPS)/bin/autoconf:
@./get-src http://ftp.gnu.org/gnu/autoconf autoconf-2.69.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" autoconf-2.69 "" "" $(VERBOSE)
automake: env $(BUILD_ROOT_DEPS)/bin/automake
$(BUILD_ROOT_DEPS)/bin/automake:
@./get-src http://ftp.gnu.org/gnu/automake automake-1.14.tar.xz
@./build cmmi "$(BUILD_ROOT_DEPS)" automake-1.14 "" "" $(VERBOSE)
libiconv: env $(BUILD_ROOT_DEPS)/bin/iconv.exe
$(BUILD_ROOT_DEPS)/bin/iconv.exe:
@./get-src http://ftp.gnu.org/gnu/libiconv libiconv-1.14.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" libiconv-1.14 "" "" $(VERBOSE)
gettext: env $(BUILD_ROOT_DEPS)/bin/gettext.exe
$(BUILD_ROOT_DEPS)/bin/gettext.exe:
@./get-src http://ftp.gnu.org/pub/gnu/gettext gettext-0.18.3.1.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" gettext-0.18.3.1 "@gettext.patch" "" $(VERBOSE)
bison: env $(BUILD_ROOT_DEPS)/bin/bison.exe
$(BUILD_ROOT_DEPS)/bin/bison.exe:
@./get-src http://ftp.gnu.org/gnu/bison bison-3.0.2.tar.xz
@./build acmmi "$(BUILD_ROOT_DEPS)" bison-3.0.2 "bison.patch" "" $(VERBOSE)
pkg-config: env $(BUILD_ROOT_DEPS)/bin/pkg-config.exe
$(BUILD_ROOT_DEPS)/bin/pkg-config.exe:
@./get-src "http://downloads.sourceforge.net/project/pkgconfiglite/0.28-1/pkg-config-lite-0.28-1.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fpkgconfiglite%2Ffiles%2F0.28-1%2F&ts=1391208353&use_mirror=garr" "0" pkg-config-lite-0.28-1.tar.gz
@./build cmmi "$(BUILD_ROOT_DEPS)" pkg-config-lite-0.28-1 "" "" $(VERBOSE)

130
win32/build Executable file
View File

@ -0,0 +1,130 @@
#!/bin/bash
HOW=$1
PREFIX=$2
WHAT=$3
PATCHES=$4
CFGPARAMS=$5
VERBOSE=$6
SRCDIR=$7
MKPARAMS=
PATCHAFTERCFG=0
if test "$HOW" = "m" -o "$HOW" = "mmi" ; then
MKPARAMS=$CFGPARAMS
fi
PATCHAFTERCFG=0
if test "${PATCHES:0:1}" = "@" ; then
PATCHAFTERCFG=1
PATCHES=${PATCHES:1}
fi
if test "$SRCDIR" = "" ; then
SRCDIR=src/$WHAT
fi
cd $SRCDIR
if test "$?" != "0" ; then
exit 1
fi
export BINARY_PATH=$PREFIX/bin
export INCLUDE_PATH=$PREFIX/include
export LIBRARY_PATH=$PREFIX/lib
if test "$PATCHAFTERCFG" != "1" ; then
for p in $PATCHES; do patch -p1 -f --fuzz=0 <../../patches/$p; done
fi
if test "${HOW:0:1}" = "r" ; then
echo " * Running autoreconf for '$WHAT'..."
HOW=${HOW:1}
if test "$VERBOSE" != "1" ; then
autoreconf --force --install >/dev/null
else
autoreconf --force --install
fi
if test "$?" != "0" ; then
exit 1
fi
fi
if test "${HOW:0:1}" = "a" ; then
AUTOGENSH=
if test -f "./autogen.sh" ; then
AUTOGENSH="./autogen.sh"
AUTOGENPARAMS="$CFGPARAMS --prefix=$PREFIX"
else
AUTOGENSH="autoreconf -fi"
AUTOGENPARAMS=
fi
echo " * Running $AUTOGENSH for '$WHAT'..."
HOW=${HOW:1}
if test "$CFGPARAMS" != "" -a "${CFGPARAMS%%^}" != "" -a "${CFGPARAMS%%^}" != "$CFGPARAMS" ; then
AUTOGENPARAMS="${CFGPARAMS%%^}"
CFGPARAMS="${CFGPARAMS##*^}"
fi
if test "$VERBOSE" != "1" ; then
$AUTOGENSH $AUTOGENPARAMS >/dev/null
else
$AUTOGENSH $AUTOGENPARAMS
fi
if test "$?" != "0" ; then
exit 1
fi
fi
if test "$HOW" = "cmmi" ; then
echo " * Configuring '$WHAT'..."
make clean &>/dev/null
FIRSTPARAM=${CFGPARAMS%% }
if test "$FIRSTPARAM" != "" -a "${FIRSTPARAM%%/}" != "" -a "${FIRSTPARAM%%/}" != "$FIRSTPARAM" ; then
if test "$VERBOSE" != "1" ; then
$CFGPARAMS --prefix=$PREFIX >/dev/null
else
$CFGPARAMS --prefix=$PREFIX
fi
elif test "$VERBOSE" != "1" ; then
./configure --prefix=$PREFIX $CFGPARAMS >/dev/null
else
./configure --prefix=$PREFIX $CFGPARAMS
fi
if test "$?" != "0" ; then
exit 1
fi
fi
if test "$PATCHAFTERCFG" = "1" ; then
for p in $PATCHES; do patch -p1 -f --fuzz=0 <../../patches/$p; done
fi
if test "$VERBOSE" != "1" ; then
echo " * Building '$WHAT'..." && \
make $MKPARAMS >/dev/null && \
if test "$HOW" != "m" ; then
make install $MKPARAMS >/dev/null
fi
else
echo " * Building '$WHAT'..." && \
make V=1 $MKPARAMS && \
if test "$HOW" != "m" ; then
make install V=1 $MKPARAMS
fi
fi
if test "$?" != "0" ; then
exit 1
fi

83
win32/get-src Executable file
View File

@ -0,0 +1,83 @@
#!/bin/bash
OK=0
MKPWD=$PWD
URLLINK=$1
DOWNLOADEDFILE=$2
EXTRACTTO=$4
EXTRACTEDDIR=$5
if test "$DOWNLOADEDFILE" = "0" ; then
DOWNLOADEDFILE=$3 ;
else
URLLINK="$URLLINK/$DOWNLOADEDFILE" ;
fi
if test ! -f "downloads/$DOWNLOADEDFILE" ; then
cd downloads && \
wget --no-check-certificate $URLLINK && \
cd .. && \
OK=1
else
OK=1
fi
if test "$OK" = "0" ; then
exit 1;
fi
case "$DOWNLOADEDFILE" in
*.7z)
if test "$EXTRACTEDDIR" = "" ; then
EXTRACTEDDIR=${DOWNLOADEDFILE%%.7z}
fi
if test ! -d "src/${EXTRACTEDDIR}" ; then
echo " * Unpacking '$DOWNLOADEDFILE'..."
if test "$EXTRACTTO" != "" ; then
cd $EXTRACTTO &&
7za x -y $MKPWD/downloads/$DOWNLOADEDFILE >/dev/null &&
cd $MKPWD
else
cd src && \
7za x -y ../downloads/$DOWNLOADEDFILE >/dev/null && \
cd ..
fi
fi
;;
*.zip)
if test "$EXTRACTEDDIR" = "" ; then
EXTRACTEDDIR=${DOWNLOADEDFILE%%.zip}
fi
if test ! -d "src/${EXTRACTEDDIR}" ; then
echo " * Unpacking '$DOWNLOADEDFILE'..."
if test "$EXTRACTTO" != "" ; then
cd $EXTRACTTO &&
unzip -o $MKPWD/downloads/$DOWNLOADEDFILE >/dev/null &&
cd $MKPWD
else
cd src && \
unzip -o ../downloads/$DOWNLOADEDFILE >/dev/null && \
cd ..
fi
fi
;;
*.tar*|*.tgz)
if test "$EXTRACTEDDIR" = "" ; then
case "$DOWNLOADEDFILE" in
*.tar*) EXTRACTEDDIR=${DOWNLOADEDFILE%%.tar*} ;;
*.tgz) EXTRACTEDDIR=${DOWNLOADEDFILE%%.tgz*} ;;
*) echo "unknown archive type for tar case: '$DOWNLOADEDFILE'"; exit 1; ;;
esac
fi
if test ! -d "src/$EXTRACTEDDIR" ; then
echo " * Unpacking '$DOWNLOADEDFILE'..."
if test "$EXTRACTTO" = "" ; then
EXTRACTTO=src
fi
if test ! -d "$EXTRACTTO" ; then
mkdir -p "$EXTRACTTO";
fi
tar -xf downloads/$DOWNLOADEDFILE --directory=$EXTRACTTO
fi
;;
*) echo "unknown archive type '$DOWNLOADEDFILE'"; exit 1; ;;
esac

11
win32/patches/atk.patch Normal file
View File

@ -0,0 +1,11 @@
diff -upr -x .deps -x .libs -x '*.la' atk-2.10.0.old/atk/atk.symbols atk-2.10.0/atk/atk.symbols
--- atk-2.10.0.old/atk/atk.symbols 2013-09-13 15:00:44 +0000
+++ atk-2.10.0/atk/atk.symbols 2014-05-17 16:34:24 +0000
@@ -107,6 +107,7 @@
atk_object_get_n_accessible_children
atk_object_get_name
atk_object_get_parent
+ atk_object_get_object_locale
atk_object_get_role
atk_object_get_type
atk_object_initialize

18
win32/patches/bison.patch Normal file
View File

@ -0,0 +1,18 @@
diff -upr bison-3.0.2.old/Makefile.am bison-3.0.2/Makefile.am
--- bison-3.0.2.old/Makefile.am 2013-08-02 15:35:13 +0000
+++ bison-3.0.2/Makefile.am 2014-05-08 07:40:11 +0000
@@ -54,12 +54,12 @@ noinst_LIBRARIES =
include build-aux/local.mk
include data/local.mk
include djgpp/local.mk
-include doc/local.mk
+#include doc/local.mk
include etc/local.mk
include examples/local.mk
include lib/local.mk
include src/local.mk
-include tests/local.mk
+#include tests/local.mk
# See comments in build-aux/git-version-gen. However, we make .version depend
# on configure so that .version and VERSION/PACKAGE_VERSION stay in sync in the

202
win32/patches/dbus.patch Normal file
View File

@ -0,0 +1,202 @@
diff -upr -x .deps -x .libs -x '*.la' dbus-1.8.0.old/dbus/Makefile.am dbus-1.8.0/dbus/Makefile.am
--- dbus-1.8.0.old/dbus/Makefile.am 2014-01-20 13:40:21 +0000
+++ dbus-1.8.0/dbus/Makefile.am 2014-08-09 12:50:47 +0000
@@ -304,8 +304,8 @@ if DBUS_WIN
# this code is used, we don't actually need libstdc++.
noinst_LTLIBRARIES += libdbus-init-win.la
libdbus_init_win_la_SOURCES = dbus-init-win.cpp
-libdbus_1_la_LIBADD += libdbus-init-win.la
-libdbus_internal_la_LIBADD += libdbus-init-win.la
+libdbus_1_la_LIBADD += libdbus-init-win.la -lole32
+libdbus_internal_la_LIBADD += libdbus-init-win.la -lole32
endif
noinst_PROGRAMS =
diff -upr -x .deps -x .libs -x '*.la' dbus-1.8.0.old/dbus/dbus-sysdeps-win.c dbus-1.8.0/dbus/dbus-sysdeps-win.c
--- dbus-1.8.0.old/dbus/dbus-sysdeps-win.c 2014-01-07 11:32:53 +0000
+++ dbus-1.8.0/dbus/dbus-sysdeps-win.c 2014-08-09 13:35:34 +0000
@@ -55,6 +55,7 @@
#include <ws2tcpip.h>
#include <wincrypt.h>
#include <iphlpapi.h>
+#include <shlobj.h>
/* Declarations missing in mingw's and windows sdk 7.0 headers */
extern BOOL WINAPI ConvertStringSidToSidA (LPCSTR StringSid, PSID *Sid);
@@ -3379,6 +3380,139 @@ _dbus_lookup_session_address (dbus_bool_
return TRUE;
}
+static char *
+get_special_folder (int csidl)
+{
+ char path[MAX_PATH+1];
+ HRESULT hr;
+ LPITEMIDLIST pidl = NULL;
+ BOOL b;
+ char *retval = NULL;
+
+ hr = SHGetSpecialFolderLocation (NULL, csidl, &pidl);
+ if (hr == S_OK)
+ {
+ b = SHGetPathFromIDListA (pidl, path);
+ if (b)
+ retval = strdup (path);
+ CoTaskMemFree (pidl);
+ }
+ return retval;
+}
+
+static char *
+get_windows_directory_root (void)
+{
+ char windowsdir[MAX_PATH];
+
+ if (GetWindowsDirectory (windowsdir, MAX_PATH))
+ {
+ /* Usually X:\Windows, but in terminal server environments
+ * might be an UNC path, AFAIK.
+ */
+ int len;
+
+ if (!*windowsdir)
+ return strdup("C:\\");
+
+ len = strlen(windowsdir);
+ if (len < MAX_PATH - 1 && windowsdir[len - 1] != '\\' && windowsdir[len - 1] != '/') {
+ char sep[2] = {0, 0}, *p;
+
+ for (p = windowsdir; *p && !*sep; p++) {
+ if (*p == '/' || *p == '\\') {
+ sep[0] = *p;
+ break;
+ }
+ }
+
+ strcat(windowsdir, sep);
+ }
+ return strdup(windowsdir);
+ }
+ else
+ return strdup("C:\\");
+}
+
+static dbus_bool_t
+_dbus_set_user_home (DBusString *homedir)
+{
+ const char *env;
+ char *tmp = NULL;
+
+ env = _dbus_getenv("HOME");
+
+ /* Only believe HOME if it is an absolute path and exists.
+ *
+ * We only do this check on Windows for a couple of reasons.
+ * Historically, we only did it there because we used to ignore $HOME
+ * on UNIX. There are concerns about enabling it now on UNIX because
+ * of things like autofs. In short, if the user has a bogus value in
+ * $HOME then they get what they pay for...
+ */
+ if (env)
+ {
+ /* In case HOME is Unix-style (it happens), convert it to
+ * Windows style.
+ */
+ char *p;
+ tmp = strdup(env);
+ while ((p = strchr(tmp, '/')) != NULL) {
+ *p = '\\';
+ }
+
+ if (!((tmp[0] == '\\' || (((tmp[0] >= 'a' && tmp[0] <= 'z') || (tmp[0] >= 'A' && tmp[0] <= 'Z')) && tmp[1] == ':')) &&
+ GetFileAttributesA (tmp) != INVALID_FILE_ATTRIBUTES &&
+ (GetFileAttributesA (tmp) & FILE_ATTRIBUTE_DIRECTORY) != 0))
+ {
+ env = NULL;
+ free(tmp);
+ tmp = NULL;
+ }
+ }
+
+ if (!tmp)
+ {
+ /* USERPROFILE is probably the closest equivalent to $HOME? */
+ env = _dbus_getenv("USERPROFILE");
+ if (env != NULL)
+ tmp = strdup(env);
+ }
+
+ if (!tmp)
+ tmp = get_special_folder(CSIDL_PROFILE);
+
+ if (!tmp)
+ tmp = get_windows_directory_root();
+
+ if (tmp) {
+ _dbus_string_append (homedir, tmp);
+ free(tmp);
+ return TRUE;
+ }
+
+ return FALSE;
+}
+
+static void
+_dbus_set_homedir_from_drive_and_path_env(DBusString *homedir)
+{
+ const char *homepath;
+ const char *homedrive;
+
+ homedrive = _dbus_getenv("HOMEDRIVE");
+ if (homedrive != NULL && *homedrive != '\0')
+ {
+ _dbus_string_append(homedir,homedrive);
+ }
+
+ homepath = _dbus_getenv("HOMEPATH");
+ if (homepath != NULL && *homepath != '\0')
+ {
+ _dbus_string_append(homedir,homepath);
+ }
+}
+
/**
* Appends the directory in which a keyring for the given credentials
* should be stored. The credentials should have either a Windows or
@@ -3398,8 +3532,6 @@ _dbus_append_keyring_directory_for_crede
{
DBusString homedir;
DBusString dotdir;
- const char *homepath;
- const char *homedrive;
_dbus_assert (credentials != NULL);
_dbus_assert (!_dbus_credentials_are_anonymous (credentials));
@@ -3407,18 +3539,16 @@ _dbus_append_keyring_directory_for_crede
if (!_dbus_string_init (&homedir))
return FALSE;
- homedrive = _dbus_getenv("HOMEDRIVE");
- if (homedrive != NULL && *homedrive != '\0')
- {
- _dbus_string_append(&homedir,homedrive);
- }
+ _dbus_set_homedir_from_drive_and_path_env(&homedir);
+ /* It's a default folder, like X:\, try to use a better one, in user's home directory */
+ if (_dbus_string_get_length(&homedir) <= 3) {
+ _dbus_string_set_length(&homedir, 0);
+ if (!_dbus_set_user_home(&homedir)) {
+ _dbus_string_set_length(&homedir, 0);
+ _dbus_set_homedir_from_drive_and_path_env(&homedir);
+ }
+ }
- homepath = _dbus_getenv("HOMEPATH");
- if (homepath != NULL && *homepath != '\0')
- {
- _dbus_string_append(&homedir,homepath);
- }
-
#ifdef DBUS_ENABLE_EMBEDDED_TESTS
{
const char *override;

View File

@ -0,0 +1,35 @@
diff -upr fontconfig-2.11.0/src/fcatomic.h fontconfig-2.11.0.new/src/fcatomic.h
--- fontconfig-2.11.0/src/fcatomic.h 2013-10-11 03:10:18 +0000
+++ fontconfig-2.11.0.new/src/fcatomic.h 2014-01-10 21:56:13 +0000
@@ -51,6 +51,7 @@
/* mingw32 does not have MemoryBarrier.
* MemoryBarrier may be defined as a macro or a function.
* Just make a failsafe version for ourselves. */
+#undef MemoryBarrier
#ifdef MemoryBarrier
#define HBMemoryBarrier MemoryBarrier
#else
diff -upr fontconfig-2.11.0/test/Makefile fontconfig-2.11.0.new/test/Makefile
--- fontconfig-2.11.0/test/Makefile 2014-01-10 22:09:27 +0000
+++ fontconfig-2.11.0.new/test/Makefile 2014-01-10 22:00:23 +0000
@@ -78,7 +78,7 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = i686-pc-mingw32
host_triplet = i686-pc-mingw32
-check_PROGRAMS = test-migration$(EXEEXT) $(am__EXEEXT_1)
+check_PROGRAMS =
#am__append_1 = test-pthread
subdir = test
DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
diff -upr fontconfig-2.11.0/test/Makefile.in fontconfig-2.11.0.new/test/Makefile.in
--- fontconfig-2.11.0/test/Makefile.in 2013-10-11 04:28:47 +0000
+++ fontconfig-2.11.0.new/test/Makefile.in 2014-01-10 21:59:55 +0000
@@ -78,7 +78,7 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-check_PROGRAMS = test-migration$(EXEEXT) $(am__EXEEXT_1)
+check_PROGRAMS =
@HAVE_PTHREAD_TRUE@am__append_1 = test-pthread
subdir = test
DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \

View File

@ -0,0 +1,18 @@
diff -upr freetype-2.5.2/src/gzip/ftgzip.c freetype-2.5.2.new/src/gzip/ftgzip.c
--- freetype-2.5.2/src/gzip/ftgzip.c 2013-08-29 15:53:13 +0000
+++ freetype-2.5.2.new/src/gzip/ftgzip.c 2014-01-10 20:14:37 +0000
@@ -45,6 +44,14 @@
#error "gzip code does not support PIC yet"
#endif
+#ifndef __int64
+# define __int64 long long
+#endif
+typedef long _off_t;
+typedef _off_t off_t;
+typedef __int64 _off64_t;
+typedef __int64 off64_t;
+
#ifdef FT_CONFIG_OPTION_SYSTEM_ZLIB
#include <zlib.h>

933
win32/patches/gcr.patch Normal file
View File

@ -0,0 +1,933 @@
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/configure.ac gcr-3.10.1/configure.ac
--- gcr-3.10.1.old/configure.ac 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/configure.ac 2014-06-20 21:46:28 +0000
@@ -62,20 +62,44 @@ AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GET
AC_SUBST(GETTEXT_PACKAGE)
AM_GLIB_GNU_GETTEXT
+dnl ******************************
+dnl Check for Win32
+dnl ******************************
+AC_MSG_CHECKING([for Win32])
+case "$host" in
+*-mingw*)
+ os_win32='yes'
+ AC_CACHE_VAL(ac_cv_have_addrinfo, [ac_cv_have_addrinfo=yes])
+ AC_DEFINE(_WIN32_WINNT, 0x501, [To get getaddrinfo etc declarations])
+ ;;
+*)
+ os_win32='no'
+ ;;
+esac
+AC_MSG_RESULT([$os_win32])
+AM_CONDITIONAL(OS_WIN32, [test $os_win32 = yes])
+
# -----------------------------------------------------------------------------
# GLib and GTK+ stuff
+GIO_PLAT=
+if test "$os_win32" = "yes" ; then
+ GIO_PLAT=gio-windows-2.0
+else
+ GIO_PLAT=gio-unix-2.0
+fi
+
PKG_CHECK_MODULES(GLIB,
glib-2.0 >= 2.32.0
gmodule-no-export-2.0
gthread-2.0
gobject-2.0
- gio-2.0 gio-unix-2.0)
+ gio-2.0 $GIO_PLAT)
AC_SUBST(GLIB_CFLAGS)
AC_SUBST(GLIB_LIBS)
GLIB_GSETTINGS
-GOBJECT_INTROSPECTION_CHECK([1.34])
+dnl GOBJECT_INTROSPECTION_CHECK([1.34])
AC_PATH_PROG(GLIB_GENMARSHAL, glib-genmarshal)
AC_PATH_PROG(GLIB_MKENUMS, glib-mkenums)
@@ -107,7 +131,7 @@ fi
VALA_REQUIRED=0.18.0.22
-VAPIGEN_CHECK($VALA_REQUIRED)
+dnl VAPIGEN_CHECK($VALA_REQUIRED)
if test "$enable_vala" != "no"; then
AC_PATH_PROG([VALAC], [valac], [])
@@ -120,6 +144,8 @@ AM_CONDITIONAL(HAVE_VALAC, test "x$VALAC
AC_CHECK_FUNCS(timegm, AC_DEFINE(HAVE_TIMEGM,1,[Have timegm]))
AC_CHECK_FUNCS(mlock)
+AC_CHECK_FUNCS(gmtime_r strptime memrchr)
+AC_CHECK_HEADERS([err.h pwd.h syslog.h sys/mman.h sys/wait.h])
# --------------------------------------------------------------------
# p11-kit
@@ -370,6 +396,9 @@ else
valgrind_status="no"
fi
+AM_CONDITIONAL(HAVE_INTROSPECTION, test "yes" = "no")
+AM_CONDITIONAL(ENABLE_VAPIGEN, test "yes" = "no")
+
# ----------------------------------------------------------------------
GCK_LT_RELEASE=$GCK_CURRENT:$GCK_REVISION:$GCK_AGE
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/egg/egg-armor.c gcr-3.10.1/egg/egg-armor.c
--- gcr-3.10.1.old/egg/egg-armor.c 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/egg/egg-armor.c 2014-06-20 21:46:28 +0000
@@ -60,6 +60,29 @@ EGG_SECURE_DECLARE (armor);
#define ARMOR_PREF_END "-----END "
#define ARMOR_PREF_END_L 9
+#ifndef HAVE_MEMRCHR
+extern void* memrchr (const void *s, int c, size_t n);
+
+void*
+memrchr (const void *s, int c, size_t n)
+{
+ if (n > 0) {
+ const char* p = (const char*) s;
+ const char* q = p + n;
+
+ while (1) {
+ q--; if (q < p || q[0] == (char) c) break;
+ q--; if (q < p || q[0] == (char) c) break;
+ q--; if (q < p || q[0] == (char) c) break;
+ q--; if (q < p || q[0] == (char) c) break;
+ }
+ if (q >= p)
+ return (void*)q;
+ }
+ return NULL;
+}
+#endif
+
static void
parse_header_lines (const gchar *hbeg,
const gchar *hend,
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/egg/egg-asn1x.c gcr-3.10.1/egg/egg-asn1x.c
--- gcr-3.10.1.old/egg/egg-asn1x.c 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/egg/egg-asn1x.c 2014-06-20 21:46:28 +0000
@@ -1929,7 +1929,7 @@ static int
two_to_four_digit_year (int year)
{
time_t now;
- struct tm tm;
+ GDate *date;
int century, current;
g_return_val_if_fail (year >= 0 && year <= 99, -1);
@@ -1937,11 +1937,15 @@ two_to_four_digit_year (int year)
/* Get the current year */
now = time (NULL);
g_return_val_if_fail (now >= 0, -1);
- if (!gmtime_r (&now, &tm))
+ date = g_date_new ();
+ g_date_set_time_t (date, now);
+ if (!g_date_valid (date))
g_return_val_if_reached (-1);
- current = (tm.tm_year % 100);
- century = (tm.tm_year + 1900) - current;
+ century = (g_date_get_year (date) / 100) * 100;
+ current = g_date_get_year (date) - century;
+
+ g_date_free (date);
/*
* Check if it's within 40 years before the
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/egg/egg-secure-memory.c gcr-3.10.1/egg/egg-secure-memory.c
--- gcr-3.10.1.old/egg/egg-secure-memory.c 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/egg/egg-secure-memory.c 2014-06-20 21:46:28 +0000
@@ -32,7 +32,9 @@
#include "egg-secure-memory.h"
#include <sys/types.h>
+#ifdef HAVE_SYS_MMAN_H
#include <sys/mman.h>
+#endif
#include <stddef.h>
#include <string.h>
#include <stdio.h>
@@ -188,9 +190,11 @@ pool_alloc (void)
/* Create a new pool */
if (pool == NULL) {
+#if !defined(_WIN32)
len = getpagesize () * 2;
pages = mmap (0, len, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0);
if (pages == MAP_FAILED)
+#endif
return NULL;
/* Fill in the block header, and inlude in block list */
@@ -254,7 +258,9 @@ pool_free (void* item)
VALGRIND_DESTROY_MEMPOOL (pool);
#endif
+#if !defined(_WIN32)
munmap (pool, pool->length);
+#endif
return;
}
@@ -860,11 +866,11 @@ sec_acquire_pages (size_t *sz,
ASSERT (*sz);
ASSERT (during_tag);
+#if defined(HAVE_MLOCK)
/* Make sure sz is a multiple of the page size */
pgsize = getpagesize ();
*sz = (*sz + pgsize -1) & ~(pgsize - 1);
-#if defined(HAVE_MLOCK)
pages = mmap (0, *sz, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0);
if (pages == MAP_FAILED) {
if (show_warning && egg_secure_warnings)
@@ -902,9 +908,9 @@ static void
sec_release_pages (void *pages, size_t sz)
{
ASSERT (pages);
- ASSERT (sz % getpagesize () == 0);
#if defined(HAVE_MLOCK)
+ ASSERT (sz % getpagesize () == 0);
if (munlock (pages, sz) < 0 && egg_secure_warnings)
fprintf (stderr, "couldn't unlock private memory: %s\n", strerror (errno));
@@ -914,7 +920,7 @@ sec_release_pages (void *pages, size_t s
DEBUG_ALLOC ("gkr-secure-memory: freed block ", sz);
#else
- ASSERT (FALSE);
+ ASSERT (0);
#endif
}
@@ -937,6 +943,11 @@ sec_block_create (size_t size,
if (getenv ("SECMEM_FORCE_FALLBACK"))
return NULL;
+#ifdef _WIN32
+ /* win32 does not have mlock(), so just fail in that case */
+ return NULL;
+#endif
+
block = pool_alloc ();
if (!block)
return NULL;
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/egg/tests/test-asn1x.c gcr-3.10.1/egg/tests/test-asn1x.c
--- gcr-3.10.1.old/egg/tests/test-asn1x.c 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/egg/tests/test-asn1x.c 2014-06-20 21:46:28 +0000
@@ -27,7 +27,9 @@
#include "egg/egg-asn1-defs.h"
#include "egg/egg-testing.h"
+#ifdef HAVE_PWD_H
#include <pwd.h>
+#endif
#include <stdlib.h>
#include <unistd.h>
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/gck/Makefile.am gcr-3.10.1/gck/Makefile.am
--- gcr-3.10.1.old/gck/Makefile.am 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/gck/Makefile.am 2014-06-20 21:46:28 +0000
@@ -1,6 +1,6 @@
include $(top_srcdir)/Makefile.decl
-SUBDIRS = . tests
+SUBDIRS = .
incdir = $(includedir)/gck-@GCK_MAJOR@/gck
@@ -77,16 +77,6 @@ libgck_@GCK_MAJOR@_la_LIBADD = \
$(GIO_LIBS) \
$(GLIB_LIBS)
-noinst_LTLIBRARIES = libgck-testable.la
-libgck_testable_la_SOURCES = \
- gck-mock.c \
- gck-mock.h \
- gck-test.c \
- gck-test.h
-libgck_testable_la_LIBADD = $(libgck_@GCK_MAJOR@_la_OBJECTS) \
- $(libgck_@GCK_MAJOR@_la_LIBADD)
-libgck_testable_la_DEPENDENCIES = $(libgck_@GCK_MAJOR@_la_OBJECTS)
-
gck-marshal.h: gck-marshal.list $(GLIB_GENMARSHAL)
$(GLIB_GENMARSHAL) $< --header --prefix=_gck_marshal > $@
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/gck/gck-debug.c gcr-3.10.1/gck/gck-debug.c
--- gcr-3.10.1.old/gck/gck-debug.c 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/gck/gck-debug.c 2014-06-20 21:46:28 +0000
@@ -33,6 +33,11 @@
#include <unistd.h>
+#ifdef G_OS_WIN32
+
+#include <windows.h>
+#endif
+
#ifdef WITH_DEBUG
static gsize initialized_flags = 0;
@@ -69,21 +74,30 @@ on_gck_log_debug (const gchar *log_domai
{
GString *gstring;
const gchar *progname;
+#ifdef G_OS_WIN32
+ DWORD pid = GetCurrentProcessId ();
+#else
+ pid_t pid = getpid ();
+#endif
gstring = g_string_new (NULL);
progname = g_get_prgname ();
g_string_append_printf (gstring, "(%s:%lu): %s-DEBUG: %s\n",
progname ? progname : "process",
- (gulong)getpid (), log_domain,
+ (gulong) pid, log_domain,
message ? message : "(NULL) message");
+
+#ifdef G_OS_WIN32
+ g_print ("%s", gstring->str);
+#else
/*
* Give up on debug messages if stdout got lost.
*/
if (write (1, gstring->str, gstring->len) != gstring->len)
current_flags = 0;
-
+#endif
g_string_free (gstring, TRUE);
}
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/gck/gck-slot.c gcr-3.10.1/gck/gck-slot.c
--- gcr-3.10.1.old/gck/gck-slot.c 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/gck/gck-slot.c 2014-06-20 21:46:28 +0000
@@ -606,7 +606,7 @@ _gck_token_info_from_pkcs11 (CK_TOKEN_IN
{
GckTokenInfo *token_info;
gchar *string;
- struct tm tm;
+ GTimeVal tv;
token_info = g_new0 (GckTokenInfo, 1);
token_info->label = gck_string_from_chars (info->label, sizeof (info->label));
@@ -634,10 +634,12 @@ _gck_token_info_from_pkcs11 (CK_TOKEN_IN
/* Parse the time into seconds since epoch */
if (info->flags & CKF_CLOCK_ON_TOKEN) {
string = g_strndup ((gchar*)info->utcTime, MIN (14, sizeof (info->utcTime)));
- if (!strptime (string, "%Y%m%d%H%M%S", &tm))
+ /* Transform into an ISO-8601 string */
+ string = g_strconcat (g_strndup (string,8), "T", g_strndup (string+8,6), "Z", NULL);
+ if (!g_time_val_from_iso8601 (string, &tv))
token_info->utc_time = -1;
else
- token_info->utc_time = timegm (&tm);
+ token_info->utc_time = tv.tv_sec;
g_free (string);
} else {
token_info->utc_time = -1;
@@ -649,8 +651,8 @@ _gck_token_info_from_pkcs11 (CK_TOKEN_IN
void
_gck_token_info_to_pkcs11 (GckTokenInfo *token_info, CK_TOKEN_INFO_PTR info)
{
- gchar buffer[64];
- struct tm tm;
+ gchar *buffer;
+ GDateTime *datetime = NULL;
time_t tim;
gsize len;
@@ -690,9 +692,12 @@ _gck_token_info_to_pkcs11 (GckTokenInfo
/* Parse the time into seconds since epoch */
if (token_info->flags & CKF_CLOCK_ON_TOKEN) {
tim = token_info->utc_time;
- if (!gmtime_r (&tim, &tm))
+ datetime = g_date_time_new_from_unix_utc (tim);
+ if (datetime == NULL)
g_return_if_reached ();
- len = strftime (buffer, sizeof (buffer), "%Y%m%d%H%M%S", &tm);
+ buffer = g_date_time_format (datetime, "%Y%m%d%H%M%S");
+ len = strlen (buffer);
+ g_date_time_unref (datetime);
g_return_if_fail (len == sizeof (info->utcTime));
memcpy (info->utcTime, buffer, sizeof (info->utcTime));
} else {
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/gck/tests/test-gck-crypto.c gcr-3.10.1/gck/tests/test-gck-crypto.c
--- gcr-3.10.1.old/gck/tests/test-gck-crypto.c 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/gck/tests/test-gck-crypto.c 2014-06-20 21:46:28 +0000
@@ -57,7 +57,11 @@ setup (Test *test, gconstpointer unused)
GckSlot *slot;
/* Successful load */
+#ifdef G_OS_WIN32
+ test->module = gck_module_initialize (BUILDDIR "/.libs/libmock-test-module.dll", NULL, &err);
+#else
test->module = gck_module_initialize (BUILDDIR "/.libs/libmock-test-module.so", NULL, &err);
+#endif
g_assert_no_error (err);
g_assert (GCK_IS_MODULE (test->module));
g_object_add_weak_pointer (G_OBJECT (test->module), (gpointer *)&test->module);
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/gck/tests/test-gck-enumerator.c gcr-3.10.1/gck/tests/test-gck-enumerator.c
--- gcr-3.10.1.old/gck/tests/test-gck-enumerator.c 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/gck/tests/test-gck-enumerator.c 2014-06-20 21:46:28 +0000
@@ -50,7 +50,11 @@ setup (Test *test, gconstpointer unused)
GError *err = NULL;
/* Successful load */
+#ifdef G_OS_WIN32
+ test->module = gck_module_initialize (BUILDDIR "/.libs/libmock-test-module.dll", NULL, &err);
+#else
test->module = gck_module_initialize (BUILDDIR "/.libs/libmock-test-module.so", NULL, &err);
+#endif
g_assert_no_error (err);
g_assert (GCK_IS_MODULE (test->module));
g_object_add_weak_pointer (G_OBJECT (test->module), (gpointer *)&test->module);
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/gck/tests/test-gck-module.c gcr-3.10.1/gck/tests/test-gck-module.c
--- gcr-3.10.1.old/gck/tests/test-gck-module.c 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/gck/tests/test-gck-module.c 2014-06-20 21:46:28 +0000
@@ -42,7 +42,11 @@ setup (Test *test, gconstpointer unused)
GError *err = NULL;
/* Successful load */
+#ifdef G_OS_WIN32
+ test->module = gck_module_initialize (BUILDDIR "/.libs/libmock-test-module.dll", NULL, &err);
+#else
test->module = gck_module_initialize (BUILDDIR "/.libs/libmock-test-module.so", NULL, &err);
+#endif
g_assert_no_error (err);
g_assert (test->module);
g_object_add_weak_pointer (G_OBJECT (test->module), (gpointer *)&test->module);
@@ -71,7 +75,11 @@ test_initialize_async (void)
GError *error = NULL;
/* Shouldn't be able to load modules */
+#ifdef G_OS_WIN32
+ gck_module_initialize_async (BUILDDIR "/.libs/libmock-test-module.dll",
+#else
gck_module_initialize_async (BUILDDIR "/.libs/libmock-test-module.so",
+#endif
NULL, fetch_async_result, &result);
egg_test_wait_until (500);
@@ -101,7 +109,11 @@ test_invalid_modules (Test *test, gconst
g_clear_error (&error);
/* Shouldn't be able to load any file successfully */
+#ifdef G_OS_WIN32
+ invalid = gck_module_initialize ("c:\\windows\\system32\\shell32.dll", NULL, &error);
+#else
invalid = gck_module_initialize ("/usr/lib/libm.so", NULL, &error);
+#endif
g_assert_error (error, GCK_ERROR, (int)CKR_GCK_MODULE_PROBLEM);
g_assert (invalid == NULL);
@@ -139,7 +151,11 @@ test_module_props (Test *test, gconstpoi
g_object_get (test->module, "path", &path, NULL);
g_assert (path != NULL && "no module-path");
+#ifdef G_OS_WIN32
+ g_assert (strcmp (BUILDDIR "/.libs/libmock-test-module.dll", path) == 0 && "module path wrong");
+#else
g_assert (strcmp (BUILDDIR "/.libs/libmock-test-module.so", path) == 0 && "module path wrong");
+#endif
g_free (path);
}
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/gck/tests/test-gck-modules.c gcr-3.10.1/gck/tests/test-gck-modules.c
--- gcr-3.10.1.old/gck/tests/test-gck-modules.c 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/gck/tests/test-gck-modules.c 2014-06-20 21:46:28 +0000
@@ -48,7 +48,11 @@ setup (Test *test, gconstpointer unused)
GError *err = NULL;
/* Successful load */
+#ifdef G_OS_WIN32
+ module = gck_module_initialize (BUILDDIR "/.libs/libmock-test-module.dll", NULL, &err);
+#else
module = gck_module_initialize (BUILDDIR "/.libs/libmock-test-module.so", NULL, &err);
+#endif
g_assert_no_error (err);
g_assert (GCK_IS_MODULE (module));
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/gck/tests/test-gck-object.c gcr-3.10.1/gck/tests/test-gck-object.c
--- gcr-3.10.1.old/gck/tests/test-gck-object.c 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/gck/tests/test-gck-object.c 2014-06-20 21:46:28 +0000
@@ -50,7 +50,11 @@ setup (Test *test, gconstpointer unused)
GList *slots;
/* Successful load */
+#ifdef G_OS_WIN32
+ test->module = gck_module_initialize (BUILDDIR "/.libs/libmock-test-module.dll", NULL, &err);
+#else
test->module = gck_module_initialize (BUILDDIR "/.libs/libmock-test-module.so", NULL, &err);
+#endif
g_assert_no_error (err);
g_assert (GCK_IS_MODULE (test->module));
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/gck/tests/test-gck-session.c gcr-3.10.1/gck/tests/test-gck-session.c
--- gcr-3.10.1.old/gck/tests/test-gck-session.c 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/gck/tests/test-gck-session.c 2014-06-20 21:46:28 +0000
@@ -50,7 +50,11 @@ setup (Test *test, gconstpointer unused)
GList *slots;
/* Successful load */
+#ifdef G_OS_WIN32
+ test->module = gck_module_initialize (BUILDDIR "/.libs/libmock-test-module.dll", NULL, &err);
+#else
test->module = gck_module_initialize (BUILDDIR "/.libs/libmock-test-module.so", NULL, &err);
+#endif
g_assert_no_error (err);
g_assert (GCK_IS_MODULE (test->module));
g_object_add_weak_pointer (G_OBJECT (test->module), (gpointer *)&test->module);
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/gck/tests/test-gck-slot.c gcr-3.10.1/gck/tests/test-gck-slot.c
--- gcr-3.10.1.old/gck/tests/test-gck-slot.c 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/gck/tests/test-gck-slot.c 2014-06-20 21:46:28 +0000
@@ -43,7 +43,11 @@ setup (Test *test, gconstpointer unused)
GList *slots;
/* Successful load */
+#ifdef G_OS_WIN32
+ test->module = gck_module_initialize (BUILDDIR "/.libs/libmock-test-module.dll", NULL, &err);
+#else
test->module = gck_module_initialize (BUILDDIR "/.libs/libmock-test-module.so", NULL, &err);
+#endif
g_assert_no_error (err);
g_assert (GCK_IS_MODULE (test->module));
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/gcr/Makefile.am gcr-3.10.1/gcr/Makefile.am
--- gcr-3.10.1.old/gcr/Makefile.am 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/gcr/Makefile.am 2014-06-20 21:46:28 +0000
@@ -1,6 +1,6 @@
include $(top_srcdir)/Makefile.decl
-SUBDIRS = . tests
+SUBDIRS = .
incdir = $(includedir)/gcr-@GCR_MAJOR@/gcr
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/gcr/gcr-gnupg-collection.c gcr-3.10.1/gcr/gcr-gnupg-collection.c
--- gcr-3.10.1.old/gcr/gcr-gnupg-collection.c 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/gcr/gcr-gnupg-collection.c 2014-06-20 21:46:28 +0000
@@ -36,7 +36,9 @@
#include "gcr-record.h"
#include "gcr-util.h"
+#ifdef HAVE_SYS_WAIT_H
#include <sys/wait.h>
+#endif
#include <string.h>
enum {
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/gcr/gcr-gnupg-process.c gcr-3.10.1/gcr/gcr-gnupg-process.c
--- gcr-3.10.1.old/gcr/gcr-gnupg-process.c 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/gcr/gcr-gnupg-process.c 2014-06-20 21:46:28 +0000
@@ -31,7 +31,12 @@
#include <glib/gi18n-lib.h>
+#ifdef HAVE_SYS_WAIT_H
#include <sys/wait.h>
+#endif
+#ifdef G_OS_WIN32
+#include <windows.h>
+#endif
#include <fcntl.h>
#include <errno.h>
#include <string.h>
@@ -854,12 +859,18 @@ on_gnupg_process_child_exited (GPid pid,
gint code;
guint i;
+#if defined (G_OS_UNIX)
_gcr_debug ("process exited: %d", (int)pid);
+#elif defined (G_OS_WIN32)
+ DWORD real_pid = GetProcessId (pid);
+ _gcr_debug ("process exited: %d", (int)real_pid);
+#endif
g_spawn_close_pid (gnupg_source->child_pid);
gnupg_source->child_pid = 0;
gnupg_source->child_sig = 0;
+#ifndef G_OS_WIN32
if (WIFEXITED (status)) {
code = WEXITSTATUS (status);
if (code != 0) {
@@ -873,6 +884,7 @@ on_gnupg_process_child_exited (GPid pid,
error = g_error_new (G_SPAWN_ERROR, G_SPAWN_ERROR_FAILED,
_("Gnupg process was terminated with signal: %d"), code);
}
+#endif
/* Take this as the async result error */
if (error && !self->pv->error) {
@@ -891,11 +903,16 @@ on_gnupg_process_child_exited (GPid pid,
}
complete_source_is_done (gnupg_source);
+
+#ifdef G_OS_WIN32
+ g_spawn_close_pid (pid);
+#endif
}
static void
on_gnupg_process_child_setup (gpointer user_data)
{
+#ifdef G_OS_UNIX
int *child_fds = user_data;
long val;
guint i;
@@ -911,6 +928,7 @@ on_gnupg_process_child_setup (gpointer u
fcntl (child_fds[i], F_SETFD, val & ~FD_CLOEXEC);
}
}
+#endif
}
static void
@@ -929,9 +947,16 @@ on_cancellable_cancelled (GCancellable *
/* Try and kill the child process */
if (gnupg_source->child_pid) {
+#if defined(G_OS_UNIX)
_gcr_debug ("sending term signal to process: %d",
(int)gnupg_source->child_pid);
kill (gnupg_source->child_pid, SIGTERM);
+#elif defined(G_OS_WIN32)
+ DWORD real_pid = GetProcessId (gnupg_source->child_pid);
+ _gcr_debug ("sending term signal to process: %d",
+ (int)real_pid);
+ TerminateProcess (gnupg_source->child_pid, 0);
+#endif
}
}
@@ -1000,14 +1025,22 @@ _gcr_gnupg_process_run_async (GcrGnupgPr
child_fds[FD_ERROR] = 2;
if (flags & GCR_GNUPG_PROCESS_WITH_STATUS) {
+#if defined(G_OS_UNIX)
if (pipe (status_fds) < 0)
+#elif defined(G_OS_WIN32)
+ if (_pipe (status_fds, 4096, _O_BINARY) < 0)
+#endif
g_return_if_reached ();
child_fds[FD_STATUS] = status_fds[1];
g_ptr_array_add (args, g_strdup ("--status-fd"));
g_ptr_array_add (args, g_strdup_printf ("%d", child_fds[FD_STATUS]));
}
if (flags & GCR_GNUPG_PROCESS_WITH_ATTRIBUTES) {
+#if defined(G_OS_UNIX)
if (pipe (attribute_fds) < 0)
+#elif defined(G_OS_WIN32)
+ if (_pipe (attribute_fds, 4096, _O_BINARY) < 0)
+#endif
g_return_if_reached ();
child_fds[FD_ATTRIBUTE] = attribute_fds[1];
g_ptr_array_add (args, g_strdup ("--attribute-fd"));
@@ -1036,11 +1069,11 @@ _gcr_gnupg_process_run_async (GcrGnupgPr
if (_gcr_debugging) {
gchar *command = g_strjoinv (" ", (gchar**)args->pdata);
- gchar *environ = g_strjoinv (", ", (gchar**)envs->pdata);
+ gchar *environment = g_strjoinv (", ", (gchar**)envs->pdata);
_gcr_debug ("running command: %s", command);
- _gcr_debug ("process environment: %s", environ);
+ _gcr_debug ("process environment: %s", environment);
g_free (command);
- g_free (environ);
+ g_free (environment);
}
g_spawn_async_with_pipes (self->pv->directory, (gchar**)args->pdata,
@@ -1068,7 +1101,12 @@ _gcr_gnupg_process_run_async (GcrGnupgPr
return;
}
+#if defined (G_OS_UNIX)
_gcr_debug ("process started: %d", (int)pid);
+#elif defined (G_OS_WIN32)
+ DWORD real_pid = GetProcessId (pid);
+ _gcr_debug ("process started: %d", (int)real_pid);
+#endif
source = g_source_new (&gnupg_source_funcs, sizeof (GnupgSource));
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/gcr/gcr-record.c gcr-3.10.1/gcr/gcr-record.c
--- gcr-3.10.1.old/gcr/gcr-record.c 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/gcr/gcr-record.c 2014-06-20 21:46:28 +0000
@@ -597,7 +597,9 @@ _gcr_record_get_date (GcrRecord *record,
const gchar *raw;
gulong result;
gchar *end = NULL;
- struct tm tm;
+ gchar **string;
+ int year, month, day;
+ GDateTime *dt = NULL;
g_return_val_if_fail (record, NULL);
@@ -615,14 +617,20 @@ _gcr_record_get_date (GcrRecord *record,
}
/* Try to parse as a date */
- memset (&tm, 0, sizeof (tm));
- end = strptime (raw, "%Y-%m-%d", &tm);
- if (!end || end[0]) {
+ string = g_strsplit (raw, "-", 3);
+ if ((string[0] != NULL) && (string[1] != NULL) && (string[2] != NULL)) {
+ year = strtol (string[0], NULL, 10);
+ month = strtol (string[1], NULL, 10);
+ day = strtol (string[2], NULL, 10);
+ dt = g_date_time_new_utc (year, month, day, 0, 0, 0);
+ }
+ g_strfreev (string);
+ if (dt == NULL) {
_gcr_debug ("invalid date value: %s", raw);
return NULL;
}
- return g_date_time_new_utc (tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday, 0, 0, 0);
+ return dt;
}
/**
@@ -860,4 +868,4 @@ _gcr_records_parse_colons (gconstpointer
g_free (lines);
return result;
-}
+}
\ No newline at end of file
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/ui/Makefile.am gcr-3.10.1/ui/Makefile.am
--- gcr-3.10.1.old/ui/Makefile.am 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/ui/Makefile.am 2014-06-20 21:46:28 +0000
@@ -1,6 +1,6 @@
include $(top_srcdir)/Makefile.decl
-SUBDIRS = . icons tests
+SUBDIRS = . icons
incdir = $(includedir)/gcr-@GCR_MAJOR@/ui
@@ -51,11 +51,13 @@ libgcr_ui_@GCR_MAJOR@_la_LIBADD = \
$(GTK_LIBS) \
$(NULL)
+if !OS_WIN32
# libgcr-3.so (and friends) symlink to libgcr-ui-3.so for compatibility raisons
install-exec-hook:
$(LN_S) -f `readlink $(DESTDIR)$(libdir)/libgcr-ui-@GCR_MAJOR@.so` $(DESTDIR)$(libdir)/libgcr-@GCR_MAJOR@.so
$(LN_S) -f `readlink $(DESTDIR)$(libdir)/libgcr-ui-@GCR_MAJOR@.so` $(DESTDIR)$(libdir)/libgcr-@GCR_MAJOR@.so.@GCR_CURRENT@
$(LN_S) -f `readlink $(DESTDIR)$(libdir)/libgcr-ui-@GCR_MAJOR@.so` $(DESTDIR)$(libdir)/libgcr-@GCR_MAJOR@.so.@GCR_CURRENT@.0.0
+endif
uidir = $(datadir)/gcr-@GCR_MAJOR@/ui/
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/ui/gcr-prompt-dialog.c gcr-3.10.1/ui/gcr-prompt-dialog.c
--- gcr-3.10.1.old/ui/gcr-prompt-dialog.c 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/ui/gcr-prompt-dialog.c 2014-06-20 21:46:28 +0000
@@ -31,7 +31,13 @@
#include "gcr-secure-entry-buffer.h"
#include <gtk/gtk.h>
+#if defined(GDK_WINDOWING_X11)
#include <gdk/gdkx.h>
+#endif
+#if defined(GDK_WINDOWING_WIN32)
+#include <gdk/gdkwin32.h>
+#include <windows.h>
+#endif
#include <glib/gi18n.h>
/**
@@ -152,12 +158,21 @@ update_transient_for (GcrPromptDialog *s
}
display = gtk_widget_get_display (GTK_WIDGET (self));
+#if defined(GDK_WINDOWING_X11)
transient_for = gdk_x11_window_foreign_new_for_display (display, (Window)handle);
+#elif defined(GDK_WINDOWING_WIN32)
+ transient_for = gdk_win32_window_foreign_new_for_display (display, (HWND)handle);
+#endif
if (transient_for == NULL) {
g_warning ("caller-window property doesn't represent a window on current display: %s",
self->pv->caller_window);
} else {
+#if defined(GDK_WINDOWING_X11)
gdk_window_set_transient_for (window, transient_for);
+#elif defined(GDK_WINDOWING_WIN32)
+ HWND chandle = gdk_win32_window_get_handle (window);
+ SetWindowLongPtr (chandle, GWLP_HWNDPARENT, (LONG_PTR)handle);
+#endif
g_object_unref (transient_for);
}
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/ui/gcr-prompter-tool.c gcr-3.10.1/ui/gcr-prompter-tool.c
--- gcr-3.10.1.old/ui/gcr-prompter-tool.c 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/ui/gcr-prompter-tool.c 2014-06-20 21:46:28 +0000
@@ -30,13 +30,17 @@
#include <glib/gi18n.h>
#include <gtk/gtk.h>
+#ifdef GDK_WINDOWING_X11
#include <gdk/gdkx.h>
+#endif
#include <pango/pango.h>
#include <locale.h>
#include <stdlib.h>
#include <string.h>
+#ifdef HAVE_SYSLOG_H
#include <syslog.h>
+#endif
#define QUIT_TIMEOUT 10
@@ -138,6 +142,7 @@ log_handler (const gchar *log_domain,
const gchar *message,
gpointer user_data)
{
+#ifdef HAVE_SYSLOG_H
int level;
/* Note that crit and err are the other way around in syslog */
@@ -171,6 +176,7 @@ log_handler (const gchar *log_domain,
syslog (level, "%s: %s", log_domain, message);
else
syslog (level, "%s", message);
+#endif
/* And then to default handler for aborting and stuff like that */
g_log_default_handler (log_domain, log_level, message, user_data);
@@ -179,9 +185,11 @@ log_handler (const gchar *log_domain,
static void
printerr_handler (const gchar *string)
{
+#ifdef HAVE_SYSLOG_H
/* Print to syslog and stderr */
syslog (LOG_WARNING, "%s", string);
fprintf (stderr, "%s", string);
+#endif
}
static void
@@ -191,7 +199,9 @@ prepare_logging ()
G_LOG_LEVEL_CRITICAL | G_LOG_LEVEL_WARNING |
G_LOG_LEVEL_MESSAGE | G_LOG_LEVEL_INFO;
+#ifdef HAVE_SYSLOG_H
openlog ("gcr-prompter", LOG_PID, LOG_AUTH);
+#endif
g_log_set_handler (NULL, flags, log_handler, NULL);
g_log_set_handler ("Glib", flags, log_handler, NULL);
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/ui/gcr-ui.pc.in gcr-3.10.1/ui/gcr-ui.pc.in
--- gcr-3.10.1.old/ui/gcr-ui.pc.in 2013-04-21 12:31:47 +0000
+++ gcr-3.10.1/ui/gcr-ui.pc.in 2014-06-20 22:22:58 +0000
@@ -11,5 +11,5 @@ Description: GObject and GUI library for
Version: @VERSION@
Requires: glib-2.0 gobject-2.0 gio-2.0 gtk+-3.0 gcr-base-@GCR_MAJOR@ gck-@GCK_MAJOR@
Requires.private: p11-kit-1
-Libs: -L${libdir} -lgcr-@GCR_MAJOR@
+Libs: -L${libdir} -lgcr-ui-@GCR_MAJOR@
Cflags: -I${includedir}/gcr-@GCR_MAJOR@
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/ui/tests/frob-prompt.c gcr-3.10.1/ui/tests/frob-prompt.c
--- gcr-3.10.1.old/ui/tests/frob-prompt.c 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/ui/tests/frob-prompt.c 2014-06-20 21:46:28 +0000
@@ -27,15 +27,45 @@
#include "gcr/gcr-base.h"
#include <gtk/gtk.h>
+#ifdef GDK_WINDOWING_X11
#include <gdk/gdkx.h>
+#endif
+#ifdef GDK_WINDOWING_WIN32
+#include <gdk/gdkwin32.h>
+#endif
+#ifdef HAVE_ERR_H
#include <err.h>
+#else
+#include <errno.h>
+#endif
+#include <stdlib.h>
static const gchar *file_name = NULL;
static gchar *prompt_type = NULL;
static gint prompt_delay = 0;
static gboolean prompt_window = FALSE;
+#ifndef HAVE_ERR_H
+extern void errx (int eval, char *format, ...);
+
+void errx (int eval, char *format, ...)
+{
+ gchar *err_s;
+
+ va_list ap;
+ va_start (ap, format);
+ vsprintf (err_s, format, ap);
+ va_end (ap);
+
+ err_s = g_strconcat (g_get_prgname (), ": ", g_strdup (err_s), "\n", NULL);
+ g_printerr (err_s);
+ g_free (err_s);
+
+ exit (eval);
+}
+#endif
+
static gboolean
on_delay_timeout (gpointer data)
{
@@ -80,7 +110,11 @@ prompt_perform (GtkWidget *parent)
errx (1, "couldn't create prompt: %s", error->message);
if (parent) {
+#if defined(GDK_WINDOWING_X11)
caller_id = g_strdup_printf ("%lu", (gulong)GDK_WINDOW_XID (gtk_widget_get_window (parent)));
+#elif defined(GDK_WINDOWING_WIN32)
+ caller_id = g_strdup_printf ("%lu", (gulong)GDK_WINDOW_HWND (gtk_widget_get_window (parent)));
+#endif
gcr_prompt_set_caller_window (GCR_PROMPT (prompt), caller_id);
g_free (caller_id);
}
diff -upr -x .deps -x .libs -x '*.la' gcr-3.10.1.old/ui/tests/frob-system-prompt.c gcr-3.10.1/ui/tests/frob-system-prompt.c
--- gcr-3.10.1.old/ui/tests/frob-system-prompt.c 2014-06-20 22:20:25 +0000
+++ gcr-3.10.1/ui/tests/frob-system-prompt.c 2014-06-20 21:46:28 +0000
@@ -28,7 +28,12 @@
#include "egg/egg-testing.h"
#include <gtk/gtk.h>
+#ifdef GDK_WINDOWING_X11
#include <gdk/gdkx.h>
+#endif
+#ifdef GDK_WINDOWING_WIN32
+#include <gdk/gdkwin32.h>
+#endif
#include <unistd.h>
#include <string.h>
@@ -56,7 +61,11 @@ on_prompt_clicked (GtkToolButton *button
gcr_prompt_set_message (GCR_PROMPT (prompt), "This is the message");
gcr_prompt_set_description (GCR_PROMPT (prompt), "This is the description");
+#if defined(GDK_WINDOWING_X11)
caller_id = g_strdup_printf ("%lu", (gulong)GDK_WINDOW_XID (gtk_widget_get_window (parent)));
+#elif defined(GDK_WINDOWING_WIN32)
+ caller_id = g_strdup_printf ("%lu", (gulong)GDK_WINDOW_HWND (gtk_widget_get_window (parent)));
+#endif
gcr_prompt_set_caller_window (GCR_PROMPT (prompt), caller_id);
g_free (caller_id);

View File

@ -0,0 +1,97 @@
diff -upr gettext-0.18.3.1.old/gettext-tools/gnulib-lib/Makefile gettext-0.18.3.1/gettext-tools/gnulib-lib/Makefile
--- gettext-0.18.3.1.old/gettext-tools/gnulib-lib/Makefile 2014-05-08 15:10:25 +0000
+++ gettext-0.18.3.1/gettext-tools/gnulib-lib/Makefile 2014-05-07 19:38:11 +0000
@@ -129,7 +129,7 @@ am__append_12 = $(LTLIBCROCO) $(LTLIBGLI
#am__append_17 = libxml_rpl.la
#am__append_18 = libxml_rpl.la
#am__append_19 = term-styled-ostream.c
-am__append_20 = ../woe32dll/c++term-styled-ostream.cc
+#am__append_20 = ../woe32dll/c++term-styled-ostream.cc
am__append_21 = uniconv/u8-conv-from-enc.c
am__append_22 = unilbrk/u8-possible-linebreaks.c
am__append_23 = unilbrk/u8-width-linebreaks.c
@@ -475,7 +475,7 @@ am__libgettextlib_la_SOURCES_DIST = copy
findprog.h findprog.c fstrcmp.h fstrcmp.c full-write.h \
full-write.c fwriteerror.h fwriteerror.c gcd.h gcd.c gettext.h \
../woe32dll/gettextlib-exports.c hash.h hash.c html-ostream.c \
- html-styled-ostream.c ../woe32dll/c++html-styled-ostream.cc \
+ \
javacomp.h javacomp.c javaexec.h javaexec.c javaversion.h \
javaversion.c gl_linkedhash_list.h gl_linkedhash_list.c \
gl_anyhash_list1.h gl_anyhash_list2.h gl_anylinked_list1.h \
@@ -490,8 +490,8 @@ am__libgettextlib_la_SOURCES_DIST = copy
sig-handler.c size_max.h spawn-pipe.h spawn-pipe.c striconv.h \
striconv.c striconveh.h striconveh.c striconveha.h \
striconveha.c strnlen1.h strnlen1.c styled-ostream.c \
- tempname.c term-ostream.c term-styled-ostream.c \
- ../woe32dll/c++term-styled-ostream.cc glthread/threadlib.c \
+ tempname.c term-ostream.c \
+ glthread/threadlib.c \
glthread/tls.h glthread/tls.c tmpdir.h tmpdir.c trim.c \
uniconv/u8-conv-from-enc.c unilbrk/lbrktables.c \
unilbrk/u8-possible-linebreaks.c unilbrk/u8-width-linebreaks.c \
@@ -509,9 +509,9 @@ am__libgettextlib_la_SOURCES_DIST = copy
xvasprintf.c xasprintf.c
am__objects_1 = ../woe32dll/gettextlib-exports.lo
#am__objects_2 = html-styled-ostream.lo
-am__objects_3 = ../woe32dll/c++html-styled-ostream.lo
+#am__objects_3 = ../woe32dll/c++html-styled-ostream.lo
#am__objects_4 = term-styled-ostream.lo
-am__objects_5 = ../woe32dll/c++term-styled-ostream.lo
+#am__objects_5 = ../woe32dll/c++term-styled-ostream.lo
am__objects_6 = uniconv/u8-conv-from-enc.lo
am__objects_7 = unilbrk/u8-possible-linebreaks.lo
am__objects_8 = unilbrk/u8-width-linebreaks.lo
@@ -545,7 +545,7 @@ am_libgettextlib_la_OBJECTS = copy-acl.l
fd-hook.lo fd-ostream.lo fd-safer-flag.lo dup-safer-flag.lo \
file-ostream.lo findprog.lo fstrcmp.lo full-write.lo \
fwriteerror.lo gcd.lo $(am__objects_1) hash.lo html-ostream.lo \
- $(am__objects_2) $(am__objects_3) javacomp.lo javaexec.lo \
+ $(am__objects_2) javacomp.lo javaexec.lo \
javaversion.lo gl_linkedhash_list.lo gl_list.lo \
localcharset.lo localename.lo glthread/lock.lo malloca.lo \
mbchar.lo mbiter.lo mbslen.lo mbsstr.lo mbswidth.lo mbuiter.lo \
@@ -555,7 +555,7 @@ am_libgettextlib_la_OBJECTS = copy-acl.l
safe-read.lo safe-write.lo sh-quote.lo sig-handler.lo \
spawn-pipe.lo striconv.lo striconveh.lo striconveha.lo \
strnlen1.lo styled-ostream.lo tempname.lo term-ostream.lo \
- $(am__objects_4) $(am__objects_5) glthread/threadlib.lo \
+ $(am__objects_4) glthread/threadlib.lo \
glthread/tls.lo tmpdir.lo trim.lo $(am__objects_6) \
unilbrk/lbrktables.lo $(am__objects_7) $(am__objects_8) \
unilbrk/ulc-common.lo $(am__objects_9) $(am__objects_10) \
diff -upr gettext-0.18.3.1.old/gettext-tools/src/write-catalog.c gettext-0.18.3.1/gettext-tools/src/write-catalog.c
--- gettext-0.18.3.1.old/gettext-tools/src/write-catalog.c 2012-12-10 01:59:06 +0000
+++ gettext-0.18.3.1/gettext-tools/src/write-catalog.c 2014-05-07 19:41:40 +0000
@@ -240,7 +240,7 @@ message catalog has plural form translat
}
style_file_prepare ();
- stream = term_styled_ostream_create (fd, filename, style_file_name);
+ stream = NULL; /*term_styled_ostream_create (fd, filename, style_file_name);*/
if (stream == NULL)
stream = fd_ostream_create (fd, filename, true);
output_syntax->print (mdlp, stream, page_width, debug);
@@ -286,11 +286,11 @@ message catalog has plural form translat
stream = file_ostream_create (fp);
#if ENABLE_COLOR
- if (output_syntax->supports_color && color_mode == color_html)
+ /*if (output_syntax->supports_color && color_mode == color_html)
{
html_styled_ostream_t html_stream;
- /* Convert mdlp to UTF-8 encoding. */
+ /* Convert mdlp to UTF-8 encoding. * /
if (mdlp->encoding != po_charset_utf8)
{
mdlp = msgdomain_list_copy (mdlp, 0);
@@ -302,7 +302,7 @@ message catalog has plural form translat
output_syntax->print (mdlp, html_stream, page_width, debug);
ostream_free (html_stream);
}
- else
+ else*/
#endif
{
output_syntax->print (mdlp, stream, page_width, debug);

View File

@ -0,0 +1,21 @@
diff -upr gnutls-3.2.12.old/lib/libgnutls.map gnutls-3.2.12/lib/libgnutls.map
--- gnutls-3.2.12.old/lib/libgnutls.map 2014-03-24 22:56:11 +0000
+++ gnutls-3.2.12/lib/libgnutls.map 2014-03-23 20:24:12 +0000
@@ -936,6 +936,7 @@ GNUTLS_PRIVATE {
_gnutls_read_uint24;
_gnutls_get_cred;
_gnutls_recv_int;
+ _gnutls_vasprintf;
# Internal symbols needed by libgnutls-openssl:
_gnutls_pkix1_asn;
_gnutls_x509_parse_dn_oid;
diff -upr gnutls-3.2.12.old/lib/vasprintf.c gnutls-3.2.12/lib/vasprintf.c
--- gnutls-3.2.12.old/lib/vasprintf.c 2014-03-24 22:56:11 +0000
+++ gnutls-3.2.12/lib/vasprintf.c 2014-03-23 20:24:12 +0000
@@ -1,5 +1,6 @@
#include <config.h>
#include <stdio.h>
+#include <stdlib.h>
#include "vasprintf.h"
#ifndef HAVE_VASPRINTF

88
win32/patches/gtk-doc.m4 Normal file
View File

@ -0,0 +1,88 @@
dnl -*- mode: autoconf -*-
# serial 2
dnl Usage:
dnl GTK_DOC_CHECK([minimum-gtk-doc-version])
AC_DEFUN([GTK_DOC_CHECK],
[
AC_REQUIRE([PKG_PROG_PKG_CONFIG])
AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first
AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first
ifelse([$1],[],[gtk_doc_requires="gtk-doc"],[gtk_doc_requires="gtk-doc >= $1"])
AC_MSG_CHECKING([for gtk-doc])
PKG_CHECK_EXISTS([$gtk_doc_requires],[have_gtk_doc=yes],[have_gtk_doc=no])
AC_MSG_RESULT($have_gtk_doc)
if test "$have_gtk_doc" = "no"; then
AC_MSG_WARN([
You will not be able to create source packages with 'make dist'
because $gtk_doc_requires is not found.])
fi
dnl check for tools we added during development
dnl Use AC_CHECK_PROG to avoid the check target using an absolute path that
dnl may not be writable by the user. Currently, automake requires that the
dnl test name must end in '.test'.
dnl https://bugzilla.gnome.org/show_bug.cgi?id=701638
AC_CHECK_PROG([GTKDOC_CHECK],[gtkdoc-check],[gtkdoc-check.test])
AC_PATH_PROG([GTKDOC_CHECK_PATH],[gtkdoc-check])
AC_PATH_PROGS([GTKDOC_REBASE],[gtkdoc-rebase],[true])
AC_PATH_PROG([GTKDOC_MKPDF],[gtkdoc-mkpdf])
dnl for overriding the documentation installation directory
AC_ARG_WITH([html-dir],
AS_HELP_STRING([--with-html-dir=PATH], [path to installed docs]),,
[with_html_dir='${datadir}/gtk-doc/html'])
HTML_DIR="$with_html_dir"
AC_SUBST([HTML_DIR])
dnl enable/disable documentation building
AC_ARG_ENABLE([gtk-doc],
AS_HELP_STRING([--enable-gtk-doc],
[use gtk-doc to build documentation [[default=no]]]),,
[enable_gtk_doc=no])
AC_MSG_CHECKING([whether to build gtk-doc documentation])
AC_MSG_RESULT($enable_gtk_doc)
if test "x$enable_gtk_doc" = "xyes" && test "$have_gtk_doc" = "no"; then
AC_MSG_ERROR([
You must have $gtk_doc_requires installed to build documentation for
$PACKAGE_NAME. Please install gtk-doc or disable building the
documentation by adding '--disable-gtk-doc' to '[$]0'.])
fi
dnl don't check for glib if we build glib
if test "x$PACKAGE_NAME" != "xglib"; then
dnl don't fail if someone does not have glib
PKG_CHECK_MODULES(GTKDOC_DEPS, glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0,,[:])
fi
dnl enable/disable output formats
AC_ARG_ENABLE([gtk-doc-html],
AS_HELP_STRING([--enable-gtk-doc-html],
[build documentation in html format [[default=yes]]]),,
[enable_gtk_doc_html=yes])
AC_ARG_ENABLE([gtk-doc-pdf],
AS_HELP_STRING([--enable-gtk-doc-pdf],
[build documentation in pdf format [[default=no]]]),,
[enable_gtk_doc_pdf=no])
if test -z "$GTKDOC_MKPDF"; then
enable_gtk_doc_pdf=no
fi
if test -z "$AM_DEFAULT_VERBOSITY"; then
AM_DEFAULT_VERBOSITY=1
fi
AC_SUBST([AM_DEFAULT_VERBOSITY])
AM_CONDITIONAL([HAVE_GTK_DOC], [test x$have_gtk_doc = xyes])
AM_CONDITIONAL([ENABLE_GTK_DOC], [test x$enable_gtk_doc = xyes])
AM_CONDITIONAL([GTK_DOC_BUILD_HTML], [test x$enable_gtk_doc_html = xyes])
AM_CONDITIONAL([GTK_DOC_BUILD_PDF], [test x$enable_gtk_doc_pdf = xyes])
AM_CONDITIONAL([GTK_DOC_USE_LIBTOOL], [test -n "$LIBTOOL"])
AM_CONDITIONAL([GTK_DOC_USE_REBASE], [test -n "$GTKDOC_REBASE"])
])

315
win32/patches/gtk-doc.make Normal file
View File

@ -0,0 +1,315 @@
# -*- mode: makefile -*-
####################################
# Everything below here is generic #
####################################
if GTK_DOC_USE_LIBTOOL
GTKDOC_CC = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(INCLUDES) $(GTKDOC_DEPS_CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
GTKDOC_LD = $(LIBTOOL) --tag=CC --mode=link $(CC) $(GTKDOC_DEPS_LIBS) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS)
GTKDOC_RUN = $(LIBTOOL) --mode=execute
else
GTKDOC_CC = $(CC) $(INCLUDES) $(GTKDOC_DEPS_CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
GTKDOC_LD = $(CC) $(GTKDOC_DEPS_LIBS) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS)
GTKDOC_RUN =
endif
# We set GPATH here; this gives us semantics for GNU make
# which are more like other make's VPATH, when it comes to
# whether a source that is a target of one rule is then
# searched for in VPATH/GPATH.
#
GPATH = $(srcdir)
TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
SETUP_FILES = \
$(content_files) \
$(DOC_MAIN_SGML_FILE) \
$(DOC_MODULE)-sections.txt \
$(DOC_MODULE)-overrides.txt
EXTRA_DIST = \
$(HTML_IMAGES) \
$(SETUP_FILES)
DOC_STAMPS=setup-build.stamp scan-build.stamp tmpl-build.stamp sgml-build.stamp \
html-build.stamp pdf-build.stamp \
tmpl.stamp sgml.stamp html.stamp pdf.stamp
SCANOBJ_FILES = \
$(DOC_MODULE).args \
$(DOC_MODULE).hierarchy \
$(DOC_MODULE).interfaces \
$(DOC_MODULE).prerequisites \
$(DOC_MODULE).signals
REPORT_FILES = \
$(DOC_MODULE)-undocumented.txt \
$(DOC_MODULE)-undeclared.txt \
$(DOC_MODULE)-unused.txt
gtkdoc-check.test: Makefile
$(AM_V_GEN)echo "#!/bin/sh -e" > $@; \
echo "$(GTKDOC_CHECK_PATH) || exit 1" >> $@; \
chmod +x $@
CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) gtkdoc-check.test
if GTK_DOC_BUILD_HTML
HTML_BUILD_STAMP=html-build.stamp
else
HTML_BUILD_STAMP=
endif
if GTK_DOC_BUILD_PDF
PDF_BUILD_STAMP=pdf-build.stamp
else
PDF_BUILD_STAMP=
endif
all-gtk-doc: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP)
.PHONY: all-gtk-doc
if ENABLE_GTK_DOC
all-local: all-gtk-doc
endif
docs: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP)
$(REPORT_FILES): sgml-build.stamp
#### setup ####
GTK_DOC_V_SETUP=$(GTK_DOC_V_SETUP_$(V))
GTK_DOC_V_SETUP_=$(GTK_DOC_V_SETUP_$(AM_DEFAULT_VERBOSITY))
GTK_DOC_V_SETUP_0=@echo " DOC Preparing build";
setup-build.stamp:
-$(GTK_DOC_V_SETUP)if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \
files=`echo $(SETUP_FILES) $(expand_content_files) $(DOC_MODULE).types`; \
if test "x$$files" != "x" ; then \
for file in $$files ; do \
destdir=`dirname $(abs_builddir)/$$file` ;\
test -d "$$destdir" || mkdir -p "$$destdir"; \
test -f $(abs_srcdir)/$$file && \
cp -pf $(abs_srcdir)/$$file $(abs_builddir)/$$file || true; \
done; \
fi; \
test -d $(abs_srcdir)/tmpl && \
{ cp -pR $(abs_srcdir)/tmpl $(abs_builddir)/; \
chmod -R u+w $(abs_builddir)/tmpl; } \
fi
$(AM_V_at)touch setup-build.stamp
#### scan ####
GTK_DOC_V_SCAN=$(GTK_DOC_V_SCAN_$(V))
GTK_DOC_V_SCAN_=$(GTK_DOC_V_SCAN_$(AM_DEFAULT_VERBOSITY))
GTK_DOC_V_SCAN_0=@echo " DOC Scanning header files";
GTK_DOC_V_INTROSPECT=$(GTK_DOC_V_INTROSPECT_$(V))
GTK_DOC_V_INTROSPECT_=$(GTK_DOC_V_INTROSPECT_$(AM_DEFAULT_VERBOSITY))
GTK_DOC_V_INTROSPECT_0=@echo " DOC Introspecting gobjects";
scan-build.stamp: setup-build.stamp $(HFILE_GLOB) $(CFILE_GLOB)
$(GTK_DOC_V_SCAN)_source_dir='' ; \
for i in $(DOC_SOURCE_DIR) ; do \
_source_dir="$${_source_dir} --source-dir=$$i" ; \
done ; \
gtkdoc-scan --module=$(DOC_MODULE) --ignore-headers="$(IGNORE_HFILES)" $${_source_dir} $(SCAN_OPTIONS) $(EXTRA_HFILES)
$(GTK_DOC_V_INTROSPECT)if grep -l '^..*$$' $(DOC_MODULE).types > /dev/null 2>&1 ; then \
scanobj_options=""; \
gtkdoc-scangobj 2>&1 --help | grep >/dev/null "\-\-verbose"; \
if test "$(?)" = "0"; then \
if test "x$(V)" = "x1"; then \
scanobj_options="--verbose"; \
fi; \
fi; \
CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" RUN="$(GTKDOC_RUN)" CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)" LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" \
gtkdoc-scangobj $(SCANGOBJ_OPTIONS) $$scanobj_options --module=$(DOC_MODULE); \
else \
for i in $(SCANOBJ_FILES) ; do \
test -f $$i || touch $$i ; \
done \
fi
$(AM_V_at)touch scan-build.stamp
$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp
@true
#### templates ####
GTK_DOC_V_TMPL=$(GTK_DOC_V_TMPL_$(V))
GTK_DOC_V_TMPL_=$(GTK_DOC_V_TMPL_$(AM_DEFAULT_VERBOSITY))
GTK_DOC_V_TMPL_0=@echo " DOC Rebuilding template files";
tmpl-build.stamp: setup-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt
$(GTK_DOC_V_TMPL)gtkdoc-mktmpl --module=$(DOC_MODULE) $(MKTMPL_OPTIONS)
$(AM_V_at)if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \
if test -w $(abs_srcdir) ; then \
cp -pR $(abs_builddir)/tmpl $(abs_srcdir)/; \
fi \
fi
$(AM_V_at)touch tmpl-build.stamp
tmpl.stamp: tmpl-build.stamp
@true
$(srcdir)/tmpl/*.sgml:
@true
#### xml ####
GTK_DOC_V_XML=$(GTK_DOC_V_XML_$(V))
GTK_DOC_V_XML_=$(GTK_DOC_V_XML_$(AM_DEFAULT_VERBOSITY))
GTK_DOC_V_XML_0=@echo " DOC Building XML";
sgml-build.stamp: tmpl.stamp $(DOC_MODULE)-sections.txt $(srcdir)/tmpl/*.sgml $(expand_content_files)
-$(GTK_DOC_V_XML)chmod -R u+w $(srcdir) && _source_dir='' ; \
for i in $(DOC_SOURCE_DIR) ; do \
_source_dir="$${_source_dir} --source-dir=$$i" ; \
done ; \
gtkdoc-mkdb --module=$(DOC_MODULE) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $${_source_dir} $(MKDB_OPTIONS)
$(AM_V_at)touch sgml-build.stamp
sgml.stamp: sgml-build.stamp
@true
#### html ####
GTK_DOC_V_HTML=$(GTK_DOC_V_HTML_$(V))
GTK_DOC_V_HTML_=$(GTK_DOC_V_HTML_$(AM_DEFAULT_VERBOSITY))
GTK_DOC_V_HTML_0=@echo " DOC Building HTML";
GTK_DOC_V_XREF=$(GTK_DOC_V_XREF_$(V))
GTK_DOC_V_XREF_=$(GTK_DOC_V_XREF_$(AM_DEFAULT_VERBOSITY))
GTK_DOC_V_XREF_0=@echo " DOC Fixing cross-references";
html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
$(GTK_DOC_V_HTML)rm -rf html && mkdir html && \
mkhtml_options=""; \
gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-verbose"; \
if test "$(?)" = "0"; then \
if test "x$(V)" = "x1"; then \
mkhtml_options="$$mkhtml_options --verbose"; \
fi; \
fi; \
gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-path"; \
if test "$(?)" = "0"; then \
mkhtml_options="$$mkhtml_options --path=\"$(abs_srcdir)\""; \
fi; \
cd html && gtkdoc-mkhtml $$mkhtml_options $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
-@test "x$(HTML_IMAGES)" = "x" || \
for file in $(HTML_IMAGES) ; do \
if test -f $(abs_srcdir)/$$file ; then \
cp $(abs_srcdir)/$$file $(abs_builddir)/html; \
fi; \
if test -f $(abs_builddir)/$$file ; then \
cp $(abs_builddir)/$$file $(abs_builddir)/html; \
fi; \
done;
$(GTK_DOC_V_XREF)gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
$(AM_V_at)touch html-build.stamp
#### pdf ####
GTK_DOC_V_PDF=$(GTK_DOC_V_PDF_$(V))
GTK_DOC_V_PDF_=$(GTK_DOC_V_PDF_$(AM_DEFAULT_VERBOSITY))
GTK_DOC_V_PDF_0=@echo " DOC Building PDF";
pdf-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
$(GTK_DOC_V_PDF)rm -f $(DOC_MODULE).pdf && \
mkpdf_options=""; \
gtkdoc-mkpdf 2>&1 --help | grep >/dev/null "\-\-verbose"; \
if test "$(?)" = "0"; then \
if test "x$(V)" = "x1"; then \
mkpdf_options="$$mkpdf_options --verbose"; \
fi; \
fi; \
if test "x$(HTML_IMAGES)" != "x"; then \
for img in $(HTML_IMAGES); do \
part=`dirname $$img`; \
echo $$mkpdf_options | grep >/dev/null "\-\-imgdir=$$part "; \
if test $$? != 0; then \
mkpdf_options="$$mkpdf_options --imgdir=$$part"; \
fi; \
done; \
fi; \
gtkdoc-mkpdf --path="$(abs_srcdir)" $$mkpdf_options $(DOC_MODULE) $(DOC_MAIN_SGML_FILE) $(MKPDF_OPTIONS)
$(AM_V_at)touch pdf-build.stamp
##############
clean-local:
@rm -f *~ *.bak
@rm -rf .libs
@if echo $(SCAN_OPTIONS) | grep -q "\-\-rebuild-types" ; then \
rm -f $(DOC_MODULE).types; \
fi
distclean-local:
@rm -rf xml html $(REPORT_FILES) $(DOC_MODULE).pdf \
$(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
@if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \
rm -f $(SETUP_FILES) $(expand_content_files) $(DOC_MODULE).types; \
rm -rf tmpl; \
fi
maintainer-clean-local:
@rm -rf xml html
install-data-local:
@installfiles=`echo $(builddir)/html/*`; \
if test "$$installfiles" = '$(builddir)/html/*'; \
then echo 1>&2 'Nothing to install' ; \
else \
if test -n "$(DOC_MODULE_VERSION)"; then \
installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \
else \
installdir="$(DESTDIR)$(TARGET_DIR)"; \
fi; \
$(mkinstalldirs) $${installdir} ; \
for i in $$installfiles; do \
echo ' $(INSTALL_DATA) '$$i ; \
$(INSTALL_DATA) $$i $${installdir}; \
done; \
if test -n "$(DOC_MODULE_VERSION)"; then \
mv -f $${installdir}/$(DOC_MODULE).devhelp2 \
$${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp2; \
fi; \
$(GTKDOC_REBASE) --relative --dest-dir=$(DESTDIR) --html-dir=$${installdir}; \
fi
uninstall-local:
@if test -n "$(DOC_MODULE_VERSION)"; then \
installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \
else \
installdir="$(DESTDIR)$(TARGET_DIR)"; \
fi; \
rm -rf $${installdir}
#
# Require gtk-doc when making dist
#
if HAVE_GTK_DOC
dist-check-gtkdoc: docs
else
dist-check-gtkdoc:
@echo "*** gtk-doc is needed to run 'make dist'. ***"
@echo "*** gtk-doc was not found when 'configure' ran. ***"
@echo "*** please install gtk-doc and rerun 'configure'. ***"
@false
endif
dist-hook: dist-check-gtkdoc all-gtk-doc dist-hook-local
@mkdir $(distdir)/tmpl
@mkdir $(distdir)/html
@-cp ./tmpl/*.sgml $(distdir)/tmpl
@cp ./html/* $(distdir)/html
@-cp ./$(DOC_MODULE).pdf $(distdir)/
@-cp ./$(DOC_MODULE).types $(distdir)/
@-cp ./$(DOC_MODULE)-sections.txt $(distdir)/
@cd $(distdir) && rm -f $(DISTCLEANFILES)
@$(GTKDOC_REBASE) --online --relative --html-dir=$(distdir)/html
.PHONY : dist-hook-local docs

116
win32/patches/gtk.patch Normal file
View File

@ -0,0 +1,116 @@
diff -upr gtk+-3.10.6/gdk/Makefile.in gtk+-3.10.6.new/gdk/Makefile.in
--- gtk+-3.10.6/gdk/Makefile.in 2013-12-05 04:09:38 +0000
+++ gtk+-3.10.6.new/gdk/Makefile.in 2014-01-26 19:43:22 +0000
@@ -94,7 +94,7 @@ DIST_COMMON = $(top_srcdir)/Makefile.dec
@USE_WIN32_FALSE@ $(am__append_1) $(am__append_3) \
@USE_WIN32_FALSE@ $(am__append_5) $(am__append_7) \
@USE_WIN32_FALSE@ $(am__append_8)
-@USE_WIN32_TRUE@am__append_6 = -Wl,win32/rc/gdk-win32-res.o -export-symbols $(srcdir)/gdk.def
+@USE_WIN32_TRUE@am__append_6 = -Wl,win32/rc/gdk-win32-res.o
@USE_BROADWAY_TRUE@am__append_7 = broadway/libgdk-broadway.la
@USE_WAYLAND_TRUE@am__append_8 = wayland/libgdk-wayland.la
@HAVE_INTROSPECTION_TRUE@am__append_9 = Gdk-3.0.gir
@@ -737,7 +737,7 @@ libgdk_3_la_CFLAGS = $(AM_CFLAGS) $(GDK_
libgdk_3_la_LIBADD = $(GDK_DEP_LIBS) $(am__append_1) $(am__append_3) \
$(am__append_5) $(am__append_7) $(am__append_8)
libgdk_3_la_LDFLAGS = $(LDADD) $(am__append_6)
-@USE_WIN32_TRUE@libgdk_3_la_DEPENDENCIES = win32/libgdk-win32.la win32/rc/gdk-win32-res.o gdk.def
+@USE_WIN32_TRUE@libgdk_3_la_DEPENDENCIES = win32/libgdk-win32.la win32/rc/gdk-win32-res.o
@HAVE_INTROSPECTION_TRUE@introspection_files = \
@HAVE_INTROSPECTION_TRUE@ $(filter-out gdkkeysyms-compat.h, $(gdk_public_h_sources)) \
@HAVE_INTROSPECTION_TRUE@ $(gdk_c_sources) \
@@ -1625,16 +1625,8 @@ check-local: test-cwd
@HAVE_INTROSPECTION_TRUE@@USE_X11_TRUE@GdkX11-3.0.gir: libgdk-3.la Gdk-3.0.gir Makefile
-@OS_WIN32_TRUE@install-def-file: gdk.def
-@OS_WIN32_TRUE@ mkdir -p $(DESTDIR)$(libdir)
-@OS_WIN32_TRUE@ $(INSTALL) $(srcdir)/gdk.def $(DESTDIR)$(libdir)/gdk-win32-3.0.def
-@OS_WIN32_TRUE@uninstall-def-file:
-@OS_WIN32_TRUE@ -rm $(DESTDIR)$(libdir)/gdk-win32-3.0.def
-@OS_WIN32_FALSE@install-def-file:
-@OS_WIN32_FALSE@uninstall-def-file:
-
-@MS_LIB_AVAILABLE_TRUE@gdk-win32-$(GTK_API_VERSION).lib: libgdk-win32-$(GTK_API_VERSION).la gdk.def
-@MS_LIB_AVAILABLE_TRUE@ lib -machine:@LIB_EXE_MACHINE_FLAG@ -name:libgdk-win32-$(GTK_API_VERSION)-@LT_CURRENT_MINUS_AGE@.dll -def:gdk.def -out:$@
+@MS_LIB_AVAILABLE_TRUE@gdk-win32-$(GTK_API_VERSION).lib: libgdk-win32-$(GTK_API_VERSION).la
+@MS_LIB_AVAILABLE_TRUE@ lib -machine:@LIB_EXE_MACHINE_FLAG@ -name:libgdk-win32-$(GTK_API_VERSION)-@LT_CURRENT_MINUS_AGE@.dll -out:$@
@MS_LIB_AVAILABLE_TRUE@install-ms-lib:
@MS_LIB_AVAILABLE_TRUE@ mkdir -p $(DESTDIR)$(libdir)
@@ -1714,9 +1706,9 @@ dist-hook: ../build/win32/vs9/gdk.vcproj
$(CPP) -P - <$(top_srcdir)/build/win32/vs10/gdk.vcxproj.filtersin >$@
rm libgdk.vs10.sourcefiles.filters
-install-data-local: install-ms-lib install-def-file
+install-data-local: install-ms-lib
-uninstall-local: uninstall-ms-lib uninstall-def-file
+uninstall-local: uninstall-ms-lib
rm -f $(DESTDIR)$(configexecincludedir)/gdkconfig.h
# if srcdir!=builddir, clean out maintainer-clean files from builddir
diff -upr gtk+-3.10.6/gtk/Makefile.in gtk+-3.10.6.new/gtk/Makefile.in
--- gtk+-3.10.6/gtk/Makefile.in 2013-12-05 04:09:40 +0000
+++ gtk+-3.10.6.new/gtk/Makefile.in 2014-01-26 19:45:23 +0000
@@ -111,7 +111,7 @@ DIST_COMMON = $(top_srcdir)/Makefile.dec
@USE_QUARTZ_FALSE@@USE_WIN32_FALSE@@USE_X11_FALSE@am__append_13 = $(gtk_use_stub_c_sources)
@USE_WIN32_TRUE@am__append_14 = -lole32 -lgdi32 -lcomdlg32 -lwinspool -lcomctl32
@USE_WIN32_TRUE@am__append_15 = -Wl,-luuid
-@USE_WIN32_TRUE@am__append_16 = $(gtk_def) $(gtk_win32_res) $(deps)
+@USE_WIN32_TRUE@am__append_16 = $(gtk_win32_res) $(deps)
# And include the regular ones:
@HAVE_INTROSPECTION_TRUE@@USE_QUARTZ_TRUE@am__append_17 = \
@@ -1047,8 +1047,6 @@ AM_CPPFLAGS = \
$(INCLUDED_IMMODULE_DEFINE)
@PLATFORM_WIN32_TRUE@no_undefined = -no-undefined
-@OS_WIN32_TRUE@gtk_def = gtk.def
-@OS_WIN32_TRUE@gtk_win32_symbols = -export-symbols $(srcdir)/gtk.def
@OS_WIN32_TRUE@gtk_win32_res = gtk-win32-res.o
@OS_WIN32_TRUE@gtk_win32_res_ldflag = -Wl,gtk-win32-res.o
@MS_LIB_AVAILABLE_TRUE@noinst_DATA = gtk-win32-$(GTK_API_VERSION).lib
@@ -1959,7 +1957,7 @@ libgtk_3_la_SOURCES = $(gtk_c_sources)
libgtk_3_la_LDFLAGS = $(libtool_opts) $(am__append_15)
libgtk_3_la_LIBADD = $(libadd) $(am__append_14)
libgtk_3_la_DEPENDENCIES = $(deps) $(am__append_16)
-@USE_WIN32_TRUE@libgtk_target_ldflags = $(gtk_win32_res_ldflag) $(gtk_win32_symbols)
+@USE_WIN32_TRUE@libgtk_target_ldflags = $(gtk_win32_res_ldflag)
DEPS = libgtk-3.la $(top_builddir)/gdk/libgdk-3.la
TEST_DEPS = $(DEPS) immodules.cache
LDADDS = \
@@ -5912,15 +5910,8 @@ check-local: test-cwd
@OS_WIN32_TRUE@gtk-win32-res.o : gtk-win32.rc
@OS_WIN32_TRUE@ $(WINDRES) gtk-win32.rc $@
-@OS_WIN32_TRUE@install-def-file: gtk.def
-@OS_WIN32_TRUE@ $(INSTALL) $(srcdir)/gtk.def $(DESTDIR)$(libdir)/gtk-win32-3.0.def
-@OS_WIN32_TRUE@uninstall-def-file:
-@OS_WIN32_TRUE@ -rm $(DESTDIR)$(libdir)/gtk-win32-3.0.def
-@OS_WIN32_FALSE@install-def-file:
-@OS_WIN32_FALSE@uninstall-def-file:
-
-@MS_LIB_AVAILABLE_TRUE@gtk-win32-$(GTK_API_VERSION).lib: libgtk-win32-$(GTK_API_VERSION).la gtk.def
-@MS_LIB_AVAILABLE_TRUE@ lib -machine:@LIB_EXE_MACHINE_FLAG@ -name:libgtk-win32-$(GTK_API_VERSION)-@LT_CURRENT_MINUS_AGE@.dll -def:gtk.def -out:$@
+@MS_LIB_AVAILABLE_TRUE@gtk-win32-$(GTK_API_VERSION).lib: libgtk-win32-$(GTK_API_VERSION).la
+@MS_LIB_AVAILABLE_TRUE@ lib -machine:@LIB_EXE_MACHINE_FLAG@ -name:libgtk-win32-$(GTK_API_VERSION)-@LT_CURRENT_MINUS_AGE@.dll -out:$@
@MS_LIB_AVAILABLE_TRUE@install-ms-lib:
@MS_LIB_AVAILABLE_TRUE@ $(INSTALL) gtk-win32-$(GTK_API_VERSION).lib $(DESTDIR)$(libdir)
@@ -6055,13 +6046,13 @@ dist-hook: ../build/win32/vs9/gtk.vcproj
rm libgtk.vs10.sourcefiles.filters
# Install a RC file for the default GTK+ theme, and key themes
-install-data-local: install-ms-lib install-def-file install-mac-key-theme
+install-data-local: install-ms-lib install-mac-key-theme
$(MKDIR_P) $(DESTDIR)$(datadir)/themes/Default/gtk-3.0
$(INSTALL_DATA) $(srcdir)/gtk-keys.css.default $(DESTDIR)$(datadir)/themes/Default/gtk-3.0/gtk-keys.css
$(MKDIR_P) $(DESTDIR)$(datadir)/themes/Emacs/gtk-3.0
$(INSTALL_DATA) $(srcdir)/gtk-keys.css.emacs $(DESTDIR)$(datadir)/themes/Emacs/gtk-3.0/gtk-keys.css
-uninstall-local: uninstall-ms-lib uninstall-def-file uninstall-mac-key-theme
+uninstall-local: uninstall-ms-lib uninstall-mac-key-theme
rm -f $(DESTDIR)$(datadir)/themes/Raleigh/gtk-3.0/gtk.css
rm -f $(DESTDIR)$(datadir)/themes/Default/gtk-3.0/gtk-keys.css
rm -f $(DESTDIR)$(datadir)/themes/Emacs/gtk-3.0/gtk-keys.css

View File

@ -0,0 +1,25 @@
diff -upr harfbuzz-0.9.27.old//Makefile.in harfbuzz-0.9.27/Makefile.in
--- harfbuzz-0.9.27.old//Makefile.in 2014-03-18 17:07:54 +0000
+++ harfbuzz-0.9.27/Makefile.in 2014-04-20 18:18:47 +0000
@@ -365,7 +365,7 @@ top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
NULL =
ACLOCAL_AMFLAGS = -I m4
-SUBDIRS = src util test docs
+SUBDIRS = src
EXTRA_DIST = \
autogen.sh \
harfbuzz.doap \
diff -upr harfbuzz-0.9.27.old//src/hb-common.cc harfbuzz-0.9.27/src/hb-common.cc
--- harfbuzz-0.9.27.old//src/hb-common.cc 2014-03-16 20:40:33 +0000
+++ harfbuzz-0.9.27/src/hb-common.cc 2014-04-20 18:16:17 +0000
@@ -33,6 +33,9 @@
#include <locale.h>
+extern "C" {
+_CRTIMP char* __cdecl __MINGW_NOTHROW strdup (const char*) __MINGW_ATTRIB_MALLOC;
+}
/* hb_options_t */

View File

@ -0,0 +1,12 @@
diff -upr 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 21:43:08 +0000
+++ jasper-1.900.1.new/src/appl/tmrdemo.c 2013-12-29 22:42:52 +0000
@@ -43,7 +43,7 @@ int main(int argc, char **argv)
printf("zero time %.3f us\n", t * 1e6);
jas_tmr_start(&tmr);
- sleep(1);
+ //sleep(1);
jas_tmr_stop(&tmr);
t = jas_tmr_get(&tmr);
printf("time delay %.8f s\n", t);

View File

@ -0,0 +1,158 @@
diff -upr -x .deps -x .libs -x '*.la' libgdata-0.15.1.old/Makefile.am libgdata-0.15.1/Makefile.am
--- libgdata-0.15.1.old/Makefile.am 2014-06-20 21:01:11 +0000
+++ libgdata-0.15.1/Makefile.am 2014-06-20 20:58:04 +0000
@@ -1,4 +1,4 @@
-SUBDIRS = . gdata/tests po docs
+SUBDIRS = . po docs
ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
diff -upr -x .deps -x .libs -x '*.la' libgdata-0.15.1.old/Makefile.in libgdata-0.15.1/Makefile.in
--- libgdata-0.15.1.old/Makefile.in 2014-06-20 21:01:11 +0000
+++ libgdata-0.15.1/Makefile.in 2014-06-20 20:58:04 +0000
@@ -775,7 +775,7 @@ target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-SUBDIRS = . gdata/tests po docs
+SUBDIRS = . po docs
ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
DISTCHECK_CONFIGURE_FLAGS = --enable-introspection --enable-gtk-doc
MAINTAINERCLEANFILES = $(GITIGNORE_MAINTAINERCLEANFILES_TOPLEVEL) \
diff -upr -x .deps -x .libs -x '*.la' libgdata-0.15.1.old/configure libgdata-0.15.1/configure
--- libgdata-0.15.1.old/configure 2014-06-20 21:01:11 +0000
+++ libgdata-0.15.1/configure 2014-06-20 20:58:04 +0000
@@ -16239,96 +16239,6 @@ fi
-pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for UHTTPMOCK" >&5
-$as_echo_n "checking for UHTTPMOCK... " >&6; }
-
-if test -n "$UHTTPMOCK_CFLAGS"; then
- pkg_cv_UHTTPMOCK_CFLAGS="$UHTTPMOCK_CFLAGS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libuhttpmock-0.0\""; } >&5
- ($PKG_CONFIG --exists --print-errors "libuhttpmock-0.0") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- pkg_cv_UHTTPMOCK_CFLAGS=`$PKG_CONFIG --cflags "libuhttpmock-0.0" 2>/dev/null`
- test "x$?" != "x0" && pkg_failed=yes
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
-if test -n "$UHTTPMOCK_LIBS"; then
- pkg_cv_UHTTPMOCK_LIBS="$UHTTPMOCK_LIBS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libuhttpmock-0.0\""; } >&5
- ($PKG_CONFIG --exists --print-errors "libuhttpmock-0.0") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- pkg_cv_UHTTPMOCK_LIBS=`$PKG_CONFIG --libs "libuhttpmock-0.0" 2>/dev/null`
- test "x$?" != "x0" && pkg_failed=yes
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
-
-
-
-if test $pkg_failed = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
- _pkg_short_errors_supported=yes
-else
- _pkg_short_errors_supported=no
-fi
- if test $_pkg_short_errors_supported = yes; then
- UHTTPMOCK_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libuhttpmock-0.0" 2>&1`
- else
- UHTTPMOCK_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libuhttpmock-0.0" 2>&1`
- fi
- # Put the nasty error message in config.log where it belongs
- echo "$UHTTPMOCK_PKG_ERRORS" >&5
-
- as_fn_error $? "Package requirements (libuhttpmock-0.0) were not met:
-
-$UHTTPMOCK_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables UHTTPMOCK_CFLAGS
-and UHTTPMOCK_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details." "$LINENO" 5
-elif test $pkg_failed = untried; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables UHTTPMOCK_CFLAGS
-and UHTTPMOCK_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details" "$LINENO" 5; }
-else
- UHTTPMOCK_CFLAGS=$pkg_cv_UHTTPMOCK_CFLAGS
- UHTTPMOCK_LIBS=$pkg_cv_UHTTPMOCK_LIBS
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-fi
# Various necessary functions and headers
for ac_func in strchr
diff -upr -x .deps -x .libs -x '*.la' libgdata-0.15.1.old/configure.ac libgdata-0.15.1/configure.ac
--- libgdata-0.15.1.old/configure.ac 2014-06-20 21:01:11 +0000
+++ libgdata-0.15.1/configure.ac 2014-06-20 20:58:04 +0000
@@ -123,11 +123,6 @@ AC_SUBST([GNOME_PACKAGES_PRIVATE])
AC_SUBST([GNOME_PACKAGES])
AC_SUBST([GOA_ENABLED])
-dnl ****************************
-dnl Check for uhttpmock
-dnl ****************************
-PKG_CHECK_MODULES(UHTTPMOCK, libuhttpmock-0.0)
-
# Various necessary functions and headers
AC_CHECK_FUNCS([strchr])
AC_CHECK_FUNCS([strstr])
diff -upr -x .deps -x .libs -x '*.la' libgdata-0.15.1.old/gdata/gdata.symbols libgdata-0.15.1/gdata/gdata.symbols
--- libgdata-0.15.1.old/gdata/gdata.symbols 2014-06-20 21:01:11 +0000
+++ libgdata-0.15.1/gdata/gdata.symbols 2014-06-20 21:02:28 +0000
@@ -965,9 +965,6 @@ gdata_documents_entry_get_quota_used
gdata_documents_service_copy_document
gdata_documents_service_copy_document_async
gdata_documents_service_copy_document_finish
-gdata_goa_authorizer_get_type
-gdata_goa_authorizer_new
-gdata_goa_authorizer_get_goa_object
gdata_documents_document_get_thumbnail_uri
gdata_tasks_task_get_type
gdata_tasks_task_new
@@ -1087,8 +1084,6 @@ gdata_freebase_topic_value_is_image
gdata_freebase_topic_result_get_type
gdata_freebase_topic_result_new
gdata_freebase_topic_result_dup_object
-gdata_freebase_result_error_get_type
-gdata_freebase_result_error_quark
gdata_freebase_result_get_type
gdata_freebase_result_new
gdata_freebase_result_dup_variant

View File

@ -0,0 +1,12 @@
diff -upr libgpg-error-1.12.old/po/LINGUAS libgpg-error-1.12/po/LINGUAS
--- libgpg-error-1.12.old/po/LINGUAS 2014-04-27 14:43:44 +0000
+++ libgpg-error-1.12/po/LINGUAS 2014-04-27 14:44:04 +0000
@@ -7,8 +7,6 @@ fr
it
ja
nl
-pl
-ro
sv
uk
vi

View File

@ -0,0 +1,191 @@
diff -upr libgweather-3.10.2.old//configure libgweather-3.10.2/configure
--- libgweather-3.10.2.old//configure 2014-02-02 16:39:52 +0000
+++ libgweather-3.10.2/configure 2014-04-15 14:05:25 +0000
@@ -15884,16 +15884,16 @@ case "$am__api_version" in
;;
esac
-INTLTOOL_REQUIRED_VERSION_AS_INT=`echo 0.50.0 | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'`
+INTLTOOL_REQUIRED_VERSION_AS_INT=`echo 0.40.0 | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'`
INTLTOOL_APPLIED_VERSION=`intltool-update --version | head -1 | cut -d" " -f3`
INTLTOOL_APPLIED_VERSION_AS_INT=`echo $INTLTOOL_APPLIED_VERSION | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'`
-if test -n "0.50.0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for intltool >= 0.50.0" >&5
-$as_echo_n "checking for intltool >= 0.50.0... " >&6; }
+if test -n "0.40.0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for intltool >= 0.40.0" >&5
+$as_echo_n "checking for intltool >= 0.40.0... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_APPLIED_VERSION found" >&5
$as_echo "$INTLTOOL_APPLIED_VERSION found" >&6; }
test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" ||
- as_fn_error $? "Your intltool is too old. You need intltool 0.50.0 or later." "$LINENO" 5
+ as_fn_error $? "Your intltool is too old. You need intltool 0.40.0 or later." "$LINENO" 5
fi
# Extract the first word of "intltool-update", so it can be a program name with args.
diff -upr libgweather-3.10.2.old//libgweather/weather-owm.c libgweather-3.10.2/libgweather/weather-owm.c
--- libgweather-3.10.2.old//libgweather/weather-owm.c 2014-04-15 14:03:39 +0000
+++ libgweather-3.10.2/libgweather/weather-owm.c 2014-04-15 13:58:56 +0000
@@ -29,7 +29,6 @@
#include <math.h>
#include <time.h>
#include <unistd.h>
-#include <langinfo.h>
#include <libxml/parser.h>
#include <libxml/xpath.h>
@@ -130,32 +129,20 @@ static time_t
date_to_time_t (const xmlChar *str, const char * tzid)
{
struct tm time = { 0 };
- GTimeZone *tz;
GDateTime *dt;
time_t rval;
+ GTimeVal tv;
char *after;
- after = strptime ((const char*) str, "%Y-%m-%dT%T", &time);
- if (after == NULL) {
+ if (!g_time_val_from_iso8601 ((const char*) str, &tv)) {
g_warning ("Cannot parse date string \"%s\"", str);
return 0;
}
- if (*after == 'Z')
- tzid = "UTC";
-
- tz = g_time_zone_new (tzid);
- dt = g_date_time_new (tz,
- time.tm_year + 1900,
- time.tm_mon + 1,
- time.tm_mday,
- time.tm_hour,
- time.tm_min,
- time.tm_sec);
+ dt = g_date_time_new_from_timeval_local (&tv);
rval = g_date_time_to_unix (dt);
- g_time_zone_unref (tz);
g_date_time_unref (dt);
return rval;
diff -upr libgweather-3.10.2.old//libgweather/weather-priv.h libgweather-3.10.2/libgweather/weather-priv.h
--- libgweather-3.10.2.old//libgweather/weather-priv.h 2014-04-15 14:03:39 +0000
+++ libgweather-3.10.2/libgweather/weather-priv.h 2014-04-15 13:58:57 +0000
@@ -32,7 +32,7 @@
#include "gweather-location.h"
#ifdef _WIN32
-#include "gweather-win32.h"
+#define localtime_r(t,tmp) (localtime (t) ? ((*tmp) = *localtime (t), tmp) : NULL)
#endif
void _gweather_gettext_init (void);
diff -upr libgweather-3.10.2.old//libgweather/weather-yahoo.c libgweather-3.10.2/libgweather/weather-yahoo.c
--- libgweather-3.10.2.old//libgweather/weather-yahoo.c 2014-04-15 14:03:39 +0000
+++ libgweather-3.10.2/libgweather/weather-yahoo.c 2014-04-15 13:58:57 +0000
@@ -151,10 +151,35 @@ date_to_time_t (const xmlChar *str)
{
struct tm time = { 0 };
+ #ifdef G_OS_WIN32
+ char mnthname[10] = {0};
+ int day, month, year;
+ const gchar tm_months[][4] = {
+ "Jan", "Feb", "Mar", "Apr", "May", "Jun",
+ "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"
+ };
+ if (sscanf ((const char*) str, "%d %3s %4d", &day, mnthname, &year) != 3) {
+ g_warning ("Cannot parse date string \"%s\"", str);
+ return 0;
+ }
+ for (month = 0; month < 12; month++) {
+ if (g_ascii_strcasecmp (tm_months[month], mnthname) == 0) {
+ break;
+ }
+ }
+ if (month == 12) {
+ g_warning ("Cannot parse date string \"%s\"", str);
+ return 0;
+ }
+ time.tm_mday = day;
+ time.tm_mon = month;
+ time.tm_year = year - 1900;
+ #else
if (!strptime ((const char*) str, "%d %b %Y", &time)) {
g_warning ("Cannot parse date string \"%s\"", str);
return 0;
}
+ #endif
return mktime(&time);
}
diff -upr libgweather-3.10.2.old//libgweather/weather-yrno.c libgweather-3.10.2/libgweather/weather-yrno.c
--- libgweather-3.10.2.old//libgweather/weather-yrno.c 2014-04-15 14:03:39 +0000
+++ libgweather-3.10.2/libgweather/weather-yrno.c 2014-04-15 13:58:57 +0000
@@ -91,32 +91,20 @@ static time_t
date_to_time_t (const xmlChar *str, const char * tzid)
{
struct tm time = { 0 };
- GTimeZone *tz;
GDateTime *dt;
time_t rval;
+ GTimeVal tv;
char *after;
- after = strptime ((const char*) str, "%Y-%m-%dT%T", &time);
- if (after == NULL) {
+ if (!g_time_val_from_iso8601 ((const char*) str, &tv)) {
g_warning ("Cannot parse date string \"%s\"", str);
return 0;
}
- if (*after == 'Z')
- tzid = "UTC";
-
- tz = g_time_zone_new (tzid);
- dt = g_date_time_new (tz,
- time.tm_year + 1900,
- time.tm_mon + 1,
- time.tm_mday,
- time.tm_hour,
- time.tm_min,
- time.tm_sec);
+ dt = g_date_time_new_from_timeval_local (&tv);
rval = g_date_time_to_unix (dt);
- g_time_zone_unref (tz);
g_date_time_unref (dt);
return rval;
diff -upr libgweather-3.10.2.old//libgweather/weather.c libgweather-3.10.2/libgweather/weather.c
--- libgweather-3.10.2.old//libgweather/weather.c 2014-04-15 14:03:39 +0000
+++ libgweather-3.10.2/libgweather/weather.c 2014-04-15 13:58:57 +0000
@@ -28,7 +28,10 @@
#include <math.h>
#include <time.h>
#include <unistd.h>
+
+#ifdef HAVE_NL_LANGINFO
#include <langinfo.h>
+#endif
#include <gtk/gtk.h>
#include <gdk-pixbuf/gdk-pixbuf.h>
@@ -701,12 +704,14 @@ gweather_info_get_conditions (GWeatherIn
static gboolean
is_locale_metric (void)
{
+#ifdef HAVE_NL_LANGINFO
const char *fmt;
fmt = nl_langinfo (_NL_MEASUREMENT_MEASUREMENT);
if (fmt && *fmt == 2)
return FALSE;
else
+#endif /* HAVE_NL_LANGINFO */
return TRUE;
}

169
win32/patches/libical.patch Normal file
View File

@ -0,0 +1,169 @@
diff -upr -x .deps -x .libs -x '*.la' libical-1.0.old/src/libical/icaltime.c libical-1.0/src/libical/icaltime.c
--- libical-1.0.old/src/libical/icaltime.c 2013-04-14 17:24:42 +0000
+++ libical-1.0/src/libical/icaltime.c 2014-08-03 13:58:29 +0000
@@ -61,7 +61,7 @@
#undef gmtime_r
/* The gmtime() in Microsoft's C library is MT-safe */
-#define gmtime_r(tp,tmp) (gmtime(tp)?(*(tmp)=*gmtime(tp),(tmp)):0)
+#define gmtime_r(tp,tmp) (gmtime(tp)?(*(tmp)=*gmtime(tp),(tmp)):memset(tmp, 0, sizeof(*tmp)))
#endif
#ifdef HAVE_PTHREAD
@@ -205,11 +205,7 @@ icaltime_from_timet_with_zone(const time
/* Convert the time_t to a struct tm in UTC time. We can trust gmtime
for this. */
-#ifdef HAVE_PTHREAD
gmtime_r (&tm, &t);
-#else
- t = *(gmtime (&tm));
-#endif
tt.year = t.tm_year + 1900;
tt.month = t.tm_mon + 1;
diff -upr -x .deps -x .libs -x '*.la' libical-1.0.old/src/libical/icaltimezone.c libical-1.0/src/libical/icaltimezone.c
--- libical-1.0.old/src/libical/icaltimezone.c 2013-04-14 17:24:42 +0000
+++ libical-1.0/src/libical/icaltimezone.c 2014-08-03 13:59:38 +0000
@@ -61,12 +61,19 @@ static pthread_mutex_t builtin_mutex = P
#undef gmtime_r
/* The gmtime() in Microsoft's C library is MT-safe */
-#define gmtime_r(tp,tmp) (gmtime(tp)?(*(tmp)=*gmtime(tp),(tmp)):0)
+#define gmtime_r(tp,tmp) (gmtime(tp)?(*(tmp)=*gmtime(tp),(tmp)):memset(tmp, 0, sizeof(*tmp)))
// MSVC lacks the POSIX macro S_ISDIR, however it's a trivial one:
#ifndef S_ISDIR
#define S_ISDIR(m) (((m) & _S_IFMT) == _S_IFDIR)
#endif
+
+#define DIR_SEPARATOR "\\"
+
+#else
+
+#define DIR_SEPARATOR "/"
+
#endif
#if defined(_MSC_VER)
@@ -75,7 +82,7 @@ static pthread_mutex_t builtin_mutex = P
#endif
/** This is the toplevel directory where the timezone data is installed in. */
-#define ZONEINFO_DIRECTORY PACKAGE_DATA_DIR "/zoneinfo"
+#define ZONEINFO_DIRECTORY PACKAGE_DATA_DIR DIR_SEPARATOR "zoneinfo"
/** The prefix we use to uniquely identify TZIDs.
It must begin and end with forward slashes.
@@ -1702,10 +1709,10 @@ icaltimezone_parse_zone_tab (void)
return;
}
#ifndef USE_BUILTIN_TZDATA
- snprintf (filename, filename_len, "%s/%s", icaltzutil_get_zone_directory (),
+ snprintf (filename, filename_len, "%s" DIR_SEPARATOR "%s", icaltzutil_get_zone_directory (),
ZONES_TAB_SYSTEM_FILENAME);
#else
- snprintf (filename, filename_len, "%s/%s", get_zone_directory(),
+ snprintf (filename, filename_len, "%s" DIR_SEPARATOR "%s", get_zone_directory(),
ZONES_TAB_FILENAME);
#endif
@@ -1823,7 +1830,7 @@ icaltimezone_load_builtin_timezone (ical
goto out;
}
- snprintf (filename, filename_len, "%s/%s.ics", get_zone_directory(),
+ snprintf (filename, filename_len, "%s " DIR_SEPARATOR " %s.ics", get_zone_directory(),
zone->location);
fp = fopen (filename, "r");
diff -upr -x .deps -x .libs -x '*.la' libical-1.0.old/src/libical/icaltz-util.c libical-1.0/src/libical/icaltz-util.c
--- libical-1.0.old/src/libical/icaltz-util.c 2013-04-14 17:24:42 +0000
+++ libical-1.0/src/libical/icaltz-util.c 2014-08-03 12:54:17 +0000
@@ -50,7 +50,7 @@
# endif
#endif
-#ifdef _MSC_VER
+#ifdef WIN32
#if !defined(HAVE_BYTESWAP_H) && !defined(HAVE_SYS_ENDIAN_H) && !defined(HAVE_ENDIAN_H)
#define bswap_16(x) (((x) << 8) & 0xff00) | (((x) >> 8 ) & 0xff)
#define bswap_32(x) (((x) << 24) & 0xff000000) \
@@ -67,6 +67,11 @@
| (((x) & 0x00000000000000ffull) << 56))
#endif
#include <io.h>
+#include <sys/param.h> /* for BYTE_ORDER */
+#endif
+
+#ifdef WIN32
+#include <windows.h>
#endif
#if defined(__APPLE__)
@@ -191,6 +196,7 @@ zname_from_stridx (char *str, long int i
static void
set_zonedir (void)
{
+ #ifndef WIN32
char file_path[PATH_MAX];
const char *fname = ZONES_TAB_SYSTEM_FILENAME;
int i;
@@ -202,6 +208,42 @@ set_zonedir (void)
break;
}
}
+
+ #else
+ #define ZONEINFO_REL_PATH "..\\share\\zoneinfo"
+ if (!zdir) {
+ HMODULE lib = LoadLibrary("libical.dll");
+ if (lib) {
+ static char win32_path[PATH_MAX * 2 + 32 + 1];
+ DWORD read = GetModuleFileNameA (lib, win32_path, PATH_MAX * 2);
+ FreeLibrary(lib);
+
+ if (read > 0) {
+ char *backslash;
+ int cut_path_at;
+
+ win32_path[read] = 0;
+
+ backslash = strrchr(win32_path, '\\');
+ if (backslash)
+ backslash[1] = 0;
+
+ strcat (win32_path, ZONEINFO_REL_PATH);
+ cut_path_at = strlen (win32_path);
+ strcat (win32_path, "\\");
+ strcat (win32_path, ZONES_TAB_SYSTEM_FILENAME);
+
+ if (!access (win32_path, F_OK|R_OK)) {
+ win32_path[cut_path_at] = 0;
+ zdir = win32_path;
+ } else {
+ fprintf (stderr, "libical: Failed to find '%s'\n", win32_path);
+ }
+ }
+ }
+ }
+ #undef ZONEINFO_REL_PATH
+ #endif
}
@@ -256,6 +298,14 @@ icaltzutil_fetch_timezone (const char *l
full_path = (char *) malloc (strlen (basedir) + strlen (location) + 2);
sprintf (full_path,"%s/%s",basedir, location);
+ #ifdef WIN32
+ pos = strlen(basedir);
+ while(full_path[pos]) {
+ if (full_path[pos] == '/')
+ full_path[pos] = '\\';
+ pos++;
+ }
+ #endif
if ((f = fopen (full_path, "rb")) == 0) {
icalerror_set_errno (ICAL_FILE_ERROR);

View File

@ -0,0 +1,56 @@
diff -upr -x .deps -x .libs -x '*.la' liboauth-1.0.1.old/src/Makefile liboauth-1.0.1/src/Makefile
--- liboauth-1.0.1.old/src/Makefile 2014-06-20 20:41:31 +0000
+++ liboauth-1.0.1/src/Makefile 2014-06-20 20:38:41 +0000
@@ -249,7 +249,7 @@ ACLOCAL_AMFLAGS = -I m4
lib_LTLIBRARIES = liboauth.la
include_HEADERS = oauth.h
liboauth_la_SOURCES = oauth.c config.h hash.c xmalloc.c xmalloc.h oauth_http.c
-liboauth_la_LDFLAGS = -Wall -export-symbols-regex '^oauth_.*' -Wl,--as-needed -version-info 8:5:8
+liboauth_la_LDFLAGS = -Wall -export-symbols-regex '^oauth_.*' -Wl,--as-needed -version-info 8:5:8 -no-undefined
liboauth_la_LIBADD = -LC:/MinGW/msys/1.0/build/local/deps/lib -lssl3 -lsmime3 -lnss3 -lnssutil3 -lplds4 -lplc4 -lnspr4
liboauth_la_CFLAGS = -Wall -IC:/MinGW/msys/1.0/build/local/deps/include/nss -IC:/MinGW/msys/1.0/build/local/deps/include/nspr
all: config.h
diff -upr -x .deps -x .libs -x '*.la' liboauth-1.0.1.old/src/oauth.c liboauth-1.0.1/src/oauth.c
--- liboauth-1.0.1.old/src/oauth.c 2014-06-20 20:43:07 +0000
+++ liboauth-1.0.1/src/oauth.c 2014-05-17 20:27:28 +0000
@@ -48,8 +48,10 @@
#include <unistd.h>
#else
#define snprintf _snprintf
+#ifndef strncasecmp
#define strncasecmp strnicmp
#endif
+#endif
/**
* Base64 encode one byte
@@ -520,7 +522,7 @@ char *oauth_serialize_url_parameters (in
*/
#if !defined HAVE_OPENSSL_HMAC_H && !defined USE_NSS
/* pre liboauth-0.7.2 and possible future versions that don't use OpenSSL or NSS */
-char *oauth_gen_nonce() {
+char *oauth_gen_nonce(void) {
char *nc;
static int rndinit = 1;
const char *chars = "abcdefghijklmnopqrstuvwxyz"
@@ -557,7 +559,7 @@ char *oauth_gen_nonce() {
# define MY_RAND RAND_bytes
# define MY_SRAND ;
#endif
-char *oauth_gen_nonce() {
+char *oauth_gen_nonce(void) {
char *nc;
unsigned char buf;
const char *chars = "abcdefghijklmnopqrstuvwxyz"
diff -upr -x .deps -x .libs -x '*.la' liboauth-1.0.1.old/src/oauth.h liboauth-1.0.1/src/oauth.h
--- liboauth-1.0.1.old/src/oauth.h 2014-06-20 20:43:07 +0000
+++ liboauth-1.0.1/src/oauth.h 2014-05-17 20:27:28 +0000
@@ -262,7 +262,7 @@ char *oauth_serialize_url_parameters (in
*
* @return zero terminated random string.
*/
-char *oauth_gen_nonce();
+char *oauth_gen_nonce(void);
/**
* string compare function for oauth parameters.

View File

@ -0,0 +1,86 @@
diff -upr -x .deps -x .libs -x '*.la' libpng-1.6.7.old/scripts/makefile.msys libpng-1.6.7/scripts/makefile.msys
--- libpng-1.6.7.old/scripts/makefile.msys 2014-05-17 04:40:44 +0000
+++ libpng-1.6.7/scripts/makefile.msys 2014-05-17 05:27:20 +0000
@@ -12,7 +12,7 @@
# For conditions of distribution and use, see the disclaimer
# and license in png.h
# # # # # # # # # # # # # # # # #
-prefix=/usr/local
+prefix?=/usr/local
exec_prefix=$(prefix)
# Library name:
@@ -29,8 +29,8 @@ OLDSO=libpng.dll
# Where the zlib library and include files are located.
#ZLIBLIB=../zlib
#ZLIBINC=../zlib
-ZLIBLIB=/usr/local/lib
-ZLIBINC=/usr/local/include
+ZLIBLIB=$(prefix)/lib
+ZLIBINC=$(prefix)/include
# Compiler, linker, lib and other tools
CC = gcc
@@ -97,15 +97,14 @@ pnglibconf.h: scripts/pnglibconf.h.prebu
static: libpng$(A) pngtest$(EXE)
-shared: $(LIBSOMAJ)
- $(CC) -shared -Wl,-soname,$(LIBSOMAJ) -o $(LIBSO)
+shared: libpng$(A)
+ $(CC) -shared scripts/symbols.def $(LDFLAGS) -L$(ZLIBLIB) libpng$(A) $(LIBS) -o $(LIBSO) -Wl,--enable-auto-image-base -Xlinker --out-implib -Xlinker $(LIBSO)$(A)
+ cp $(LIBSO) $(LIBSOMAJ)
+ cp $(LIBSO)$(A) $(LIBSOMAJ)$(A)
$(LIBSO): $(LIBSOMAJ)
$(LN_SF) $(LIBSOMAJ) $(LIBSO)
-$(LIBSOMAJ):
- $(CC) -shared -Wl,-soname,$(LIBSOMAJ) -o $(LIBSOMAJ)
-
libpng$(A): $(OBJS)
$(AR_RC) $@ $(OBJS)
$(RANLIB) $@
@@ -144,8 +143,10 @@ install-shared: install-headers $(LIBSOM
-@if [ ! -d $(DL) ]; then $(MKDIR_P) $(DL); fi
-@$(RM_F) $(DL)/$(LIBSO)
-@$(RM_F) $(DL)/$(OLDSO)
- cp $(LIBSO) $(DL)/$(LIBSOREL)
- (cd $(DL); \
+ cp $(LIBSO).a $(DL)/$(LIBSO).a
+ cp $(LIBSOMAJ).a $(DL)/$(LIBSOMAJ).a
+ cp $(LIBSO) $(DB)/$(LIBSOREL)
+ (cd $(DB); \
$(LN_SF) $(LIBSOREL) $(LIBSO); \
$(LN_SF) $(LIBSO) $(OLDSO))
diff -upr -x .deps -x .libs -x '*.la' libpng-1.6.7.old/scripts/symbols.def libpng-1.6.7/scripts/symbols.def
--- libpng-1.6.7.old/scripts/symbols.def 2013-11-14 19:03:02 +0000
+++ libpng-1.6.7/scripts/symbols.def 2014-05-17 04:56:00 +0000
@@ -1,10 +1,3 @@
-;Version 1.6.7
-;--------------------------------------------------------------
-; LIBPNG symbol list as a Win32 DEF file
-; Contains all the symbols that can be exported from libpng
-;--------------------------------------------------------------
-LIBRARY
-
EXPORTS
png_access_version_number @1
png_set_sig_bytes @2
@@ -109,7 +102,6 @@ EXPORTS
png_free_default @101
png_error @102
png_chunk_error @103
- png_err @104
png_warning @105
png_chunk_warning @106
png_benign_error @107
@@ -190,7 +182,6 @@ EXPORTS
png_get_header_version @182
png_get_libpng_ver @183
png_permit_mng_features @184
- png_set_strip_error_numbers @185
png_set_user_limits @186
png_get_user_width_max @187
png_get_user_height_max @188

View File

@ -0,0 +1,157 @@
diff -upr libsecret-0.16.old/Makefile.am libsecret-0.16/Makefile.am
--- libsecret-0.16.old/Makefile.am 2013-03-25 12:10:12 +0000
+++ libsecret-0.16/Makefile.am 2014-04-20 18:49:09 +0000
@@ -3,7 +3,7 @@ include $(top_srcdir)/Makefile.decl
ACLOCAL_AMFLAGS = -I build/m4 ${ACLOCAL_FLAGS}
-SUBDIRS = build egg libsecret tool po docs .
+SUBDIRS = build egg libsecret po docs .
DISTCHECK_CONFIGURE_FLAGS = \
--enable-debug=yes \
diff -upr libsecret-0.16.old/configure.ac libsecret-0.16/configure.ac
--- libsecret-0.16.old/configure.ac 2013-06-21 13:11:14 +0000
+++ libsecret-0.16/configure.ac 2014-04-20 18:42:09 +0000
@@ -55,20 +55,48 @@ AM_GLIB_GNU_GETTEXT
# Checks for functions
AC_CHECK_FUNCS(mlock)
+AC_CHECK_FUNCS(gmtime_r strptime memrchr)
+AC_CHECK_HEADERS([err.h pwd.h syslog.h sys/mman.h sys/wait.h])
+
+dnl ******************************
+dnl Check for Win32
+dnl ******************************
+AC_MSG_CHECKING([for Win32])
+case "$host" in
+*-mingw*)
+ os_win32='yes'
+ AC_CACHE_VAL(ac_cv_have_addrinfo, [ac_cv_have_addrinfo=yes])
+ AC_DEFINE(_WIN32_WINNT, 0x501, [To get getaddrinfo etc declarations])
+ ;;
+*)
+ os_win32='no'
+ ;;
+esac
+AC_MSG_RESULT([$os_win32])
+AM_CONDITIONAL(OS_WIN32, [test $os_win32 = yes])
# --------------------------------------------------------------------
# GLib
+GIO_PLAT=
+if test "$os_win32" = "yes" ; then
+ GIO_PLAT=gio-windows-2.0
+else
+ GIO_PLAT=gio-unix-2.0
+fi
+
PKG_CHECK_MODULES(GLIB,
glib-2.0 >= 2.32.0
gio-2.0 >= 2.32.0
- gio-unix-2.0)
+ $GIO_PLAT)
LIBS="$LIBS $GLIB_LIBS"
CFLAGS="$CFLAGS $GLIB_CFLAGS"
GTK_DOC_CHECK(1.9)
-GOBJECT_INTROSPECTION_CHECK([1.29])
+AM_CONDITIONAL(HAVE_INTROSPECTION, test "yes" = "no")
+
+dnl GOBJECT_INTROSPECTION_CHECK([1.29])
AC_PATH_PROG(GLIB_MKENUMS, glib-mkenums)
# --------------------------------------------------------------------
diff -upr libsecret-0.16.old/egg/egg-secure-memory.c libsecret-0.16/egg/egg-secure-memory.c
--- libsecret-0.16.old/egg/egg-secure-memory.c 2012-10-27 10:23:32 +0000
+++ libsecret-0.16/egg/egg-secure-memory.c 2014-04-20 18:43:03 +0000
@@ -32,7 +32,9 @@
#include "egg-secure-memory.h"
#include <sys/types.h>
+#ifdef HAVE_SYS_MMAN_H
#include <sys/mman.h>
+#endif
#include <stddef.h>
#include <string.h>
#include <stdio.h>
@@ -188,9 +190,11 @@ pool_alloc (void)
/* Create a new pool */
if (pool == NULL) {
+#if !defined(_WIN32)
len = getpagesize () * 2;
pages = mmap (0, len, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0);
if (pages == MAP_FAILED)
+#endif
return NULL;
/* Fill in the block header, and inlude in block list */
@@ -254,7 +258,9 @@ pool_free (void* item)
VALGRIND_DESTROY_MEMPOOL (pool);
#endif
+#if !defined(_WIN32)
munmap (pool, pool->length);
+#endif
return;
}
@@ -860,11 +866,11 @@ sec_acquire_pages (size_t *sz,
ASSERT (*sz);
ASSERT (during_tag);
+#if defined(HAVE_MLOCK)
/* Make sure sz is a multiple of the page size */
pgsize = getpagesize ();
*sz = (*sz + pgsize -1) & ~(pgsize - 1);
-#if defined(HAVE_MLOCK)
pages = mmap (0, *sz, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0);
if (pages == MAP_FAILED) {
if (show_warning && egg_secure_warnings)
@@ -902,9 +908,9 @@ static void
sec_release_pages (void *pages, size_t sz)
{
ASSERT (pages);
- ASSERT (sz % getpagesize () == 0);
#if defined(HAVE_MLOCK)
+ ASSERT (sz % getpagesize () == 0);
if (munlock (pages, sz) < 0 && egg_secure_warnings)
fprintf (stderr, "couldn't unlock private memory: %s\n", strerror (errno));
@@ -914,7 +920,7 @@ sec_release_pages (void *pages, size_t s
DEBUG_ALLOC ("gkr-secure-memory: freed block ", sz);
#else
- ASSERT (FALSE);
+ ASSERT (0);
#endif
}
@@ -937,6 +943,11 @@ sec_block_create (size_t size,
if (getenv ("SECMEM_FORCE_FALLBACK"))
return NULL;
+#ifdef _WIN32
+ /* win32 does not have mlock(), so just fail in that case */
+ return NULL;
+#endif
+
block = pool_alloc ();
if (!block)
return NULL;
diff -upr libsecret-0.16.old/libsecret/Makefile.am libsecret-0.16/libsecret/Makefile.am
--- libsecret-0.16.old/libsecret/Makefile.am 2013-06-21 13:11:15 +0000
+++ libsecret-0.16/libsecret/Makefile.am 2014-04-20 18:45:31 +0000
@@ -1,6 +1,6 @@
include $(top_srcdir)/Makefile.decl
-SUBDIRS = . tests
+SUBDIRS = .
AM_CPPFLAGS = \
-I$(top_srcdir) \

View File

@ -0,0 +1,42 @@
diff -upr libtasn1-3.4.old/config.h libtasn1-3.4/config.h
--- libtasn1-3.4.old/config.h 2014-03-24 22:51:20 +0000
+++ libtasn1-3.4/config.h 2014-03-24 22:53:52 +0000
@@ -558,7 +558,7 @@
#define HAVE_WINSOCK2_H 1
/* Define to 1 if you have the `_ftelli64' function. */
-#define HAVE__FTELLI64 1
+#undef HAVE__FTELLI64
/* Define to 1 if you have the `_ftime' function. */
#define HAVE__FTIME 1
diff -upr libtasn1-3.4.old/gl/msvc-inval.c libtasn1-3.4/gl/msvc-inval.c
--- libtasn1-3.4.old/gl/msvc-inval.c 2014-03-24 22:52:55 +0000
+++ libtasn1-3.4/gl/msvc-inval.c 2014-03-24 22:50:23 +0000
@@ -28,7 +28,7 @@
# if MSVC_INVALID_PARAMETER_HANDLING == DEFAULT_HANDLING
-static void cdecl
+static void __cdecl
gl_msvc_invalid_parameter_handler (const wchar_t *expression,
const wchar_t *function,
const wchar_t *file,
@@ -45,7 +45,7 @@ gl_msvc_invalid_parameter_handler (const
# if defined _MSC_VER
-static void cdecl
+static void __cdecl
gl_msvc_invalid_parameter_handler (const wchar_t *expression,
const wchar_t *function,
const wchar_t *file,
@@ -94,7 +94,7 @@ gl_msvc_inval_current (void)
}
}
-static void cdecl
+static void __cdecl
gl_msvc_invalid_parameter_handler (const wchar_t *expression,
const wchar_t *function,
const wchar_t *file,

View File

@ -0,0 +1,24 @@
diff -upr -x .deps -x .libs -x '*.la' libxslt-1.1.28.old/Makefile.am libxslt-1.1.28/Makefile.am
--- libxslt-1.1.28.old/Makefile.am 2014-05-18 08:43:11 +0000
+++ libxslt-1.1.28/Makefile.am 2014-05-18 08:29:50 +0000
@@ -2,7 +2,6 @@ SUBDIRS = \
libxslt \
libexslt \
xsltproc \
- doc \
$(PYTHON_SUBDIR) \
tests
diff -upr -x .deps -x .libs -x '*.la' libxslt-1.1.28.old/libxslt/security.c libxslt-1.1.28/libxslt/security.c
--- libxslt-1.1.28.old/libxslt/security.c 2012-11-21 07:22:59 +0000
+++ libxslt-1.1.28/libxslt/security.c 2014-05-18 08:42:42 +0000
@@ -40,6 +40,9 @@
#define INVALID_FILE_ATTRIBUTES ((DWORD)-1)
#endif
#endif
+#if defined(WIN32)
+#include "win32config.h"
+#endif
#ifndef HAVE_STAT
# ifdef HAVE__STAT

View File

@ -0,0 +1,15 @@
diff -upr ncurses-5.9.old/include/curses.tail ncurses-5.9/include/curses.tail
--- ncurses-5.9.old/include/curses.tail 2014-03-19 18:30:52 +0000
+++ ncurses-5.9/include/curses.tail 2014-03-19 18:31:25 +0000
@@ -142,6 +142,11 @@ extern NCURSES_EXPORT(char *) _traceccha
#define _tracech_t _tracechtype
#define _tracech_t2 _tracechtype2
#endif
+
+#if defined(__MINGW32__)
+#undef trace
+#endif
+
extern NCURSES_EXPORT(char *) _tracemouse (const MEVENT *);
extern NCURSES_EXPORT(void) trace (const unsigned int);

464
win32/patches/nss.patch Normal file
View File

@ -0,0 +1,464 @@
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nspr/pr/include/md/_win32_errors.h nss-3.15.4/nspr/pr/include/md/_win32_errors.h
--- nss-3.15.4.old/nspr/pr/include/md/_win32_errors.h 2013-11-09 09:49:40 +0000
+++ nss-3.15.4/nspr/pr/include/md/_win32_errors.h 2014-07-29 18:09:32 +0000
@@ -6,8 +6,8 @@
#ifndef nspr_win32_errors_h___
#define nspr_win32_errors_h___
+#include <winsock2.h>
#include <windows.h>
-#include <winsock.h>
#include <errno.h>
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nspr/pr/include/md/_win95.h nss-3.15.4/nspr/pr/include/md/_win95.h
--- nss-3.15.4.old/nspr/pr/include/md/_win95.h 2013-11-09 09:49:40 +0000
+++ nss-3.15.4/nspr/pr/include/md/_win95.h 2014-07-29 18:09:32 +0000
@@ -8,8 +8,8 @@
#include "prio.h"
+#include <winsock2.h>
#include <windows.h>
-#include <winsock.h>
#include <errno.h>
/*
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nspr/pr/include/md/_winnt.h nss-3.15.4/nspr/pr/include/md/_winnt.h
--- nss-3.15.4.old/nspr/pr/include/md/_winnt.h 2013-11-09 09:49:40 +0000
+++ nss-3.15.4/nspr/pr/include/md/_winnt.h 2014-07-29 18:09:32 +0000
@@ -16,8 +16,8 @@
#define _WIN32_WINNT 0x0400
#endif /* _WIN32_WINNT */
+#include <winsock2.h>
#include <windows.h>
-#include <winsock.h>
#ifdef __MINGW32__
#include <mswsock.h>
#endif
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nspr/pr/include/pratom.h nss-3.15.4/nspr/pr/include/pratom.h
--- nss-3.15.4.old/nspr/pr/include/pratom.h 2014-07-29 17:38:22 +0000
+++ nss-3.15.4/nspr/pr/include/pratom.h 2014-07-29 18:09:32 +0000
@@ -14,6 +14,11 @@
#include "prtypes.h"
#include "prlock.h"
+#ifdef _WIN32
+#include <winsock2.h>
+#include <windows.h>
+#endif
+
PR_BEGIN_EXTERN_C
/*
@@ -78,20 +83,20 @@ NSPR_API(PRInt32) PR_AtomicAdd(PRInt32 *
** the macros and functions won't be compatible and can't be used
** interchangeably.
*/
-#if defined(_WIN32) && !defined(_WIN32_WCE) && \
- (!defined(_MSC_VER) || (_MSC_VER >= 1310))
+#if defined(_WIN32) && !defined(_WIN32_WCE)
+#if defined(_MSC_VER)
+#if (_MSC_VER >= 1310)
long __cdecl _InterlockedIncrement(long volatile *Addend);
long __cdecl _InterlockedDecrement(long volatile *Addend);
long __cdecl _InterlockedExchange(long volatile *Target, long Value);
long __cdecl _InterlockedExchangeAdd(long volatile *Addend, long Value);
+#endif
-#ifdef _MSC_VER
#pragma intrinsic(_InterlockedIncrement)
#pragma intrinsic(_InterlockedDecrement)
#pragma intrinsic(_InterlockedExchange)
#pragma intrinsic(_InterlockedExchangeAdd)
-#endif
#define PR_ATOMIC_INCREMENT(val) _InterlockedIncrement((long volatile *)(val))
#define PR_ATOMIC_DECREMENT(val) _InterlockedDecrement((long volatile *)(val))
@@ -100,6 +105,15 @@ long __cdecl _InterlockedExchangeAdd(lon
#define PR_ATOMIC_ADD(ptr, val) \
(_InterlockedExchangeAdd((long volatile *)(ptr), (long)(val)) + (val))
+#elif defined(__MINGW32__)
+#define PR_ATOMIC_INCREMENT(val) InterlockedIncrement((long volatile *)(val))
+#define PR_ATOMIC_DECREMENT(val) InterlockedDecrement((long volatile *)(val))
+#define PR_ATOMIC_SET(val, newval) \
+ InterlockedExchange((long volatile *)(val), (long)(newval))
+#define PR_ATOMIC_ADD(ptr, val) \
+ (InterlockedExchangeAdd((long volatile *)(ptr), (long)(val)) + (val))
+#endif
+
#elif ((__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 1)) && \
((defined(__APPLE__) && \
(defined(__ppc__) || defined(__i386__) || defined(__x86_64__))) || \
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nspr/pr/src/md/prosdep.c nss-3.15.4/nspr/pr/src/md/prosdep.c
--- nss-3.15.4.old/nspr/pr/src/md/prosdep.c 2013-11-09 09:49:40 +0000
+++ nss-3.15.4/nspr/pr/src/md/prosdep.c 2014-07-29 18:09:32 +0000
@@ -10,6 +10,7 @@
#include <unistd.h>
#endif
#ifdef _WIN32
+#include <winsock2.h>
#include <windows.h>
#endif
#ifdef XP_BEOS
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nspr/pr/src/md/windows/ntdllmn.c nss-3.15.4/nspr/pr/src/md/windows/ntdllmn.c
--- nss-3.15.4.old/nspr/pr/src/md/windows/ntdllmn.c 2013-11-09 09:49:40 +0000
+++ nss-3.15.4/nspr/pr/src/md/windows/ntdllmn.c 2014-07-29 18:09:32 +0000
@@ -16,6 +16,7 @@
* or not.
*/
+#include <winsock2.h>
#include <windows.h>
#include <primpl.h>
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nspr/pr/src/md/windows/ntgc.c nss-3.15.4/nspr/pr/src/md/windows/ntgc.c
--- nss-3.15.4.old/nspr/pr/src/md/windows/ntgc.c 2013-11-09 09:49:40 +0000
+++ nss-3.15.4/nspr/pr/src/md/windows/ntgc.c 2014-07-29 18:09:32 +0000
@@ -7,6 +7,7 @@
* GC related routines
*
*/
+#include <winsock2.h>
#include <windows.h>
#include "primpl.h"
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nspr/pr/src/md/windows/ntio.c nss-3.15.4/nspr/pr/src/md/windows/ntio.c
--- nss-3.15.4.old/nspr/pr/src/md/windows/ntio.c 2013-11-09 09:49:40 +0000
+++ nss-3.15.4/nspr/pr/src/md/windows/ntio.c 2014-07-29 18:09:32 +0000
@@ -2461,7 +2461,7 @@ _PR_MD_WRITE(PRFileDesc *fd, const void
PRInt32
_PR_MD_SOCKETAVAILABLE(PRFileDesc *fd)
{
- PRInt32 result;
+ u_long result;
if (ioctlsocket(fd->secret->md.osfd, FIONREAD, &result) < 0) {
PR_SetError(PR_BAD_DESCRIPTOR_ERROR, WSAGetLastError());
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nspr/pr/src/md/windows/ntmisc.c nss-3.15.4/nspr/pr/src/md/windows/ntmisc.c
--- nss-3.15.4.old/nspr/pr/src/md/windows/ntmisc.c 2013-11-09 09:49:40 +0000
+++ nss-3.15.4/nspr/pr/src/md/windows/ntmisc.c 2014-07-29 18:09:32 +0000
@@ -10,6 +10,7 @@
#include "primpl.h"
#include <math.h> /* for fabs() */
+#include <winsock2.h>
#include <windows.h>
char *_PR_MD_GET_ENV(const char *name)
@@ -769,10 +770,14 @@ PRStatus _PR_WaitWindowsProcess(PRProces
return PR_FAILURE;
}
PR_ASSERT(dwRetVal == WAIT_OBJECT_0);
- if (exitCode != NULL &&
- GetExitCodeProcess(process->md.handle, exitCode) == FALSE) {
- PR_SetError(PR_UNKNOWN_ERROR, GetLastError());
- return PR_FAILURE;
+ if (exitCode != NULL) {
+ DWORD dwExitCode = 0;
+ if (GetExitCodeProcess(process->md.handle, &dwExitCode) == FALSE) {
+ *exitCode = dwExitCode;
+ PR_SetError(PR_UNKNOWN_ERROR, GetLastError());
+ return PR_FAILURE;
+ }
+ *exitCode = dwExitCode;
}
CloseHandle(process->md.handle);
PR_DELETE(process);
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nspr/pr/src/md/windows/w32rng.c nss-3.15.4/nspr/pr/src/md/windows/w32rng.c
--- nss-3.15.4.old/nspr/pr/src/md/windows/w32rng.c 2013-11-09 09:49:40 +0000
+++ nss-3.15.4/nspr/pr/src/md/windows/w32rng.c 2014-07-29 18:09:32 +0000
@@ -3,6 +3,7 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+#include <winsock2.h>
#include <windows.h>
#include <time.h>
#include <io.h>
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nspr/pr/src/md/windows/w95dllmain.c nss-3.15.4/nspr/pr/src/md/windows/w95dllmain.c
--- nss-3.15.4.old/nspr/pr/src/md/windows/w95dllmain.c 2013-11-09 09:49:40 +0000
+++ nss-3.15.4/nspr/pr/src/md/windows/w95dllmain.c 2014-07-29 18:09:32 +0000
@@ -10,6 +10,7 @@
* nspr.
*/
+#include <winsock2.h>
#include <windows.h>
#include <primpl.h>
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nspr/pr/src/md/windows/w95sock.c nss-3.15.4/nspr/pr/src/md/windows/w95sock.c
--- nss-3.15.4.old/nspr/pr/src/md/windows/w95sock.c 2013-11-09 09:49:40 +0000
+++ nss-3.15.4/nspr/pr/src/md/windows/w95sock.c 2014-07-29 18:09:32 +0000
@@ -110,7 +110,7 @@ _MD_CloseSocket(PROsfd osfd)
PRInt32
_MD_SocketAvailable(PRFileDesc *fd)
{
- PRInt32 result;
+ u_long result;
if (ioctlsocket(fd->secret->md.osfd, FIONREAD, &result) < 0) {
PR_SetError(PR_BAD_DESCRIPTOR_ERROR, WSAGetLastError());
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nspr/pr/src/md/windows/win32_errors.c nss-3.15.4/nspr/pr/src/md/windows/win32_errors.c
--- nss-3.15.4.old/nspr/pr/src/md/windows/win32_errors.c 2013-11-09 09:49:40 +0000
+++ nss-3.15.4/nspr/pr/src/md/windows/win32_errors.c 2014-07-29 18:09:32 +0000
@@ -6,6 +6,7 @@
#include "prerror.h"
#include "prlog.h"
#include <errno.h>
+#include <winsock2.h>
#include <windows.h>
/*
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nspr/pr/src/misc/prtpool.c nss-3.15.4/nspr/pr/src/misc/prtpool.c
--- nss-3.15.4.old/nspr/pr/src/misc/prtpool.c 2013-11-09 09:49:40 +0000
+++ nss-3.15.4/nspr/pr/src/misc/prtpool.c 2014-07-29 18:09:32 +0000
@@ -12,6 +12,7 @@
*
*/
#ifdef OPT_WINNT
+#include <winsock2.h>
#include <windows.h>
#endif
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nss/cmd/crmftest/Makefile nss-3.15.4/nss/cmd/crmftest/Makefile
--- nss-3.15.4.old/nss/cmd/crmftest/Makefile 2014-07-29 17:38:22 +0000
+++ nss-3.15.4/nss/cmd/crmftest/Makefile 2014-07-29 18:09:32 +0000
@@ -58,7 +58,7 @@ include $(CORE_DEPTH)/coreconf/rules.mk
LDDIST = $(DIST)/lib
ifeq (,$(filter-out WIN%,$(OS_TARGET)))
-EXTRA_LIBS += $(LDDIST)/sectool.lib
+EXTRA_LIBS += $(LDDIST)/$(LIB_PREFIX)sectool.$(LIB_SUFFIX)
endif
include ../platrules.mk
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nss/cmd/manifest.mn nss-3.15.4/nss/cmd/manifest.mn
--- nss-3.15.4.old/nss/cmd/manifest.mn 2014-07-29 17:38:22 +0000
+++ nss-3.15.4/nss/cmd/manifest.mn 2014-07-29 18:09:32 +0000
@@ -47,7 +47,6 @@ DIRS = lib \
selfserv \
signtool \
signver \
- $(SHLIBSIGN_SRCDIR) \
smimetools \
ssltap \
strsclnt \
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nss/cmd/p7env/p7env.c nss-3.15.4/nss/cmd/p7env/p7env.c
--- nss-3.15.4.old/nss/cmd/p7env/p7env.c 2014-07-29 17:38:22 +0000
+++ nss-3.15.4/nss/cmd/p7env/p7env.c 2014-07-29 18:09:32 +0000
@@ -14,6 +14,14 @@
#include "certdb.h"
#include "nss.h"
+#if defined(XP_WIN32)
+#include <winsock2.h>
+#include <windows.h>
+#ifdef EncryptFile
+#undef EncryptFile
+#endif
+#endif
+
#if defined(XP_UNIX)
#include <unistd.h>
#endif
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nss/cmd/platlibs.mk nss-3.15.4/nss/cmd/platlibs.mk
--- nss-3.15.4.old/nss/cmd/platlibs.mk 2014-07-29 17:38:22 +0000
+++ nss-3.15.4/nss/cmd/platlibs.mk 2014-07-29 18:09:32 +0000
@@ -80,6 +80,7 @@ EXTRA_LIBS += \
$(DIST)/lib/$(LIB_PREFIX)cryptohi.$(LIB_SUFFIX) \
$(DIST)/lib/$(LIB_PREFIX)pk11wrap.$(LIB_SUFFIX) \
$(DIST)/lib/$(LIB_PREFIX)certdb.$(LIB_SUFFIX) \
+ $(DIST)/lib/$(LIB_PREFIX)certhi.$(LIB_SUFFIX) \
$(SOFTOKENLIB) \
$(CRYPTOLIB) \
$(DIST)/lib/$(LIB_PREFIX)nsspki.$(LIB_SUFFIX) \
@@ -95,10 +96,19 @@ EXTRA_LIBS += \
$(NULL)
# $(PROGRAM) has NO explicit dependencies on $(OS_LIBS)
-#OS_LIBS += \
+ifdef NS_USE_GCC
+ OS_LIBS += \
+ -lws2_32 \
+ -lwsock32 \
+ -lwinmm \
+ $(NULL)
+else
+ OS_LIBS += \
wsock32.lib \
winmm.lib \
$(NULL)
+endif
+
else
EXTRA_LIBS += \
@@ -167,10 +177,19 @@ EXTRA_LIBS += \
$(NULL)
# $(PROGRAM) has NO explicit dependencies on $(OS_LIBS)
-#OS_LIBS += \
+ifdef NS_USE_GCC
+ OS_LIBS += \
+ -lws2_32 \
+ -lwsock32 \
+ -lwinmm \
+ $(NULL)
+else
+ OS_LIBS += \
wsock32.lib \
winmm.lib \
$(NULL)
+endif
+
else
# $(PROGRAM) has explicit dependencies on $(EXTRA_LIBS)
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nss/cmd/shlibsign/shlibsign.c nss-3.15.4/nss/cmd/shlibsign/shlibsign.c
--- nss-3.15.4.old/nss/cmd/shlibsign/shlibsign.c 2014-07-29 17:38:22 +0000
+++ nss-3.15.4/nss/cmd/shlibsign/shlibsign.c 2014-07-29 18:09:32 +0000
@@ -560,7 +560,7 @@ softokn_Init(CK_FUNCTION_LIST_PTR pFunct
CK_C_INITIALIZE_ARGS initArgs;
char *moduleSpec = NULL;
- initArgs.CreateMutex = NULL;
+ initArgs.GenerateMutex = NULL;
initArgs.DestroyMutex = NULL;
initArgs.LockMutex = NULL;
initArgs.UnlockMutex = NULL;
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nss/coreconf/WINNT.mk nss-3.15.4/nss/coreconf/WINNT.mk
--- nss-3.15.4.old/nss/coreconf/WINNT.mk 2014-07-29 17:38:22 +0000
+++ nss-3.15.4/nss/coreconf/WINNT.mk 2014-07-29 18:09:32 +0000
@@ -12,9 +12,14 @@ include $(CORE_DEPTH)/coreconf/WIN32.mk
DEFINES += -DWINNT
#
-# Win NT needs -GT so that fibers can work
+# MinGW needs IE 4.0 to have SHGetSpecialFolderPath functions
+# MSVC needs -GT so that fibers can work
#
-OS_CFLAGS += -GT
+ifdef NS_USE_GCC
+ OS_CFLAGS += -D_WIN32_IE=0x0400
+else
+ OS_CFLAGS += -GT
+endif
# WINNT uses the lib prefix, Win95 doesn't
NSPR31_LIB_PREFIX = lib
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nss/lib/ckfw/wrap.c nss-3.15.4/nss/lib/ckfw/wrap.c
--- nss-3.15.4.old/nss/lib/ckfw/wrap.c 2014-07-29 17:38:22 +0000
+++ nss-3.15.4/nss/lib/ckfw/wrap.c 2014-07-29 18:09:32 +0000
@@ -107,7 +107,7 @@ nssCKFW_GetThreadSafeState(CK_C_INITIALI
*pLocking_state = MultiThreaded;
return CKR_OK;
}
- if ((CK_CREATEMUTEX) NULL != pInitArgs->CreateMutex) functionCount++;
+ if ((CK_CREATEMUTEX) NULL != pInitArgs->GenerateMutex) functionCount++;
if ((CK_DESTROYMUTEX) NULL != pInitArgs->DestroyMutex) functionCount++;
if ((CK_LOCKMUTEX) NULL != pInitArgs->LockMutex) functionCount++;
if ((CK_UNLOCKMUTEX) NULL != pInitArgs->UnlockMutex) functionCount++;
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nss/lib/libpkix/pkix_pl_nss/system/pkix_pl_object.c nss-3.15.4/nss/lib/libpkix/pkix_pl_nss/system/pkix_pl_object.c
--- nss-3.15.4.old/nss/lib/libpkix/pkix_pl_nss/system/pkix_pl_object.c 2014-07-29 17:38:22 +0000
+++ nss-3.15.4/nss/lib/libpkix/pkix_pl_nss/system/pkix_pl_object.c 2014-07-29 18:09:32 +0000
@@ -480,6 +480,8 @@ cleanup:
* work as proxy function to a real objects.
*
*/
+#undef ERROR
+
PKIX_Error *
pkix_pl_Object_RegisterSelf(void *plContext)
{
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nss/lib/softoken/legacydb/manifest.mn nss-3.15.4/nss/lib/softoken/legacydb/manifest.mn
--- nss-3.15.4.old/nss/lib/softoken/legacydb/manifest.mn 2014-07-29 17:38:22 +0000
+++ nss-3.15.4/nss/lib/softoken/legacydb/manifest.mn 2014-07-29 18:09:32 +0000
@@ -12,6 +12,8 @@ LIBRARY_NAME = nssdbm
LIBRARY_VERSION = 3
MAPFILE = $(OBJDIR)/nssdbm.def
+OS_CFLAGS += -I../../../../../dbm/include
+
DEFINES += -DSHLIB_SUFFIX=\"$(DLL_SUFFIX)\" -DSHLIB_PREFIX=\"$(DLL_PREFIX)\"
CSRCS = \
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nss/lib/softoken/pkcs11.c nss-3.15.4/nss/lib/softoken/pkcs11.c
--- nss-3.15.4.old/nss/lib/softoken/pkcs11.c 2014-07-29 17:38:22 +0000
+++ nss-3.15.4/nss/lib/softoken/pkcs11.c 2014-07-29 18:09:32 +0000
@@ -2855,7 +2855,7 @@ CK_RV nsc_CommonInitialize(CK_VOID_PTR p
/* initialize the key and cert db's */
if (init_args && (!(init_args->flags & CKF_OS_LOCKING_OK))) {
- if (init_args->CreateMutex && init_args->DestroyMutex &&
+ if (init_args->GenerateMutex && init_args->DestroyMutex &&
init_args->LockMutex && init_args->UnlockMutex) {
/* softoken always uses NSPR (ie. OS locking), and doesn't know how
* to use the lock functions provided by the application.
@@ -2863,7 +2863,7 @@ CK_RV nsc_CommonInitialize(CK_VOID_PTR p
crv = CKR_CANT_LOCK;
return crv;
}
- if (init_args->CreateMutex || init_args->DestroyMutex ||
+ if (init_args->GenerateMutex || init_args->DestroyMutex ||
init_args->LockMutex || init_args->UnlockMutex) {
/* only some of the lock functions were provided by the
* application. This is invalid per PKCS#11 spec.
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nss/lib/ssl/sslmutex.c nss-3.15.4/nss/lib/ssl/sslmutex.c
--- nss-3.15.4.old/nss/lib/ssl/sslmutex.c 2014-07-29 17:38:22 +0000
+++ nss-3.15.4/nss/lib/ssl/sslmutex.c 2014-07-29 18:09:32 +0000
@@ -6,6 +6,11 @@
/* This ifdef should match the one in sslsnce.c */
#if defined(XP_UNIX) || defined(XP_WIN32) || defined (XP_OS2) || defined(XP_BEOS)
+#if defined(XP_WIN32)
+#include <winsock2.h>
+#include <windows.h>
+#endif
+
#include "sslmutex.h"
#include "prerr.h"
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nss/lib/util/pkcs11t.h nss-3.15.4/nss/lib/util/pkcs11t.h
--- nss-3.15.4.old/nss/lib/util/pkcs11t.h 2014-07-29 17:38:22 +0000
+++ nss-3.15.4/nss/lib/util/pkcs11t.h 2014-07-29 18:09:32 +0000
@@ -1181,7 +1181,7 @@ typedef CK_CALLBACK_FUNCTION(CK_RV, CK_U
/* CK_C_INITIALIZE_ARGS provides the optional arguments to
* C_Initialize */
typedef struct CK_C_INITIALIZE_ARGS {
- CK_CREATEMUTEX CreateMutex;
+ CK_CREATEMUTEX GenerateMutex;
CK_DESTROYMUTEX DestroyMutex;
CK_LOCKMUTEX LockMutex;
CK_UNLOCKMUTEX UnlockMutex;
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nss/lib/util/secport.c nss-3.15.4/nss/lib/util/secport.c
--- nss-3.15.4.old/nss/lib/util/secport.c 2014-07-29 17:38:22 +0000
+++ nss-3.15.4/nss/lib/util/secport.c 2014-07-29 18:09:32 +0000
@@ -31,6 +31,10 @@
#if defined(XP_UNIX) || defined(XP_OS2) || defined(XP_BEOS)
#include <stdlib.h>
#else
+#if defined(XP_WIN32)
+#include <winsock2.h>
+#include <windows.h>
+#endif
#include "wtypes.h"
#endif
diff -upr -x .deps -x .libs -x '*.la' nss-3.15.4.old/nss/nss.pc nss-3.15.4/nss/nss.pc
--- nss-3.15.4.old/nss/nss.pc 2014-07-29 17:44:30 +0000
+++ nss-3.15.4/nss/nss.pc 2014-07-29 18:09:32 +0000
@@ -0,0 +1,10 @@
+exec_prefix=${prefix}
+libdir=${exec_prefix}/lib
+includedir=${prefix}/include/nss
+
+Name: NSS
+Description: The Netscape Security Services
+Version: 3.15.4
+Requires: nspr
+Libs: -L${exec_prefix}/lib -lssl3 -lsmime3 -lnss3 -lnssutil3
+Cflags: -I${prefix}/include/nss

View File

@ -0,0 +1,82 @@
diff -upr openldap-2.4.9.old/Makefile openldap-2.4.9/Makefile
--- openldap-2.4.9.old/Makefile 2014-03-26 05:17:05 +0000
+++ openldap-2.4.9/Makefile 2014-03-26 21:20:23 +0000
@@ -264,7 +264,7 @@ FORCE:
## top-level directory of the distribution or, alternatively, at
## <http://www.OpenLDAP.org/license.html>.
-SUBDIRS= include libraries clients servers tests doc
+SUBDIRS= include libraries clients servers
CLEANDIRS=
INSTALLDIRS=
diff -upr openldap-2.4.9.old/Makefile.in openldap-2.4.9/Makefile.in
--- openldap-2.4.9.old/Makefile.in 2014-03-26 05:17:05 +0000
+++ openldap-2.4.9/Makefile.in 2014-03-26 21:20:00 +0000
@@ -13,7 +13,7 @@
## top-level directory of the distribution or, alternatively, at
## <http://www.OpenLDAP.org/license.html>.
-SUBDIRS= include libraries clients servers tests doc
+SUBDIRS= include libraries clients servers
CLEANDIRS=
INSTALLDIRS=
diff -upr openldap-2.4.9.old/include/ldap_pvt_thread.h openldap-2.4.9/include/ldap_pvt_thread.h
--- openldap-2.4.9.old/include/ldap_pvt_thread.h 2014-03-26 05:17:20 +0000
+++ openldap-2.4.9/include/ldap_pvt_thread.h 2014-03-26 21:19:42 +0000
@@ -61,7 +61,7 @@ ldap_pvt_thread_set_concurrency LDAP_P((
#define LDAP_PVT_THREAD_SET_STACK_SIZE
#ifndef LDAP_PVT_THREAD_STACK_SIZE
/* LARGE stack. Will be twice as large on 64 bit machine. */
-#define LDAP_PVT_THREAD_STACK_SIZE ( 1 * 1024 * 1024 * sizeof(void *) )
+#define LDAP_PVT_THREAD_STACK_SIZE ( 1 * 1024 * 1024 * 4 )
/* May be explicitly defined to zero to disable it */
#elif LDAP_PVT_THREAD_STACK_SIZE == 0
#undef LDAP_PVT_THREAD_SET_STACK_SIZE
diff -upr openldap-2.4.9.old/include/portable.h openldap-2.4.9/include/portable.h
--- openldap-2.4.9.old/include/portable.h 2014-03-26 05:17:20 +0000
+++ openldap-2.4.9/include/portable.h 2014-03-26 21:19:42 +0000
@@ -1086,7 +1086,7 @@
#define snprintf _snprintf
/* Define like ber_socklen_t if <sys/socket.h> does not define. */
-#define socklen_t int
+/*#define socklen_t int*/
/* Define to `signed int' if <sys/types.h> does not define. */
/* #undef ssize_t */
diff -upr openldap-2.4.9.old/libraries/libldap_r/Makefile openldap-2.4.9/libraries/libldap_r/Makefile
--- openldap-2.4.9.old/libraries/libldap_r/Makefile 2014-03-26 05:17:20 +0000
+++ openldap-2.4.9/libraries/libldap_r/Makefile 2014-03-26 21:19:42 +0000
@@ -304,10 +304,10 @@ LIB_DEFS = -DLDAP_LIBRARY
XDEFS = -DLDAP_R_COMPILE -I$(XXDIR)
XLIBS = $(LIBRARY) $(LDAP_LIBLBER_LA) $(LDAP_LIBLUTIL_A)
-XXLIBS = $(SECURITY_LIBS) $(LUTIL_LIBS)
+XXLIBS = $(SECURITY_LIBS) $(LUTIL_LIBS) -lgcrypt
XXXLIBS = $(LTHREAD_LIBS)
-NT_LINK_LIBS = $(LDAP_LIBLBER_LA) $(AC_LIBS) $(SECURITY_LIBS)
-UNIX_LINK_LIBS = $(LDAP_LIBLBER_LA) $(AC_LIBS) $(SECURITY_LIBS) $(LTHREAD_LIBS)
+NT_LINK_LIBS = $(LDAP_LIBLBER_LA) $(AC_LIBS) $(SECURITY_LIBS) -lgcrypt
+UNIX_LINK_LIBS = $(LDAP_LIBLBER_LA) $(AC_LIBS) $(SECURITY_LIBS) $(LTHREAD_LIBS) -lgcrypt
.links : Makefile
@for i in $(XXSRCS); do \
diff -upr openldap-2.4.9.old/libraries/libldap_r/Makefile.in openldap-2.4.9/libraries/libldap_r/Makefile.in
--- openldap-2.4.9.old/libraries/libldap_r/Makefile.in 2014-03-26 05:17:20 +0000
+++ openldap-2.4.9/libraries/libldap_r/Makefile.in 2014-03-26 21:19:42 +0000
@@ -53,10 +53,10 @@ LIB_DEFS = -DLDAP_LIBRARY
XDEFS = -DLDAP_R_COMPILE -I$(XXDIR)
XLIBS = $(LIBRARY) $(LDAP_LIBLBER_LA) $(LDAP_LIBLUTIL_A)
-XXLIBS = $(SECURITY_LIBS) $(LUTIL_LIBS)
+XXLIBS = $(SECURITY_LIBS) $(LUTIL_LIBS) -lgcrypt
XXXLIBS = $(LTHREAD_LIBS)
-NT_LINK_LIBS = $(LDAP_LIBLBER_LA) $(AC_LIBS) $(SECURITY_LIBS)
-UNIX_LINK_LIBS = $(LDAP_LIBLBER_LA) $(AC_LIBS) $(SECURITY_LIBS) $(LTHREAD_LIBS)
+NT_LINK_LIBS = $(LDAP_LIBLBER_LA) $(AC_LIBS) $(SECURITY_LIBS) -lgcrypt
+UNIX_LINK_LIBS = $(LDAP_LIBLBER_LA) $(AC_LIBS) $(SECURITY_LIBS) $(LTHREAD_LIBS) -lgcrypt
.links : Makefile
@for i in $(XXSRCS); do \

View File

@ -0,0 +1,60 @@
diff -upr p11-kit-98292d6bbc.old/configure.ac p11-kit-98292d6bbc/configure.ac
--- p11-kit-98292d6bbc.old/configure.ac 2014-03-24 21:44:56 +0000
+++ p11-kit-98292d6bbc/configure.ac 2014-03-24 20:45:41 +0000
@@ -22,7 +22,7 @@ P11KIT_AGE=0
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_MACRO_DIR([build/m4])
AC_CONFIG_AUX_DIR([build/litter])
-AM_INIT_AUTOMAKE([1.10 foreign serial-tests])
+AM_INIT_AUTOMAKE([1.10 foreign])
AM_SANITY_CHECK
AM_MAINTAINER_MODE([enable])
m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])],)
diff -upr p11-kit-98292d6bbc.old/common/compat.c p11-kit-98292d6bbc/common/compat.c
--- p11-kit-98292d6bbc.old/common/compat.c 2014-03-26 05:06:34 +0000
+++ p11-kit-98292d6bbc/common/compat.c 2014-03-26 05:04:47 +0000
@@ -840,7 +840,17 @@ strerror_r (int errnum,
size_t buflen)
{
#ifdef OS_WIN32
+ #ifdef __MINGW32__
+ char *str = strerror (errnum);
+ if (!str) {
+ *buf = 0;
+ return EINVAL;
+ }
+ strncpy (buf, str, buflen);
+ return 0;
+ #else
return strerror_s (buf, buflen, errnum);
+ #endif
#else
#error no strerror_r implementation
#endif
diff -upr p11-kit-98292d6bbc.old/p11-kit/Makefile.am p11-kit-98292d6bbc/p11-kit/Makefile.am
--- p11-kit-98292d6bbc.old/p11-kit/Makefile.am 2014-03-26 05:06:05 +0000
+++ p11-kit-98292d6bbc/p11-kit/Makefile.am 2014-03-24 23:17:41 +0000
@@ -98,6 +98,11 @@ libp11_kit_testable_la_CFLAGS = \
$(LIBFFI_CFLAGS) \
$(NULL)
+# Proxy module is actually same as library, so install a link
+install-exec-hook:
+ $(LN_S) -f `readlink $(DESTDIR)$(libdir)/libp11-kit.so` $(DESTDIR)$(libdir)/p11-kit-proxy.so
+ $(MKDIR_P) $(DESTDIR)$(p11_package_config_modules)
+
endif
pkgconfigdir = $(libdir)/pkgconfig
@@ -112,11 +117,6 @@ EXTRA_DIST = \
docs.h \
$(NULL)
-# Proxy module is actually same as library, so install a link
-install-exec-hook:
- $(LN_S) -f `readlink $(DESTDIR)$(libdir)/libp11-kit.so` $(DESTDIR)$(libdir)/p11-kit-proxy.so
- $(MKDIR_P) $(DESTDIR)$(p11_package_config_modules)
-
bin_PROGRAMS = \
p11-kit

48
win32/patches/regex.patch Normal file
View File

@ -0,0 +1,48 @@
diff -upr -x .deps -x .libs -x '*.la' regex-20090805.old/lib/gettext.h regex-20090805/lib/gettext.h
--- regex-20090805.old/lib/gettext.h 2009-08-05 19:37:29 +0000
+++ regex-20090805/lib/gettext.h 2014-05-31 06:05:12 +0000
@@ -178,7 +178,7 @@ npgettext_aux (const char *domain,
#include <string.h>
#define _LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS \
- (((__GNUC__ >= 3 || __GNUG__ >= 2) && !__STRICT_ANSI__) \
+ (((__GNUC__ >= 3 || __GNUG__ >= 2) && (defined(__STRICT_ANSI__) && !__STRICT_ANSI__)) \
/* || __STDC_VERSION__ >= 199901L */ )
#if !_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS
diff -upr -x .deps -x .libs -x '*.la' regex-20090805.old/lib/regex.h regex-20090805/lib/regex.h
--- regex-20090805.old/lib/regex.h 2009-08-05 19:37:32 +0000
+++ regex-20090805/lib/regex.h 2014-05-31 06:05:29 +0000
@@ -630,7 +630,7 @@ extern int re_exec (const char *);
'configure' might #define 'restrict' to those words, so pick a
different name. */
#ifndef _Restrict_
-# if 199901L <= __STDC_VERSION__
+# if (defined(__STDC_VERSION__) && 199901L <= __STDC_VERSION__)
# define _Restrict_ restrict
# elif 2 < __GNUC__ || (2 == __GNUC__ && 95 <= __GNUC_MINOR__)
# define _Restrict_ __restrict
@@ -642,9 +642,9 @@ extern int re_exec (const char *);
sys/cdefs.h's definition of __restrict_arr, though, as it
mishandles gcc -ansi -pedantic. */
#ifndef _Restrict_arr_
-# if ((199901L <= __STDC_VERSION__ \
+# if (((defined(__STDC_VERSION__) && 199901L <= __STDC_VERSION__) \
|| ((3 < __GNUC__ || (3 == __GNUC__ && 1 <= __GNUC_MINOR__)) \
- && !__STRICT_ANSI__)) \
+ && (!defined(__STRICT_ANSI__) || !__STRICT_ANSI__))) \
&& !defined __GNUG__)
# define _Restrict_arr_ _Restrict_
# else
diff -upr -x .deps -x .libs -x '*.la' regex-20090805.old/lib/regex_internal.h regex-20090805/lib/regex_internal.h
--- regex-20090805.old/lib/regex_internal.h 2009-08-05 19:37:33 +0000
+++ regex-20090805/lib/regex_internal.h 2014-05-31 06:05:50 +0000
@@ -338,7 +338,7 @@ typedef struct
Idx idx; /* for BACK_REF */
re_context_type ctx_type; /* for ANCHOR */
} opr;
-#if __GNUC__ >= 2 && !__STRICT_ANSI__
+#if __GNUC__ >= 2 && (defined(__STRICT_ANSI__) && !__STRICT_ANSI__)
re_token_type_t type : 8;
#else
re_token_type_t type;

101
win32/patches/rss.patch Normal file
View File

@ -0,0 +1,101 @@
diff --git a/configure.ac b/configure.ac
index 6679ab5..f7fdae5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -104,6 +104,7 @@ PKG_CHECK_MODULES(EVOLUTION_RSS_EPLUGIN,
libsoup$SOUP >= $LIBSOUP_REQUIRED dnl
$EVOLUTION_PLUGIN_CHECK dnl
evolution-shell$EVOLUTION_BASE_VERSION_S >= $EVOLUTION_REQUIRED dnl
+ evolution-mail$EVOLUTION_BASE_VERSION_S >= $EVOLUTION_REQUIRED dnl
$EVOLUTION_ADDITIONAL dnl
libebook-1.2 dnl
])
@@ -316,12 +317,6 @@ AC_SUBST(RENDER_CFLAGS)
AC_SUBST(RENDER)
AC_SUBST(RENDER_N)
-dnl ***********
-dnl GConf stuff
-dnl ***********
-AC_PATH_PROG(GCONFTOOL, gconftool-2, no)
-AM_GCONF_SOURCE_2
-
dnl ***************
dnl Gsettings stuff
dnl ***************
diff --git a/src/Makefile.am b/src/Makefile.am
index 91f2671..c0c6ecd 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -130,8 +130,12 @@ evolution_module_rss_la_CPPFLAGS = \
$(AM_CPPFLAGS) \
-I$(top_srcdir) \
-DEVOLUTION_PRIVDATADIR=\""$(privdatadir)"\" \
- -DG_LOG_DOMAIN=\"evolution-module-rss\" \
- $(EVOLUTION_RSS_EPLUGIN_LIBS)
+ -DG_LOG_DOMAIN=\"evolution-module-rss\"
+
+evolution_module_rss_la_LIBADD = \
+ $(EVOLUTION_RSS_EPLUGIN_LIBS) \
+ $(DATASERVER_LIBS)
+
evolution_module_rss_la_LDFLAGS = \
diff --git a/src/e-mail-formatter-evolution-rss.c b/src/e-mail-formatter-evolution-rss.c
index 6ae8d16..fd581d1 100644
--- a/src/e-mail-formatter-evolution-rss.c
+++ b/src/e-mail-formatter-evolution-rss.c
@@ -30,7 +30,6 @@
#include <libedataserver/libedataserver.h>
#include <glib/gi18n-lib.h>
-#include <X11/Xlib.h>
#include <camel/camel.h>
#include "misc.h"
diff --git a/src/rss-config-factory.c b/src/rss-config-factory.c
index a4f22e8..3529a64 100644
--- a/src/rss-config-factory.c
+++ b/src/rss-config-factory.c
@@ -552,11 +552,18 @@ folder_cb (GtkWidget *widget, gpointer data)
model = em_folder_tree_model_get_default ();
#endif
#if EVOLUTION_VERSION >= 30303
+#if EVOLUTION_VERSION >= 31301
+ dialog = em_folder_selector_new (window, model);
+ em_folder_selector_set_can_create (EM_FOLDER_SELECTOR (dialog), TRUE);
+ em_folder_selector_set_caption (EM_FOLDER_SELECTOR (dialog), _("Move to Folder"));
+ em_folder_selector_set_default_button_label (EM_FOLDER_SELECTOR (dialog), _("M_ove"));
+#else
dialog = em_folder_selector_new (
window,
model,
EM_FOLDER_SELECTOR_CAN_CREATE,
_("Move to Folder"), NULL, _("M_ove"));
+#endif
#else
dialog = em_folder_selector_new (
window,
diff --git a/src/rss-evo-common.c b/src/rss-evo-common.c
index 1a96862..269565b 100644
--- a/src/rss-evo-common.c
+++ b/src/rss-evo-common.c
@@ -55,6 +55,17 @@
#include <libsoup/soup-gnome-features.h>
#endif
+#ifdef G_OS_WIN32
+#include <winsock2.h>
+#include <ws2tcpip.h>
+#ifdef HAVE_WSPIAPI_H
+#include <wspiapi.h>
+#endif
+
+#define IN6_ARE_ADDR_EQUAL(a,b) IN6_ADDR_EQUAL(a,b)
+
+#endif
+
#define d(x)
#include "rss-evo-common.h"

View File

@ -0,0 +1,42 @@
diff -upr tzdata2014b.old/Makefile tzdata2014b/Makefile
--- tzdata2014b.old/Makefile 2014-03-30 17:49:03 +0000
+++ tzdata2014b/Makefile 2014-03-30 20:19:53 +0000
@@ -52,7 +52,7 @@ TOPDIR= /usr/local
# Use an absolute path name for TZDIR unless you're just testing the software.
TZDIR_BASENAME= zoneinfo
-TZDIR= $(TOPDIR)/etc/$(TZDIR_BASENAME)
+TZDIR= $(TOPDIR)/share/$(TZDIR_BASENAME)
# Types to try, as an alternative to time_t. int64_t should be first.
TIME_T_ALTERNATIVES= int64_t int32_t uint32_t uint64_t
@@ -223,7 +223,7 @@ GCC_DEBUG_FLAGS = -Dlint -g3 -O3 -fno-co
# before the first Monday in January when a "%V" format is used and January 1
# falls on a Friday, Saturday, or Sunday.
-CFLAGS=
+CFLAGS=-DHAVE_SYS_WAIT_H=0 -DHAVE_LINK=0 -DHAVE_SYMLINK=0 -DHAVE_STDINT_H=1
# Linker flags. Default to $(LFLAGS) for backwards compatibility
# to tzcode2012h and earlier.
diff -upr tzdata2014b.old/zic.c tzdata2014b/zic.c
--- tzdata2014b.old/zic.c 2014-03-30 17:49:03 +0000
+++ tzdata2014b/zic.c 2014-03-30 17:52:02 +0000
@@ -16,7 +16,7 @@
typedef int_fast64_t zic_t;
#define ZIC_MIN INT_FAST64_MIN
#define ZIC_MAX INT_FAST64_MAX
-#define SCNdZIC SCNdFAST64
+#define SCNdZIC "lld"
#ifndef ZIC_MAX_ABBR_LEN_WO_WARN
#define ZIC_MAX_ABBR_LEN_WO_WARN 6
@@ -2814,7 +2814,7 @@ mkdirs(char *argname)
** created by some other multiprocessor, so we get
** to do extra checking.
*/
- if (mkdir(name, MKDIR_UMASK) != 0) {
+ if (mkdir(name) != 0) {
const char *e = strerror(errno);
if (errno != EEXIST || !itsdir(name)) {

View File

@ -0,0 +1,727 @@
diff -upr -x .deps -x .libs -x '*.la' webkitgtk-2.4.1.old/Source/JavaScriptCore/jit/JITStubsX86.h webkitgtk-2.4.1/Source/JavaScriptCore/jit/JITStubsX86.h
--- webkitgtk-2.4.1.old/Source/JavaScriptCore/jit/JITStubsX86.h 2014-06-20 20:05:59 +0000
+++ webkitgtk-2.4.1/Source/JavaScriptCore/jit/JITStubsX86.h 2014-06-20 19:42:30 +0000
@@ -32,6 +32,7 @@
#define JITStubsX86_h
#include "JITStubsX86Common.h"
+#include <wtf/InlineASM.h>
#if !CPU(X86)
#error "JITStubsX86.h should only be #included if CPU(X86)"
@@ -198,6 +199,225 @@ SYMBOL_STRING(ctiMasmProbeTrampolineEnd)
);
#endif // USE(MASM_PROBE)
+#if OS(WINDOWS) && ENABLE(JIT)
+extern "C" {
+
+ // FIXME: Since Windows doesn't use the LLInt, we have inline stubs here.
+ // Until the LLInt is changed to support Windows, these stub needs to be updated.
+ asm (
+ ".globl " SYMBOL_STRING(callToJavaScript) "\n"
+ HIDE_SYMBOL(callToJavaScript) "\n"
+ SYMBOL_STRING(callToJavaScript) ":" "\n"
+ "mov (%esp),%edx" "\n"
+ "push %ebp" "\n"
+ "mov %ebp,%eax" "\n"
+ "mov %esp,%ebp" "\n"
+ "push %esi" "\n"
+ "push %edi" "\n"
+ "push %ebx" "\n"
+ "sub $0x1c,%esp" "\n"
+ "mov 0x34(%esp),%ecx" "\n"
+ "mov 0x38(%esp),%esi" "\n"
+ "mov 0x3c(%esp),%ebp" "\n"
+ "sub $0x20,%ebp" "\n"
+ "movl $0x0,0x24(%ebp)" "\n"
+ "movl $0x0,0x20(%ebp)" "\n"
+ "movl $0x0,0x1c(%ebp)" "\n"
+ "mov %ecx,0x18(%ebp)" "\n"
+ "mov (%ecx),%ebx" "\n"
+ "movl $0x0,0x14(%ebp)" "\n"
+ "mov %ebx,0x10(%ebp)" "\n"
+ "movl $0x0,0xc(%ebp)" "\n"
+ "movl $0x1,0x8(%ebp)" "\n"
+ "mov %edx,0x4(%ebp)" "\n"
+ "mov %eax,0x0(%ebp)" "\n"
+ "mov %ebp,%eax" "\n"
+
+ "mov 0x28(%esi),%edx" "\n"
+ "add $0x5,%edx" "\n"
+ "shl $0x3,%edx" "\n"
+ "sub %edx,%ebp" "\n"
+ "mov %eax,0x0(%ebp)" "\n"
+
+ "mov $0x5,%eax" "\n"
+
+ ".copyHeaderLoop:" "\n"
+ "sub $0x1,%eax" "\n"
+ "mov (%esi,%eax,8),%ecx" "\n"
+ "mov %ecx,0x8(%ebp,%eax,8)" "\n"
+ "mov 0x4(%esi,%eax,8),%ecx" "\n"
+ "mov %ecx,0xc(%ebp,%eax,8)" "\n"
+ "test %eax,%eax" "\n"
+ "jne .copyHeaderLoop" "\n"
+
+ "mov 0x18(%esi),%edx" "\n"
+ "sub $0x1,%edx" "\n"
+ "mov 0x28(%esi),%ecx" "\n"
+ "sub $0x1,%ecx" "\n"
+
+ "cmp %ecx,%edx" "\n"
+ "je .copyArgs" "\n"
+
+ "xor %eax,%eax" "\n"
+ "mov $0xfffffffc,%ebx" "\n"
+
+ ".fillExtraArgsLoop:" "\n"
+ "sub $0x1,%ecx" "\n"
+ "mov %eax,0x30(%ebp,%ecx,8)" "\n"
+ "mov %ebx,0x34(%ebp,%ecx,8)" "\n"
+ "cmp %ecx,%edx" "\n"
+ "jne .fillExtraArgsLoop" "\n"
+
+ ".copyArgs:" "\n"
+ "mov 0x2c(%esi),%eax" "\n"
+
+ ".copyArgsLoop:" "\n"
+ "test %edx,%edx" "\n"
+ "je .copyArgsDone" "\n"
+ "sub $0x1,%edx" "\n"
+ "mov (%eax,%edx,8),%ecx" "\n"
+ "mov 0x4(%eax,%edx,8),%ebx" "\n"
+ "mov %ecx,0x30(%ebp,%edx,8)" "\n"
+ "mov %ebx,0x34(%ebp,%edx,8)" "\n"
+ "jmp .copyArgsLoop" "\n"
+
+ ".copyArgsDone:" "\n"
+ "mov 0x34(%esp),%ecx" "\n"
+ "mov %ebp,(%ecx)" "\n"
+
+ "call *0x30(%esp)" "\n"
+
+ "cmpl $0x1,0x8(%ebp)" "\n"
+ "je .calleeFramePopped" "\n"
+ "mov 0x0(%ebp),%ebp" "\n"
+
+ ".calleeFramePopped:" "\n"
+ "mov 0x18(%ebp),%ecx" "\n"
+ "mov 0x10(%ebp),%ebx" "\n"
+ "mov %ebx,(%ecx)" "\n"
+
+ "add $0x1c,%esp" "\n"
+ "pop %ebx" "\n"
+ "pop %edi" "\n"
+ "pop %esi" "\n"
+ "pop %ebp" "\n"
+ "ret" "\n"
+
+ ".globl " SYMBOL_STRING(returnFromJavaScript) "\n"
+ HIDE_SYMBOL(returnFromJavaScript) "\n"
+ SYMBOL_STRING(returnFromJavaScript) ":" "\n"
+ "add $0x1c,%esp" "\n"
+ "pop %ebx" "\n"
+ "pop %edi" "\n"
+ "pop %esi" "\n"
+ "pop %ebp" "\n"
+ "ret" "\n"
+
+ ".globl " SYMBOL_STRING(callToNativeFunction) "\n"
+ HIDE_SYMBOL(callToNativeFunction) "\n"
+ SYMBOL_STRING(callToNativeFunction) ":" "\n"
+ "mov (%esp),%edx" "\n"
+ "push %ebp" "\n"
+ "mov %ebp,%eax" "\n"
+ "mov %esp,%ebp" "\n"
+ "push %esi" "\n"
+ "push %edi" "\n"
+ "push %ebx" "\n"
+ "sub $0x1c,%esp" "\n"
+ "mov 0x34(%esp),%ecx" "\n"
+ "mov 0x38(%esp),%esi" "\n"
+ "mov 0x3c(%esp),%ebp" "\n"
+ "sub $0x20,%ebp" "\n"
+ "movl $0x0,0x24(%ebp)" "\n"
+ "movl $0x0,0x20(%ebp)" "\n"
+ "movl $0x0,0x1c(%ebp)" "\n"
+ "mov %ecx,0x18(%ebp)" "\n"
+ "mov (%ecx),%ebx" "\n"
+ "movl $0x0,0x14(%ebp)" "\n"
+ "mov %ebx,0x10(%ebp)" "\n"
+ "movl $0x0,0xc(%ebp)" "\n"
+ "movl $0x1,0x8(%ebp)" "\n"
+ "mov %edx,0x4(%ebp)" "\n"
+ "mov %eax,0x0(%ebp)" "\n"
+ "mov %ebp,%eax" "\n"
+
+ "mov 0x28(%esi),%edx" "\n"
+ "add $0x5,%edx" "\n"
+ "shl $0x3,%edx" "\n"
+ "sub %edx,%ebp" "\n"
+ "mov %eax,0x0(%ebp)" "\n"
+
+ "mov $0x5,%eax" "\n"
+
+ "copyHeaderLoop:" "\n"
+ "sub $0x1,%eax" "\n"
+ "mov (%esi,%eax,8),%ecx" "\n"
+ "mov %ecx,0x8(%ebp,%eax,8)" "\n"
+ "mov 0x4(%esi,%eax,8),%ecx" "\n"
+ "mov %ecx,0xc(%ebp,%eax,8)" "\n"
+ "test %eax,%eax" "\n"
+ "jne copyHeaderLoop" "\n"
+
+ "mov 0x18(%esi),%edx" "\n"
+ "sub $0x1,%edx" "\n"
+ "mov 0x28(%esi),%ecx" "\n"
+ "sub $0x1,%ecx" "\n"
+
+ "cmp %ecx,%edx" "\n"
+ "je copyArgs" "\n"
+
+ "xor %eax,%eax" "\n"
+ "mov $0xfffffffc,%ebx" "\n"
+
+ "fillExtraArgsLoop:" "\n"
+ "sub $0x1,%ecx" "\n"
+ "mov %eax,0x30(%ebp,%ecx,8)" "\n"
+ "mov %ebx,0x34(%ebp,%ecx,8)" "\n"
+ "cmp %ecx,%edx" "\n"
+ "jne fillExtraArgsLoop" "\n"
+
+ "copyArgs:" "\n"
+ "mov 0x2c(%esi),%eax" "\n"
+
+ "copyArgsLoop:" "\n"
+ "test %edx,%edx" "\n"
+ "je copyArgsDone" "\n"
+ "sub $0x1,%edx" "\n"
+ "mov (%eax,%edx,8),%ecx" "\n"
+ "mov 0x4(%eax,%edx,8),%ebx" "\n"
+ "mov %ecx,0x30(%ebp,%edx,8)" "\n"
+ "mov %ebx,0x34(%ebp,%edx,8)" "\n"
+ "jmp copyArgsLoop" "\n"
+
+ "copyArgsDone:" "\n"
+ "mov 0x34(%esp),%ecx" "\n"
+ "mov %ebp,(%ecx)" "\n"
+
+ "mov 0x30(%esp),%edi" "\n"
+ "mov %ebp,0x30(%esp)" "\n"
+ "mov %ebp,%ecx" "\n"
+ "call *%edi" "\n"
+
+ "cmpl $0x1,0x8(%ebp)" "\n"
+ "je calleeFramePopped" "\n"
+ "mov 0x0(%ebp),%ebp" "\n"
+
+ "calleeFramePopped:" "\n"
+ "mov 0x18(%ebp),%ecx" "\n"
+ "mov 0x10(%ebp),%ebx" "\n"
+ "mov %ebx,(%ecx)" "\n"
+
+ "add $0x1c,%esp" "\n"
+ "pop %ebx" "\n"
+ "pop %edi" "\n"
+ "pop %esi" "\n"
+ "pop %ebp" "\n"
+ "ret" "\n"
+ );
+}
+
+#endif // OS(WINDOWS) && ENABLE(JIT)
+
#endif // COMPILER(GCC)
#if COMPILER(MSVC)
diff -upr -x .deps -x .libs -x '*.la' webkitgtk-2.4.1.old/Source/ThirdParty/ANGLE/GNUmakefile.am webkitgtk-2.4.1/Source/ThirdParty/ANGLE/GNUmakefile.am
--- webkitgtk-2.4.1.old/Source/ThirdParty/ANGLE/GNUmakefile.am 2014-06-20 20:05:59 +0000
+++ webkitgtk-2.4.1/Source/ThirdParty/ANGLE/GNUmakefile.am 2014-05-24 05:04:11 +0000
@@ -80,7 +80,6 @@ libANGLE_la_SOURCES = \
Source/ThirdParty/ANGLE/src/compiler/MMap.h \
Source/ThirdParty/ANGLE/src/compiler/NodeSearch.h \
Source/ThirdParty/ANGLE/src/compiler/osinclude.h \
- Source/ThirdParty/ANGLE/src/compiler/ossource_posix.cpp \
Source/ThirdParty/ANGLE/src/compiler/OutputESSL.cpp \
Source/ThirdParty/ANGLE/src/compiler/OutputESSL.h \
Source/ThirdParty/ANGLE/src/compiler/OutputGLSLBase.cpp \
@@ -161,3 +160,11 @@ libANGLE_la_SOURCES = \
Source/ThirdParty/ANGLE/src/compiler/VersionGLSL.h \
Source/ThirdParty/ANGLE/src/third_party/compiler/ArrayBoundsClamper.cpp \
Source/ThirdParty/ANGLE/src/third_party/compiler/ArrayBoundsClamper.h
+
+if OS_WIN32
+libANGLE_la_SOURCES += \
+ Source/ThirdParty/ANGLE/src/compiler/ossource_win.cpp
+else
+libANGLE_la_SOURCES += \
+ Source/ThirdParty/ANGLE/src/compiler/ossource_posix.cpp
+endif
diff -upr -x .deps -x .libs -x '*.la' webkitgtk-2.4.1.old/Source/ThirdParty/ANGLE/src/compiler/ossource_win.cpp webkitgtk-2.4.1/Source/ThirdParty/ANGLE/src/compiler/ossource_win.cpp
--- webkitgtk-2.4.1.old/Source/ThirdParty/ANGLE/src/compiler/ossource_win.cpp 2014-07-12 16:07:30 +0000
+++ webkitgtk-2.4.1/Source/ThirdParty/ANGLE/src/compiler/ossource_win.cpp 2014-05-24 05:04:11 +0000
@@ -0,0 +1,57 @@
+//
+// Copyright (c) 2002-2010 The ANGLE Project Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+//
+
+#include "compiler/osinclude.h"
+//
+// This file contains contains the window's specific functions
+//
+
+#if !defined(ANGLE_OS_WIN)
+#error Trying to build a windows specific file in a non windows build.
+#endif
+
+
+//
+// Thread Local Storage Operations
+//
+OS_TLSIndex OS_AllocTLSIndex()
+{
+ DWORD dwIndex = TlsAlloc();
+ if (dwIndex == TLS_OUT_OF_INDEXES) {
+ assert(0 && "OS_AllocTLSIndex(): Unable to allocate Thread Local Storage");
+ return OS_INVALID_TLS_INDEX;
+ }
+
+ return dwIndex;
+}
+
+
+bool OS_SetTLSValue(OS_TLSIndex nIndex, void *lpvValue)
+{
+ if (nIndex == OS_INVALID_TLS_INDEX) {
+ assert(0 && "OS_SetTLSValue(): Invalid TLS Index");
+ return false;
+ }
+
+ if (TlsSetValue(nIndex, lpvValue))
+ return true;
+ else
+ return false;
+}
+
+
+bool OS_FreeTLSIndex(OS_TLSIndex nIndex)
+{
+ if (nIndex == OS_INVALID_TLS_INDEX) {
+ assert(0 && "OS_SetTLSValue(): Invalid TLS Index");
+ return false;
+ }
+
+ if (TlsFree(nIndex))
+ return true;
+ else
+ return false;
+}
diff -upr -x .deps -x .libs -x '*.la' webkitgtk-2.4.1.old/Source/WTF/GNUmakefile.list.am webkitgtk-2.4.1/Source/WTF/GNUmakefile.list.am
--- webkitgtk-2.4.1.old/Source/WTF/GNUmakefile.list.am 2014-05-18 16:44:48 +0000
+++ webkitgtk-2.4.1/Source/WTF/GNUmakefile.list.am 2014-05-24 05:09:00 +0000
@@ -256,3 +256,8 @@ wtf_sources += \
Source/WTF/wtf/unicode/UnicodeMacrosFromICU.h \
Source/WTF/wtf/unicode/icu/CollatorICU.cpp \
Source/WTF/wtf/unicode/icu/UnicodeIcu.h
+
+if TARGET_WIN32
+wtf_sources += \
+ Source/WTF/wtf/win/GdiObject.h
+endif # TARGET_WIN32
diff -upr -x .deps -x .libs -x '*.la' webkitgtk-2.4.1.old/Source/WTF/wtf/Atomics.h webkitgtk-2.4.1/Source/WTF/wtf/Atomics.h
--- webkitgtk-2.4.1.old/Source/WTF/wtf/Atomics.h 2014-06-20 20:05:59 +0000
+++ webkitgtk-2.4.1/Source/WTF/wtf/Atomics.h 2014-05-28 18:01:59 +0000
@@ -260,7 +260,7 @@ inline void memoryBarrierBeforeUnlock()
inline bool weakCompareAndSwap(uint8_t* location, uint8_t expected, uint8_t newValue)
{
#if ENABLE(COMPARE_AND_SWAP)
-#if !OS(WINDOWS) && (CPU(X86) || CPU(X86_64))
+#if !COMPILER(MSVC) && (CPU(X86) || CPU(X86_64))
unsigned char result;
asm volatile(
"lock; cmpxchgb %3, %2\n\t"
diff -upr -x .deps -x .libs -x '*.la' webkitgtk-2.4.1.old/Source/WTF/wtf/MathExtras.h webkitgtk-2.4.1/Source/WTF/wtf/MathExtras.h
--- webkitgtk-2.4.1.old/Source/WTF/wtf/MathExtras.h 2014-06-20 20:05:59 +0000
+++ webkitgtk-2.4.1/Source/WTF/wtf/MathExtras.h 2014-05-24 05:04:11 +0000
@@ -67,6 +67,12 @@ const double piOverFourDouble = M_PI_4;
const float piOverFourFloat = static_cast<float>(M_PI_4);
#endif
+#ifndef M_SQRT2
+const double sqrtOfTwoDouble = 1.41421356237309504880;
+#else
+const double sqrtOfTwoDouble = M_SQRT2;
+#endif
+
#if OS(DARWIN)
// Work around a bug in the Mac OS X libc where ceil(-0.1) return +0.
diff -upr -x .deps -x .libs -x '*.la' webkitgtk-2.4.1.old/Source/WTF/wtf/Platform.h webkitgtk-2.4.1/Source/WTF/wtf/Platform.h
--- webkitgtk-2.4.1.old/Source/WTF/wtf/Platform.h 2014-06-20 20:05:59 +0000
+++ webkitgtk-2.4.1/Source/WTF/wtf/Platform.h 2014-05-24 05:04:11 +0000
@@ -594,8 +594,6 @@
#define HAVE_ALIGNED_MALLOC 1
#define HAVE_ISDEBUGGERPRESENT 1
-#include <WTF/WTFHeaderDetection.h>
-
#endif
#if OS(WINDOWS)
diff -upr -x .deps -x .libs -x '*.la' webkitgtk-2.4.1.old/Source/WTF/wtf/threads/BinarySemaphore.h webkitgtk-2.4.1/Source/WTF/wtf/threads/BinarySemaphore.h
--- webkitgtk-2.4.1.old/Source/WTF/wtf/threads/BinarySemaphore.h 2014-05-18 16:44:58 +0000
+++ webkitgtk-2.4.1/Source/WTF/wtf/threads/BinarySemaphore.h 2014-05-29 17:02:56 +0000
@@ -41,12 +41,12 @@ public:
WTF_EXPORT_PRIVATE void signal();
WTF_EXPORT_PRIVATE bool wait(double absoluteTime);
-#if OS(WINDOWS)
+#if PLATFORM(WIN)
HANDLE event() const { return m_event; }
#endif
private:
-#if OS(WINDOWS)
+#if PLATFORM(WIN)
HANDLE m_event;
#else
bool m_isSet;
diff -upr -x .deps -x .libs -x '*.la' webkitgtk-2.4.1.old/Source/WTF/wtf/win/GDIObject.h webkitgtk-2.4.1/Source/WTF/wtf/win/GDIObject.h
--- webkitgtk-2.4.1.old/Source/WTF/wtf/win/GDIObject.h 2014-07-12 06:21:32 +0000
+++ webkitgtk-2.4.1/Source/WTF/wtf/win/GDIObject.h 2014-05-24 12:26:42 +0000
@@ -0,0 +1,131 @@
+/*
+ * Copyright (C) 2013 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef GDIObject_h
+#define GDIObject_h
+
+#include <algorithm>
+#include <cstddef>
+#include <memory>
+#include <windows.h>
+#include <wtf/Assertions.h>
+#include <wtf/Noncopyable.h>
+
+namespace WTF {
+
+template<typename T> void deleteObject(T);
+
+template<typename T> class GDIObject {
+ WTF_MAKE_NONCOPYABLE(GDIObject);
+public:
+ GDIObject() : m_object(0) { }
+ GDIObject(std::nullptr_t) : m_object(0) { }
+ ~GDIObject() { deleteObject<T>(m_object); }
+
+ T get() const { return m_object; }
+
+ void clear();
+ T leak() WARN_UNUSED_RETURN;
+
+ bool operator!() const { return !m_object; }
+
+ // This conversion operator allows implicit conversion to bool but not to other integer types.
+ typedef const void* UnspecifiedBoolType;
+ operator UnspecifiedBoolType() const { return m_object ? reinterpret_cast<UnspecifiedBoolType>(&m_object) : 0; }
+
+ GDIObject<T>& operator=(std::nullptr_t) { clear(); return *this; }
+
+ GDIObject(GDIObject&&);
+ template<typename U> GDIObject(GDIObject<U>&&);
+
+ GDIObject& operator=(GDIObject&&);
+ template<typename U> GDIObject& operator=(GDIObject<U>&&);
+
+ void swap(GDIObject& o) { std::swap(m_object, o.m_object); }
+
+private:
+ template<typename U> friend GDIObject<U> adoptGDIObject(U);
+ GDIObject(T object) : m_object(object) { }
+
+ GDIObject<T>& operator=(T);
+
+ T m_object;
+};
+
+template<typename T> inline void GDIObject<T>::clear()
+{
+ T object = m_object;
+ m_object = 0;
+ deleteObject(object);
+}
+
+template<typename T> inline T GDIObject<T>::leak()
+{
+ T object = m_object;
+ m_object = 0;
+ return object;
+}
+
+template<typename T> inline GDIObject<T>::GDIObject(GDIObject<T>&& other)
+ : m_object(other.leak())
+{
+}
+
+template<typename T> inline GDIObject<T>& GDIObject<T>::operator=(GDIObject<T>&& other)
+{
+ auto object = std::move(other);
+ swap(object);
+ return *this;
+}
+
+template<typename T> inline GDIObject<T> adoptGDIObject(T object)
+{
+ return GDIObject<T>(object);
+}
+
+template<typename T> inline void swap(GDIObject<T>& a, GDIObject<T>& b)
+{
+ a.swap(b);
+}
+
+// Nearly all GDI types use the same DeleteObject call.
+template<typename T> inline void deleteObject(T object)
+{
+ if (object)
+ ::DeleteObject(object);
+}
+
+template<> inline void deleteObject<HDC>(HDC hdc)
+{
+ if (hdc)
+ ::DeleteDC(hdc);
+}
+
+} // namespace WTF
+
+using WTF::GDIObject;
+using WTF::adoptGDIObject;
+
+#endif // GDIObject_h
diff -upr -x .deps -x .libs -x '*.la' webkitgtk-2.4.1.old/Source/WebCore/GNUmakefile.list.am webkitgtk-2.4.1/Source/WebCore/GNUmakefile.list.am
--- webkitgtk-2.4.1.old/Source/WebCore/GNUmakefile.list.am 2014-06-20 20:05:59 +0000
+++ webkitgtk-2.4.1/Source/WebCore/GNUmakefile.list.am 2014-05-24 05:09:00 +0000
@@ -6252,9 +6252,11 @@ webcoregtk_sources += \
Source/WebCore/platform/graphics/glx/GLContextGLX.h
endif # END USE_GLX
else
+if !TARGET_WIN32
webcore_sources += \
Source/WebCore/plugins/PluginPackageNone.cpp \
Source/WebCore/plugins/PluginViewNone.cpp
+endif # !TARGET_WIN32
endif # END TARGET_X11
if TARGET_X11_OR_WAYLAND
@@ -6281,9 +6283,12 @@ webcore_sources += \
Source/WebCore/platform/graphics/win/GraphicsContextCairoWin.cpp \
Source/WebCore/platform/graphics/win/GraphicsContextWin.cpp \
Source/WebCore/platform/graphics/win/LocalWindowsContext.h \
+ Source/WebCore/platform/graphics/win/SharedGDIObject.h \
Source/WebCore/platform/graphics/win/TransformationMatrixWin.cpp \
Source/WebCore/platform/win/BitmapInfo.cpp \
Source/WebCore/platform/win/BitmapInfo.h \
+ Source/WebCore/platform/win/GDIObjectCounter.cpp \
+ Source/WebCore/platform/win/GDIObjectCounter.h \
Source/WebCore/platform/win/SystemInfo.cpp \
Source/WebCore/platform/win/SystemInfo.h \
Source/WebCore/platform/win/WebCoreInstanceHandle.cpp \
diff -upr -x .deps -x .libs -x '*.la' webkitgtk-2.4.1.old/Source/WebCore/bindings/scripts/preprocessor.pm webkitgtk-2.4.1/Source/WebCore/bindings/scripts/preprocessor.pm
--- webkitgtk-2.4.1.old/Source/WebCore/bindings/scripts/preprocessor.pm 2014-06-20 20:05:59 +0000
+++ webkitgtk-2.4.1/Source/WebCore/bindings/scripts/preprocessor.pm 2014-05-24 05:04:11 +0000
@@ -51,6 +51,8 @@ sub applyPreprocessor
$preprocessor = "/usr/sfw/bin/gcc";
} elsif (-x "/usr/bin/clang") {
$preprocessor = "/usr/bin/clang";
+ } elsif ($Config{osname} eq 'msys') {
+ $preprocessor = "gcc";
} else {
$preprocessor = "/usr/bin/gcc";
}
@@ -71,7 +73,7 @@ sub applyPreprocessor
@macros = map { "-D$_" } @macros;
my $pid = 0;
- if ($Config{osname} eq "cygwin" || $Config{osname} eq 'MSWin32') {
+ if ($Config{osname} eq "cygwin" || $Config{osname} eq 'MSWin32' || $Config{osname} eq 'msys') {
# This call can fail if Windows rebases cygwin, so retry a few times until it succeeds.
for (my $tries = 0; !$pid && ($tries < 20); $tries++) {
eval {
diff -upr -x .deps -x .libs -x '*.la' webkitgtk-2.4.1.old/Source/WebCore/dom/make_names.pl webkitgtk-2.4.1/Source/WebCore/dom/make_names.pl
--- webkitgtk-2.4.1.old/Source/WebCore/dom/make_names.pl 2014-06-20 20:05:59 +0000
+++ webkitgtk-2.4.1/Source/WebCore/dom/make_names.pl 2014-05-24 05:04:11 +0000
@@ -69,6 +69,8 @@ if ($ENV{CC}) {
$gccLocation = "/usr/sfw/bin/gcc";
} elsif ($Config::Config{"osname"} eq "darwin" && $ENV{SDKROOT}) {
chomp($gccLocation = `xcrun -find cc -sdk '$ENV{SDKROOT}'`);
+} elsif ($Config::Config{"osname"} eq "msys") {
+ $gccLocation = "gcc";
} else {
$gccLocation = "/usr/bin/cc";
}
diff -upr -x .deps -x .libs -x '*.la' webkitgtk-2.4.1.old/Source/WebCore/platform/graphics/FontPlatformData.h webkitgtk-2.4.1/Source/WebCore/platform/graphics/FontPlatformData.h
--- webkitgtk-2.4.1.old/Source/WebCore/platform/graphics/FontPlatformData.h 2014-06-20 20:05:59 +0000
+++ webkitgtk-2.4.1/Source/WebCore/platform/graphics/FontPlatformData.h 2014-05-24 05:04:11 +0000
@@ -62,7 +62,6 @@ typedef const struct __CTFont* CTFontRef
#include <wtf/text/StringImpl.h>
#if PLATFORM(WIN)
-#include <wtf/win/GDIObject.h>
typedef struct HFONT__* HFONT;
#endif
diff -upr -x .deps -x .libs -x '*.la' webkitgtk-2.4.1.old/Source/WebCore/platform/graphics/freetype/FontPlatformDataFreeType.cpp webkitgtk-2.4.1/Source/WebCore/platform/graphics/freetype/FontPlatformDataFreeType.cpp
--- webkitgtk-2.4.1.old/Source/WebCore/platform/graphics/freetype/FontPlatformDataFreeType.cpp 2014-06-20 20:05:59 +0000
+++ webkitgtk-2.4.1/Source/WebCore/platform/graphics/freetype/FontPlatformDataFreeType.cpp 2014-05-24 05:04:11 +0000
@@ -32,6 +32,7 @@
#include <ft2build.h>
#include FT_TRUETYPE_TABLES_H
#include <wtf/text/WTFString.h>
+#include <wtf/MathExtras.h>
#if !PLATFORM(EFL)
#include <gdk/gdk.h>
@@ -120,7 +121,7 @@ static void rotateCairoMatrixForVertical
// combination of rotation (R) and translation (T) applied on the
// horizontal matrix (H). V = H . R . T, where R rotates by -90 degrees
// and T translates by font size towards y axis.
- cairo_matrix_rotate(matrix, -M_PI_2);
+ cairo_matrix_rotate(matrix, -piOverTwoDouble);
cairo_matrix_translate(matrix, 0.0, 1.0);
}
diff -upr -x .deps -x .libs -x '*.la' webkitgtk-2.4.1.old/Source/WebCore/platform/graphics/win/GraphicsContextCairoWin.cpp webkitgtk-2.4.1/Source/WebCore/platform/graphics/win/GraphicsContextCairoWin.cpp
--- webkitgtk-2.4.1.old/Source/WebCore/platform/graphics/win/GraphicsContextCairoWin.cpp 2014-06-20 20:05:59 +0000
+++ webkitgtk-2.4.1/Source/WebCore/platform/graphics/win/GraphicsContextCairoWin.cpp 2014-05-24 05:09:00 +0000
@@ -32,6 +32,7 @@
#include <cairo-win32.h>
#include "GraphicsContextPlatformPrivateCairo.h"
+#include <wtf/win/GdiObject.h>
using namespace std;
diff -upr -x .deps -x .libs -x '*.la' webkitgtk-2.4.1.old/Source/WebCore/platform/gtk/FileSystemGtk.cpp webkitgtk-2.4.1/Source/WebCore/platform/gtk/FileSystemGtk.cpp
--- webkitgtk-2.4.1.old/Source/WebCore/platform/gtk/FileSystemGtk.cpp 2014-06-20 20:05:59 +0000
+++ webkitgtk-2.4.1/Source/WebCore/platform/gtk/FileSystemGtk.cpp 2014-05-24 05:04:11 +0000
@@ -23,6 +23,10 @@
#include "config.h"
#include "FileSystem.h"
+#if OS(WINDOWS)
+#include <windows.h>
+#endif
+
#include "FileMetadata.h"
#include "UUID.h"
#include <gio/gio.h>
diff -upr -x .deps -x .libs -x '*.la' webkitgtk-2.4.1.old/Source/WebCore/rendering/RenderBlock.h webkitgtk-2.4.1/Source/WebCore/rendering/RenderBlock.h
--- webkitgtk-2.4.1.old/Source/WebCore/rendering/RenderBlock.h 2014-06-20 20:05:59 +0000
+++ webkitgtk-2.4.1/Source/WebCore/rendering/RenderBlock.h 2014-05-24 15:52:01 +0000
@@ -613,8 +613,8 @@ public:
unsigned m_beingDestroyed : 1;
unsigned m_hasMarkupTruncation : 1;
unsigned m_hasBorderOrPaddingLogicalWidthChanged : 1;
- enum LineLayoutPath { UndeterminedPath, SimpleLinesPath, LineBoxesPath, ForceLineBoxesPath };
unsigned m_lineLayoutPath : 2;
+ enum LineLayoutPath { UndeterminedPath, SimpleLinesPath, LineBoxesPath, ForceLineBoxesPath };
// RenderRubyBase objects need to be able to split and merge, moving their children around
// (calling moveChildTo, moveAllChildrenTo, and makeChildrenNonInline).
diff -upr -x .deps -x .libs -x '*.la' webkitgtk-2.4.1.old/Source/WebCore/rendering/mathml/RenderMathMLMenclose.cpp webkitgtk-2.4.1/Source/WebCore/rendering/mathml/RenderMathMLMenclose.cpp
--- webkitgtk-2.4.1.old/Source/WebCore/rendering/mathml/RenderMathMLMenclose.cpp 2014-06-20 20:05:59 +0000
+++ webkitgtk-2.4.1/Source/WebCore/rendering/mathml/RenderMathMLMenclose.cpp 2014-05-24 05:04:11 +0000
@@ -71,8 +71,8 @@ void RenderMathMLMenclose::computePrefer
size_t notationalValueSize = notationValues.size();
for (size_t i = 0; i < notationalValueSize; i++) {
if (notationValues[i] == "circle") {
- m_minPreferredLogicalWidth = minPreferredLogicalWidth() * float(M_SQRT2);
- m_maxPreferredLogicalWidth = maxPreferredLogicalWidth() * float(M_SQRT2);
+ m_minPreferredLogicalWidth = minPreferredLogicalWidth() * float(sqrtOfTwoDouble);
+ m_maxPreferredLogicalWidth = maxPreferredLogicalWidth() * float(sqrtOfTwoDouble);
}
}
@@ -86,7 +86,7 @@ void RenderMathMLMenclose::updateLogical
size_t notationalValueSize = notationValues.size();
for (size_t i = 0; i < notationalValueSize; i++)
if (notationValues[i] == "circle")
- setLogicalHeight(logicalHeight() * float(M_SQRT2));
+ setLogicalHeight(logicalHeight() * float(sqrtOfTwoDouble));
}
void RenderMathMLMenclose::paint(PaintInfo& info, const LayoutPoint& paintOffset)
diff -upr -x .deps -x .libs -x '*.la' webkitgtk-2.4.1.old/Source/autotools/FindDependencies.m4 webkitgtk-2.4.1/Source/autotools/FindDependencies.m4
--- webkitgtk-2.4.1.old/Source/autotools/FindDependencies.m4 2014-06-20 20:05:59 +0000
+++ webkitgtk-2.4.1/Source/autotools/FindDependencies.m4 2014-05-24 05:04:11 +0000
@@ -109,8 +109,14 @@ case "$host" in
UNICODE_LIBS="-licucore"
;;
*-*-mingw*)
- UNICODE_CFLAGS=""
- UNICODE_LIBS="-licui18n -licuuc"
+ PKG_CHECK_MODULES(ICU, icu-i18n, ,)
+ if test "x$ICU_LIBS" = "x" ; then
+ UNICODE_CFLAGS=""
+ UNICODE_LIBS="-licui18n -licuuc"
+ else
+ UNICODE_CFLAGS="$ICU_CFLAGS"
+ UNICODE_LIBS="$ICU_LIBS"
+ fi
AC_CHECK_HEADERS([unicode/uchar.h], [], [AC_MSG_ERROR([Could not find ICU headers.])])
;;
*)
@@ -455,7 +461,14 @@ if test "$found_opengl" = "yes"; then
OPENGL_LIBS="-lGLESv2"
else
acceleration_description="$acceleration_description (gl"
- OPENGL_LIBS="-lGL"
+ case "$host" in
+ *-*-mingw*)
+ OPENGL_LIBS="-lopengl32"
+ ;;
+ *)
+ OPENGL_LIBS="-lGL"
+ ;;
+ esac
fi
if test "$enable_egl" = "yes"; then
acceleration_description="$acceleration_description, egl"
diff -upr -x .deps -x .libs -x '*.la' webkitgtk-2.4.1.old/Source/autotools/ReadCommandLineArguments.m4 webkitgtk-2.4.1/Source/autotools/ReadCommandLineArguments.m4
--- webkitgtk-2.4.1.old/Source/autotools/ReadCommandLineArguments.m4 2014-06-20 20:05:59 +0000
+++ webkitgtk-2.4.1/Source/autotools/ReadCommandLineArguments.m4 2014-05-24 05:04:11 +0000
@@ -83,7 +83,7 @@ AM_WEBKIT_DETERMINE_BUILD_TARGET_STATUS(
AM_WEBKIT_DETERMINE_BUILD_TARGET_STATUS([directfb], [enable_directfb_target], [build_targets])
AC_MSG_CHECKING([whether to build for the Win32 target])
-AC_MSG_RESULT([$enable_wayland_target])
+AC_MSG_RESULT([$enable_win32_target])
AC_MSG_CHECKING([whether to enable spellcheck support])
AC_ARG_ENABLE([spellcheck],

194
win32/patches/yelp.m4 Normal file
View File

@ -0,0 +1,194 @@
AC_DEFUN([YELP_HELP_INIT],
[
AC_REQUIRE([AC_PROG_LN_S])
m4_pattern_allow([AM_V_at])
m4_pattern_allow([AM_V_GEN])
m4_pattern_allow([AM_DEFAULT_VERBOSITY])
AC_ARG_WITH([help-dir],
AC_HELP_STRING([--with-help-dir=DIR],
[path where help files are installed]),,
[with_help_dir='${datadir}/help'])
HELP_DIR="$with_help_dir"
AC_SUBST(HELP_DIR)
dnl AC_ARG_VAR([ITSTOOL], [Path to the `itstool` command])
dnl AC_CHECK_PROG([ITSTOOL], [itstool], [itstool])
dnl if test x"$ITSTOOL" = x; then
dnl AC_MSG_ERROR([itstool not found])
dnl fi
AC_ARG_VAR([XMLLINT], [Path to the `xmllint` command])
AC_CHECK_PROG([XMLLINT], [xmllint], [xmllint])
if test x"$XMLLINT" = x; then
AC_MSG_ERROR([xmllint not found])
fi
YELP_HELP_RULES='
HELP_ID ?=
HELP_POT ?=
HELP_FILES ?=
HELP_EXTRA ?=
HELP_MEDIA ?=
HELP_LINGUAS ?=
_HELP_LINGUAS = $(if $(filter environment,$(origin LINGUAS)),$(filter $(LINGUAS),$(HELP_LINGUAS)),$(HELP_LINGUAS))
_HELP_POTFILE = $(if $(HELP_POT),$(HELP_POT),$(if $(HELP_ID),$(HELP_ID).pot))
_HELP_POFILES = $(if $(HELP_ID),$(foreach lc,$(_HELP_LINGUAS),$(lc)/$(lc).po))
_HELP_MOFILES = $(patsubst %.po,%.mo,$(_HELP_POFILES))
_HELP_C_FILES = $(foreach f,$(HELP_FILES),C/$(f))
_HELP_C_EXTRA = $(foreach f,$(HELP_EXTRA),C/$(f))
_HELP_C_MEDIA = $(foreach f,$(HELP_MEDIA),C/$(f))
_HELP_LC_FILES = $(foreach lc,$(_HELP_LINGUAS),$(foreach f,$(HELP_FILES),$(lc)/$(f)))
_HELP_LC_STAMPS = $(foreach lc,$(_HELP_LINGUAS),$(lc)/$(lc).stamp)
_HELP_DEFAULT_V = $(if $(AM_DEFAULT_VERBOSITY),$(AM_DEFAULT_VERBOSITY),1)
_HELP_V = $(if $(V),$(V),$(_HELP_DEFAULT_V))
_HELP_LC_VERBOSE = $(_HELP_LC_VERBOSE_$(_HELP_V))
_HELP_LC_VERBOSE_ = $(_HELP_LC_VERBOSE_$(_HELP_DEFAULT_V))
_HELP_LC_VERBOSE_0 = @echo " GEN "$(dir [$]@);
all: $(_HELP_C_FILES) $(_HELP_C_EXTRA) $(_HELP_C_MEDIA) $(_HELP_LC_FILES) $(_HELP_POFILES)
.PHONY: pot
pot: $(_HELP_POTFILE)
$(_HELP_POTFILE): $(_HELP_C_FILES) $(_HELP_C_EXTRA) $(_HELP_C_MEDIA)
$(AM_V_GEN)$(ITSTOOL) -o "[$]@" $(_HELP_C_FILES)
.PHONY: repo
repo: $(_HELP_POTFILE)
$(AM_V_at)for po in $(_HELP_POFILES); do \
if test "x[$](_HELP_V)" = "x0"; then echo " GEN $${po}"; fi; \
msgmerge -q -o "$${po}" "$${po}" "$(_HELP_POTFILE)"; \
done
$(_HELP_POFILES):
$(AM_V_at)if ! test -d "$(dir [$]@)"; then mkdir "$(dir [$]@)"; fi
$(AM_V_at)if test ! -f "[$]@" -a -f "$(srcdir)/[$]@"; then cp "$(srcdir)/[$]@" "[$]@"; fi
$(AM_V_GEN)if ! test -f "[$]@"; then \
(cd "$(dir [$]@)" && \
$(ITSTOOL) -o "$(notdir [$]@).tmp" $(_HELP_C_FILES) && \
mv "$(notdir [$]@).tmp" "$(notdir [$]@)"); \
else \
(cd "$(dir [$]@)" && \
$(ITSTOOL) -o "$(notdir [$]@).tmp" $(_HELP_C_FILES) && \
msgmerge -o "$(notdir [$]@)" "$(notdir [$]@)" "$(notdir [$]@).tmp" && \
rm "$(notdir [$]@).tmp"); \
fi
$(_HELP_MOFILES): %.mo: %.po
$(AM_V_at)if ! test -d "$(dir [$]@)"; then mkdir "$(dir [$]@)"; fi
$(AM_V_GEN)msgfmt -o "[$]@" "$<"
$(_HELP_LC_FILES): $(_HELP_LINGUAS)
$(_HELP_LINGUAS): $(_HELP_LC_STAMPS)
$(_HELP_LC_STAMPS): %.stamp: %.mo
$(_HELP_LC_STAMPS): $(_HELP_C_FILES) $(_HELP_C_EXTRA)
$(AM_V_at)if ! test -d "$(dir [$]@)"; then mkdir "$(dir [$]@)"; fi
$(_HELP_LC_VERBOSE)if test -d "C"; then d="../"; else d="$(abs_srcdir)/"; fi; \
mo="$(dir [$]@)$(patsubst %/$(notdir [$]@),%,[$]@).mo"; \
if test -f "$${mo}"; then mo="../$${mo}"; else mo="$(abs_srcdir)/$${mo}"; fi; \
(cd "$(dir [$]@)" && $(ITSTOOL) -m "$${mo}" $(foreach f,$(_HELP_C_FILES),$${d}/$(f))) && \
touch "[$]@"
.PHONY: clean-help
mostlyclean-am: $(if $(HELP_ID),clean-help)
clean-help:
rm -f $(_HELP_LC_FILES) $(_HELP_LC_STAMPS) $(_HELP_MOFILES)
EXTRA_DIST ?=
EXTRA_DIST += $(_HELP_C_EXTRA) $(_HELP_C_MEDIA)
EXTRA_DIST += $(foreach lc,$(HELP_LINGUAS),$(lc)/$(lc).stamp)
EXTRA_DIST += $(foreach lc,$(HELP_LINGUAS),$(lc)/$(lc).po)
EXTRA_DIST += $(foreach f,$(HELP_MEDIA),$(foreach lc,$(HELP_LINGUAS),$(wildcard $(lc)/$(f))))
distdir: distdir-help-files
distdir-help-files:
@for lc in C $(HELP_LINGUAS); do \
$(MKDIR_P) "$(distdir)/$$lc"; \
for file in $(HELP_FILES); do \
if test -f "$$lc/$$file"; then d=./; else d=$(srcdir)/; fi; \
cp -p "$$d$$lc/$$file" "$(distdir)/$$lc/" || exit 1; \
done; \
done; \
.PHONY: check-help
check: check-help
check-help:
for lc in C $(_HELP_LINGUAS); do \
if test -d "$$lc"; \
then d=; \
xmlpath="$$lc"; \
else \
d="$(srcdir)/"; \
xmlpath="$$lc:$(srcdir)/$$lc"; \
fi; \
for page in $(HELP_FILES); do \
echo "$(XMLLINT) --noout --noent --path $$xmlpath --xinclude $$d$$lc/$$page"; \
$(XMLLINT) --noout --noent --path "$$xmlpath" --xinclude "$$d$$lc/$$page"; \
done; \
done
.PHONY: install-help
install-data-am: $(if $(HELP_ID),install-help)
install-help:
@for lc in C $(_HELP_LINGUAS); do \
$(mkinstalldirs) "$(DESTDIR)$(HELP_DIR)/$$lc/$(HELP_ID)" || exit 1; \
done
@for lc in C $(_HELP_LINGUAS); do for f in $(HELP_FILES); do \
if test -f "$$lc/$$f"; then d=; else d="$(srcdir)/"; fi; \
helpdir="$(DESTDIR)$(HELP_DIR)/$$lc/$(HELP_ID)/"; \
if ! test -d "$$helpdir"; then $(mkinstalldirs) "$$helpdir"; fi; \
echo "$(INSTALL_DATA) $$d$$lc/$$f $$helpdir`basename $$f`"; \
$(INSTALL_DATA) "$$d$$lc/$$f" "$$helpdir`basename $$f`" || exit 1; \
done; done
@for f in $(_HELP_C_EXTRA); do \
lc=`dirname "$$f"`; lc=`basename "$$lc"`; \
if test -f "$$f"; then d=; else d="$(srcdir)/"; fi; \
helpdir="$(DESTDIR)$(HELP_DIR)/$$lc/$(HELP_ID)/"; \
if ! test -d "$$helpdir"; then $(mkinstalldirs) "$$helpdir"; fi; \
echo "$(INSTALL_DATA) $$d$$f $$helpdir`basename $$f`"; \
$(INSTALL_DATA) "$$d$$f" "$$helpdir`basename $$f`" || exit 1; \
done
@for f in $(HELP_MEDIA); do \
for lc in C $(_HELP_LINGUAS); do \
if test -f "$$lc$$f"; then d=; else d="$(srcdir)/"; fi; \
helpdir="$(DESTDIR)$(HELP_DIR)/$$lc/$(HELP_ID)/"; \
mdir=`dirname "$$f"`; \
if test "x$mdir" = "x."; then mdir=""; fi; \
if ! test -d "$$helpdir$$mdir"; then $(mkinstalldirs) "$$helpdir$$mdir"; fi; \
if test -f "$$d$$lc/$$f"; then \
echo "$(INSTALL_DATA) $$d$$lc/$$f $$helpdir$$f"; \
$(INSTALL_DATA) "$$d$$lc/$$f" "$$helpdir$$f" || exit 1; \
elif test "x$$lc" != "xC"; then \
echo "$(LN_S) -f $(HELP_DIR)/C/$(HELP_ID)/$$f $$helpdir$$f"; \
$(LN_S) -f "$(HELP_DIR)/C/$(HELP_ID)/$$f" "$$helpdir$$f" || exit 1; \
fi; \
done; \
done
.PHONY: uninstall-help
uninstall-am: $(if $(HELP_ID),uninstall-help)
uninstall-help:
for lc in C $(_HELP_LINGUAS); do for f in $(HELP_FILES); do \
helpdir="$(DESTDIR)$(HELP_DIR)/$$lc/$(HELP_ID)/"; \
echo "rm -f $$helpdir`basename $$f`"; \
rm -f "$$helpdir`basename $$f`"; \
done; done
@for f in $(_HELP_C_EXTRA); do \
lc=`dirname "$$f"`; lc=`basename "$$lc"`; \
helpdir="$(DESTDIR)$(HELP_DIR)/$$lc/$(HELP_ID)/"; \
echo "rm -f $$helpdir`basename $$f`"; \
rm -f "$$helpdir`basename $$f`"; \
done
@for f in $(HELP_MEDIA); do \
for lc in C $(_HELP_LINGUAS); do \
helpdir="$(DESTDIR)$(HELP_DIR)/$$lc/$(HELP_ID)/"; \
echo "rm -f $$helpdir$$f"; \
rm -f "$$helpdir$$f"; \
done; \
done;
'
AC_SUBST([YELP_HELP_RULES])
m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([YELP_HELP_RULES])])
])

53
win32/readme.txt Normal file
View File

@ -0,0 +1,53 @@
************************************************
*** Caution - this work is still in progress ***
************************************************
These are steps how to setup local envinronment to build evolution
and its dependencies from sources.
a) http://sourceforge.net/projects/mingw/files/Installer/mingw-get-setup.exe/download
Destination folder: C:\MinGW
Install packages:
- Basic setup:
- mingw-developer-toolkit
- msys-base
- All Packages
- msys-patch
- msys-perl
- msys-unzip
- msys-wget
b) http://sourceforge.net/projects/mingwbuilds/files/mingw-builds-install/mingw-builds-install.exe/download
Version: 4.8.1
Architecture: x32
Threads: posix
Exception: dwarf
Build revision: 5
Destination folder: C:\MinGW64
c) Replace MinGW version of gcc & co. with the MinGW64 version (mainly for webkitgtk)
- delete all but 'msys' directories in C:\MinGW\
- move all directories from C:\MinGW64\mingw32\ to C:MinGW\
d) http://www.python.org/ftp/python/2.7.6/python-2.7.6.msi
Destination folder: C:\Python27
e) Add to PATH: C:\Python27;C:\MinGW\bin
f) go to evolution checkout, into evolution\win32\ subfolder and execute:
$ source setup-env
which setups build environment. This can take some addition
parameters, see the top of setup-env for more information.
g) build evolution from sources with:
$ make evolution
or with some additional software:
$ make addons
h) Make sure dbus-daemon is running before evolution is run, which can
be done with $PREFIX\deps\bin\dbus-launch.exe
i) Run 'evolution'

View File

@ -0,0 +1,4 @@
<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-Bus Bus Configuration 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>
<servicedir>@BUILD_ROOT_EVO@</servicedir>
</busconfig>

76
win32/setup-env Executable file
View File

@ -0,0 +1,76 @@
#!/bin/bash
##############################################################################
#
# Setup a build environment. This can take up to two parameters:
# argv[1] - build type, can be 'stable' or 'master'; anything else than
# 'stable' means 'master' build in the ./Makefile, which uses
# relative path for build and if the respective folder is not
# downloaded yet, then it creates a checkout from the master git
# branch (hence the 'master' build name). There can be built
# anything as master, the only condition is that the directory
# with the sources is in place.
# argv[2] - use "debug" to build with debug options; using 'debug' build type
# also uses debug build options
#
##############################################################################
if [ "$BUILD_ROOT_OVERRIDE" = "" ] ; then
export BUILD_ROOT_BASE=/build/local
else
export BUILD_ROOT_BASE=$BUILD_ROOT_OVERRIDE
fi
# Optional parameter to compile other than 'master' or 'stable' releases;
# empty value means 'stable', anything else means 'master' type in Makefile
export EVO_BUILD_TYPE=$1
export BUILD_ROOT_DEPS=$BUILD_ROOT_BASE/deps
if [ "x$EVO_BUILD_TYPE" != "x" -a "x$EVO_BUILD_TYPE" != "xstable" ] ; then
# Build custom builds like from 'master', aka from relative path checkouts
export EVO_BUILD_SUFFIX="-master"
export BUILD_ROOT_EVO="$BUILD_ROOT_BASE/evo-$EVO_BUILD_TYPE"
else
# Build from tarballs
export EVO_BUILD_SUFFIX="-stable"
export BUILD_ROOT_EVO=$BUILD_ROOT_BASE/evo
fi
if [ "$PATH_DEFAULT" = "" ] ; then
export PATH_DEFAULT=$PATH
fi
export PATH=$BUILD_ROOT_DEPS/bin:$BUILD_ROOT_EVO/bin:$PATH_DEFAULT
# Compile against locally installed software.
export LD_LIBRARY_PATH=$BUILD_ROOT_DEPS/lib:$BUILD_ROOT_EVO/lib:/lib
export PKG_CONFIG_PATH=$BUILD_ROOT_DEPS/lib/pkgconfig:$BUILD_ROOT_EVO/lib/pkgconfig:$BUILD_ROOT_DEPS/share/pkgconfig:$BUILD_ROOT_EVO/share/pkgconfig
export ACLOCAL_FLAGS="-I $BUILD_ROOT_DEPS/share/aclocal -I $BUILD_ROOT_EVO/share/aclocal -I /share/aclocal"
export GSETTINGS_SCHEMA_DIR=$BUILD_ROOT_DEPS/share/glib-2.0/schemas:$BUILD_ROOT_EVO/share/glib-2.0/schemas
if [ "$1" = "debug" -o "$2" = "debug" ] ; then
export CFLAGS="$CFLAGS -g -O0 -Wall -DMSVCRT_VERSION=710"
else
export CFLAGS="$CFLAGS -DMSVCRT_VERSION=710"
fi
export CPPFLAGS="$CPPFLAGS -I$BUILD_ROOT_DEPS/include -I$BUILD_ROOT_EVO/include -I/include"
export LDFLAGS="$LDFLAGS -L$BUILD_ROOT_DEPS/lib -L$BUILD_ROOT_EVO/lib -L/lib"
mkdir -p $BUILD_ROOT_DEPS/bin 2>/dev/null
mkdir -p $BUILD_ROOT_DEPS/include 2>/dev/null
mkdir -p $BUILD_ROOT_DEPS/lib 2>/dev/null
mkdir -p $BUILD_ROOT_DEPS/share/aclocal 2>/dev/null
mkdir -p $BUILD_ROOT_DEPS/etc/dbus-1/session.d 2>/dev/null
#mkdir -p $BUILD_ROOT_DEPS/share/dbus-1 2>/dev/null
mkdir -p $BUILD_ROOT_EVO/bin 2>/dev/null
mkdir -p $BUILD_ROOT_EVO/include 2>/dev/null
mkdir -p $BUILD_ROOT_EVO/lib 2>/dev/null
mkdir -p $BUILD_ROOT_EVO/share/aclocal 2>/dev/null
#mkdir -p $BUILD_ROOT_EVO/share/dbus-1 2>/dev/null
#rm /usr/local/share/dbus-1 2>/dev/null
#ln -s $BUILD_ROOT_DEPS/share/dbus-1 /usr/local/share/dbus-1
if [ -f "session-local.conf.in" ] ; then
cat session-local.conf.in | sed 's|@BUILD_ROOT_EVO@|'$BUILD_ROOT_EVO'/share/dbus-1/services|g' >$BUILD_ROOT_DEPS/etc/dbus-1/session.d/session-local.conf
fi