From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from ptx.hi.pengutronix.de ([2001:67c:670:100:1d::c0] ident=Debian-exim) by metis.ext.pengutronix.de with esmtp (Exim 4.72) (envelope-from ) id 1XYsPt-0003QU-R7 for ptxdist@pengutronix.de; Tue, 30 Sep 2014 10:04:13 +0200 Received: from mol by ptx.hi.pengutronix.de with local (Exim 4.80) (envelope-from ) id 1XYsPt-0005Oc-Pf for ptxdist@pengutronix.de; Tue, 30 Sep 2014 10:04:13 +0200 Date: Tue, 30 Sep 2014 10:04:13 +0200 From: Michael Olbrich Message-ID: <20140930080413.GD24288@pengutronix.de> References: <1411995493-10273-1-git-send-email-jon@ringle.org> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <1411995493-10273-1-git-send-email-jon@ringle.org> Subject: Re: [ptxdist] [PATCH v2] install_dir: Allow one to specify an alternate root dir Reply-To: ptxdist@pengutronix.de List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: ptxdist-bounces@pengutronix.de Errors-To: ptxdist-bounces@pengutronix.de To: ptxdist@pengutronix.de On Mon, Sep 29, 2014 at 08:58:13AM -0400, jon@ringle.org wrote: > From: Jon Ringle > > This is useful if you install a package to /opt and libs are in /opt/lib: > $(call install_lib, foo, 0, 0, 0644, libfoo, /opt) I didn't see this one, when I replied to your other mail. I think the absolute path should be enforced. And see my other comments about replacing the ',/usr' with the root_dir. Michael > Signed-off-by: Jon Ringle > --- > rules/post/install.make | 4 +++- > scripts/lib/ptxd_make_xpkg_pkg.sh | 5 +++-- > 2 files changed, 6 insertions(+), 3 deletions(-) > > diff --git a/rules/post/install.make b/rules/post/install.make > index d57e5dd..2ff9f40 100644 > --- a/rules/post/install.make > +++ b/rules/post/install.make > @@ -231,6 +231,7 @@ install_package = \ > # $3: GID > # $4: permissions (octal) > # $5: library name without suffix. > +# $6: optional root dir > # > install_lib = \ > XPKG=$(subst _,-,$(strip $(1))); \ > @@ -238,8 +239,9 @@ install_lib = \ > GRP="$(strip $(3))"; \ > PER="$(strip $(4))"; \ > LIB=$(strip $(5)); \ > + DST=$(strip $(6)); \ > $(call install_check, install_lib); \ > - echo "ptxd_install_lib '$$LIB' '$$OWN' '$$GRP' '$$PER'" >> "$(STATEDIR)/$$XPKG.cmds" > + echo "ptxd_install_lib '$$LIB' '$$DST' '$$OWN' '$$GRP' '$$PER'" >> "$(STATEDIR)/$$XPKG.cmds" > > # > # install_replace > diff --git a/scripts/lib/ptxd_make_xpkg_pkg.sh b/scripts/lib/ptxd_make_xpkg_pkg.sh > index 86196a2..393ea1b 100644 > --- a/scripts/lib/ptxd_make_xpkg_pkg.sh > +++ b/scripts/lib/ptxd_make_xpkg_pkg.sh > @@ -744,9 +744,10 @@ export -f ptxd_install_shared > ptxd_install_lib() { > local lib_dir=$(ptxd_get_lib_dir) > local lib="$1" > - shift > + local root_dir="${2%/}/" > + shift 2 > > - local file="$(for dir in "${pkg_pkg_dir}/"{,usr/}${lib_dir}; do > + local file="$(for dir in "${pkg_pkg_dir}/"${root_dir#/}{,usr/}${lib_dir}; do > find "${dir}" -type f -path "${dir}/${lib}.so*"; done 2>/dev/null)" > > if [ ! -f "${file}" ]; then > -- > 1.8.5.4 > > > -- > ptxdist mailing list > ptxdist@pengutronix.de > -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | -- ptxdist mailing list ptxdist@pengutronix.de