[pacman-dev] makepkg developmental version
Hi all, I have just packaged a version of makepkg from my git working branch for people to test out. This installs alongside the makepkg from pacman so won't affect your regular package building. i686: http://dev.archlinux.org/~allan/makepkg-git-20081223-1-i686.pkg.tar.gz x86_64: http://dev.archlinux.org/~allan/makepkg-git-20081223-1-x86_64.pkg.tar.gz New features of interest: Package splitting support! - multiple packages are specified in the pkgname variable - each package gets its own packaging function where package variables can be overridden - see PKGBUILD-split.proto (in /usr/share/pacman) for "documentation" Added optional package() function in PKGBUILDs - limits fakeroot usage to packaging stages - see "man PKGBUILD-git.conf" for more info Treat info pages like man pages: - automatically compress info pages - info pages are not removed with the !docs options Added purge option: - automatically removes common conflicting or removed files - specify files in PURGE_TARGETS in makepkg.conf - default PURGE_TARGETS=(usr/{,share}/info/dir .packlist *.pod) Replace getopt usage with internal function: - allows makepkg to run on systems with old getopt version (e.g. Mac OS X) Other smaller changes: - ability to pass PKGBUILD from pipe - package compression type auto-detection - add configuration option to specify man/info page directories - specify alternative configuration file using the --config option - all integrity sums provided are checked - some fixes from the pacman 3.2 maintenance branch: - detect CRLF line endings - when automatically updating an SCM package pkgver, pkgrel is reset to 1 - speed up mercurial package revision checking - improved compatibility with older bash versions Known issues: - The -p flag to specify an alternative name for a PKGBUILD is broken - Repackaging with split-packages definitely does not work - Repackaging when using package() function probably does not work... - Some minor output changes are needed for package splitting Bug reports either to the pacman-dev list or the pacman/makepkg section of the bug tracker. Enjoy, Allan
On Tue, Dec 23, 2008 at 12:45 PM, Allan McRae <allan@archlinux.org> wrote:
Hi all,
I have just packaged a version of makepkg from my git working branch for people to test out. This installs alongside the makepkg from pacman so won't affect your regular package building.
i686: http://dev.archlinux.org/~allan/makepkg-git-20081223-1-i686.pkg.tar.gz x86_64: http://dev.archlinux.org/~allan/makepkg-git-20081223-1-x86_64.pkg.tar.gz
Can you also supply a source tarball? (preferably already autogen'ed).
Yun Zheng Hu wrote:
On Tue, Dec 23, 2008 at 12:45 PM, Allan McRae <allan@archlinux.org> wrote:
Hi all,
I have just packaged a version of makepkg from my git working branch for people to test out. This installs alongside the makepkg from pacman so won't affect your regular package building.
i686: http://dev.archlinux.org/~allan/makepkg-git-20081223-1-i686.pkg.tar.gz x86_64: http://dev.archlinux.org/~allan/makepkg-git-20081223-1-x86_64.pkg.tar.gz
Can you also supply a source tarball? (preferably already autogen'ed).
I suppose... but in the meantime, here is a really bad PKGBUILD that will pull it from git: http://dev.archlinux.org/~allan/PKGBUILD
On Wed, Dec 24, 2008 at 1:35 AM, Allan McRae <allan@archlinux.org> wrote:
I suppose... but in the meantime, here is a really bad PKGBUILD that will pull it from git: http://dev.archlinux.org/~allan/PKGBUILD
Thanks, got the PKGBUILD working on Mac OS X with some small modifications. Found a bug with the -p <buildscript> flag, if you set this option it will get overriden in makepkg when sourcing the config file, on line 1443: # Source the config file; fail if it is not found if [ -r "$MAKEPKG_CONF" ]; then source "$MAKEPKG_CONF" Another small bug, on line 1500, if the BUILDSCRIPT filename contains whitespace it will fail: if [ -z $BUILDSCRIPT ]; then should be quoted like this: if [ -z "$BUILDSCRIPT" ]; then
On Wed, Dec 24, 2008 at 5:32 PM, Yun Zheng Hu <yunzheng.hu@gmail.com> wrote:
Found a bug with the -p <buildscript> flag, if you set this option it will get overriden in makepkg when sourcing the config file, on line 1443:
# Source the config file; fail if it is not found if [ -r "$MAKEPKG_CONF" ]; then source "$MAKEPKG_CONF"
Oops, I just saw this mentioned in the known issues. So ignore this one.
Yun Zheng Hu wrote:
Another small bug, on line 1500, if the BUILDSCRIPT filename contains whitespace it will fail: if [ -z $BUILDSCRIPT ]; then
should be quoted like this: if [ -z "$BUILDSCRIPT" ]; then
I noticed this the other day when working on how to deal with options with spaces in them. Is that the only change that needs made for PKGBUILDs with spaces to work? Allan
Allan McRae wrote:
Yun Zheng Hu wrote:
Another small bug, on line 1500, if the BUILDSCRIPT filename contains whitespace it will fail: if [ -z $BUILDSCRIPT ]; then
should be quoted like this: if [ -z "$BUILDSCRIPT" ]; then
I noticed this the other day when working on how to deal with options with spaces in them. Is that the only change that needs made for PKGBUILDs with spaces to work?
And of course I don't really mean PKGBUILDs with spaces.... Allan
Allan McRae wrote:
I noticed this the other day when working on how to deal with options with spaces in them. Is that the only change that needs made for PKGBUILDs with spaces to work?
Yes, besides the bug that the '-p' setting gets overriden when it sources the makepkg.conf file. In other places where it uses $BUILDSCRIPT it is already properly quoted.
participants (2)
-
Allan McRae
-
Yun Zheng Hu