summaryrefslogtreecommitdiff
path: root/scripts
Commit message (Collapse)AuthorAge
* makepkg: use "declare -f" to test for function presenceAndres P2010-06-21
| | | | | Signed-off-by: Andres P <aepd87@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: fix variable checks when writing pkginfoAndres P2010-06-21
| | | | | | | | | Regression caused by c71fe7db. Was checking for "optdepend" and "conflict" rather than "optdepends" and "conflicts" when populating .PKGINFO. Signed-off-by: Andres P <aepd87@gmail.com> [Allan: adjust commit message] Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: Extract from any file bsdtar can recognizeNezmer2010-06-17
| | | | | | | | | | | If "file -bizL" does not return a supported type, check if the file is recognized by bsdtar and if yes extract from it. Dan: use '-q' option to prevent needing to seek the entire archive. Signed-off-by: Nezmer <git@nezmer.info> Signed-off-by: Dan McGee <dan@archlinux.org> Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: use printf when writing pkginfoAndres P2010-06-17
| | | | | Signed-off-by: Andres P <aepd87@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: use single redirection when writing PKGINFOAndres P2010-06-17
| | | | | | | | Instead of specifying the output file on every echo, leave it to the caller of write_pkginfo to specify the target. Signed-off-by: Andres P <aepd87@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: use double bracketsAndres P2010-06-17
| | | | | | | Change all instances of the (test) [ builtin to the [[ keyword. Signed-off-by: Andres P <aepd87@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: use type -p's return value for PATH checksAndres P2010-06-17
| | | | | | | | | | | Rely on type -p's return value instead of a string check. And gettext was previously being checked with type -t, which was inconsistent with the rest of the tests pertaining commands that aren't expected to be functions nor builtins. Signed-off-by: Andres P <aepd87@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: fallback to sane defaults for library strippingAllan McRae2010-06-17
| | | | | | | | If the library stripping variables are not defined in makepkg.conf, libraries will be fully stripped and become broken. Fallback to a sane default stripping level. Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: use BUILDFILE rather than BUILDSCRIPTAllan McRae2010-06-09
| | | | | | | In check_sanity, BUILDFILE needs to be checked rather than BUILDSCRIPT. Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: fix errors with multiple install or changelog filesAllan McRae2010-06-09
| | | | | | Another issue caused by fe1e3471. Signed-off-by: Allan McRae <allan@archlinux.org>
* Fix creation of source packagesAllan McRae2010-06-09
| | | | | | | | | | | | | Source packages were getting created with only links to local source files. Caused by commit 5cddcc90. Also, fix dangling symlinks to install and changelog files. Caused by commit fe1e3471. Thanks to Christopher Rogers <slaxemulator@gmail.com> for pointing out areas that were failing. Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: refactor absolute filename detectionCedric Staniewski2010-06-03
| | | | | | | | | | | Move the absolute filename detection to a new function to reduce code duplication. This patch also fixes the --allsource option that did not include remote source files if they reside in $startdir instead of $SRCDEST. Signed-off-by: Cedric Staniewski <cedric@gmx.ca> Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: print only base filename of install/changelog filesCedric Staniewski2010-06-03
| | | | | | | | The complete file path of a temporary symlink is really useless information. Signed-off-by: Cedric Staniewski <cedric@gmx.ca> Signed-off-by: Dan McGee <dan@archlinux.org>
* repo-add: symlink to db file to reponame.dbAllan McRae2010-05-27
| | | | | | | | This is a small step towards allowing pacman to handle databases with variable compression types. Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: remove code duplication in buildscript parsingAndres P2010-05-27
| | | | | | | | | | | | Merges code in two almost identical chunks in create_srcpackage and check_sanity. Also discards the space kept by regex in ae73d75660 and earlier, since the for loop discards it later on. Signed-off-by: Andres P <aepd87@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: replace unnecessary uses of grepAndres P2010-05-24
| | | | | | Signed-off-by: Andres P <aepd87@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: fix permissions on install and changelog filesAllan McRae2010-05-24
| | | | | | | | | The .INSTALL and .CHANGELOG files in a package retained the permissions that they had in $startdir. Do a chmod after copying to ensure that the permissions are sane. Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: don't decompress when stripping binariesAndres P2010-05-24
| | | | | | | | | f569c4a042 wrongly relied on file's output. The fix is to not decompress files in the first place. Signed-off-by: Andres P <aepd87@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
* rankmirrors: Add a --repo option to target a specific repoDaenyth2010-05-18
| | | | | Signed-off-by: Daenyth <Daenyth+Arch@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: allow skipping integrity checks when making source packageAllan McRae2010-05-18
| | | | | | | | Extends the use of the --skipinteg option to creating a source package. Fixes FS#15984. Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* Resolve dependencies whenever --syncdeps is passed and --nodeps is notNezmer2010-05-18
| | | | | | | | | | | | | | | | | | | With this patch, dependencies will be resolved and not silently ignored when running: makepkg --nobuild --syncdeps makepkg --repackage --syncdeps Also, a warning is displayed when repackaging and dependencies are not being resolved. Thank you Allan for the feedback. Signed-off-by: Nezmer <git@nezmer.info> [Allan: Only warn when repackaging with a package function] Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* fix for incorrect checking of return code, which causes syntax errorsDieter Plaetinck2010-05-18
| | | | | Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: rework --skipintegAllan McRae2010-05-05
| | | | | | | | | The current --skipinteg is a bit weird. It does not skip integrity checks, but instead does them and prints a warning. Change this behaviour to actually skipping the checks. Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg -g: use checksums defined in the pkgbuildXavier Chantry2010-05-05
| | | | | | | | Signed-off-by: Xavier Chantry <shiningxc@gmail.com> [Allan: amend documentation] Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: handle multiple install and changelog filesAllan McRae2010-05-05
| | | | | | | | | | | | | | | | | | | | | | | The presence of all install and changelog files (multiple files may be used with package splitting) is checked for in check_sanity(). All install and changelog files are copied to the source location when using --source. The check for install and changelog file presence is removed in create_srcpackage() as this is redundant to the checks performed in check_sanity(). Moved install and changelog handling in create_srcpackage() to after source array files, as this is more logical and readily allows for the following. A check is made when creating a source package that a symlink to an install file has not already been added. This can occur if the install file is used multiple times or if it is listed in the source array. Fixes FS#18831, FS#18394 and partially fixes FS#16004 Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: fall back to su if sudo is not availableRay Kohler2010-05-05
| | | | | | Signed-off-by: Ray Kohler <ataraxia937@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: improve removal of installed dependenciesAllan McRae2010-05-05
| | | | | | | | | | | | | | | Compare a list of packages on the system before and after dependency resolution in order to get a complete list of packages to remove. This allows makepkg to remove packages installed due to provides. Bail in cases where packages that were on the system originally have been removed as there is a risk of breaking the system when removing the new packages. Fixes FS#15144. Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: BSD find compatibility fixAllan McRae2010-04-26
| | | | | Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: deprecate repackaging without a package functionAllan McRae2010-04-26
| | | | | | | | | | | File permissions are not guaranteed to stay the same on exit from fakeroot, so repackaging may result in files with different permissions. This is avoided when using a package() function (or split packages) as the packaging step is rerun. Signed-off-by: Allan McRae <allan@archlinux.org> [Dan: touched up message for translation purposes] Signed-off-by: Dan McGee <dan@archlinux.org>
* Bump copyright dates to 2010Dan McGee2010-03-14
| | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: always update symlinks to compressed man pagesAllan McRae2010-03-14
| | | | | | | | | When a man page has both symbolic and hard links, any symlink pointing to other than the alphabetically first hardlink was not "compressed" and left dangling towards the uncompressed man page. Fixes FS#18569. Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: make strip options configurableCedric Staniewski2010-03-14
| | | | | | | | | | | | | The newly added variables STRIP_BINARIES, STRIP_SHARED and STRIP_STATIC, that are set in makepkg.conf, specify the strip options used on binaries and shared and static libraries. In addition, files are now stripped more aggressively by default. Implements FS#13592 the way it was suggested by Allan in the comments. Signed-off-by: Cedric Staniewski <cedric@gmx.ca> Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: Remove setgid bit on srcdir/pkgdir creationDan McGee2010-03-14
| | | | | | | | | | It was noted in FS#17533 that setgid bits are carried down into any created subdirectories, and thus could end up being in a built package if the original package directory was marked g+s. When we create src/ and pkg/, explicitly chmod them to remove any sticky bits. Signed-off-by: Dan McGee <dan@archlinux.org> Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: abort on missing or non-writable PKGDESTAllan McRae2010-03-14
| | | | | | | | | | | | When PKGDEST pointed to a non-writable location, makepkg would fail after completing the build process. This patch makes it abort as soon as PKGDEST is parsed. Also, move the SRCDEST check to the same point rather than right before downloading sources (which was after dependency checks). Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: only strip files that are writableAllan McRae2010-03-14
| | | | | | | TODO: http://mailman.archlinux.org/pipermail/pacman-dev/2010-January/010390.html Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: update required programsAllan McRae2010-02-28
| | | | | | | Remove getopt, add xz. Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: Introduce $SRCPKGDESTNezmer2010-01-19
| | | | | | | | | | Introduce $SRCPKGDEST to define a destination dir for source packages instead of saving them in $PKGDEST with binary packages. The simple patch doesn't break old behavior. Signed-off-by: Nezmer <git@nezmer.info> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: remove srclinks directory on error exitCedric Staniewski2009-12-13
| | | | | | | | | When makepkg exits in create_srcpackage(), the (temporary) srclinks directory is left behind. Signed-off-by: Cedric Staniewski <cedric@gmx.ca> Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: skip devel_check() when repackagingNezmer2009-12-13
| | | | | | | | | Currently, "makepkg -R" creates a package with a wrong updated $pkgver. Signed-off-by: Nezmer <Nezmer@allurelinux.org> [Allan: adjusted comment] Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: limit sudo usage to allowed pacman commandsCedric Staniewski2009-12-13
| | | | | | | | | This is particularly useful when using pacman wrappers which call sudo by themselves and therefore should not be run as root. Signed-off-by: Cedric Staniewski <cedric@gmx.ca> Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: allow to specify an alternative pacman commandCedric Staniewski2009-12-13
| | | | | | | | | | | | | If PACMAN environment variable is set, makepkg will try to use this command to check for installed dependencies and to install or remove packages. Otherwise, makepkg will fall back to pacman. Implements FS#13028. Signed-off-by: Cedric Staniewski <cedric@gmx.ca> Signed-off-by: Allan McRae <allan@archlinux.org> [Dan: move envvar section in manpage] Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: check for references to build root in packageAllan McRae2009-12-13
| | | | | | | | | | Add a check that the package does not contain references to the folder it was built in. Fixes FS#14751 Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: allow specifying subsets of packages to buildAllan McRae2009-11-30
| | | | | | | | | | | This allows makepkg to only build a specified subset of packages from a split PKGBUILD. This is very useful in combination with the -R flag or when bumping the pkgrel of a single package. Fixes FS#15956. Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: move pacman calls to a functionCedric Staniewski2009-11-30
| | | | | Signed-off-by: Cedric Staniewski <cedric@gmx.ca> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: Place packages symlinks in build dir when PKGDEST is usedEric Bélanger2009-11-30
| | | | | | | | | | | | When PKGDEST is used, symlinks to the packages will be put in the build directory. This combines the convenience of a global package cache with the ease of having a package (i.e. a symlink) in the build directory for testing and installation purpose. Signed-off-by: Eric Bélanger <snowmaniscool@gmail.com> [Allan: add comment documenting clean-up addition] Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* Replace an ugly while [ with a for (( loopIsaac Good2009-11-30
| | | | | | Signed-off-by: Isaac Good <pacman@isaac.otherinbox.com> Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: Fixed logging for split packagesEric Bélanger2009-11-15
| | | | | | Signed-off-by: Eric Bélanger <snowmaniscool@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: allow the use of only a package() functionCedric Staniewski2009-11-15
| | | | | | | | | | | | | | | For some packages, generally the 'any' arch ones, a build step is not required and therefore can be skipped. In these cases, a package() function without a build() one is sufficient. As a side effect, this commit makes meta packages without any function at all in the PKGBUILD possible. Fixes FS#15147. Signed-off-by: Cedric Staniewski <cedric@gmx.ca> Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: extend test for hyphen prefixes to pkgbase and all pkgnamesCedric Staniewski2009-11-15
| | | | | | | | | | Since commit fb97d32, which brought in this test, support for split PKGBUILDs was added, and therefore, all values of pkgname and also pkgbase have to be checked now. Signed-off-by: Cedric Staniewski <cedric@gmx.ca> Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: Add fallback to package functionAllan McRae2009-11-15
| | | | | | | | | | | | | | makepkg looks for a package() function when building a single package but package_$pkgname() style package functions when building a split package. This patch allows the use of a package_$pkgname() function when building a single package for consistency. This is achieved by having makepkg consider a non-split package with a package_$pkgname() function as a split package (creating just the one package). Fixes FS#16622. Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>