harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "bootjvm" <boot...@earthlink.net>
Subject Re: [general] centralization of the NOTICE, COPYRIGHT, etc files
Date Fri, 29 Sep 2006 14:40:53 GMT

A while back, Geir asked for someone to volunteer to take a
look at his first pass at gathering all of the COPYRIGHT,
LICENSE, NOTICE, and other such files from the top level of
the several Harmony directory trees that he had gathered
them into 'harmony/enhanced/trunk'.

I have taken a look at these and have summarized them below.
Following that is a short proposal as to what to do about
finishing this process that Geir started by eliminating the
redundancies while retaining the unique elements of these
files for each area.  From the Harmony SVN repository
https://svn.apache.org/repos/asf/incubator/harmony/enhanced:

trunk/
    COPYRIGHT -- contains these declarations:
        (C) Copyright 2005 Intel Corporation
        (C) Copyright 2005-2006 Intel Corporation

    INCUBATOR_NOTICE.txt
        "...Incubation is required of all newly accepted projects..."

    LICENSE
        Apache License
          Version 2.0, January 2004
            http://www.apache.org/licenses ...
              TERMS AND CONDITIONS FOR USE, REPRODUCTION, ...
                1. Definitions.  ...

    NOTICE -- re ASF License 2.0 section 4 d:  "Portions of Harmony..."
        Intel Corporation
        Internet Society RFC 3280 re X.509 Public Key Infrastructure

    THIRD_PARTY_NOTICES.txt -- regarding a number of packages:
        ICU4C version 3.4:
            ICU License - ICU 1.8.1 and later-- IBM 1995-2005
        ICU4J version 3.4:
            ICU4J 1.3.1 and later-- IBM 1995-2005
        ICU4JNI version 3.4:
            ICU4JNI 1.3.1 and later-- IBM 1995-2005
        FDLIBM version 5.2:
            Sun 2004
        ZLIB version 1.2.3:
            1995-2004 Jean-loup Gailly and Mark Adler
        Visual C++ Runtime Files:
            The file msvcr71.dll is the Microsoft(R) C Runtime Library.
            This file is redistributed from Microsoft(R) Visual
            Studio 7.1
        Bouncy Castle version 133:
            2000 - 2006 The Legion Of The Bouncy Castle
        MX4J 3.0.1:
            The MX4J License, Version 1.0
            Copyright (c) 2001-2004 by the MX4J contributors
        The Independent JPEG Group's JPEG software
            1991-1998, Thomas G. Lane
        Little CMS
            1998-2004 Marti Maria
        libpng
            2004, 2006 Glenn Randers-Pehrson
        Unicode Character Database
            1991-2005 Unicode, Inc.

classlib/trunk
    COPYRIGHT
        identical to 'trunk/COPYRIGHT' regarding
           "(C) Copyright 2005 Intel Corporation"

    LICENSE
          identical to 'trunk/LICENSE'

    NOTICE
          identical to 'trunk/NOTICE'

    README.txt
        "...Incubation is required of all newly accepted projects..."
        same as 'trunk/INCUBATOR_NOTICE.txt', plus additional information
        following)

    THIRD_PARTY_NOTICES.txt
        identical to 'trunk/THIRD_PARTY_NOTICES.txt'

classlib/trunk/modules/rmi
    COPYRIGHT
        identical to 'trunk/COPYRIGHT' regarding
           "(C) Copyright 2005-2006 Intel Corporation"

    LICENSE
        identical to 'trunk/LICENSE'

    NOTICE
        identical to 'trunk/NOTICE' portion regarding Intel Corporation


drlvm/trunk
    COPYRIGHT
        identical to 'trunk/COPYRIGHT' regarding
           "(C) Copyright 2005-2006 Intel Corporation"

    LICENSE
        identical to 'trunk/LICENSE'

    NOTICE
        identical to 'trunk/NOTICE' portion regarding Intel Corporation

jchevm
    LICENSE
        identical to 'trunk/LICENSE'

    NOTICE
        Same as 'trunk/NOTICE' portion regarding portion
        regarding, "This product includes software developed by the ASF"
        but then adds info about code derived from the SableVM project.


Here is a possible way to meet Geir's original objectives:

   (1) Make 'trunk' the focal point where all such files are gathered.


   (2) For files that are completely common between the projects, such
       as 'LICENSE', remove the copies in each directory and replace
       them in SVN with a symbolic link to the version in 'trunk'.


   (3) For files that have significant redundant content, replace the
       common portions of these files with statements referencing the
       relevant language in a like-named file in 'trunk'.  As an
       alternative, retain the language but add a reference to
       the common file.


   (4) In order to protect the integrity of the licensing agreements
       for bulk contributions, maintain their existing 'COPYRIGHT'
       files as they stand, but add a related file to 'trunk' that
       has the same exact contents.  Should the original files change,
       which is highly unlikely, since it concerns a historical event,
       then the 'trunk' version would be updated also.  (By keeping these
       files as they stand, then there can never be any question as to
       the arrangement by which that code came into the ASF, thus
       protecting all parties.)  The relevant files are:

         classlib/trunk/COPYRIGHT:  "(C) Copyright 2005 Intel Corporation"

         classlib/trunk/modules/rmi/COPYRIGHT:
                                    "(C) Copyright 2005-2006 Intel
Corporation"

         drlvm/trunk/COPYRIGHT:     "(C) Copyright 2005-2006 Intel
Corporation"

       The suggested additions become:

         trunk/COPYRIGHT.classlib:  "(C) Copyright 2005 Intel Corporation"

         trunk/COPYRIGHT.dlrvm:     "(C) Copyright 2005-2006 Intel
