1
0
mirror of https://github.com/moparisthebest/pacman synced 2024-11-13 21:05:05 -05:00
Commit Graph

194 Commits

Author SHA1 Message Date
Xavier Chantry
b4e1365657 makepkg : remove xdelta support
The pkgdelta script can be used instead.

Signed-off-by: Xavier Chantry <shiningxc@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-02-28 15:42:07 -06:00
Dan McGee
1c4633ea2c Merge branch 'maint' 2009-02-18 21:20:17 -06:00
Dan McGee
48b209d612 Rework optdepends documentation for clarity
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-02-17 16:58:33 -06:00
Allan McRae
08034ceb17 makepkg: add optional package function
This patch allows us to split the building and packaging stages of
a PKGBUILD and minimize fakeroot usage. This can be done with less
code duplication (run_build and run_package look quite similiar) but
the run_package function will be where the package splitting logic
is implemented in the future.

Signed-off-by: Allan McRae <allan@archlinux.org>
2009-01-16 22:20:05 +10:00
Dan McGee
d7345da5ba doc: Consistency and formatting cleanups (for master)
Bring master in line with some things we just did on maint.

Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-13 00:11:17 -06:00
Dan McGee
b369f71fd6 Merge branch 'maint'
Conflicts:
	doc/makepkg.conf.5.txt
2009-01-13 00:10:36 -06:00
Dan McGee
1191303f8b doc: Consistency and formatting cleanups
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-13 00:06:58 -06:00
Dan McGee
e9ca40b56e doc: fix some more asciidoc fallout
They keep changing things on us. This gets rid of the '.ft C' text sprinkled
around our listing blocks.

Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-13 00:00:35 -06:00
Dan McGee
3d6da93093 doc: remove BUILDSCRIPT from makepkg.conf docs
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-12 23:59:44 -06:00
Xavier Chantry
4ec846f5ac makepkg : fix a lot of breakages caused by Allan
This patch started as a simple typo fix (pugre instead of purge in two
places), as well as a fix of a test which was using PURGE_TARGETS instead of
$PURGE_TARGETS.

It evolved in a slight handling change of the OPTIONS which have a variable
affecting their behavior (strip STRIP_DIRS, docs DOC_DIRS, zipman MAN_DIRS
and purge PURGE_TARGETS), as well as a clarification in makepkg.conf. Now
when a variable is undefined or empty, the corresponding option will have no
effect. It looked weird to have a fallback when a option is defined but
empty, it seems more natural to not have any fallbacks.

Also re-enable docs by default. It seems arbitrary to delete files from
packages by default, and it would be more vanilla and distro agnostic to
keep them. docs was also the only negated option.

Signed-off-by: Xavier Chantry <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-12 22:28:10 -06:00
Dan McGee
94c2830572 Fix linkman macro to work with asciidoc > 8.3.0
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-11 22:09:40 -06:00
Allan McRae
1cc8ad6112 makepkg: Add support for specifying LDFLAGS
Provide support for specifying LDFLAGS within makepkg.conf but leaves
this undefined by default. Fixes FS#12542.

Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-03 00:17:15 -06:00
Allan McRae
9a7f68317a makepkg: Introduce purge option
The purge option, combined with the PURGE_TARGETS variable,
allows makepkg to automatically remove commonly confliting or
removed files (e.g. /usr/share/info/dir, *.pod).

Original work: Tim Yang
Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-03 00:11:51 -06:00
Allan McRae
bb9b19a6c4 makepkg: provide MAN_DIRS configuration variable
Provides a MAN_DIRS variable in makepkg.conf which can be used
to specify folders to look for manual (man and info) pages to be
compressed.  Useful for packages that install to /opt.  Also
clarifies that "zipman" means "zip manuals" and covers both man
and info pages.

Original work by: Tiago Pierezan Camargo <tcamargo at gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-03 00:06:51 -06:00
Dan McGee
f8b689d48e Merge branch 'maint'
Conflicts:
	lib/libalpm/dload.c
	po/it.po
	scripts/makepkg.sh.in
