aboutsummaryrefslogtreecommitdiffstats
path: root/net/silc-client/Makefile
blob: c560d9956a90532cbf1e5bdbd3edb7a988b3465f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
# Created by: Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org>
# $FreeBSD$

PORTNAME=   silc
PORTVERSION=    1.1.8
CATEGORIES= net ipv6 security
MASTER_SITES=   http://www.silcnet.org/download/%SUBDIR%/ \
        http://ftp.silcnet.org/%SUBDIR%/ \
        http://www.nic.funet.fi/pub/mirrors/ftp.silcnet.org/silc/%SUBDIR%/ \
        http://ftp.sunet.se/pub/network/silc/%SUBDIR%/ \
        ftp://ftp.silcnet.org/silc/%SUBDIR%/ \
        ftp://ftp.funet.fi/pub/mirrors/ftp.silcnet.org/silc/%SUBDIR%/ \
        ftp://ftp.sunet.se/pub/network/silc/%SUBDIR%/
MASTER_SITE_SUBDIR= client/sources
PKGNAMESUFFIX=  ${IRSSI_PLUGIN}-client
DISTNAME=   ${PORTNAME}-client-${PORTVERSION}

MAINTAINER?=    wxs@FreeBSD.org
COMMENT=    Secure Internet Live Conferencing (SILC) network client

CONFLICTS=  silc-toolkit-1.1.* silc-irssi-plugin-1.1.*

USE_BZIP2=  yes
GNU_CONFIGURE=  yes
USE_GNOME=  glib20
USES=       pkgconfig
USE_GMAKE=  yes
USE_LDCONFIG=   yes
CONFIGURE_ARGS= --docdir=${DOCSDIR} \
        --without-libtoolfix
WANT_PERL=  yes

OPTIONS_DEFINE= PTHREADS IPV6 ICONV PERL
OPTIONS_DEFINE_i386=    ASM
PTHREADS_DESC=  Enable pthreads support
OPTIONS_DEFAULT=    IPV6 ICONV PERL ASM

.ifdef(IRSSI_PLUGIN)
CONFIGURE_ARGS+=    --with-silc-plugin=${PREFIX}/lib/irssi \
            --without-silc-includes
CFLAGS+=    -fPIC
BUILD_DEPENDS=  irssi:${PORTSDIR}/irc/irssi
# We don't want to install the man page and configuration file for this case
# Also, the port makes an extra symlink which causes IRSSI to load the plugin
# twice.  This causes weird behavior such as /me output showing up twice.
EXTRA_PATCHES=  ${FILESDIR}/extra-patch-apps__irssi__Makefile.in \
        ${FILESDIR}/extra-patch-apps__irssi__src__fe-common__Makefile.in

# Following is to fix plugin errors. Fixes taken from debian bug report #522080
# and #577501 modified to work with port build process
EXTRA_PATCHES += \
        ${FILESDIR}/extra-patch-apps__irssi__src__perl__silc__Makefile.PL.in \
        ${FILESDIR}/extra-patch-apps__irssi__src__fe-common__silc__Makefile.in \
        ${FILESDIR}/extra-patch-apps__irssi__src__silc__core__Makefile.in \
        ${FILESDIR}/extra-patch-apps__irssi__src__silc__core__silc-core.c \
        ${FILESDIR}/extra-patch-apps__irssi__src__silc__core__silc-expandos.c \
        ${FILESDIR}/extra-patch-apps__irssi__src__silc__core__client_ops.c
.else
MAN1=       silc.1
.endif

post-patch:
# install neither documentation nor silc server, we have ports for those
    @${REINPLACE_CMD} -e 's/-D_THREAD_SAFE//' ${WRKSRC}/${CONFIGURE_SCRIPT}
    @${REINPLACE_CMD} -e 's/docdir/DOCDIR/' ${WRKSRC}/doc/Makefile.in
    @${REINPLACE_CMD} -e 's/^install-data-am: install-docDATA$$/install-data-am:/' \
        ${WRKSRC}/apps/irssi/docs/Makefile.in
    @${REINPLACE_CMD} -e 's/^install-data-am: install-moduleLTLIBRARIES$$/install-data-am:/' \
        ${WRKSRC}/apps/irssi/src/perl/Makefile.in
    @${REINPLACE_CMD} -e 's/--libtool-enable-shared//' \
        ${WRKSRC}/lib/silccrypt/Makefile.in
    @${REINPLACE_CMD} -e 's/^MODULESDIR="$$silc_prefix/MODULESDIR="$$silc_prefix\/share\/silc/' ${WRKSRC}/configure
    @${REINPLACE_CMD} -e 's|glib/.*\.h|glib.h|g' \
        ${WRKSRC}/apps/irssi/src/silc/core/silc-core.c

post-install:
.ifndef(IRSSI_PLUGIN)
    @if [ ! -f ${PREFIX}/etc/silc.conf ]; then \
        ${CP} -p ${PREFIX}/etc/silc.conf.sample ${PREFIX}/etc/silc.conf ; \
    fi
.endif

.include <bsd.port.options.mk>

.if ${PORT_OPTIONS:MIPV6}
CONFIGURE_ARGS+=    --disable-ipv6
.endif

.if ${PORT_OPTIONS:MICONV}
USES+=          iconv
CONFIGURE_ARGS+=    --with-iconv
.else
CONFIGURE_ARGS+=    --without-iconv
.endif

.if ${PORT_OPTIONS:MPERL}
USE_PERL5=      yes
PERL_ARCHNAME!=     perl -V:archname 2>/dev/null || ${ECHO_CMD}
PLIST_SUB+=     WITH_PERL="" PERL_ARCHNAME="${PERL_ARCHNAME:S/archname='//:S/';//}"
CONFIGURE_ARGS+=    --with-perl-lib=${PREFIX}/lib/${PORTNAME}/perl
.else
CONFIGURE_ARGS+=    --without-perl
PLIST_SUB+=     WITH_PERL="@comment "
.endif

.if empty(${PORT_OPTIONS:MASM})
CONFIGURE_ARGS+=    --disable-asm
.endif

.if ${PORT_OPTIONS:MPTHREADS}
CFLAGS+=        ${PTHREAD_CFLAGS} ${PTHREAD_LIBS}
.else
CONFIGURE_ARGS+=    --without-pthreads
.endif

.include <bsd.port.mk>