Page MenuHomeFreeBSD

[New port] audio/pianod2: A free, multi-source, network-controlled music player daemon
ClosedPublic

Authored by jhixson on Jan 31 2019, 4:30 AM.

Details

Summary

[New port] audio/pianod2: A free, multi-source, network-controlled music player daemon

Test Plan

Tested with poudriere for 11.2 and 12.0

Diff Detail

Repository
rP FreeBSD ports repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

audio/pianod2/Makefile
15 ↗(On Diff #53456)
USES=pkgconfig
35 ↗(On Diff #53456)

Wrong place in the Makefile. See Chapter 15. Order of Variables in Port Makefiles.

38 ↗(On Diff #53456)

This is already in the default value and is not needed.

51 ↗(On Diff #53456)

Why +=?

audio/pianod2/Makefile
35 ↗(On Diff #53456)

I did RTFM here. I am no officially confused. The documentation says that standard bsd,port.mk variables come after USE_* variables. GNU_CONFIGURE is in bsd.port.mk. So where should this go if in fact not after USE_* variables?

51 ↗(On Diff #53456)

Oops, cut & paste. Will fix.

audio/pianod2: port fixes

  • Add pkgconfig to USES
  • Fix typo
  • Fix assignment to make arguments
jhixson marked an inline comment as done.
audio/pianod2/Makefile
35 ↗(On Diff #53456)

It should go in the Standard bsd.port.mk Variables section.
Maybe I should have tagged the SHEBANG_FILES and ksh_CMD lines instead, those should go in the USES and USE_x section.
I will let you tell me why as an exercise :-)

Please help me understand this ;-) Here is Chapter 15 of the handbook:

Chapter 15. Order of Variables in Port Makefiles
Table of Contents

15.1. PORTNAME Block
15.2. PATCHFILES Block
15.3. MAINTAINER Block
15.4. LICENSE Block
15.5. Generic BROKEN/IGNORE/DEPRECATED Messages
15.6. The Dependencies Block
15.7. Flavors
15.8. USES and USE_x
15.9. Standard bsd.port.mk Variables
15.10. Options and Helpers
15.11. The Rest of the Variables
15.12. The Targets

I assume the ordering is sequential here. 15.8 comes before 15.9. 15.8 is the USES and USE_* variables. 15.9 is the standard bsd.port.mk variables. GNU_CONFIGURE is in the bsd.port.mk file, so I consider that a "standard bsd.port.mk" variable. What am I missing/misunderstanding here?

Well, thie thing is, you have to actually read the sections, looking at the titles is not enough, they are not long. For example, USES and USE_x says:

Start this section with defining USES, and then possible USE_x.
Keep related variables close together. For example, if using USE_GITHUB, always put the GH_* variables right after it.

The second line means that any variable related to USES or USE have to get in this section.

Do you get where I am going with this?

The only example given is for github, and yes, I did read it ;-) What exactly would GNU_CONFIGURE fall under? There isn't a USE_GNU or any other such variable. I *still* don't know where this is supposed to go. Maybe the handbook should be more clear. How about passing on the knowledge that I am missing? I really don't know where this is supposed to go and the handbook does not make it clear at all.

Yes, there is one example, from it, you can infer that the SHEBANG_FILES and ksh_CMD are related to USES=shebangfix. and should go in the USES/USE_* section.

I have no idea where GNU_CONFIGURE goes. I've asked for it to be pointed out to where it goes. Since I can't get any help on where to put it, I'm just going to close this.

Please, reopen the review, when I'm back from holidays I will help you.

Sooooooooo. Is anybody going to help me fix this or approve this? ;-) I am still waiting.

Sooooooooo. Is anybody going to help me fix this or approve this? ;-) I am still waiting.

Hey,

I will do it tonight (Taiwan)!

Best,

This revision is now accepted and ready to land.Apr 28 2019, 1:14 AM
This revision was automatically updated to reflect the committed changes.