Ticket #40139: Portfile.11

File Portfile.11, 4.6 KB (added by dliessi (Davide Liessi), 10 years ago)
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$
3
4PortSystem          1.0
5PortGroup           python 1.0
6PortGroup           github 1.0
7
8github.setup        wbsoft frescobaldi e7e3b25bf83f8a27a4759ee70428eaf8b3810c0c
9version             2.0.11
10conflicts           frescobaldi-devel
11categories          editors python
12maintainers         gmail.com:davide.liessi openmaintainer
13description         A LilyPond sheet music text editor
14long_description    Frescobaldi is a LilyPond sheet music text editor. \
15                    It aims to be powerful, yet lightweight and easy to use.
16homepage            http://www.frescobaldi.org/
17platforms           darwin
18supported_archs     noarch
19license             GPL-2+
20
21checksums           rmd160  4c2b972c20d470d01d13a7e2b5ab37fc032948fb \
22                    sha256  b9ae5263982f39114e8e785474e4e4d80aea54f938bd08e562d0b72b8e3c8c0e
23
24subport frescobaldi-devel {
25    github.setup        wbsoft frescobaldi 2a50b1033695350416fe0c2a2e605a9d74b3265a
26
27    # github.setup also sets 'name frescobaldi', overriding the subport name.
28    # With 'name ${subport}', `port lint frescobaldi-devel` gives the following error:
29    # 'Error: Portfile directory frescobaldi does not match port name frescobaldi-devel'.
30    # With 'set PortInfo(name) ${subport}' (see the definition of 'proc subport' in
31    # portutil.tcl) the Portfile works correctly and the error disappears.
32    global PortInfo
33    set PortInfo(name) ${subport}
34
35    conflicts           frescobaldi
36    version             20131104
37    set dev_version     2.0.12
38
39    checksums           rmd160  a1d45ccde2aa445bc9284dc9a50da973bcb90a3d \
40                        sha256  ccd868a9d019679bc11cdc2dfc41591e861ead50c044bc476189487d54062b7e
41}
42
43build {}
44
45depends_run-append  port:portmidi
46
47variant python26 conflicts python27 description {Use Python 2.6} {
48    python.default_version  26
49    depends_run-append      port:py${python.default_version}-pyqt4 \
50                            port:py${python.default_version}-python-poppler-qt4
51}
52variant python27 conflicts python26 description {Use Python 2.7} {
53    python.default_version  27
54    depends_run-append      port:py${python.default_version}-pyqt4 \
55                            port:py${python.default_version}-python-poppler-qt4
56}
57if {![variant_isset python26]} {
58    default_variants        +python27
59}
60
61variant app description {Make application bundle} {
62    depends_build-append    port:py${python.default_version}-py2app
63}
64default_variants    +app
65
66post-destroot {
67    set share_destroot ${destroot}${prefix}/share
68    set share_python ${python.prefix}/share
69
70    set man_dir /man/man1
71    xinstall -d ${share_destroot}${man_dir}
72    ln -s ${share_python}${man_dir}/frescobaldi.1 ${share_destroot}${man_dir}
73
74    set desktop_dir /applications
75    xinstall -d ${share_destroot}${desktop_dir}
76    ln -s ${share_python}${desktop_dir}/frescobaldi.desktop ${share_destroot}${desktop_dir}
77
78    set icons_dir /icons/hicolor/scalable/apps
79    xinstall -d ${share_destroot}${icons_dir}
80    ln -s ${share_python}${icons_dir}/frescobaldi.svg ${share_destroot}${icons_dir}
81
82    set doc_dir ${share_destroot}/doc/${subport}
83    xinstall -d ${doc_dir}
84    xinstall -m 644 -W ${worksrcpath} \
85        COPYING \
86        ChangeLog \
87        README \
88        THANKS \
89        ${doc_dir}
90
91    if {[variant_isset app]} {
92        if {${name} eq ${subport}} {
93            set bundle_version    ${version}
94        } else {
95            set bundle_version    ${dev_version}-dev-${version}
96        }
97
98        xinstall -m 644 -W ${filespath} mac-app.py ${workpath}
99        reinplace "s|%%VERSION%%|${bundle_version}|g" ${workpath}/mac-app.py
100        reinplace "s|%%PREFIX%%|${prefix}|g" ${workpath}/mac-app.py
101
102        system "cd ${workpath} && ${prefix}/bin/python${python.branch} mac-app.py py2app"
103
104        set app_resources   ${workpath}/dist/Frescobaldi.app/Contents/Resources
105        xinstall -m 644 -W ${worksrcpath}/macosx/icons frescobaldi.icns ${app_resources}
106
107        foreach l {cs de en es fr gl it nl pl pt ru tr uk} {
108            set app_lproj ${app_resources}/${l}.lproj
109            xinstall -d ${app_lproj}
110            xinstall -m 644 -W ${filespath} InfoPlist.strings ${app_lproj}
111        }
112
113        file copy ${workpath}/dist/Frescobaldi.app ${destroot}${applications_dir}
114    }
115}
116
117python.link_binaries_suffix
118
119notes \
120"You may want to install FluidSynth and obtain a SoundFont
121in order to have audio output from Frescobaldi's MIDI output.
122
123You will need to select FluidSynth's MIDI input port
124in Frescobaldi's MIDI settings (in Preferences)
125while FluidSynth is running."