source: trunk/dports/textproc/lilypond/Portfile

Last change on this file was 151453, checked in by snc@…, 11 months ago

lilypond: detect fontforge, #49338

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 5.0 KB
Line 
1# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
2# $Id: Portfile 151453 2016-08-16 15:46:25Z ryandesign@macports.org $
3
4PortSystem          1.0
5
6name                lilypond
7version             2.18.2
8revision            3
9set branch          [join [lrange [split ${version} .] 0 1] .]
10categories          textproc
11maintainers         snc openmaintainer
12license             GPL-3+
13conflicts           lilypond-devel
14description         An automated engraving system for typesetting sheet music.
15long_description    Lilypond is a unix-based automated engraving system that \
16                    generates beautiful sheet music from input files. Lilypond \
17                    uses its own input format, .ly, which in many ways is \
18                    similar to LaTeX. Lilypond can export sheet music to PDF, \
19                    EPS, SVG, and PNG formats, and can also create MIDI files.
20
21homepage            http://lilypond.org/
22platforms           darwin
23master_sites        http://download.linuxaudio.org/lilypond/sources/v${branch}/
24#dist_subdir         ${name}/${version}_${revision}
25checksums           rmd160  a355201334fd0beac36c96f844c75d8e27b4ea9d \
26                    sha256  329d733765b0ba7be1878ae3f457dbbb875cc2840d2b75af4afc48c9454fba07
27
28
29depends_build       port:bison \
30                    port:t1utils \
31                    port:texi2html \
32                    port:pkgconfig
33depends_lib         port:fontconfig \
34                    port:fontforge \
35                    port:freetype \
36                    port:gettext \
37                    port:gmp \
38                    path:lib/pkgconfig/glib-2.0.pc:glib2 \
39                    port:ghostscript \
40                    port:mftrace \
41                    port:guile18 \
42                    port:texinfo \
43                    path:lib/pkgconfig/pango.pc:pango \
44                    port:flex \
45                    port:t1utils \
46                    port:texlive-lang-cyrillic \
47                    port:texlive-metapost \
48                    port:dblatex \
49                    port:urw-fonts \
50                    port:libtool \
51                    port:python27
52
53configure.python    ${frameworks_dir}/Python.framework/Versions/2.7/bin/python2.7
54
55patchfiles          patch-scripts-build-mf2pt1.pl.diff
56post-patch {
57    reinplace s|__vector|lily_vector|g ${worksrcpath}/flower/include/std-vector.hh
58    set files {Documentation/contributor/build-notes.itexi \
59        Documentation/cs/usage/setup.itely \
60        Documentation/de/usage/setup.itely \
61        python/auxiliar/manuals_definitions.py \
62        scripts/auxiliar/check_texi_refs.py \
63        scripts/auxiliar/check_translation.py \
64        scripts/auxiliar/coverage.py \
65        scripts/auxiliar/find-superfluous-includes.py \
66        scripts/auxiliar/fixcc.py \
67        scripts/auxiliar/makelsr.py \
68        scripts/auxiliar/musicxml_generate_intervals.py \
69        scripts/auxiliar/musicxml_generate_keys.py \
70        scripts/auxiliar/musicxml_generate_timesignatures.py \
71        scripts/auxiliar/node-menuify.py \
72        scripts/auxiliar/prepare-web-media.py \
73        scripts/auxiliar/readlink.py \
74        scripts/auxiliar/skyline_viewer.py \
75        scripts/auxiliar/strip-whitespace.py \
76        scripts/auxiliar/tely-gettext.py \
77        scripts/auxiliar/texi-langutils.py \
78        scripts/auxiliar/texi-skeleton-update.py \
79        scripts/auxiliar/translations-status.py \
80        scripts/auxiliar/update-snippets.py \
81        scripts/build/pytt.py }
82   
83    foreach file ${files} {
84        reinplace s|/usr/bin/env\\\ python|${configure.python}| ${worksrcpath}/$file
85        reinplace s|/usr/bin/python|${configure.python}| ${worksrcpath}/$file
86    }
87   
88    # Use guile18 header files
89    reinplace s|libguile\.h|libguile18.h|g ${worksrcpath}/configure \
90        ${worksrcpath}/lily/include/lily-guile.hh
91
92    # help fontforge date calculation
93    reinplace s|20110222|2011-02-22|g ${worksrcpath}/configure
94}
95
96configure.args-append  --with-ncsb-dir=${prefix}/share/fonts/urw-fonts \
97    --disable-documentation
98
99platform darwin {
100    if {${configure.cxx_stdlib} eq "libc++"} {
101        configure.ldflags-append    "-lc++"
102    }
103}
104
105configure.env       LTDL_LIBRARY_PATH=${prefix}/lib \
106    PYTHON_CONFIG=${configure.python}-config \
107    GUILE=${prefix}/bin/guile18 \
108    GUILE_CONFIG=${prefix}/bin/guile18-config \
109    GUILE_TOOLS=${prefix}/bin/guile18-tools
110
111build.env           LTDL_LIBRARY_PATH=${prefix}/lib
112
113destroot.env        LTDL_LIBRARY_PATH=${prefix}/lib
114post-destroot {
115    move ${destroot}${prefix}/bin/lilypond \
116        ${destroot}${prefix}/libexec/lilypond-bin
117    xinstall -m 755 ${filespath}/lilypond.in ${destroot}${prefix}/bin/lilypond
118    reinplace "s|@@PREFIX@@|${prefix}|g" ${destroot}${prefix}/bin/lilypond
119}
120
121default_variants +docs
122
123variant docs description {Build documentation files} {
124    configure.args-delete   --disable-documentation
125    configure.args-append   --enable-documentation
126    depends_lib-append      port:netpbm
127}
128
129livecheck.type  regex
130livecheck.url   ${homepage}/source.html
131livecheck.regex ${name}-(\\d+(\\.\\d+)+)
Note: See TracBrowser for help on using the repository browser.