public inbox for openembedded-core@lists.openembedded.org
 help / color / mirror / Atom feed
From: Amarnath Valluri <amarnath.valluri@intel.com>
To: openembedded-core@lists.openembedded.org
Subject: [PATCH v2 00/25] Fix for #7040 - Support for /usr merge
Date: Wed, 22 Feb 2017 10:26:57 +0200	[thread overview]
Message-ID: <1487752042-19804-26-git-send-email-amarnath.valluri@intel.com> (raw)
In-Reply-To: <1487752042-19804-1-git-send-email-amarnath.valluri@intel.com>

This set of patches implements the long-standing feature - merging of /bin,
/sbin, /libs to their /usr counterparts.

It introduces a 'usrmerge' DISTRO_FEATURE, when it's enabled:
     - other than native all base paths(base_{bin,sbin,lib}dir) points to
       ${exec_prefix}/{bin,sbin,lib}
     - base-files package adds the needed root links(/bin, /sbin, /lib{32,64})
       points to /usr counterparts
     - As most of shell scripts refer "#!/bin/{sh,bash}" inside script, so makes
       sure that get added to RPROVIDES_ list by those packages to satisfy the
       build dependencies.

The assumption is that no recipe uses hard coded paths in recipes where
pre-defined bitbake configuration variables are available. I have fixed quite
many recipes that i found which violates this assumption.

I have tested this change on core-minimal, sato, windriver cube-desktop and
intel-iot-refkit image builds. And i would prefer to run autobuilder tests prior
to merging.

Changes in v2:
 - Moved root links creation out from 'base-files' to pre-rootfs.
 - Fixes to lsb, lttng-modules recipes., that are failed in autobuilder tests.
 - Added insane check to usrmerge feature.
 - Fixed typos in commit messages.


Amarnath Valluri (22):
  bitbake.conf: Modify nativesdk variables to support 'usrmerge'
    DISTRO_FEATURE
  cross.bbclass: merged /usr support
  base-files: Replace hardcoded root paths with appropriate bitbake
    variables
  systemd: chagnes to support merged /usr
  bash: changes to support merged /usr
  busybox: changes to support merged /usr
  sed: changes to support merged /usr
  musl: Fix issues in relative symlink creation
  attr/acl: Do not create broken static library link when not needed
  systemd: Do not add libnss_* to systemd package
  util-linux: Make sure '${base_bindir}/reset' is part of
    util-linux-reset package.
  util-linux,shadow: Make 'nologin' alternative command
  libarchive: Backport upstream fixes.
  kernel: use ${nonarch_base_libdir} for kernel modules installation.
  firmware: use ${nonarch_base_libdir} for firmware installation.
  mdadm: Avoid using hardocded udev, sbin paths
  mktemp: Move installed files only when needed
  net-tools: Place package content as per bitbake environment.
  lsb: Make use of appropriate bitbake variables.
  lttng-modules: Replace '/lib' with ${nonarch_base_libdir}
  image: create symlinks needed for merged /usr
  insane.bbclass: Add package QA check for merged /usr.

Joshua Lock (1):
  bitbake.conf: support for merged usr with DISTRO_FEATURE usrmerge

Jussi Kukkonen (2):
  glibc: Ensure ldconfig is packaged into glibc
  util-linux: Fix packaging with "usrmerge"

 meta/classes/cross.bbclass                         |   2 +-
 meta/classes/image.bbclass                         |  23 ++
 meta/classes/insane.bbclass                        |  16 ++
 meta/classes/kernel-module-split.bbclass           |   2 +-
 meta/classes/kernel.bbclass                        |  14 +-
 meta/classes/module.bbclass                        |   2 +-
 meta/conf/bitbake.conf                             |  20 +-
 meta/recipes-core/base-files/base-files_3.0.14.bb  |   5 +-
 meta/recipes-core/busybox/busybox.inc              |   2 +
 meta/recipes-core/glibc/glibc-package.inc          |   2 +-
 ...dynamic-linker-a-relative-symlink-to-libc.patch |  62 +++++-
 meta/recipes-core/musl/musl_git.bb                 |   2 +-
 meta/recipes-core/systemd/systemd_232.bb           |   7 +-
 meta/recipes-core/util-linux/util-linux.inc        |  13 +-
 meta/recipes-extended/bash/bash.inc                |   2 +
 ...te_disk_posix.c-make-_fsobj-functions-mor.patch | 245 +++++++++++++++++++++
 ...02-Fix-extracting-hardlinks-over-symlinks.patch | 120 ++++++++++
 .../libarchive/libarchive_3.2.2.bb                 |   2 +
 meta/recipes-extended/lsb/lsb_4.1.bb               |  40 ++--
 meta/recipes-extended/mdadm/mdadm_4.0.bb           |   6 +-
 meta/recipes-extended/mktemp/mktemp_1.7.bb         |   8 +-
 .../net-tools/net-tools_1.60-26.bb                 |  11 +
 meta/recipes-extended/sed/sed_4.2.2.bb             |   1 +
 meta/recipes-extended/shadow/shadow.inc            |   3 +-
 .../linux-firmware/linux-firmware_git.bb           | 168 +++++++-------
 meta/recipes-kernel/lttng/lttng-modules_2.9.0.bb   |   4 +-
 meta/recipes-support/attr/ea-acl.inc               |   2 +
 ...gure-option-to-enable-disable-static-libr.patch |  70 ++++++
 28 files changed, 699 insertions(+), 155 deletions(-)
 create mode 100644 meta/recipes-extended/libarchive/files/0001-archive_write_disk_posix.c-make-_fsobj-functions-mor.patch
 create mode 100644 meta/recipes-extended/libarchive/files/0002-Fix-extracting-hardlinks-over-symlinks.patch
 create mode 100644 meta/recipes-support/attr/files/0001-Added-configure-option-to-enable-disable-static-libr.patch

