regen.
This commit is contained in:
parent
b8694492bf
commit
5b084dcc01
2 changed files with 356 additions and 170 deletions
369
doc/pkgsrc.html
369
doc/pkgsrc.html
|
@ -10,7 +10,7 @@
|
|||
<meta name="generator" content=
|
||||
"DocBook XSL Stylesheets VX.X.X" />
|
||||
<meta name="description" content=
|
||||
"Information about using the NetBSD package system (pkgsrc) from both a user view for installing packages as well as from a pkgsrc developers' view for creating new packages." />
|
||||
"pkgsrc is a centralized package management system for Unix-like operating systems. This guide provides information for users and developers of pkgsrc. It covers installation of binary and source packages, creation of binary and source packages and a high-level overview about the infrastructure." />
|
||||
</head>
|
||||
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084"
|
||||
|
@ -61,23 +61,25 @@ alink="#0000FF">
|
|||
</div>
|
||||
|
||||
<div>
|
||||
<p class="copyright">Copyright © 1994-2005 The
|
||||
<p class="copyright">Copyright © 1994-2006 The
|
||||
NetBSD Foundation, Inc</p>
|
||||
</div>
|
||||
|
||||
<div xmlns="http://www.w3.org/TR/xhtml1/transitional">
|
||||
<p xmlns="" class="pubdate">$NetBSD: pkgsrc.xml,v 1.16
|
||||
2006/05/12 23:03:22 rillig Exp $</p>
|
||||
<p xmlns="" class="pubdate">$NetBSD: pkgsrc.xml,v 1.18
|
||||
2006/05/19 22:05:09 rillig Exp $</p>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<div class="abstract">
|
||||
<p class="title"><b>Abstract</b></p>
|
||||
|
||||
<p>Information about using the NetBSD package system
|
||||
(pkgsrc) from both a user view for installing packages
|
||||
as well as from a pkgsrc developers' view for creating
|
||||
new packages.</p>
|
||||
<p>pkgsrc is a centralized package management system
|
||||
for Unix-like operating systems. This guide provides
|
||||
information for users and developers of pkgsrc. It
|
||||
covers installation of binary and source packages,
|
||||
creation of binary and source packages and a high-level
|
||||
overview about the infrastructure.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -103,6 +105,14 @@ alink="#0000FF">
|
|||
<dt><span class="sect1"><a href="#terminology">1.3.
|
||||
Terminology</a></span></dt>
|
||||
|
||||
<dd>
|
||||
<dl>
|
||||
<dt><span class="sect2"><a href=
|
||||
"#term.people">1.3.1. People involved in
|
||||
pkgsrc</a></span></dt>
|
||||
</dl>
|
||||
</dd>
|
||||
|
||||
<dt><span class="sect1"><a href="#typography">1.4.
|
||||
Typography</a></span></dt>
|
||||
</dl>
|
||||
|
@ -383,6 +393,11 @@ alink="#0000FF">
|
|||
<dt><span class="sect1"><a href=
|
||||
"#audit-packages">7.15. Automated security
|
||||
checks</a></span></dt>
|
||||
|
||||
<dt><span class="sect1"><a href=
|
||||
"#ufaq-cflags">7.16. Why do some packages ignore my
|
||||
<code class=
|
||||
"varname">CFLAGS</code>?</a></span></dt>
|
||||
</dl>
|
||||
</dd>
|
||||
</dl>
|
||||
|
@ -1001,24 +1016,29 @@ alink="#0000FF">
|
|||
<dd>
|
||||
<dl>
|
||||
<dt><span class="sect1"><a href=
|
||||
"#submitting-your-package">18.1. Submitting your
|
||||
packages</a></span></dt>
|
||||
"#submitting-binary-packages">18.1. Submitting
|
||||
binary packages</a></span></dt>
|
||||
|
||||
<dt><span class="sect1"><a href=
|
||||
"#general-notes-for-changes">18.2. General notes
|
||||
"#submitting-your-package">18.2. Submitting source
|
||||
packages (for
|
||||
non-NetBSD-developers)</a></span></dt>
|
||||
|
||||
<dt><span class="sect1"><a href=
|
||||
"#general-notes-for-changes">18.3. General notes
|
||||
when adding, updating, or removing
|
||||
packages</a></span></dt>
|
||||
|
||||
<dt><span class="sect1"><a href=
|
||||
"#committing-importing">18.3. Committing: Importing
|
||||
"#committing-importing">18.4. Committing: Importing
|
||||
a package into CVS</a></span></dt>
|
||||
|
||||
<dt><span class="sect1"><a href=
|
||||
"#updating-package">18.4. Updating a package to a
|
||||
"#updating-package">18.5. Updating a package to a
|
||||
newer version</a></span></dt>
|
||||
|
||||
<dt><span class="sect1"><a href=
|
||||
"#moving-package">18.5. Moving a package in
|
||||
"#moving-package">18.6. Moving a package in
|
||||
pkgsrc</a></span></dt>
|
||||
</dl>
|
||||
</dd>
|
||||
|
@ -1206,6 +1226,13 @@ alink="#0000FF">
|
|||
<dt><span class="sect1"><a href="#terminology">1.3.
|
||||
Terminology</a></span></dt>
|
||||
|
||||
<dd>
|
||||
<dl>
|
||||
<dt><span class="sect2"><a href="#term.people">1.3.1.
|
||||
People involved in pkgsrc</a></span></dt>
|
||||
</dl>
|
||||
</dd>
|
||||
|
||||
<dt><span class="sect1"><a href="#typography">1.4.
|
||||
Typography</a></span></dt>
|
||||
</dl>
|
||||
|
@ -1479,6 +1506,69 @@ alink="#0000FF">
|
|||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
<div class="sect2" lang="en">
|
||||
<div class="titlepage">
|
||||
<div>
|
||||
<div>
|
||||
<h3 class="title"><a name=
|
||||
"term.people"></a>1.3.1. People involved in
|
||||
pkgsrc</h3>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="variablelist">
|
||||
<dl>
|
||||
<dt><span class="term">pkgsrc users</span></dt>
|
||||
|
||||
<dd>
|
||||
<p>The pkgsrc users are people who use the packages
|
||||
provided by pkgsrc. Typically they are system
|
||||
administrators. The people using the software that
|
||||
is inside the packages (maybe called
|
||||
“<span class="quote">end users</span>”)
|
||||
are not covered by the pkgsrc guide.</p>
|
||||
|
||||
<p>There are two kinds of pkgsrc users: Some only
|
||||
want to install pre-built binary packages. Others
|
||||
build the pkgsrc packages from source, either for
|
||||
installing them directly or for building binary
|
||||
packages themselves. For pkgsrc users <a href=
|
||||
"#users-guide" title=
|
||||
"Part I. The pkgsrc user's guide">Part I,
|
||||
“The pkgsrc user's guide”</a> should
|
||||
provide all necessary documentation.</p>
|
||||
</dd>
|
||||
|
||||
<dt><span class="term">package
|
||||
maintainers</span></dt>
|
||||
|
||||
<dd>
|
||||
<p>A package maintainer creates packages as
|
||||
described in <a href="#developers-guide" title=
|
||||
"Part II. The pkgsrc developer's guide">Part II,
|
||||
“The pkgsrc developer's guide”</a>.</p>
|
||||
</dd>
|
||||
|
||||
<dt><span class="term">infrastructure
|
||||
developers</span></dt>
|
||||
|
||||
<dd>
|
||||
<p>These people are involved in all those files
|
||||
that live in the <code xmlns=
|
||||
"http://www.w3.org/TR/xhtml1/transitional" class=
|
||||
"filename">mk/</code> directory and below. Only
|
||||
these people should need to read through <a href=
|
||||
"#infrastructure" title=
|
||||
"Part III. The pkgsrc infrastructure internals">
|
||||
Part III, “The pkgsrc infrastructure
|
||||
internals”</a>, though others might be
|
||||
curious, too.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sect1" lang="en">
|
||||
|
@ -1782,6 +1872,10 @@ alink="#0000FF">
|
|||
<dt><span class="sect1"><a href=
|
||||
"#audit-packages">7.15. Automated security
|
||||
checks</a></span></dt>
|
||||
|
||||
<dt><span class="sect1"><a href="#ufaq-cflags">7.16.
|
||||
Why do some packages ignore my <code class=
|
||||
"varname">CFLAGS</code>?</a></span></dt>
|
||||
</dl>
|
||||
</dd>
|
||||
</dl>
|
||||
|
@ -5385,6 +5479,10 @@ nbftp% <strong class="userinput"><code>chmod 755 .</code></strong>
|
|||
|
||||
<dt><span class="sect1"><a href="#audit-packages">7.15.
|
||||
Automated security checks</a></span></dt>
|
||||
|
||||
<dt><span class="sect1"><a href="#ufaq-cflags">7.16.
|
||||
Why do some packages ignore my <code class=
|
||||
"varname">CFLAGS</code>?</a></span></dt>
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
|
@ -6276,6 +6374,49 @@ nbftp% <strong class="userinput"><code>chmod 755 .</code></strong>
|
|||
“Variables affecting the build process”</a>
|
||||
for ways to control this check.</p>
|
||||
</div>
|
||||
|
||||
<div class="sect1" lang="en">
|
||||
<div class="titlepage">
|
||||
<div>
|
||||
<div>
|
||||
<h2 class="title" style="clear: both"><a name=
|
||||
"ufaq-cflags"></a>7.16. Why do some packages
|
||||
ignore my <code class="varname">CFLAGS</code>?</h2>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p>When you add your own preferences to the <code class=
|
||||
"varname">CFLAGS</code> variable in your <code xmlns=
|
||||
"http://www.w3.org/TR/xhtml1/transitional" class=
|
||||
"filename">mk.conf</code>, these flags are passed in
|
||||
environment variables to the <code xmlns=
|
||||
"http://www.w3.org/TR/xhtml1/transitional" class=
|
||||
"filename">./configure</code> scripts and to <a href=
|
||||
"http://netbsd.gw.com/cgi-bin/man-cgi?make+1+NetBSD-current">
|
||||
<span class="citerefentry"><span class=
|
||||
"refentrytitle">make</span>(1)</span></a>. Some package
|
||||
authors ignore the <code class="varname">CFLAGS</code>
|
||||
from the environment variable by overriding them in the
|
||||
<code xmlns="http://www.w3.org/TR/xhtml1/transitional"
|
||||
class="filename">Makefile</code>s of their package.</p>
|
||||
|
||||
<p>Currently there is no solution to this problem. If you
|
||||
really need the package to use your <code class=
|
||||
"varname">CFLAGS</code> you should run
|
||||
<span><strong class="command">make patch</strong></span>
|
||||
in the package directory and then inspect any
|
||||
<code xmlns="http://www.w3.org/TR/xhtml1/transitional"
|
||||
class="filename">Makefile</code> and <code xmlns=
|
||||
"http://www.w3.org/TR/xhtml1/transitional" class=
|
||||
"filename">Makefile.in</code> for whether they define
|
||||
<code class="varname">CFLAGS</code> explicitly. Usually
|
||||
you can remove these lines. But be aware that some
|
||||
“<span class="quote">smart</span>”
|
||||
programmers write so bad code that it only works for the
|
||||
specific combination of <code class=
|
||||
"varname">CFLAGS</code> they have chosen.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
@ -6887,24 +7028,28 @@ nbftp% <strong class="userinput"><code>chmod 755 .</code></strong>
|
|||
<dd>
|
||||
<dl>
|
||||
<dt><span class="sect1"><a href=
|
||||
"#submitting-your-package">18.1. Submitting your
|
||||
"#submitting-binary-packages">18.1. Submitting binary
|
||||
packages</a></span></dt>
|
||||
|
||||
<dt><span class="sect1"><a href=
|
||||
"#general-notes-for-changes">18.2. General notes when
|
||||
"#submitting-your-package">18.2. Submitting source
|
||||
packages (for non-NetBSD-developers)</a></span></dt>
|
||||
|
||||
<dt><span class="sect1"><a href=
|
||||
"#general-notes-for-changes">18.3. General notes when
|
||||
adding, updating, or removing
|
||||
packages</a></span></dt>
|
||||
|
||||
<dt><span class="sect1"><a href=
|
||||
"#committing-importing">18.3. Committing: Importing a
|
||||
"#committing-importing">18.4. Committing: Importing a
|
||||
package into CVS</a></span></dt>
|
||||
|
||||
<dt><span class="sect1"><a href=
|
||||
"#updating-package">18.4. Updating a package to a
|
||||
"#updating-package">18.5. Updating a package to a
|
||||
newer version</a></span></dt>
|
||||
|
||||
<dt><span class="sect1"><a href=
|
||||
"#moving-package">18.5. Moving a package in
|
||||
"#moving-package">18.6. Moving a package in
|
||||
pkgsrc</a></span></dt>
|
||||
</dl>
|
||||
</dd>
|
||||
|
@ -7748,7 +7893,7 @@ nbftp% <strong class="userinput"><code>chmod 755 .</code></strong>
|
|||
backslash is followed by a newline, any whitespace
|
||||
immediately in front of the backslash, the backslash, the
|
||||
newline, and any whitespace immediately behind the
|
||||
newline are replaced with a single space. A backspace
|
||||
newline are replaced with a single space. A backslash
|
||||
character and an immediately following hash character are
|
||||
replaced with a single hash character. Otherwise, the
|
||||
backslash is passed as is. In a variable assignment, any
|
||||
|
@ -13252,21 +13397,14 @@ TOOLS_PLATFORM.true?= true # shell builtin
|
|||
<p>If the download can't be automated, because the user
|
||||
must submit personal information to apply for a
|
||||
password, or must pay for the source, or whatever, you
|
||||
can set <code class="varname">_FETCH_MESSAGE</code> to
|
||||
a macro which displays a message explaining the
|
||||
situation. <code class="varname">_FETCH_MESSAGE</code>
|
||||
must be executable shell commands, not just a message.
|
||||
(Generally, it executes <code class=
|
||||
"varname">${ECHO}</code>). See one of the following
|
||||
packages for an example: <a xmlns=
|
||||
"http://www.w3.org/TR/xhtml1/transitional" href=
|
||||
"ftp://ftp.NetBSD.org/pub/NetBSD/packages/pkgsrc/fonts/acroread-jpnfont/README.html"
|
||||
target="_top"><code xmlns="" class=
|
||||
"filename">fonts/acroread-jpnfont</code></a>, <a xmlns=
|
||||
"http://www.w3.org/TR/xhtml1/transitional" href=
|
||||
"ftp://ftp.NetBSD.org/pub/NetBSD/packages/pkgsrc/sysutils/storage-manager/README.html"
|
||||
target="_top"><code xmlns="" class=
|
||||
"filename">sysutils/storage-manager</code></a>.</p>
|
||||
can set <code class="varname">FETCH_MESSAGE</code> to a
|
||||
list of lines that are displayed to the user before
|
||||
aborting the build. Example:</p>
|
||||
<pre class="programlisting">
|
||||
FETCH_MESSAGE= "Please download the files"
|
||||
FETCH_MESSAGE+= " "${DISTFILES:Q}
|
||||
FETCH_MESSAGE+= "manually from "${MASTER_SITES:Q}"."
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<div class="sect2" lang="en">
|
||||
|
@ -15129,22 +15267,26 @@ TOOLS_PLATFORM.true?= true # shell builtin
|
|||
|
||||
<dl>
|
||||
<dt><span class="sect1"><a href=
|
||||
"#submitting-your-package">18.1. Submitting your
|
||||
"#submitting-binary-packages">18.1. Submitting binary
|
||||
packages</a></span></dt>
|
||||
|
||||
<dt><span class="sect1"><a href=
|
||||
"#general-notes-for-changes">18.2. General notes when
|
||||
"#submitting-your-package">18.2. Submitting source
|
||||
packages (for non-NetBSD-developers)</a></span></dt>
|
||||
|
||||
<dt><span class="sect1"><a href=
|
||||
"#general-notes-for-changes">18.3. General notes when
|
||||
adding, updating, or removing packages</a></span></dt>
|
||||
|
||||
<dt><span class="sect1"><a href=
|
||||
"#committing-importing">18.3. Committing: Importing a
|
||||
"#committing-importing">18.4. Committing: Importing a
|
||||
package into CVS</a></span></dt>
|
||||
|
||||
<dt><span class="sect1"><a href=
|
||||
"#updating-package">18.4. Updating a package to a newer
|
||||
"#updating-package">18.5. Updating a package to a newer
|
||||
version</a></span></dt>
|
||||
|
||||
<dt><span class="sect1"><a href="#moving-package">18.5.
|
||||
<dt><span class="sect1"><a href="#moving-package">18.6.
|
||||
Moving a package in pkgsrc</a></span></dt>
|
||||
</dl>
|
||||
</div>
|
||||
|
@ -15154,68 +15296,22 @@ TOOLS_PLATFORM.true?= true # shell builtin
|
|||
<div>
|
||||
<div>
|
||||
<h2 class="title" style="clear: both"><a name=
|
||||
"submitting-your-package"></a>18.1. Submitting
|
||||
your packages</h2>
|
||||
"submitting-binary-packages"></a>18.1. Submitting
|
||||
binary packages</h2>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p>You have to separate between binary and
|
||||
“<span class="quote">normal</span>” (source)
|
||||
packages here:</p>
|
||||
|
||||
<div class="itemizedlist">
|
||||
<ul type="disc">
|
||||
<li>
|
||||
<p>precompiled binary packages</p>
|
||||
|
||||
<p>Our policy is that we accept binaries only from
|
||||
pkgsrc developers to guarantee that the packages
|
||||
don't contain any trojan horses etc. This is not to
|
||||
annoy anyone but rather to protect our users!
|
||||
You're still free to put up your home-made binary
|
||||
packages and tell the world where to get them.
|
||||
NetBSD developers doing bulk builds and wanting to
|
||||
upload them please see <a href="#bulk-upload"
|
||||
title="6.3.8. Uploading results of a bulk build">
|
||||
Section 6.3.8, “Uploading results of a
|
||||
bulk build”</a>.</p>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<p>packages</p>
|
||||
|
||||
<p>First, check that your package is complete,
|
||||
compiles and runs well; see <a href="#debug" title=
|
||||
"Chapter 17. Debugging">Chapter 17,
|
||||
<i>Debugging</i></a> and the rest of this document.
|
||||
Next, generate an uuencoded gzipped <a href=
|
||||
"http://netbsd.gw.com/cgi-bin/man-cgi?tar+1+NetBSD-current">
|
||||
<span class="citerefentry"><span class=
|
||||
"refentrytitle">tar</span>(1)</span></a> archive,
|
||||
preferably with all files in a single directory.
|
||||
Finally, <span><strong class=
|
||||
"command">send-pr</strong></span> with category
|
||||
“<span class="quote">pkg</span>”, a
|
||||
synopsis which includes the package name and
|
||||
version number, a short description of your package
|
||||
(contents of the COMMENT variable or DESCR file are
|
||||
OK) and attach the archive to your PR.</p>
|
||||
|
||||
<p>If you want to submit several packages, please
|
||||
send a separate PR for each one, it's easier for us
|
||||
to track things that way.</p>
|
||||
|
||||
<p>Alternatively, you can also import new packages
|
||||
into pkgsrc-wip (“<span class="quote">pkgsrc
|
||||
work-in-progress</span>”); see the homepage
|
||||
at <a href="http://pkgsrc-wip.sourceforge.net/"
|
||||
target=
|
||||
"_top">http://pkgsrc-wip.sourceforge.net/</a> for
|
||||
details.</p>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<p>Our policy is that we accept binaries only from pkgsrc
|
||||
developers to guarantee that the packages don't contain
|
||||
any trojan horses etc. This is not to annoy anyone but
|
||||
rather to protect our users! You're still free to put up
|
||||
your home-made binary packages and tell the world where
|
||||
to get them. NetBSD developers doing bulk builds and
|
||||
wanting to upload them please see <a href="#bulk-upload"
|
||||
title=
|
||||
"6.3.8. Uploading results of a bulk build">Section 6.3.8,
|
||||
“Uploading results of a bulk build”</a>.</p>
|
||||
</div>
|
||||
|
||||
<div class="sect1" lang="en">
|
||||
|
@ -15223,7 +15319,46 @@ TOOLS_PLATFORM.true?= true # shell builtin
|
|||
<div>
|
||||
<div>
|
||||
<h2 class="title" style="clear: both"><a name=
|
||||
"general-notes-for-changes"></a>18.2. General
|
||||
"submitting-your-package"></a>18.2. Submitting
|
||||
source packages (for non-NetBSD-developers)</h2>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p>First, check that your package is complete, compiles
|
||||
and runs well; see <a href="#debug" title=
|
||||
"Chapter 17. Debugging">Chapter 17,
|
||||
<i>Debugging</i></a> and the rest of this document. Next,
|
||||
generate an uuencoded gzipped <a href=
|
||||
"http://netbsd.gw.com/cgi-bin/man-cgi?tar+1+NetBSD-current">
|
||||
<span class="citerefentry"><span class=
|
||||
"refentrytitle">tar</span>(1)</span></a> archive,
|
||||
preferably with all files in a single directory. Finally,
|
||||
<span><strong class="command">send-pr</strong></span>
|
||||
with category “<span class=
|
||||
"quote">pkg</span>”, a synopsis which includes the
|
||||
package name and version number, a short description of
|
||||
your package (contents of the COMMENT variable or DESCR
|
||||
file are OK) and attach the archive to your PR.</p>
|
||||
|
||||
<p>If you want to submit several packages, please send a
|
||||
separate PR for each one, it's easier for us to track
|
||||
things that way.</p>
|
||||
|
||||
<p>Alternatively, you can also import new packages into
|
||||
pkgsrc-wip (“<span class="quote">pkgsrc
|
||||
work-in-progress</span>”); see the homepage at
|
||||
<a href="http://pkgsrc-wip.sourceforge.net/" target=
|
||||
"_top">http://pkgsrc-wip.sourceforge.net/</a> for
|
||||
details.</p>
|
||||
</div>
|
||||
|
||||
<div class="sect1" lang="en">
|
||||
<div class="titlepage">
|
||||
<div>
|
||||
<div>
|
||||
<h2 class="title" style="clear: both"><a name=
|
||||
"general-notes-for-changes"></a>18.3. General
|
||||
notes when adding, updating, or removing
|
||||
packages</h2>
|
||||
</div>
|
||||
|
@ -15285,7 +15420,7 @@ TOOLS_PLATFORM.true?= true # shell builtin
|
|||
<div>
|
||||
<div>
|
||||
<h2 class="title" style="clear: both"><a name=
|
||||
"committing-importing"></a>18.3. Committing:
|
||||
"committing-importing"></a>18.4. Committing:
|
||||
Importing a package into CVS</h2>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -15334,7 +15469,7 @@ TOOLS_PLATFORM.true?= true # shell builtin
|
|||
<div>
|
||||
<div>
|
||||
<h2 class="title" style="clear: both"><a name=
|
||||
"updating-package"></a>18.4. Updating a
|
||||
"updating-package"></a>18.5. Updating a
|
||||
package to a newer version</h2>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -15385,7 +15520,7 @@ TOOLS_PLATFORM.true?= true # shell builtin
|
|||
<div>
|
||||
<div>
|
||||
<h2 class="title" style="clear: both"><a name=
|
||||
"moving-package"></a>18.5. Moving a package in
|
||||
"moving-package"></a>18.6. Moving a package in
|
||||
pkgsrc</h2>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -15492,20 +15627,20 @@ TOOLS_PLATFORM.true?= true # shell builtin
|
|||
|
||||
<div class="qandaset">
|
||||
<dl>
|
||||
<dt>19.1. <a href="#id2654342">What is the difference
|
||||
<dt>19.1. <a href="#id2654583">What is the difference
|
||||
between MAKEFLAGS, .MAKEFLAGS and MAKE_FLAGS?</a></dt>
|
||||
|
||||
<dt>19.2. <a href="#id2654378">What is the difference
|
||||
<dt>19.2. <a href="#id2654619">What is the difference
|
||||
between MAKE, GMAKE and MAKE_PROGRAM?</a></dt>
|
||||
|
||||
<dt>19.3. <a href="#id2654417">What is the difference
|
||||
<dt>19.3. <a href="#id2654658">What is the difference
|
||||
between CC, PKG_CC and PKGSRC_COMPILER?</a></dt>
|
||||
|
||||
<dt>19.4. <a href="#id2654454">What is the difference
|
||||
<dt>19.4. <a href="#id2654763">What is the difference
|
||||
between BUILDLINK_LDFLAGS, BUILDLINK_LDADD and
|
||||
BUILDLINK_LIBS?</a></dt>
|
||||
|
||||
<dt>19.5. <a href="#id2654472">Why does make show-var
|
||||
<dt>19.5. <a href="#id2654781">Why does make show-var
|
||||
VARNAME=BUILDLINK_PREFIX.foo say it's empty?</a></dt>
|
||||
</dl>
|
||||
|
||||
|
@ -15515,8 +15650,8 @@ TOOLS_PLATFORM.true?= true # shell builtin
|
|||
<tbody>
|
||||
<tr class="question">
|
||||
<td align="left" valign="top"><a name=
|
||||
"id2654342"></a><a name=
|
||||
"id2654343"></a><b>19.1.</b></td>
|
||||
"id2654583"></a><a name=
|
||||
"id2654584"></a><b>19.1.</b></td>
|
||||
|
||||
<td align="left" valign="top">
|
||||
<p>What is the difference between <code class=
|
||||
|
@ -15545,8 +15680,8 @@ TOOLS_PLATFORM.true?= true # shell builtin
|
|||
|
||||
<tr class="question">
|
||||
<td align="left" valign="top"><a name=
|
||||
"id2654378"></a><a name=
|
||||
"id2654379"></a><b>19.2.</b></td>
|
||||
"id2654619"></a><a name=
|
||||
"id2654620"></a><b>19.2.</b></td>
|
||||
|
||||
<td align="left" valign="top">
|
||||
<p>What is the difference between <code class=
|
||||
|
@ -15577,8 +15712,8 @@ TOOLS_PLATFORM.true?= true # shell builtin
|
|||
|
||||
<tr class="question">
|
||||
<td align="left" valign="top"><a name=
|
||||
"id2654417"></a><a name=
|
||||
"id2654418"></a><b>19.3.</b></td>
|
||||
"id2654658"></a><a name=
|
||||
"id2654659"></a><b>19.3.</b></td>
|
||||
|
||||
<td align="left" valign="top">
|
||||
<p>What is the difference between <code class=
|
||||
|
@ -15609,8 +15744,8 @@ TOOLS_PLATFORM.true?= true # shell builtin
|
|||
|
||||
<tr class="question">
|
||||
<td align="left" valign="top"><a name=
|
||||
"id2654454"></a><a name=
|
||||
"id2654455"></a><b>19.4.</b></td>
|
||||
"id2654763"></a><a name=
|
||||
"id2654764"></a><b>19.4.</b></td>
|
||||
|
||||
<td align="left" valign="top">
|
||||
<p>What is the difference between <code class=
|
||||
|
@ -15630,8 +15765,8 @@ TOOLS_PLATFORM.true?= true # shell builtin
|
|||
|
||||
<tr class="question">
|
||||
<td align="left" valign="top"><a name=
|
||||
"id2654472"></a><a name=
|
||||
"id2654473"></a><b>19.5.</b></td>
|
||||
"id2654781"></a><a name=
|
||||
"id2654782"></a><b>19.5.</b></td>
|
||||
|
||||
<td align="left" valign="top">
|
||||
<p>Why does <span><strong class="command">make
|
||||
|
|
157
doc/pkgsrc.txt
157
doc/pkgsrc.txt
|
@ -12,15 +12,16 @@ Hubert Feyrer
|
|||
|
||||
The pkgsrc Developers
|
||||
|
||||
Copyright (C) 1994-2005 The NetBSD Foundation, Inc
|
||||
Copyright (C) 1994-2006 The NetBSD Foundation, Inc
|
||||
|
||||
$NetBSD: pkgsrc.xml,v 1.16 2006/05/12 23:03:22 rillig Exp $
|
||||
$NetBSD: pkgsrc.xml,v 1.18 2006/05/19 22:05:09 rillig Exp $
|
||||
|
||||
Abstract
|
||||
|
||||
Information about using the NetBSD package system (pkgsrc) from both a user
|
||||
view for installing packages as well as from a pkgsrc developers' view for
|
||||
creating new packages.
|
||||
pkgsrc is a centralized package management system for Unix-like operating
|
||||
systems. This guide provides information for users and developers of pkgsrc. It
|
||||
covers installation of binary and source packages, creation of binary and
|
||||
source packages and a high-level overview about the infrastructure.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
|
@ -31,6 +32,9 @@ Table of Contents
|
|||
1.1. Introduction
|
||||
1.2. Overview
|
||||
1.3. Terminology
|
||||
|
||||
1.3.1. People involved in pkgsrc
|
||||
|
||||
1.4. Typography
|
||||
|
||||
I. The pkgsrc user's guide
|
||||
|
@ -114,6 +118,7 @@ I. The pkgsrc user's guide
|
|||
7.13. Using 'sudo' with pkgsrc
|
||||
7.14. How do I change the location of configuration files?
|
||||
7.15. Automated security checks
|
||||
7.16. Why do some packages ignore my CFLAGS?
|
||||
|
||||
II. The pkgsrc developer's guide
|
||||
|
||||
|
@ -283,11 +288,12 @@ II. The pkgsrc developer's guide
|
|||
17. Debugging
|
||||
18. Submitting and Committing
|
||||
|
||||
18.1. Submitting your packages
|
||||
18.2. General notes when adding, updating, or removing packages
|
||||
18.3. Committing: Importing a package into CVS
|
||||
18.4. Updating a package to a newer version
|
||||
18.5. Moving a package in pkgsrc
|
||||
18.1. Submitting binary packages
|
||||
18.2. Submitting source packages (for non-NetBSD-developers)
|
||||
18.3. General notes when adding, updating, or removing packages
|
||||
18.4. Committing: Importing a package into CVS
|
||||
18.5. Updating a package to a newer version
|
||||
18.6. Moving a package in pkgsrc
|
||||
|
||||
19. Frequently Asked Questions
|
||||
|
||||
|
@ -348,6 +354,9 @@ Table of Contents
|
|||
1.1. Introduction
|
||||
1.2. Overview
|
||||
1.3. Terminology
|
||||
|
||||
1.3.1. People involved in pkgsrc
|
||||
|
||||
1.4. Typography
|
||||
|
||||
1.1. Introduction
|
||||
|
@ -463,6 +472,32 @@ Program
|
|||
the files in the distfile by the actions defined in the corresponding
|
||||
package.
|
||||
|
||||
1.3.1. People involved in pkgsrc
|
||||
|
||||
pkgsrc users
|
||||
|
||||
The pkgsrc users are people who use the packages provided by pkgsrc.
|
||||
Typically they are system administrators. The people using the software
|
||||
that is inside the packages (maybe called "end users") are not covered by
|
||||
the pkgsrc guide.
|
||||
|
||||
There are two kinds of pkgsrc users: Some only want to install pre-built
|
||||
binary packages. Others build the pkgsrc packages from source, either for
|
||||
installing them directly or for building binary packages themselves. For
|
||||
pkgsrc users Part I, "The pkgsrc user's guide" should provide all necessary
|
||||
documentation.
|
||||
|
||||
package maintainers
|
||||
|
||||
A package maintainer creates packages as described in Part II, "The pkgsrc
|
||||
developer's guide".
|
||||
|
||||
infrastructure developers
|
||||
|
||||
These people are involved in all those files that live in the mk/ directory
|
||||
and below. Only these people should need to read through Part III, "The
|
||||
pkgsrc infrastructure internals", though others might be curious, too.
|
||||
|
||||
1.4. Typography
|
||||
|
||||
When giving examples for commands, shell prompts are used to show if the
|
||||
|
@ -552,6 +587,7 @@ Table of Contents
|
|||
7.13. Using 'sudo' with pkgsrc
|
||||
7.14. How do I change the location of configuration files?
|
||||
7.15. Automated security checks
|
||||
7.16. Why do some packages ignore my CFLAGS?
|
||||
|
||||
Chapter 2. Where to get pkgsrc and how to keep it up-to-date
|
||||
|
||||
|
@ -2015,6 +2051,7 @@ Table of Contents
|
|||
7.13. Using 'sudo' with pkgsrc
|
||||
7.14. How do I change the location of configuration files?
|
||||
7.15. Automated security checks
|
||||
7.16. Why do some packages ignore my CFLAGS?
|
||||
|
||||
This section contains hints, tips & tricks on special things in pkgsrc that we
|
||||
didn't find a better place for in the previous chapters, and it contains items
|
||||
|
@ -2335,6 +2372,20 @@ If this package is installed, pkgsrc builds will use it to perform a security
|
|||
check before building any package. See Section 5.2, "Variables affecting the
|
||||
build process" for ways to control this check.
|
||||
|
||||
7.16. Why do some packages ignore my CFLAGS?
|
||||
|
||||
When you add your own preferences to the CFLAGS variable in your mk.conf, these
|
||||
flags are passed in environment variables to the ./configure scripts and to
|
||||
make(1). Some package authors ignore the CFLAGS from the environment variable
|
||||
by overriding them in the Makefiles of their package.
|
||||
|
||||
Currently there is no solution to this problem. If you really need the package
|
||||
to use your CFLAGS you should run make patch in the package directory and then
|
||||
inspect any Makefile and Makefile.in for whether they define CFLAGS explicitly.
|
||||
Usually you can remove these lines. But be aware that some "smart" programmers
|
||||
write so bad code that it only works for the specific combination of CFLAGS
|
||||
they have chosen.
|
||||
|
||||
Part II. The pkgsrc developer's guide
|
||||
|
||||
Table of Contents
|
||||
|
@ -2504,11 +2555,12 @@ Table of Contents
|
|||
17. Debugging
|
||||
18. Submitting and Committing
|
||||
|
||||
18.1. Submitting your packages
|
||||
18.2. General notes when adding, updating, or removing packages
|
||||
18.3. Committing: Importing a package into CVS
|
||||
18.4. Updating a package to a newer version
|
||||
18.5. Moving a package in pkgsrc
|
||||
18.1. Submitting binary packages
|
||||
18.2. Submitting source packages (for non-NetBSD-developers)
|
||||
18.3. General notes when adding, updating, or removing packages
|
||||
18.4. Committing: Importing a package into CVS
|
||||
18.5. Updating a package to a newer version
|
||||
18.6. Moving a package in pkgsrc
|
||||
|
||||
19. Frequently Asked Questions
|
||||
|
||||
|
@ -2852,7 +2904,7 @@ When a variable's value is parsed from a Makefile, the hash character ``#'' and
|
|||
the backslash character ``\'' are handled specially. If a backslash is followed
|
||||
by a newline, any whitespace immediately in front of the backslash, the
|
||||
backslash, the newline, and any whitespace immediately behind the newline are
|
||||
replaced with a single space. A backspace character and an immediately
|
||||
replaced with a single space. A backslash character and an immediately
|
||||
following hash character are replaced with a single hash character. Otherwise,
|
||||
the backslash is passed as is. In a variable assignment, any hash character
|
||||
that is not preceded by a backslash starts a comment that continues upto the
|
||||
|
@ -5119,10 +5171,12 @@ download it. graphics/ns-cult3d is an example of this usage.
|
|||
|
||||
If the download can't be automated, because the user must submit personal
|
||||
information to apply for a password, or must pay for the source, or whatever,
|
||||
you can set _FETCH_MESSAGE to a macro which displays a message explaining the
|
||||
situation. _FETCH_MESSAGE must be executable shell commands, not just a
|
||||
message. (Generally, it executes ${ECHO}). See one of the following packages
|
||||
for an example: fonts/acroread-jpnfont, sysutils/storage-manager.
|
||||
you can set FETCH_MESSAGE to a list of lines that are displayed to the user
|
||||
before aborting the build. Example:
|
||||
|
||||
FETCH_MESSAGE= "Please download the files"
|
||||
FETCH_MESSAGE+= " "${DISTFILES:Q}
|
||||
FETCH_MESSAGE+= "manually from "${MASTER_SITES:Q}"."
|
||||
|
||||
16.2.2. How to handle modified distfiles with the 'old' name
|
||||
|
||||
|
@ -5870,43 +5924,40 @@ Chapter 18. Submitting and Committing
|
|||
|
||||
Table of Contents
|
||||
|
||||
18.1. Submitting your packages
|
||||
18.2. General notes when adding, updating, or removing packages
|
||||
18.3. Committing: Importing a package into CVS
|
||||
18.4. Updating a package to a newer version
|
||||
18.5. Moving a package in pkgsrc
|
||||
18.1. Submitting binary packages
|
||||
18.2. Submitting source packages (for non-NetBSD-developers)
|
||||
18.3. General notes when adding, updating, or removing packages
|
||||
18.4. Committing: Importing a package into CVS
|
||||
18.5. Updating a package to a newer version
|
||||
18.6. Moving a package in pkgsrc
|
||||
|
||||
18.1. Submitting your packages
|
||||
18.1. Submitting binary packages
|
||||
|
||||
You have to separate between binary and "normal" (source) packages here:
|
||||
Our policy is that we accept binaries only from pkgsrc developers to guarantee
|
||||
that the packages don't contain any trojan horses etc. This is not to annoy
|
||||
anyone but rather to protect our users! You're still free to put up your
|
||||
home-made binary packages and tell the world where to get them. NetBSD
|
||||
developers doing bulk builds and wanting to upload them please see
|
||||
Section 6.3.8, "Uploading results of a bulk build".
|
||||
|
||||
* precompiled binary packages
|
||||
18.2. Submitting source packages (for non-NetBSD-developers)
|
||||
|
||||
Our policy is that we accept binaries only from pkgsrc developers to
|
||||
guarantee that the packages don't contain any trojan horses etc. This is
|
||||
not to annoy anyone but rather to protect our users! You're still free to
|
||||
put up your home-made binary packages and tell the world where to get them.
|
||||
NetBSD developers doing bulk builds and wanting to upload them please see
|
||||
Section 6.3.8, "Uploading results of a bulk build".
|
||||
First, check that your package is complete, compiles and runs well; see
|
||||
Chapter 17, Debugging and the rest of this document. Next, generate an
|
||||
uuencoded gzipped tar(1) archive, preferably with all files in a single
|
||||
directory. Finally, send-pr with category "pkg", a synopsis which includes the
|
||||
package name and version number, a short description of your package (contents
|
||||
of the COMMENT variable or DESCR file are OK) and attach the archive to your
|
||||
PR.
|
||||
|
||||
* packages
|
||||
If you want to submit several packages, please send a separate PR for each one,
|
||||
it's easier for us to track things that way.
|
||||
|
||||
First, check that your package is complete, compiles and runs well; see
|
||||
Chapter 17, Debugging and the rest of this document. Next, generate an
|
||||
uuencoded gzipped tar(1) archive, preferably with all files in a single
|
||||
directory. Finally, send-pr with category "pkg", a synopsis which includes
|
||||
the package name and version number, a short description of your package
|
||||
(contents of the COMMENT variable or DESCR file are OK) and attach the
|
||||
archive to your PR.
|
||||
Alternatively, you can also import new packages into pkgsrc-wip ("pkgsrc
|
||||
work-in-progress"); see the homepage at http://pkgsrc-wip.sourceforge.net/ for
|
||||
details.
|
||||
|
||||
If you want to submit several packages, please send a separate PR for each
|
||||
one, it's easier for us to track things that way.
|
||||
|
||||
Alternatively, you can also import new packages into pkgsrc-wip ("pkgsrc
|
||||
work-in-progress"); see the homepage at http://pkgsrc-wip.sourceforge.net/
|
||||
for details.
|
||||
|
||||
18.2. General notes when adding, updating, or removing packages
|
||||
18.3. General notes when adding, updating, or removing packages
|
||||
|
||||
Please note all package additions, updates, moves, and removals in pkgsrc/doc/
|
||||
CHANGES. It's very important to keep this file up to date and conforming to the
|
||||
|
@ -5930,7 +5981,7 @@ or package moves or removals, set the CTYPE variable on the command line to
|
|||
if your local login name is not the same as your NetBSD login name. Don't
|
||||
forget to commit the changes to pkgsrc/doc/CHANGES!
|
||||
|
||||
18.3. Committing: Importing a package into CVS
|
||||
18.4. Committing: Importing a package into CVS
|
||||
|
||||
This section is only of interest for pkgsrc developers with write access to the
|
||||
pkgsrc repository. Please remember that cvs imports files relative to the
|
||||
|
@ -5952,7 +6003,7 @@ so people reading the mailing lists know what the package is/does.
|
|||
For new packages, "cvs import" is preferred to "cvs add" because the former
|
||||
gets everything with a single command, and provides a consistent tag.
|
||||
|
||||
18.4. Updating a package to a newer version
|
||||
18.5. Updating a package to a newer version
|
||||
|
||||
Please always put a concise, appropriate and relevant summary of the changes
|
||||
between old and new versions into the commit log when updating a package. There
|
||||
|
@ -5977,7 +6028,7 @@ which pkgsrc is used. Please use your judgement about what should go into
|
|||
pkgsrc, and bear in mind that stability is to be preferred above new and
|
||||
possibly untested features.
|
||||
|
||||
18.5. Moving a package in pkgsrc
|
||||
18.6. Moving a package in pkgsrc
|
||||
|
||||
1. Make a copy of the directory somewhere else.
|
||||
|
||||
|
|
Loading…
Reference in a new issue