Ticket #38090: Portfile

File Portfile, 4.1 KB (added by cooljeanius (Eric Gallager), 11 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: Portfile 102485 2013-02-04 16:02:38Z raimue@macports.org $
3
4PortSystem            1.0
5PortGroup             qt4 1.0
6
7name                  valkyrie
8version               2.0.0
9revision              0
10categories            devel aqua
11platforms             darwin
12supported_archs       i386 x86_64
13universal_variant     yes
14license               GPL-2
15maintainers           raimue gwmail.gwu.edu:egall openmaintainer
16
17description           A Qt4-based GUI for valgrind.
18long_description \
19    Valkyrie is a graphical frontend to valgrind: what ddd is to gdb, valkyrie is to valgrind. \
20    It uses Qt4 and works with the Memcheck and Helgrind tools. \
21    It also has an XML merging tool for Memcheck outputs (vk_logmerge).
22
23homepage              http://valgrind.org
24master_sites          http://valgrind.org/downloads/
25use_bzip2             yes
26
27checksums             md5     a411dfb803f548dae5f988de0160aeb5 \
28                      sha1    999a6623eea5b7b8d59b55d59b8198f4fcd08add \
29                      rmd160  ae7d9905a22311af3261347b5c39e7ca7fccaaa7 \
30                      sha256  a70b9ffb2409c96c263823212b4be6819154eb858825c9a19aad0ae398d59b43
31
32# This was taken from the valgrind portfile; I don't know if it actually applies to valkyrie, too, though...
33pre-configure {
34    if {"darwin" == ${os.platform} && (${os.major} < 9 || ${os.major} > 12)} {
35        ui_error "${name} ${version} is only compatible with Mac OS X 10.5, 10.6, 10.7 and 10.8"
36        return -code error "incompatible Mac OS X version"
37    }
38}
39
40# "use_configure no" is a dirty hack used because I couldn't get it to work otherwise
41use_configure         no
42# Even though we're not using configure, I left these in, in case someone want to try to remove it
43# and use the configure step properly again
44configure.cmd         "${qt_qmake_cmd}"
45configure.args-delete --prefix=/opt/local \
46                      --disable-dependency-tracking
47configure.args        QMAKESPEC=${qt_mkspecs_dir}/macx-g++
48configure.pre_args
49configure.post_args
50configure.ldflags
51
52depends_build-append  port:makeicns
53depends_lib-append    path:bin/valgrind:valgrind \
54                      port:xpm
55
56post-configure {
57# doing the actual configuring in a post-configure step goes with the dirty hack of
58# using "use_configure no" above
59    system -W ${worksrcpath} "${qt_qmake_cmd} QMAKESPEC=${qt_mkspecs_dir}/macx-g++"
60# When Qt is installed without +universal, and qmake is called with
61# "QMAKE_LDFLAGS += -arch foo", and "foo" is the native arch, then, at
62# least sometimes, qmake will erroneously remove the second "foo" but
63# leave the "-arch" flag -- generating an error at linking.  Not sure
64# if this is the case with +debug though...
65    if {![variant_isset universal]} {
66        reinplace "s|\\(-arch ${build_arch}\\) -arch|\\1|" \
67            ${worksrcpath}/Makefile
68    }
69}
70
71# allow ccache, if specified by the user (this was taken from the djview portfile)
72pre-build {
73    if {[tbool configure.ccache]} {
74        build.post_args "CCACHE=ccache"
75    }
76}
77
78variant debug description {Set for debugging} {
79    use_parallel_build no
80}
81
82# Setting destroot.destdir doesn't actually work, but it should though.
83destroot.destdir      ${destroot}${prefix}
84# "make install" by default puts stuff into ${destroot}/usr/local,
85# so we have to move everything into the right places manually
86post-destroot {
87    xinstall -d ${destroot}${prefix}/share/${name}-${version}
88    copy [glob ${destroot}/usr/local/share/${name}-${version}/*] ${destroot}${prefix}/share/${name}-${version}
89    xinstall -m 755 -d ${destroot}${applications_dir}
90    copy [glob ${destroot}/*/local/bin/*.app] ${destroot}${applications_dir}
91    foreach png [glob ${worksrcpath}/icons/*.png] {
92        system -W ${worksrcpath}/icons "makeicns -in ${png}"
93    }
94    eval xinstall [glob ${worksrcpath}/icons/*] ${destroot}${applications_dir}/valkyrie.app/Contents/Resources
95    delete ${destroot}/usr
96}
97
98livecheck.type        regex
99livecheck.url         ${homepage}
100# The livecheck regex is broken; I'm not sure how to fix it...
101livecheck.regex       ${name}-(\\d(?:\\.\\d)+)