blob: 4b7f01591572112fdcad65176a434e7585e84a6a (
plain)
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
117
118
119
120
121
122
123
124
125
126
|
# Created by: Bjoern A. Zeeb <bz@FreeBSD.org>
# $FreeBSD$
PORTNAME= xalan-c
PORTVERSION= 1.11
CATEGORIES= textproc
MASTER_SITES= ${MASTER_SITE_APACHE:S/$/:msax,docs/}
MASTER_SITE_SUBDIR= xalan/${PORTNAME}/sources/:msax xalan/${PORTNAME}/docs/:docs
DISTNAME= xalan_c-${PORTVERSION}-src:msax
DISTFILES+= xalan_c-${PORTVERSION}-src${EXTRACT_SUFX}:msax
MAINTAINER= ports@FreeBSD.org
COMMENT= XSLT processor from the Apache XML Project
OPTIONS_DEFINE= DEBUG DOCS EXAMPLES
NO_STAGE= yes
.include <bsd.port.options.mk>
# move this further down though portlint might not like it but without
# this I will not be able to make use of make config in the future.
.if ${PORT_OPTIONS:MDEBUG}
PKGNAMESUFFIX+= -debug
.endif
.if ${PORT_OPTIONS:MDOCS}
DISTFILES+= ${DOCS_TARBALL}:docs
EXTRACT_ONLY= xalan_c-${PORTVERSION}-src${EXTRACT_SUFX}
DOCS_TARBALL= xalan_c-${PORTVERSION}-docs-html-nograf${EXTRACT_SUFX}
.endif
# we need the _extracted_ xerces-c3 port sources to build this one
# (installed version of port is enough)
XERCESC_LIB_VER?= 3
LIB_DEPENDS+= libxerces-c.${XERCESC_LIB_VER}.so:${PORTSDIR}/textproc/xerces-c3
XERCESCROOT?= ${LOCALBASE}
USE_LDCONFIG= yes
WRKSRC= ${WRKDIR}/xalan-c-${PORTVERSION}/c
USES= gmake
MAKE_ENV+= XALANCROOT=${WRKSRC}
MAKE_ENV+= XERCESCROOT=${XERCESCROOT}
MAKE_JOBS_UNSAFE=
HAS_CONFIGURE= yes
CONFIGURE_SCRIPT= runConfigure
CONFIGURE_ENV+= XALANCROOT=${WRKSRC}
CONFIGURE_ENV+= XERCESCROOT=${XERCESCROOT}
CONFIGURE_ENV+= PTHREAD_CFLAGS="${PTHREAD_CFLAGS}" \
PTHREAD_LIBS="${PTHREAD_LIBS}"
CONFIGURE_ARGS+= -p freebsd -c ${CC} -x ${CXX} -l ${PTHREAD_LIBS} \
-z ${EXTRA_CFLAGS} -I${LOCALBASE}/include -C --prefix=${PREFIX}
CONFIGURE_ARGS+= -m inmem
.if ${PORT_OPTIONS:MDEBUG}
CONFIGURE_ARGS+= -d
STRIP=
.endif
.if defined(ARCH) && \
(${ARCH} == "alpha" || ${ARCH} == "sparc64" || \
${ARCH} == "amd64" || ${ARCH} == "ia64")
# set bitsToBuild to 64
CONFIGURE_ARGS+= -b 64
SAMPLES_CONFIG_ARGS+= -b 64
.endif
XALANC_LIB_VERSION= ${PORTVERSION:S/.//:R}
XALANC_LIB= libxalan-c.so.${PORTVERSION:S/.//}.0
XALANMSG_LIB= libxalanMsg.so.${PORTVERSION:S/.//}.0
PLIST_SUB+= XALANC_LIB=${XALANC_LIB} \
XALANMSG_LIB=${XALANMSG_LIB} \
XALANC_LIB_VERSION=${XALANC_LIB_VERSION}
.if ${PORT_OPTIONS:MEXAMPLES}
ALL_TARGET?= all samples
SAMPLE_BINS= CompileStylesheet DocumentBuilder ExternalFunction \
ParsedSourceWrappers SerializeNodeSet SimpleTransform \
SimpleXPathAPI SimpleXPathCAPI StreamTransform \
TraceListen TransformToXercesDOM UseStylesheetParam \
XalanTransform XalanTransformerCallback ThreadSafe
.endif
.if ${PORT_OPTIONS:MDOCS}
PORTDOCS= *
.endif
post-patch:
${RM} -f ${WRKSRC}/src/xalanc/ICUBridge/ICUFormatNumberFunctor.hpp.orig \
${WRKSRC}/src/xalanc/PlatformSupport/XalanArrayAllocator.hpp.orig \
${WRKSRC}/src/xalanc/XMLSupport/FormatterToText.hpp.orig \
${WRKSRC}/src/xalanc/XPath/ElementPrefixResolverProxy.hpp.orig \
${WRKSRC}/src/xalanc/XPath/NameSpace.hpp.orig \
${WRKSRC}/src/xalanc/XPath/XalanQNameByValue.hpp.orig \
${WRKSRC}/src/xalanc/XSLT/FunctionSystemProperty.hpp.orig \
${WRKSRC}/src/xalanc/XSLT/TopLevelArg.hpp.orig
${CHMOD} 755 ${WRKSRC}/runConfigure ${WRKSRC}/configure
post-install:
.if !${PORT_OPTIONS:MDEBUG}
@${STRIP_CMD} ${PREFIX}/lib/${XALANC_LIB}
.endif
.if ${PORT_OPTIONS:MEXAMPLES}
.for i in ${SAMPLE_BINS}
@${INSTALL_PROGRAM} ${WRKSRC}/bin/$i ${PREFIX}/bin
.endfor
.if exists(${.CURDIR}/Makefile.inc-sample-src)
.include "${.CURDIR}/Makefile.inc-sample-src"
.endif
.endif
.if ${PORT_OPTIONS:MDOCS}
${MKDIR} ${DOCSDIR}
cd ${DOCSDIR} && \
${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} \
${_DISTDIR}/${DOCS_TARBALL} ${EXTRACT_AFTER_ARGS} && \
${MV} ${DOCSDIR}/docs/xalan-c/* ${DOCSDIR} && \
${RMDIR} ${DOCSDIR}/docs/xalan-c && \
${RMDIR} ${DOCSDIR}/docs
.endif
post-clean:
@${RM} -f ${WRKDIRPREFIX}${.CURDIR}/Makefile.inc
.include <bsd.port.mk>
|