2009-01-02 22:48:52 -06:00
Xavier Chantry
bd2de5cdf6 Fix asciidoc manpage creation.
As reported here, man pages could no longer be built :
http://archlinux.org/pipermail/pacman-dev/2008-December/007726.html

I found the explanation here :
http://www.methods.co.nz/asciidoc/source-highlight-filter.html

"If you use a2x(1) to generate PDF you need to include the --no-xmllint
option to suppress xmllint(1) checking — the programlisting language
attribute (required by the dblatex source highlighter) is not part of the
DocBook 4 specification (but it is in the newer DocBook 5 specification)."

Signed-off-by: Xavier Chantry <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-02 22:46:47 -06:00
Allan McRae
2f59996c54 makepkg: detect incorrect usage of provides array
Using > or < in the provides array is wrong so make it cause an error.
Fixes FS#12540.

Also, use bash substitution rather than spawning new processes where
possible in the error checking.  Move split package detection to a
better position.

Signed-off-by: Allan McRae <allan@archlinux.org>
[Dan: backport to maint]
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-02 22:46:47 -06:00
Dan McGee
89b0a76b3c Remove mention of -b from makepkg manpage
Fixes FS#12408.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-12-10 19:23:34 -06:00
Dan McGee
bd628274cc Merge branch 'maint' 2008-12-07 22:12:17 -06:00
Dan McGee
78cf32e194 Small documentation updates for clarity
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-12-07 22:09:24 -06:00
Dan McGee
fa02a71abd Merge branch 'maint' 2008-10-12 21:36:45 -05:00
Dan McGee
d7e502a467 Attempt to idiot-proof making and refreshing docs
I mess this up more often than not, and maybe this will do the trick. Remove
the --enable-asciidoc option as it has been superseded by the --disable-doc
option in usefulness. If you want to skip building docs, you skip building
all docs which is much easier when it comes to ensuring the make 'dist' and
'distcheck' targets will always build the manpages and always build the most
up to date manpages.

Developers shouldn't be affected in their normal builds, nor should end
users of the source tarball.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-10-12 21:29:33 -05:00
Dan McGee
1c47500ea6 Merge branch 'maint' 2008-08-26 20:11:25 -05:00
Xavier Chantry
d6f62ba22d makepkg : allow to specify a download filename
A source entry can now have the following form, to specify a different
filename :
"filename::http://path/to/file"

Of course, the old syntax is still supported :
"http://path/to/file"

And as before, in the second case, the filename used is simply "file".

This fixes FS#11292, because handling multiple source files with the same
name is now possible (just choose a different filename).

But it will also allow to deal much more nicely with funny url like this by
using a sane filename (and unfortunately, there are quite a few) :
http://www.vim.org/scripts/download_script.php?src_id=6992

Signed-off-by: Xavier Chantry <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-25 18:23:05 -05:00
Xavier Chantry
a06d0de104 makepkg.conf : some info / docs adjustements
After commit 7865fb9af4, info pages are now treated like man pages.
This means even with !docs, info pages will still be included. And including
info pages was the main reason the docs option was enabled by default
recently. So this is now longer needed, and we can revert back to !docs by
default for disabling gigantic html pages and other docs.

Signed-off-by: Xavier Chantry <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-25 18:05:25 -05:00
Xavier Chantry
4b183bf9a9 makepkg : add --config option for an alternate config file.
Signed-off-by: Xavier Chantry <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-23 17:46:56 -05:00
Xavier Chantry
7e8f1469c4 Remove DB_COMPRESSION and DB_CHECKSUMS from makepkg.conf
DB_COMPRESSION was only used in repo-add and DB_CHECKSUMS was not used
anywhere.
This also removes the dependency on makepkg.conf in repo-add, so repo-add no
longer needs to source makepkg.conf

And instead of DB_COMPRESSION, it seems better to just check the extension
of the repository file. It does not make sense to have a tar.gz file with a
tar.bz2 extension or whatever.

