2008/7/1 Dan McGee <dpmcgee@gmail.com>:
On Tue, Jul 1, 2008 at 12:47 PM, Thomas Bächler <thomas@archlinux.org> wrote:
When a package A requires a package B at runtime, but B is not needed for building A or B cannot be installed while A is being built, rundepends=('B') can be used to add B to A's dependencies, omitting the dependency check at built time. --- scripts/makepkg.sh.in | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index c45d7e8..c809498 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -809,7 +809,7 @@ create_package() { for it in "${groups[@]}"; do echo "group = $it" >>.PKGINFO done - for it in "${depends[@]}"; do + for it in "${depends[@]} ${rundepends[@]}"; do echo "depend = $it" >>.PKGINFO done for it in "${optdepends[@]}"; do @@ -1287,7 +1287,7 @@ fi
unset pkgname pkgver pkgrel pkgdesc url license groups provides md5sums unset replaces depends conflicts backup source install build makedepends -unset optdepends options noextract +unset optdepends options noextract rundepends
if [ ! -f "$BUILDSCRIPT" ]; then error "$(gettext "%s does not exist.")" "$BUILDSCRIPT" --
I've been contemplating something like this for a while as well. What do others on the list think, is this getting to be too much, or does this make sense? I think I would be fine with it. We will need documentation (namely PKGBUILD.5.txt) to be patched as well in the final patch.
The proposed functionality is useful (I've encountered situation described by Thomas), but IMO this will add some confusion. Most people would just use depends even for run-time-only depends (when they're not cirlular, of course), so rundepends would be used only to workaround those circular builddepends. What I did to workaround the situation described by Thomas: * build A without depends=(B) * add depends=(B) and repackage with makepkg -R -- Roman Kyrylych (Роман Кирилич)