added coreutils 5.3.0
authorMarcin Juszkiewicz <hrw@openembedded.org>
Tue, 27 Sep 2005 19:53:10 +0000 (19:53 +0000)
committerOpenEmbedded Project <openembedded-devel@lists.openembedded.org>
Tue, 27 Sep 2005 19:53:10 +0000 (19:53 +0000)
packages/coreutils/coreutils-5.3.0/.mtn2git_empty [new file with mode: 0644]
packages/coreutils/coreutils-5.3.0/install-cross.patch [new file with mode: 0644]
packages/coreutils/coreutils-5.3.0/man.patch [new file with mode: 0644]
packages/coreutils/coreutils_5.3.0.bb [new file with mode: 0644]

diff --git a/packages/coreutils/coreutils-5.3.0/.mtn2git_empty b/packages/coreutils/coreutils-5.3.0/.mtn2git_empty
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/packages/coreutils/coreutils-5.3.0/install-cross.patch b/packages/coreutils/coreutils-5.3.0/install-cross.patch
new file mode 100644 (file)
index 0000000..98ba3d9
--- /dev/null
@@ -0,0 +1,27 @@
+--- src/install.c~     2003-08-09 18:46:45.000000000 +0100
++++ src/install.c      2004-03-27 18:38:45.000000000 +0000
+@@ -516,7 +516,14 @@
+ strip (const char *path)
+ {
+   int status;
+-  pid_t pid = fork ();
++  pid_t pid;
++  char *strip_name;
++
++  strip_name = getenv ("STRIP");
++  if (strip_name == NULL)
++    strip_name = "strip";
++
++  pid = fork ();
+   switch (pid)
+     {
+@@ -524,7 +531,7 @@
+       error (EXIT_FAILURE, errno, _("fork system call failed"));
+       break;
+     case 0:                   /* Child. */
+-      execlp ("strip", "strip", path, NULL);
++      execlp (strip_name, "strip", path, NULL);
+       error (EXIT_FAILURE, errno, _("cannot run strip"));
+       break;
+     default:                  /* Parent. */
diff --git a/packages/coreutils/coreutils-5.3.0/man.patch b/packages/coreutils/coreutils-5.3.0/man.patch
new file mode 100644 (file)
index 0000000..5060e4f
--- /dev/null
@@ -0,0 +1,42 @@
+
+#
+# Patch managed by http://www.holgerschurig.de/patcher.html
+#
+
+--- coreutils-5.3.0/configure.ac~man
++++ coreutils-5.3.0/configure.ac
+@@ -237,6 +237,20 @@
+ AM_GNU_GETTEXT([external], [need-ngettext])
+ AM_GNU_GETTEXT_VERSION(0.13.1)
++AC_MSG_CHECKING([whether to build man pages])
++AC_ARG_WITH(manpages, 
++      AS_HELP_STRING([--with-manpages],
++              [Enable building of manpages (default=yes)]),
++      [cu_cv_build_manpages=$enableval],
++      [cu_cv_build_manpages=yes])
++# help2man doesn't work when crosscompiling, as it needs to run the
++# binary that was built.
++if test x"$cross_compiling" = x"yes"; then
++  cu_cv_build_manpages=no
++fi
++AC_MSG_RESULT($cu_cv_build_manpages)
++AM_CONDITIONAL(ENABLE_MANPAGES, test x"$cu_cv_build_manpages" = x"yes")
++
+ AC_CONFIG_FILES(
+   Makefile
+   doc/Makefile
+--- coreutils-5.3.0/Makefile.am~man
++++ coreutils-5.3.0/Makefile.am
+@@ -1,6 +1,11 @@
+ ## Process this file with automake to produce Makefile.in -*-Makefile-*-
++if ENABLE_MANPAGES
+ SUBDIRS = lib src doc man po tests
++else
++SUBDIRS = lib src doc po tests
++endif
++
+ EXTRA_DIST = Makefile.cfg Makefile.maint GNUmakefile \
+   .kludge-stamp .prev-version THANKS-to-translators THANKStt.in \
+   .x-sc_space_tab .x-sc_sun_os_names \
diff --git a/packages/coreutils/coreutils_5.3.0.bb b/packages/coreutils/coreutils_5.3.0.bb
new file mode 100644 (file)
index 0000000..8fbe69b
--- /dev/null
@@ -0,0 +1,85 @@
+DESCRIPTION = "A collection of core GNU utilities."
+LICENSE = "GPL"
+SECTION = "base"
+RREPLACES = "textutils shellutils fileutils"
+RPROVIDES = "textutils shellutils fileutils"
+PR = "r0"
+
+SRC_URI = "ftp://alpha.gnu.org/gnu/coreutils/coreutils-${PV}.tar.bz2 \
+           file://install-cross.patch;patch=1;pnum=0 \
+           file://man.patch;patch=1"
+
+inherit autotools
+
+# [ gets a special treatment and is not included in this
+bindir_progs = "basename cksum comm csplit cut dir dircolors dirname du \
+               env expand expr factor fmt fold groups head hostid id install \
+               join link logname md5sum mkfifo nice nl nohup od paste pathchk \
+               pinky pr printenv printf ptx readlink seq sha1sum shred sort \
+               split stat sum tac tail tee test tr tsort tty unexpand uniq \
+               unlink users vdir wc who whoami yes \
+               "
+
+# hostname gets a special treatment and is not included in this
+base_bindir_progs = "cat chgrp chmod chown cp date dd echo false kill \
+                    ln ls mkdir mknod mv pwd rm rmdir sleep stty sync touch \
+                    true uname \
+                    "
+
+sbindir_progs= "chroot"
+
+do_install () {
+       autotools_do_install
+       
+       # Renaming the utilities that should go in /usr/bin
+       for i in ${bindir_progs}; do mv ${D}${bindir}/$i ${D}${bindir}/$i.${PN}; done
+       
+       # Renaming and moving the utilities that should go in /bin (FHS)
+       install -d ${D}${base_bindir}
+       for i in ${base_bindir_progs}; do mv ${D}${bindir}/$i ${D}${base_bindir}/$i.${PN}; done
+
+       # Renaming and moving the utilities that should go in /usr/sbin (FHS)
+       install -d ${D}${sbindir}
+       for i in ${sbindir_progs}; do mv ${D}${bindir}/$i ${D}${sbindir}/$i.${PN}; done
+
+       # [ requires special handling because [.coreutils will cause the sed stuff
+       # in update-alternatives to fail, therefore use lbracket - the name used
+       # for the actual source file.
+       mv ${D}${bindir}/[ ${D}${bindir}/lbracket.${PN}
+       # hostname and uptime separated. busybox's versions are preferred
+       mv ${D}${bindir}/hostname ${D}${base_bindir}/hostname.${PN}
+       mv ${D}${bindir}/uptime ${D}${bindir}/uptime.${PN}
+                                       
+}
+
+pkg_postinst_${PN} () {
+       # The utilities in /usr/bin
+       for i in ${bindir_progs}; do update-alternatives --install ${bindir}/$i $i $i.${PN} 100; done
+
+       # The utilities in /bin
+       for i in ${base_bindir_progs}; do update-alternatives --install ${base_bindir}/$i $i $i.${PN} 100; done
+       
+       # The utilities in /usr/sbin
+       for i in ${sbindir_progs}; do update-alternatives --install ${sbindir}/$i $i $i.${PN} 100; done
+
+       # Special cases. uptime and hostname is broken, prefer busybox's version. [ needs to be treated separately. 
+       update-alternatives --install ${bindir}/uptime uptime uptime.${PN} 10
+       update-alternatives --install ${base_bindir}/hostname hostname hostname.${PN} 10
+       update-alternatives --install '${bindir}/[' '[' 'lbracket.${PN}' 100
+}
+
+pkg_prerm_${PN} () {
+       # The utilities in /usr/bin
+       for i in ${bindir_progs}; do update-alternatives --remove $i $i.${PN}; done
+
+       # The utilities in /bin
+       for i in ${base_bindir_progs}; do update-alternatives --remove $i $i.${PN}; done
+
+       # The utilities in /usr/sbin
+       for i in ${sbindir_progs}; do update-alternatives --remove $i $i.${PN}; done
+
+       # The special cases
+       update-alternatives --remove hostname hostname.${PN}
+       update-alternatives --remove uptime uptime.${PN}
+       update-alternatives --remove '[' 'lbracket.${PN}'
+}