Date: Mon, 04 Nov 2013 08:01:54 -0600 From: Mark Felder <feld@FreeBSD.org> To: Tijl Coosemans <tijl@FreeBSD.org> Cc: svn-ports-head@freebsd.org, svn-ports-all@freebsd.org, ports-committers@freebsd.org Subject: Re: svn commit: r332560 - head/astro/ephem Message-ID: <1383573714.10238.42701297.24E02675@webmail.messagingengine.com> In-Reply-To: <20131103193139.5e44b9b8@kalimero.tijl.coosemans.org> References: <201311022337.rA2NbENO095280@svn.freebsd.org> <20131103193139.5e44b9b8@kalimero.tijl.coosemans.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Nov 3, 2013, at 12:31, Tijl Coosemans wrote: > On Sat, 2 Nov 2013 23:37:14 +0000 (UTC) Mark Felder wrote: > > Author: feld > > Date: Sat Nov 2 23:37:13 2013 > > New Revision: 332560 > > URL: http://svnweb.freebsd.org/changeset/ports/332560 > > > > Log: > > Reverting STAGE support. Just realized the way the .db and .cfg files > > are being installed needs to be reworked for STAGE or we will always > > overwrite them, breaking POLA > > > > Approved by: swills (mentor, implicit), my guilty conscience > > > > Modified: > > head/astro/ephem/Makefile > > > > Modified: head/astro/ephem/Makefile > > ============================================================================== > > --- head/astro/ephem/Makefile Sat Nov 2 23:29:18 2013 (r332559) > > +++ head/astro/ephem/Makefile Sat Nov 2 23:37:13 2013 (r332560) > > @@ -21,11 +21,11 @@ USE_GCC= any > > > > do-install: > > -cd ${WRKSRC}; \ > > - ${INSTALL_PROGRAM} ephem ${STAGEDIR}${PREFIX}/bin; \ > > - ${MKDIR} ${STAGEDIR}${PREFIX}/share/ephem; \ > > - ${INSTALL_DATA} Man.txt ${STAGEDIR}${PREFIX}/share/ephem/; \ > > - [ ! -f ${STAGEDIR}${PREFIX}/share/ephem/ephem.db ] && ${INSTALL_DATA} ephem.db ${STAGEDIR}${PREFIX}/share/ephem/; \ > > - [ ! -f ${STAGEDIR}${PREFIX}/share/ephem/ephem.cfg ] && ${INSTALL_DATA} ephem.cfg ${STAGEDIR}${PREFIX}/share/ephem/ > > + ${INSTALL_PROGRAM} ephem ${PREFIX}/bin; \ > > + ${MKDIR} ${PREFIX}/share/ephem; \ > > + ${INSTALL_DATA} Man.txt ${PREFIX}/share/ephem/; \ > > + [ ! -f ${PREFIX}/share/ephem/ephem.db ] && ${INSTALL_DATA} ephem.db ${PREFIX}/share/ephem/; \ > > + [ ! -f ${PREFIX}/share/ephem/ephem.cfg ] && ${INSTALL_DATA} ephem.cfg ${PREFIX}/share/ephem/ > > > > post-install: > > @${ECHO_MSG} Don\'t forget to edit ${PREFIX}/share/ephem/ephem.cfg! > > Hmm, this post-install message suggests modifying an installed file > which means when the package is deleted the file stays because of a > checksum failure and that's why you need the existence test in > do-install. > > The correct way to deal with this situation is to install those files > as *.sample and then put the following in pkg-plist for each file: > > @unexec if cmp -s %D/%%DATADIR%%/ephem.cfg > %D/%%DATADIR%%/ephem.cfg.sample; then rm -f %D/%%DATADIR%%/ephem.cfg; fi > %%DATADIR%%/ephem.cfg.sample > @exec if [ ! -f %B/ephem.cfg ]; then cp -p %D/%F %B/ephem.cfg; fi > Yes, I was planning something like that but didn't have time to fully test it. I also would prefer the maintainer's feedback as I don't use this software. However, the fact that we still have to do this is quite inefficient not to mention inconsistent throughout the tree. I'm hoping someone can add functionality to the ports tree that handles installation of example/sample configs and automatically removes them during deinstall if they haven't been modified. > Also, I think you can remove the USE_GCC=any if you add -Wno-return-type > to CFLAGS. I will test building with that added to CFLAGS and ask the maintainer to confirm that the software works correctly. And thank you very much for the suggestion -- I'm not a programmer by trade and learning what errors could be solved by which CFLAGS is an ongoing process. I'll take note of this and put it in my toolbox. :-)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1383573714.10238.42701297.24E02675>