From owner-svn-src-head@freebsd.org Sun Jun 17 15:07:47 2018 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AC4491022592; Sun, 17 Jun 2018 15:07:47 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 08683718D7; Sun, 17 Jun 2018 15:07:46 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id w5HF7ihg060647; Sun, 17 Jun 2018 08:07:44 -0700 (PDT) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id w5HF7gdT060646; Sun, 17 Jun 2018 08:07:42 -0700 (PDT) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201806171507.w5HF7gdT060646@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r335270 - head/lib/liby In-Reply-To: <201806170315.w5H3FHOD058428@pdx.rh.CN85.dnsmgr.net> To: rgrimes@freebsd.org Date: Sun, 17 Jun 2018 08:07:42 -0700 (PDT) CC: Juli Mallett , Eitan Adler , src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 17 Jun 2018 15:07:47 -0000 > > > > > > >> 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 > > > > > > >> > > > > > > >> 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 > > > > > > >> __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 > > > > > > >> > > > > > > >> -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 > > > > > > >> __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 > > > > > > >> > > > > > > >> +#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