-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello,

Ports such as mysql-server, apache22 and many others I've noticed have a disconnect between pkg-plist entries and what actually gets installed. Some especially annoying components missed are etc/rc.d scripts or in the case of gettext, a library file. In the short term I was going to create a PR for some of these ports. My major assumption, with variables enumerated, a +CONTENTS file should be a subset of a pkg-plist file. With this, my basic approach was to diff the +CONTENTS file from the build system and the +CONTENTS file from the install via pkg_add system (ignoring comments, sample output below). Should these files be the same? When would they not be (again, stripping comments)? This output could be used to check the pkg-plist file, accepting that variables in the pkg-plist will need to be enumerated. Is this a decent method?

In the long term, would this be something that makes sense for the ports cluster to check on? Are there situations where a port may install something that a pkg-plist file should never record?

Cheers,

Jon

[apache22 sample diff output]
grep -v "[EMAIL PROTECTED]" [bulidbox]/var/db/pkg/apache-2.2.4/+CONTENTS > / tmp/+CONTENTS_make_package_apache22 grep -v "[EMAIL PROTECTED]" [installbox]/var/db/pkg/apache-2.2.4/+CONTENTS > / tmp/+CONTENTS_make_install_apache22 diff -u /tmp/+CONTENTS_make_install_apache22 /tmp/ +CONTENTS_make_package_apache22 | wc -l
     755
diff -u /tmp/+CONTENTS_make_install_apache22 /tmp/ +CONTENTS_make_package_apache22 | grep '^-' | wc -l
     737
diff -u /tmp/+CONTENTS_make_install_apache22 /tmp/ +CONTENTS_make_package_apache22 | grep '^+' | wc -l
      14
diff -u /tmp/+CONTENTS_make_install_apache22 /tmp/ +CONTENTS_make_package_apache22 | head
- --- /tmp/+CONTENTS_make_install_apache22        Sun Jan 28 21:52:47 2007
+++ /tmp/+CONTENTS_make_package_apache22        Sun Jan 28 21:53:39 2007
@@ -567,739 +567,16 @@
@unexec rmdir %D/etc/apache22 2> /dev/null || echo "===> If you plan to do not reinstall apache22, you can safely remove %D/etc/apache22."
@exec /sbin/ldconfig -m /usr/local/lib
@unexec /sbin/ldconfig -R
- -share/doc/apache22/LICENSE
- -share/doc/apache22/NOTICE
- -share/doc/apache22/bind.html
- -share/doc/apache22/bind.html.de




-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (Darwin)

iD8DBQFFvTEUZpJsLIS+QSIRAs8XAJ9aleKmRSkPATrLwSzW77F0AE6NsACdEMgb
VOoNLhcNV/4KgPKXj05GV9M=
=LFvx
-----END PGP SIGNATURE-----
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to