mirror of
https://github.com/Gnucash/gnucash.git
synced 2025-02-25 18:55:30 -06:00
Win32: Tweak cross compiling script for webkit so that is seems to almost compile.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20406 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
parent
556a70b9a8
commit
7a006b4818
@ -82,11 +82,10 @@ function inst_crossmingw() {
|
||||
_MINGW_UDIR=`unix_path $MINGW_DIR`
|
||||
mkdir -p `unix_path $MINGW_DIR\\\\mingw32`
|
||||
if [ -d $_MINGW_UDIR ] &&
|
||||
quiet $_MINGW_UDIR/bin/mingw32-gcc -v &&
|
||||
quiet mingw32-gcc -v
|
||||
quiet $CC -v
|
||||
then
|
||||
echo "Cross mingw installed."
|
||||
if [ ` mingw32-gcc -dumpversion | cut -d. -f1` -le 3 ] ;then
|
||||
if [ ` $CC -dumpversion | cut -d. -f1` -le 3 ] ;then
|
||||
die "GCC 4.4 or higher needed"
|
||||
fi
|
||||
else
|
||||
@ -105,7 +104,7 @@ function inst_crossmingw() {
|
||||
|
||||
function inst_crossbinutils() {
|
||||
_MINGW_UDIR=`unix_path $MINGW_DIR`
|
||||
if quiet $_MINGW_UDIR/bin/mingw32-ld -v
|
||||
if quiet $LD -v
|
||||
then
|
||||
echo "Cross binutils already installed."
|
||||
else
|
||||
@ -131,7 +130,7 @@ function inst_crossbinutils() {
|
||||
|
||||
function inst_crossgcc(){
|
||||
_MINGW_UDIR=`unix_path $MINGW_DIR`
|
||||
if quiet $_MINGW_UDIR/bin/mingw32-gcc
|
||||
if quiet $CC
|
||||
then
|
||||
echo "Cross gcc alreadyinstalled."
|
||||
else
|
||||
@ -160,7 +159,7 @@ EOF
|
||||
qpopd
|
||||
qpushd $TMP_UDIR/build-gcc
|
||||
$TMP_UDIR/gcc-*/configure \
|
||||
--prefix=$_MINGW_UDIR --target=mingw32 \
|
||||
--prefix=$_MINGW_UDIR --target=$TARGET \
|
||||
--with-headers=$_MINGW_UDIR/mingw32/include \
|
||||
--enable-languages=c,c++ \
|
||||
--with-gcc --with-gnu-ld --with-gnu-as \
|
||||
@ -171,7 +170,7 @@ EOF
|
||||
make
|
||||
make install
|
||||
qpopd
|
||||
if quiet $_MINGW_UDIR/bin/mingw32-gcc -v
|
||||
if quiet $CC -v
|
||||
then
|
||||
rm -rf $TMP_UDIR/build-gcc $TMP_UDIR/gcc-* $TMP_UDIR/mydir
|
||||
echo "Cross gcc installed successfully."
|
||||
@ -188,7 +187,7 @@ function inst_libxslt_gnome() {
|
||||
add_to_env -L$_GNOME_UDIR/lib GNOME_LDFLAGS
|
||||
add_to_env $_GNOME_UDIR/lib/pkgconfig PKG_CONFIG_PATH
|
||||
if [ "$CROSS_COMPILE" != "yes" ]; then
|
||||
add_to_env $_GNOME_UDIR//pkg-config-msys.shPKG_CONFIG
|
||||
add_to_env $_GNOME_UDIR//pkg-config-msys.sh PKG_CONFIG
|
||||
else
|
||||
add_to_env pkg-config PKG_CONFIG
|
||||
fi
|
||||
@ -214,12 +213,24 @@ EOF
|
||||
assert_one_dir $TMP_UDIR/libxslt-*
|
||||
qpushd $TMP_UDIR/libxslt-*
|
||||
./configure ${HOST_XCOMPILE} \
|
||||
--with-libxml-prefix=$_GNOME_UDIR \
|
||||
--with-libxml-include-prefix=$_GNOME_UDIR/include/libxml2 \
|
||||
--with-libxml-libs-prefix=$_GNOME_UDIR/lib \
|
||||
PKG_CONFIG_PATH="$_GNOME_UDIR/lib/pkgconfig" \
|
||||
--prefix=${_GNOME_UDIR} \
|
||||
--enable-static=no \
|
||||
--with-plugins=no \
|
||||
--with-python=no \
|
||||
CPPFLAGS="$GNOME_CPPFLAGS $GNUTLS_CPPFLAGS" \
|
||||
LDFLAGS="$GNOME_LDFLAGS $GNUTLS_LDFLAGS"
|
||||
make .
|
||||
cd libxslt
|
||||
make EXTRA_LIBS="-L$_GNOME_UDIR/bin -lxml2-2"
|
||||
cd ..
|
||||
make
|
||||
make install
|
||||
qpopd
|
||||
rm -r $TMP_UDIR/libxslt-*
|
||||
fi
|
||||
}
|
||||
|
||||
@ -318,6 +329,7 @@ function inst_libsoup () {
|
||||
make
|
||||
make install
|
||||
qpopd
|
||||
rm -r $TMP_UDIR/libsoup-*
|
||||
fi
|
||||
}
|
||||
|
||||
@ -325,6 +337,7 @@ function inst_webkit() {
|
||||
setup WebKitGTK+
|
||||
_MINGW_UDIR=`unix_path $MINGW_DIR`
|
||||
_GNOME_UDIR=`unix_path $GNOME_DIR`
|
||||
_WEBKIT_DIR=`unix_path $WEBKIT_DIR`
|
||||
add_to_env -I$_GNOME_UDIR/include GNOME_CPPFLAGS
|
||||
add_to_env -L$_GNOME_UDIR/lib GNOME_LDFLAGS
|
||||
add_to_env $_GNOME_UDIR/lib/pkgconfig PKG_CONFIG_PATH
|
||||
@ -355,18 +368,39 @@ function inst_webkit() {
|
||||
wget_unpacked $WEBKIT_SRC_URL $DOWNLOAD_DIR $TMP_DIR
|
||||
assert_one_dir $TMP_UDIR/webkit-*
|
||||
qpushd $TMP_UDIR/webkit-*
|
||||
if [ -n "$WEBKIT_PATCH" -a -f "$WEBKIT_PATCH" ] ; then
|
||||
patch -p1 < $WEBKIT_PATCH
|
||||
fi
|
||||
if [ -n "$WEBKIT_PATCH2" -a -f "$WEBKIT_PATCH2" ] ; then
|
||||
patch -p1 < $WEBKIT_PATCH2
|
||||
perl -pi.bak -e"s!/usr/bin/gcc!$_MINGW_UDIR/bin/mingw32-gcc!" \
|
||||
fi
|
||||
perl -pi.bak -e"s!/usr/bin/gcc!$CC!" \
|
||||
WebCore/dom/make_names.pl \
|
||||
WebCore/css/make-css-file-arrays.pl \
|
||||
WebCore/bindings/scripts/IDLParser.pm
|
||||
./configure ${HOST_XCOMPILE} \
|
||||
--prefix=${_GNOME_UDIR} \
|
||||
--disable-silent-rules \
|
||||
--disable-video \
|
||||
--with-target=win32 \
|
||||
CPPFLAGS="$GNOME_CPPFLAGS" \
|
||||
--prefix=${_WEBKIT_DIR} \
|
||||
--enable-silent-rules \
|
||||
--disable-datalist \
|
||||
--disable-dom-storage \
|
||||
--disable-eventsource \
|
||||
--disable-filters \
|
||||
--disable-gtk-doc-html \
|
||||
--disable-offline-web-applications \
|
||||
--disable-ruby \
|
||||
--disable-shared-workers \
|
||||
--disable-silent-rules \
|
||||
--disable-svg-animation \
|
||||
--disable-svg-as-image \
|
||||
--disable-svg-fonts \
|
||||
--disable-svg-foreign-object \
|
||||
--disable-svg-use \
|
||||
--disable-video \
|
||||
--disable-workers \
|
||||
--disable-xpath \
|
||||
--with-target=win32 \
|
||||
--with-unicode-backend=icu \
|
||||
CFLAGS="-g -O2 -std=gnu99" \
|
||||
CXXFLAGS="-g -O2 -std=gnu++98" \
|
||||
LDFLAGS="$GNOME_LDFLAGS"
|
||||
@ -445,12 +479,20 @@ function build_icu4c_native() {
|
||||
function inst_icu4c_mingw32() {
|
||||
setup icu4c-mingw32
|
||||
_ICU4C_UDIR=`unix_path $ICU4C_DIR`
|
||||
rm -rf $TMP_UDIR/icu-cross
|
||||
mkdir -p $TMP_UDIR/icu-cross
|
||||
|
||||
# Note: If you have TARGET=i586-mingw32mingw, for this library you
|
||||
# need to set a different --host argument here due to some known
|
||||
# bug in the ICU source package
|
||||
#HOST_XCOMPILE="--host=i586-mingw32"
|
||||
|
||||
qpushd $TMP_UDIR/icu-cross
|
||||
$TMP_UDIR/icu/source/configure ${HOST_XCOMPILE} \
|
||||
--prefix=$_ICU4C_UDIR \
|
||||
--with-cross-build=$TMP_UDIR/icu-native \
|
||||
--with-data-packaging=library
|
||||
--with-data-packaging=library \
|
||||
CC=$CC CPP="$CC -E" RANLIB=$RANLIB CXX=$TARGET-g++
|
||||
make \
|
||||
CFLAGS="-g -O2 -std=gnu99" \
|
||||
CXXFLAGS="-g -O2 -std=gnu++98"
|
||||
|
@ -201,7 +201,7 @@ set_default LIBXSLT_LIBXML2_URL "${XMLSOFT_URL}/libxml2-2.7.6.win32.zip"
|
||||
set_default LIBXSLT_ICONV_URL "${XMLSOFT_URL}/iconv-1.9.2.win32.zip"
|
||||
set_default LIBXSLT_ZLIB_URL "${XMLSOFT_URL}/zlib-1.2.3.win32.zip"
|
||||
set_default LIBXSLT_DIR $GLOBAL_DIR\\libxslt
|
||||
#set_default LIBXSLT_SRC_URL "http://xmlsoft.org/sources/libxslt-1.1.26.tar.gz" # unused
|
||||
set_default LIBXSLT_SRC_URL "http://xmlsoft.org/sources/libxslt-1.1.26.tar.gz" # needed for webkit build
|
||||
|
||||
set_default LIBXML2_URL "$GNOME_WIN32_DEPS_URL/libxml2_2.7.4-1_win32.zip"
|
||||
set_default LIBXML2_DEV_URL "$GNOME_WIN32_DEPS_URL/libxml2-dev_2.7.4-1_win32.zip"
|
||||
@ -298,11 +298,12 @@ set_default INNO_DIR $GLOBAL_DIR\\inno
|
||||
set_default HH_URL "http://download.microsoft.com/download/0/a/9/0a939ef6-e31c-430f-a3df-dfae7960d564/htmlhelp.exe"
|
||||
set_default HH_DIR $GLOBAL_DIR\\hh
|
||||
|
||||
set_default WEBKIT_URL "$SF_MIRROR/gnucash/webkit-1.1.90-win32.zip"
|
||||
set_default WEBKIT_DIR $GLOBAL_DIR\\webkit-1.1.90
|
||||
set_default WEBKIT_SRC_URL "http://www.webkitgtk.org/webkit-1.1.90.tar.gz"
|
||||
set_default WEBKIT_PATCH `pwd`/webkit-1.2.0-time.diff
|
||||
set_default WEBKIT_PATCH2 `pwd`/webkit-1.2.0-vsaprintf.diff
|
||||
set_default WEBKIT_VERSION "1.1.90"
|
||||
set_default WEBKIT_URL "$SF_MIRROR/gnucash/webkit-${WEBKIT_VERSION}-win32.zip"
|
||||
set_default WEBKIT_DIR $GLOBAL_DIR\\webkit-${WEBKIT_VERSION}
|
||||
set_default WEBKIT_SRC_URL "http://www.webkitgtk.org/webkit-1.2.7.tar.gz"
|
||||
set_default WEBKIT_PATCH `pwd`/webkit-1.2.7-time.patch
|
||||
set_default WEBKIT_PATCH2 `pwd`/webkit-1.2.7-vasprintf.patch
|
||||
set_default ENCHANT_URL "$GNOME_WIN32_URL/dependencies/enchant_1.5.0-2_win32.zip"
|
||||
set_default ENCHANT_DEV_URL "$GNOME_WIN32_URL/dependencies/enchant-dev_1.5.0-2_win32.zip"
|
||||
#set_default LIBSOUP_URL "$GNOME_WIN32_URL/libsoup/2.4/libsoup-2.4.0.zip"
|
||||
|
22
packaging/win32/webkit-1.2.7-time.patch
Normal file
22
packaging/win32/webkit-1.2.7-time.patch
Normal file
@ -0,0 +1,22 @@
|
||||
diff -ur -x '*.lo' -x '*.o' webkit-1.1.90-orig/WebCore/platform/network/ResourceResponseBase.h webkit-1.1.90/WebCore/platform/network/ResourceResponseBase.h
|
||||
--- webkit-1.1.90-orig/WebCore/platform/network/ResourceResponseBase.h 2010-02-22 17:36:04.000000000 +0100
|
||||
+++ webkit-1.1.90/WebCore/platform/network/ResourceResponseBase.h 2011-03-12 22:11:06.720211214 +0100
|
||||
@@ -31,6 +31,7 @@
|
||||
#include "KURL.h"
|
||||
|
||||
#include <wtf/PassOwnPtr.h>
|
||||
+#include <ctime>
|
||||
|
||||
namespace WebCore {
|
||||
|
||||
diff -ur webkit-1.2.7-orig/WebCore/page/Page.h webkit-1.2.7/WebCore/page/Page.h
|
||||
--- webkit-1.2.7-orig/WebCore/page/Page.h 2010-09-10 15:20:33.000000000 +0200
|
||||
+++ webkit-1.2.7/WebCore/page/Page.h 2011-03-12 23:25:35.670211006 +0100
|
||||
@@ -26,6 +26,7 @@
|
||||
#include <wtf/Forward.h>
|
||||
#include <wtf/HashSet.h>
|
||||
#include <wtf/Noncopyable.h>
|
||||
+#include <ctime>
|
||||
|
||||
#if PLATFORM(MAC)
|
||||
#include "SchedulePair.h"
|
22
packaging/win32/webkit-1.2.7-vasprintf.patch
Normal file
22
packaging/win32/webkit-1.2.7-vasprintf.patch
Normal file
@ -0,0 +1,22 @@
|
||||
diff -ur webkit-1.2.7-orig/WebCore/dom/XMLTokenizerLibxml2.cpp webkit-1.2.7/WebCore/dom/XMLTokenizerLibxml2.cpp
|
||||
--- webkit-1.2.7-orig/WebCore/dom/XMLTokenizerLibxml2.cpp 2010-09-10 15:20:33.000000000 +0200
|
||||
+++ webkit-1.2.7/WebCore/dom/XMLTokenizerLibxml2.cpp 2011-03-12 23:13:39.521370554 +0100
|
||||
@@ -23,6 +23,9 @@
|
||||
* Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
|
||||
+#define _GNU_SOURCE
|
||||
+#include <cstdio>
|
||||
+
|
||||
#include "config.h"
|
||||
#include "XMLTokenizer.h"
|
||||
|
||||
@@ -908,7 +911,7 @@
|
||||
if (m_parserStopped)
|
||||
return;
|
||||
|
||||
-#if COMPILER(MSVC) || COMPILER(RVCT)
|
||||
+#if 1
|
||||
char m[1024];
|
||||
vsnprintf(m, sizeof(m) - 1, message, args);
|
||||
#else
|
Loading…
Reference in New Issue
Block a user