-- 
2.7.4



  reply	other threads:[~2017-02-22  8:27 UTC|newest]

Thread overview: 88+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-10 13:42 [PATCH 00/23] Fix for #7040 - Support for /usr merge Amarnath Valluri
2017-02-10 13:42 ` [PATCH 01/23] bitbake.conf: support for merged usr with DISTRO_FEATURE usrmerge Amarnath Valluri
2017-02-10 16:29   ` Christopher Larson
2017-02-10 13:42 ` [PATCH 02/23] bitbake.conf: Modify nativesdk variables to support 'usrmerge' DISTRO_FEATURE Amarnath Valluri
2017-02-10 13:42 ` [PATCH 03/23] cross.bbclass: merged /usr support Amarnath Valluri
2017-02-10 13:42 ` [PATCH 04/23] base-files: support merged /usr Amarnath Valluri
2017-02-10 13:42 ` [PATCH 05/23] systemd: chagnes to " Amarnath Valluri
2017-02-10 13:42 ` [PATCH 06/23] bash: changes " Amarnath Valluri
2017-02-10 13:42 ` [PATCH 07/23] busybox: " Amarnath Valluri
2017-02-10 13:42 ` [PATCH 08/23] sed: " Amarnath Valluri
2017-02-10 13:42 ` [PATCH 09/23] package_deb.bbclass: Ignore file paths in RPROVIDES Amarnath Valluri
2017-02-13 12:57   ` Alexander Kanavin
2017-02-10 13:42 ` [PATCH 10/23] musl: Fix issues in relative symlink creation Amarnath Valluri
2017-02-10 13:42 ` [PATCH 11/23] glibc: Ensure ldconfig is packaged into glibc Amarnath Valluri
2017-02-10 13:42 ` [PATCH 12/23] util-linux: Fix packaging with "usrmerge" Amarnath Valluri
2017-02-10 13:42 ` [PATCH 13/23] attr/acl: Do not create broken static library link when not needed Amarnath Valluri
2017-02-10 13:42 ` [PATCH 14/23] systemd: Do not add libnss_* to systemd package Amarnath Valluri
2017-02-10 13:42 ` [PATCH 15/23] util-linux: Make sure '${base_bindir}/reset' is part of util-linux-reset package Amarnath Valluri
2017-02-10 13:42 ` [PATCH 16/23] util-linux, shadow: Make 'nologin' alternative command Amarnath Valluri
2017-02-10 13:42 ` [PATCH 17/23] libarchive: Backport upstream fixes Amarnath Valluri
2017-02-10 13:42 ` [PATCH 18/23] kernel: use ${nonarch_base_libdir} for kernel modules installation Amarnath Valluri
2017-02-10 13:42 ` [PATCH 19/23] firmware: use ${nonarch_base_libdir} for firmware installation Amarnath Valluri
2017-02-10 13:42 ` [PATCH 20/23] mdadm: Avoid using hardocded udev, sbin paths Amarnath Valluri
2017-02-10 13:42 ` [PATCH 21/23] mktemp: Move installed files only when needed Amarnath Valluri
2017-02-10 13:42 ` [PATCH 22/23] net-tools: Place package content as per bitbake environment Amarnath Valluri
2017-02-10 13:42 ` [PATCH 23/23] lsb: Make use of appropriate bitbake variables Amarnath Valluri
2017-02-10 13:59 ` ✗ patchtest: failure for Fix for #7040 - Support for /usr merge Patchwork
2017-02-22  8:26 ` [PATCH v2 01/25] bitbake.conf: support for merged usr with DISTRO_FEATURE usrmerge Amarnath Valluri
2017-02-22  8:26   ` Amarnath Valluri [this message]
2017-02-22  8:26   ` Amarnath Valluri
2017-02-22  8:26   ` [PATCH v2 02/25] bitbake.conf: Modify nativesdk variables to support 'usrmerge' DISTRO_FEATURE Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 03/25] cross.bbclass: merged /usr support Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 04/25] base-files: Replace hardcoded root paths with appropriate bitbake variables Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 05/25] systemd: chagnes to support merged /usr Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 06/25] bash: changes " Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 07/25] busybox: " Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 08/25] sed: " Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 09/25] musl: Fix issues in relative symlink creation Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 10/25] glibc: Ensure ldconfig is packaged into glibc Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 11/25] util-linux: Fix packaging with "usrmerge" Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 12/25] attr/acl: Do not create broken static library link when not needed Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 13/25] systemd: Do not add libnss_* to systemd package Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 14/25] util-linux: Make sure '${base_bindir}/reset' is part of util-linux-reset package Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 15/25] util-linux, shadow: Make 'nologin' alternative command Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 16/25] libarchive: Backport upstream fixes Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 17/25] kernel: use ${nonarch_base_libdir} for kernel modules installation Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 18/25] firmware: use ${nonarch_base_libdir} for firmware installation Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 19/25] mdadm: Avoid using hardocded udev, sbin paths Amarnath Valluri
2017-03-02 20:11     ` Burton, Ross
2017-03-03 12:27       ` [OE-Core[[PATCH v3 19/25] mdadm: Avoid using hardocded sbin path Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 20/25] mktemp: Move installed files only when needed Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 21/25] net-tools: Place package content as per bitbake environment Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 22/25] lsb: Make use of appropriate bitbake variables Amarnath Valluri
2017-03-02 20:13     ` Burton, Ross
2017-03-03 12:36       ` [PATCH v3] " Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 23/25] lttng-modules: Replace '/lib' with ${nonarch_base_libdir} Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 24/25] image: create symlinks needed for merged /usr Amarnath Valluri
2017-02-22  8:27   ` [PATCH v2 25/25] insane.bbclass: Add package QA check " Amarnath Valluri
2017-06-07 11:52   ` [PATCH v2 01/25] bitbake.conf: support for merged usr with DISTRO_FEATURE usrmerge Richard Purdie
2017-06-07 14:31     ` Patrick Ohly
2017-06-07 17:04       ` Peter Kjellerstedt
2017-06-08  6:18         ` Patrick Ohly
2017-06-08  6:37         ` Richard Purdie
2017-06-09 12:52           ` Valluri, Amarnath
2017-02-22  8:26 ` [PATCH v2 02/25] bitbake.conf: Modify nativesdk variables to support 'usrmerge' DISTRO_FEATURE Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 03/25] cross.bbclass: merged /usr support Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 04/25] base-files: Replace hardcoded root paths with appropriate bitbake variables Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 05/25] systemd: chagnes to support merged /usr Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 06/25] bash: changes " Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 07/25] busybox: " Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 08/25] sed: " Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 09/25] musl: Fix issues in relative symlink creation Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 10/25] glibc: Ensure ldconfig is packaged into glibc Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 11/25] util-linux: Fix packaging with "usrmerge" Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 12/25] attr/acl: Do not create broken static library link when not needed Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 13/25] systemd: Do not add libnss_* to systemd package Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 14/25] util-linux: Make sure '${base_bindir}/reset' is part of util-linux-reset package Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 15/25] util-linux, shadow: Make 'nologin' alternative command Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 16/25] libarchive: Backport upstream fixes Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 17/25] kernel: use ${nonarch_base_libdir} for kernel modules installation Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 18/25] firmware: use ${nonarch_base_libdir} for firmware installation Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 19/25] mdadm: Avoid using hardocded udev, sbin paths Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 20/25] mktemp: Move installed files only when needed Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 21/25] net-tools: Place package content as per bitbake environment Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 22/25] lsb: Make use of appropriate bitbake variables Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 23/25] lttng-modules: Replace '/lib' with ${nonarch_base_libdir} Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 24/25] image: create symlinks needed for merged /usr Amarnath Valluri
2017-02-22  8:26 ` [PATCH v2 25/25] insane.bbclass: Add package QA check " Amarnath Valluri

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1487752042-19804-26-git-send-email-amarnath.valluri@intel.com \
    --to=amarnath.valluri@intel.com \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox