docs/copyright-extractor.txt
author davelam
Mon, 15 Mar 2010 02:59:51 +0000
branchgnome-2-28
changeset 18663 a66b3e99c95a
parent 12730 52c895f47fa4
permissions -rw-r--r--
Nevada b136
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
11894
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
     1
Contents:
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
     2
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
     3
1. The copyright-extractor script
11920
laca
parents: 11895
diff changeset
     4
2. Using the script
laca
parents: 11895
diff changeset
     5
3. Adding copyright files to spec files
11894
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
     6
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
     7
-----------------------------------------------------------------------------
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
     8
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
     9
1. The copyright-extractor script
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    10
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    11
The copyright-extractor script can be used to find copyright
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    12
and licensing comments in source files.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    13
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    14
The script looks at C, C++, Java, Python, Perl and shell script
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    15
files (based on file name) and finds all comments that appear
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    16
in the file before actual code starts.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    17
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    18
Then it finds identical comments.  This works for some modules,
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    19
where standard comment blocks are used, however even in those
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    20
modules, the authors and copyright holders may be different in
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    21
each module.  So the next step is trying to merge the licenses.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    22
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    23
Consider these 2 headers:
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    24
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    25
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    26
/* ATK -  Accessibility Toolkit
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    27
 * Copyright 2007 Sun Microsystems Inc.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    28
 *
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    29
 * This library is free software; you can redistribute it and/or
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    30
 * modify it under the terms of the GNU Library General Public
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    31
 * License as published by the Free Software Foundation; either
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    32
 * version 2 of the License, or (at your option) any later version.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    33
 *
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    34
 * This library is distributed in the hope that it will be useful,
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    35
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    36
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    37
 * Library General Public License for more details.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    38
 *
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    39
 * You should have received a copy of the GNU Library General Public
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    40
 * License along with this library; if not, write to the
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    41
 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    42
 * Boston, MA 02111-1307, USA.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    43
 */
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    44
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    45
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    46
/* ATK -  Accessibility Toolkit
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    47
 * Copyright 2001 Sun Microsystems Inc.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    48
 *
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    49
 * This library is free software; you can redistribute it and/or
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    50
 * modify it under the terms of the GNU Lesser General Public
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    51
 * License as published by the Free Software Foundation; either
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    52
 * version 2 of the License, or (at your option) any later version.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    53
 *
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    54
 * This library is distributed in the hope that it will be useful,
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    55
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    56
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    57
 * Lesser General Public License for more details.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    58
 *
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    59
 * You should have received a copy of the GNU Lesser General Public
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    60
 * License along with this library; if not, write to the
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    61
 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    62
 * Boston, MA 02111-1307, USA.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    63
 */
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    64
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    65
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    66
The only difference is the copyright year.  The merged license will
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    67
be:
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    68
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    69
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    70
 ATK -  Accessibility Toolkit
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    71
 Copyright 2001 Sun Microsystems Inc.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    72
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    73
 Copyright 2007 Sun Microsystems Inc.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    74
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    75
 This library is free software; you can redistribute it and/or
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    76
 modify it under the terms of the GNU Lesser General Public
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    77
 License as published by the Free Software Foundation; either
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    78
 version 2 of the License, or (at your option) any later version.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    79
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    80
 This library is distributed in the hope that it will be useful,
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    81
 but WITHOUT ANY WARRANTY; without even the implied warranty of
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    82
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    83
 Lesser General Public License for more details.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    84
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    85
 You should have received a copy of the GNU Lesser General Public
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    86
 License along with this library; if not, write to the
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    87
 Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    88
 Boston, MA 02111-1307, USA.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    89
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    90
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    91
There are usually bigger differences between comments.  Merging
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    92
only takes place if at least 10 lines match. There may be many more
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    93
authors and copyright holders and additional comments at the end
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    94
of the license comments.  This can sometimes cause weird results.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    95
In general, the fewer files checked, the better the results.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    96
In the case of something like SUNWgnome-base-libs, I recommend
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    97
extracting the licenses for each component (atk, glib, gtk, pango,
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    98
cairo, ...) separately and manually merging them.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
    99
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   100
In all cases, the output must be carefully reviewed, edited
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   101
and the unnecessary lines deleted.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   102
11960
laca
parents: 11920
diff changeset
   103
Copyright notices should appear at the beginning of each license
laca
parents: 11920
diff changeset
   104
block (as per Sun guidelines).  When you find copyright notices
laca
parents: 11920
diff changeset
   105
that only differ in the year or the addition of an email address,
laca
parents: 11920
diff changeset
   106
it's safe to merge them.  Examples:
laca
parents: 11920
diff changeset
   107
laca
parents: 11920
diff changeset
   108
if you find things like this:
laca
parents: 11920
diff changeset
   109
laca
parents: 11920
diff changeset
   110
  Copyright (C) 2003, 2006 Red Hat, Inc.
laca
parents: 11920
diff changeset
   111
  Copyright (C) 2004, 2005 Red Hat, Inc.
laca
parents: 11920
diff changeset
   112
  Copyright (C) 2003, 2004, 2007 Red Hat, Inc.
laca
parents: 11920
diff changeset
   113
  Copyright (C) 2003, 2004, 2005 Red Hat, Inc.
laca
parents: 11920
diff changeset
   114
  Copyright (C) 2003, 2004 Red Hat, Inc.
laca
parents: 11920
diff changeset
   115
  Copyright (C) 2002-2006 Red Hat Inc.
laca
parents: 11920
diff changeset
   116
  Copyright (C) 2002, 2003, 2006 Red Hat, Inc.
laca
parents: 11920
diff changeset
   117
  Copyright (C) 2002, 2003, 2005 Red Hat Inc.
laca
parents: 11920
diff changeset
   118
  Copyright (C) 2002, 2003, 2004, 2006 Red Hat Inc.
laca
parents: 11920
diff changeset
   119
  Copyright (C) 2002, 2003, 2004, 2005 Red Hat, Inc.
laca
parents: 11920
diff changeset
   120
  Copyright (C) 2002, 2003, 2004 Red Hat Inc.
laca
parents: 11920
diff changeset
   121
  Copyright (C) 2002, 2006 Red Hat Inc.
laca
parents: 11920
diff changeset
   122
  Copyright (C) 2002, 2005 Red Hat Inc.
laca
parents: 11920
diff changeset
   123
  Copyright (C) 2002, 2004 Red Hat Inc.
laca
parents: 11920
diff changeset
   124
  Copyright (C) 2002, 2003 Red Hat, Inc.
laca
parents: 11920
diff changeset
   125
  Copyright (C) 2007 Red Hat Inc.
laca
parents: 11920
diff changeset
   126
  Copyright (C) 2006 Red Hat, Inc.
laca
parents: 11920
diff changeset
   127
  Copyright (C) 2005 Red Hat, Inc.
laca
parents: 11920
diff changeset
   128
  Copyright (C) 2004 Red Hat, Inc.
laca
parents: 11920
diff changeset
   129
  Copyright (C) 2003 Red Hat, Inc.
laca
parents: 11920
diff changeset
   130
  Copyright (C) 2003 Red Hat, Inc.
laca
parents: 11920
diff changeset
   131
laca
parents: 11920
diff changeset
   132
consolidate this down to:
laca
parents: 11920
diff changeset
   133
12730
52c895f47fa4 2008-06-24 Damien Carbery <[email protected]>
dcarbery
parents: 11960
diff changeset
   134
  Copyright (C) 2002-2007 Red Hat, Inc.
11960
laca
parents: 11920
diff changeset
   135
laca
parents: 11920
diff changeset
   136
Or in this case:
laca
parents: 11920
diff changeset
   137
laca
parents: 11920
diff changeset
   138
  Copyright (C) 2007, Jamie McCracken 
laca
parents: 11920
diff changeset
   139
  Copyright (C) 2007, Jamie McCracken <[email protected]>
laca
parents: 11920
diff changeset
   140
 
laca
parents: 11920
diff changeset
   141
it's enought to keep the latter, it's clearly the same person.
laca
parents: 11920
diff changeset
   142
11895
laca
parents: 11894
diff changeset
   143
Note that if the source file contains only a reference to a file
laca
parents: 11894
diff changeset
   144
not easily  accessible to the reader of the package copyright file
laca
parents: 11894
diff changeset
   145
(e.g., the example below with a reference to a file that must be
laca
parents: 11894
diff changeset
   146
ftp'ed), you will need to include the text from the COPYING file
laca
parents: 11894
diff changeset
   147
that is referenced:
laca
parents: 11894
diff changeset
   148
laca
parents: 11894
diff changeset
   149
 /* (C) 1998-2002 Red Hat, Inc. -- Licensing details are in the COPYING
laca
parents: 11894
diff changeset
   150
    file accompanying popt source distributions, available from
laca
parents: 11894
diff changeset
   151
    ftp://ftp.rpm.org/pub/rpm/dist */
laca
parents: 11894
diff changeset
   152
11894
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   153
If you suspect that something went wrong during the smart
11920
laca
parents: 11895
diff changeset
   154
merge (the output looks bogus) or the merges result in weird
laca
parents: 11895
diff changeset
   155
license texts even if you run the script subdirectory by
laca
parents: 11895
diff changeset
   156
subdirectory, you can use the -r (or --raw) option.  This
laca
parents: 11895
diff changeset
   157
causes the script to only unify identical comments.  In this
laca
parents: 11895
diff changeset
   158
mode does not attempt to do the "smart merge".
11894
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   159
11920
laca
parents: 11895
diff changeset
   160
There's also -g (or --gpl) option that can be used to detect
laca
parents: 11895
diff changeset
   161
if any of the licenses in the output appears to be LGPL or GPL,
laca
parents: 11895
diff changeset
   162
in which case it puts Sun's standard disclaimer about the choice
laca
parents: 11895
diff changeset
   163
of GPLv2.
11894
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   164
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   165
The -c (or --copyright-first) option copies the copyright
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   166
statements and author names to the beginning of each license
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   167
block, as required by Sun guidelines.  This option only works
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   168
if the copyright lines don't extent to multiple lines, e.g.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   169
the following will break badly:
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   170
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   171
   Copyright (c) yeah Some Company, Inc
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   172
   All rights reserved.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   173
   Use is subject to license terms.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   174
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   175
   Authors:
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   176
	[email protected]
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   177
11920
laca
parents: 11895
diff changeset
   178
The result will be that the Copyright line is moved, but the
11894
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   179
rest of the lines stay where they were.  I would say that
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   180
this option is less that useful.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   181
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   182
The -O (or --omitted) option prints the list of files NOT read
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   183
by this script.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   184
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   185
11920
laca
parents: 11895
diff changeset
   186
2. Using the script
laca
parents: 11895
diff changeset
   187
laca
parents: 11895
diff changeset
   188
The copyright-extractor script is used for creating copyright
laca
parents: 11895
diff changeset
   189
files for SUNW packages.  Since the contributors (who are
laca
parents: 11895
diff changeset
   190
usually copyright owners) and even licenses are subject to
laca
parents: 11895
diff changeset
   191
change, this process needs to be repeated each time we update
laca
parents: 11895
diff changeset
   192
GNOME in Nevada, typically once every 6 months.
laca
parents: 11895
diff changeset
   193
laca
parents: 11895
diff changeset
   194
The recommended way to run the script is:
laca
parents: 11895
diff changeset
   195
laca
parents: 11895
diff changeset
   196
    pkgtool prep --download SUNWfoo.spec
laca
parents: 11895
diff changeset
   197
    scripts/copyright-extractor -g /path/to/BUILD/SUNWfoo-version \
laca
parents: 11895
diff changeset
   198
       > copyright.txt
laca
parents: 11895
diff changeset
   199
laca
parents: 11895
diff changeset
   200
As mentioned earlier, in the case of larger packages, it's
laca
parents: 11895
diff changeset
   201
a good idea and sometimes necessary to run the script for each
laca
parents: 11895
diff changeset
   202
component or ever each subdirectory of larger components:
laca
parents: 11895
diff changeset
   203
laca
parents: 11895
diff changeset
   204
    scripts/copyright-extractor -g /path/to/BUILD/SUNWfoo-version/libfoo \
laca
parents: 11895
diff changeset
   205
      > copyright.txt
laca
parents: 11895
diff changeset
   206
    scripts/copyright-extractor -g /path/to/BUILD/SUNWfoo-version/libbar \
laca
parents: 11895
diff changeset
   207
      >> copyright.txt
laca
parents: 11895
diff changeset
   208
    ...
laca
parents: 11895
diff changeset
   209
laca
parents: 11895
diff changeset
   210
Then, review and edit the copyright.txt file to create
laca
parents: 11895
diff changeset
   211
SUNWfoo.copyright.
laca
parents: 11895
diff changeset
   212
laca
parents: 11895
diff changeset
   213
laca
parents: 11895
diff changeset
   214
3. Adding copyright files to spec files
laca
parents: 11895
diff changeset
   215
laca
parents: 11895
diff changeset
   216
Each SUNW spec file needs a copyright file, "base" spec files
laca
parents: 11895
diff changeset
   217
don't need copyright files.
11894
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   218
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   219
Place the copyright file in spec-files/copyright/
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   220
The naming convention is SUNWpackage-name.copyright.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   221
Then edit SUNWpackage-name.spec and add
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   222
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   223
SUNW_Copyright:           %{name}.copyright
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   224
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   225
in the preamble (i.e. where Name, Version, etc. are). The subpackages
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   226
(-devel, -root, etc.) inherit this setting from the main package
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   227
so you don't need to repeat this line in the %package section.
20a4926c8fab 2008-03-24 Laszlo (Laca) Peter <[email protected]>
laca
parents:
diff changeset
   228