source: trunk/dports/net/pidgin/Portfile

Last change on this file was 151929, checked in by devans@…, 13 months ago

libpurple, finch, pidgin: use perl5.24 (#52081).

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 6.8 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 151929 2016-08-24 05:29:28Z ryandesign@macports.org $
3
4PortSystem          1.0
5
6name                pidgin
7version             2.11.0
8revision            1
9categories          net
10platforms           darwin
11license             GPL-2+
12maintainers         devans openmaintainer
13description         Multi-protocol Instant Messaging client
14long_description    Pidgin is an Open Source clone of America OnLine's \
15                    Instant Messenger client that uses GTK+ version 2.  It \
16                    features multiple groups, group chat, user information \
17                    fetching and registration, time stamping, and more.  It \
18                    also supports other IM protocols, including Yahoo!, MSN, \
19                    ICQ, Jabber, Napster, IRC, and Zephyr via included \
20                    plugins.
21
22homepage            http://www.pidgin.im/
23master_sites        sourceforge:project/pidgin/Pidgin/${version}
24
25checksums           rmd160  14edb897935f94eb57c09e3a6e5dbe41136941c5 \
26                    sha256  f72613440586da3bdba6d58e718dce1b2c310adf8946de66d8077823e57b3333
27
28use_bzip2           yes
29
30# Python is only required if --enable-dbus is used, and only for
31# the build process to generate the dbus code, not for running pidgin.
32
33# set 'pbranch' to desired perl version for perl plugin support
34# currently 5.24 (#52081)
35
36set pbranch         5.24
37
38depends_build       port:pkgconfig \
39                    port:intltool \
40                    port:autoconf \
41                    port:automake \
42                    port:libtool \
43                    port:gsed \
44                    port:python27
45
46depends_lib         path:lib/pkgconfig/glib-2.0.pc:glib2 \
47                    port:libxml2 \
48                    port:gconf \
49                    port:libidn \
50                    port:gnutls \
51                    port:perl${pbranch}
52
53patchfiles          patch-configure.ac.diff \
54                    patch-libpurple-internal.h.diff \
55                    patch-pidgin-gtkdocklet-gtk.c.diff \
56                    patch-finch_libgnt_Makefile.am.diff \
57                    patch-finch_libgnt_gntwm.c.diff
58
59# reconfigure using upstream autogen.sh for intltool 0.51 compatibility
60
61post-patch {
62    xinstall -m 755 ${filespath}/autogen.sh ${worksrcpath}
63}
64
65configure.cmd       ./autogen.sh
66
67# --disable-dependency-tracking was added because a +universal perl will result in
68# PERL_CFLAGS containing multiple -arch arguments... this is the easiest workaround
69
70configure.args      --disable-avahi \
71                    --disable-consoleui \
72                    --disable-farstream \
73                    --disable-gstreamer \
74                    --disable-gstreamer-interfaces \
75                    --disable-gtkspell \
76                    --disable-meanwhile \
77                    --disable-nm \
78                    --disable-screensaver \
79                    --disable-sm \
80                    --disable-startup-notification \
81                    --disable-schemas-install \
82                    --disable-vv \
83                    --disable-nss \
84                    --mandir=${prefix}/share/man \
85                    --with-python=${prefix}/bin/python2.7 \
86                    --disable-dependency-tracking \
87                    --without-x
88
89configure.args-append ac_cv_path_perlpath=${prefix}/bin/perl${pbranch}
90
91configure.ldflags-append    -bind_at_load
92configure.cppflags-append   -no-cpp-precomp
93
94subport libpurple {
95    configure.args-append   --disable-gtkui \
96                            --disable-pixmaps-install \
97                            --disable-nls
98    pre-activate {
99        if {![catch {set installed [lindex [registry_active pidgin] 0]}]} {
100            set _version [lindex $installed 1]
101            if {[vercmp $_version 2.10.9] < 0} {
102                registry_deactivate_composite pidgin "" [list ports_nodepcheck 1]
103            }
104        }
105    }
106}
107
108subport finch {
109    depends_lib-append      port:libpurple \
110                            port:ncurses
111
112    configure.args-delete   --disable-consoleui
113    configure.args-append   --disable-gtkui \
114                            --disable-pixmaps-install \
115                            --disable-nls \
116                            --disable-gestures \
117                            --enable-consoleui \
118                            --with-ncurses-headers=${prefix}/include
119}
120
121if {${subport} eq $name} {
122    depends_lib-append      port:libpurple \
123                            port:audiofile \
124                            port:gtk2 \
125                            port:libao
126
127    variant x11 conflicts quartz {
128        depends_lib-append      port:xorg-libX11 \
129                                port:xorg-libXext \
130                                port:xorg-libXScrnSaver \
131                                port:xorg-libice \
132                                port:xorg-libsm
133
134        configure.args-delete   --without-x \
135                                --disable-screensaver \
136                                --disable-sm
137
138        configure.args-append   --with-x \
139                                --x-includes=${prefix}/include \
140                                --x-libraries=${prefix}/lib \
141                                --enable-screensaver \
142                                --enable-sm
143    }
144
145    if {[variant_isset quartz]} {
146        default_variants -x11
147    } else {
148        default_variants +x11
149    }
150
151    variant quartz conflicts x11 {
152        configure.args-append   --disable-gestures
153    }
154
155    variant spellcheck description {Allow spell checking} {
156        depends_lib-append      port:gtkspell2
157        configure.args-delete   --disable-gtkspell
158    }
159
160    post-activate {
161        system "dbus-uuidgen --ensure"
162        system "${prefix}/bin/gtk-update-icon-cache -f -t ${prefix}/share/icons/hicolor"
163        system "export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source` && \
164            gconftool-2 --makefile-install-rule ${prefix}/etc/gconf/schemas/*.schemas"
165    }
166}
167   
168if {${subport} ne "libpurple"} {
169    post-destroot {
170        foreach file [glob -nocomplain -directory ${destroot}${prefix}/bin purple-*] {
171            delete $file
172        }
173        foreach file [glob -nocomplain -directory ${destroot}${prefix}/lib pkgconfig/purple.pc libpurple* purple-2] {
174            delete $file
175        }
176        delete ${destroot}${prefix}/include/libpurple \
177               ${destroot}${prefix}/share/aclocal \
178               ${destroot}${prefix}/share/man/man3/Purple.3pm \
179               ${destroot}${prefix}/share/purple \
180               ${destroot}${prefix}/share/sounds/purple \
181    }
182}
183
184post-destroot {
185    fs-traverse file ${destroot}${prefix}/lib/perl5 {
186        if {[file tail ${file}] == "perllocal.pod"} {
187            delete ${file}
188        }
189    }
190}
191
192livecheck.type      regex
193livecheck.url       http://sourceforge.net/projects/pidgin/files/Pidgin/
194livecheck.regex     "\/Pidgin\/(\\d+(?:\\.\\d+)*)\/"
Note: See TracBrowser for help on using the repository browser.