xref: /netbsd/external/README (revision 18425cdb)
1*18425cdbSgson$NetBSD: README,v 1.18 2020/11/10 11:00:02 gson Exp $
2f21cc697Slukem
3f21cc697SlukemOrganization of Sources:
4f21cc697Slukem
5f21cc697SlukemThis directory hierarchy is using an organization that separates
6f21cc697Slukemsource for programs that we have obtained from external third
757ab7bfaSminskimparties (where NetBSD is not the primary maintainer) from the
8f21cc697Slukemsystem source.
9f21cc697Slukem
10f21cc697SlukemThe hierarchy is grouped by license, and then package per license,
11f21cc697Slukemand is organized as follows:
12f21cc697Slukem
13f21cc697Slukem	external/
14f21cc697Slukem
15f21cc697Slukem	    Makefile
16f21cc697Slukem			Descend into the license sub-directories.
17f21cc697Slukem
18f21cc697Slukem	    <license>/
19f21cc697Slukem			Per-license sub-directories.
20f21cc697Slukem
21f21cc697Slukem		Makefile
22f21cc697Slukem			Descend into the package sub-directories.
23f21cc697Slukem
24f21cc697Slukem		<package>/
25f21cc697Slukem			Per-package sub-directories.
26f21cc697Slukem
27f21cc697Slukem		    Makefile
28f21cc697Slukem			Build the package.
29f21cc697Slukem
30f21cc697Slukem		    dist/
31f21cc697Slukem			The third-party source for a given package.
32f21cc697Slukem
33f21cc697Slukem		    bin/
34f21cc697Slukem		    lib/
35f21cc697Slukem		    sbin/
36f21cc697Slukem			BSD makefiles "reach over" from these into
37f21cc697Slukem			"../dist/".
38f21cc697Slukem
39f21cc697SlukemThis arrangement allows for packages to be easily disabled or
4078b88ab0Slukemexcised as necessary, either on a per-license or per-package basis.
41f21cc697Slukem
42f21cc697SlukemThe licenses currently used are:
43f21cc697Slukem
449ed4a95aStsarna	apache2		Apache 2.0 license.
453f874b54Schristos			http://www.opensource.org/licenses/apache2.0.php
469ed4a95aStsarna
47ce1a2860Schristos	atheros		Atheros License.
48ce1a2860Schristos
49f21cc697Slukem	bsd		BSD (or equivalent) licensed software, possibly with
50f21cc697Slukem			the "advertising clause".
513f874b54Schristos			http://www.opensource.org/licenses/bsd-license.php
523f874b54Schristos
533f874b54Schristos	cddl		Common Development and Distribution License (the sun
543f874b54Schristos			license which is based on the Mozilla Public License
553f874b54Schristos			version 1.1).
563f874b54Schristos			http://www.opensource.org/licenses/cddl1.php
57f21cc697Slukem
5878b88ab0Slukem	gpl2		GNU Public License, version 2 (or earlier).
593f874b54Schristos			http://www.opensource.org/licenses/gpl-2.0.php
6078b88ab0Slukem
613f874b54Schristos	gpl3		GNU Public License, version 3.
623f874b54Schristos			http://www.opensource.org/licenses/gpl-3.0.html
633f874b54Schristos
64563a7b4aSchristos	historical	Lucent's old license:
65563a7b4aSchristos			http://www.opensource.org/licenses/historical.php
66563a7b4aSchristos
673f874b54Schristos	ibm-public	IBM's public license:
683f874b54Schristos			http://www.opensource.org/licenses/ibmpl.php
693f874b54Schristos
703f874b54Schristos	intel-fw-eula	Intel firmware license with redistribution
7168ab5fbbSjoerg			restricted to OEM.
7268ab5fbbSjoerg
7368ab5fbbSjoerg	intel-fw-public	Intel firmware license permitting redistribution with
7495ebd4eaSwiz			terms similar to BSD licensed software.
75a2996b07Smrg
764f823b1dSjmcneill	intel-public	Intel license permitting redistribution with
7795ebd4eaSwiz			terms similar to BSD licensed software.
784f823b1dSjmcneill
79a2996b07Smrg	mit		MIT (X11) style license.
803f874b54Schristos			http://www.opensource.org/licenses/mit-license.php
81a2996b07Smrg
828999fc9fSchristos	mpl		Mozilla Public license.
838999fc9fSchristos			https://opensource.org/licenses/MPL-2.0
848999fc9fSchristos
85ccfa31a3Sjmcneill	nvidia-firmware	NVIDIA firmware license permitting redistribution for
86ccfa31a3Sjmcneill			use on operating systems distributed under the terms
87ccfa31a3Sjmcneill			of an OSI-approved open source license.
88ccfa31a3Sjmcneill
898d237712Sjoerg	public-domain	Non-license for code that has been explicitly put
908d237712Sjoerg			into the Public Domain.
918d237712Sjoerg
92f96ec3f7Sriz	realtek		RealTek license.
93f96ec3f7Sriz
947baeb177Swiz	zlib		Zlib (BSD-like) license.
952c07b62eSchristos			http://www.zlib.net/zlib_license.html
962c07b62eSchristos
9778b88ab0SlukemIf a package has components covered by different licenses
9878b88ab0Slukem(for example, GPL2 and the LGPL), use the <license> subdirectory
9978b88ab0Slukemfor the more restrictive license.
10078b88ab0Slukem
10178b88ab0SlukemIf a package allows the choice of a license to use, we'll
10278b88ab0Slukemgenerally use the less restrictive license.
10378b88ab0Slukem
10478b88ab0SlukemIf in doubt about where a package should be located, please
10578b88ab0Slukemcontact <core@NetBSD.org> for advice.
10678b88ab0Slukem
10778b88ab0Slukem
10878b88ab0SlukemMigration Strategy:
10978b88ab0Slukem
110f21cc697Slukem
111f21cc697SlukemEventually src/dist (and associated framework in other base source
112f21cc697Slukemdirectories) and src/gnu will be migrated to this hierarchy.
113f21cc697Slukem
114f21cc697Slukem
115f21cc697SlukemMaintenance Strategy:
116f21cc697Slukem
117f21cc697SlukemThe sources under src/external/<license>/<package>/dist/ are
118f21cc697Slukemgenerally a combination of a published distribution plus changes
119f21cc697Slukemthat we submit to the maintainers and that are not yet published
120f21cc697Slukemby them.
121f21cc697Slukem
122f21cc697SlukemMake sure all changes made to the external sources are submitted
123f21cc697Slukemto the appropriate maintainer, but only after coordinating with
124f21cc697Slukemthe NetBSD maintainers.
125