* [PATCH 1/2] gcompat: Add recipe
@ 2021-06-12 19:43 Khem Raj
2021-06-12 19:43 ` [PATCH 2/2] musl: Do not package glibc loader Khem Raj
2021-06-12 20:23 ` [OE-core] [PATCH 1/2] gcompat: Add recipe Alexander Kanavin
0 siblings, 2 replies; 4+ messages in thread
From: Khem Raj @ 2021-06-12 19:43 UTC (permalink / raw)
To: openembedded-core; +Cc: Khem Raj, Andrea Adami
This is a compat library which helps running pre-compiled binaries which were
compiled for glibc but needs to run on musl systems, this is quite
common case where pre-existing binaries are supplied and can not be
recompiled immediately
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Andrea Adami <andrea.adami@gmail.com>
---
meta/conf/distro/include/maintainers.inc | 1 +
meta/recipes-core/musl/gcompat_git.bb | 42 ++++++++++++++++++++++++
2 files changed, 43 insertions(+)
create mode 100644 meta/recipes-core/musl/gcompat_git.bb
diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc
index 71943ffe26..e59f01d66a 100644
--- a/meta/conf/distro/include/maintainers.inc
+++ b/meta/conf/distro/include/maintainers.inc
@@ -229,6 +229,7 @@ RECIPE_MAINTAINER_pn-gobject-introspection = "Alexander Kanavin <alex.kanavin@gm
RECIPE_MAINTAINER_pn-gperf = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER_pn-gpgme = "Hongxu Jia <hongxu.jia@windriver.com>"
RECIPE_MAINTAINER_pn-gptfdisk = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER_pn-gcompat = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER_pn-grep = "Denys Dmytriyenko <denis@denix.org>"
RECIPE_MAINTAINER_pn-groff = "Hongxu Jia <hongxu.jia@windriver.com>"
RECIPE_MAINTAINER_pn-grub = "Anuj Mittal <anuj.mittal@intel.com>"
diff --git a/meta/recipes-core/musl/gcompat_git.bb b/meta/recipes-core/musl/gcompat_git.bb
new file mode 100644
index 0000000000..6792c0be70
--- /dev/null
+++ b/meta/recipes-core/musl/gcompat_git.bb
@@ -0,0 +1,42 @@
+# Copyright (C) 2021 Khem Raj <raj.khem@gmail.com>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+SUMMARY = "A library which provides glibc-compatible APIs for use on musl libc systems"
+HOMEPAGE = "https://git.adelielinux.org/adelie/gcompat"
+
+LICENSE = "NCSA"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=eb33ef4af05a9c7602843afb7adfe792"
+
+SRC_URI = "git://git.adelielinux.org/adelie/gcompat.git;protocol=https;branch=current"
+
+PV = "1.0.0+1.1+git${SRCPV}"
+SRCREV = "af5a49e489fdc04b9cf02547650d7aeaccd43793"
+
+S = "${WORKDIR}/git"
+
+inherit pkgconfig linuxloader
+
+DEPENDS += "musl-obstack"
+
+GLIBC_LDSO = "${@get_glibc_loader(d)}"
+MUSL_LDSO = "${@get_musl_loader(d)}"
+
+EXTRA_OEMAKE = "LINKER_PATH=${MUSL_LDSO} LOADER_NAME=`basename ${@get_glibc_loader(d)}`"
+
+do_configure () {
+ :
+}
+
+do_compile () {
+ oe_runmake
+}
+
+do_install () {
+ oe_runmake install 'DESTDIR=${D}'
+}
+#
+# We will skip parsing for non-musl systems
+#
+COMPATIBLE_HOST = ".*-musl.*"
+
+UPSTREAM_CHECK_COMMITS = "1"
--
2.32.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH 2/2] musl: Do not package glibc loader
2021-06-12 19:43 [PATCH 1/2] gcompat: Add recipe Khem Raj
@ 2021-06-12 19:43 ` Khem Raj
2021-06-12 20:23 ` [OE-core] [PATCH 1/2] gcompat: Add recipe Alexander Kanavin
1 sibling, 0 replies; 4+ messages in thread
From: Khem Raj @ 2021-06-12 19:43 UTC (permalink / raw)
To: openembedded-core; +Cc: Khem Raj
This was a ad-hoc solution which did not really work in all cases, now
gcompat is provided to deal with glibc based prebuilts, therefore there
is no need to provide this package
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
meta/recipes-core/musl/gcompat_git.bb | 2 ++
meta/recipes-core/musl/musl_git.bb | 4 ----
2 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/meta/recipes-core/musl/gcompat_git.bb b/meta/recipes-core/musl/gcompat_git.bb
index 6792c0be70..e1ae052c44 100644
--- a/meta/recipes-core/musl/gcompat_git.bb
+++ b/meta/recipes-core/musl/gcompat_git.bb
@@ -34,6 +34,8 @@ do_compile () {
do_install () {
oe_runmake install 'DESTDIR=${D}'
}
+
+RPROVIDES_${PN} += "musl-glibc-compat"
#
# We will skip parsing for non-musl systems
#
diff --git a/meta/recipes-core/musl/musl_git.bb b/meta/recipes-core/musl/musl_git.bb
index 795b888bb3..6569d1b37b 100644
--- a/meta/recipes-core/musl/musl_git.bb
+++ b/meta/recipes-core/musl/musl_git.bb
@@ -68,13 +68,9 @@ do_install() {
echo "${libdir}" >> ${D}${sysconfdir}/ld-musl-${MUSL_LDSO_ARCH}.path
rm -f ${D}${bindir}/ldd ${D}${GLIBC_LDSO}
lnr ${D}${libdir}/libc.so ${D}${bindir}/ldd
- lnr ${D}${libdir}/libc.so ${D}${GLIBC_LDSO}
}
-PACKAGES =+ "${PN}-glibc-compat"
-
FILES_${PN} += "/lib/ld-musl-${MUSL_LDSO_ARCH}.so.1 ${sysconfdir}/ld-musl-${MUSL_LDSO_ARCH}.path"
-FILES_${PN}-glibc-compat += "${GLIBC_LDSO}"
FILES_${PN}-staticdev = "${libdir}/libc.a"
FILES_${PN}-dev =+ "${libdir}/libcrypt.a ${libdir}/libdl.a ${libdir}/libm.a \
${libdir}/libpthread.a ${libdir}/libresolv.a \
--
2.32.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [OE-core] [PATCH 1/2] gcompat: Add recipe
2021-06-12 19:43 [PATCH 1/2] gcompat: Add recipe Khem Raj
2021-06-12 19:43 ` [PATCH 2/2] musl: Do not package glibc loader Khem Raj
@ 2021-06-12 20:23 ` Alexander Kanavin
2021-06-12 22:09 ` Khem Raj
1 sibling, 1 reply; 4+ messages in thread
From: Alexander Kanavin @ 2021-06-12 20:23 UTC (permalink / raw)
To: Khem Raj; +Cc: OE-core, Andrea Adami
[-- Attachment #1: Type: text/plain, Size: 3131 bytes --]
Please ensure that PV is set so that upstream version check works (I'm not
sure if it does, looking at it):
devtool check-upgrade-status gcompat
Alex
On Sat, 12 Jun 2021 at 21:43, Khem Raj <raj.khem@gmail.com> wrote:
> This is a compat library which helps running pre-compiled binaries which
> were
> compiled for glibc but needs to run on musl systems, this is quite
> common case where pre-existing binaries are supplied and can not be
> recompiled immediately
>
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> Cc: Andrea Adami <andrea.adami@gmail.com>
> ---
> meta/conf/distro/include/maintainers.inc | 1 +
> meta/recipes-core/musl/gcompat_git.bb | 42 ++++++++++++++++++++++++
> 2 files changed, 43 insertions(+)
> create mode 100644 meta/recipes-core/musl/gcompat_git.bb
>
> diff --git a/meta/conf/distro/include/maintainers.inc
> b/meta/conf/distro/include/maintainers.inc
> index 71943ffe26..e59f01d66a 100644
> --- a/meta/conf/distro/include/maintainers.inc
> +++ b/meta/conf/distro/include/maintainers.inc
> @@ -229,6 +229,7 @@ RECIPE_MAINTAINER_pn-gobject-introspection =
> "Alexander Kanavin <alex.kanavin@gm
> RECIPE_MAINTAINER_pn-gperf = "Alexander Kanavin <alex.kanavin@gmail.com>"
> RECIPE_MAINTAINER_pn-gpgme = "Hongxu Jia <hongxu.jia@windriver.com>"
> RECIPE_MAINTAINER_pn-gptfdisk = "Alexander Kanavin <
> alex.kanavin@gmail.com>"
> +RECIPE_MAINTAINER_pn-gcompat = "Khem Raj <raj.khem@gmail.com>"
> RECIPE_MAINTAINER_pn-grep = "Denys Dmytriyenko <denis@denix.org>"
> RECIPE_MAINTAINER_pn-groff = "Hongxu Jia <hongxu.jia@windriver.com>"
> RECIPE_MAINTAINER_pn-grub = "Anuj Mittal <anuj.mittal@intel.com>"
> diff --git a/meta/recipes-core/musl/gcompat_git.bb
> b/meta/recipes-core/musl/gcompat_git.bb
> new file mode 100644
> index 0000000000..6792c0be70
> --- /dev/null
> +++ b/meta/recipes-core/musl/gcompat_git.bb
> @@ -0,0 +1,42 @@
> +# Copyright (C) 2021 Khem Raj <raj.khem@gmail.com>
> +# Released under the MIT license (see COPYING.MIT for the terms)
> +
> +SUMMARY = "A library which provides glibc-compatible APIs for use on musl
> libc systems"
> +HOMEPAGE = "https://git.adelielinux.org/adelie/gcompat"
> +
> +LICENSE = "NCSA"
> +LIC_FILES_CHKSUM = "file://LICENSE;md5=eb33ef4af05a9c7602843afb7adfe792"
> +
> +SRC_URI = "git://
> git.adelielinux.org/adelie/gcompat.git;protocol=https;branch=current"
> +
> +PV = "1.0.0+1.1+git${SRCPV}"
> +SRCREV = "af5a49e489fdc04b9cf02547650d7aeaccd43793"
> +
> +S = "${WORKDIR}/git"
> +
> +inherit pkgconfig linuxloader
> +
> +DEPENDS += "musl-obstack"
> +
> +GLIBC_LDSO = "${@get_glibc_loader(d)}"
> +MUSL_LDSO = "${@get_musl_loader(d)}"
> +
> +EXTRA_OEMAKE = "LINKER_PATH=${MUSL_LDSO} LOADER_NAME=`basename
> ${@get_glibc_loader(d)}`"
> +
> +do_configure () {
> + :
> +}
> +
> +do_compile () {
> + oe_runmake
> +}
> +
> +do_install () {
> + oe_runmake install 'DESTDIR=${D}'
> +}
> +#
> +# We will skip parsing for non-musl systems
> +#
> +COMPATIBLE_HOST = ".*-musl.*"
> +
> +UPSTREAM_CHECK_COMMITS = "1"
> --
> 2.32.0
>
>
>
>
>
[-- Attachment #2: Type: text/html, Size: 5068 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [OE-core] [PATCH 1/2] gcompat: Add recipe
2021-06-12 20:23 ` [OE-core] [PATCH 1/2] gcompat: Add recipe Alexander Kanavin
@ 2021-06-12 22:09 ` Khem Raj
0 siblings, 0 replies; 4+ messages in thread
From: Khem Raj @ 2021-06-12 22:09 UTC (permalink / raw)
To: Alexander Kanavin; +Cc: OE-core, Andrea Adami
On 6/12/21 1:23 PM, Alexander Kanavin wrote:
> Please ensure that PV is set so that upstream version check works (I'm
> not sure if it does, looking at it):
>
> devtool check-upgrade-status gcompat
its working fine, PV is set ( just below SRC_URI),
>
>
> Alex
>
> On Sat, 12 Jun 2021 at 21:43, Khem Raj <raj.khem@gmail.com
> <mailto:raj.khem@gmail.com>> wrote:
>
> This is a compat library which helps running pre-compiled binaries
> which were
> compiled for glibc but needs to run on musl systems, this is quite
> common case where pre-existing binaries are supplied and can not be
> recompiled immediately
>
> Signed-off-by: Khem Raj <raj.khem@gmail.com <mailto:raj.khem@gmail.com>>
> Cc: Andrea Adami <andrea.adami@gmail.com
> <mailto:andrea.adami@gmail.com>>
> ---
> meta/conf/distro/include/maintainers.inc | 1 +
> meta/recipes-core/musl/gcompat_git.bb <http://gcompat_git.bb> |
> 42 ++++++++++++++++++++++++
> 2 files changed, 43 insertions(+)
> create mode 100644 meta/recipes-core/musl/gcompat_git.bb
> <http://gcompat_git.bb>
>
> diff --git a/meta/conf/distro/include/maintainers.inc
> b/meta/conf/distro/include/maintainers.inc
> index 71943ffe26..e59f01d66a 100644
> --- a/meta/conf/distro/include/maintainers.inc
> +++ b/meta/conf/distro/include/maintainers.inc
> @@ -229,6 +229,7 @@ RECIPE_MAINTAINER_pn-gobject-introspection =
> "Alexander Kanavin <alex.kanavin@gm
> RECIPE_MAINTAINER_pn-gperf = "Alexander Kanavin
> <alex.kanavin@gmail.com <mailto:alex.kanavin@gmail.com>>"
> RECIPE_MAINTAINER_pn-gpgme = "Hongxu Jia <hongxu.jia@windriver.com
> <mailto:hongxu.jia@windriver.com>>"
> RECIPE_MAINTAINER_pn-gptfdisk = "Alexander Kanavin
> <alex.kanavin@gmail.com <mailto:alex.kanavin@gmail.com>>"
> +RECIPE_MAINTAINER_pn-gcompat = "Khem Raj <raj.khem@gmail.com
> <mailto:raj.khem@gmail.com>>"
> RECIPE_MAINTAINER_pn-grep = "Denys Dmytriyenko <denis@denix.org
> <mailto:denis@denix.org>>"
> RECIPE_MAINTAINER_pn-groff = "Hongxu Jia <hongxu.jia@windriver.com
> <mailto:hongxu.jia@windriver.com>>"
> RECIPE_MAINTAINER_pn-grub = "Anuj Mittal <anuj.mittal@intel.com
> <mailto:anuj.mittal@intel.com>>"
> diff --git a/meta/recipes-core/musl/gcompat_git.bb
> <http://gcompat_git.bb> b/meta/recipes-core/musl/gcompat_git.bb
> <http://gcompat_git.bb>
> new file mode 100644
> index 0000000000..6792c0be70
> --- /dev/null
> +++ b/meta/recipes-core/musl/gcompat_git.bb <http://gcompat_git.bb>
> @@ -0,0 +1,42 @@
> +# Copyright (C) 2021 Khem Raj <raj.khem@gmail.com
> <mailto:raj.khem@gmail.com>>
> +# Released under the MIT license (see COPYING.MIT for the terms)
> +
> +SUMMARY = "A library which provides glibc-compatible APIs for use
> on musl libc systems"
> +HOMEPAGE = "https://git.adelielinux.org/adelie/gcompat
> <https://git.adelielinux.org/adelie/gcompat>"
> +
> +LICENSE = "NCSA"
> +LIC_FILES_CHKSUM =
> "file://LICENSE;md5=eb33ef4af05a9c7602843afb7adfe792"
> +
> +SRC_URI =
> "git://git.adelielinux.org/adelie/gcompat.git;protocol=https;branch=current
> <http://git.adelielinux.org/adelie/gcompat.git;protocol=https;branch=current>"
> +
> +PV = "1.0.0+1.1+git${SRCPV}"
> +SRCREV = "af5a49e489fdc04b9cf02547650d7aeaccd43793"
> +
> +S = "${WORKDIR}/git"
> +
> +inherit pkgconfig linuxloader
> +
> +DEPENDS += "musl-obstack"
> +
> +GLIBC_LDSO = "${@get_glibc_loader(d)}"
> +MUSL_LDSO = "${@get_musl_loader(d)}"
> +
> +EXTRA_OEMAKE = "LINKER_PATH=${MUSL_LDSO} LOADER_NAME=`basename
> ${@get_glibc_loader(d)}`"
> +
> +do_configure () {
> + :
> +}
> +
> +do_compile () {
> + oe_runmake
> +}
> +
> +do_install () {
> + oe_runmake install 'DESTDIR=${D}'
> +}
> +#
> +# We will skip parsing for non-musl systems
> +#
> +COMPATIBLE_HOST = ".*-musl.*"
> +
> +UPSTREAM_CHECK_COMMITS = "1"
> --
> 2.32.0
>
>
>
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2021-06-12 22:09 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-12 19:43 [PATCH 1/2] gcompat: Add recipe Khem Raj
2021-06-12 19:43 ` [PATCH 2/2] musl: Do not package glibc loader Khem Raj
2021-06-12 20:23 ` [OE-core] [PATCH 1/2] gcompat: Add recipe Alexander Kanavin
2021-06-12 22:09 ` Khem Raj
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.