port-to-gtk3: Switch to Gtkmm3 (#7)
Switch to Gtkmm3 in configure.ac. Require version 3.0.0. Also update the build instructions in README and the package list in .gitlab-ci.yml. Starting from version 3.18.0 Gtkmm requires C++11 compilation [1][2][3]. Add a check for Gtkmm >= 3.18.0 in configure.ac and enable C++11 compilation accordingly. References: [1] Gtkmm 3.18.1 NEWS "Changes in 3.18 ... Use, and require C++11, ..." https://gitlab.gnome.org/GNOME/gtkmm/blob/3.18.1/NEWS#L35 [2] Murray's Blog - "gtkmm now uses C++11" https://www.murrayc.com/permalink/2015/07/31/gtkmm-now-uses-c11 [3] Murray's Blog - "gtkmm 3.18 and glibmm 2.46" https://www.murrayc.com/permalink/2015/09/25/gtkmm-3-18-and-glibmm-2-46 Closes #7 - Port to Gtk3
This commit is contained in:
parent
5379352766
commit
cc0740148e
|
@ -8,7 +8,7 @@ stages:
|
||||||
before_script:
|
before_script:
|
||||||
- yum update -y
|
- yum update -y
|
||||||
- yum install -y which gnome-common gnome-doc-utils glib2-devel intltool
|
- yum install -y which gnome-common gnome-doc-utils glib2-devel intltool
|
||||||
gcc-c++ libuuid-devel parted-devel gtkmm24-devel make
|
gcc-c++ libuuid-devel parted-devel gtkmm30-devel make
|
||||||
polkit file rarian-compat
|
polkit file rarian-compat
|
||||||
|
|
||||||
.ubuntu_image_template: &ubuntu_image_definition
|
.ubuntu_image_template: &ubuntu_image_definition
|
||||||
|
@ -17,7 +17,7 @@ stages:
|
||||||
before_script:
|
before_script:
|
||||||
- apt-get update
|
- apt-get update
|
||||||
- apt-get install -y gnome-common gnome-doc-utils libglib2.0-dev-bin
|
- apt-get install -y gnome-common gnome-doc-utils libglib2.0-dev-bin
|
||||||
uuid-dev libparted-dev libgtkmm-2.4-dev make
|
uuid-dev libparted-dev libgtkmm-3.0-dev make
|
||||||
policykit-1 rarian-compat
|
policykit-1 rarian-compat
|
||||||
|
|
||||||
.build_stage_template: &build_stage_definition
|
.build_stage_template: &build_stage_definition
|
||||||
|
|
8
README
8
README
|
@ -86,7 +86,7 @@ b. Building from Source
|
||||||
e2fsprogs
|
e2fsprogs
|
||||||
parted
|
parted
|
||||||
gnome-common
|
gnome-common
|
||||||
gtkmm24
|
gtkmm3
|
||||||
gettext
|
gettext
|
||||||
gnome-doc-utils - required if help documentation is to be built
|
gnome-doc-utils - required if help documentation is to be built
|
||||||
|
|
||||||
|
@ -96,11 +96,11 @@ b. Building from Source
|
||||||
sudo apt-get build-dep gparted
|
sudo apt-get build-dep gparted
|
||||||
Or;
|
Or;
|
||||||
sudo apt-get install build-essential e2fsprogs uuid uuid-dev \
|
sudo apt-get install build-essential e2fsprogs uuid uuid-dev \
|
||||||
gnome-common libparted-dev libgtkmm-2.4-dev \
|
gnome-common libparted-dev libgtkmm-3.0-dev \
|
||||||
libdevmapper-dev gnome-doc-utils docbook-xml
|
libdevmapper-dev gnome-doc-utils docbook-xml
|
||||||
|
|
||||||
On Fedora, you will need to run (as root);
|
On Fedora, you will need to run (as root);
|
||||||
yum install gtkmm24-devel parted-devel e2fsprogs-devel gettext \
|
yum install gtkmm30-devel parted-devel e2fsprogs-devel gettext \
|
||||||
'perl(XML::Parser)' desktop-file-utils libuuid-devel \
|
'perl(XML::Parser)' desktop-file-utils libuuid-devel \
|
||||||
gnome-doc-utils docbook-dtds intltool gnome-common \
|
gnome-doc-utils docbook-dtds intltool gnome-common \
|
||||||
gcc-c++
|
gcc-c++
|
||||||
|
@ -109,7 +109,7 @@ b. Building from Source
|
||||||
On openSUSE, these dependencies may be obtained by running the
|
On openSUSE, these dependencies may be obtained by running the
|
||||||
following commands;
|
following commands;
|
||||||
sudo zypper install automake autoconf make gnome-common \
|
sudo zypper install automake autoconf make gnome-common \
|
||||||
libuuid-devel parted-devel gtkmm2-devel \
|
libuuid-devel parted-devel gtkmm3-devel \
|
||||||
gnome-doc-utils-devel docbook-xsl-stylesheets
|
gnome-doc-utils-devel docbook-xsl-stylesheets
|
||||||
sudo zypper install -t pattern devel_c_c++
|
sudo zypper install -t pattern devel_c_c++
|
||||||
|
|
||||||
|
|
11
configure.ac
11
configure.ac
|
@ -199,7 +199,7 @@ AC_SUBST([GTHREAD_LIBS])
|
||||||
AC_SUBST([GTHREAD_CFLAGS])
|
AC_SUBST([GTHREAD_CFLAGS])
|
||||||
|
|
||||||
dnl GTKMM
|
dnl GTKMM
|
||||||
PKG_CHECK_MODULES([GTKMM], [gtkmm-2.4 >= 2.24.0])
|
PKG_CHECK_MODULES([GTKMM], [gtkmm-3.0 >= 3.0.0])
|
||||||
AC_SUBST([GTKMM_LIBS])
|
AC_SUBST([GTKMM_LIBS])
|
||||||
AC_SUBST([GTKMM_CFLAGS])
|
AC_SUBST([GTKMM_CFLAGS])
|
||||||
|
|
||||||
|
@ -227,6 +227,15 @@ PKG_CHECK_EXISTS(
|
||||||
],
|
],
|
||||||
[AC_MSG_RESULT([no])]
|
[AC_MSG_RESULT([no])]
|
||||||
)
|
)
|
||||||
|
dnl Check for gtkmm >= 3.18.0 which requires C++11 compilation.
|
||||||
|
AC_MSG_CHECKING([for gtkmm >= 3.18.0 which requires C++11 compilation])
|
||||||
|
PKG_CHECK_EXISTS(
|
||||||
|
[gtkmm-3.0 >= 3.18.0],
|
||||||
|
[need_cxx_compile_stdcxx_11=yes
|
||||||
|
AC_MSG_RESULT([yes])
|
||||||
|
],
|
||||||
|
[AC_MSG_RESULT([no])]
|
||||||
|
)
|
||||||
dnl Enable C++11 compilation only if required.
|
dnl Enable C++11 compilation only if required.
|
||||||
if test "x$need_cxx_compile_stdcxx_11" = xyes; then
|
if test "x$need_cxx_compile_stdcxx_11" = xyes; then
|
||||||
AX_CXX_COMPILE_STDCXX_11()
|
AX_CXX_COMPILE_STDCXX_11()
|
||||||
|
|
Loading…
Reference in New Issue