source: trunk/dports/devel/gdb/Portfile @ 108538

Last change on this file since 108538 was 108538, checked in by sean@…, 4 years ago

gdb: add note about taskgated on mountain lion and later systems; closes #39349

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 3.5 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 108538 2013-07-26 00:20:27Z sean@macports.org $
3
4PortSystem      1.0
5PortGroup       muniversal 1.0
6
7name            gdb
8version         7.6
9categories      devel
10license         GPL-3+
11maintainers     dweber openmaintainer
12description     GDB: The GNU Project Debugger
13
14long_description \
15GDB, the GNU Project debugger, allows you to see what is going on 'inside' \
16another program while it executes -- or what another program was doing at the \
17moment it crashed.  GDB can do four main kinds of things (plus other things \
18in support of these) to help you catch bugs in the act: \
19    a) start your program, specifying anything that might affect its behavior, \
20    b) make your program stop on specified conditions, \
21    c) examine what has happened, when your program has stopped, \
22    d) change things in your program, so you can experiment with correcting \
23       the effects of one bug and go on to learn about another. \
24The program being debugged can be written in Ada, C, C++, Objective-C, \
25Pascal (and many other languages). Those programs might be executing on \
26the same machine as GDB (native) or on another machine (remote). GDB \
27can run on most popular UNIX and Microsoft Windows variants.
28
29homepage        http://www.gnu.org/software/gdb/
30platforms       darwin
31supported_archs x86_64 i386
32
33master_sites    gnu
34
35use_bzip2       yes
36
37checksums       rmd160  9a3bb92415a3785da15a60bc7e5707051c8bebcf \
38                sha256  a410e8f35ee70cce83dbbf1da9e2a8373f271ac0e4b71db4336ae293fc7bdf1b
39
40depends_build   port:gettext port:zlib
41
42configure.args \
43    --infodir=${prefix}/share/info \
44    --mandir=${prefix}/share/man \
45    --with-docdir=${prefix}/share/doc \
46    --program-prefix=g \
47    --disable-werror
48
49post-destroot {
50    system "chgrp procmod ${destroot}${prefix}/bin/ggdb*"
51    system "chmod g+s ${destroot}${prefix}/bin/ggdb*"
52
53    foreach info [glob -tails -directory ${destroot}${prefix}/share/info g*] {
54        move ${destroot}${prefix}/share/info/${info} ${destroot}${prefix}/share/info/g${info}
55    }
56    move ${destroot}${prefix}/share/info/standards.info ${destroot}${prefix}/share/info/ggdb-standards.info
57
58    xinstall -m 755 -d ${destroot}${prefix}/libexec/gnubin
59    foreach binary [glob -tails -directory ${destroot}${prefix}/bin g*] {
60        ln -s ${prefix}/bin/${binary} ${destroot}${prefix}/libexec/gnubin/[string range $binary 1 end]
61    }
62}
63
64set pythons_suffixes {25 26 27 31 32 33}
65
66set pythons_ports {}
67foreach s ${pythons_suffixes} {
68    lappend pythons_ports python${s}
69}
70
71foreach s ${pythons_suffixes} {
72    set p python${s}
73    set v [string index ${s} 0].[string index ${s} 1]
74    set i [lsearch -exact ${pythons_ports} ${p}]
75    set c [lreplace ${pythons_ports} ${i} ${i}]
76    eval [subst {
77        variant ${p} description "Build GDB with Python ${v} Scripting" conflicts ${c} {
78            depends_lib-append      port:${p}
79            configure.args-append   --with-python=${prefix}/bin/python${v}
80            patchfiles-append       patch-python-config.py.diff
81        }
82    }]
83}
84
85if {${os.platform} eq "darwin" && ${os.major} >= 12} {
86    notes "
87You will need to make sure /System/Library/LaunchDaemons/com.apple.taskgated.plist\
88has the '-p' option, e.g.
89            <key>ProgramArguments</key>
90            <array>
91                    <string>/usr/libexec/taskgated</string>
92                    <string>-sp</string>
93            </array>
94"
95}
96
97
98livecheck.type  regex
99livecheck.url   http://ftp.gnu.org/gnu/gdb/
100livecheck.regex gdb-(\\d+(?:\\.\\d+)+)\\.tar
Note: See TracBrowser for help on using the repository browser.