Date: Sun, 17 Jun 2018 08:07:42 -0700 (PDT) From: "Rodney W. Grimes" <freebsd@pdx.rh.CN85.dnsmgr.net> To: rgrimes@freebsd.org Cc: Juli Mallett <juli@northcloak.com>, Eitan Adler <eadler@freebsd.org>, src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r335270 - head/lib/liby Message-ID: <201806171507.w5HF7gdT060646@pdx.rh.CN85.dnsmgr.net> In-Reply-To: <201806170315.w5H3FHOD058428@pdx.rh.CN85.dnsmgr.net>
next in thread | previous in thread | raw e-mail | index | archive | help
> > > > > > >> Author: eadler > > > > > > >> Date: Sat Jun 16 23:50:34 2018 > > > > > > >> New Revision: 335270 > > > > > > >> URL: https://svnweb.freebsd.org/changeset/base/335270 > > > > > > >> > > > > > > >> Log: > > > > > > >> liby: build with WARNS=6 > > > > > > >> > > > > > > >> Tested with amd64, arm64, i386, mips > > > > > > >> > > > > > > >> Added: > > > > > > >> head/lib/liby/yyerror.h (contents, props changed) > > Just says added, not copied from some file, so VCS here does > nothing for saying where this file came from. > > > > > > > >> Modified: > > > > > > >> head/lib/liby/Makefile > > > > > > >> head/lib/liby/main.c > > > > > > >> head/lib/liby/yyerror.c > > > > > > >> > > > > > > >> Modified: head/lib/liby/Makefile > > > > > > >> ============================================================ > > > > > ================== > > > > > > >> --- head/lib/liby/Makefile Sat Jun 16 23:49:22 2018 > > > > > (r335269) > > > > > > >> +++ head/lib/liby/Makefile Sat Jun 16 23:50:34 2018 > > > > > (r335270) > > > > > > >> @@ -5,6 +5,4 @@ LIB= y > > > > > > >> SRCS= main.c yyerror.c > > > > > > >> NO_PIC= > > > > > > >> > > > > > > >> -WARNS?= 1 > > > > > > >> - > > > > > > >> .include <bsd.lib.mk> > > > > > > >> > > > > > > >> Modified: head/lib/liby/main.c > > > > > > >> ============================================================ > > > > > ================== > > > > > > >> --- head/lib/liby/main.c Sat Jun 16 23:49:22 2018 > > > > > (r335269) > > > > > > >> +++ head/lib/liby/main.c Sat Jun 16 23:50:34 2018 > > > > > (r335270) > > > > > > >> @@ -32,16 +32,17 @@ > > > > > > >> #include <sys/cdefs.h> > > > > > > >> __FBSDID("$FreeBSD$"); > > > > > > >> > > > > > > >> -#ifndef lint > > > > > > >> +#if defined(LIBC_SCCS) && !defined(lint) > > > > > > >> static char sccsid[] = "@(#)main.c 8.1 (Berkeley) 6/4/93"; > > > > > > >> -#endif /* not lint */ > > > > > > >> +#endif /* LIBC_SCCS and not lint */ > > > > > > >> > > > > > > >> #include <stdlib.h> > > > > > > >> > > > > > > >> -int yyparse(void); > > > > > > >> +#include "yyerror.h" > > > > > > >> > > > > > > >> int > > > > > > >> main(void) > > > > > > >> { > > > > > > >> + > > > > > > >> exit(yyparse()); > > > > > > >> } > > > > > > >> > > > > > > >> Modified: head/lib/liby/yyerror.c > > > > > > >> ============================================================ > > > > > ================== > > > > > > >> --- head/lib/liby/yyerror.c Sat Jun 16 23:49:22 2018 > > > > > (r335269) > > > > > > >> +++ head/lib/liby/yyerror.c Sat Jun 16 23:50:34 2018 > > > > > (r335270) > > > > > > >> @@ -32,16 +32,18 @@ > > > > > > >> #include <sys/cdefs.h> > > > > > > >> __FBSDID("$FreeBSD$"); > > > > > > >> > > > > > > >> -#ifndef lint > > > > > > >> +#if defined(LIBC_SCCS) && !defined(lint) > > > > > > >> static char sccsid[] = "@(#)yyerror.c 8.1 (Berkeley) > > > 6/4/93"; > > > > > > >> -#endif /* not lint */ > > > > > > >> +#endif /* LIBC_SCCS and not lint */ > > > > > > >> > > > > > > >> #include <stdio.h> > > > > > > >> > > > > > > >> +#include "yyerror.h" > > > > > > >> + > > > > > > >> int > > > > > > >> -yyerror(msg) > > > > > > >> -char *msg; > > > > > > >> +yyerror(const char *msg) > > > > > > >> { > > > > > > >> - (void)fprintf(stderr, "%s\n", msg); > > > > > > >> + > > > > > > >> + fprintf(stderr, "%s\n", msg); > > > > > > >> return(0); > > > > > > >> } > > > > > > >> > > > > > > >> Added: head/lib/liby/yyerror.h > > > > > > >> ============================================================ > > > > > ================== > > > > > > >> --- /dev/null 00:00:00 1970 (empty, because file is newly added) > > > > > > >> +++ head/lib/liby/yyerror.h Sat Jun 16 23:50:34 2018 > > > > > (r335270) > > > > > > >> @@ -0,0 +1,36 @@ > > > > > > > > > > > > > > Where did this file come from???? > > > > > > > > > > > > I added a header file instead of keeping the prototypes in the .c > > > > > > files. Is something wrong with that? > > > > > > > > > > If you extracted part of a c file and placed it in a .h file, you > > > > > should add a > > > > > * from: pathname > > > > > comment to this yyerror.h > > > > > > > > > > > > > Rod, > > > > > > > > It's two prototypes. For functions that are extern. Including the UCB > > > > copyright isn't even necessary, but seems reasonable. > > > > > > Actually including a 1990/1993 UCB copyright is -exactly- why > > > the from: line should be there. If he had assigned his own > > > copyright to this I wouldn't of batted an eye, but he didn't, > > > which means he copied it from someplace. I would like to have > > > that someplace clearly documented as has always historically > > > been done when copying parts of or whole files around the > > > BSD source tree. See style(9), specifically: After any copyright header, there is a blank line, and the $FreeBSD$ for non C/C++ language source files. Version control system ID tags should only exist once in a file (unlike in this one). Non-C/C++ source files follow the example above, while C/C++ source files follow the one below. All VCS (version control system) revision identification in files obtained from elsewhere should be maintained, including, where applicable, multiple IDs showing a file's history. In general, do not edit foreign IDs or their infrastructure. Unless otherwise wrapped (such as ``#if defined(LIBC_SCCS)''), enclose both in ``#if 0 ... #endif'' to hide any uncompilable bits and to keep the IDs out of object files. Only add ``From: '' in front of foreign VCS IDs if the file is renamed. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ For this purpose the copyright has been copied from one file and placed into another file, and that qualifies as a "rename". All UCB copyrights should be trackable to a RCS/SCCSID. I am embarrassed that I had to actual go hunt for this, since it is a style(9) item it should be well known and used at all times, I should of known exactly where this text was. If you know of places that we copied the UCB copyright into another file and did not maintain this VCS history chain I would very much like to know of them so that we might post fact correct this. Regards, Rod > > > > > > His commit message also lacked any details about this move > > > of code, it just said, build with WARNS=6. > > > > > > > > > > > No, people do not need to add "from:" notes when adding a header to > > > provide > > > > prototypes for extern functions. > > > > > > They do if they infact copied a portion of another file... > > > > > > I don't think this has been a FreeBSD norm since at least the late '90s for > > both trivial and nontrivial refactoring. We have good version control. > > The version control says 0 about where this file came from, > the commit message should of. > > > If this is the expectation, I'd love it if you could find somewhere it's > > written down, or if it's not, start an FCP to get it written down. It > > seems important for this to be codified if people should expect to get > > called out on a mailing list for not doing it. It is codified. > So all things must be written now? I do not think that holds true > for most things. Perhaps this has died, but I would still like to > see this file marked as derived from to explain the attribution to > UCB, as that also is a bit abnormal to do without saying why your > attributing it to them. > > I do know that from: was written, someplace in one of the guides, > I shall strive to find it. Found. -- Rod Grimes rgrimes@freebsd.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201806171507.w5HF7gdT060646>