| Message ID | 20261102103459.3625067-2-sean@geanix.com |
|---|---|
| State | Under Review |
| Headers | show |
| Series | [meta-oe,1/2] zsh: make gdbm a PACKAGECONFIG | expand |
On Mon, Nov 2, 2026 at 2:35 AM Sean Nyekjaer via openembedded-devel <sean= geanix.com@lists.openembedded.org> wrote: > libpcre2 was always in DEPENDS. Move it to a PACKAGECONFIG, enabled > by default, so it can be dropped. > > Signed-off-by: Sean Nyekjaer <sean@geanix.com> > --- > meta-oe/recipes-shells/zsh/zsh_5.9.2.bb | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/meta-oe/recipes-shells/zsh/zsh_5.9.2.bb > b/meta-oe/recipes-shells/zsh/zsh_5.9.2.bb > index 47b9bfc18f..16a769612c 100644 > --- a/meta-oe/recipes-shells/zsh/zsh_5.9.2.bb > +++ b/meta-oe/recipes-shells/zsh/zsh_5.9.2.bb > @@ -8,7 +8,7 @@ SECTION = "base/shell" > LICENSE = "LicenseRef-zsh" > LIC_FILES_CHKSUM = "file://LICENCE;md5=1a4c4cda3e8096d2fd483ff2f4514fec" > > -DEPENDS = "ncurses bison-native libcap libpcre2 groff-native" > +DEPENDS = "ncurses bison-native libcap groff-native" > > SRC_URI = "${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}/${PV}/${BP}.tar.xz" > SRC_URI[sha256sum] = > "36fa734374b44783582cec09bcd67822e2f992c779ec1624ab5596df078d2f81" > @@ -44,7 +44,9 @@ ALTERNATIVE_LINK_NAME[sh] = "${base_bindir}/sh" > ALTERNATIVE_TARGET[sh] = "${base_bindir}/${BPN}" > ALTERNATIVE_PRIORITY = "90" > > +PACKAGECONFIG ??= "pcre" > PACKAGECONFIG[gdbm] = "--enable-gdbm,--disable-gdbm,gdbm" > +PACKAGECONFIG[pcre] = "--enable-pcre,--disable-pcre,libpcre2" > zsh/pcre module is link=dynamic only and the recipe uses --disable-dynamic, so the module is not built as such. Making pcre a PACKAGECONFIG enabled by default, started passing --enable-pcre, which zsh never got before (its default is off). configure then runs pcre2-config, but libpcre2 inherits binconfig-disabled, so `pcre2-config --cflags` returns bogus stuff. One can fix that by using pkgconfig or writing a small wrapper for pcre2-config using pkgconfig but servees no point if dynamic modules are disabled. Other patch to turn gdbm into a packageconfig also has same problem. > # Needed for manpages.bbclass, but they're always installed > PACKAGECONFIG[manpages] = "" > > -- > 2.55.0 > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#131748): > https://lists.openembedded.org/g/openembedded-devel/message/131748 > Mute This Topic: https://lists.openembedded.org/mt/122055384/1997914 > Group Owner: openembedded-devel+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [ > raj.khem@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- > >
> On 3 Nov 2026, at 04.15, Khem Raj <raj.khem@gmail.com> wrote: > > > > On Mon, Nov 2, 2026 at 2:35 AM Sean Nyekjaer via openembedded-devel <sean=geanix.com@lists.openembedded.org> wrote: > libpcre2 was always in DEPENDS. Move it to a PACKAGECONFIG, enabled > by default, so it can be dropped. > > Signed-off-by: Sean Nyekjaer <sean@geanix.com> > --- > meta-oe/recipes-shells/zsh/zsh_5.9.2.bb | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/meta-oe/recipes-shells/zsh/zsh_5.9.2.bb b/meta-oe/recipes-shells/zsh/zsh_5.9.2.bb > index 47b9bfc18f..16a769612c 100644 > --- a/meta-oe/recipes-shells/zsh/zsh_5.9.2.bb > +++ b/meta-oe/recipes-shells/zsh/zsh_5.9.2.bb > @@ -8,7 +8,7 @@ SECTION = "base/shell" > LICENSE = "LicenseRef-zsh" > LIC_FILES_CHKSUM = "file://LICENCE;md5=1a4c4cda3e8096d2fd483ff2f4514fec" > > -DEPENDS = "ncurses bison-native libcap libpcre2 groff-native" > +DEPENDS = "ncurses bison-native libcap groff-native" > > SRC_URI = "${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}/${PV}/${BP}.tar.xz" > SRC_URI[sha256sum] = "36fa734374b44783582cec09bcd67822e2f992c779ec1624ab5596df078d2f81" > @@ -44,7 +44,9 @@ ALTERNATIVE_LINK_NAME[sh] = "${base_bindir}/sh" > ALTERNATIVE_TARGET[sh] = "${base_bindir}/${BPN}" > ALTERNATIVE_PRIORITY = "90" > > +PACKAGECONFIG ??= "pcre" > PACKAGECONFIG[gdbm] = "--enable-gdbm,--disable-gdbm,gdbm" > +PACKAGECONFIG[pcre] = "--enable-pcre,--disable-pcre,libpcre2" > > zsh/pcre module is link=dynamic only and the recipe uses --disable-dynamic, > so the module is not built as such. > > Making pcre a PACKAGECONFIG enabled by default, started passing > --enable-pcre, which zsh never got before (its default is off). configure > then runs pcre2-config, but libpcre2 inherits binconfig-disabled, so > `pcre2-config --cflags` returns bogus stuff. One can fix that by using pkgconfig > or writing a small wrapper for pcre2-config using pkgconfig but servees no > point if dynamic modules are disabled. > > Other patch to turn gdbm into a packageconfig also has same problem. What would be your solution here? Would you prefer the pkgconfig solution? Should we remove is "—disable-dynamic” if one is enabling pcre2? gdbm is off by default. So should we remove it from DEPENDS and remove “—disable-gdbm” ? /Sean > # Needed for manpages.bbclass, but they're always installed > PACKAGECONFIG[manpages] = "" > > -- > 2.55.0 > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#131748): https://lists.openembedded.org/g/openembedded-devel/message/131748 > Mute This Topic: https://lists.openembedded.org/mt/122055384/1997914 > Group Owner: openembedded-devel+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [raj.khem@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- >
On Tue, Nov 3, 2026 at 12:49 AM Sean Nyekjaer <sean@geanix.com> wrote: > > > > On 3 Nov 2026, at 04.15, Khem Raj <raj.khem@gmail.com> wrote: > > > > > > > > On Mon, Nov 2, 2026 at 2:35 AM Sean Nyekjaer via openembedded-devel > <sean=geanix.com@lists.openembedded.org> wrote: > > libpcre2 was always in DEPENDS. Move it to a PACKAGECONFIG, enabled > > by default, so it can be dropped. > > > > Signed-off-by: Sean Nyekjaer <sean@geanix.com> > > --- > > meta-oe/recipes-shells/zsh/zsh_5.9.2.bb | 4 +++- > > 1 file changed, 3 insertions(+), 1 deletion(-) > > > > diff --git a/meta-oe/recipes-shells/zsh/zsh_5.9.2.bb > b/meta-oe/recipes-shells/zsh/zsh_5.9.2.bb > > index 47b9bfc18f..16a769612c 100644 > > --- a/meta-oe/recipes-shells/zsh/zsh_5.9.2.bb > > +++ b/meta-oe/recipes-shells/zsh/zsh_5.9.2.bb > > @@ -8,7 +8,7 @@ SECTION = "base/shell" > > LICENSE = "LicenseRef-zsh" > > LIC_FILES_CHKSUM = "file://LICENCE;md5=1a4c4cda3e8096d2fd483ff2f4514fec" > > > > -DEPENDS = "ncurses bison-native libcap libpcre2 groff-native" > > +DEPENDS = "ncurses bison-native libcap groff-native" > > > > SRC_URI = > "${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}/${PV}/${BP}.tar.xz" > > SRC_URI[sha256sum] = > "36fa734374b44783582cec09bcd67822e2f992c779ec1624ab5596df078d2f81" > > @@ -44,7 +44,9 @@ ALTERNATIVE_LINK_NAME[sh] = "${base_bindir}/sh" > > ALTERNATIVE_TARGET[sh] = "${base_bindir}/${BPN}" > > ALTERNATIVE_PRIORITY = "90" > > > > +PACKAGECONFIG ??= "pcre" > > PACKAGECONFIG[gdbm] = "--enable-gdbm,--disable-gdbm,gdbm" > > +PACKAGECONFIG[pcre] = "--enable-pcre,--disable-pcre,libpcre2" > > > > zsh/pcre module is link=dynamic only and the recipe uses > --disable-dynamic, > > so the module is not built as such. > > > > Making pcre a PACKAGECONFIG enabled by default, started passing > > --enable-pcre, which zsh never got before (its default is off). configure > > then runs pcre2-config, but libpcre2 inherits binconfig-disabled, so > > `pcre2-config --cflags` returns bogus stuff. One can fix that by using > pkgconfig > > or writing a small wrapper for pcre2-config using pkgconfig but servees > no > > point if dynamic modules are disabled. > > > > Other patch to turn gdbm into a packageconfig also has same problem. > > What would be your solution here? Would you prefer the pkgconfig solution? > Should we remove is "—disable-dynamic” if one is enabling pcre2? > > yes pkfconfig is preferred way to tool the knob and perhaps enable dynamic modules but it would be good to know size/perf impact of doing it. > gdbm is off by default. So should we remove it from DEPENDS and remove > “—disable-gdbm” ? > > /Sean > > > # Needed for manpages.bbclass, but they're always installed > > PACKAGECONFIG[manpages] = "" > > > > -- > > 2.55.0 > > > > > > -=-=-=-=-=-=-=-=-=-=-=- > > Links: You receive all messages sent to this group. > > View/Reply Online (#131748): > https://lists.openembedded.org/g/openembedded-devel/message/131748 > > Mute This Topic: https://lists.openembedded.org/mt/122055384/1997914 > > Group Owner: openembedded-devel+owner@lists.openembedded.org > > Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [ > raj.khem@gmail.com] > > -=-=-=-=-=-=-=-=-=-=-=- > > > > > >
diff --git a/meta-oe/recipes-shells/zsh/zsh_5.9.2.bb b/meta-oe/recipes-shells/zsh/zsh_5.9.2.bb index 47b9bfc18f..16a769612c 100644 --- a/meta-oe/recipes-shells/zsh/zsh_5.9.2.bb +++ b/meta-oe/recipes-shells/zsh/zsh_5.9.2.bb @@ -8,7 +8,7 @@ SECTION = "base/shell" LICENSE = "LicenseRef-zsh" LIC_FILES_CHKSUM = "file://LICENCE;md5=1a4c4cda3e8096d2fd483ff2f4514fec" -DEPENDS = "ncurses bison-native libcap libpcre2 groff-native" +DEPENDS = "ncurses bison-native libcap groff-native" SRC_URI = "${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}/${PV}/${BP}.tar.xz" SRC_URI[sha256sum] = "36fa734374b44783582cec09bcd67822e2f992c779ec1624ab5596df078d2f81" @@ -44,7 +44,9 @@ ALTERNATIVE_LINK_NAME[sh] = "${base_bindir}/sh" ALTERNATIVE_TARGET[sh] = "${base_bindir}/${BPN}" ALTERNATIVE_PRIORITY = "90" +PACKAGECONFIG ??= "pcre" PACKAGECONFIG[gdbm] = "--enable-gdbm,--disable-gdbm,gdbm" +PACKAGECONFIG[pcre] = "--enable-pcre,--disable-pcre,libpcre2" # Needed for manpages.bbclass, but they're always installed PACKAGECONFIG[manpages] = ""
libpcre2 was always in DEPENDS. Move it to a PACKAGECONFIG, enabled by default, so it can be dropped. Signed-off-by: Sean Nyekjaer <sean@geanix.com> --- meta-oe/recipes-shells/zsh/zsh_5.9.2.bb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)