Commit 6378cac4 authored by Yegor Yefremov's avatar Yegor Yefremov Committed by Peter Korsgaard
Browse files

util-linux: convert to autotarget and bump to 2.19.1



[Peter: fix deps, restructure, add unshare]
Signed-off-by: default avatarChih-Min Chao <cmchao@gmail.com>
Signed-off-by: default avatarYegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: default avatarPeter Korsgaard <jacmet@sunsite.dk>
parent 04d0689c
Loading
Loading
Loading
Loading
+115 −6
Original line number Diff line number Diff line
config BR2_PACKAGE_UTIL-LINUX
config BR2_PACKAGE_UTIL_LINUX
	bool "util-linux"
	select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE
	select BR2_PACKAGE_LIBINTL if BR2_NEEDS_GETTEXT_IF_LOCALE
	depends on BR2_INET_RPC
	depends on BR2_LARGEFILE
	depends on BR2_USE_WCHAR
	depends on BR2_PROGRAM_INVOCATION
	help
	  Various useful/essential Linux utilities.

@@ -10,5 +10,114 @@ config BR2_PACKAGE_UTIL-LINUX

	  http://www.kernel.org/pub/linux/utils/util-linux/

comment "util-linux requires a toolchain with RPC support"
	depends on !BR2_INET_RPC
if BR2_PACKAGE_UTIL_LINUX

############################################
# default enabled and should be disabled by
#  --disable-foo
#

config BR2_PACKAGE_UTIL_LINUX_MOUNT
	bool "build mount utilties"
	default y

config BR2_PACKAGE_UTIL_LINUX_FSCK
	bool "build \"fsck\""
	default y

config BR2_PACKAGE_UTIL_LINUX_LIBUUID
	bool "build libuuid and uuid utilities"
	default y

config BR2_PACKAGE_UTIL_LINUX_UUIDD
	bool "build \"uuidd\""
	default y

config BR2_PACKAGE_UTIL_LINUX_LIBBLKID
	bool "build libblkid and blkid utilities"
	default y

config BR2_PACKAGE_UTIL_LINUX_AGETTY
	bool "build \"agetty\""
	default y

config BR2_PACKAGE_UTIL_LINUX_CRAMFS
	bool "build \"fsck.cramfs, mkfs.cramfs\""
	default y

config BR2_PACKAGE_UTIL_LINUX_SWITCH_ROOT
	bool "build \"switch_root\""
	default y

config BR2_PACKAGE_UTIL_LINUX_PIVOT_ROOT
	bool "build \"pivot_root\""
	default y

config BR2_PACKAGE_UTIL_LINUX_FALLOCATE
	bool "build \"fallocate\""
	default y

config BR2_PACKAGE_UTIL_LINUX_UNSHARE
	bool "build \"unshare\""
	default y

config BR2_PACKAGE_UTIL_LINUX_RENAME
	bool "build \"rename\""
	default y

config BR2_PACKAGE_UTIL_LINUX_SCHEDUTILS
	bool "build \"chrt, ionice, teskset\""
	default y

config BR2_PACKAGE_UTIL_LINUX_WALL
	bool "build \"wall\""
	default y

############################################
# default disabled and should be enabled by
#  --enable-foo
#
config BR2_PACKAGE_UTIL_LINUX_ARCH
	bool "build \"arch\""
	default n

config BR2_PACKAGE_UTIL_LINUX_INIT
	bool "build \"simpleinit, shutdown, initctl\""
	default n

config BR2_PACKAGE_UTIL_LINUX_KILL
	bool "build \"kill\""
	default n

config BR2_PACKAGE_UTIL_LINUX_LAST
	bool "build \"last\""
	default n

config BR2_PACKAGE_UTIL_LINUX_MESG
	bool "build \"kill\""
	default n

config BR2_PACKAGE_UTIL_LINUX_PARTX
	bool "build \"addpart, delpart, partx\""
	default n

config BR2_PACKAGE_UTIL_LINUX_RAW
	bool "build \"raw\""
	default n

config BR2_PACKAGE_UTIL_LINUX_RESET
	bool "build \"reset\""
	default n

config BR2_PACKAGE_UTIL_LINUX_LOGIN_UTILS
	bool "build \"chfn, chsh, login, newgrp, vipw\""
	default n

config BR2_PACKAGE_UTIL_LINUX_WRITE
	bool "build \"addpart, delpart, partx\""
	default n

endif

