aboutsummaryrefslogtreecommitdiffstats
path: root/devel/ode/Makefile
blob: 3be1175fdbd9f2d37234c6a5050486533618e3a5 (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
# New ports collection makefile for:    ode
# Date created:             11 Oct 2003
# Whom:                 David Yeske <dyeske@yahoo.com>
#
# $FreeBSD$
#

PORTNAME=   ode
PORTVERSION=    0.6
PORTREVISION=   1
PORTEPOCH=  1
CATEGORIES= devel
MASTER_SITES=   ${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR= opende
DISTNAME=   ${PORTNAME}-src-${PORTVERSION}

MAINTAINER= acm@FreeBSD.org
COMMENT=    Articulated rigid body dynamics library

CONFLICTS=  ode-devel-[0-9].*

USE_ZIP=    yes
USE_X_PREFIX=   yes
USE_GL=     yes
USE_GMAKE=  yes
GNU_CONFIGURE=  yes

CONFIGURE_TARGET=   --build=${MACHINE_ARCH}-portbld-freebsd${OSREL
CONFIGURE_ENV=  CPPFLAGS="-I${X11BASE}/include" \
        LIBS="-L${X11BASE}/lib"

OPTIONS=    OPCODE  "Enable code required by TriList (trimesh) class" on \
        GYROSCOPIC "Configure ODE to work with gyroscopic term" on \
        DOUBLE  "Enable double precision" off

WRKSRC=     ${WRKDIR}/${PORTNAME}-${PORTVERSION}

.include <bsd.port.pre.mk>

.if defined(WITHOUT_OPCODE)
CONFIGURE_ARGS+=    --disable-opcode
.endif

.if defined(WITHOUT_GYROSCOPIC)
CONFIGURE_ARGS+=    --disable-gyroscopic
.endif

.if defined(WITH_DOUBLE)
CONFIGURE_ARGS+=    --enable-double-precision
.endif

post-patch:
    @${REINPLACE_CMD} -e '/if test/ s|==|=|' -e 's|^\( *CFLAGS=\)|#\1|;' \
        -e 's|^\( *CPPFLAGS=\)|#\1|' -e 's|^\( *CXXFLAGS=\)|#\1|' \
        -e 's|__isnanf||g; s|__isnan||g' -e 's|-lpthread|-pthread|g' \
        ${WRKSRC}/configure
    @${REINPLACE_CMD} -e '/^traplib_PROGRAMS / d' ${WRKSRC}/ode/src/Makefile.in
    @${FIND} ${WRKSRC} -type f -name Makefile.in -print0 | ${XARGS} -0 ${REINPLACE_CMD} \
        -e '/^DEFAULT_INCLUDES/ s|$$| -I$$(top_builddir)/include|' \
        -e '/CFLAGS/ s|-O[12]||'
    @${FIND} ${WRKSRC} -type f -name "*.h" -print0 | ${XARGS} -0 ${REINPLACE_CMD} \
        -i "" -e 's|<malloc.h>|<stdlib.h>|g'

.include <bsd.port.post.mk>