This replaces the former -D operation that was undocumented and rather
hacky. It can be used with add, upgrade, or sync transactions and will affect
all packages installed. Should close FS #7193.
Also tell makepkg to use this new flag.
Signed-off-by: Dan McGee <dan@archlinux.org>
makepkg: We still need the source files in $srcdir because PKGBUILDS need
access to noextract() files and other file not handled by by
extract_source(). (eg config files)
query.c: Fix some output formating.
Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
Change the behaviour of makepkg so no longer stores a copy of the
source tarball in $srcdir, instead it downloads all sources to $SRCDEST
then extracts them to $srcdir.
Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
When running as root, we don't care if fakeroot is installed, and the user
certainly isn't "unprivileged". Cut out these warnings.
Signed-off-by: Dan McGee <dan@archlinux.org>
Changed the exit code for missing deps from 1 to 127 because 1 is used
for other errors. makepkg breaks if pacman exits with 1 for any reason
other than a missing dep.
Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
It is much easier for translators to deal with paragraphs as strings rather
than by lines. Take all usage and version information and convert it to this
format.
Signed-off-by: Dan McGee <dan@archlinux.org>
If we move the scripts from *.in to *.sh.in and *.py.in, gettext can pull the
required strings to translate a whole lot easier. Do this.
Signed-off-by: Dan McGee <dan@archlinux.org>
I previously introduced some patches to make just about every path in
pacman/libalpm configurable; doing this with the lockfile seemed a bit too
far and we really should just place the lockfile where it belongs- with the
DB that needs locking.
More details in this thread:
http://archlinux.org/pipermail/pacman-dev/2007-June/008499.html
Signed-off-by: Dan McGee <dan@archlinux.org>
When looking for old packages to create a delta from used bsdtar to read the
packages .PKGINFO to check it's name and arch instead of depending on the
filename of th package.
Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
The last typo fix for conflicts wasn't complete,
it only fixed one occurence of the conflicts variable, instead of the two :
http://www.archlinux.org/pipermail/pacman-dev/2007-May/008222.html
This caused all conflicts statement to be ignored, so all databases
will need to be rebuilt with a fixed repo-add.
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
* Add vim modeline to Makefile.am and configure.ac
* Fix white space in Makefile.am and configure.ac
* Add contrib/wget-xdelta.sh to EXTRA_DIST in Makefile.am
Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
Signed-off-by: Dan McGee <dan@archlinux.org>
* Rearrange the script.
* Add gettext support.
* Clean up usage message.
* Add PACKAGE_BUGREPORT to substitution in scripts/Makefile.am
Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg now runs with errexit (exit on syntax error) enabled
for the whole script.
* Removed unneeded setting of errexit around build().
* Added bash traps to catch TERM HUP INT signals.
* Added trap to catch unhandled/unknown errors.
* Added trap to call clean_up() when the script exits.
* Moved call to remove_deps() into clean_up().
* Moved -c/--clean code into clean_up().
Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
Signed-off-by: Dan McGee <dan@archlinux.org>
* Move create_xdelta() outside of fakeroot run.
* Clean up dep check functions.
* Clean up extract_sources().
Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
Signed-off-by: Dan McGee <dan@archlinux.org>
Drop the --usesudo option and use it by default if running as a non-root
user. Check the usage of the --asroot option and do not allow it to be used
as a normal user. A few other small fixes, including a typo in $confdir.
Signed-off-by: Dan McGee <dan@archlinux.org>
* etc/makepkg.conf.in: Add description for xdelta.
* doc/makepkg.conf.5: Add description for xdelta.
* scripts/makepkg.in: Various clean ups.
Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
Signed-off-by: Dan McGee <dan@archlinux.org>
Signed-off-by: Dag Odenhall <dag.odenhall@gmail.com>
Signed-off-by: Andrew Fyfe <Andrew Fyfe andrew@neptune-one.net>
Signed-off-by: Dan McGee <dan@archlinux.org>
We already have $startdir, so this introduces two more shorthand variables
for the most commonly accessed directories.
Signed-off-by: Dan McGee <dan@archlinux.org>
This should finally get the path replacement in our scripts right. This
is the way the autoconf package itself does it and should not need much
further tweaking.
Threw in a few trailing whitespace corrections from the scripts as well.
Signed-off-by: Dan McGee <dan@archlinux.org>
By setting up a few more AC_SUBST macros in configure.ac, we can fill in
paths in the scripts on the fly instead of having them in multiple places.
Other small fixes:
* Fix an oops on my last commit where I had some lines stil commented.
* Fix makepkg bug where the generated package name using PKGEXT had two
periods (..).
Signed-off-by: Dan McGee <dan@archlinux.org>
Added the autoconf option std-options to the scripts/ directory, which
checks to ensure all programs have both --help and --version options. A
few things needed cleaning up to get this working. To test these types
of options, use the 'make distcheck' target.
Signed-off-by: Dan McGee <dan@archlinux.org>
Using printf we can avoid haveing to use eval_gettext and the ugly escape sequances required to use it.
Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
A few changes to undo my stupid mistake earlier wrt fakeroot checking,
and unify the output and usage of 'makepkg.conf'.
Signed-off-by: Dan McGee <dan@archlinux.org>
Only the following functions now run inside fakeroot
* run_build()
* tidy_install()
* create_package()
Added check for inproper use of '-F' option.
Added warning if makepkg is run as root. Added a new '--asroot' flag that
must be passed if you wish to run makepkg as the root user.
Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
Signed-off-by: Dan McGee <dan@archlinux.org>
* change "Tidying Install" message to msg instead of msg2
* Fix quoting issues in usage output
* Remove LANG and friends unsetting- this should be done in the offending
package builds
* Check for defined $BUILDSCRIPT, since it was moved to makepkg.conf
Signed-off-by: Dan McGee <dan@archlinux.org>
Added 'LC_ALL= LANG=' to find commands for stripping symbols from binaries/libraries.
This stops the greps failing if LC_ALL or LANG != en_US|C|POSIX.
Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
The following sets of commands were moved into tidy_install()
* Remove info/doc files.
* Move usr/share/man to usr/man
* Compress man pages.
* Strip debug symbols from binaries/libraries.
* Remove libtool *.la files.
* Remove empty directories.
Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
Remove grep calls from stripping binaries and libraries, which will
not work with localized strings. Clean up the find usage as well.
Signed-off-by: Dan McGee <dan@archlinux.org>
This patch fixes FS #4404 as well as adding support for future protocols by
generalizing the concept of a download agent and allowing a downloader to
be specified for each protocol.
Original work done by Andrew Fyfe <andrew@neptune-one.net>.
Signed-off-by: Dan McGee <dan@archlinux.org>
Moved the following variables into /etc/makepkg.conf
* BUILDSCRIPT
* PKGEXT
* DB_COMPRESSION
* DB_CHECKSUMS
Cleaned up sourcing of /etc/makepkg.conf in scripts and source
~/.makepkg.conf if it exists.
Signed-off-by: Andrew Fyfe <andrew@neptune-one.net>
Signed-off-by: Dan McGee <dan@archlinux.org>
Add gettext support to makepkg. Still to do- figure out for sure what
textdomain the translations should go in (perhaps share with pacman?), and
ensure this doesn't break anything.
Signed-off-by: Dan McGee <dan@archlinux.org>