Signed-off-by: Xavier Chantry <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-23 17:39:58 -05:00
Allan McRae
7865fb9af4 Treat info pages like man pages
As far a package building is concerned, info pages need to be treated
in the same fashion as man pages in that they both can be compressed.
This separates them from other forms of documentation and so it makes
sense to make that distinction within makepkg.

Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-23 09:20:51 -05:00
Xavier Chantry
5b51dbb11e Cleanup of _alpm_pkg_compare_versions.
* Change the return values to be more informative.

It was previously boolean, only indicating if a sync package was newer than
a local package.

Now it is a simple wrapper to vercmp, handling the force flag.

* Remove the verbose output from _alpm_pkg_compare_versions.

The "force" message is not so useful.
The "package : local (v1) is newer than repo (v2)" message can be moved to
-Su operation.
For the -S operation, it is better to have something like :
"downgrading package from v1 to v2"

* Don't display the "up to date -- skipping" and "up to date -- reinstalling"
messages, when the local version is newer than the sync one.

* Fix the behavior of --needed option to not skip a target when the local
version is newer, and clarify its description.

* Add a new alpm_pkg_has_force function

This allows us to access the pkg->force field like any other package fields.

Signed-off-by: Xavier Chantry <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-23 08:47:07 -05:00
Dan McGee
f201f107db doc: allow asciidoc to format the note
By doing the bolding manually, it doesn't look as cool in the HTML generated
manpages. Let asciidoc do the work.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-07 13:11:20 -05:00
Dan McGee
692ea72822 makepkg: Clarify usage instructions for --allsource/--source
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-08-04 13:02:58 -05:00
Dan McGee
5e4882dfe8 Fix vercmp and add additional tests
This vercmp issue has been a sticking point but this should resolve many of
the issues that have come up. Only a few minor code changes were necessary
to get the behavior we desired, and this version appears to beat any other
vercmp rendition on a few more cases added in this commit.

This commit passes all 58 vercmp tests currently out there. Other 'fixes'
still fail on a few tests, namely these ones:

test: ver1: 1.5.a ver2: 1.5 ret: -1 expected: 1
  ==> FAILURE
test: ver1: 1.5 ver2: 1.5.a ret: 1 expected: -1
  ==> FAILURE
test: ver1: 1.5-1 ver2: 1.5.b ret: 1 expected: -1
  ==> FAILURE
test: ver1: 1.5.b ver2: 1.5-1 ret: -1 expected: 1
  ==> FAILURE
4 of 58 tests failed

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-07-24 22:16:28 -05:00
Allan McRae
ae9e33ed88 Make strip paths configurable
This patch introduces a new STRIP_DIRS makepkg.conf option
to change makepkg's search path when stripping binaries.

Original work by: Thomas Bächler <thomas@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-07-20 19:06:14 -05:00
Nagy Gabor
fd8969f678 sync_addtarget rework
Now '-S provision' handling is done in the back-end.

In case of multiple providers, the first one is selected (behavior change:
deleted provision002.py). The old processing order was: literal, group,
provision; the new one: literal, provision, group. This is more rational,
but "pacman -S group" will be slower now. "pacman -S repo/provision" also
works. Provision was generalized to dependencies, so you can resolve deps by
hand: "pacman -S 'bash>2.0'" or "pacman -S 'core/bash>2.0'" etc. This can be
useful in makepkg dependency resolving. The changes were documented in
pacman manual.

alpm_find_pkg_satisfiers and _alpm_find_dep_satisfiers functions were
removed, since they are no longer needed.

