1PORTNAME=	opennurbs
2PORTVERSION=	20130711
3CATEGORIES=	graphics
4MASTER_SITES=	http://files.na.mcneel.com/opennurbs/5.0/2013-07-11/
5DISTNAME=	${PORTNAME}_${PORTVERSION}
6
7MAINTAINER=	ports@MidnightBSD.org
8COMMENT=	Tools to accurately transfer 3-D geometry between applications
9WWW=		https://www.rhino3d.com/opennurbs
10
11LICENSE_FILE=	${WRKSRC}/readme.txt
12
13USES=		iconv:build dos2unix gmake zip
14MAKE_ARGS=	CC="${CC}" CCC="${CXX}"
15
16MAKEFILE=	makefile
17
18OPTIONS_DEFINE=	EXAMPLES
19
20.include <bsd.port.pre.mk>
21
22# In r311275 zlib.h was moved to contrib/zlib/zlib.h from lib/libz/zlib.h
23LIBZ=		${SRC_BASE}/contrib/zlib
24.if !exists(${LIBZ}/zlib.h)
25LIBZ=		${SRC_BASE}/sys/contrib/zlib
26.endif
27.if !exists(${LIBZ}/zlib.h)
28LIBZ:=		${SRC_BASE}/lib/libz
29.endif
30.if !exists(${LIBZ}/zlib.h)
31IGNORE=		needs SRC_BASE to compile. Install base system sources and try again
32.endif
33
34.if ${ARCH} != i386
35MAKE_ARGS+=	ON_GNU_OPTIMIZER_FLAGS="-g -fPIC"
36.endif
37
38post-patch:
39	@${REINPLACE_CMD} -e 's|D_GNU_SOURCE -I|D_GNU_SOURCE --std=c++14 -I|g' \
40		${WRKSRC}/makefile
41
42pre-build:
43	@${RM} -r ${WRKSRC}/zlib
44	${CP} -R ${LIBZ} ${WRKSRC}/zlib
45
46do-install:
47	@${MKDIR} ${PREFIX}/include/openNURBS/zlib
48	${INSTALL_DATA} ${WRKSRC}/libopenNURBS.a ${PREFIX}/lib
49	${INSTALL_DATA} ${WRKSRC}/*.h ${PREFIX}/include/openNURBS
50	${INSTALL_DATA} ${WRKSRC}/zlib/*.h \
51		${PREFIX}/include/openNURBS/zlib
52
53do-install-EXAMPLES-on:
54	@${MKDIR} ${FAKE_DESTDIR}${EXAMPLESDIR}
55	${INSTALL_DATA} ${WRKSRC}/examples_linking_pragmas.h \
56		${FAKE_DESTDIR}${EXAMPLESDIR}
57	${INSTALL_DATA} ${WRKSRC}/opennurbs.h ${FAKE_DESTDIR}${EXAMPLESDIR}
58.for i in brep read roundtrip userdata write
59	@${MKDIR} ${FAKE_DESTDIR}${EXAMPLESDIR}/example_${i}
60	${INSTALL_PROGRAM} ${WRKSRC}/example_${i}/example_${i} ${FAKE_DESTDIR}${EXAMPLESDIR}/example_${i}
61	cd ${WRKSRC}/example_${i} && ${COPYTREE_SHARE} . ${FAKE_DESTDIR}${EXAMPLESDIR}/example_${i} "-name *\.cpp -or -name *\.h"
62.endfor
63
64.include <bsd.port.post.mk>
65