xref: /netbsd-src/external/README (revision 0c4ddb1599a0bea866fde8522a74cfbd2f68cd1b)
1$NetBSD: README,v 1.3 2008/07/15 13:32:35 lukem 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	bsd	BSD (or equivalent) licensed software, possibly with
45		the "advertising clause".
46
47	gpl2	GNU Public License, version 2 (or earlier).
48
49If a package has components covered by different licenses
50(for example, GPL2 and the LGPL), use the <license> subdirectory
51for the more restrictive license.
52
53If a package allows the choice of a license to use, we'll
54generally use the less restrictive license.
55
56If in doubt about where a package should be located, please
57contact <core@NetBSD.org> for advice.
58
59
60Migration Strategy:
61
62
63Eventually src/dist (and associated framework in other base source
64directories) and src/gnu will be migrated to this hierarchy.
65
66
67Maintenance Strategy:
68
69The sources under src/external/<license>/<package>/dist/ are
70generally a combination of a published distribution plus changes
71that we submit to the maintainers and that are not yet published
72by them.
73
74Make sure all changes made to the external sources are submitted
75to the appropriate maintainer, but only after coordinating with
76the NetBSD maintainers.
77