Corporation"

         trunk/COPYRIGHT:           remove this file

       The existing file 'trunk/COPYRIGHT' would be removed because it only
       contains the messages from the two other directories, yet does not
       state which copyright notice goes with which contribution.


   (5) The LICENSE files may be combined into one central location:

       trunk/LICENSE                The central focus and target of all
others

       classlib/trunk/LICENSE       Replaced by symbolic link to
'trunk/LICENSE'

       classlib/trunk/modules/rmi/LICENSE
                                    Replaced by symbolic link to
'trunk/LICENSE'

       drlvm/trunk/LICENSE          Replaced by symbolic link to
'trunk/LICENSE'

       jchevm/LICENSE               Replaced by symbolic link to
'trunk/LICENSE'


   (6) The NOTICE files retain their existing text, but adds a statement
such
       as, "This notice also appears in the main
'harmony/enhanced/trunk/NOTICE'
       file, where all such notices appear."

       trunk/NOTICE                 Contains a grand union of all NOTICE
files.

       classlib/trunk/NOTICE        Adds this message at the end of its text

       classlib/trunk/modules/rmi/LICENSE
                                    Adds this message at the end of its text

       drlvm/trunk/LICENSE          Adds this message at the end of its text

       jchevm/LICENSE               Adds this message at the end of its text


   (7) The THIRD_PARTY_NOTICES.txt files may be combined into one
       central location:

       trunk/THIRD_PARTY_NOTICE.txt   The central focus and target of all
others

       classlib/trunk/THIRD_PARTY_NOTICE.txt
                                    * Replaced by symbolic link to
                                        'trunk/THIRD_PARTY_NOTICES.txt'
--OR--
                                    * Add language at the end of this file
to
                                        the effect "this list is part of
                                        a project-wide list found in
                                        'trunk/THIRD_PARTY_NOTICES.txt'
                                        (Comments?)


   (8) Ad hoc changes to selected files, namely:

       classlib/trunk/README.txt    Remove language that is identical to
                                    'trunk/INCUBATOR_NOTICE.txt', then
                                    in its place, add reference to that file
                                    for such information.


   (9) All other files are unchanged, namely:

       trunk/INCUBATOR_NOTICE.txt


  (10) In _all_ such files, set 'svn propset svn:eol-style=native' to avoid
       white space differences in comparison between them and usage by all
       interested parties without wrangling with this issue.


  (11) Future bulk contributions 'harmony/enhanced/foo' would then
       follow this same general approach:

       (a) to gather all common files into 'harmony/enhanced/trunk' and
           point symbolic links to them.

       (b) Add a 'harmony/enhanced/trunk/COPYRIGHT.foo' file containing
           their prior copyright information.

       (c) Any NOTICE file would add the appropriate reference to
           'trunk/NOTICE' and extend that file with any new language.

       (d) Third party notices would be added at the end of
           'trunk/THIRD_PARTY_NOTICES.txt' and add a symbolic
           link 'foo/THIRD_PARTY_NOTICES.txt' to point to that addition,
           or add a file by that name containing _only_ the new
           information and language referring to the global one. 
(Comments?)


  (12) Suggest replacing the name 'THIRD_PARTY_NOTICES.txt' simply
       with 'THIRD_PARTY_NOTICES' (for consistency in naming), perhaps
       in 'classlib/trunk' adding a symbolic link with the old name
       pointing to the new.


Your comments would be appreciated.


Dan Lydick

> [Original Message]
> From: Geir Magnusson Jr <geir@pobox.com>
> To: <harmony-dev@incubator.apache.org>
> Date: 7/20/06 9:52:37 PM
> Subject: Re: [general] centralization of the NOTICE, COPYRIGHT, etc files
>
> Well, go for it!  See what I have in there now and see what you think...
>
> geir
>
>
> bootjvm wrote:
> > Geir,
> > 
> > I have been working off and on with on putting together
> > a contribution for this purpose.  It has all the things you
> > mentioned plus some more things.  If you like, I would
> > be glad to put it together shortly and submit for The List's
> > inspection and approval.  What do you say?
> > 
> > 
> > Dan Lydick
> > 
> > 
> >> [Original Message]
> >> From: Geir Magnusson Jr <geir@pobox.com>
> >> To: <harmony-dev@incubator.apache.org>
> >> Date: 7/20/06 2:07:14 PM
> >> Subject: [general] centralization of the NOTICE, COPYRIGHT, etc files
> >>
> >> If you haven't guessed from my random checkins, questions, and
> >> befuddlement, I'm finishing off a first cut at a federated build.
> >>
> >> The plan is to cut a hdk and a jre snapshot.  The HDK will contain the
> >> jre, but I thought it would be more conventional for users to get a
> >> plain jre and not have to figure out what a HDK is.
> >>
> >> Now, I want to coalesce the NOTICE, COPYRIGHT, 3rd party, etc files
into
> >> one project-wide file in
> >>
> >> enhanced/trunk/
> >>
> >> and replace the ones we have in classlib/, drlvm/ etc with a NOTICE,
etc
> >> file that points to the root one.
> >>
> >> Any complaints, suggestions?
> >>
> >> geir
> >>
> >> ---------------------------------------------------------------------
> >> Terms of use : http://incubator.apache.org/harmony/mailing.html
> >> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> >> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> >>
> > 
> > 
> > 
> > 
> > ---------------------------------------------------------------------
> > Terms of use : http://incubator.apache.org/harmony/mailing.html
> > To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> > For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> > 
> > 
> > 
>
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
>




---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Mime
View raw message