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/
