summaryrefslogtreecommitdiff
path: root/doc/manual/relocatable
diff options
context:
space:
mode:
authorKim Kibum <kb0929.kim@samsung.com>2012-05-21 17:49:08 +0900
committerKim Kibum <kb0929.kim@samsung.com>2012-05-21 17:49:08 +0900
commitdec48cfa66e17ba4a7e50c92cb24b913289feb12 (patch)
treee1f48cd5cabb40a1d604b36949ff072d01267cb5 /doc/manual/relocatable
parentb7a3bffb8e0341b7e4ef69def268bca3a7f279ff (diff)
downloadrpm-dec48cfa66e17ba4a7e50c92cb24b913289feb12.tar.gz
rpm-dec48cfa66e17ba4a7e50c92cb24b913289feb12.tar.bz2
rpm-dec48cfa66e17ba4a7e50c92cb24b913289feb12.zip
Upload Tizen:Base source
Diffstat (limited to 'doc/manual/relocatable')
-rw-r--r--doc/manual/relocatable57
1 files changed, 57 insertions, 0 deletions
diff --git a/doc/manual/relocatable b/doc/manual/relocatable
new file mode 100644
index 0000000..d73d0ce
--- /dev/null
+++ b/doc/manual/relocatable
@@ -0,0 +1,57 @@
+/*! \page relocatable 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.
+
+\section relocatable_building 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:
+
+\verbatim
+ Prefix: <dir>
+\endverbatim
+
+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
+
+\verbatim
+ Prefix: /usr
+ Prefix: /etc
+\endverbatim
+
+into the spec file so that the /usr and /etc directories may be
+relocated separately when this package is installed.
+
+
+\section relocatable_installing 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:
+
+\verbatim
+ rpm ... --relocate /opt=/usr/opt --relocate /etc=/usr/etc ...
+\endverbatim
+
+If any of the Prefixes is not being relocated they can be skipped on
+the command line
+
+*/