aboutsummaryrefslogtreecommitdiffstats
path: root/devel/libtai/Makefile
blob: e3e70bccc82b8872d25ed84ddf4d873805de3288 (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
# Created by: Mario S F Ferreira <lioux@linf.unb.br> et al.
# $FreeBSD$

PORTNAME=   libtai
PORTVERSION=    0.60
PORTREVISION=   4
CATEGORIES= devel
MASTER_SITES=   http://cr.yp.to/libtai/ \
        ftp://ftp.sunsite.auc.dk/disk1/qmail/ \
        ftp://ftp.task.gda.pl/mirror/mirror.qmail.org/koobera/pub/software/

MAINTAINER= rodrigo@FreeBSD.org
COMMENT=    Library for storing and manipulating dates and times in second/attosecond

ALL_TARGET= it
USE_LDCONFIG=   yes
MAKE_ENV=   LIBVERSION="${LIBVERSION}"
MAKE_JOBS_UNSAFE=   yes

PLIST_SUB=  LIBVERSION=${LIBVERSION} \
        LIBFILE=${LIBFILE}

MAN_FILES=  caldate.3 caldate_mjd.3 caltime.3 caltime_tai.3 leapsecs.3 \
        tai.3 tai_now.3 tai_pack.3 taia.3 taia_now.3 taia_pack.3

# port information
LIBVERSION= 1
LIBFILE=    libtai
PROGRAM_FILES=  easter nowutc leapsecs yearcal
HEADER_FILES=   caldate.h caltime.h leapsecs.h tai.h taia.h uint64.h

do-configure:
    @${REINPLACE_CMD} -e "s!%%PREFIX%%!${PREFIX}!g" \
        ${WRKSRC}/leapsecs.3 ${WRKSRC}/leapsecs_read.c
    @${ECHO_CMD} "${CC} ${CFLAGS}" > ${WRKSRC}/conf-cc
    @${ECHO_CMD} "${CC} -s" > ${WRKSRC}/conf-ld
    @${ECHO_CMD} -fPIC -DPIC > ${WRKSRC}/conf-ccso
# update leap seconds table
    @${CAT} ${FILESDIR}/leapsecs-update.txt >> ${WRKSRC}/leapsecs.txt

pre-install:
# correct header locations inside files
.for file in ${HEADER_FILES}
    @${REINPLACE_CMD} -E -e 's|(#include[[:space:]]+)"([^"]+)"|\1<libtai/\2>|' \
        ${WRKSRC}/${file}
.endfor

post-build:
    @${SETENV} LD_LIBRARY_PATH=${WRKSRC} \
        ${WRKSRC}/leapsecs < ${WRKSRC}/leapsecs.txt > \
        ${WRKSRC}/leapsecs.dat

do-install:
    ${INSTALL_DATA} ${WRKSRC}/leapsecs.dat ${STAGEDIR}${PREFIX}/etc
.for i in ${MAN_FILES}
    ${INSTALL_MAN} ${WRKSRC}/${i} ${STAGEDIR}${PREFIX}/man/man3
.endfor
.for i in ${PROGRAM_FILES}
    ${INSTALL_PROGRAM} ${WRKSRC}/${i} ${STAGEDIR}${PREFIX}/bin
.endfor
    ${INSTALL_DATA} ${WRKSRC}/${LIBFILE}.a ${STAGEDIR}${PREFIX}/lib
    ${INSTALL_LIB} ${WRKSRC}/${LIBFILE}.so.${LIBVERSION} ${STAGEDIR}${PREFIX}/lib
    ${LN} -sf ${LIBFILE}.so.${LIBVERSION} \
        ${STAGEDIR}${PREFIX}/lib/${LIBFILE}.so
    @${MKDIR} ${STAGEDIR}${PREFIX}/include/${PORTNAME}
.for file in ${HEADER_FILES}
    ${INSTALL_DATA} ${WRKSRC}/${file} ${STAGEDIR}${PREFIX}/include/${PORTNAME}
.endfor

.include <bsd.port.mk>