Created attachment 145258 [details] patch STAGEify. Update version. Various minor formatting tweaks. USES+=libtool. Examples/docs/etc moved into plist. Update rc script for non-deprecated args.
any test logs available?
From running it? They're... voluminous. I put it out on a production server shortly before submitting the PR, and mails do go into it, get sent (or not, as config dictates) to the proper milters, and responses come back. Pulling a snippet from the past couple minutes: Aug 3 08:30:01 thyme milter-manager[86048]: [statistics] [session][header][add](18022): <X-Spam-Status>=<Yes, score=7.4 required=3.0 tests=BAYES_50,DIET_1, HTML_IMAGE_RATIO_04,HTML_MESSAGE,INVALID_DATE,RDNS_NONE,T_REMOTE_IMAGE, URIBL_DBL_SPAM,URIBL_RED,URIBL_WS_SURBL autolearn=no autolearn_force=no version=3.4.0> Aug 3 08:30:01 thyme milter-manager[86048]: [statistics] [session][end][end-of-message][reject][0.876739](18022) Aug 3 08:30:01 thyme postfix/cleanup[28007]: 9769037B404: milter-reject: END-OF-MESSAGE from unknown[23.227 ....
actually I meant build logs, e.g. poudriere testport, poudriere bulk -t, redports, tinderbox, "make check-plist ; make stage-qa" ..etc
Ah. check-plist shows no issues. stage-qa mutters a bit about unstripped libraries, but is otherwise happy. portlint appears to not like the @dirrmtry in place of @dirrm on DOCSDIR, but I chose to ignore that in favor of reducing diffs versus makeplist to ease future updates. I don't have poudriere or the rest.
I was happy until that second to last sentence. "make makeplist" is (intentionally) wrong with regards to @dirrm. It could be smarter, but it just dumbly makes all entries @dirrmtry and expects the user to clean to up (hence the warning at the top of the list) If that's the reason for leaving @dirrmtry on DOCSDIR which should be cleanly removably, then it's really not a solid one.
patch-ready with the caveat for the committer to review the stage-qa warnings
Well, if consensus is to keep micromanaging them, I can go through it. I don't feel like the difference adds much value though. It's pretty much meaningless to users, and the main advantage to devs/maintainers is to be able to hint "Hey, dummy, you forgot something in the plist that it's installing". But post-stage, the plist defines the installing, so that shouldn't happen anyway. And since the closer you get to makeplist's output, the easier future updates get to handle and check, that seems like the better set of tradeoffs.
It's not micromanaging. It's another validity check. If the plist says, "this directory must be empty after package is deinstalled" yet there files in it, then an error will occur because it's not expected. @dirrmtry always works (it also spawns commands, so it's a performance hit). Thus the idea is: @dirrm for most, @dirrmtry when required.
Reluctantly taking this PR.... Another change I disagree with is the removal of "PORTDOCS= *" and similar. As you can see it caused the pkg-plist to explode and was mainly html files that we are happy to let automatically be added to the pkg-plist rather than explicitly. same with PORTEXAMPLES...
while I'm waiting for testport to finish.... I converted NOPORTEXAMPLES to PORT_OPTIONS:MEXAMPLES I removed NOPORTDATA completely and just install those files unconditionally I changed all but two @dirrmtry back to @dirrm as they were before I went back to PORTDOCS=* and PORTEXAMPLES=*, this was fine
(In reply to fullermd from comment #4) > Ah. check-plist shows no issues. stage-qa mutters a bit about unstripped > libraries, but is otherwise happy. This is solved with "INSTALL_TARGET= install-strip" by the way.
A commit references this bug: Author: marino Date: Thu Aug 7 08:17:17 UTC 2014 New revision: 364249 URL: http://svnweb.freebsd.org/changeset/ports/364249 Log: mail/milter-manager: Upgrade version 1.8.6 => 2.0.4 and stage PR: 192344 Submitted by: fullermd (over-yonder.net) tweaked by: marino Changes: head/mail/milter-manager/Makefile head/mail/milter-manager/distinfo head/mail/milter-manager/files/milter-manager.in head/mail/milter-manager/pkg-descr head/mail/milter-manager/pkg-plist
Thanks!