head	1.3;
access;
symbols
	rpm-3_0_2:1.2
	rpm-3_0:1.2.0.2
	r2-94:1.2
	r2-93:1.2
	r2-92:1.2
	r2-91:1.2
	r2-5-7:1.1
	r2-5-6:1.1
	jbj-pre-automake:1.1
	r2-5-5:1.1
	r2-5-4:1.1
	r2-5-3:1.1
	r2-90:1.2
	branch-r2-5:1.1.0.8
	r2-5-2:1.1
	r2-5-1:1.1
	r2-5:1.1
	r2-4-109:1.1
	r2-4-108:1.1
	r2-4-107:1.1
	r2-4-106:1.1
	r2-4-104:1.1
	r2-4-103:1.1
	r2-4-102:1.1
	r2-4-101:1.1
	r2-4-100:1.1
	r2-4-99:1.1
	r2-4-tree:1.1.0.6
	r-2-4-tree:1.1.0.4
	r2-4-12:1.1
	r2-3-12:1.1
	r2-3-11-patches:1.1.0.2
	r2-4-11:1.1
	r2-4-10:1.1
	r2-4-9:1.1
	r2-4-8:1.1
	r2-4-7:1.1
	r2-4-6:1.1
	r2-4-5:1.1
	r2-4-4:1.1
	r2-4-3:1.1
	r2-4-2:1.1
	r2-4-1:1.1
	r2-3-11:1.1
	r2-4:1.1
	2-3-11:1.1
	2-3-10:1.1
	2-3-9:1.1
	2-3-8:1.1
	2-3-7:1.1
	2-3-6:1.1
	2-3-5:1.1
	2-3-4:1.1
	2-3-3:1.1
	2-3-2:1.1
	2-3-1:1.1
	2-2-11:1.1
	2-2-10:1.1
	2-3:1.1
	2-2-9:1.1
	2-2-8:1.1
	2-2-7:1.1;
locks; strict;
comment	@# @;


1.3
date	99.07.19.22.13.12;	author jbj;	state dead;
branches;
next	1.2;

1.2
date	99.01.19.16.02.48;	author jbj;	state Exp;
branches;
next	1.1;

1.1
date	96.07.12.02.31.16;	author ewt;	state Exp;
branches;
next	;


desc
@@


1.3
log
@add pl translation and man pages (Tomasz K?oczko et al).
@
text
@RELOCATABLE PACKAGES
====================

Relocatable packages are a way to give the user a little control
over the installation location of a package.  For example, a vendor
may distribute their software to install in "/opt" but you'd like
it to install in "/usr/opt".  If the vendor were distributing a
relocatable RPM package, it would be easy.

Building a Relocatable Package
------------------------------

Not all software can be "relocatable".  Before continuing you should
think about how the program works, what files it accesses, what other
programs access *it* (and expect it to be in a certain place), etc.
If you determine that the location of the package doesn't matter,
then it can probably be built as "relocatable".

All you need to do to build a relocatable package is put one or more:

  Prefix: <dir>

in your spec file.  The "<dir>" will usually be something like "/usr",
"/usr/local", or "/opt".  Every file in your %files list must start
with that prefix.  For example, if you have "Prefix: /usr" and your
%files list contains "/etc/foo.conf", the build will fail. The fix for
this is to put

  Prefix: /usr
  Prefix: /etc

into the spec file so that the /usr and /etc directories may be
relocated separately when this package is installed.


Installing Relocatable Packages
-------------------------------

By default, RPM will install a relocatable package in the prefix
directory listed in the spec file.  You can override this on the
RPM install command line with "--prefix <dir>".  For example, if
the package in question were going to be installed in "/opt" but
you don't have enough disk space there (and it is a relocatable
package), you could install it "--prefix /usr/opt".

If there is more then one Prefix you may relocate each prefix
separately by using syntax like:

  rpm ... --relocate /opt=/usr/opt --relocate /etc=/usr/etc ...

If any of the Prefixs are not being relocated they can be skipped on
the command line

@


1.2
log
@getservbyname returns network ordered port.
@
text
@@


1.1
log
@Initial revision
@
text
@d19 1
a19 1
All you need to do to build a relocatable package is put:
d26 9
a34 1
%files list contains "/etc/foo.conf", the build will fail.
d45 9
@

