From mboxrd@z Thu Jan 1 00:00:00 1970 From: Zack Weinberg To: law@cygnus.com Cc: gcc@gcc.gnu.org, gcc-patches@gcc.gnu.org Subject: Re: FreeBSD 4.0 Date: Thu, 30 Sep 1999 18:02:00 -0000 Message-ID: <199909201715.KAA17676@zack.bitmover.com> References: <1934.937846286@upchuck.cygnus.com> X-SW-Source: 1999-09n/msg00841.html Message-ID: <19990930180200.bExVaVmHDbASArx6hrGKG8aXo5qufllBXmHff2zXK_4@z> Jeffrey A Law wrote: > In message < 199909201624.JAA16030@zack.bitmover.com >you write: > > Jeffrey A Law wrote: > > > In message < 19990915011710.B25121@relay.nuxi.com >you write: > > > > There are no GCC headers in my base system. We've never needed the > m, > > and > > > > there are copyright issues anyway. > > > What copyright issues? > > > > There is no explicit license/copyright statement at the top of > > stddef.h or stdarg.h or whatever. Someone could easily have been > > misled into thinking that they were GPLed and would infect programs. > > > > We should probably put something like the libstdc++ "special > > exception" paragraph at the top. > Sigh. There are times when the laxness of the previous 10 years really > bugs me. This is one of them. > > Start with the template in libgcc2.c and change it to deal with header > files instead of libraries. > > Do you want to do this, or should I (or if someone else wants it, speak up). Patch appended. We still have to deal with float.h and limits.h which are generated. I personally think we should dump those files, but that's a larger issue. zw 1999-09-20 10:13 -0700 Zack Weinberg * iso646.h, stdarg.h, stdbool.h, stddef.h, varargs.h: Add copyright notice and special exception to GPL. =================================================================== Index: iso646.h --- iso646.h 1998/12/16 21:19:18 1.2 +++ iso646.h 1999/09/20 17:11:58 @@ -1,5 +1,36 @@ -/* Macros for C programs written in national variants of ISO 646. */ +/* Copyright (C) 1997, 1999 Free Software Foundation, Inc. +This file is part of GNU CC. + +GNU CC is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU CC is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU CC; see the file COPYING. If not, write to +the Free Software Foundation, 59 Temple Place - Suite 330, +Boston, MA 02111-1307, USA. */ + +/* As a special exception, if you include this header file into source + files compiled by GCC, this header file does not by itself cause + the resulting executable to be covered by the GNU General Public + License. This exception does not however invalidate any other + reasons why the executable file might be covered by the GNU General + Public License. */ + +/* + * ISO C Standard: 7.9 Alternative spellings + */ + +#ifndef _ISO646_H +#define _ISO646_H + #ifndef __cplusplus #define and && #define and_eq &= @@ -12,4 +43,6 @@ #define or_eq |= #define xor ^ #define xor_eq ^= +#endif + #endif =================================================================== Index: stdarg.h --- stdarg.h 1999/09/14 23:30:44 1.10 +++ stdarg.h 1999/09/20 17:11:58 @@ -1,9 +1,33 @@ -/* stdarg.h for GNU. +/* Copyright (C) 1989, 1997, 1998, 1999 Free Software Foundation, Inc. - Note that the type used in va_arg is supposed to match the - actual type **after default promotions**. - Thus, va_arg (..., short) is not valid. */ +This file is part of GNU CC. + +GNU CC is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU CC is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU CC; see the file COPYING. If not, write to +the Free Software Foundation, 59 Temple Place - Suite 330, +Boston, MA 02111-1307, USA. */ +/* As a special exception, if you include this header file into source + files compiled by GCC, this header file does not by itself cause + the resulting executable to be covered by the GNU General Public + License. This exception does not however invalidate any other + reasons why the executable file might be covered by the GNU General + Public License. */ + +/* + * ISO C Standard: 7.15 Variable arguments + */ + #ifndef _STDARG_H #ifndef _ANSI_STDARG_H_ #ifndef __need___va_list @@ -22,6 +46,10 @@ typedef __builtin_va_list __gnuc_va_list /* Define the standard macros for the user, if this invocation was from the user program. */ #ifdef _STDARG_H + +/* Note that the type used in va_arg is supposed to match the + actual type **after default promotions**. + Thus, va_arg (..., short) is not valid. */ #define va_start(v,l) __builtin_stdarg_start(&(v),l) #define va_end __builtin_va_end =================================================================== Index: stdbool.h --- stdbool.h 1999/08/29 15:46:14 1.3 +++ stdbool.h 1999/09/20 17:11:58 @@ -1,6 +1,35 @@ -/* stdbool.h for GNU. */ -#ifndef __STDBOOL_H__ -#define __STDBOOL_H__ 1 +/* Copyright (C) 1998, 1999 Free Software Foundation, Inc. + +This file is part of GNU CC. + +GNU CC is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU CC is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU CC; see the file COPYING. If not, write to +the Free Software Foundation, 59 Temple Place - Suite 330, +Boston, MA 02111-1307, USA. */ + +/* As a special exception, if you include this header file into source + files compiled by GCC, this header file does not by itself cause + the resulting executable to be covered by the GNU General Public + License. This exception does not however invalidate any other + reasons why the executable file might be covered by the GNU General + Public License. */ + +/* + * ISO C Standard: 7.16 Boolean type and values + */ + +#ifndef _STDBOOL_H +#define _STDBOOL_H /* The type `_Bool' must promote to `int' or `unsigned int'. The constants `true' and `false' must have the value 0 and 1 respectively. */ =================================================================== Index: stddef.h --- stddef.h 1998/12/16 21:19:25 1.4 +++ stddef.h 1999/09/20 17:11:58 @@ -1,3 +1,32 @@ +/* Copyright (C) 1989, 1997, 1998, 1999 Free Software Foundation, Inc. + +This file is part of GNU CC. + +GNU CC is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU CC is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU CC; see the file COPYING. If not, write to +the Free Software Foundation, 59 Temple Place - Suite 330, +Boston, MA 02111-1307, USA. */ + +/* As a special exception, if you include this header file into source + files compiled by GCC, this header file does not by itself cause + the resulting executable to be covered by the GNU General Public + License. This exception does not however invalidate any other + reasons why the executable file might be covered by the GNU General + Public License. */ + +/* + * ISO C Standard: 7.17 Common definitions + */ #if (!defined(_STDDEF_H) && !defined(_STDDEF_H_) && !defined(_ANSI_STDDEF_H) \ && !defined(__STDDEF_H__)) \ || defined(__need_wchar_t) || defined(__need_size_t) \ =================================================================== Index: varargs.h --- varargs.h 1999/09/14 23:30:44 1.12 +++ varargs.h 1999/09/20 17:11:58 @@ -1,4 +1,28 @@ -/* Record that this is varargs.h; this turns off stdarg.h. */ +/* Copyright (C) 1989, 1997, 1998, 1999 Free Software Foundation, Inc. + +This file is part of GNU CC. + +GNU CC is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU CC is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU CC; see the file COPYING. If not, write to +the Free Software Foundation, 59 Temple Place - Suite 330, +Boston, MA 02111-1307, USA. */ + +/* As a special exception, if you include this header file into source + files compiled by GCC, this header file does not by itself cause + the resulting executable to be covered by the GNU General Public + License. This exception does not however invalidate any other + reasons why the executable file might be covered by the GNU General + Public License. */ #ifndef _VARARGS_H #define _VARARGS_H