On Fri, Feb 04, 2000 at 11:40:34AM +0200, Ruslan Ermilov wrote: > > > Might I advice some more time before we actually do something? > > > > What's all this rush-it-in before anyone can actually fix the larger > > problem? > > > I'm positive about this as well. > The main reason for the backout isn't the xinstall problem, as this is a non-problem (it only affects a small window of -current users). The reason for adopting a fall back solution it that it is not clear that setflags/getflags is the best choice of function name for manipulating file flags as it's a bit too generic a name. Whilst we're debating this point there's no point in having them as library calls for 4.0. We can return to this point later, maybe when someone else wants to use them in another tool. On the way, we'll fix the xinstall problem and give you guys time and space to work the build/install glue post 4.0. There's no need to rush a fix in. I'm going to wait until tomorrow evening to commit this so that everyone gets a chance to read this and understand what's going on. (That's 24 - 36 hours from now.) The patch is included as an attachement. Joe -- Josef Karthauser FreeBSD: Take the red pill and we'll show you just how Technical Manager deep the rabbit hole goes. (http://www.uk.freebsd.org) Pavilion Internet plc. [[EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED]]
Index: bin/ls/Makefile =================================================================== RCS file: /home/ncvs/src/bin/ls/Makefile,v retrieving revision 1.8 diff -u -r1.8 Makefile --- bin/ls/Makefile 2000/01/27 21:16:49 1.8 +++ bin/ls/Makefile 2000/02/04 10:42:18 @@ -3,6 +3,7 @@ PROG= ls -SRCS= cmp.c ls.c print.c util.c +SRCS= cmp.c setflags.c ls.c print.c util.c +.PATH: ${.CURDIR}/../../lib/libc/gen .include <bsd.prog.mk> Index: bin/ls/ls.c =================================================================== RCS file: /home/ncvs/src/bin/ls/ls.c,v retrieving revision 1.31 diff -u -r1.31 ls.c --- bin/ls/ls.c 2000/01/27 21:16:49 1.31 +++ bin/ls/ls.c 2000/02/04 10:42:18 @@ -74,6 +74,8 @@ */ #define STRBUF_SIZEOF(t) (1 + CHAR_BIT * sizeof(t) / 3 + 1) +extern char *getflags __P((u_long, char *)); + static void display __P((FTSENT *, FTSENT *)); static u_quad_t makenines __P((u_long)); static int mastercmp __P((const FTSENT **, const FTSENT **)); Index: bin/rm/Makefile =================================================================== RCS file: /home/ncvs/src/bin/rm/Makefile,v retrieving revision 1.11 diff -u -r1.11 Makefile --- bin/rm/Makefile 2000/01/27 21:16:50 1.11 +++ bin/rm/Makefile 2000/02/04 10:42:18 @@ -2,8 +2,10 @@ # $FreeBSD: src/bin/rm/Makefile,v 1.11 2000/01/27 21:16:50 joe Exp $ PROG= rm +SRCS= rm.c setflags.c LINKS= ${BINDIR}/rm ${BINDIR}/unlink MLINKS= rm.1 unlink.1 +.PATH: ${.CURDIR}/../../lib/libc/gen .include <bsd.prog.mk> Index: bin/rm/rm.c =================================================================== RCS file: /home/ncvs/src/bin/rm/rm.c,v retrieving revision 1.28 diff -u -r1.28 rm.c --- bin/rm/rm.c 2000/01/27 21:16:50 1.28 +++ bin/rm/rm.c 2000/02/04 10:42:18 @@ -61,6 +61,8 @@ #include <sysexits.h> #include <unistd.h> +extern char *getflags __P((u_long, char *)); + int dflag, eval, fflag, iflag, Pflag, vflag, Wflag, stdin_ok; uid_t uid; Index: include/unistd.h =================================================================== RCS file: /home/ncvs/src/include/unistd.h,v retrieving revision 1.34 diff -u -r1.34 unistd.h --- include/unistd.h 2000/02/01 15:55:52 1.34 +++ include/unistd.h 2000/02/04 10:42:18 @@ -134,7 +134,6 @@ #endif int getdomainname __P((char *, int)); int getdtablesize __P((void)); -char *getflags __P((u_long, char *)); int getgrouplist __P((const char *, int, int *, int *)); long gethostid __P((void)); int gethostname __P((char *, int)); @@ -182,7 +181,6 @@ int setdomainname __P((const char *, int)); int setegid __P((gid_t)); int seteuid __P((uid_t)); -int setflags __P((char **, u_long *, u_long *)); int setgroups __P((int, const gid_t *)); void sethostid __P((long)); int sethostname __P((const char *, int)); Index: lib/libc/gen/Makefile.inc =================================================================== RCS file: /home/ncvs/src/lib/libc/gen/Makefile.inc,v retrieving revision 1.61 diff -u -r1.61 Makefile.inc --- lib/libc/gen/Makefile.inc 2000/01/28 07:14:52 1.61 +++ lib/libc/gen/Makefile.inc 2000/02/04 10:42:20 @@ -20,7 +20,7 @@ nlist.c nrand48.c ntp_gettime.c opendir.c \ pause.c popen.c psignal.c pwcache.c raise.c readdir.c rewinddir.c \ scandir.c seed48.c seekdir.c semconfig.c semctl.c semget.c semop.c \ - setdomainname.c setflags.c sethostname.c setjmperr.c setmode.c shmat.c \ + setdomainname.c sethostname.c setjmperr.c setmode.c shmat.c \ shmctl.c shmdt.c shmget.c siginterrupt.c siglist.c signal.c \ sigsetops.c sleep.c srand48.c stringlist.c \ sysconf.c sysctl.c sysctlbyname.c \ @@ -45,8 +45,7 @@ glob.3 initgroups.3 isinf.3 \ ldexp.3 lockf.3 modf.3 msgctl.3 msgget.3 msgrcv.3 msgsnd.3 \ nice.3 nlist.3 pause.3 popen.3 psignal.3 pwcache.3 \ - raise.3 rand48.3 scandir.3 setflags.3 \ - setjmp.3 setmode.3 siginterrupt.3 \ + raise.3 rand48.3 scandir.3 setjmp.3 setmode.3 siginterrupt.3 \ signal.3 sigsetops.3 sleep.3 stringlist.3 \ sysconf.3 sysctl.3 syslog.3 tcgetpgrp.3 \ tcsendbreak.3 tcsetattr.3 tcsetpgrp.3 time.3 times.3 timezone.3 \ @@ -101,7 +100,6 @@ rand48.3 mrand48.3 rand48.3 nrand48.3 rand48.3 seed48.3 \ rand48.3 srand48.3 MLINKS+=scandir.3 alphasort.3 -MLINKS+=setflags.3 getflags.3 MLINKS+=setjmp.3 _longjmp.3 setjmp.3 _setjmp.3 setjmp.3 longjmp.3 \ setjmp.3 longjmperr.3 setjmp.3 longjmperror.3 \ setjmp.3 siglongjmp.3 setjmp.3 sigsetjmp.3 Index: libexec/ftpd/Makefile =================================================================== RCS file: /home/ncvs/src/libexec/ftpd/Makefile,v retrieving revision 1.31 diff -u -r1.31 Makefile --- libexec/ftpd/Makefile 2000/01/27 09:28:19 1.31 +++ libexec/ftpd/Makefile 2000/02/04 10:42:21 @@ -14,8 +14,8 @@ DPADD= ${LIBSKEY} ${LIBMD} ${LIBCRYPT} ${LIBUTIL} LSDIR= ../../bin/ls -.PATH: ${.CURDIR}/${LSDIR} -SRCS+= ls.c cmp.c print.c util.c +.PATH: ${.CURDIR}/${LSDIR} ${.CURDIR}/../../lib/libc/gen +SRCS+= ls.c cmp.c print.c setflags.c util.c CFLAGS+=-DINTERNAL_LS -Dmain=ls_main -I${.CURDIR}/${LSDIR} .if defined(NOPAM) Index: usr.bin/chflags/Makefile =================================================================== RCS file: /home/ncvs/src/usr.bin/chflags/Makefile,v retrieving revision 1.7 diff -u -r1.7 Makefile --- usr.bin/chflags/Makefile 2000/01/27 21:16:55 1.7 +++ usr.bin/chflags/Makefile 2000/02/04 10:42:22 @@ -5,5 +5,7 @@ PROG= chflags CFLAGS+=-Wall +.PATH: ${.CURDIR}/../../lib/libc/gen +SRCS= chflags.c setflags.c .include <bsd.prog.mk> Index: usr.bin/chflags/chflags.c =================================================================== RCS file: /home/ncvs/src/usr.bin/chflags/chflags.c,v retrieving revision 1.6 diff -u -r1.6 chflags.c --- usr.bin/chflags/chflags.c 2000/01/27 21:16:55 1.6 +++ usr.bin/chflags/chflags.c 2000/02/04 10:42:22 @@ -56,6 +56,8 @@ #include <string.h> #include <unistd.h> +extern u_long setflags __P((char **, u_long *, u_long *)); + void usage __P((void)); int Index: usr.bin/find/Makefile =================================================================== RCS file: /home/ncvs/src/usr.bin/find/Makefile,v retrieving revision 1.7 diff -u -r1.7 Makefile --- usr.bin/find/Makefile 2000/01/27 21:16:56 1.7 +++ usr.bin/find/Makefile 2000/02/04 10:42:22 @@ -2,6 +2,7 @@ # $FreeBSD: src/usr.bin/find/Makefile,v 1.7 2000/01/27 21:16:56 joe Exp $ PROG= find -SRCS= find.c function.c ls.c main.c misc.c operator.c option.c +SRCS= find.c function.c ls.c main.c misc.c operator.c option.c setflags.c +.PATH: ${.CURDIR}/../../lib/libc/gen .include <bsd.prog.mk> Index: usr.bin/find/function.c =================================================================== RCS file: /home/ncvs/src/usr.bin/find/function.c,v retrieving revision 1.21 diff -u -r1.21 function.c --- usr.bin/find/function.c 2000/01/27 21:16:56 1.21 +++ usr.bin/find/function.c 2000/02/04 10:42:22 @@ -71,6 +71,8 @@ } \ } +extern u_long setflags __P((char **, u_long *, u_long *)); + static PLAN *palloc __P((enum ntype, int (*) __P((PLAN *, FTSENT *)))); /* Index: usr.bin/xinstall/Makefile =================================================================== RCS file: /home/ncvs/src/usr.bin/xinstall/Makefile,v retrieving revision 1.10 diff -u -r1.10 Makefile --- usr.bin/xinstall/Makefile 2000/01/27 21:16:58 1.10 +++ usr.bin/xinstall/Makefile 2000/02/04 10:42:22 @@ -2,6 +2,8 @@ # $FreeBSD: src/usr.bin/xinstall/Makefile,v 1.10 2000/01/27 21:16:58 joe Exp $ PROG= xinstall +SRCS= setflags.c xinstall.c +.PATH: ${.CURDIR}/../../lib/libc/gen MAN1= install.1 install: maninstall Index: usr.sbin/mtree/Makefile =================================================================== RCS file: /home/ncvs/src/usr.sbin/mtree/Makefile,v retrieving revision 1.14 diff -u -r1.14 Makefile --- usr.sbin/mtree/Makefile 2000/01/27 21:16:59 1.14 +++ usr.sbin/mtree/Makefile 2000/02/04 10:42:22 @@ -2,9 +2,9 @@ # $FreeBSD: src/usr.sbin/mtree/Makefile,v 1.14 2000/01/27 21:16:59 joe Exp $ PROG= mtree -SRCS= compare.c crc.c create.c misc.c mtree.c spec.c verify.c +SRCS= compare.c crc.c create.c misc.c mtree.c spec.c verify.c setflags.c MAN8= mtree.8 -.PATH: ${.CURDIR}/../../usr.bin/cksum +.PATH: ${.CURDIR}/../../usr.bin/cksum ${.CURDIR}/../../lib/libc/gen .if !defined(WORLD) DPADD+= ${LIBMD}