xref: /netbsd-src/external/README (revision 09afef20633f5fe63d92dfe43ee3a9380dc06883)
1$NetBSD: README,v 1.8 2009/10/24 03:55:27 tsarna Exp $
2
3Organization of Sources:
4
5This directory hierarchy is using an organization that separates
6source for programs that we have obtained from external third
7parties (where NetBSD is not the primary maintainer) from the
8system source.
9
10The hierarchy is grouped by license, and then package per license,
11and 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
39This arrangement allows for packages to be easily disabled or
40excised as necessary, either on a per-license or per-package basis.
41
42The licenses currently used are:
43
44	apache2		Apache 2.0 license.
45
46	bsd		BSD (or equivalent) licensed software, possibly with
47			the "advertising clause".
48
49	gpl2		GNU Public License, version 2 (or earlier).
50
51	intel-fw-oem	Intel firmware license with redistribution
52			restricted to OEM.
53
54	intel-fw-public	Intel firmware license permitting redistribution with
55			terms similar to BSD licensed software.
56
57	intel-public	Intel license permitting redistribution with
58			terms similar to BSD licensed software.
59
60	mit		MIT (X11) style license.
61
62If a package has components covered by different licenses
63(for example, GPL2 and the LGPL), use the <license> subdirectory
64for the more restrictive license.
65
66If a package allows the choice of a license to use, we'll
67generally use the less restrictive license.
68
69If in doubt about where a package should be located, please
70contact <core@NetBSD.org> for advice.
71
72
73Migration Strategy:
74
75
76Eventually src/dist (and associated framework in other base source
77directories) and src/gnu will be migrated to this hierarchy.
78
79
80Maintenance Strategy:
81
82The sources under src/external/<license>/<package>/dist/ are
83generally a combination of a published distribution plus changes
84that we submit to the maintainers and that are not yet published
85by them.
86
87Make sure all changes made to the external sources are submitted
88to the appropriate maintainer, but only after coordinating with
89the NetBSD maintainers.
90