commit:     cb066b0c71bd0ff6d6e4ab5b4d9e5b94b05aafb3
Author:     Nicolas PARLANT <nicolas.parlant <AT> parhuet <DOT> fr>
AuthorDate: Tue Nov  4 21:42:44 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Nov  5 17:06:25 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cb066b0c

x11-wm/awesome: fix cmake-4, deps

libXcursor is replaced by xcb_cursor

override version

remove seemingly outdated comments for :
* ldoc, the old ebuild w/o lua.eclass is removed
* issues w/ java has been fixed in 4.0, see issue 248

update cmake_min

Closes: https://bugs.gentoo.org/953942
Signed-off-by: Nicolas PARLANT <nicolas.parlant <AT> parhuet.fr>
Part-of: https://github.com/gentoo/gentoo/pull/44490
Signed-off-by: Sam James <sam <AT> gentoo.org>

 x11-wm/awesome/awesome-4.3-r104.ebuild            | 146 ++++++++++++++++++++++
 x11-wm/awesome/files/awesome-4.3-fix_cmake4.patch |  45 +++++++
 2 files changed, 191 insertions(+)

diff --git a/x11-wm/awesome/awesome-4.3-r104.ebuild 
b/x11-wm/awesome/awesome-4.3-r104.ebuild
new file mode 100644
index 000000000000..c6d010785ffd
--- /dev/null
+++ b/x11-wm/awesome/awesome-4.3-r104.ebuild
@@ -0,0 +1,146 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1..3} luajit )
+inherit cmake desktop lua-single pax-utils
+
+if [[ ${PV} == *9999* ]] ; then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/awesomeWM/${PN}.git";
+else
+       
SRC_URI="https://github.com/awesomeWM/awesome-releases/raw/master/${P}.tar.xz";
+       KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~riscv ~x86"
+fi
+
+DESCRIPTION="Dynamic floating and tiling window manager"
+HOMEPAGE="https://awesomewm.org/";
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="dbus doc gnome test"
+
+REQUIRED_USE="${LUA_REQUIRED_USE}"
+
+# Doesn't play nicely with the sandbox + requires an active D-BUS session
+RESTRICT="test"
+
+RDEPEND="
+       ${LUA_DEPS}
+       dev-libs/glib:2
+       dev-libs/libxdg-basedir
+       $(lua_gen_cond_dep 'dev-lua/lgi[${LUA_USEDEP}]')
+       x11-libs/cairo[X,xcb(+)]
+       x11-libs/gdk-pixbuf:2[introspection]
+       x11-libs/libxcb:=
+       x11-libs/pango[introspection]
+       x11-libs/startup-notification
+       x11-libs/xcb-util
+       x11-libs/xcb-util-cursor
+       x11-libs/xcb-util-keysyms
+       x11-libs/xcb-util-wm
+       x11-libs/xcb-util-xrm
+       x11-libs/libxkbcommon[X]
+       x11-libs/libX11
+       dbus? ( sys-apps/dbus )
+"
+DEPEND="
+       ${RDEPEND}
+       x11-base/xcb-proto
+       x11-base/xorg-proto
+       test? (
+               x11-base/xorg-server[xvfb]
+               $(lua_gen_cond_dep '
+                       dev-lua/busted[${LUA_USEDEP}]
+                       dev-lua/luacheck[${LUA_USEDEP}]
+               ')
+       )
+"
+# graphicsmagick's 'convert -channel' has no Alpha support, bug #352282
+BDEPEND="
+       dev-ruby/asciidoctor
+       media-gfx/imagemagick[png]
+       virtual/pkgconfig
+       doc? ( dev-lua/ldoc     )
+       test? (
+               app-shells/zsh
+               x11-apps/xeyes
+       )
+"
+
+# Skip installation of README.md by einstalldocs, which leads to broken symlink
+DOCS=()
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-4.0-convert-path.patch  # bug #408025
+       "${FILESDIR}"/${PN}-xsession.patch          # bug #408025
+       "${FILESDIR}"/${PN}-4.3-cflag-cleanup.patch # bug #509658
+       "${FILESDIR}"/${PN}-4.3-fno-common.patch    # bug #707262
+       "${FILESDIR}"/${PN}-4.3-fix_cmake4.patch    # bug #953942
+       "${FILESDIR}"/${PN}-4.3-fix_target.patch    # bug #962597
+)
+
+src_configure() {
+       # Compression of manpages is handled by portage
+       local mycmakeargs=(
+               -DSYSCONFDIR="${EPREFIX}"/etc
+               -DCOMPRESS_MANPAGES=OFF
+               -DWITH_DBUS=$(usex dbus)
+               -DGENERATE_DOC=$(usex doc)
+               -DAWESOME_DOC_PATH="${EPREFIX}"/usr/share/doc/${PF}
+               -DLUA_INCLUDE_DIR="$(lua_get_include_dir)"
+               -DLUA_LIBRARY="$(lua_get_shared_lib)"
+       )
+
+       [[ ${PV} != *9999* ]] && mycmakeargs+=( -DOVERRIDE_VERSION="v${PV}" )
+
+       cmake_src_configure
+}
+
+src_test() {
+       # awesome's test suite starts Xvfb by itself, no need for virtualx 
eclass
+       HEADLESS=1 cmake_build check -j1
+}
+
+src_install() {
+       cmake_src_install
+       rm "${ED}"/usr/share/doc/${PF}/LICENSE || die
+
+       pax-mark m "${ED}"/usr/bin/awesome
+
+       exeinto /etc/X11/Sessions
+       newexe "${FILESDIR}"/${PN}-session ${PN}
+
+       # GNOME-based awesome
+       if use gnome; then
+               # GNOME session
+               insinto /usr/share/gnome-session/sessions
+               newins "${FILESDIR}"/${PN}-gnome-3.session ${PN}-gnome.session
+
+               # Application launcher
+               domenu "${FILESDIR}"/${PN}-gnome.desktop
+
+               # X Session
+               insinto /usr/share/xsessions
+               doins "${FILESDIR}"/${PN}-gnome-xsession.desktop
+       fi
+
+       # use html subdir
+       if use doc; then
+               mv "${ED}"/usr/share/doc/${PF}/{doc,html} || die
+       fi
+}
+
+pkg_postinst() {
+       # bug #447308
+       if use gnome; then
+               elog "You have enabled the gnome USE flag."
+               elog "Please note that quitting awesome won't kill your gnome 
session."
+               elog "To really quit the session, you should bind your quit key"
+               elog "to the following command:"
+               elog "  gnome-session-quit --logout"
+               elog "For more info visit"
+               elog "  https://bugs.gentoo.org/show_bug.cgi?id=447308";
+       fi
+}

