Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 22 Apr 2021 12:09:57 GMT
From:      Dmitry Marakasov <amdmi3@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: 96b5f3c1c98b - main - devel/ode: fix and optionize building demos, other minor improvements
Message-ID:  <202104221209.13MC9vSZ069144@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by amdmi3:

URL: https://cgit.FreeBSD.org/ports/commit/?id=96b5f3c1c98b69a9991d7e00909a7eccd1ff7961

commit 96b5f3c1c98b69a9991d7e00909a7eccd1ff7961
Author:     Dmitry Marakasov <amdmi3@FreeBSD.org>
AuthorDate: 2021-04-08 23:35:52 +0000
Commit:     Dmitry Marakasov <amdmi3@FreeBSD.org>
CommitDate: 2021-04-22 12:08:19 +0000

    devel/ode: fix and optionize building demos, other minor improvements
    
    - Optionize building demos
    - Fix depends (only depend on GL for demos, fix configure dependency
      detection by using USES=localbase and pkgconfig)
    - Fix build of demo code (use older compatible C++ standard and
      patch some bits)
    - Use native OPTIONS feature to make options mutually exclusive
    
    PR:             254898
    Approved by:    acm (maintainer)
---
 devel/ode/Makefile                               | 21 ++++++++++-----------
 devel/ode/files/patch-ode_demo_demo__jointPR.cpp | 11 +++++++++++
 devel/ode/files/patch-ode_demo_demo__jointPU.cpp | 11 +++++++++++
 devel/ode/files/patch-ode_demo_demo__piston.cpp  | 11 +++++++++++
 4 files changed, 43 insertions(+), 11 deletions(-)

diff --git a/devel/ode/Makefile b/devel/ode/Makefile
index d3ddd1ccf2e3..53481dfc5291 100644
--- a/devel/ode/Makefile
+++ b/devel/ode/Makefile
@@ -13,28 +13,27 @@ COMMENT=	Articulated rigid body dynamics library
 LICENSE=	LGPL21 BSD3CLAUSE
 LICENSE_COMB=	dual
 
-USES=		gl tar:bzip2 libtool pathfix
-USE_GL=		yes
+USES=		tar:bzip2 libtool pathfix
 GNU_CONFIGURE=	yes
 CONFIGURE_ARGS=	--enable-shared
 TEST_TARGET=	check
+USE_CXXSTD=	c++03
 
-OPTIONS_DEFINE=		GIMPACT DOUBLE OU
+OPTIONS_DEFINE=		GIMPACT DOUBLE OU DEMOS
 
 GIMPACT_DESC=		Enable gimpact instead of opcode support
 DOUBLE_DESC=		Enable double precision (BROKEN with GIMPACT)
 OU_DESC=		Enable Thread-local storage (Experimental)
+DEMOS_DESC=		Build demos (not installed)
 
+GIMPACT_PREVENTS=	DOUBLE
 GIMPACT_CONFIGURE_ON=	--with-trimesh=gimpact
 GIMPACT_CONFIGURE_OFF=	--with-trimesh=opcode
-DOUBLE_CONFIGURE_ENABLE=	double-precision
-OU_CONFIGURE_ENABLE=		ou
-
-.include <bsd.port.options.mk>
-
-.if ${PORT_OPTIONS:MGIMPACT} && ${PORT_OPTIONS:MDOUBLE}
-IGNORE=		currently double precision is not supported by gimpact
-.endif
+DOUBLE_CONFIGURE_ENABLE=double-precision
+OU_CONFIGURE_ENABLE=	ou
+DEMOS_CONFIGURE_ENABLE=	demos
+DEMOS_USES=		gl localbase pkgconfig
+DEMOS_USE=		GL=gl,glu
 
 post-patch:
 	@${REINPLACE_CMD} -e '/if test/ s|==|=|' -e 's|^\( *CFLAGS=\)|#\1|;' \
diff --git a/devel/ode/files/patch-ode_demo_demo__jointPR.cpp b/devel/ode/files/patch-ode_demo_demo__jointPR.cpp
new file mode 100644
index 000000000000..189a7ef9e500
--- /dev/null
+++ b/devel/ode/files/patch-ode_demo_demo__jointPR.cpp
@@ -0,0 +1,11 @@
+--- ode/demo/demo_jointPR.cpp.orig	2013-08-19 17:48:05 UTC
++++ ode/demo/demo_jointPR.cpp
+@@ -329,7 +329,7 @@ int main (int argc, char **argv)
+             {
+                 int j = i+1;
+                 if ( j+1 > argc      ||  // Check if we have enough arguments
+-                        argv[j] == '\0' ||  // We should have a path here
++                        argv[j][0] == '\0' ||  // We should have a path here
+                         argv[j][0] == '-' ) // We should have a path not a command line
+                     Help(argv);
+                 else
diff --git a/devel/ode/files/patch-ode_demo_demo__jointPU.cpp b/devel/ode/files/patch-ode_demo_demo__jointPU.cpp
new file mode 100644
index 000000000000..588366a601a4
--- /dev/null
+++ b/devel/ode/files/patch-ode_demo_demo__jointPU.cpp
@@ -0,0 +1,11 @@
+--- ode/demo/demo_jointPU.cpp.orig	2013-12-06 21:52:14 UTC
++++ ode/demo/demo_jointPU.cpp
+@@ -579,7 +579,7 @@ int main (int argc, char **argv)
+       if (0 == strcmp ("-t", argv[i]) || 0 == strcmp ("--texture-path", argv[i]) ) {
+         int j = i+1;
+         if ( j+1 > argc      ||  // Check if we have enough arguments
+-             argv[j] == '\0' ||  // We should have a path here
++             argv[j][0] == '\0' ||  // We should have a path here
+              argv[j][0] == '-' ) // We should have a path not a command line
+           Help (argv);
+         else
diff --git a/devel/ode/files/patch-ode_demo_demo__piston.cpp b/devel/ode/files/patch-ode_demo_demo__piston.cpp
new file mode 100644
index 000000000000..3fdbb3327816
--- /dev/null
+++ b/devel/ode/files/patch-ode_demo_demo__piston.cpp
@@ -0,0 +1,11 @@
+--- ode/demo/demo_piston.cpp.orig	2013-08-19 17:48:05 UTC
++++ ode/demo/demo_piston.cpp
+@@ -659,7 +659,7 @@ int main (int argc, char **argv)
+                 {
+                     int j = i+1;
+                     if ( j+1 > argc      ||  // Check if we have enough arguments
+-                            argv[j] == '\0' ||  // We should have a path here
++                            argv[j][0] == '\0' ||  // We should have a path here
+                             argv[j][0] == '-' ) // We should have a path not a command line
+                         Help (argv);
+                     else



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202104221209.13MC9vSZ069144>