I added some verbosity to "select provider instead of literal" and
"fallback to group".

Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-07-13 09:16:55 -05:00
Dan McGee
7edb2e5b0d Add information on version comparison to manpages
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-06-19 19:28:56 -05:00
Dan McGee
d594b6e797 Merge branch 'maint' 2008-06-19 08:51:36 -05:00
Dan McGee
5c6809987e makepkg.conf: make keeping docs the default
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-06-19 08:50:17 -05:00
Dan McGee
2158b8e298 Expand PKGBUILD documentation
Add documentation for $startdir, $srcdir, and $pkgdir variables, as well as
general information about the build() function and about custom variables
in PKGBUILDs. This addresses FS#10634.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-06-14 12:00:43 -05:00
Dan McGee
fff746052c Document pacman -q/--quiet operation
Fixes FS#10644.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-06-14 12:00:40 -05:00
Dan McGee
1824bc6ee6 Allow use of GIT_VERSION in documentation dir
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-06-08 17:26:02 -05:00
Dan McGee
0fc538fcdb Various updates needed prior to a new release
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-06-08 13:50:01 -05:00
Dan McGee
ae5ef3b90f Remove --builddeps from makepkg
This really should be in an external script, as it is not makepkg's job to
rebuild your system.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-05-13 16:01:34 -05:00
Chantry Xavier
d5278ebb3b Add SyncFirst option.
This patch offers a way to fix FS#9228.
By putting "SyncFirst = pacman" in pacman.conf, the version check will
happen before the transaction really starts, and before any replacements is
made.
Otherwise, no version check is done.

The sync301 pactest was updated to use this SyncFirst option.

Example session with SyncFirst = pacman, and a newer pacman version
available :
$ pacman -Su (or pacman -S <any targets>)
:: the following packages should be upgraded first :
    pacman
:: Do you want to cancel the current operation
:: and upgrade these packages now? [Y/n]

resolving dependencies...
looking for inter-conflicts...

Targets: pacman-x.y.z-t

Total Download Size:    x.xx MB
Total Installed Size:   x.xx MB

Proceed with installation? [Y/n] n

As Nagy previously noted, doing this check on any -S operations might look
intrusive, but it can be required.
For example, the case where you want to install a package with versioned
provisions, using a pacman version which didn't support that feature yet
(and there is already a newer pacman in sync db supporting it).

Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-05-13 15:49:02 -05:00
Dan McGee
2edd01a973 scripts: add -q/--quiet option to repo-add and repo-remove
They are pretty noisy scripts in their normal course of operations, so allow
all messages to be squashed except for warning and error messages with this
new flag.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-05-10 00:48:55 -05:00
Chantry Xavier
6b31183576 Doxyfile : enable JAVADOC_AUTOBRIEF.
From http://www.stack.nl/~dimitri/doxygen/config.html#cfg_javadoc_autobrief

JAVADOC_AUTOBRIEF
    If the JAVADOC_AUTOBRIEF is set to YES then doxygen will interpret the
first line (until the first dot) of a JavaDoc-style comment as the brief
description. If set to NO (the default), the Javadoc-style will behave just
like regular Qt-style comments (thus requiring an explicit @brief command
for a brief description.)

Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-04-29 15:51:48 -05:00
Dan McGee
0d1263af26 Merge branch 'maint' 2008-03-30 13:42:24 -05:00
Dan McGee
41c1295559 doc/pacman.8: fix manpage typo
Fix a misspelling and make a clarification while we are at it.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-30 13:41:19 -05:00
Dan McGee
d9b9e60d7d Fix manpage typo
Noticed in FS#10025.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-30 11:00:53 -05:00
Chantry Xavier
3d10d460df Add new CleanMethod option.
As it was already mentioned several times, the new -Sc behavior in 3.1 is
great, but only when the package cache is not shared.

This option has two possible values : KeepInstalled and KeepCurrent
With KeepCurrent, -Sc will clean packages that are no longer available in
any sync db, rather than packages that are no longer in the local db. The
resulting behavior should be better for shared cache.

Ref :
http://www.archlinux.org/pipermail/pacman-dev/2008-February/011140.html

Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-23 13:38:23 -05:00
Chantry Xavier
5af076f09f Kill the dependsonly option.
From the man page :
"This is pretty useless and we're not sure why it even exists."

Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2008-03-22 18:39:15 +01:00