gui-wm/tinywl: add 0.17.4

Closes: https://bugs.gentoo.org/934030
Signed-off-by: Leonardo Hernández Hernández <leohdz172@proton.me>
Closes: https://github.com/gentoo/gentoo/pull/37326
Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
Leonardo Hernández Hernández
2024-06-27 22:38:07 -06:00
committed by Sam James
parent 517b5b3386
commit 7ea1ebac1e
3 changed files with 138 additions and 0 deletions

View File

@@ -1 +1,2 @@
DIST wlroots-0.17.3.tar.gz 608292 BLAKE2B 7caab3c3a58595d3a745c0b20a5db2193c54931cdd7bc1b9de11c151af82503a03a6a3166a86f42486cc69c6ac18ca2a5596809a5c5e6d7b44c9845f509c1093 SHA512 b88747daba304db6dc302acdebb8764e719d84134118963c019d5f0d0d38552e0ffd2a50bf560b3b84549c5a0f2d11a6187ac8ddcd9faa28c5b42f86c585b555
DIST wlroots-0.17.4.tar.gz 609179 BLAKE2B dc5a7749533ab54631d4a26be554b86e5b08b2472cf8f22ccebddb319d571cbd98a5c56e64e7bc762a5918d4272eb6b4261050288f3053c18c824c6a9c32b96b SHA512 35803df9fe68cadb0b9b5e522863535407ba2354ed1ca8f824a9c40b64698a97c579fec0afeb444b05d429adc1e3dfc45b20c3a1b7a2004e4f5a10d2305c9116

View File

@@ -0,0 +1,84 @@
https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4710
From: =?UTF-8?q?Leonardo=20Hern=C3=A1ndez=20Hern=C3=A1ndez?=
<leohdz172@proton.me>
Date: Wed, 12 Jun 2024 10:01:52 -0600
Subject: [PATCH 1/2] tinywl: split compilation into two steps
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
While we are at it also respect LDFLAGS and optimize pkg-config usage
Signed-off-by: Leonardo Hernández Hernández <leohdz172@proton.me>
--- a/tinywl/Makefile
+++ b/tinywl/Makefile
@@ -1,9 +1,9 @@
WAYLAND_PROTOCOLS=$(shell pkg-config --variable=pkgdatadir wayland-protocols)
WAYLAND_SCANNER=$(shell pkg-config --variable=wayland_scanner wayland-scanner)
-LIBS=\
- $(shell pkg-config --cflags --libs "wlroots >= 0.17.0") \
- $(shell pkg-config --cflags --libs wayland-server) \
- $(shell pkg-config --cflags --libs xkbcommon)
+
+PKGS="wlroots" wayland-server xkbcommon
+CFLAGS+=$(shell pkg-config --cflags $(PKGS))
+LIBS=$(shell pkg-config --libs $(PKGS))
# wayland-scanner is a tool which generates C headers and rigging for Wayland
# protocols, which are specified in XML. wlroots requires you to rig these up
@@ -12,15 +12,13 @@ xdg-shell-protocol.h:
$(WAYLAND_SCANNER) server-header \
$(WAYLAND_PROTOCOLS)/stable/xdg-shell/xdg-shell.xml $@
-tinywl: tinywl.c xdg-shell-protocol.h
- $(CC) $(CFLAGS) \
- -g -Werror -I. \
- -DWLR_USE_UNSTABLE \
- -o $@ $< \
- $(LIBS)
+tinywl.o: tinywl.c xdg-shell-protocol.h
+ $(CC) -g -Werror $(CFLAGS) -I. -DWLR_USE_UNSTABLE -o $@ -c $<
+tinywl: tinywl.o
+ $(CC) $< -g -Werror $(CFLAGS) $(LDFLAGS) $(LIBS) -o $@
clean:
- rm -f tinywl xdg-shell-protocol.h xdg-shell-protocol.c
+ rm -f tinywl tinywl.o xdg-shell-protocol.h
.DEFAULT_GOAL=tinywl
.PHONY: clean
--
2.45.2
From 29451c3dd28ffd52eb3dcf20e47399a26ecafb3c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Leonardo=20Hern=C3=A1ndez=20Hern=C3=A1ndez?=
<leohdz172@proton.me>
Date: Wed, 12 Jun 2024 17:58:54 -0600
Subject: [PATCH 2/2] tinywl: allow specify pkg-config binary
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Leonardo Hernández Hernández <leohdz172@proton.me>
--- a/tinywl/Makefile
+++ b/tinywl/Makefile
@@ -1,9 +1,10 @@
-WAYLAND_PROTOCOLS=$(shell pkg-config --variable=pkgdatadir wayland-protocols)
-WAYLAND_SCANNER=$(shell pkg-config --variable=wayland_scanner wayland-scanner)
+PKG_CONFIG?=pkg-config
+WAYLAND_PROTOCOLS=$(shell $(PKG_CONFIG) --variable=pkgdatadir wayland-protocols)
+WAYLAND_SCANNER=$(shell $(PKG_CONFIG) --variable=wayland_scanner wayland-scanner)
-PKGS="wlroots" wayland-server xkbcommon
-CFLAGS+=$(shell pkg-config --cflags $(PKGS))
-LIBS=$(shell pkg-config --libs $(PKGS))
+PKGS=wlroots wayland-server xkbcommon
+CFLAGS+=$(shell $(PKG_CONFIG) --cflags $(PKGS))
+LIBS=$(shell $(PKG_CONFIG) --libs $(PKGS))
# wayland-scanner is a tool which generates C headers and rigging for Wayland
# protocols, which are specified in XML. wlroots requires you to rig these up
--
2.45.2

View File

@@ -0,0 +1,53 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit toolchain-funcs
DESCRIPTION="\"minimum viable product\" Wayland compositor based on wlroots"
HOMEPAGE="https://gitlab.freedesktop.org/wlroots/wlroots"
if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://gitlab.freedesktop.org/wlroots/wlroots.git"
inherit git-r3
else
SRC_URI="https://gitlab.freedesktop.org/wlroots/wlroots/-/releases/${PV}/downloads/wlroots-${PV}.tar.gz"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
S="${WORKDIR}/wlroots-${PV}"
fi
LICENSE="CC0-1.0"
SLOT="0"
DEPEND="
dev-libs/wayland
x11-libs/libxkbcommon
=gui-libs/wlroots-$(ver_cut 1-2)*:=
"
RDEPEND="
${DEPEND}
!gui-libs/wlroots[tinywl(-)]
"
BDEPEND="
dev-libs/wayland-protocols
dev-util/wayland-scanner
virtual/pkgconfig
"
PATCHES=( "${FILESDIR}/${P}"-improve-makefile.patch )
src_prepare() {
default
sed -i -e "s/-Werror //" tinywl/Makefile || die
}
src_compile() {
local -x CFLAGS="${CFLAGS} ${CPPFLAGS}"
tc-export CC PKG_CONFIG
emake -C tinywl
}
src_install() {
dodoc tinywl/README.md
dobin tinywl/tinywl
}