summaryrefslogtreecommitdiff
path: root/scripts/makepkg.sh.in
AgeCommit message (Collapse)Author
2008-06-22Additional path quoting and srcdir/pkgdir usageAllan McRae
Removes the remaining $startdir/{src,pkg} usage and adds quoting around (hopefully) all remaining path variables Signed-off-by: Allan McRae <mcrae_allan@hotmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-06-15makepkg: add several quotes needed after nullglob.Xavier Chantry
After the "shopt -s nullglob" change, all regular expressions should be properly quoted. This commit only fixes the ones I found, there are probably others left, so this should be kept in mind for easier future fixing. Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-06-15makepkg: Add missing quotes for the source array.Xavier Chantry
Now makepkg can handle filenames with whitespaces in the source array. Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-06-15Use openssl for checksum verification instead of *sum utilitiesSebastian Nowicki
md5sum, sha1sum, etc, do not exist on BSD systems by default. Openssl is a good portable alternative. This also brings in a dependency for openssl. Closes FS#10530. Signed-off-by: Sebastian Nowicki <sebnow@gmail.com> Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-06-14Move geninteg block in makepkg before error checkingAllan McRae
This patch moves the generating of integrity checks to before any error checking takes place in the PKGBUILD file. This allows integrity generation to complete when unrelated errors exist in a PKGBUILD file and allows the removal of multiple checks of the GENINTEG variable that would otherwise be needed. In addition a minor fix is made to a comment. Signed-off-by: Allan McRae <mcrae_allan@hotmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-06-12Merge branch 'maint'Dan McGee
2008-06-12Use shell builtin to list files for package inclusionDan McGee
On BSD systems, as super user, the 'ls' command displays all dot files by default, causing these to get included when not intended. If we use the bash glob operator, we can avoid issues with ls on different platforms; however, we need to turn the nullglob shell option on first to ensure we don't have problems in empty directories. Originally-noticed-by: Sebastian Nowicki <sebnow@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-06-08makepkg: remove deprecated --usesudo codeDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-06-08makepkg: add --allsource optionAllan McRae
This supplements the --source option and does nearly the same thing, except downloaded source files are included in the archive as well. The sources are now packages with a pkgname/ prefix. Original-work-by: Dan McGee <dan@archlinux.org> Signed-off-by: Allan McRae <mcrae_allan@hotmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-06-01Don't require --force when using the --nobuild optionAnton Fiuman
makepkg should not abort with error when a user uses the --nobuild option to extract sources if a package has already been built. Signed-off-by: Anton Fiuman <llexiw@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-05-31makepkg: remove some dead TODO codeDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-05-29makepkg - add check for valid options in PKGBUILDAllan McRae
This patch removes the code block in makepkg that checked for depreciated options in a PKGBUILD and provided a workaround. Unknown and depreciated options are upgraded to error conditions. Also, removed TODO regarding including install script if exists and $install is unset. That should never happen. Signed-off-by: Allan McRae <mcrae_allan@hotmail.com> Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-05-29No error in makepkg when removing deps failsAllan McRae
Catches error from when pacman is unable to remove dependencies after successfully building package and prints warning. Fixes FS#10039. Signed-off-by: Allan McRae <mcrae_allan at hotmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-05-29Use chown 0:0 instead of root.rootSebastian Nowicki
On BSD systems using a dot as a separator is not allowed. On Mac OSX it is deprecated. A colon should be used instead. BSD systems also use the "wheel" group instead of "root" to indicate the "super user" group. Both groups use the id of 0. Signed-off-by: Sebastian Nowicki <sebnow@gmail.com> Acked-by: Aaron Griffin <aaronmgriffin@gmail.com> Acked-by: Dan McGee <dan@archlinux.org> Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-05-29Use "legacy mode" on Mac OSX (for file command)Sebastian Nowicki
For some reason `file` on Mac OSX has different arguments than BSD and Linux; -i no longer prints out the mime strings. With the environment variable COMMAND_MODE set to "legacy", `file` behaves more like it does on Linux and BSD, i.e., `file -i` prints the mime type. Signed-off-by: Sebastian Nowicki <sebnow@gmail.com> Acked-by: Dan McGee <dan@archlinux.org> Acked-by: Aaron Griffin <aaronmgriffin@gmail.com> Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-05-29Allow an unprivileged user to create packages without fakerootSebastian Nowicki
When fakeroot was not in BUILDENV and the user was not root, makepkg still tried to use fakeroot for building packages. BUILDENV is now checked to see if fakeroot is enabled. If it is not enabled the package can still be built, but root will not have ownership of files. This is useful when users want to make packages for personal use and don't care about ownership. Closes FS#10450. Signed-off-by: Sebastian Nowicki <sebnow@gmail.com> Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-05-29du -b is not available on BSD, use du -k instead.Xavier Chantry
This fixes FS#10459. There is apparently no portable ways to get the apparent size of a file, like du -b does. So the best compromise seems to get the block size in kB, and then convert that to byte so that we keep compatibility. Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-05-29Replace usage of "cp -s" with the more portable "ln -s"Sebastian Nowicki
The "-s" argument does not exist on BSD, and neither does "--remove-destination". This patch replaces the calls to "cp -s --remove-destination" with the equivalent "rm -f" and "ln -s" calls, in order to increase portability. Signed-off-by: Sebastian Nowicki <sebnow@gmail.com> Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-05-13Remove --builddeps from makepkgDan McGee
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-10makepkg: Unify start and end messagesDan McGee
I've always found it odd why the package version is shown at the start but not the end of the package build. Fix it, and while we are at it, add the $CARCH variable to the display too. Signed-off-by: Dan McGee <dan@archlinux.org>
2008-04-29Merge branch 'maint'Dan McGee
2008-04-27makepkg: fix strip section to allow spaces in pathsDaenyth Blank
Inside tidy_install, change the section which strips libraries to use find | while read rather than for foo in `find`. This should allow whitespaces in filenames to still be processed correctly. This fixes FS#10294. Signed-off-by: Daenyth Blank <Daenyth+git@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-16Add zipman makepkg option.Chantry Xavier
All other steps in tidy_install function were already controlled by an option in makepkg.conf, so this patch adds an option for the man page compression step too. This will allow to keep man pages uncompressed, which is required for some special meta man page, like the zshall one (see FS#4580). Ref: http://www.archlinux.org/pipermail/pacman-dev/2008-March/011472.html Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2008-03-10makepkg: Support for resuming source downloadsRoman Kyrylych
Download to *.part and remove the suffix if successful, thus md5sums will be checked only for complete files, and next time makepkg will resume downloading of partial file instead of complaining about invalid md5sums. Old DLAGENTS format is still supported. Late fix: Do not try to download %u first The output of grep was not suppressed, thus the output of get_downloadcmd was wrong because of extra line at the beginning that contained an unsubstituted (with %o and %u) entry from DLAGENTS. Signed-off-by: Roman Kyrylych <roman@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-02-27Remove small remnant of old force=y optionDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-02-20Fix two missing BUILDSCRIPT variables in makepkg.Mark Constable
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2008-02-17scripts: allow usage when gettext is not installedDan McGee
Address the issue of our scripts not working so great when gettext is not available. This has come up in multiple bug reports, and is relatively easy to address by adding a simple check and a stub function if gettext was not found that simply echos the original message. Addresses concerns from FS#9214 and FS#9607. Signed-off-by: Dan McGee <dan@archlinux.org>
2008-02-11makepkg : set sane umask before source extraction.Chantry Xavier
This fixes FS#9242 and FS#9362. Set umask before the sources are extracted, and after the /etc/profile.d/* files are sourced in handledeps. This sourcing of profile.d files is why umask was moved to the build function in the first place, as can be seen in commit ac965ed401. Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2008-02-07makepkg: do a quick check for the VCS binariesDan McGee
Fixes FS#9230. Ensure we have the VCS binaries available when doing the development version number checking. Signed-off-by: Dan McGee <dan@archlinux.org>
2008-02-02add 'force' to PKGINFO, have repo-add respect it.Chantry Xavier
Ref: http://www.archlinux.org/pipermail/pacman-dev/2008-January/011023.html Also see FS#9347 and FS#9349. Signed-off-by: Chantry Xavier <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-01-27makepkg: ensure binaries in /opt/* are strippedDan McGee
The path selection for stripping binaries was slightly off, so any binaries in subdirectories of opt/ were missed. Fixes FS#9342. Signed-off-by: Dan McGee <dan@archlinux.org>
2008-01-27makepkg : improve determination of svn revision.Chantry Xavier
The previous sed command matched every line starting with r. For example, with mpd-svn package in aur, the svn log output was rather big, and there were several lines starting with r (the actual revision : r7155, but also other lines starting with reverting and run), so this broke makepkg: > makepkg ==> Determining latest svn revision... -> Version found: 7155 everting un sed: -e expression #1, char 27: unterminated `s' command To make the sed command more bullet proof, I added the -q option of svn log, which produces a quieter output, without the log. And I changed the sed command to only match numbers for the revision. Signed-off-by: Chantry Xavier <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-01-20workaround for a gettext string starting with --.Chantry Xavier
Workaround found in Advanced Bash-Scripting Guide, localization section. "added a \0 (NULL) at the beginning of the sentence." Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2008-01-20makepkg: add check to ensure we have non-URL files in build dirDan McGee
Pacman 3.0 printed the following message if a file could not be found: ERROR: xxx was not found in the build directory and is not a proper URL. We lost this logic in 3.1 when moving to the DLAGENT type stuff, so a not-found file got passed all the way to the download logic where it failed with a odd error message. Bring back some logic to ensure only files with URLs get past a certain point, and fail if the file is not available. Fixes FS#9208. Signed-off-by: Dan McGee <dan@archlinux.org>
2008-01-13makepkg: Oops! Lost the colon after forcever in opts parsingDan McGee
I screwed this up here: 916e226b7839e38d9245ecbef396eb5ba5b6a224 Signed-off-by: Dan McGee <dan@archlinux.org>
2008-01-13makepkg: Introduce --holdver option to prevent bumped pkgrelScott Horowitz
This allows us to keep the --forcever option internal to makepkg. Fixes FS#9194. Signed-off-by: Dan McGee <dan@archlinux.org>
2008-01-09makepkg: Ensure we include all manpage directories in compression lineDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-01-09makepkg: add package name to output when installing packageKarolina Lindqvist
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-01-08makepkg: Fix issues with --asroot and building dependenciesDan McGee
The --asroot option was not passed to recursive calls of makepkg. In addition, a 'cd' call was done only on the fakeroot branch instead of both fakeroot and root branches. Move it outside the conditional. Noticed-by: Karolina Lindqvist <karolina.lindqvist@kramnet.se> Signed-off-by: Dan McGee <dan@archlinux.org>
2008-01-05makepkg: add application/zip to the recognized typesDan McGee
The recent upgrade of magic.mime in the file program changed the mime type output to application/zip instead of application/x-zip as it is a registered type. Unfortunately we then just skipped zip file extraction becuase of this change. Signed-off-by: Dan McGee <dan@archlinux.org>
2008-01-05Remove mentions of ABS from makepkgDan McGee
Kill off some of the $ABSROOT stuff that was still hanging around in there. Signed-off-by: Dan McGee <dan@archlinux.org>
2007-12-29Remove .FILELIST generation from makepkg (and elsewhere)Dan McGee
This is something pacman can do on its own straight from the archive, and we will reduce the chance of problems occurring becuase of inproper FILELIST generation as we have had in the past with special characters in filenames. Once we remove it from makepkg. we can remove any usage of it from all of our other tools, including pacman, pactest, and contrib/ utilities. Note that removing it from pacman uncovered a few other bugs anyway, so this was probably a good move. Signed-off-by: Dan McGee <dan@archlinux.org>
2007-12-28Makepkg missing check for empty pkgnameK. Piche
I thought it was wierd that makepkg didn't do a sanity check for the $pkgname. This makes for a simple first try at a GIT patch. Signed-off-by: K. Piche <kevin@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
2007-12-21Do not move man pages to a non-FHS locationDan McGee
Fixes Arch Linux bug FS#8839. Signed-off-by: Dan McGee <dan@archlinux.org>
2007-12-16Set the default packager to "Unknown Packager"Dan McGee
There is no real reason to make it look like someone that can't bother to set the packager variable is official in any way, so remove the Arch Linux reference from makepkg. Signed-off-by: Dan McGee <dan@archlinux.org>
2007-12-10Update GNU GPL boilerplate and copyright datesDan McGee
Update the GPL boilerplate to direct people to the GNU website for a copy of the license, as well as bump all of Judd's copyrights to 2007. Signed-off-by: Dan McGee <dan@archlinux.org>
2007-12-04Compress hard linked man pagesAllan McRae
This fixes FS#5392. If hard links are present for a man page, all other hard linked files are removed, the man page is zipped and the hard links are updated to the newly compress man page. Signed-off-by: Allan McRae <mcrae_allan@hotmail.com> [Dan: use find -samefile option, don't fail if one of mandirs is nonexistent] Signed-off-by: Dan McGee <dan@archlinux.org>
2007-11-11makepkg: remove .pacsave files when uninstalling dependenciesRoman Kyrylych
Signed-off-by: Roman Kyrylych <roman@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
2007-11-08Correctly handle version comparisons for SVN/CVS/etc PKGBUILDS.Scott Horowitz
Retrieve SVN/CVS/etc revision number before checking if the package has already been built. This allows building a newer version of a developmental package without having to use -f. Now -f will only be needed if the latest SVN/CVS/etc revision is the same as the built package. Signed-off-by: Scott Horowitz <stonecrest@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2007-11-05Fix mercurial complaining about directory already existingSebastian Nowicki
Signed-off-by: Dan McGee <dan@archlinux.org>