diff --git a/devel/ode/Makefile b/devel/ode/Makefile index d3ddd1ccf2e3..46d7aec22ba5 100644 --- a/devel/ode/Makefile +++ b/devel/ode/Makefile @@ -1,11 +1,10 @@ # Created by: David Yeske PORTNAME= ode -PORTVERSION= 0.13 -PORTREVISION= 4 +DISTVERSION= 0.16.2 PORTEPOCH= 1 CATEGORIES= devel -MASTER_SITES= SF/opende/ODE/${PORTVERSION} +MASTER_SITES= https://bitbucket.org/odedevs/ode/downloads/ MAINTAINER= acm@FreeBSD.org COMMENT= Articulated rigid body dynamics library @@ -13,11 +12,10 @@ COMMENT= Articulated rigid body dynamics library LICENSE= LGPL21 BSD3CLAUSE LICENSE_COMB= dual -USES= gl tar:bzip2 libtool pathfix -USE_GL= yes -GNU_CONFIGURE= yes -CONFIGURE_ARGS= --enable-shared -TEST_TARGET= check +USES= cmake:insource # https://bitbucket.org/odedevs/ode/issues/73/0162-fails-with-out-of-source-build + +CMAKE_ON= ODE_WITH_LIBCCD # ODE_WITH_LIBCCD_SYSTEM fails: https://bitbucket.org/odedevs/ode/issues/75/0162-fails-when-both-ode_with_libccd +CMAKE_OFF= ODE_WITH_DEMOS ODE_WITH_TESTS OPTIONS_DEFINE= GIMPACT DOUBLE OU @@ -25,10 +23,9 @@ GIMPACT_DESC= Enable gimpact instead of opcode support DOUBLE_DESC= Enable double precision (BROKEN with GIMPACT) OU_DESC= Enable Thread-local storage (Experimental) -GIMPACT_CONFIGURE_ON= --with-trimesh=gimpact -GIMPACT_CONFIGURE_OFF= --with-trimesh=opcode -DOUBLE_CONFIGURE_ENABLE= double-precision -OU_CONFIGURE_ENABLE= ou +GIMPACT_CMAKE_BOOL= ODE_WITH_GIMPACT +DOUBLE_CMAKE_BOOL= ODE_DOUBLE_PRECISION +OU_CMAKE_BOOL= ODE_WITH_OU .include @@ -36,19 +33,10 @@ OU_CONFIGURE_ENABLE= ou IGNORE= currently double precision is not supported by gimpact .endif -post-patch: - @${REINPLACE_CMD} -e '/if test/ s|==|=|' -e 's|^\( *CFLAGS=\)|#\1|;' \ - -e 's|^\( *CPPFLAGS=\)|#\1|' -e 's|^\( *CXXFLAGS=\)|#\1|' \ - -e 's|CPPFLAGS+=" |CPPFLAGS="$$CPPFLAGS |' \ - ${WRKSRC}/configure - @${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]||' - @${REINPLACE_CMD} 's|||g' \ - ${WRKSRC}/build/config-default.h ${WRKSRC}/ou/src/ou/malloc.cpp - -post-install: - ${SED} -e '/PACKAGE/ s|^|//|; /VERSION/ s|^|//|' ${WRKSRC}/ode/src/config.h \ - > ${STAGEDIR}${PREFIX}/include/ode/config.h +do-test: # tests fail to build: https://bitbucket.org/odedevs/ode/issues/76/tests-fail-to-build-cannot-open-output + @cd ${BUILD_WRKSRC} && \ + ${SETENV} ${CONFIGURE_ENV} ${CMAKE_BIN} ${CMAKE_ARGS} -DODE_WITH_TESTS:BOOL=ON ${CMAKE_SOURCE_PATH} && \ + ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} ${ALL_TARGET} && \ + ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} test .include diff --git a/devel/ode/distinfo b/devel/ode/distinfo index 4679824956d8..1565b01342df 100644 --- a/devel/ode/distinfo +++ b/devel/ode/distinfo @@ -1,2 +1,3 @@ -SHA256 (ode-0.13.tar.bz2) = 34ce3e236e313bf109a0cb5546d2fca462aed99f29a42e62bc1463b803c31ef9 -SIZE (ode-0.13.tar.bz2) = 2008288 +TIMESTAMP = 1618563350 +SHA256 (ode-0.16.2.tar.gz) = b26aebdcb015e2d89720ef48e0cb2e8a3ca77915f89d853893e7cc861f810f22 +SIZE (ode-0.16.2.tar.gz) = 2627992 diff --git a/devel/ode/pkg-descr b/devel/ode/pkg-descr index 3c0bfc1fc169..7518dd965c05 100644 --- a/devel/ode/pkg-descr +++ b/devel/ode/pkg-descr @@ -4,4 +4,4 @@ and moving objects in VR environments. It is fast, flexible, robust and platform independent, with advanced joints, contact with friction, and built-in collision detection. -WWW: http://www.ode.org/ +WWW: https://www.ode.org/ diff --git a/devel/ode/pkg-plist b/devel/ode/pkg-plist index 6956b591ec05..ec840b633c84 100644 --- a/devel/ode/pkg-plist +++ b/devel/ode/pkg-plist @@ -4,12 +4,13 @@ include/ode/collision_space.h include/ode/collision_trimesh.h include/ode/common.h include/ode/compatibility.h -include/ode/config.h include/ode/contact.h +include/ode/cooperative.h include/ode/error.h include/ode/export-dif.h include/ode/mass.h include/ode/matrix.h +include/ode/matrix_coop.h include/ode/memory.h include/ode/misc.h include/ode/objects.h @@ -25,8 +26,11 @@ include/ode/rotation.h include/ode/threading.h include/ode/threading_impl.h include/ode/timer.h -lib/libode.a +include/ode/version.h +lib/cmake/ode-0.16.2/ode-config-version.cmake +lib/cmake/ode-0.16.2/ode-config.cmake +lib/cmake/ode-0.16.2/ode-export-%%CMAKE_BUILD_TYPE%%.cmake +lib/cmake/ode-0.16.2/ode-export.cmake lib/libode.so -lib/libode.so.3 -lib/libode.so.3.1.0 +lib/libode.so.0.16.2 libdata/pkgconfig/ode.pc diff --git a/devel/ode/files/patch-config.h.cmake.in b/devel/ode/files/patch-config.h.cmake.in new file mode 100644 index 000000000000..4e1350843a8e --- /dev/null +++ b/devel/ode/files/patch-config.h.cmake.in @@ -0,0 +1,11 @@ +--- config.h.cmake.in.orig 2021-04-16 09:01:20 UTC ++++ config.h.cmake.in +@@ -67,7 +67,7 @@ + #define ODE_PLATFORM_PS3 + #elif defined(_MSC_VER) || defined(__CYGWIN32__) || defined(__MINGW32__) + #define ODE_PLATFORM_WINDOWS +-#elif defined(__linux__) ++#elif defined(__linux__) || defined(__FreeBSD__) + #define ODE_PLATFORM_LINUX + #elif defined(__APPLE__) && defined(__MACH__) + #define ODE_PLATFORM_OSX