On 12/22/23 22:25, Ross Burton wrote:
CAUTION: This email comes from a non Wind River email account!
Do not click links or open attachments unless you recognize the sender and know 
the content is safe.

These patches were rejected by upstream:

http://lists.schmorp.de/pipermail/rxvt-unicode/2023q4/002673.html

Will you be sending a revised iteration?
What upstream said make sense, the patch is not proper for upstream, maybe this patch can be an oe specific patch.


Ideally, maybe we should use pkg_postinst_ontarget, use target tic to gennerate the terminfo, but then we need to install

source dir $(srcdir)/etc/rxvt-unicode.terminfo in pkg rxvt-unicode, but actually these source should not be there. and another

issue maybe met with this solution is if the rootfs is read-only,  the terminfo maybe cannot be installed successfully.



For this patch, it should works well, since we set the native tic output to $(DESTDIR)$(datadir)/terminfo, and target tic also set terminfo to $(datadir)/terminfo, refer [1]. But it will have a small risk that if

ncurse changed the --with-terminfo-dir, but we don't update this patch's output path, it maybe have problem.


Any suggestion about  which solution is better?

[1] https://git.openembedded.org/openembedded-core/tree/meta/recipes-core/ncurses/ncurses.inc#n81

Thanks
Changqing

Ross

On 22 Dec 2023, at 08:38, Changqing Li via lists.openembedded.org 
<[email protected]> wrote:

From: Changqing Li <[email protected]>

* tic is from ncurses-native, and set TERMINFO as
${RECIPE_SYSROOT_NATIVE}/${datadir}/terminfo of ncurses-native, so the
rxvt-unicode terminfo will be wrongly installed in there.  set the
outdir explicitly to install them to correct dir.

* Add ncurses-native as DEPENDS to fix reproducible build issue

Signed-off-by: Changqing Li <[email protected]>
---
.../rxvt-unicode/rxvt-unicode.inc             |  9 ++--
...ile.in-set-outdir-for-TIC-explicitly.patch | 44 +++++++++++++++++++
2 files changed, 49 insertions(+), 4 deletions(-)
create mode 100644 
meta/recipes-sato/rxvt-unicode/rxvt-unicode/0001-Makefile.in-set-outdir-for-TIC-explicitly.patch

diff --git a/meta/recipes-sato/rxvt-unicode/rxvt-unicode.inc 
b/meta/recipes-sato/rxvt-unicode/rxvt-unicode.inc
index e7d520ebef..b8ef0d75e5 100644
--- a/meta/recipes-sato/rxvt-unicode/rxvt-unicode.inc
+++ b/meta/recipes-sato/rxvt-unicode/rxvt-unicode.inc
@@ -6,13 +6,14 @@ terminal emulator rxvt, modified to store text in Unicode \
output. It also supports mixing multiple fonts at the \
same time, including Xft fonts."
HOMEPAGE = "https://rxvt.org/";
-DEPENDS = "virtual/libx11 libxt libxft gdk-pixbuf libxmu libptytty"
+DEPENDS = "virtual/libx11 libxt libxft gdk-pixbuf libxmu libptytty 
ncurses-native"

SRC_URI = "http://dist.schmorp.de/rxvt-unicode/Attic/rxvt-unicode-${PV}.tar.bz2 
\
   file://xwc.patch \
   file://rxvt.desktop \
-   file://rxvt.png"
-
+   file://rxvt.png \
+   file://0001-Makefile.in-set-outdir-for-TIC-explicitly.patch \
+"
inherit autotools pkgconfig update-alternatives

PROVIDES = "virtual/x-terminal-emulator"
@@ -55,4 +56,4 @@ do_install:append () {
install -m 0644 ${WORKDIR}/rxvt.desktop ${D}/${datadir}/applications
}

-FILES:${PN} += "${datadir}/applications/rxvt.desktop 
${datadir}/pixmaps/rxvt.png"
+FILES:${PN} += "${datadir}/applications/rxvt.desktop ${datadir}/pixmaps/rxvt.png 
${datadir}/terminfo"
diff --git 
a/meta/recipes-sato/rxvt-unicode/rxvt-unicode/0001-Makefile.in-set-outdir-for-TIC-explicitly.patch
 
b/meta/recipes-sato/rxvt-unicode/rxvt-unicode/0001-Makefile.in-set-outdir-for-TIC-explicitly.patch
new file mode 100644
index 0000000000..50d8d2d9e0
--- /dev/null
+++ 
b/meta/recipes-sato/rxvt-unicode/rxvt-unicode/0001-Makefile.in-set-outdir-for-TIC-explicitly.patch
@@ -0,0 +1,44 @@
+From c88c94e629b6aad1609d13f355c52e5a3acc8d2a Mon Sep 17 00:00:00 2001
+From: Changqing Li <[email protected]>
+Date: Thu, 14 Dec 2023 17:33:15 +0800
+Subject: [PATCH] Makefile.in: set outdir for TIC explicitly
+
+When doing cross-compile, native tic's TERMINFO usually
+set as a native dir, which could not the target install dir,
+which will cause rxvt-unicode terminfo will be wrongly installed.
+set the outdir explicitly to install them to correct dir.
+
+Upstream-Status: Submitted [ https://github.com/exg/rxvt-unicode/pull/4 ]
+
+Signed-off-by: Changqing Li <[email protected]>
+---
+ doc/Makefile.in | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/doc/Makefile.in b/doc/Makefile.in
+index e3d1fe8b..3477551a 100644
+--- a/doc/Makefile.in
++++ b/doc/Makefile.in
+@@ -69,7 +69,7 @@ all:
+ sed $(SEDREPLACE) <$< | podselect -section "RXVT-UNICODE\/URXVT FREQUENTLY ASKED 
QUESTIONS" | pod2text >$@
+
+ $(srcdir)/etc/rxvt-unicode.termcap: $(srcdir)/etc/rxvt-unicode.terminfo
+- tic -C $< >$@
++ @TIC@ -C $< >$@
+
+ tags allbin:
+
+@@ -100,8 +100,8 @@ install: all
+ $(INSTALL_DATA) rxvtd.1.man   $(DESTDIR)$(man1dir)/$(RXVTNAME)d.$(man1ext)
+ $(INSTALL_DATA) rxvt.7.man    $(DESTDIR)$(man7dir)/$(RXVTNAME).$(man7ext)
+ $(INSTALL_DATA) rclock.1.man  $(DESTDIR)$(man1dir)/urclock.$(man1ext)
+- @TIC@ -x $(srcdir)/etc/rxvt-unicode.terminfo || \
+-           @TIC@ $(srcdir)/etc/rxvt-unicode.terminfo
++ @TIC@ -x $(srcdir)/etc/rxvt-unicode.terminfo -o 
$(DESTDIR)$(datadir)/terminfo || \
++           @TIC@ $(srcdir)/etc/rxvt-unicode.terminfo -o 
$(DESTDIR)$(datadir)/terminfo
+
+ distdepend: alldoc
+
+--
+2.25.1
+
--
2.25.1




-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#192909): 
https://lists.openembedded.org/g/openembedded-core/message/192909
Mute This Topic: https://lists.openembedded.org/mt/103315499/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to