diff options
author | mjnelson <none@none> | 2008-04-11 10:47:16 -0700 |
---|---|---|
committer | mjnelson <none@none> | 2008-04-11 10:47:16 -0700 |
commit | 99dda20867d903eec23291ba1ecb18a82d70096b (patch) | |
tree | a445963a7d57a5827c791fc8d74ada60ccff6275 /usr/src/README.license-files | |
parent | 147982cb800a90a2ac06d00d9a79ac50b0ca4ddb (diff) | |
download | illumos-joyent-99dda20867d903eec23291ba1ecb18a82d70096b.tar.gz |
6677590 ON is now required to deliver license info via pkg copyright files
6684249 third party license cleanup
--HG--
rename : usr/src/pkgdefs/SUNWdsdu/copyright => deleted_files/usr/src/pkgdefs/SUNWdsdu/copyright
rename : usr/src/pkgdefs/SUNWgrubS/copyright => deleted_files/usr/src/pkgdefs/SUNWgrubS/copyright
rename : usr/src/pkgdefs/SUNWipfr/copyright => deleted_files/usr/src/pkgdefs/SUNWipfr/copyright
rename : usr/src/pkgdefs/SUNWipfu/copyright => deleted_files/usr/src/pkgdefs/SUNWipfu/copyright
rename : usr/src/pkgdefs/SUNWlibsasl/copyright => deleted_files/usr/src/pkgdefs/SUNWlibsasl/copyright.in
rename : usr/src/pkgdefs/SUNWpppdu/copyright => deleted_files/usr/src/pkgdefs/SUNWpppdu/copyright
rename : usr/src/pkgdefs/SUNWpppg/copyright => deleted_files/usr/src/pkgdefs/SUNWpppg/copyright
rename : usr/src/pkgdefs/SUNWpppgS/copyright => deleted_files/usr/src/pkgdefs/SUNWpppgS/copyright
rename : usr/src/pkgdefs/SUNWsndmr/copyright => deleted_files/usr/src/pkgdefs/SUNWsndmr/copyright
rename : usr/src/pkgdefs/SUNWsndmu/copyright => deleted_files/usr/src/pkgdefs/SUNWsndmu/copyright
rename : usr/src/pkgdefs/SUNWsshcu/copyright => deleted_files/usr/src/pkgdefs/SUNWsshcu/copyright
rename : usr/src/pkgdefs/SUNWsshdr/copyright => deleted_files/usr/src/pkgdefs/SUNWsshdr/copyright
rename : usr/src/pkgdefs/SUNWsshdu/copyright => deleted_files/usr/src/pkgdefs/SUNWsshdu/copyright
rename : usr/src/pkgdefs/SUNWsshr/copyright => deleted_files/usr/src/pkgdefs/SUNWsshr/copyright
rename : usr/src/pkgdefs/SUNWsshu/copyright => deleted_files/usr/src/pkgdefs/SUNWsshu/copyright
rename : usr/src/pkgdefs/SUNWtcpd/copyright => deleted_files/usr/src/pkgdefs/SUNWtcpd/copyright
rename : usr/src/pkgdefs/SUNWtcpdS/copyright => deleted_files/usr/src/pkgdefs/SUNWtcpdS/copyright
rename : usr/src/pkgdefs/SUNWtecla/copyright => deleted_files/usr/src/pkgdefs/SUNWtecla/copyright
rename : usr/src/uts/common/sys/i2o/THIRDPARTYLICENSE => deleted_files/usr/src/uts/common/sys/i2o/THIRDPARTYLICENSE
rename : usr/src/uts/common/sys/i2o/THIRDPARTYLICENSE.descrip => deleted_files/usr/src/uts/common/sys/i2o/THIRDPARTYLICENSE.descrip
rename : usr/src/pkgdefs/SUNWnetcat/copyright => usr/src/cmd/cmd-inet/usr.bin/nc/THIRDPARTYLICENSE
rename : usr/src/pkgdefs/SUNWcsl/copyright => usr/src/pkgdefs/SUNWcsl/lic_AMD
rename : usr/src/pkgdefs/SUNWgrub/copyright => usr/src/pkgdefs/SUNWgrub/grubcredits
rename : usr/src/pkgdefs/SUNWgss/copyright => usr/src/pkgdefs/SUNWgss/gss_license
rename : usr/src/pkgdefs/SUNWocfh/copyright => usr/src/pkgdefs/SUNWocfh/copyright.in
rename : usr/src/pkgdefs/SUNWroute/copyright => usr/src/pkgdefs/SUNWroute/copyright.in
rename : usr/src/pkgdefs/common_files/copyright => usr/src/pkgdefs/license_files/cr_Sun
rename : usr/src/pkgdefs/SUNWdrmr/LICENSE => usr/src/uts/common/io/drm/THIRDPARTYLICENSE
rename : usr/src/pkgdefs/SUNWpppd/copyright => usr/src/uts/common/io/ppp/THIRDPARTYLICENSE
Diffstat (limited to 'usr/src/README.license-files')
-rw-r--r-- | usr/src/README.license-files | 158 |
1 files changed, 158 insertions, 0 deletions
diff --git a/usr/src/README.license-files b/usr/src/README.license-files new file mode 100644 index 0000000000..05ce40e600 --- /dev/null +++ b/usr/src/README.license-files @@ -0,0 +1,158 @@ +# +# CDDL HEADER START +# +# The contents of this file are subject to the terms of the +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. +# +# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE +# or http://www.opensolaris.org/os/licensing. +# See the License for the specific language governing permissions +# and limitations under the License. +# +# When distributing Covered Code, include this CDDL HEADER in each +# file and include the License file at usr/src/OPENSOLARIS.LICENSE. +# If applicable, add the following below this CDDL HEADER, with the +# fields enclosed by brackets "[]" replaced with your own identifying +# information: Portions Copyright [yyyy] [name of copyright owner] +# +# CDDL HEADER END +# +# +# Copyright 2008 Sun Microsystems, Inc. All rights reserved. +# Use is subject to license terms. +# +# ident "%Z%%M% %I% %E% SMI" +# + +OK, so you've got approval to integrate code, and you want to know how to +properly communicate the license terms. What do you do next? + +0. If everything is covered by a Sun copyright and the CDDL, you're done. + +1. Scan the source code and extract all of the third party licenses + into one or more separate files. + + A. In general, you'll name these files "THIRDPARTYLICENSE," and + you'll put one in each source directory (i.e. one per library, + or one per command, or one per kernel module.) + + EXAMPLE: usr/src/uts/common/io/pcan/THIRDPARTYLICENSE + + If this file proves unmanageable, or you're adding licenses + that really are independent of each other, you may instead + create multiple "THIRDPARTYLICENSE.foo" files, where "foo" + obviously corresponds to the license in question. + + EXAMPLE: usr/src/lib/libsmbfs/smb/THIRDPARTYLICENSE.* + + B. If you planned ahead and included graceful delimiters in your + source code, the THIRDPARTYLICENSE files may actually be build + targets in your Makefiles. + + EXAMPLE: usr/src/cmd/perl/Makefile + + This approach is usually overkill. But if the third party license + will remain unchanged while the corresponding copyright will change + dates frequently, then this approach can work well, because you won't + need to update the license files manually. + +2. Give each of the license files a corresponding ".descrip" file with + an extremely terse explanation of the contents. Something like + "MJN DRIVER" or "PORTIONS OF ARCANE FUNCTIONALITY" is sufficient. + + EXAMPLE: usr/src/cmd/refer/THIRDPARTYLICENSE.descrip + +3. Edit usr/src/tools/opensolaris/license-list and add the full path + of your new license file(s). + +4. Figure out which packages deliver objects that are built using the + new third party source, and add a reference to LICENSEFILES in the + pkg Makefile. + + A. It's extremely rare for a package NOT to include a Sun copyright + statement. If your package is one of the 99 percent that should + have a Sun copyright, then you should append to LICENSEFILES like + this: + + LICENSEFILES += relative/path/to/my/new/license/file + + or + + LICENSEFILES += \ + path/to/first/file \ + path/to/other/file + + These paths should be relative to the pkg build directory, for + example relative to usr/src/pkgdefs/SUNWbcp for pkg SUNWbcp. + + EXAMPLE: usr/src/pkgdefs/SUNWpsm-ipp/Makefile + EXAMPLE: usr/src/pkgdefs/SUNWrcmdc/Makefile + + B. If, on the other hand, you do NOT want a Sun copyright, then you + should follow the example above, but use "=" instead of "+=" when + you assign the LICENSEFILES macro. + + EXAMPLE: usr/src/pkgdefs/SUNWrtls/Makefile + + C. It's also unusual for a package NOT to reference the CDDL. If you + used "+=" above, and you want the CDDL, then you don't need to do + anything else. It will automatically be appended. + + D. If you used "+=" above, because you want the Sun copyright, but you + do NOT want the CDDL, then you should also include the following line: + + CDDL= + + in your pkg Makefile. + + EXAMPLE: usr/src/pkgdefs/SUNWwpi/Makefile + + E. If you used "=" above, then you will not get the CDDL unless you + explicitly append it to LICENSEFILES: + + LICENSEFILES = \ + path/to/first/file \ + path/to/other/file \ + $(CDDL) + + + EXAMPLE: usr/src/pkgdefs/SUNWhea/Makefile + + F. If your package delivers ONLY header files, and has multiple different + copyrights or licenses, you can use + + LICENSEFILES = $(LIC_IN_HDRS) \ + path/to/most/common/copyright/file \ + path/to/most/common/license/file + + EXAMPLE: usr/src/pkgdefs/SUNWhea/Makefile + + G. Empty packages: if your package delivers nothing (or, more strictly + speaking, nothing besides directories) you should keep the Sun + copyright but nix the CDDL. As a reminder, that's done simply by + adding the single line + + CDDL= + + to your pkg Makefile. + + EXAMPLE: usr/src/pkgdefs/SUNWdfb.i/Makefile + + H. COPYRIGHT: Don't mess with this. If you reset this, then you must + use the "copyright=" convention in your prototype_com. As described + above, LICENSEFILES is the preferred mechanism. + + I. Architecture dependent license files look like this: + + LICENSEFILES_i386 = path/to/i386/only/license(s) + + LICENSEFILES_sparc = path/to/sparc/only/license(s) + + LICENSEFILES += \ + path/to/common/license/files(s) \ + $(LICENSEFILES_$(MACH)) + + EXAMPLE: usr/src/pkgdefs/SUNWcsl/Makefile + EXAMPLE: usr/src/pkgdefs/SUNWbcp/Makefile + |