I searched the whole openembedded directory and found the following references of micro as DISTRO overriding.
recipes/base-passwd/base-passwd_3.5.20.bb:do_install_micro () {
recipes/sysvinit/sysvinit_2.86.bb:RRECOMMENDS_${PN}_micro = ""

Through the above references, I can say that the initial motion of using micro as overriding is trying to keep the image as small as possible. To achieve the goal, the initial author added the check/overriding of micro/micro-uclibc. But how many space will be saved by just no installing the several plain text files? I think the basic unit of installation should be package not file. To keep the image small, we should control the packages installed.

If someone realy does not want to install some files in base-file/base-passwd/sysvinit to keep the image smaller, they can rewrites the corresponding recipes and put them into their private bb file collection.

在 Wed, 30 Dec 2009 17:13:16 +0800,Phil Blundell <[email protected]> 写道:

This patch is wrong.  If you make this change then base-files will gain
a whole load of files which are not wanted for micro.

p.

On Wed, 2009-12-30 at 16:15 +0800, Guo Hongruan wrote:
1. Remove the *_micro variable overridding;
2. Remove the micro/micro-uclibc specific installation decision, which causes the installation of base-file failed when DISTRO=micro/micro-uclibc.
---
recipes/base-files/base-files_3.0.14.bb | 70 ++++++++++++++-----------------
 1 files changed, 31 insertions(+), 39 deletions(-)

diff --git a/recipes/base-files/base-files_3.0.14.bb b/recipes/base-files/base-files_3.0.14.bb
index 483aef7..61bb71e 100644
--- a/recipes/base-files/base-files_3.0.14.bb
+++ b/recipes/base-files/base-files_3.0.14.bb
@@ -46,12 +46,7 @@ dirs755 = "/bin /boot /dev ${sysconfdir} ${sysconfdir}/default \
           /media/union /media/realroot /media/hdd \
           /media/mmc1"

-dirs755_micro = "/dev /proc /sys ${sysconfdir}"
-dirs2775_micro = ""
-dirs1777_micro = "/tmp"
-
 media = "card cf net ram"
-media_micro = ""

 volatiles = "cache run log lock tmp"
 conffiles = "${sysconfdir}/debian_version ${sysconfdir}/host.conf \
@@ -93,40 +88,38 @@ do_install () {
                echo ${hostname} > ${D}${sysconfdir}/hostname
        fi

- if [ "${DISTRO}" != "micro" -a "${DISTRO}" != "micro-uclibc" ]; then
-                install -m 644 ${WORKDIR}/issue*  ${D}${sysconfdir}
-
-                if [ -n "${DISTRO_NAME}" ]; then
-                       echo -n "${DISTRO_NAME} " >> ${D}${sysconfdir}/issue
-                       echo -n "${DISTRO_NAME} " >> ${D}${sysconfdir}/issue.net
-                       if [ -n "${DISTRO_VERSION}" ]; then
-                               echo -n "${DISTRO_VERSION} " >> 
${D}${sysconfdir}/issue
-                               echo -n "${DISTRO_VERSION} " >> 
${D}${sysconfdir}/issue.net
-                       fi
-                       echo "\n \l" >> ${D}${sysconfdir}/issue
-                       echo >> ${D}${sysconfdir}/issue
-                       echo "%h"    >> ${D}${sysconfdir}/issue.net
-                       echo >> ${D}${sysconfdir}/issue.net
-               else
- install -m 0644 ${WORKDIR}/issue ${D}${sysconfdir}/issue - install -m 0644 ${WORKDIR}/issue.net ${D}${sysconfdir}/issue.net
-                fi
+       install -m 644 ${WORKDIR}/issue*  ${D}${sysconfdir}
+
+       if [ -n "${DISTRO_NAME}" ]; then
+               echo -n "${DISTRO_NAME} " >> ${D}${sysconfdir}/issue
+               echo -n "${DISTRO_NAME} " >> ${D}${sysconfdir}/issue.net
+               if [ -n "${DISTRO_VERSION}" ]; then
+                       echo -n "${DISTRO_VERSION} " >> ${D}${sysconfdir}/issue
+                       echo -n "${DISTRO_VERSION} " >> 
${D}${sysconfdir}/issue.net
+               fi
+               echo "\n \l" >> ${D}${sysconfdir}/issue
+               echo >> ${D}${sysconfdir}/issue
+               echo "%h"    >> ${D}${sysconfdir}/issue.net
+               echo >> ${D}${sysconfdir}/issue.net
+       else
+               install -m 0644 ${WORKDIR}/issue ${D}${sysconfdir}/issue
+               install -m 0644 ${WORKDIR}/issue.net ${D}${sysconfdir}/issue.net
+       fi
+
+       install -m 0644 ${WORKDIR}/fstab ${D}${sysconfdir}/fstab
+       install -m 0644 ${WORKDIR}/filesystems ${D}${sysconfdir}/filesystems
+       install -m 0644 ${WORKDIR}/usbd ${D}${sysconfdir}/default/usbd
+       install -m 0644 ${WORKDIR}/profile ${D}${sysconfdir}/profile
+ install -m 0755 ${WORKDIR}/share/dot.profile ${D}${sysconfdir}/skel/.profile + install -m 0755 ${WORKDIR}/share/dot.bashrc ${D}${sysconfdir}/skel/.bashrc
+       install -m 0644 ${WORKDIR}/inputrc ${D}${sysconfdir}/inputrc
+       install -m 0644 ${WORKDIR}/motd ${D}${sysconfdir}/motd
+ for license in BSD GPL-2 LGPL-2 LGPL-2.1 Artistic GPL-3 LGPL-3 GFDL-1.2; do + install -m 0644 ${WORKDIR}/licenses/$license ${D}${datadir}/common-licenses/
+       done

- install -m 0644 ${WORKDIR}/fstab ${D}${sysconfdir}/fstab - install -m 0644 ${WORKDIR}/filesystems ${D}${sysconfdir}/filesystems
-               install -m 0644 ${WORKDIR}/usbd ${D}${sysconfdir}/default/usbd
-               install -m 0644 ${WORKDIR}/profile ${D}${sysconfdir}/profile
- install -m 0755 ${WORKDIR}/share/dot.profile ${D}${sysconfdir}/skel/.profile - install -m 0755 ${WORKDIR}/share/dot.bashrc ${D}${sysconfdir}/skel/.bashrc
-               install -m 0644 ${WORKDIR}/inputrc ${D}${sysconfdir}/inputrc
-               install -m 0644 ${WORKDIR}/motd ${D}${sysconfdir}/motd
- for license in BSD GPL-2 LGPL-2 LGPL-2.1 Artistic GPL-3 LGPL-3 GFDL-1.2; do - install -m 0644 ${WORKDIR}/licenses/$license ${D}${datadir}/common-licenses/
-               done
-
-               ln -sf /proc/mounts ${D}${sysconfdir}/mtab
- install -m 0644 ${WORKDIR}/host.conf ${D}${sysconfdir}/host.conf
-        fi
+       ln -sf /proc/mounts ${D}${sysconfdir}/mtab
+       install -m 0644 ${WORKDIR}/host.conf ${D}${sysconfdir}/host.conf

install -m 0644 ${WORKDIR}/nsswitch.conf ${D}${sysconfdir}/nsswitch.conf
 }
@@ -168,7 +161,6 @@ PACKAGE_ARCH_rt3000 = "rt3000"
 PACKAGE_ARCH = "${MACHINE_ARCH}"

 CONFFILES_${PN} = "${sysconfdir}/fstab ${sysconfdir}/hostname"
-CONFFILES_${PN}_micro = ""
CONFFILES_${PN}_nylon = "${sysconfdir}/resolv.conf ${sysconfdir}/fstab ${sysconfdir}/hostname" CONFFILES_${PN}_slugos = "${sysconfdir}/resolv.conf ${sysconfdir}/fstab ${sysconfdir}/hostname"




_______________________________________________
Openembedded-devel mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel


--
Guo Hongruan, Embedded Linux Consultant
Skype: camelguo
Twitter: camelguo
http://www.gulessoft.com

_______________________________________________
Openembedded-devel mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel

Reply via email to