From 579b63f0f6b38cfa1ff3ac2f293eb8b5114429a1 Mon Sep 17 00:00:00 2001 From: lisimin Date: Thu, 30 Dec 2021 19:21:46 +0800 Subject: [PATCH 1/6] package lcr and iSulad and move .so to ${PN}, add it to rootfs Signed-off-by: lisimin --- .../recipes-core/iSulad/iSulad_2.0.9.bb | 21 +++++++------------ meta-openeuler/recipes-core/lcr/lcr_2.0.6.bb | 10 ++------- 2 files changed, 9 insertions(+), 22 deletions(-) diff --git a/meta-openeuler/recipes-core/iSulad/iSulad_2.0.9.bb b/meta-openeuler/recipes-core/iSulad/iSulad_2.0.9.bb index 22cf83388f4..925051030e6 100644 --- a/meta-openeuler/recipes-core/iSulad/iSulad_2.0.9.bb +++ b/meta-openeuler/recipes-core/iSulad/iSulad_2.0.9.bb @@ -29,6 +29,8 @@ EXTRA_OECMAKE = "-DENABLE_GRPC=OFF -DENABLE_SYSTEMD_NOTIFY=OFF -DENABLE_SELINUX= INHIBIT_PACKAGE_DEBUG_SPLIT = "1" FILES_${PN} += "${libdir}/* " +#remove so from ${PN}-dev +FILES_SOLIBSDEV = "" do_configure_prepend() { grep -q CMAKE_SYSROOT ${WORKDIR}/toolchain.cmake || cat >> ${WORKDIR}/toolchain.cmake < Date: Thu, 30 Dec 2021 19:33:30 +0800 Subject: [PATCH 2/6] move .so to ${PN}, add it to rootfs for libarchive libwebsockets yajl Signed-off-by: lisimin --- meta-openeuler/recipes-core/libarchive/libarchive_3.5.1.bb | 3 ++- .../recipes-core/libwebsockets/libwebsockets_4.0.20.bb | 1 + meta-openeuler/recipes-core/yajl/yajl_2.1.0.bb | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/meta-openeuler/recipes-core/libarchive/libarchive_3.5.1.bb b/meta-openeuler/recipes-core/libarchive/libarchive_3.5.1.bb index 5e8db50c195..68609a9c84e 100644 --- a/meta-openeuler/recipes-core/libarchive/libarchive_3.5.1.bb +++ b/meta-openeuler/recipes-core/libarchive/libarchive_3.5.1.bb @@ -16,7 +16,8 @@ inherit cmake INHIBIT_PACKAGE_DEBUG_SPLIT = "1" FILES_${PN} += "${libdir}/libarchive.so* " -INSANE_SKIP_${PN} += "already-stripped" +INSANE_SKIP_${PN} += "already-stripped dev-so" +FILES_SOLIBSDEV = "" do_install_append() { [[ "${libdir}" != "/usr/lib" ]] || return 0 diff --git a/meta-openeuler/recipes-core/libwebsockets/libwebsockets_4.0.20.bb b/meta-openeuler/recipes-core/libwebsockets/libwebsockets_4.0.20.bb index 4ca34d33c9f..db07b86cff4 100644 --- a/meta-openeuler/recipes-core/libwebsockets/libwebsockets_4.0.20.bb +++ b/meta-openeuler/recipes-core/libwebsockets/libwebsockets_4.0.20.bb @@ -31,6 +31,7 @@ INHIBIT_PACKAGE_DEBUG_SPLIT = "1" FILES_${PN} += "${libdir}/*" INSANE_SKIP_${PN} += "already-stripped" +FILES_SOLIBSDEV = "" do_install_append() { rm -rf ${D}/usr/share diff --git a/meta-openeuler/recipes-core/yajl/yajl_2.1.0.bb b/meta-openeuler/recipes-core/yajl/yajl_2.1.0.bb index b620bd1e8d3..f12fa0d475e 100644 --- a/meta-openeuler/recipes-core/yajl/yajl_2.1.0.bb +++ b/meta-openeuler/recipes-core/yajl/yajl_2.1.0.bb @@ -21,6 +21,7 @@ INHIBIT_PACKAGE_DEBUG_SPLIT = "1" INSANE_SKIP_${PN} += "already-stripped" FILES_${PN} += "${libdir}/libyajl.so* " +FILES_SOLIBSDEV = "" do_install_append() { ${STRIP} ${D}/${libdir}/*.so* -- Gitee From 78849003169860e651bc1bfed153b73cdddc237d Mon Sep 17 00:00:00 2001 From: lisimin Date: Thu, 30 Dec 2021 19:35:30 +0800 Subject: [PATCH 3/6] add init for qemu start add ${PN}-bash to fix file conflict for busybox and bash add ${PN}-login ${PN}-groups to fix file conflict for busybox and shadow Signed-off-by: lisimin --- meta-openeuler/recipes-core/busybox/busybox_1.33.1.bb | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/meta-openeuler/recipes-core/busybox/busybox_1.33.1.bb b/meta-openeuler/recipes-core/busybox/busybox_1.33.1.bb index afcb1162477..0c58fe71cb8 100644 --- a/meta-openeuler/recipes-core/busybox/busybox_1.33.1.bb +++ b/meta-openeuler/recipes-core/busybox/busybox_1.33.1.bb @@ -44,7 +44,11 @@ FILES_${PN}-mdev = "${sysconfdir}/init.d/mdev ${sysconfdir}/mdev.conf ${sysconfd FILES_${PN}-udhcpd = "${sysconfdir}/init.d/busybox-udhcpd" FILES_${PN}-udhcpc = "${sysconfdir}/udhcpc.d ${datadir}/udhcpc" FILES_${PN}-hwclock = "${sysconfdir}/init.d/hwclock.sh" -FILES_${PN}-linuxrc = "/linuxrc" +FILES_${PN}-linuxrc = "/linuxrc /init" +PACKAGES =+ "${PN}-bash ${PN}-login ${PN}-groups" +FILES_${PN}-bash = "${base_bindir}/bash" +FILES_${PN}-login = "${base_bindir}/login" +FILES_${PN}-groups = "${bindir}/groups" INITSCRIPT_PACKAGES = "${PN}-httpd ${PN}-syslog ${PN}-udhcpd ${PN}-mdev ${PN}-hwclock" @@ -106,5 +110,8 @@ do_compile () { do_install () { oe_runmake CONFIG_PREFIX="${D}" install + pushd "${D}" + ln -s bin/busybox init + popd } INSANE_SKIP += "already-stripped" -- Gitee From 477a9bf8abbeb07a83374ea1e61195c1e64c37bb Mon Sep 17 00:00:00 2001 From: lisimin Date: Thu, 30 Dec 2021 19:37:07 +0800 Subject: [PATCH 4/6] package files in openeuler gcc toolchain, used in qemu Signed-off-by: lisimin --- .../recipes-core/glibc/glibc_2.25.bb | 48 ++++++++++++------- 1 file changed, 30 insertions(+), 18 deletions(-) diff --git a/meta-openeuler/recipes-core/glibc/glibc_2.25.bb b/meta-openeuler/recipes-core/glibc/glibc_2.25.bb index d5167a4a458..b4a42602b28 100644 --- a/meta-openeuler/recipes-core/glibc/glibc_2.25.bb +++ b/meta-openeuler/recipes-core/glibc/glibc_2.25.bb @@ -27,10 +27,11 @@ SRC_URI_aarch64 = "file://openeuler_gcc_arm64le" SRC_URI_arm = "file://openeuler_gcc_arm32le" #Not strip toolchain INHIBIT_SYSROOT_STRIP = "1" +INSANE_SKIP_${PN} += "already-stripped" #FILESPATH_prepend += "${LOCAL_FILES}:" DL_DIR = "${LOCAL_SYSROOT_DL_DIR}" -S_aarch64 = "${WORKDIR}/openeuler_gcc_arm64le/sysroot" -S_arm = "${WORKDIR}/openeuler_gcc_arm32le/sysroot" +S_aarch64 = "${WORKDIR}/openeuler_gcc_arm64le" +S_arm = "${WORKDIR}/openeuler_gcc_arm32le" PSEUDO_DISABLED = "1" PRIVATE_LIBS_${PN}-dev_append = "libdl.so.2 libresolv.so.2 libm.so.6 librt.so.1 libnsl.so.1 libnss_files.so.2 " @@ -44,30 +45,41 @@ do_compile () { do_install() { install -m 0755 -d ${D}/ - cp -pPR ${S}/* ${D}/ - #for f in ${D}${bindir}/${EULER_TOOLCHAIN_SYSNAME}-*; do - echo "EULER_TOOLCHAIN_SYSNAME:$EULER_TOOLCHAIN_SYSNAME" - echo "TARGET_PREFIX:$TARGET_PREFIX" - EULER_TOOLCHAIN_SYSNAME="aarch64-openeuler-linux-gnu" - EULER_TOOLCHAIN_TARGET_PREFIX="aarch64-openeuler-linux-" - echo "D:${D}" + install -m 0755 -d ${D}/${base_libdir} + install -m 0755 -d ${D}/${libdir} + cp -pPR ${S}/sysroot/* ${D}/ rm -rf ${D}/etc/rpc rm -rf ${D}/${base_libdir}/debug - echo ${libdir} - echo ${base_libdir} + chown root:root ${D}/ -R } +FILES_${PN} = " \ +${base_libdir}/ld-linux*.so.* \ +${libdir}/libc.so \ +${base_libdir}/libm.so \ +${base_libdir}/libc.so.6 \ +${base_libdir}/libm.so.6 \ +${libdir}/libcrypt.so \ +${libdir}/libnss_compat.so \ +${libdir}/libresolv.so \ +${base_libdir}/libcrypt.so.1 \ +${base_libdir}/libnss_compat.so.2 \ +${base_libdir}/libnsl.so.1 \ +{base_libdir}/libnss_files.so.2 \ +${base_libdir}/libresolv.so.2 \ +${base_libdir}/librt* \ +${base_libdir}/libpthread* \ +${base_libdir}/libutil* \ +${base_libdir}/libgcc_s.so.1 \ +${base_libdir}/libtirpc.so* \ +" +INSANE_SKIP_${PN} += "installed-vs-shipped" +INSANE_SKIP += "dev-elf dev-so" + SYSROOT_DIRS += "/*" #depends by glibc-locale do_stash_locale() { : } addtask do_stash_locale -deltask do_package -deltask do_package_write_rpm -#depends by libgcc -do_packagedata () { - : -} - BBCLASSEXTEND = "native nativesdk" -- Gitee From 5e080ad25ebc74b94e35971355ae88ba0a639b0c Mon Sep 17 00:00:00 2001 From: lisimin Date: Thu, 30 Dec 2021 19:40:00 +0800 Subject: [PATCH 5/6] add openssh-scp needed by openssh Signed-off-by: lisimin --- meta-openeuler/recipes-core/openssh/openssh_8.2p1.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta-openeuler/recipes-core/openssh/openssh_8.2p1.bb b/meta-openeuler/recipes-core/openssh/openssh_8.2p1.bb index 164b8f9657a..35d44c2565e 100644 --- a/meta-openeuler/recipes-core/openssh/openssh_8.2p1.bb +++ b/meta-openeuler/recipes-core/openssh/openssh_8.2p1.bb @@ -146,7 +146,7 @@ do_install_append () { ALLOW_EMPTY_${PN} = "0" PACKAGES =+ "${PN}-keygen ${PN}-scp ${PN}-ssh ${PN}-sshd ${PN}-sftp ${PN}-misc ${PN}-sftp-server" -FILES_${PN}-scp = "${bindir}/scp.${BPN}" +FILES_${PN}-scp = "${bindir}/scp.${BPN} ${bindir}/scp" FILES_${PN}-ssh = "${bindir}/ssh.${BPN} ${sysconfdir}/ssh/ssh_config" FILES_${PN}-sshd = "${sbindir}/sshd ${sysconfdir}/init.d/sshd ${systemd_unitdir}/system" FILES_${PN}-sshd += "${sysconfdir}/ssh/moduli ${sysconfdir}/ssh/sshd_config ${sysconfdir}/ssh/sshd_config_readonly ${sysconfdir}/default/volatiles/99_sshd ${sysconfdir}/pam.d/sshd" -- Gitee From 5f6a0d0f38603c6ee93701f36f468811a6763148 Mon Sep 17 00:00:00 2001 From: lisimin Date: Thu, 30 Dec 2021 19:42:05 +0800 Subject: [PATCH 6/6] add rcS for mount delete securetty,use securetty from shadow-securetty change permission to 0600 for /etc/fstab /etc/sysctl.conf /etc/shadow Signed-off-by: lisimin --- meta-openeuler/recipes-core/os-base/os-base/rcS | 2 ++ meta-openeuler/recipes-core/os-base/os-base_1.0.bb | 12 ++++++------ 2 files changed, 8 insertions(+), 6 deletions(-) create mode 100644 meta-openeuler/recipes-core/os-base/os-base/rcS diff --git a/meta-openeuler/recipes-core/os-base/os-base/rcS b/meta-openeuler/recipes-core/os-base/os-base/rcS new file mode 100644 index 00000000000..fc699e4723c --- /dev/null +++ b/meta-openeuler/recipes-core/os-base/os-base/rcS @@ -0,0 +1,2 @@ +#!/bin/sh +/bin/mount -a diff --git a/meta-openeuler/recipes-core/os-base/os-base_1.0.bb b/meta-openeuler/recipes-core/os-base/os-base_1.0.bb index e32abb8290b..f181ba1522e 100644 --- a/meta-openeuler/recipes-core/os-base/os-base_1.0.bb +++ b/meta-openeuler/recipes-core/os-base/os-base_1.0.bb @@ -10,6 +10,7 @@ LIC_FILES_CHKSUM = "file://${WORKDIR}/LICENSE;md5=1acb172ffd3d252285dd1b8b845994 SRC_URI = "file://bashrc \ file://fstab \ + file://rcS \ file://group \ file://inittab \ file://issue \ @@ -18,7 +19,6 @@ SRC_URI = "file://bashrc \ file://motd \ file://passwd \ file://profile \ - file://securetty \ file://shadow \ file://sysctl.conf \ file://rc.functions \ @@ -28,7 +28,7 @@ SRC_URI = "file://bashrc \ do_install() { install -d ${D}/etc cp ${WORKDIR}/bashrc ${D}/etc/ - cp ${WORKDIR}/fstab ${D}/etc/ + install -m 0600 ${WORKDIR}/fstab ${D}/etc/ cp ${WORKDIR}/group ${D}/etc/ cp ${WORKDIR}/inittab ${D}/etc/ cp ${WORKDIR}/issue ${D}/etc/ @@ -36,15 +36,15 @@ do_install() { cp ${WORKDIR}/motd ${D}/etc/ cp ${WORKDIR}/passwd ${D}/etc/ cp ${WORKDIR}/profile ${D}/etc/ - cp ${WORKDIR}/securetty ${D}/etc/ - cp ${WORKDIR}/shadow ${D}/etc/ - cp ${WORKDIR}/sysctl.conf ${D}/etc/ + install -m 0600 ${WORKDIR}/shadow ${D}/etc/ + install -m 0600 ${WORKDIR}/sysctl.conf ${D}/etc/ install -d ${D}/etc/rc.d cp ${WORKDIR}/rc.functions ${D}/etc/rc.d cp ${WORKDIR}/rc.sysinit ${D}/etc/rc.d cp ${WORKDIR}/rc.local ${D}/etc/rc.d + install -m 0755 -d ${D}/etc/init.d/ + install -m 0750 ${WORKDIR}/rcS ${D}/etc/init.d/ } - FILES_${PN} = "/" INHIBIT_DEFAULT_DEPS = "1" -- Gitee