commit:     1ab287d52bf8f597b107156a07e70a6348fecfbd
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 25 23:10:55 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jul 25 23:23:34 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1ab287d5

x11-misc/slim: EAPI 7, cmake-utils--, fix build with GCC 11

Closes: https://bugs.gentoo.org/786498
Signed-off-by: Sam James <sam <AT> gentoo.org>

 x11-misc/slim/files/slim-1.3.6-config.diff         |  4 +--
 x11-misc/slim/files/slim-1.3.6-freetype.patch      |  4 +--
 x11-misc/slim/files/slim-1.3.6-gcc11.patch         | 12 +++++++
 x11-misc/slim/files/slim-1.3.6-honour-cflags.patch |  4 +--
 .../slim-1.3.6-strip-systemd-unit-install.patch    |  4 +--
 x11-misc/slim/slim-1.3.6-r5.ebuild                 | 31 +++++++++-------
 x11-misc/slim/slim-9999.ebuild                     | 42 +++++++++++-----------
 7 files changed, 59 insertions(+), 42 deletions(-)

diff --git a/x11-misc/slim/files/slim-1.3.6-config.diff 
b/x11-misc/slim/files/slim-1.3.6-config.diff
index 9da6795cccf..561e6a99273 100644
--- a/x11-misc/slim/files/slim-1.3.6-config.diff
+++ b/x11-misc/slim/files/slim-1.3.6-config.diff
@@ -1,5 +1,5 @@
---- slim.conf.orig     2010-08-25 11:52:23.000000000 -0400
-+++ slim.conf  2010-08-25 11:58:58.000000000 -0400
+--- a/slim.conf.orig   2010-08-25 11:52:23.000000000 -0400
++++ b/slim.conf        2010-08-25 11:58:58.000000000 -0400
 @@ -2,7 +2,7 @@
  # Note: -xauth $authfile is automatically appended
  default_path        /bin:/usr/bin:/usr/local/bin

diff --git a/x11-misc/slim/files/slim-1.3.6-freetype.patch 
b/x11-misc/slim/files/slim-1.3.6-freetype.patch
index 8cefc0bf099..fe2aa60ad1b 100644
--- a/x11-misc/slim/files/slim-1.3.6-freetype.patch
+++ b/x11-misc/slim/files/slim-1.3.6-freetype.patch
@@ -1,6 +1,6 @@
 diff -up ./CMakeLists.txt.orig ./CMakeLists.txt
