On Mon, Nov 2, 2009 at 11:00 PM, Eric Bélanger <[email protected]> wrote: > When DESTDIR 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.
This seems really reasonable. It gets a +1 from me for the idea; I didn't test the code or anything though. > Signed-off-by: Eric Bélanger <[email protected]> > --- > scripts/makepkg.sh.in | 6 ++++++ > 1 files changed, 6 insertions(+), 0 deletions(-) > > diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in > index 92b0454..dc9124b 100644 > --- a/scripts/makepkg.sh.in > +++ b/scripts/makepkg.sh.in > @@ -1000,6 +1000,8 @@ create_package() { > "$PKGEXT" ; EXT=$PKGEXT ;; > esac > local > pkg_file="$PKGDEST/${nameofpkg}-${pkgver}-${pkgrel}-${PKGARCH}${EXT}" > + local > pkglinks_name="${startdir}/${nameofpkg}-${pkgver}-${pkgrel}-${PKGARCH}${PKGEXT}" > + local > pkglinks_target="$PKGDEST/${nameofpkg}-${pkgver}-${pkgrel}-${PKGARCH}${PKGEXT}" Since we repeat the same "${nameofpkg}-${pkgver}-${pkgrel}-${PKGARCH}${PKGEXT}" part three times, we should really pull that into a local variable and then set the three others as necessary. > > local ret=0 > > @@ -1018,6 +1020,10 @@ create_package() { > ret=$? > fi > > + if [ $ret -eq 0 ]; then > + [ ! -f "${pkglinks_name}" ] && ln -s "${pkglinks_target}" > "${pkglinks_name}" && ret=$? Will this work with err traps? I thought you need to be explicit with the if; then; fi blocks. > + fi > + > if [ $ret -ne 0 ]; then > error "$(gettext "Failed to create package file.")" > exit 1 # TODO: error code > -- > 1.6.5.2
