From e93b0a2f37a41e8ba38f7ae7aa6f4ec7c5b8664d Mon Sep 17 00:00:00 2001 From: Dan McGee Date: Sun, 13 Jan 2008 17:41:35 -0600 Subject: doc: update makepkg options Add documentation for --holdver (from Scott) and --forcever (saying this is an internal option that should not be used by most end users), and re-alphabetize the --asroot option. Signed-off-by: Dan McGee --- doc/makepkg.8.txt | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) (limited to 'doc') diff --git a/doc/makepkg.8.txt b/doc/makepkg.8.txt index 689556d4..8f166a55 100644 --- a/doc/makepkg.8.txt +++ b/doc/makepkg.8.txt @@ -30,6 +30,11 @@ to use. Options ------- +*\--asroot*:: + Allow makepkg to run as root. This is for security purposes as it is + normally dangerous to do so. This will also disable use of fakeroot and + sudo. + *-A, \--ignorearch*:: Ignore a missing or incomplete arch field in the build script. This is for rebuilding packages from source when the PKGBUILD may be slightly @@ -68,6 +73,11 @@ Options default to the current directory. This allows the built package to be overwritten. +*-forcever*:: + This is a hidden option that should *not* be used unless you really know + what you are doing. makepkg uses this internally when calling itself to + set the new development pkgver of the package. + *-g, \--geninteg*:: For each source file in the source array of PKGBUILD, download the file if required and generate integrity checks. The integrity checks @@ -78,6 +88,11 @@ Options *-h, \--help*:: Output syntax and command line options. +*\--holdver*:: + Useful when building development versions of packages. Prevents makepkg + from automatically bumping the pkgver to the latest revision number in + the package's development tree. + *-i, \--install*:: Install or upgrade the package after a successful build using linkman:pacman[8]. @@ -108,11 +123,6 @@ Options dependencies are not found, pacman will try to resolve them. If successful, the missing packages will be downloaded and installed. -*\--asroot*:: - Allow makepkg to run as root. This is for security purposes as it is - normally dangerous to do so. This will also disable use of fakeroot and - sudo. - *\--source*:: Do not actually build the package, but build a source-only tarball. This is useful for passing a single tarball to another program such as a -- cgit v1.2.3-54-g00ecf From 6ee95afe7e9ac1b0ecdc517948ecdcc3b69ccf68 Mon Sep 17 00:00:00 2001 From: Chantry Xavier Date: Sun, 13 Jan 2008 22:43:53 +0100 Subject: doc: update documentation for --recursive and --cascade This addresses some of the issues in FS#9192. Attempt to clarify the -Rc and -Rs options in the man page. Signed-off-by: Chantry Xavier Signed-off-by: Dan McGee --- doc/pacman.8.txt | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'doc') diff --git a/doc/pacman.8.txt b/doc/pacman.8.txt index 0da83a67..33c0794c 100644 --- a/doc/pacman.8.txt +++ b/doc/pacman.8.txt @@ -207,7 +207,8 @@ Remove Options[[RO]] -------------------- *-c, \--cascade*:: Remove all target packages, as well as all packages that depend on one - or more target packages. This operation is recursive. + or more target packages. This operation is recursive, and must be used + with care since it can remove many potentially needed packages. *-k, \--keep*:: Removes the database entry only. Leaves all files in place. @@ -218,10 +219,11 @@ Remove Options[[RO]] file should be renamed with a ``.pacsave'' extension. *-s, \--recursive*:: - Remove each target specified including all dependencies, provided that - (A) they are not required by other packages; and (B) they were not - explicitly installed by the user. This option is analogous to a - backwards '\--sync' operation. + Remove each target specified including all of their dependencies, provided + that (A) they are not required by other packages; and (B) they were not + explicitly installed by the user. This operation is recursive and analogous + to a backwards '\--sync' operation, and helps keep a clean system without + orphans. Sync Options[[SO]] -- cgit v1.2.3-54-g00ecf From 6eee9e987a2dc6eba183f61fb596b7e0b8cc1645 Mon Sep 17 00:00:00 2001 From: Chantry Xavier Date: Tue, 15 Jan 2008 00:15:30 +0100 Subject: Update cachedir documentation (FS#9204). Signed-off-by: Chantry Xavier Signed-off-by: Dan McGee --- doc/pacman.8.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'doc') diff --git a/doc/pacman.8.txt b/doc/pacman.8.txt index 33c0794c..c47af65e 100644 --- a/doc/pacman.8.txt +++ b/doc/pacman.8.txt @@ -120,9 +120,9 @@ Options *\--cachedir* <'dir'>:: Specify an alternative package cache location (a typical default is ``/var/cache/pacman/pkg''). Multiple cache directories can be specified, - and they are tried in the order they are passed to pacman. *NOTE*: if - specified, this is an absolute path and the root path is not automatically - prepended. This behavior changed in pacman 3.1.0. + and they are tried in the order they are passed to pacman. *NOTE*: this + is an absolute path, the root path is not automatically prepended. This + behavior changed in pacman 3.1.0. *\--config* <'file'>:: Specify an alternate configuration file. -- cgit v1.2.3-54-g00ecf From 0c5b68877b107f4844f29eb77a9ea5bf7b73fe01 Mon Sep 17 00:00:00 2001 From: Chantry Xavier Date: Mon, 14 Jan 2008 20:28:29 +0100 Subject: Change the versioned provision format. Change the 'provname provver' format to 'provname=provver'. In .PKGINFO, the provisions are copied from the PKGBUILD without quotes. So the provision version was actually handled as a different provision... See FS#9171. Dan: Unfortunately we have to change our original specification for versioned provisions with this patch, but it ends up being the simpler and cleaner solution in the long run, and if there is any time to change it the time is now before many packages have been built. Keeping the ' ' based format would have required us to do special parsing in repo-add, as well as being susceptible to users not using quotes in their provides array. Hopefully this will resolve the issues we had with our initial plan. Sorry for the confusion. Acked-by: Nagy Gabor Signed-off-by: Chantry Xavier Signed-off-by: Dan McGee --- doc/PKGBUILD.5.txt | 5 +++-- lib/libalpm/db.c | 2 +- lib/libalpm/deps.c | 4 ++-- pactest/tests/provision001.py | 2 +- pactest/tests/provision002.py | 4 ++-- pactest/tests/provision011.py | 2 +- pactest/tests/provision012.py | 2 +- pactest/tests/provision021.py | 2 +- pactest/tests/provision022.py | 2 +- 9 files changed, 13 insertions(+), 12 deletions(-) (limited to 'doc') diff --git a/doc/PKGBUILD.5.txt b/doc/PKGBUILD.5.txt index 3ef9d04e..ac394729 100644 --- a/doc/PKGBUILD.5.txt +++ b/doc/PKGBUILD.5.txt @@ -145,8 +145,9 @@ Options and Directives a package to provide dependencies other than its own package name. For example, the dcron package can provide 'cron', which allows packages to depend on 'cron' rather than 'dcron OR fcron'. - Versioned provisions are also possible. For example, dcron can provide - 'cron 2.0' to satisfy the 'cron>=2.0' dependency of other packages. + Versioned provisions are also possible, in the 'name=version' format. + For example, dcron can provide 'cron=2.0' to satisfy the 'cron>=2.0' + dependency of other packages. *replaces (array)*:: An array of packages that this package should replace, and can be used diff --git a/lib/libalpm/db.c b/lib/libalpm/db.c index d8e770b8..1485c34a 100644 --- a/lib/libalpm/db.c +++ b/lib/libalpm/db.c @@ -650,7 +650,7 @@ int _alpm_prov_cmp(const void *provision, const void *needle) char *tmpptr; char *provname = strdup(provision); int retval = 0; - tmpptr = strchr(provname, ' '); + tmpptr = strchr(provname, '='); if(tmpptr != NULL) { /* provision-version */ *tmpptr='\0'; diff --git a/lib/libalpm/deps.c b/lib/libalpm/deps.c index 8c302b69..ec52083e 100644 --- a/lib/libalpm/deps.c +++ b/lib/libalpm/deps.c @@ -336,10 +336,10 @@ int SYMEXPORT alpm_depcmp(pmpkg_t *pkg, pmdepend_t *dep) satisfy = (strcmp(pkgname, dep->name) == 0 && dep_vercmp(pkgversion, dep->mod, dep->version)); - /* check provisions, format : "name version" */ + /* check provisions, format : "name=version" */ for(i = alpm_pkg_get_provides(pkg); i && !satisfy; i = i->next) { char *provname = strdup(i->data); - char *provver = strchr(provname, ' '); + char *provver = strchr(provname, '='); if(provver == NULL) { /* no provision version */ satisfy = (dep->mod == PM_DEP_MOD_ANY diff --git a/pactest/tests/provision001.py b/pactest/tests/provision001.py index 36364c16..37e3d935 100644 --- a/pactest/tests/provision001.py +++ b/pactest/tests/provision001.py @@ -1,7 +1,7 @@ self.description = "-S provision" sp = pmpkg("pkg1") -sp.provides = ["provision 1.0-1"] +sp.provides = ["provision=1.0-1"] self.addpkg2db("sync", sp) self.args = "-S provision" diff --git a/pactest/tests/provision002.py b/pactest/tests/provision002.py index fa5f3688..32bc4b8d 100644 --- a/pactest/tests/provision002.py +++ b/pactest/tests/provision002.py @@ -1,11 +1,11 @@ self.description = "-S provision" sp = pmpkg("pkg1") -sp.provides = ["provision 1.0-1"] +sp.provides = ["provision=1.0-1"] self.addpkg2db("sync", sp) sp = pmpkg("pkg2") -sp.provides = ["provision 1.0-1"] +sp.provides = ["provision=1.0-1"] self.addpkg2db("sync", sp) self.args = "-S provision" diff --git a/pactest/tests/provision011.py b/pactest/tests/provision011.py index 7fd5e6b4..96aac300 100644 --- a/pactest/tests/provision011.py +++ b/pactest/tests/provision011.py @@ -5,7 +5,7 @@ self.addpkg(p) lp = pmpkg("pkg2", "1.0-2") -lp.provides = ["provision 1.0-2"] +lp.provides = ["provision=1.0-2"] self.addpkg2db("local", lp) self.args = "-U %s" % p.filename() diff --git a/pactest/tests/provision012.py b/pactest/tests/provision012.py index 11cdad4e..f7ed2216 100644 --- a/pactest/tests/provision012.py +++ b/pactest/tests/provision012.py @@ -5,7 +5,7 @@ self.addpkg(p) lp = pmpkg("pkg2", "1.0-2") -lp.provides = ["provision 1.0-1"] +lp.provides = ["provision=1.0-1"] self.addpkg2db("local", lp) self.args = "-U %s" % p.filename() diff --git a/pactest/tests/provision021.py b/pactest/tests/provision021.py index 4b06a1a7..a98e1f33 100644 --- a/pactest/tests/provision021.py +++ b/pactest/tests/provision021.py @@ -5,7 +5,7 @@ self.addpkg2db("sync", p) lp = pmpkg("pkg2", "1.0-2") -lp.provides = ["provision 1.0-2"] +lp.provides = ["provision=1.0-2"] self.addpkg2db("local", lp) self.args = "-S %s" % p.name diff --git a/pactest/tests/provision022.py b/pactest/tests/provision022.py index d7f06913..4883d428 100644 --- a/pactest/tests/provision022.py +++ b/pactest/tests/provision022.py @@ -5,7 +5,7 @@ self.addpkg2db("sync", p) lp = pmpkg("pkg2", "1.0-2") -lp.provides = ["provision 1.0-1"] +lp.provides = ["provision=1.0-1"] self.addpkg2db("local", lp) self.args = "-S %s" % p.name -- cgit v1.2.3-54-g00ecf