Bug 202951 - astro/osmium: DOXYGEN=on no longer works after r394778
Summary: astro/osmium: DOXYGEN=on no longer works after r394778
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: Dmitry Marakasov
URL:
Keywords: patch, regression
Depends on:
Blocks:
 
Reported: 2015-09-07 17:05 UTC by Jan Beich
Modified: 2015-09-08 16:16 UTC (History)
1 user (show)

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


Attachments
failed build log (35.97 KB, text/plain)
2015-09-07 17:05 UTC, Jan Beich
no flags Details
v0 (642 bytes, patch)
2015-09-07 17:09 UTC, Jan Beich
no flags Details | Diff
QA: poudriere bulk -t -j 101i386 (41.45 KB, text/plain)
2015-09-07 17:10 UTC, Jan Beich
no flags Details
v1 + commit message (1.11 KB, patch)
2015-09-08 15:49 UTC, Jan Beich
jbeich: maintainer-approval? (mat)
Details | Diff
QA with DOXYGEN=on: poudriere bulk -t -j 101i386 (41.95 KB, text/plain)
2015-09-08 15:58 UTC, Jan Beich
no flags Details
QA with DOXYGEN=off: poudriere bulk -t -j 101i386 (19.56 KB, text/plain)
2015-09-08 16:02 UTC, Jan Beich
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jan Beich freebsd_committer freebsd_triage 2015-09-07 17:05:38 UTC
Created attachment 160805 [details]
failed build log

Defining NO_FOO together with do-* targets is risky but then we can't leave do-*-${opt}-on/off by themselves. See bug 202949 for more details.
Comment 1 Jan Beich freebsd_committer freebsd_triage 2015-09-07 17:09:57 UTC
Created attachment 160806 [details]
v0
Comment 2 Jan Beich freebsd_committer freebsd_triage 2015-09-07 17:10:51 UTC
Created attachment 160807 [details]
QA: poudriere bulk -t -j 101i386
Comment 3 Mathieu Arnold freebsd_committer freebsd_triage 2015-09-07 19:04:51 UTC
Please, don't do that.
Comment 4 Jan Beich freebsd_committer freebsd_triage 2015-09-08 14:04:15 UTC
Waiting for confirmation from maintainer in case the bug remains closed and no fix lands. I don't use the port, so have no opinion if someone proposes to remove DOXYGEN option as an alternative.

(In reply to Mathieu Arnold from comment #3)
> Please, don't do that.
> Resolution: --- → Rejected
> Status: New → Closed

Are you trying to sweep the regression under the... portmgr blanket? It still exists even if you don't like my patch (v0 kinda expected). So, propose a better fix, land it with the blanket or, ideally, do not regress ports without documented rationale.
Comment 5 Mathieu Arnold freebsd_committer freebsd_triage 2015-09-08 14:14:30 UTC
I'm not sure I get what you're saying.

You have a port that uses NO_BUILD, so that there is no do-build target that goes and do stuff, which is the *right* way to do it.

And you want to replace it with a port that has an empty do-build target, which is not the right way to do it, if you don't want to have a do-build target, you ask for the framework to not create one for you, with NO_BUILD.
Comment 6 Mathieu Arnold freebsd_committer freebsd_triage 2015-09-08 14:17:33 UTC
If the problem is that the do-build-opt-o{n,ff} target is not run with NO_BUILD, then use post-build-opt-o{n,ff}, but don't create an empty do-build target.
Comment 7 Mathieu Arnold freebsd_committer freebsd_triage 2015-09-08 14:57:31 UTC
Ok, after a bit of debugging, I get what the problem is. Sorry for not understanding wtf you were doing sooner :-)
Comment 8 Mathieu Arnold freebsd_committer freebsd_triage 2015-09-08 15:00:03 UTC
Now that I get the problem, I think, a better solution would be:


DOXYGEN_VARS_OFF= NO_BUILD=yes

and:

do-build:
        do the doxygen stuff

Unless it feels even more kludgy.
Comment 9 Jan Beich freebsd_committer freebsd_triage 2015-09-08 15:49:13 UTC
Created attachment 160839 [details]
v1 + commit message

(In reply to Mathieu Arnold from comment #8)
More confusing but less kludgy. Maybe drop NO_BUILD unconditionally since
vendor has "all" target that does nothing.
Comment 10 Mathieu Arnold freebsd_committer freebsd_triage 2015-09-08 15:52:38 UTC
Looks good, yes, you do know you do not need approval for fixing stuff, right ?
Comment 11 Jan Beich freebsd_committer freebsd_triage 2015-09-08 15:58:13 UTC
Created attachment 160840 [details]
QA with DOXYGEN=on: poudriere bulk -t -j 101i386

poudriere logs aren't verbose enough to have any noise from running ALL_TARGET.
Comment 12 Jan Beich freebsd_committer freebsd_triage 2015-09-08 16:00:08 UTC
(In reply to Mathieu Arnold from comment #10)
Our bugzilla doesn't support review flag, so I'm using the underused maintainer-approval. And phabricator often adds unnecessary indirection. So, I'll take "looks good" as r+.
Comment 13 Mathieu Arnold freebsd_committer freebsd_triage 2015-09-08 16:01:14 UTC
Also, please, if you can prevent it, do not clutter bugzilla with poudriere logs, I will trust you that it builds, and that you tested. Providing a link to the logs is good enough, if you feel like it's that important to show them.
Comment 14 Mathieu Arnold freebsd_committer freebsd_triage 2015-09-08 16:01:57 UTC
And we have a code review tool called phabricator, at reviews.freebsd.org :-)
Comment 15 Jan Beich freebsd_committer freebsd_triage 2015-09-08 16:02:50 UTC
Created attachment 160841 [details]
QA with DOXYGEN=off: poudriere bulk -t -j 101i386
Comment 16 Mathieu Arnold freebsd_committer freebsd_triage 2015-09-08 16:06:47 UTC
(In reply to Jan Beich from comment #15)
> Created attachment 160841 [details]
> QA with DOXYGEN=off: poudriere bulk -t -j 101i386

Please, STOP adding poudriere logs to bugzilla. A simple "tested with and without DOXYGEN" is fine.
Comment 17 commit-hook freebsd_committer freebsd_triage 2015-09-08 16:14:28 UTC
A commit references this bug:

Author: jbeich
Date: Tue Sep  8 16:13:58 UTC 2015
New revision: 396400
URL: https://svnweb.freebsd.org/changeset/ports/396400

Log:
  astro/osmium: unbreak build with DOXYGEN=on after r394778

  NO_BUILD does more than dummy do-build. It creates BUILD_COOKIE that marks
  all targets in _BUILD_SEQ as done, including do-build-${opt}-on/off and
  post-build-${opt}-on/off. Since the targets haven't been run yet
  do-install-DOXYGEN-on fails due to missing files.

  Fix by leaking a call to nop "all" target in vendor Makefile. It should
  be less kludgy than defining our own dummy do-build and less confusing
  than treating do-build itself as an option helper. In case "all" starts
  doing something useful the port would automatically take advantage of it.

  PR:		202951
  Reviewed by:	mat
  Approved by:	portmgr blanket

Changes:
  head/astro/osmium/Makefile
Comment 18 Jan Beich freebsd_committer freebsd_triage 2015-09-08 16:16:21 UTC
Hopefully, done.