diff --git a/x11-wm/awesome/files/awesome-4.3-fix_cmake4.patch 
b/x11-wm/awesome/files/awesome-4.3-fix_cmake4.patch
new file mode 100644
index 000000000000..c0b8e5955e88
--- /dev/null
+++ b/x11-wm/awesome/files/awesome-4.3-fix_cmake4.patch
@@ -0,0 +1,45 @@
+upstream is only 3.5 w/ https://github.com/awesomeWM/awesome/pull/4012.patch
+see https://bugs.gentoo.org/953942
+fix compat for cmake-4 and update to 3.10
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-cmake_minimum_required(VERSION 3.0.0)
++cmake_minimum_required(VERSION 3.10)
+ project(awesome C)
+ 
+ # Require an out-of-source build. We generate an awesomerc.lua in the build 
dir
+--- a/tests/examples/CMakeLists.txt
++++ b/tests/examples/CMakeLists.txt
+@@ -14,7 +14,7 @@ if(NOT DEFINED PROJECT_NAME)
+     project(awesome-tests-examples NONE)
+ endif()
+ 
+-cmake_minimum_required(VERSION 3.0.0)
++cmake_minimum_required(VERSION 3.10)
+ 
+ # Get and update the LUA_PATH so the scripts can be executed without awesome.
+ execute_process(COMMAND ${LUA_EXECUTABLE} -e "p = package.path:gsub(';', 
'\\\\;'); io.stdout:write(p)"
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -17,10 +17,6 @@ endif()
+ 
+ set(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS  TRUE)
+ 
+-if(COMMAND cmake_policy)
+-    cmake_policy(VERSION 2.6)
+-endif()
+-
+ set(SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
+ set(BUILD_DIR ${CMAKE_CURRENT_BINARY_DIR})
+ 
+--- a/awesomeConfig.cmake
++++ b/awesomeConfig.cmake
+@@ -357,6 +357,7 @@ add_custom_target(lgi-check-run ALL
+ add_custom_target(setup_directories DEPENDS lgi-check-run)
+ 
+ add_custom_command(TARGET setup_directories
++      POST_BUILD
+         COMMAND ${CMAKE_COMMAND} -E make_directory ${BUILD_DIR}/script_files/
+         COMMAND ${CMAKE_COMMAND} -E make_directory ${BUILD_DIR}/docs/common/
+         COMMAND ${CMAKE_COMMAND} -E make_directory ${BUILD_DIR}/doc/images/

Reply via email to