[geany/geany] 8184f9: Make GTK3 build default, and GTK2 build optional

Matthew Brush git-noreply at xxxxx
Sun Oct 4 12:22:06 UTC 2020


Branch:      refs/heads/master
Author:      Matthew Brush <matt at geany.org>
Committer:   Matthew Brush <mbrush at codebrainz.ca>
Date:        Sun, 04 Oct 2020 12:22:06 UTC
Commit:      8184f91a8fdf6869775f20acc907e6573354c40b
             https://github.com/geany/geany/commit/8184f91a8fdf6869775f20acc907e6573354c40b

Log Message:
-----------
Make GTK3 build default, and GTK2 build optional

* Replace `--enable-gtk3` with `--enable-gtk2`
* Update Travis CI builds
* Change `cross-build-mingw.sh` default to GTK3 and cleanup a little

After this commit it will be required to pass `--enable-gtk2` to
the Autoconf script in order to build with GTK+2, otherwise GTK+3
will be required.


Modified Paths:
--------------
    .travis.yml
    configure.ac
    scripts/cross-build-mingw.sh

Modified: .travis.yml
16 lines changed, 8 insertions(+), 8 deletions(-)
===================================================================
@@ -5,12 +5,12 @@ dist: trusty
 compiler:
   - gcc
 env:
-  - GTK3=no BINRELOC=no
-  - GTK3=yes BINRELOC=no
-  - GTK3=no BINRELOC=yes
-  - GTK3=yes BINRELOC=yes
-  - GTK3=no MINGW=yes
-  - GTK3=yes MINGW=yes
+  - GTK2=no BINRELOC=no
+  - GTK2=yes BINRELOC=no
+  - GTK2=no BINRELOC=yes
+  - GTK2=yes BINRELOC=yes
+  - GTK2=no MINGW=yes
+  - GTK2=yes MINGW=yes
 before_install:
   - sudo apt-get update -qq
 install:
@@ -29,11 +29,11 @@ script:
   - NOCONFIGURE=1 ./autogen.sh
   - >
     if [ -n "$MINGW" ]; then
-      arg=-2; [ "$GTK3" = yes ] && arg=-3;
+      arg=-3; [ "$GTK2" = yes ] && arg=-2;
       unset CC CXX;
       sh ./scripts/cross-build-mingw.sh $arg;
     else
-      CONFIGURE_FLAGS="--enable-gtk3=$GTK3 --enable-binreloc=$BINRELOC";
+      CONFIGURE_FLAGS="--enable-gtk2=$GTK2 --enable-binreloc=$BINRELOC";
       mkdir _build                        &&
       cd _build                           &&
       { ../configure $CONFIGURE_FLAGS || { cat config.log; exit 1; } ; } &&


Modified: configure.ac
25 lines changed, 11 insertions(+), 14 deletions(-)
===================================================================
@@ -72,26 +72,23 @@ GEANY_CHECK_REVISION([dnl force debug mode for a VCS working copy
 					  CFLAGS="-g -DGEANY_DEBUG $CFLAGS"])
 
 # GTK version check
-AC_ARG_ENABLE([gtk3],
-		[AS_HELP_STRING([--enable-gtk3],
-						[compile against GTK3 [default=auto]])],
-		[enable_gtk3=$enableval],
-		[enable_gtk3=auto])
+AC_ARG_ENABLE([gtk2],
+		[AS_HELP_STRING([--enable-gtk2],
+						[compile against deprecated GTK2 [default=no]])],
+		[enable_gtk2=$enableval],
+		[enable_gtk2=no])
 
 gtk2_package=gtk+-2.0
 gtk2_min_version=2.24
 gtk3_package=gtk+-3.0
 gtk3_min_version=3.0
 
-PKG_CHECK_EXISTS([$gtk2_package >= $gtk2_min_version], [have_gtk2=yes], [have_gtk2=no])
-PKG_CHECK_EXISTS([$gtk3_package >= $gtk3_min_version], [have_gtk3=yes], [have_gtk3=no])
-AS_IF([test "x$enable_gtk3" = xyes || (test "x$enable_gtk3" != xno &&
-									   test "x$have_gtk3" = xyes &&
-									   test "x$have_gtk2" = xno)],
-	  [gtk_package=$gtk3_package
-	   gtk_min_version=$gtk3_min_version],
-	  [gtk_package=$gtk2_package
-	   gtk_min_version=$gtk2_min_version])
+AS_IF([test "x$enable_gtk2" = "xyes"],
+	[gtk_package=$gtk2_package
+	 gtk_min_version=$gtk2_min_version],
+	[gtk_package=$gtk3_package
+	 gtk_min_version=$gtk3_min_version])
+
 AM_CONDITIONAL([GTK3], [test "x$gtk_package" = "x$gtk3_package"])
 
 # GTK/GLib/GIO checks


Modified: scripts/cross-build-mingw.sh
23 lines changed, 12 insertions(+), 11 deletions(-)
===================================================================
@@ -18,7 +18,7 @@ HOST=i686-w64-mingw32
 GTK2_BUNDLE_ZIP="https://download.geany.org/contrib/gtk/gtk+-bundle_2.24.10-20120208_win32.zip"
 GTK3_BUNDLE_ZIP="https://download.geany.org/contrib/gtk/gtk+-bundle_3.8.2-20131001_win32.zip"
 BUILDDIR=_build-cross-mingw
-GTK3=no
+GTK3=yes
 CONFIGUREFLAGS="--enable-nls"
 MAKEFLAGS="${MAKEFLAGS:--j2}"
 
@@ -31,8 +31,8 @@ while getopts '32b:h' o; do
       cat <<EOF
 USAGE: $0 [-2|-3] [-b DIR] [-h]
 
--2      Build against GTK2
--3      Build against GTK3
+-2      Build against GTK2 (deprecated)
+-3      Build against GTK3 (default)
 -b DIR  Use DIR as build directory
 -h      Show this help and exit
 EOF
@@ -42,13 +42,6 @@ EOF
 done
 shift $((OPTIND - 1))
 
-CONFIGUREFLAGS="$CONFIGUREFLAGS --enable-gtk3=$GTK3"
-if [ "$GTK3" = yes ]; then
-  BUNDLE_ZIP="$GTK3_BUNDLE_ZIP"
-else
-  BUNDLE_ZIP="$GTK2_BUNDLE_ZIP"
-fi
-
 # USAGE: fetch_and_unzip URL DEST_PREFIX
 fetch_and_unzip()
 {
@@ -87,8 +80,16 @@ mkdir "$BUILDDIR"
 cd "$BUILDDIR"
 
 mkdir _deps
+
+# both the GTK2 and GTK3 build require files from the GTK3 bundle
+# so download and unzip it unconditionally
 fetch_and_unzip "$GTK3_BUNDLE_ZIP" _deps
-[ "$GTK3" = yes ] || fetch_and_unzip "$BUNDLE_ZIP" _deps
+
+if [ "$GTK3" = no ]; then
+  fetch_and_unzip "$GTK2_BUNDLE_ZIP" _deps
+  CONFIGUREFLAGS="$CONFIGUREFLAGS --enable-gtk2=yes"
+fi
+
 # fixup the prefix= in the pkg-config files
 sed -i "s%^\(prefix=\).*$%\1$PWD/_deps%" _deps/lib/pkgconfig/*.pc
 



--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).


More information about the Commits mailing list