comment "util-linux requires a toolchain with LARGEFILE/WCHAR/PROGRAM_INVOCATION support"
	depends on !(BR2_LARGEFILE && BR2_USE_WCHAR && BR2_PROGRAM_INVOCATION)
+0 −41
Original line number Diff line number Diff line
Hardcode a.out related constants

The OMAGIC, NMAGIC and ZMAGIC constants, related to the legacy a.out
binary format, are no longer available in the headers of all
architectures, due to this binary format being deprecated. For that
reason, util-linux fails to build.

We therefore take the approach used in newer versions of
util-linux-ng: hardcoding those values. See
http://git.kernel.org/?p=utils/util-linux-ng/util-linux-ng.git;a=commitdiff;h=e9eb4dad0ece03914f67f6d1ded74cfbbe694ba4

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 text-utils/more.c |    7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

Index: util-linux-2.13-pre7/text-utils/more.c
===================================================================
--- util-linux-2.13-pre7.orig/text-utils/more.c
+++ util-linux-2.13-pre7/text-utils/more.c
@@ -53,7 +53,6 @@
 #include <sys/stat.h>
 #include <sys/file.h>
 #include <sys/wait.h>
-#include <a.out.h>
 #include <locale.h>
 #include "xstrncpy.h"
 #include "nls.h"
