On Sat, Jan 12, 2013 at 03:34:30AM +0400, Dmitry V. Levin wrote: > Hi, > > On Wed, Jan 02, 2013 at 09:47:51AM +0100, Jan Engelhardt wrote: > [...] > > --- a/extensions/GNUmakefile.in > > +++ b/extensions/GNUmakefile.in > [...] > > @@ -75,7 +76,7 @@ install: ${targets_install} > > if test -n "${targets_install}"; then install -pm0755 $^ "${DESTDIR}${xtlibdir}/"; fi; > > No, this is a regression. If ${targets_install} shared objects are made > by libtool, they are intermediate files not expected to be installed by > hand (due to funny RPATHs and so on), so they have to be installed by > libtool --mode=install. > > Something like > for f in $^; do ../libtool ${AM_LIBTOOL_SILENT} --tag=CC --mode=install ${INSTALL} -pm0755 $${f/.so/.la} "${DESTDIR}${xtlibdir}/"; done > would work. No, it didn't work because of ${pfx_symlinks} modules which are not libtool files. I've managed to build it with a more complex yet reliable rule: for f in $^; do la="$${f/.so/.la}"; if test -f "$$la"; then ../libtool ${AM_LIBTOOL_SILENT} --tag=CC --mode=install ${INSTALL} -pm0755 "$$la" "${DESTDIR}${xtlibdir}/"; elif test -L "$$f"; then cp -a "$$f" "${DESTDIR}${xtlibdir}/"; else exit 1; fi || exit; done -- ldv
Attachment:
pgpL0pYvU9caQ.pgp
Description: PGP signature