annotate usr/src/README.license-files @ 13735:1c48a05ba37d

2602 mdb ::sockparams SEGV Reviewed by: Gordon Ross <gordon.w.ross@gmail.com> Reviewed by: Milan Jurik <milan.jurik@xylab.cz> Approved by: Richard Lowe <richlowe@richlowe.net>
author Andrey Sokolov <keremet@solaris.kirov.ru>
date Wed, 20 Jun 2012 15:11:05 -0400
parents c0270875939a
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6417
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
1 #
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
2 # CDDL HEADER START
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
3 #
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
4 # The contents of this file are subject to the terms of the
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
5 # Common Development and Distribution License (the "License").
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
6 # You may not use this file except in compliance with the License.
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
7 #
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
9 # or http://www.opensolaris.org/os/licensing.
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
10 # See the License for the specific language governing permissions
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
11 # and limitations under the License.
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
12 #
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
13 # When distributing Covered Code, include this CDDL HEADER in each
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
15 # If applicable, add the following below this CDDL HEADER, with the
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
16 # fields enclosed by brackets "[]" replaced with your own identifying
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
17 # information: Portions Copyright [yyyy] [name of copyright owner]
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
18 #
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
19 # CDDL HEADER END
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
20 #
13010
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
21
6417
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
22 #
13010
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
23 # Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
6417
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
24 #
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
25
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
26 OK, so you've got approval to integrate code, and you want to know how to
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
27 properly communicate the license terms. What do you do next?
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
28
13010
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
29 0. Determine whether your code should be covered by Oracle copyright,
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
30 CDDL, and/or a third party license. If only Oracle copyright and/or
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
31 CDDL, then skip to step 3.
6417
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
32
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
33 1. Scan the source code and extract all of the third party licenses
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
34 into one or more separate files.
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
35
13010
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
36 This information may be present in comments in source code, or may
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
37 already be provided as separate files. For example, GPL license
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
38 terms are often found in files named "COPYING."
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
39
6417
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
40 A. In general, you'll name these files "THIRDPARTYLICENSE," and
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
41 you'll put one in each source directory (i.e. one per library,
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
42 or one per command, or one per kernel module.)
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
43
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
44 EXAMPLE: usr/src/uts/common/io/pcan/THIRDPARTYLICENSE
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
45
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
46 If this file proves unmanageable, or you're adding licenses
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
47 that really are independent of each other, you may instead
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
48 create multiple "THIRDPARTYLICENSE.foo" files, where "foo"
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
49 obviously corresponds to the license in question.
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
50
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
51 EXAMPLE: usr/src/lib/libsmbfs/smb/THIRDPARTYLICENSE.*
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
52
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
53 B. If you planned ahead and included graceful delimiters in your
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
54 source code, the THIRDPARTYLICENSE files may actually be build
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
55 targets in your Makefiles.
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
56
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
57 EXAMPLE: usr/src/cmd/perl/Makefile
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
58
13010
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
59 If the corresponding copyright will change dates frequently,
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
60 then this approach can work well, because you won't need to
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
61 update the license files manually.
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
62
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
63 If you do this, then your license file should be a dependency of
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
64 both the all and install targets, and should be removed via
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
65 clobber, usually by way of CLOBBERFILES.
6417
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
66
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
67 2. Give each of the license files a corresponding ".descrip" file with
13010
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
68 a terse explanation of the contents. Something like "MJN DRIVER"
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
69 or "PORTIONS OF ARCANE FUNCTIONALITY" is sufficient.
6417
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
70
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
71 EXAMPLE: usr/src/cmd/refer/THIRDPARTYLICENSE.descrip
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
72
13010
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
73 3. Figure out which packages deliver objects that are built using the
11838
32bb5d254240 PSARC 2010/067 Interim modernization updates
Liane Praza <Liane.Praza@Sun.COM>
parents: 6417
diff changeset
74 new source, and add license actions to the package manifest(s).
6417
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
75
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
76 A. It's extremely rare for a package NOT to include a Sun copyright
11838
32bb5d254240 PSARC 2010/067 Interim modernization updates
Liane Praza <Liane.Praza@Sun.COM>
parents: 6417
diff changeset
77 and CDDL. If your package is one of the 99 percent that should
32bb5d254240 PSARC 2010/067 Interim modernization updates
Liane Praza <Liane.Praza@Sun.COM>
parents: 6417
diff changeset
78 have a Sun copyright and CDDL, then your package should have license
32bb5d254240 PSARC 2010/067 Interim modernization updates
Liane Praza <Liane.Praza@Sun.COM>
parents: 6417
diff changeset
79 actions like this:
6417
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
80
11838
32bb5d254240 PSARC 2010/067 Interim modernization updates
Liane Praza <Liane.Praza@Sun.COM>
parents: 6417
diff changeset
81 license lic_CDDL license=lic_CDDL
32bb5d254240 PSARC 2010/067 Interim modernization updates
Liane Praza <Liane.Praza@Sun.COM>
parents: 6417
diff changeset
82 license cr_Sun license=cr_Sun
6417
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
83
11838
32bb5d254240 PSARC 2010/067 Interim modernization updates
Liane Praza <Liane.Praza@Sun.COM>
parents: 6417
diff changeset
84 B. If your package delivers ONLY header files, and has multiple different
6417
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
85 copyrights or licenses, you can use
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
86
11838
32bb5d254240 PSARC 2010/067 Interim modernization updates
Liane Praza <Liane.Praza@Sun.COM>
parents: 6417
diff changeset
87 license license_in_headers license=license_in_headers
13010
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
88 license path/to/most/common/copyright/file \
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
89 license=path/to/most/common/copyright/file
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
90 license path/to/most/common/license/file \
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
91 license=path/to/most/common/license/file
6417
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
92
11838
32bb5d254240 PSARC 2010/067 Interim modernization updates
Liane Praza <Liane.Praza@Sun.COM>
parents: 6417
diff changeset
93 C. For your new license files, the path you use in your license
13010
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
94 actions should be relative to ${CODEMGR_WS}.
6417
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
95
11838
32bb5d254240 PSARC 2010/067 Interim modernization updates
Liane Praza <Liane.Praza@Sun.COM>
parents: 6417
diff changeset
96 D. Empty packages: if your package delivers nothing (or, more strictly
32bb5d254240 PSARC 2010/067 Interim modernization updates
Liane Praza <Liane.Praza@Sun.COM>
parents: 6417
diff changeset
97 speaking, nothing besides directories) you should include the Sun
32bb5d254240 PSARC 2010/067 Interim modernization updates
Liane Praza <Liane.Praza@Sun.COM>
parents: 6417
diff changeset
98 copyright but not the CDDL.
6417
7c259be9c77b 6677590 ON is now required to deliver license info via pkg copyright files
mjnelson
parents:
diff changeset
99
11838
32bb5d254240 PSARC 2010/067 Interim modernization updates
Liane Praza <Liane.Praza@Sun.COM>
parents: 6417
diff changeset
100 E. As with any other action that is architecture dependent, license
32bb5d254240 PSARC 2010/067 Interim modernization updates
Liane Praza <Liane.Praza@Sun.COM>
parents: 6417
diff changeset
101 actions may be preceded by $(blah_ONLY), where "blah" corresponds
32bb5d254240 PSARC 2010/067 Interim modernization updates
Liane Praza <Liane.Praza@Sun.COM>
parents: 6417
diff changeset
102 to $(uname -p).
13010
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
103
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
104 If you don't add the appropriate license actions to package
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
105 manifests, then your license and description files will show up as
c0270875939a 6929502 packages are missing some license files
Mark J. Nelson <Mark.J.Nelson@Oracle.COM>
parents: 11838
diff changeset
106 unreferenced in the build.