---- ./CMakeLists.txt.orig      2014-11-11 20:38:40.706121207 +0100
-+++ ./CMakeLists.txt   2014-11-11 20:39:34.206120264 +0100
+--- a/CMakeLists.txt.orig      2014-11-11 20:38:40.706121207 +0100
++++ b/CMakeLists.txt   2014-11-11 20:39:34.206120264 +0100
 @@ -165,7 +165,7 @@ include_directories(
        ${X11_Xft_INCLUDE_PATH}
        ${X11_Xrender_INCLUDE_PATH}

diff --git a/x11-misc/slim/files/slim-1.3.6-gcc11.patch 
b/x11-misc/slim/files/slim-1.3.6-gcc11.patch
new file mode 100644
index 00000000000..a6b07c63778
--- /dev/null
+++ b/x11-misc/slim/files/slim-1.3.6-gcc11.patch
@@ -0,0 +1,12 @@
+https://bugs.gentoo.org/786498
+--- a/panel.cpp
++++ b/panel.cpp
+@@ -48,7 +48,7 @@
+               gcm = GCGraphicsExposures;
+               gcv.graphics_exposures = False;
+               WinGC = XCreateGC(Dpy, Win, gcm, &gcv);
+-              if (WinGC < 0) {
++              if (WinGC == 0) {
+                       cerr << APPNAME
+                               << ": failed to create pixmap\n.";
+                       exit(ERR_EXIT);

diff --git a/x11-misc/slim/files/slim-1.3.6-honour-cflags.patch 
b/x11-misc/slim/files/slim-1.3.6-honour-cflags.patch
index 8335e0fe9e7..2a43be75fb0 100644
--- a/x11-misc/slim/files/slim-1.3.6-honour-cflags.patch
+++ b/x11-misc/slim/files/slim-1.3.6-honour-cflags.patch
@@ -1,5 +1,5 @@
---- CMakeLists.txt     2013-10-01 18:38:05.000000000 -0400
-+++ CMakeLists.txt.new 2013-10-15 11:33:18.975741094 -0400
+--- a/CMakeLists.txt   2013-10-01 18:38:05.000000000 -0400
++++ b/CMakeLists.txt.new       2013-10-15 11:33:18.975741094 -0400
 @@ -42,11 +42,6 @@
  set(SLIM_DEFINITIONS ${SLIM_DEFINITIONS} "-DPKGDATADIR=\"${PKGDATADIR}\"")
  set(SLIM_DEFINITIONS ${SLIM_DEFINITIONS} "-DSYSCONFDIR=\"${SYSCONFDIR}\"")

diff --git a/x11-misc/slim/files/slim-1.3.6-strip-systemd-unit-install.patch 
b/x11-misc/slim/files/slim-1.3.6-strip-systemd-unit-install.patch
index f116c5ebc97..9ffa19ce053 100644
--- a/x11-misc/slim/files/slim-1.3.6-strip-systemd-unit-install.patch
+++ b/x11-misc/slim/files/slim-1.3.6-strip-systemd-unit-install.patch
@@ -1,5 +1,5 @@
---- CMakeLists.txt     2013-10-15 12:02:13.463722050 -0400
-+++ CMakeLists.txt.new 2013-10-17 09:41:41.602917345 -0400
+--- a/CMakeLists.txt   2013-10-15 12:02:13.463722050 -0400
++++ b/CMakeLists.txt   2013-10-17 09:41:41.602917345 -0400
 @@ -238,10 +238,6 @@
  install(FILES slimlock.1 DESTINATION ${MANDIR}/man1/)
  # configure

diff --git a/x11-misc/slim/slim-1.3.6-r5.ebuild 
b/x11-misc/slim/slim-1.3.6-r5.ebuild
index ef30117b352..66c1f3e89e6 100644
--- a/x11-misc/slim/slim-1.3.6-r5.ebuild
+++ b/x11-misc/slim/slim-1.3.6-r5.ebuild
@@ -1,17 +1,21 @@
 # Copyright 1999-2021 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=5
+EAPI=7
 
-inherit cmake-utils pam systemd versionator
+inherit cmake pam systemd
 
 DESCRIPTION="Simple Login Manager"
-HOMEPAGE="https://sourceforge.net/projects/slim.berlios/";
-SRC_URI="mirror://sourceforge/project/${PN}.berlios/${P}.tar.gz"
+if [[ ${PV} == 9999* ]]; then
+        EGIT_REPO_URI="https://github.com/axs-gentoo/slim-git.git";
+        inherit git-r3
+else
+       SRC_URI="mirror://sourceforge/project/${PN}.berlios/${P}.tar.gz"
+       KEYWORDS="amd64 arm ~arm64 ~mips ppc ppc64 sparc x86"
+fi
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="amd64 arm ~arm64 ~mips ppc ppc64 sparc x86"
 IUSE="branding pam"
 
 RDEPEND="x11-libs/libXmu
@@ -25,8 +29,8 @@ RDEPEND="x11-libs/libXmu
        pam? (  sys-libs/pam
                !x11-misc/slimlock )"
 DEPEND="${RDEPEND}
-       virtual/pkgconfig
        x11-base/xorg-proto"
+BDEPEND="virtual/pkgconfig"
 PDEPEND="branding? ( >=x11-themes/slim-themes-1.2.3a-r3 )"
 
 PATCHES=(
@@ -43,10 +47,11 @@ PATCHES=(
        "${FILESDIR}"/${P}-drop-zlib.patch
        "${FILESDIR}"/${P}-freetype.patch
        "${FILESDIR}"/${P}-envcpy-bad-pointer-arithmetic.patch
+       "${FILESDIR}"/${PN}-1.3.6-gcc11.patch
 )
 
 src_prepare() {
-       cmake-utils_src_prepare
+       cmake_src_prepare
 
        if use elibc_FreeBSD; then
                sed -i -e 's/"-DHAVE_SHADOW"/"-DNEEDS_BASENAME"/' 
CMakeLists.txt \
@@ -60,15 +65,15 @@ src_prepare() {
 
 src_configure() {
        local mycmakeargs=(
-               $(cmake-utils_use pam USE_PAM)
+               -DUSE_PAM=$(usex pam)
                -DUSE_CONSOLEKIT=OFF
        )
 
-       cmake-utils_src_configure
+       cmake_src_configure
 }
 
 src_install() {
-       cmake-utils_src_install
+       cmake_src_install
 
        if use pam ; then
                pamd_mimic system-local-login slim auth account session
@@ -94,11 +99,12 @@ pkg_postinst() {
        # a previous emerge attempt failed in the middle of qmerge.
        local rv=none
        for rv in ${REPLACING_VERSIONS} ; do
-               if version_is_at_least "1.3.2-r7" "${rv}" ; then
+               if ver_test "1.3.2-r7" -le "${rv}" ; then
                        rv=newer
                        break;
                fi
-               if version_is_at_least "1.0" "${rv}"  ; then
+
+               if ver_test "1.0" -le "${rv}"  ; then
                        rv=older
                        break;
                fi
@@ -126,6 +132,7 @@ pkg_postinst() {
                elog "accordingly."
                elog
        fi
+
        if ! use pam; then
                elog "You have merged ${PN} without USE=\"pam\", this will 
cause ${PN} to fall back to"
                elog "the console when restarting your window manager. If this 
is not desired, then"

diff --git a/x11-misc/slim/slim-9999.ebuild b/x11-misc/slim/slim-9999.ebuild
index 2a980120424..cfaf87f96c0 100644
--- a/x11-misc/slim/slim-9999.ebuild
+++ b/x11-misc/slim/slim-9999.ebuild
@@ -1,20 +1,19 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=6
+EAPI=7
 
-inherit cmake-utils pam systemd versionator
+inherit cmake pam systemd
 
-if [[ ${PV} = 9999* ]]; then
-       EGIT_REPO_URI="https://github.com/axs-gentoo/slim-git.git";
-       inherit git-r3
+DESCRIPTION="Simple Login Manager"
+if [[ ${PV} == 9999* ]]; then
+        EGIT_REPO_URI="https://github.com/axs-gentoo/slim-git.git";
+        inherit git-r3
 else
        SRC_URI="mirror://sourceforge/project/${PN}.berlios/${P}.tar.gz"
-       KEYWORDS="~amd64 ~arm ~mips ~ppc ~ppc64 ~sparc ~x86"
+       KEYWORDS="amd64 arm ~arm64 ~mips ppc ppc64 sparc x86"
 fi
 
-DESCRIPTION="Simple Login Manager"
-HOMEPAGE="https://sourceforge.net/projects/slim.berlios/";
 LICENSE="GPL-2"
 SLOT="0"
 IUSE="branding pam"
@@ -27,11 +26,11 @@ RDEPEND="x11-libs/libXmu
        media-libs/libpng:0=
        virtual/jpeg:=
        x11-apps/sessreg
-       pam? ( sys-libs/pam
+       pam? (  sys-libs/pam
                !x11-misc/slimlock )"
 DEPEND="${RDEPEND}
-       virtual/pkgconfig
        x11-base/xorg-proto"
+BDEPEND="virtual/pkgconfig"
 PDEPEND="branding? ( >=x11-themes/slim-themes-1.2.3a-r3 )"
 
 PATCHES=(
@@ -40,7 +39,7 @@ PATCHES=(
 )
 
 src_prepare() {
-       cmake-utils_src_prepare
+       cmake_src_prepare
 
        if use elibc_FreeBSD; then
                sed -i -e 's/"-DHAVE_SHADOW"/"-DNEEDS_BASENAME"/' 
CMakeLists.txt \
@@ -59,11 +58,11 @@ src_configure() {
                -DUSE_CONSOLEKIT=OFF
        )
 
-       cmake-utils_src_configure
+       cmake_src_configure
 }
 
 src_install() {
-       cmake-utils_src_install
+       cmake_src_install
 
        if use pam ; then
                pamd_mimic system-local-login slim auth account session
@@ -89,11 +88,12 @@ pkg_postinst() {
        # a previous emerge attempt failed in the middle of qmerge.
        local rv=none
        for rv in ${REPLACING_VERSIONS} ; do
-               if version_is_at_least "1.3.2-r7" "${rv}" ; then
+               if ver_test "1.3.2-r7" -le "${rv}" ; then
                        rv=newer
                        break;
                fi
-               if version_is_at_least "1.0" "${rv}"  ; then
+
+               if ver_test "1.0" -le "${rv}"  ; then
                        rv=older
                        break;
                fi
@@ -108,12 +108,9 @@ pkg_postinst() {
        fi
        if [[ ${rv} != newer ]]; then
                elog
-               elog "By default, ${PN} is set up to provide X session 
selection based on the"
-               elog ".desktop entries in /usr/share/xsessions/ that are 
installed by each"
-               elog "DE, including ~/.xsession support via the 'Xsession' 
session.  Sessions"
-               elog "are selected at login by pressing [F1].  As per the Xorg 
guide, each"
-               elog "user's default session can be specified by adding the 
name from"
-               elog "/etc/X11/Sessions to ~/.xsession."
+               elog "By default, ${PN} is set up to do proper X session 
selection, including ~/.xsession"
+               elog "support, as well as selection between sessions available 
in"
+               elog "/etc/X11/Sessions/ at login by pressing [F1]."
                elog
                elog "The XSESSION environment variable is still supported as a 
default"
                elog "if no session has been specified by the user."
@@ -124,6 +121,7 @@ pkg_postinst() {
                elog "accordingly."
                elog
        fi
+
        if ! use pam; then
                elog "You have merged ${PN} without USE=\"pam\", this will 
cause ${PN} to fall back to"
                elog "the console when restarting your window manager. If this 
is not desired, then"

Reply via email to