README
1 $NetBSD: README,v 1.19 2023/08/15 22:02:36 christos Exp $
2
3 Organization of Sources:
4
5 This directory hierarchy is using an organization that separates
6 source for programs that we have obtained from external third
7 parties (where NetBSD is not the primary maintainer) from the
8 system source.
9
10 The hierarchy is grouped by license, and then package per license,
11 and is organized as follows:
12
13 external/
14
15 Makefile
16 Descend into the license sub-directories.
17
18 <license>/
19 Per-license sub-directories.
20
21 Makefile
22 Descend into the package sub-directories.
23
24 <package>/
25 Per-package sub-directories.
26
27 Makefile
28 Build the package.
29
30 dist/
31 The third-party source for a given package.
32
33 bin/
34 lib/
35 sbin/
36 BSD makefiles "reach over" from these into
37 "../dist/".
38
39 This arrangement allows for packages to be easily disabled or
40 excised as necessary, either on a per-license or per-package basis.
41
42 The licenses currently used are:
43
44 apache2 Apache 2.0 license.
45 http://www.opensource.org/licenses/apache2.0.php
46
47 atheros Atheros License.
48
49 broadcom Broadcom licenses for rpi firmware and bfwm. See
50 */dist/LICENSE.broadcom*
51
52 bsd BSD (or equivalent) licensed software, possibly with
53 the "advertising clause".
54 http://www.opensource.org/licenses/bsd-license.php
55
56 cddl Common Development and Distribution License (the sun
57 license which is based on the Mozilla Public License
58 version 1.1).
59 http://www.opensource.org/licenses/cddl1.php
60
61 gpl2 GNU Public License, version 2 (or earlier).
62 http://www.opensource.org/licenses/gpl-2.0.php
63
64 gpl3 GNU Public License, version 3.
65 http://www.opensource.org/licenses/gpl-3.0.html
66
67 historical Lucent's old license:
68 http://www.opensource.org/licenses/historical.php
69
70 ibm-public IBM's public license:
71 http://www.opensource.org/licenses/ibmpl.php
72
73 intel-fw-eula Intel firmware license with redistribution
74 restricted to OEM.
75
76 intel-fw-public Intel firmware license permitting redistribution with
77 terms similar to BSD licensed software.
78
79 intel-public Intel license permitting redistribution with
80 terms similar to BSD licensed software.
81
82 lgpl2 GNU Lesser General Public License, version 2 (or earlier).
83 https://opensource.org/license/lgpl-2-1/
84
85 lgpl3 GNU Lesser General Public License, version 3 (or earlier).
86 https://opensource.org/license/lgpl-3-0/
87
88 mit MIT (X11) style license.
89 http://www.opensource.org/licenses/mit-license.php
90
91 mpl Mozilla Public license.
92 https://opensource.org/licenses/MPL-2.0
93
94 nvidia-firmware NVIDIA firmware license permitting redistribution for
95 use on operating systems distributed under the terms
96 of an OSI-approved open source license.
97
98 ofl SIL Open Font License
99 https://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=OFL
100
101 public-domain Non-license for code that has been explicitly put
102 into the Public Domain.
103
104 realtek RealTek license.
105
106 zlib Zlib (BSD-like) license.
107 http://www.zlib.net/zlib_license.html
108
109 If a package has components covered by different licenses
110 (for example, GPL2 and the LGPL), use the <license> subdirectory
111 for the more restrictive license.
112
113 If a package allows the choice of a license to use, we'll
114 generally use the less restrictive license.
115
116 If in doubt about where a package should be located, please
117 contact <core (a] NetBSD.org> for advice.
118
119
120 Migration Strategy:
121
122
123 Eventually src/dist (and associated framework in other base source
124 directories) and src/gnu will be migrated to this hierarchy.
125
126
127 Maintenance Strategy:
128
129 The sources under src/external/<license>/<package>/dist/ are
130 generally a combination of a published distribution plus changes
131 that we submit to the maintainers and that are not yet published
132 by them.
133
134 Make sure all changes made to the external sources are submitted
135 to the appropriate maintainer, but only after coordinating with
136 the NetBSD maintainers.
137