[Commits] [SCM] claws-win32-installer branch, gtk2, updated. 3.19.0-1-20-g410e4b6
jonathan at claws-mail.org
jonathan at claws-mail.org
Mon Jun 13 05:10:31 UTC 2022
The branch, gtk2 has been updated
via 410e4b6ea9f6c1076327c0d60fad04e47a930936 (commit)
via 6a9fffa4b1b4413ee7ae3b7a97d8f05ae77b121e (commit)
from f52b4a4367f37d4b5f4a201296604a8f778c8c75 (commit)
Summary of changes:
README | 42 +++++++++++++++++++++++++++++++++++++-----
build-aux/clean.sh | 2 +-
configure.ac | 4 ++++
src/Makefile.am | 7 +++++++
4 files changed, 49 insertions(+), 6 deletions(-)
- Log -----------------------------------------------------------------
commit 410e4b6ea9f6c1076327c0d60fad04e47a930936
Author: Jonathan Boeing <jonathan at claws-mail.org>
Date: Sun Jun 12 19:07:46 2022 -0700
Updates for building webkitgtk
diff --git a/README b/README
index ddda34c..ef14ff2 100644
--- a/README
+++ b/README
@@ -63,13 +63,15 @@ of smaller lzma
--enable-debug will build packages with debug CFLAGS and configure options
-The configure script looks for four environment variables:
+The configure script looks for five environment variables:
CFLAGS and CXXFLAGS are respected and passed down when building the packages.
If CFLAGS is specified but CXXFLAGS isn't, CXXFLAGS will use the CFLAGS value.
EXTRA_MAKENSIS_FLAGS will be added to the makensis command line.
+WEBKITGTK_BISON sets a custom path to bison for building webkitgtk-2.4.11. See below.
+
MAKE_JOBS sets the make -j parameter for building in parallel. It defaults to
the number of CPUs on the system. It doesn't build multiple packages in
parallel; it sets the parallelism in each package.
@@ -123,12 +125,42 @@ python3-distutils
wget
curl
ruby *
+python-is-python3 *
gtk-3-examples **
-* only needed for webkitgtk
+* only needed for webkitgtk on gtk2 builds
** only needed for gtk3 builds
-*** webkitgtk-2.4.11 fails to build with bison-3.7. Building bison-3.6.4
-by hand and prepending it to PATH allows the build to succeed
+*** webkitgtk-2.4.11 fails to build with bison-3.7 but
+ works with bison-3.6.4. See below.
+
+
+Fancy / WebkitGTK / GTK2
+========================
+
+Due to a lack of upstream support, webkitgtk and therefore the Claws Fancy plugin
+are only available with the GTK2 build. The latest version of webkitgtk that can
+be built for Windows is 2.4.11, which is quite old. Several packages needed by
+Claws have since broken compatibility with the old version of webkitgtk. Currently,
+they are:
+ glib
+ glib-networking
+ icu
+
+In order to keep some Fancy support, the GTK2 build of Claws also builds with
+old versions of those packages.
+
+Additionally, webkitgtk-2.4.11 needs bison-3.6.4 to build. If bison-3.6.4 isn't
+available from your distro:
+
+1. Build and install bison-3.6.4
+ wget http://mirrors.kernel.org/gnu/bison/bison-3.6.4.tar.xz
+ tar xf bison-3.6.4.tar.xz
+ cd bison-3.6.4
+ ./configure --prefix=/opt/bison-3.6.4
+ make && sudo make install
+
+2. Call autogen.sh with the path to bison
+ ./autogen.sh --build-w64 WEBKITGTK_BISON=/opt/bison-3.6.4/bin/bison
Building in a Docker container
@@ -140,7 +172,7 @@ is sufficient:
--------8<---------8<---------8<--------
FROM debian:bullseye
-RUN apt-get update && apt-get -y install build-essential automake autoconf mingw-w64 mingw-w64-tools nsis stow unzip docbook-utils libglib2.0-bin libglib2.0-dev-bin git cmake bison flex gperf intltool libtool libgettextpo-dev meson python3-distutils wget curl ruby gtk-3-examples & apt-get clean
+RUN apt-get update && apt-get -y install build-essential automake autoconf mingw-w64 mingw-w64-tools nsis stow unzip docbook-utils libglib2.0-bin libglib2.0-dev-bin git cmake bison flex gperf intltool libtool libgettextpo-dev meson python3-distutils python-is-python3 wget curl ruby gtk-3-examples & apt-get clean
--------8<---------8<---------8<--------
To build the image locally (run in the directory with Dockerfile
diff --git a/configure.ac b/configure.ac
index a679d32..e4e3280 100644
--- a/configure.ac
+++ b/configure.ac
@@ -134,6 +134,9 @@ AC_SUBST(CM_MAKE_JOBS)
AC_ARG_VAR([EXTRA_MAKENSIS_FLAGS], [Extra flags to pass to makensis])
+AC_ARG_VAR([WEBKITGTK_BISON], [Path to specific bison for building webkitgtk])
+AM_CONDITIONAL([ENABLE_CUSTOM_WEBKITGTK_BISON], [test x$WEBKITGTK_BISON != x])
+
# Required tools.
AC_PROG_CC
AC_PROG_CPP
@@ -327,5 +330,6 @@ echo "
Default package CXXFLAGS: $CM_CXXFLAGS
Default make jobs: $CM_MAKE_JOBS
Extra makensis flags: $EXTRA_MAKENSIS_FLAGS
+ WebkitGTK bison: $WEBKITGTK_BISON
Package build list: $cm_build_list
"
diff --git a/src/Makefile.am b/src/Makefile.am
index bf2c9ff..d57f5b8 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -334,6 +334,12 @@ webkitgtk_debug = \
--disable-debug
endif
+if ENABLE_CUSTOM_WEBKITGTK_BISON
+webkitgtk_bison = BISON=$(WEBKITGTK_BISON)
+else
+webkitgtk_bison =
+endif
+
cm_pkg_webkitgtk_configure = \
--disable-webkit2 \
--enable-webkit1 \
@@ -362,6 +368,7 @@ cm_pkg_webkitgtk_configure = \
--enable-silent-rules \
CPPFLAGS="-I$(idir)/include -Wno-expansion-to-defined -Wno-class-memaccess" \
CC=$(CC) \
+ $(webkitgtk_bison) \
LDFLAGS=-L$(idir)/lib
# -ggdb causes an ICE with gcc-8.3 / webkit-2.4.11
cm_pkg_webkitgtk_cflags = \
commit 6a9fffa4b1b4413ee7ae3b7a97d8f05ae77b121e
Author: Jonathan Boeing <jonathan at claws-mail.org>
Date: Sun Jun 12 17:36:47 2022 -0700
Fix clean script
diff --git a/build-aux/clean.sh b/build-aux/clean.sh
index 3fe2333..165b6ce 100755
--- a/build-aux/clean.sh
+++ b/build-aux/clean.sh
@@ -19,5 +19,5 @@ cd $root
echo Cleaning
-git clean -dfx --exclude=packages
+git clean -dfx --exclude=/packages/
-----------------------------------------------------------------------
hooks/post-receive
--
Installer sources for Claws Mail Windows port
More information about the Commits
mailing list