aboutsummaryrefslogtreecommitdiffstats
path: root/net/libnet/Makefile
blob: 3aa3ba861b7fbb095a3c44e6de468d606eeee7c7 (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
# Created by: shipley@dis.org
# $FreeBSD$

PORTNAME=   libnet
PORTVERSION=    1.1.6
PORTREVISION=   1
PORTEPOCH=  1
CATEGORIES= net
MASTER_SITES=   SF/libnet-dev
MASTER_SITE_SUBDIR= distfiles

MAINTAINER= dinoex@FreeBSD.org
COMMENT=    A C library for creating IP packets

LATEST_LINK=    ${PORTNAME}${SHORT_VER}
NO_STAGE=   yes

USE_AUTOTOOLS=  libtool
USE_LDCONFIG=   yes
GNU_CONFIGURE=  yes
CFLAGS+=    -fPIC
USE_CSTD=   gnu89
CONFIGURE_ARGS= --with-link-layer=${LIBNET_LINK}

SHORT_VER=  11
SHORT_NAME= ${PORTNAME}${SHORT_VER}
DOCSDIR=    ${PREFIX}/share/doc/${SHORT_NAME}
EXAMPLESDIR=    ${PREFIX}/share/examples/${SHORT_NAME}
USE_LDCONFIG=   ${PREFIX}/lib/${SHORT_NAME}
PLIST_SUB=  SVER=${SHORT_VER} SNAME=${SHORT_NAME} VERSION=${PORTVERSION}

MAN3=       libnet-functions.h.3 libnet-macros.h.3 libnet.h.3
DOCS=       README doc/CHANGELOG doc/CONTRIB doc/COPYING \
        doc/DESIGN_NOTES doc/MIGRATION doc/PACKET_BUILDING doc/PORTED \
        doc/RAWSOCKET_NON_SEQUITUR doc/TODO
EXAMPLES=   sample/*.c

OPTIONS_DEFINE= EXAMPLES DOCS BPF
OPTIONS_DEFAULT=    BPF
BPF_DESC=   link layer bpf

.include <bsd.port.options.mk>

LIBNET_LINK=    none

.if ${PORT_OPTIONS:MBPF}
LIBNET_LINK=    bpf
.endif

post-patch:
    ${REINPLACE_CMD} \
     -e 's|@LIBNET_CONFIG_LIBS@|@LIBNET_CONFIG_LIBS@ -L@prefix@/lib/${SHORT_NAME}|' \
     -e 's|@LIBNET_CONFIG_CFLAGS@|@LIBNET_CONFIG_CFLAGS@ -I@prefix@/include/${SHORT_NAME}|' \
        ${WRKSRC}/libnet-config.in
    ${REINPLACE_CMD} -e 's|^includedir =.*|includedir = @includedir@/${SHORT_NAME}|' \
        ${WRKSRC}/include/Makefile.in \
        ${WRKSRC}/include/libnet/Makefile.in
    ${REINPLACE_CMD} -e 's|^libdir =.*|libdir = @libdir@/${SHORT_NAME}|' \
        -e 's|^libnet_la_LDFLAGS =\(.*\)|libnet_la_LDFLAGS =\1 -soname=libnet-${SHORT_NAME}.so.1|' \
        ${WRKSRC}/src/Makefile.in

post-install:
    ${INSTALL_SCRIPT} ${WRKSRC}/libnet-config ${PREFIX}/bin/${SHORT_NAME}-config
    @cd ${PREFIX}/lib && \
        ${LN} -sf ${SHORT_NAME}/libnet.so libnet-${PORTVERSION}.so.8 && \
        ${LN} -sf libnet-${PORTVERSION}.so.8 libnet-${PORTVERSION}.so
.if ${PORT_OPTIONS:MEXAMPLES}
    @${MKDIR} ${EXAMPLESDIR}
    cd ${WRKSRC} && ${INSTALL_DATA} ${EXAMPLES} ${EXAMPLESDIR}
.endif
.if ${PORT_OPTIONS:MDOCS}
    @${MKDIR} ${DOCSDIR}
    cd ${WRKSRC} && ${INSTALL_DATA} ${DOCS} ${DOCSDIR}
.endif

.include <bsd.port.mk>