[syslinux] [PATCH 01/23] com32/chain: update licenses

Shao Miller sha0.miller at gmail.com
Wed Nov 7 16:58:50 PST 2012


On 11/5/2012 19:32, Michal Soltys wrote:
>
> diff --git a/com32/chain/Makefile b/com32/chain/Makefile
> index 9d398a8..ef0929e 100644
> --- a/com32/chain/Makefile
> +++ b/com32/chain/Makefile
> @@ -1,7 +1,9 @@
>   ## -----------------------------------------------------------------------
>   ##
> -##   Copyright 2001-2010 H. Peter Anvin - All Rights Reserved
> -##   Copyright 2010 Michal Soltys
> +##   Copyright 2003-2009 H. Peter Anvin - All Rights Reserved
> +##   Copyright 2009-2010 Intel Corporation; author: H. Peter Anvin
> +##   Copyright 2010 Shao Miller
> +##   Copyright 2010-2012 Michal Soltys
>   ##
>   ##   This program is free software; you can redistribute it and/or modify
>   ##   it under the terms of the GNU General Public License as published by

What happened to the 2001 (and 2002), here?  Is that a simple 
copy'n'paste error, or does the Makefile not actually date back to 2001?

> diff --git a/com32/chain/chain.h b/com32/chain/chain.h
> index fc481bc..1d08b0e 100644
> --- a/com32/chain/chain.h
> +++ b/com32/chain/chain.h
> @@ -1,3 +1,18 @@
> +/* ----------------------------------------------------------------------- *
> + *
> + *   Copyright 2003-2009 H. Peter Anvin - All Rights Reserved
> + *   Copyright 2009-2010 Intel Corporation; author: H. Peter Anvin
> + *   Copyright 2010 Shao Miller

I think that the extent of your rewrite even before this series of 
patches probably warrants removal of my copyright from several files, so 
please feel free, if you recognize that 95% of the code is yours and 
hpa's. :)  Or don't bother; whichever works for you.

> + *   Copyright 2010-2012 Michal Soltys
> + *
> + *   This program 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, Inc., 53 Temple Place Ste 330,
> + *   Boston MA 02111-1307, USA; either version 2 of the License, or
> + *   (at your option) any later version; incorporated herein by reference.
> + *
> + * ----------------------------------------------------------------------- */
> +
>   #ifndef _COM32_CHAIN_CHAIN_H
>   #define _COM32_CHAIN_CHAIN_H
>

I know that it's almost ubiquitous (including in the Syslinux 
code-base), but I must [weakly] protest.  From C99, 7.1.3p1, first item:

   "All identifiers that begin with an underscore and either an 
uppercase letter or another underscore are always reserved for any use."

p2 has:

   "...If the program declares or defines an identifier in a context in 
which it is reserved (other than as allowed by 7.1.4), or defines a 
reserved identifier as a macro name, the behavior is undefined."

Now a C "implementation" (in many cases) could be roughly considered to 
be "computer + operating system + C translator + C libraries."  Since 
Syslinux implements portions of "operating system" and "C libraries," it 
can somewhat be justified.  However, if GCC (as "C translator") or a 
future C Standard disagrees, we have to change it.

Anyway, that's not a criticism of your code!  You are merely sticking 
with what much of the rest of the code-base does.

- Shao Miller



More information about the Syslinux mailing list