Page MenuHomeFreeBSD

New port: audio/guidolib: Library for graphic rendering of music scores
ClosedPublic

Authored by yuri on Dec 31 2017, 2:54 AM.

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

yuri created this revision.Dec 31 2017, 2:54 AM
yuri added a comment.EditedDec 31 2017, 3:02 AM

It requires a massive and extensive patching. I submitted pull requests to them, and this helped, but it still has very messy makefiles.

Besides that, GuidoLib implements a new way of rendering musical notes.
It has its own language for this, which resembles a programing language, and special notation for all unique elements and constructs in music notation. This is upwards of 400 unique clauses.
GuidoLib is the (only?) alternative to the ubiquitous MusicXML, which is an XML schema.
GuidoLib language is much more concise, and much more humanly readable and writable, compared to MusicXML, which is only read and written by computer.

Example:

{ 
  [ \staffFormat<size=3pt> 
   \stemsOff  \noteFormat<"x",size=1.3> c d e f g a h c2  ],
  [ \staffFormat<size=3pt> \noteFormat<style="none">
 \beamsOff g/16 g f e/8 f  empty/2 b/32 empty/4 f2*1/16. f f ],
  [ \staffFormat<style="1-line"> \clef<"none">  
    \meter<"",autoBarlines="off"> \stemsOff g/4 g g g g e h ],
  [ \staffFormat<size=3pt> c d e f g a h c2 ] 
}
mat added inline comments.Dec 31 2017, 9:54 AM
audio/guidolib/Makefile
24 ↗(On Diff #37281)

Is this actually used ?

36–65 ↗(On Diff #37281)

patches ?

yuri marked 2 inline comments as done.Dec 31 2017, 9:58 AM
yuri added inline comments.
audio/guidolib/Makefile
24 ↗(On Diff #37281)

Yes

36–65 ↗(On Diff #37281)

Half of them require variables in them. Plus, some need to be upstreamed.
I went back and forth with them, but with this upstream it's never enough.

yuri marked 3 inline comments as done.Dec 31 2017, 9:58 AM
yuri marked an inline comment as done.Jan 1 2018, 7:27 PM
tcberner added inline comments.Jan 9 2018, 9:23 PM
audio/guidolib/Makefile
36–65 ↗(On Diff #37281)

How about providing upstream a sensible CMakeLists.txt for the whole thing ^^ -- seems easier in the long run :D

97 ↗(On Diff #37281)

^${DESTKOPDIR}

tcberner added inline comments.Jan 9 2018, 9:32 PM
audio/guidolib/Makefile
19 ↗(On Diff #37281)

^buildtools_build qmake_build

yuri updated this revision to Diff 37721.Jan 10 2018, 8:22 AM
yuri marked 3 inline comments as done.

.

yuri added inline comments.Jan 10 2018, 8:22 AM
audio/guidolib/Makefile
36–65 ↗(On Diff #37281)

I did that, then they have added a lot more of the same.

mat added inline comments.Jan 10 2018, 2:48 PM
audio/guidolib/Makefile
24 ↗(On Diff #37281)

INSTALL_WRKSRC is only used in the do-install target in Mk/bsd.port.mk, which you are re-defining here, and then in USES=cmake, python, qmake, meson that you are not using, and in the ruby framework, which you are not using either.
So, it is never used anywhere.

yuri updated this revision to Diff 37729.Jan 10 2018, 4:18 PM
yuri marked an inline comment as done.

Rm INSTALL_WRKSRC.

yuri marked an inline comment as done.Jan 10 2018, 4:19 PM
yuri added inline comments.
audio/guidolib/Makefile
24 ↗(On Diff #37281)

Ok, thanks.

yuri marked an inline comment as done.Jan 10 2018, 4:19 PM
tcberner accepted this revision.Jan 19 2018, 8:51 PM
This revision is now accepted and ready to land.Jan 19 2018, 8:51 PM
This revision was automatically updated to reflect the committed changes.