r2384 - in trunk/oe/packages: . coreutils coreutils/coreutils-5.3.0

shoragan at sita.openmoko.org shoragan at sita.openmoko.org
Mon Jul 23 14:52:49 CEST 2007


Author: shoragan
Date: 2007-07-23 14:52:48 +0200 (Mon, 23 Jul 2007)
New Revision: 2384

Added:
   trunk/oe/packages/coreutils/
   trunk/oe/packages/coreutils/coreutils-5.3.0/
   trunk/oe/packages/coreutils/coreutils-5.3.0/futimens.patch
   trunk/oe/packages/coreutils/coreutils-5.3.0/install-cross.patch
   trunk/oe/packages/coreutils/coreutils-5.3.0/man.patch
   trunk/oe/packages/coreutils/coreutils-5.3.0/rename-tee-for-glibc2.5.patch
   trunk/oe/packages/coreutils/coreutils-5.3.0/uptime-pow-lib.patch
   trunk/oe/packages/coreutils/coreutils-native_5.3.0.bb
   trunk/oe/packages/coreutils/coreutils.inc
   trunk/oe/packages/coreutils/coreutils_5.3.0.bb
Log:
Pull from current OE to fix name conflict with current glibc (futimens).


Added: trunk/oe/packages/coreutils/coreutils-5.3.0/futimens.patch
===================================================================
--- trunk/oe/packages/coreutils/coreutils-5.3.0/futimens.patch	2007-07-23 08:15:36 UTC (rev 2383)
+++ trunk/oe/packages/coreutils/coreutils-5.3.0/futimens.patch	2007-07-23 12:52:48 UTC (rev 2384)
@@ -0,0 +1,44 @@
+Index: coreutils-5.3.0/lib/utimens.c
+===================================================================
+--- coreutils-5.3.0.orig/lib/utimens.c	2005-01-03 22:19:15.000000000 +0000
++++ coreutils-5.3.0/lib/utimens.c	2007-07-01 19:12:32.000000000 +0000
+@@ -55,8 +55,8 @@
+    If TIMESPEC is null, set the time stamps to the current time.  */
+ 
+ int
+-futimens (int fd ATTRIBUTE_UNUSED,
+-	  char const *file, struct timespec const timespec[2])
++gl_futimens (int fd ATTRIBUTE_UNUSED,
++	     char const *file, struct timespec const timespec[2])
+ {
+   /* There's currently no interface to set file timestamps with
+      nanosecond resolution, so do the best we can, discarding any
+@@ -117,5 +117,5 @@
+ int
+ utimens (char const *file, struct timespec const timespec[2])
+ {
+-  return futimens (-1, file, timespec);
++  return gl_futimens (-1, file, timespec);
+ }
+Index: coreutils-5.3.0/lib/utimens.h
+===================================================================
+--- coreutils-5.3.0.orig/lib/utimens.h	2004-11-23 20:54:33.000000000 +0000
++++ coreutils-5.3.0/lib/utimens.h	2007-07-01 19:12:37.000000000 +0000
+@@ -1,3 +1,3 @@
+ #include "timespec.h"
+-int futimens (int, char const *, struct timespec const [2]);
++int gl_futimens (int, char const *, struct timespec const [2]);
+ int utimens (char const *, struct timespec const [2]);
+Index: coreutils-5.3.0/src/touch.c
+===================================================================
+--- coreutils-5.3.0.orig/src/touch.c	2004-11-23 20:54:35.000000000 +0000
++++ coreutils-5.3.0/src/touch.c	2007-07-01 19:11:52.000000000 +0000
+@@ -191,7 +191,7 @@
+       t = timespec;
+     }
+ 
+-  ok = (futimens (fd, file, t) == 0);
++  ok = (gl_futimens (fd, file, t) == 0);
+   if (fd != -1)
+     ok &= (close (fd) == 0);
+ 

Added: trunk/oe/packages/coreutils/coreutils-5.3.0/install-cross.patch
===================================================================
--- trunk/oe/packages/coreutils/coreutils-5.3.0/install-cross.patch	2007-07-23 08:15:36 UTC (rev 2383)
+++ trunk/oe/packages/coreutils/coreutils-5.3.0/install-cross.patch	2007-07-23 12:52:48 UTC (rev 2384)
@@ -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. */

Added: trunk/oe/packages/coreutils/coreutils-5.3.0/man.patch
===================================================================
--- trunk/oe/packages/coreutils/coreutils-5.3.0/man.patch	2007-07-23 08:15:36 UTC (rev 2383)
+++ trunk/oe/packages/coreutils/coreutils-5.3.0/man.patch	2007-07-23 12:52:48 UTC (rev 2384)
@@ -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 \

Added: trunk/oe/packages/coreutils/coreutils-5.3.0/rename-tee-for-glibc2.5.patch
===================================================================
--- trunk/oe/packages/coreutils/coreutils-5.3.0/rename-tee-for-glibc2.5.patch	2007-07-23 08:15:36 UTC (rev 2383)
+++ trunk/oe/packages/coreutils/coreutils-5.3.0/rename-tee-for-glibc2.5.patch	2007-07-23 12:52:48 UTC (rev 2384)
@@ -0,0 +1,33 @@
+Glibc 2.5 has a function called tee which conflicts with the same function
+in coreutils. This patch renames the function to tee_files (as is done in
+the newer coreutils versions.)
+
+--- coreutils-5.3.0/src/tee.c	2006/10/23 07:35:00	1.1
++++ coreutils-5.3.0/src/tee.c	2006/10/23 07:35:16
+@@ -31,7 +31,7 @@
+ 
+ #define AUTHORS "Mike Parker", "Richard M. Stallman", "David MacKenzie"
+ 
+-static bool tee (int nfiles, const char **files);
++static bool tee_files (int nfiles, const char **files);
+ 
+ /* If true, append to output files rather than truncating them. */
+ static bool append;
+@@ -121,7 +121,7 @@
+   /* Do *not* warn if tee is given no file arguments.
+      POSIX requires that it work when given no arguments.  */
+ 
+-  ok = tee (argc - optind, (const char **) &argv[optind]);
++  ok = tee_files (argc - optind, (const char **) &argv[optind]);
+   if (close (STDIN_FILENO) != 0)
+     error (EXIT_FAILURE, errno, _("standard input"));
+ 
+@@ -133,7 +133,7 @@
+    Return true if successful.  */
+ 
+ static bool
+-tee (int nfiles, const char **files)
++tee_files (int nfiles, const char **files)
+ {
+   FILE **descriptors;
+   char buffer[BUFSIZ];

Added: trunk/oe/packages/coreutils/coreutils-5.3.0/uptime-pow-lib.patch
===================================================================
--- trunk/oe/packages/coreutils/coreutils-5.3.0/uptime-pow-lib.patch	2007-07-23 08:15:36 UTC (rev 2383)
+++ trunk/oe/packages/coreutils/coreutils-5.3.0/uptime-pow-lib.patch	2007-07-23 12:52:48 UTC (rev 2384)
@@ -0,0 +1,11 @@
+--- coreutils-5.3.0/src/Makefile.am.orig	2005-09-27 22:34:35.659272058 -0700
++++ coreutils-5.3.0/src/Makefile.am	2005-09-27 22:34:39.403507668 -0700
+@@ -74,7 +74,7 @@
+ sleep_LDADD = $(nanosec_libs)
+ tail_LDADD = $(nanosec_libs)
+ 
+-uptime_LDADD = $(LDADD) $(GETLOADAVG_LIBS)
++uptime_LDADD = $(LDADD) $(POW_LIB) $(GETLOADAVG_LIBS)
+ 
+ su_LDADD = $(LDADD) $(LIB_CRYPT)
+ 

Added: trunk/oe/packages/coreutils/coreutils-native_5.3.0.bb
===================================================================
--- trunk/oe/packages/coreutils/coreutils-native_5.3.0.bb	2007-07-23 08:15:36 UTC (rev 2383)
+++ trunk/oe/packages/coreutils/coreutils-native_5.3.0.bb	2007-07-23 12:52:48 UTC (rev 2384)
@@ -0,0 +1,7 @@
+SECTION = "base"
+
+FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/coreutils-${PV}"
+S = "${WORKDIR}/coreutils-${PV}"
+
+require coreutils_${PV}.bb
+inherit native

Added: trunk/oe/packages/coreutils/coreutils.inc
===================================================================
--- trunk/oe/packages/coreutils/coreutils.inc	2007-07-23 08:15:36 UTC (rev 2383)
+++ trunk/oe/packages/coreutils/coreutils.inc	2007-07-23 12:52:48 UTC (rev 2384)
@@ -0,0 +1,7 @@
+DESCRIPTION = "A collection of core GNU utilities."
+LICENSE = "GPL"
+SECTION = "base"
+RREPLACES = "textutils shellutils fileutils"
+RPROVIDES = "textutils shellutils fileutils"
+
+inherit autotools

Added: trunk/oe/packages/coreutils/coreutils_5.3.0.bb
===================================================================
--- trunk/oe/packages/coreutils/coreutils_5.3.0.bb	2007-07-23 08:15:36 UTC (rev 2383)
+++ trunk/oe/packages/coreutils/coreutils_5.3.0.bb	2007-07-23 12:52:48 UTC (rev 2384)
@@ -0,0 +1,83 @@
+require coreutils.inc
+
+PR = "r2"
+
+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 \
+           file://rename-tee-for-glibc2.5.patch;patch=1 \
+           file://uptime-pow-lib.patch;patch=1 \
+           file://futimens.patch;patch=1"
+
+# [ 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}'
+}





More information about the commitlog mailing list