@@ -504,9 +503,9 @@
 
 	if (fread(twobytes, 2, 1, f) == 1) {
 		switch(twobytes[0] + (twobytes[1]<<8)) {
-		case OMAGIC:	/* 0407 */
-		case NMAGIC:	/* 0410 */
-		case ZMAGIC:	/* 0413 */
+		case 0407:	/* a.out obj */
+		case 0410:	/* a.out exec */
+		case 0413:	/* a.out demand exec */
 		case 0405:
 		case 0411:
 		case 0177545:
+0 −25
Original line number Diff line number Diff line
[PATCH]: fix util-linux build without NLS support

util-linux partly supports builds without NLS support, but it forgets to
provide a dummy setlocale() macro.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
---
 include/nls.h |    4 ++++
 1 file changed, 4 insertions(+)

Index: util-linux-2.13-pre7/include/nls.h
===================================================================
--- util-linux-2.13-pre7.orig/include/nls.h
+++ util-linux-2.13-pre7/include/nls.h
@@ -19,6 +19,10 @@
 # define textdomain(Domain) /* empty */
 # define _(Text) (Text)
 # define N_(Text) (Text)
+# undef LC_ALL
+# define LC_ALL 0
+# undef setlocale
+# define setlocale(category, locale)
 #endif
 
 
+0 −429
Original line number Diff line number Diff line
[PATCH] replace susv3 legacy functions with modern equivalents

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
---
 fdisk/cfdisk.c         |    2 +-
 fdisk/fdiskbsdlabel.c  |   16 ++++++++--------
 fdisk/sfdisk.c         |   10 +++++-----
 login-utils/login.c    |    6 +++---
 login-utils/shutdown.c |    2 +-
 login-utils/ttymsg.c   |    2 +-
 login-utils/vipw.c     |    4 ++--
 login-utils/wall.c     |    2 +-
 misc-utils/logger.c    |    2 +-
 misc-utils/namei.c     |    2 +-
 misc-utils/whereis.c   |    4 ++--
 mount/mntent.c         |    4 ++--
 mount/mount.c          |    4 ++--
 mount/mount_by_label.c |    2 +-
 mount/sundries.c       |    2 +-
 mount/umount.c         |    2 +-
 partx/partx.c          |    2 +-
 text-utils/colcrt.c    |    4 ++--
 text-utils/display.c   |    2 +-
 text-utils/parse.c     |    8 ++++----
 20 files changed, 41 insertions(+), 41 deletions(-)

Index: util-linux-2.13-pre7/fdisk/fdiskbsdlabel.c
===================================================================
--- util-linux-2.13-pre7.orig/fdisk/fdiskbsdlabel.c
+++ util-linux-2.13-pre7/fdisk/fdiskbsdlabel.c
@@ -538,10 +538,10 @@
 
   /* We need a backup of the disklabel (xbsd_dlabel might have changed). */
   d = &disklabelbuffer[BSD_LABELSECTOR * SECTOR_SIZE];
-  bcopy (d, &dl, sizeof (struct xbsd_disklabel));
+  memmove (&dl, d, sizeof (struct xbsd_disklabel));
 
   /* The disklabel will be overwritten by 0's from bootxx anyway */
-  bzero (d, sizeof (struct xbsd_disklabel));
+  memset (d, 0, sizeof (struct xbsd_disklabel));
 
   snprintf (path, sizeof(path), "%s/boot%s", bootdir, dkbasename);
   if (!xbsd_get_bootstrap (path, &disklabelbuffer[xbsd_dlabel.d_secsize],
@@ -555,7 +555,7 @@
       exit ( EXIT_FAILURE );
     }
 
-  bcopy (&dl, d, sizeof (struct xbsd_disklabel));
+  memmove (d, &dl, sizeof (struct xbsd_disklabel));
 
 #if defined (__powerpc__) || defined (__hppa__)
   sector = 0;
@@ -657,7 +657,7 @@
 	struct geom g;
 
 	get_geometry (fd, &g);
-	bzero (d, sizeof (struct xbsd_disklabel));
+	memset (d, 0, sizeof (struct xbsd_disklabel));
 
 	d -> d_magic = BSD_DISKMAGIC;
 
@@ -740,8 +740,8 @@
 	if (BSD_BBSIZE != read (fd, disklabelbuffer, BSD_BBSIZE))
 		fatal (unable_to_read);
 
-	bcopy (&disklabelbuffer[BSD_LABELSECTOR * SECTOR_SIZE + BSD_LABELOFFSET],
-	       d, sizeof (struct xbsd_disklabel));
+	memmove (d, &disklabelbuffer[BSD_LABELSECTOR * SECTOR_SIZE + BSD_LABELOFFSET],
+	       sizeof (struct xbsd_disklabel));
 
 	if (d -> d_magic != BSD_DISKMAGIC || d -> d_magic2 != BSD_DISKMAGIC)
 		return 0;
@@ -776,8 +776,8 @@
   /* This is necessary if we want to write the bootstrap later,
      otherwise we'd write the old disklabel with the bootstrap.
   */
-  bcopy (d, &disklabelbuffer[BSD_LABELSECTOR * SECTOR_SIZE + BSD_LABELOFFSET],
-	 sizeof (struct xbsd_disklabel));
+  memmove (&disklabelbuffer[BSD_LABELSECTOR * SECTOR_SIZE + BSD_LABELOFFSET],
+	 d, sizeof (struct xbsd_disklabel));
 
 #if defined (__alpha__) && BSD_LABELSECTOR == 0
   alpha_bootblock_checksum (disklabelbuffer);
Index: util-linux-2.13-pre7/login-utils/ttymsg.c
===================================================================
--- util-linux-2.13-pre7.orig/login-utils/ttymsg.c
+++ util-linux-2.13-pre7/login-utils/ttymsg.c
@@ -111,7 +111,7 @@
 		if (wret >= 0) {
 			left -= wret;
 			if (iov != localiov) {
-				bcopy(iov, localiov,
+				memmove(localiov, iov,
 				    iovcnt * sizeof(struct iovec));
 				iov = localiov;
 			}
Index: util-linux-2.13-pre7/login-utils/vipw.c
===================================================================
--- util-linux-2.13-pre7.orig/login-utils/vipw.c
+++ util-linux-2.13-pre7/login-utils/vipw.c
@@ -313,8 +313,8 @@
 	bindtextdomain(PACKAGE, LOCALEDIR);
 	textdomain(PACKAGE);
 
-	bzero(tmp_file, FILENAMELEN);
-	progname = (rindex(argv[0], '/')) ? rindex(argv[0], '/') + 1 : argv[0];
+	memset(tmp_file, 0, FILENAMELEN);
+	progname = (strrchr(argv[0], '/')) ? strrchr(argv[0], '/') + 1 : argv[0];
 	if (!strcmp(progname, "vigr")) {
 		program = VIGR;
 		xstrncpy(orig_file, GROUP_FILE, sizeof(orig_file));
Index: util-linux-2.13-pre7/misc-utils/logger.c
===================================================================
--- util-linux-2.13-pre7.orig/misc-utils/logger.c
+++ util-linux-2.13-pre7/misc-utils/logger.c
@@ -198,7 +198,7 @@
 			} else {
 				if (p != buf)
 					*p++ = ' ';
-				bcopy(*argv++, p, len);
+				memmove(p, *argv++, len);
 				*(p += len) = '\0';
 			}
 		}
Index: util-linux-2.13-pre7/misc-utils/namei.c
===================================================================
--- util-linux-2.13-pre7.orig/misc-utils/namei.c
+++ util-linux-2.13-pre7/misc-utils/namei.c
@@ -242,7 +242,7 @@
 		 * call namei()
 		 */
 		
-		bzero(sym, BUFSIZ);
+		memset(sym, 0, BUFSIZ);
 		if(readlink(buf, sym, BUFSIZ) == -1){
 		    (void)printf(_(" ? problems reading symlink %s - %s (%d)\n"), buf, ERR);
 		    return;
Index: util-linux-2.13-pre7/text-utils/colcrt.c
===================================================================
--- util-linux-2.13-pre7.orig/text-utils/colcrt.c
+++ util-linux-2.13-pre7/text-utils/colcrt.c
@@ -252,8 +252,8 @@
 		}
 		putwchar('\n');
 	}
-	bcopy(page[ol], page, (267 - ol) * 132 * sizeof(wchar_t));
-	bzero(page[267- ol], ol * 132 * sizeof(wchar_t));
+	memmove(page, page[ol], (267 - ol) * 132 * sizeof(wchar_t));
+	memset(page[267- ol], 0, ol * 132 * sizeof(wchar_t));
 	outline -= ol;
 	outcol = 0;
 	first = 1;
Index: util-linux-2.13-pre7/fdisk/sfdisk.c
===================================================================
--- util-linux-2.13-pre7.orig/fdisk/sfdisk.c
+++ util-linux-2.13-pre7/fdisk/sfdisk.c
@@ -40,7 +40,7 @@
 #include <unistd.h>		/* read, write */
 #include <fcntl.h>		/* O_RDWR */
 #include <errno.h>		/* ERANGE */
-#include <string.h>		/* index() */
+#include <string.h>		/* strchr() */
 #include <ctype.h>
 #include <getopt.h>
 #include <sys/ioctl.h>
@@ -1709,12 +1709,12 @@
 	eof = 1;
 	return RD_EOF;
     }
-    if (!(lp = index(lp, '\n')))
+    if (!(lp = strchr(lp, '\n')))
       fatal(_("long or incomplete input line - quitting\n"));
     *lp = 0;
 
     /* remove comments, if any */
-    if ((lp = index(line+2, '#')) != 0)
+    if ((lp = strchr(line+2, '#')) != 0)
       *lp = 0;
 
     /* recognize a few commands - to be expanded */
@@ -1724,7 +1724,7 @@
     }
 
     /* dump style? - then bad input is fatal */
-    if ((ip = index(line+2, ':')) != 0) {
+    if ((ip = strchr(line+2, ':')) != 0) {
 	struct dumpfld *d;
 
       nxtfld:
@@ -2491,7 +2491,7 @@
 
     if (argc < 1)
       fatal(_("no command?\n"));
-    if ((progn = rindex(argv[0], '/')) == NULL)
+    if ((progn = strrchr(argv[0], '/')) == NULL)
       progn = argv[0];
     else
       progn++;
Index: util-linux-2.13-pre7/login-utils/login.c
===================================================================
--- util-linux-2.13-pre7.orig/login-utils/login.c
+++ util-linux-2.13-pre7/login-utils/login.c
@@ -337,7 +337,7 @@
      */
     gethostname(tbuf, sizeof(tbuf));
     xstrncpy(thishost, tbuf, sizeof(thishost));
-    domain = index(tbuf, '.');
+    domain = strchr(tbuf, '.');
     
     username = tty_name = hostname = NULL;
     fflag = hflag = pflag = 0;
@@ -356,7 +356,7 @@
 	      exit(1);
 	  }
 	  hflag = 1;
-	  if (domain && (p = index(optarg, '.')) &&
+	  if (domain && (p = strchr(optarg, '.')) &&
 	      strcasecmp(p, domain) == 0)
 	    *p = 0;
 
@@ -1101,7 +1101,7 @@
 	childArgv[childArgc++] = buff;
     } else {
 	tbuf[0] = '-';
-	xstrncpy(tbuf + 1, ((p = rindex(pwd->pw_shell, '/')) ?
+	xstrncpy(tbuf + 1, ((p = strrchr(pwd->pw_shell, '/')) ?
 			   p + 1 : pwd->pw_shell),
 		sizeof(tbuf)-1);
 	
Index: util-linux-2.13-pre7/login-utils/shutdown.c
===================================================================
--- util-linux-2.13-pre7.orig/login-utils/shutdown.c
+++ util-linux-2.13-pre7/login-utils/shutdown.c
@@ -279,7 +279,7 @@
 			if (fgets (line, sizeof(line), fp) != NULL &&
 			    strncasecmp (line, "HALT_ACTION", 11) == 0 &&
 			    iswhitespace(line[11])) {
-				p = index(line, '\n');
+				p = strchr(line, '\n');
 				if (p)
 					*p = 0;		/* strip final '\n' */
 				p = line+11;
Index: util-linux-2.13-pre7/misc-utils/whereis.c
===================================================================
--- util-linux-2.13-pre7.orig/misc-utils/whereis.c
+++ util-linux-2.13-pre7/misc-utils/whereis.c
@@ -323,14 +323,14 @@
 	char dirbuf[1024];
 	struct stat statbuf;
 
-	dd = index(dir, '*');
+	dd = strchr(dir, '*');
 	if (!dd)
 		goto noglob;
 
 	l = strlen(dir);
 	if (l < sizeof(dirbuf)) { 	/* refuse excessively long names */
 		strcpy (dirbuf, dir);
-		d = index(dirbuf, '*');
+		d = strchr(dirbuf, '*');
 		*d = 0;
 		dirp = opendir(dirbuf);
 		if (dirp == NULL)
Index: util-linux-2.13-pre7/mount/mntent.c
===================================================================
--- util-linux-2.13-pre7.orig/mount/mntent.c
+++ util-linux-2.13-pre7/mount/mntent.c
@@ -158,7 +158,7 @@
 			return NULL;
 
 		mfp->mntent_lineno++;
-		s = index (buf, '\n');
+		s = strchr (buf, '\n');
 		if (s == NULL) {
 			/* Missing final newline?  Otherwise extremely */
 			/* long line - assume file was corrupted */
@@ -166,7 +166,7 @@
 				fprintf(stderr, _("[mntent]: warning: no final "
 					"newline at the end of %s\n"),
 					mfp->mntent_file);
-				s = index (buf, 0);
+				s = strchr (buf, 0);
 			} else {
 				mfp->mntent_errs = 1;
 				goto err;
Index: util-linux-2.13-pre7/mount/mount.c
===================================================================
--- util-linux-2.13-pre7.orig/mount/mount.c
+++ util-linux-2.13-pre7/mount/mount.c
@@ -488,11 +488,11 @@
 
    /* Accept a comma-separated list of types, and try them one by one */
    /* A list like "nonfs,.." indicates types not to use */
-   if (*types && strncmp(*types, "no", 2) && index(*types,',')) {
+   if (*types && strncmp(*types, "no", 2) && strchr(*types,',')) {
       char *t = strdup(*types);
       char *p;
 
-      while((p = index(t,',')) != NULL) {
+      while((p = strchr(t,',')) != NULL) {
 	 *p = 0;
 	 args.type = *types = t;
 	 if(do_mount_syscall (&args) == 0)
Index: util-linux-2.13-pre7/mount/mount_by_label.c
===================================================================
--- util-linux-2.13-pre7.orig/mount/mount_by_label.c
+++ util-linux-2.13-pre7/mount/mount_by_label.c
@@ -213,7 +213,7 @@
 	    fseek(procpt, 0, SEEK_SET);
 
 	    while (fgets(line, sizeof(line), procpt)) {
-		if (!index(line, '\n'))
+		if (!strchr(line, '\n'))
 			break;
 
 		if (sscanf (line, " %d %d %d %[^\n ]",
Index: util-linux-2.13-pre7/mount/sundries.c
===================================================================
--- util-linux-2.13-pre7.orig/mount/sundries.c
+++ util-linux-2.13-pre7/mount/sundries.c
@@ -138,7 +138,7 @@
 	     if (strncmp(p, type, len) == 0 &&
 		 (p[len] == 0 || p[len] == ','))
 		     return !no;
-	     p = index(p,',');
+	     p = strchr(p,',');
 	     if (!p)
 		     break;
 	     p++;
Index: util-linux-2.13-pre7/mount/umount.c
===================================================================
--- util-linux-2.13-pre7.orig/mount/umount.c
+++ util-linux-2.13-pre7/mount/umount.c
@@ -332,7 +332,7 @@
 			if (res < 0)
 				umnt_err2 = errno;
 			/* Do not complain about remote NFS mount points */
-			if (errno == ENOENT && index(spec, ':'))
+			if (errno == ENOENT && strchr(spec, ':'))
 				umnt_err2 = 0;
 		}
 	}
Index: util-linux-2.13-pre7/partx/partx.c
===================================================================
--- util-linux-2.13-pre7.orig/partx/partx.c
+++ util-linux-2.13-pre7/partx/partx.c
@@ -130,7 +130,7 @@
 	case 'n':
 		p = optarg;
 		lower = atoi(p);
-		p = index(p, '-');
+		p = strchr(p, '-');
 		if (p)
 			upper = atoi(p+1);
 		else
Index: util-linux-2.13-pre7/text-utils/display.c
===================================================================
--- util-linux-2.13-pre7.orig/text-utils/display.c
+++ util-linux-2.13-pre7/text-utils/display.c
@@ -163,7 +163,7 @@
 	pr->cchar[0] = 's';
 	pr->cchar[1] = 0;
 	for (p1 = pr->fmt; *p1 != '%'; ++p1);
-	for (p2 = ++p1; *p1 && index(spec, *p1); ++p1);
+	for (p2 = ++p1; *p1 && strchr(spec, *p1); ++p1);
 	while ((*p2++ = *p1++) != 0) ;
 }
 
Index: util-linux-2.13-pre7/text-utils/parse.c
===================================================================
--- util-linux-2.13-pre7.orig/text-utils/parse.c
+++ util-linux-2.13-pre7/text-utils/parse.c
@@ -64,7 +64,7 @@
 		exit(1);
 	}
 	while (fgets(buf, sizeof(buf), fp)) {
-		if ((p = index(buf, '\n')) == NULL) {
+		if ((p = strchr(buf, '\n')) == NULL) {
 			(void)fprintf(stderr, _("hexdump: line too long.\n"));
 			while ((ch = getchar()) != '\n' && ch != EOF);
 			continue;
@@ -171,7 +171,7 @@
 			 * skip any special chars -- save precision in
 			 * case it's a %s format.
 			 */
-			while (index(spec + 1, *++fmt));
+			while (strchr(spec + 1, *++fmt));
 			if (*fmt == '.' && isdigit((unsigned char)*++fmt)) {
 				prec = atoi(fmt);
 				while (isdigit((unsigned char)*++fmt));
@@ -244,10 +244,10 @@
 			if (fu->bcnt) {
 				sokay = USEBCNT;
 				/* skip to conversion character */
-				for (++p1; index(spec, *p1); ++p1);
+				for (++p1; strchr(spec, *p1); ++p1);
 			} else {
 				/* skip any special chars, field width */
-				while (index(spec + 1, *++p1));
+				while (strchr(spec + 1, *++p1));
 				if (*p1 == '.' &&
 				    isdigit((unsigned char)*++p1)) {
 					sokay = USEPREC;
Index: util-linux-2.13-pre7/fdisk/cfdisk.c
===================================================================
--- util-linux-2.13-pre7.orig/fdisk/cfdisk.c
+++ util-linux-2.13-pre7/fdisk/cfdisk.c
@@ -348,7 +348,7 @@
 /* Some libc's have their own basename() */
 static char *
 my_basename(char *devname) {
-    char *s = rindex(devname, '/');
+    char *s = strrchr(devname, '/');
     return s ? s+1 : devname;
 }
 
Index: util-linux-2.13-pre7/login-utils/wall.c
===================================================================
--- util-linux-2.13-pre7.orig/login-utils/wall.c
+++ util-linux-2.13-pre7/login-utils/wall.c
@@ -87,7 +87,7 @@
         textdomain(PACKAGE);
 
 	progname = argv[0];
-	p = rindex(progname, '/');
+	p = strrchr(progname, '/');
 	if (p)
 	     progname = p+1;
 
+16 −0
Original line number Diff line number Diff line
Signed-off-by: Khem Raj <raj.khem@gmail.com>

Index: util-linux-2.19.1/configure.ac
===================================================================
--- util-linux-2.19.1.orig/configure.ac
+++ util-linux-2.19.1/configure.ac
@@ -250,7 +250,7 @@ esac


 AC_MSG_CHECKING(whether program_invocation_short_name is defined)
-AC_TRY_COMPILE([#include <argp.h>],
+AC_TRY_COMPILE([#include <errno.h>],
                [program_invocation_short_name = "test";],
                AC_DEFINE(HAVE_PROGRAM_INVOCATION_SHORT_NAME, 1,
                          [Define if program_invocation_short_name is defined])
Loading