Bug 196538 - [patch] multimedia/libquvi09 fails staging if a previous version was installed
Summary: [patch] multimedia/libquvi09 fails staging if a previous version was installed
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Po-Chuan Hsieh
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-01-06 11:18 UTC by Jia-Shiun Li
Modified: 2015-01-13 11:34 UTC (History)
0 users

See Also:
bugzilla: maintainer-feedback? (sunpoet)


Attachments
patch to teach port respect $DESTDIR when checking for installation (580 bytes, patch)
2015-01-06 11:18 UTC, Jia-Shiun Li
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jia-Shiun Li 2015-01-06 11:18:11 UTC
Created attachment 151393 [details]
patch to teach port respect $DESTDIR when checking for installation

The author made a Makefile target in src/quvi-0.9/quvi/Makefile.in to check for header files installed by previous versions. But it did not prepend install dir prefix to path. Therefore when staging, instead of checking against work dir, it checks against canonical path in system and will find installed version. It will fail staging.

patch attached.

How to reproduce:
# cd /usr/ports/multimedia/ilbquvi09
# make install clean
# make
...
===>  Staging for libquvi09-0.9.4_2
===>   libquvi09-0.9.4_2 depends on package: libquvi-scripts09>=0.9 - found
===>   Generating temporary packing list
if test -z 'strip'; then  /usr/bin/make  INSTALL_PROGRAM="/bin/sh /usr/ports/multimedia/libquvi09/work/libquvi-0.9.4/config.aux/install-sh -c -s"  install_sh_PROGRAM
="/bin/sh /usr/ports/multimedia/libquvi09/work/libquvi-0.9.4/config.aux/install-sh -c -s" INSTALL_STRIP_FLAG=-s  install;  else  /usr/bin/make  INSTALL_PROGRAM="/bin
/sh /usr/ports/multimedia/libquvi09/work/libquvi-0.9.4/config.aux/install-sh -c -s"  install_sh_PROGRAM="/bin/sh /usr/ports/multimedia/libquvi09/work/libquvi-0.9.4/c
onfig.aux/install-sh -c -s" INSTALL_STRIP_FLAG=-s  "INSTALL_PROGRAM_ENV=STRIPPROG='strip'" install;  fi
Making install in po
if test "libquvi" = "gettext-tools"; then  /bin/mkdir -p /usr/ports/multimedia/libquvi09/work/stage/usr/local/share/gettext/po;  for file in Makefile.in.in remove-po
tcdate.sin  quot.sed boldquot.sed en@quot.header en@boldquot.header insert-header.sin Rules-quot   Makevars.template; do  install  -o root -g wheel -m 0644 ./$file
/usr/ports/multimedia/libquvi09/work/stage/usr/local/share/gettext/po/$file;  done;  for file in Makevars; do  rm -f /usr/ports/multimedia/libquvi09/work/stage/usr/l
ocal/share/gettext/po/$file;  done;  else  : ;  fi
Making install in src
Making install in quvi-0.9
Making install in quvi
** Old headers found in /usr/local/include/quvi-0.9/quvi.  You should
** remove the contents of this directory and type 'make
** install' again.
*** Error code 1

Stop.
make[7]: stopped in /usr/ports/multimedia/libquvi09/work/libquvi-0.9.4/src/quvi-0.9/quvi
*** Error code 1

Stop.
make[6]: stopped in /usr/ports/multimedia/libquvi09/work/libquvi-0.9.4/src/quvi-0.9/quvi
 /bin/mkdir -p '/usr/ports/multimedia/libquvi09/work/stage/usr/local/include/quvi-0.9'
 install  -o root -g wheel -m 0644 quvi.h '/usr/ports/multimedia/libquvi09/work/stage/usr/local/include/quvi-0.9'
*** Error code 1

Stop.
make[5]: stopped in /usr/ports/multimedia/libquvi09/work/libquvi-0.9.4/src/quvi-0.9
Making install in api
Making install in gcrypt
Making install in misc
Making install in lua
Making install in curl
Making install in net
 /bin/mkdir -p '/usr/ports/multimedia/libquvi09/work/stage/usr/local/lib'
 /bin/sh ../libtool   --mode=install /usr/bin/install -c -o root -g wheel -s  libquvi-0.9.la '/usr/ports/multimedia/libquvi09/work/stage/usr/local/lib'
libtool: install: /usr/bin/install -c -o root -g wheel .libs/libquvi-0.9-0.9.4.so /usr/ports/multimedia/libquvi09/work/stage/usr/local/lib/libquvi-0.9-0.9.4.so
libtool: install: strip --strip-unneeded /usr/ports/multimedia/libquvi09/work/stage/usr/local/lib/libquvi-0.9-0.9.4.so
libtool: install: (cd /usr/ports/multimedia/libquvi09/work/stage/usr/local/lib && { ln -s -f libquvi-0.9-0.9.4.so libquvi-0.9.so || { rm -f libquvi-0.9.so && ln -s l
ibquvi-0.9-0.9.4.so libquvi-0.9.so; }; })
libtool: install: /usr/bin/install -c -o root -g wheel .libs/libquvi-0.9.lai /usr/ports/multimedia/libquvi09/work/stage/usr/local/lib/libquvi-0.9.la
libtool: install: warning: remember to run `libtool --finish /usr/local/lib'
*** Error code 1

Stop.
make[4]: stopped in /usr/ports/multimedia/libquvi09/work/libquvi-0.9.4/src
Making install in examples
Making install in lib
Making install in doc
Making install in man3
 /bin/mkdir -p '/usr/ports/multimedia/libquvi09/work/stage/usr/local/man/man3'
 install  -o root -g wheel -m 0644 'libquvi.3' '/usr/ports/multimedia/libquvi09/work/stage/usr/local/man/man3/libquvi09.3'
Making install in man7
 /bin/mkdir -p '/usr/ports/multimedia/libquvi09/work/stage/usr/local/man/man7'
 install  -o root -g wheel -m 0644 'quvi-object.7' '/usr/ports/multimedia/libquvi09/work/stage/usr/local/man/man7/quvi-object09.7'
Making install in dox
Making install in tests
Making install in lib
 /bin/mkdir -p '/usr/ports/multimedia/libquvi09/work/stage/usr/local/libdata/pkgconfig'
 install  -o root -g wheel -m 0644 libquvi-0.9.pc '/usr/ports/multimedia/libquvi09/work/stage/usr/local/libdata/pkgconfig'
*** Error code 1

Stop.
make[3]: stopped in /usr/ports/multimedia/libquvi09/work/libquvi-0.9.4
*** Error code 1

Stop.
make[2]: stopped in /usr/ports/multimedia/libquvi09/work/libquvi-0.9.4
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/multimedia/libquvi09
*** Error code 1

Stop.
make: stopped in /usr/ports/multimedia/libquvi09
Comment 1 Bugzilla Automation freebsd_committer freebsd_triage 2015-01-06 11:18:11 UTC
Auto-assigned to maintainer sunpoet@FreeBSD.org
Comment 2 Jia-Shiun Li 2015-01-07 12:32:55 UTC
BTW, the scenario mostly will happen when upgrading. I hit this because the port recently got version bumped.
Comment 3 Po-Chuan Hsieh freebsd_committer freebsd_triage 2015-01-13 11:34:09 UTC
Committed in r376565. Thanks!