pkgsrc-WIP-changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
box2d: add upgrade candidate
Module Name: pkgsrc-wip
Committed By: Thomas Klausner <wiz%NetBSD.org@localhost>
Pushed By: wiz
Date: Tue Oct 27 16:27:58 2026 +0100
Changeset: a7e57195ba60415346013a5bcbfd422b7c3c5486
Modified Files:
Makefile
Added Files:
box2d/DESCR
box2d/Makefile
box2d/PLIST
box2d/buildlink3.mk
box2d/distinfo
box2d/log
Log Message:
box2d: add upgrade candidate
breaks libreoffice
To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=a7e57195ba60415346013a5bcbfd422b7c3c5486
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
diffstat:
Makefile | 1 +
box2d/DESCR | 24 ++++++++++++++++++++++++
box2d/Makefile | 27 +++++++++++++++++++++++++++
box2d/PLIST | 17 +++++++++++++++++
box2d/buildlink3.mk | 12 ++++++++++++
box2d/distinfo | 5 +++++
box2d/log | 44 ++++++++++++++++++++++++++++++++++++++++++++
7 files changed, 130 insertions(+)
diffs:
diff --git a/Makefile b/Makefile
index 2a649e4b6d..28b8f45da7 100644
--- a/Makefile
+++ b/Makefile
@@ -379,6 +379,7 @@ SUBDIR+= boron
SUBDIR+= botan3-git
SUBDIR+= bottom
SUBDIR+= bowtie2
+SUBDIR+= box2d
SUBDIR+= bpcscripts
SUBDIR+= brain-mesh-builder
SUBDIR+= breakpad
diff --git a/box2d/DESCR b/box2d/DESCR
new file mode 100644
index 0000000000..7ef0903e1f
--- /dev/null
+++ b/box2d/DESCR
@@ -0,0 +1,24 @@
+Box2D is a 2D physics engine for games. It features:
+
+Collision
+ Continuous collision detection
+ Contact callbacks: begin, end, pre-solve, post-solve
+ Convex polygons and circles
+ Multiple shapes per body
+ One-shot contact manifolds
+ Dynamic tree broadphase
+ Efficient pair management
+ Fast broadphase AABB queries
+ Collision groups and categories
+
+Physics
+ Continuous physics with time of impact solver
+ Persistent body-joint-contact graph
+ Island solution and sleep management
+ Contact, friction, and restitution
+ Stable stacking with a linear-time solver
+ Revolute, prismatic, distance, pulley, gear, mouse joint,
+ and other joint types
+ Joint limits, motors, and friction
+ Momentum decoupled position correction
+ Fairly accurate reaction forces/impulses
diff --git a/box2d/Makefile b/box2d/Makefile
new file mode 100644
index 0000000000..39c472d09a
--- /dev/null
+++ b/box2d/Makefile
@@ -0,0 +1,27 @@
+# $NetBSD: Makefile,v 1.6 2026/09/22 07:55:31 ryoon Exp $
+
+DISTNAME= box2d-3.2.0
+CATEGORIES= graphics
+MASTER_SITES= ${MASTER_SITE_GITHUB:=erincatto/}
+GITHUB_TAG= v${PKGVERSION_NOREV}
+
+MAINTAINER= ryoon%NetBSD.org@localhost
+HOMEPAGE= https://github.com/erincatto/box2d/
+COMMENT= 2D physics engine for games
+LICENSE= mit
+
+USE_LANGUAGES= c c++
+
+CMAKE_CONFIGURE_ARGS+= -DBOX2D_BUILD_UNIT_TESTS=OFF
+CMAKE_CONFIGURE_ARGS+= -DBOX2D_SAMPLES=OFF
+CMAKE_CONFIGURE_ARGS+= -DBUILD_SHARED_LIBS=ON
+
+PKGCONFIG_OVERRIDE+= src/box2d.pc.in
+
+.include "../../devel/cmake/build.mk"
+.include "../../x11/libX11/buildlink3.mk"
+.include "../../x11/libXcursor/buildlink3.mk"
+.include "../../x11/libXi/buildlink3.mk"
+.include "../../x11/libXinerama/buildlink3.mk"
+.include "../../x11/libXrandr/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/box2d/PLIST b/box2d/PLIST
new file mode 100644
index 0000000000..4e4334409b
--- /dev/null
+++ b/box2d/PLIST
@@ -0,0 +1,17 @@
+@comment $NetBSD$
+include/box2d/base.h
+include/box2d/box2d.h
+include/box2d/collision.h
+include/box2d/config.h
+include/box2d/constants.h
+include/box2d/id.h
+include/box2d/math_functions.h
+include/box2d/math_types.h
+include/box2d/types.h
+lib/cmake/box2d/box2dConfig-noconfig.cmake
+lib/cmake/box2d/box2dConfig.cmake
+lib/cmake/box2d/box2dConfigVersion.cmake
+lib/libbox2d.so
+lib/libbox2d.so.3
+lib/libbox2d.so.${PKGVERSION}
+lib/pkgconfig/box2d.pc
diff --git a/box2d/buildlink3.mk b/box2d/buildlink3.mk
new file mode 100644
index 0000000000..d4043cdb4e
--- /dev/null
+++ b/box2d/buildlink3.mk
@@ -0,0 +1,12 @@
+# $NetBSD: buildlink3.mk,v 1.2 2026/09/22 07:55:31 ryoon Exp $
+
+BUILDLINK_TREE+= box2d
+
+.if !defined(BOX2D_BUILDLINK3_MK)
+BOX2D_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.box2d+= box2d>=3.1.1
+BUILDLINK_PKGSRCDIR.box2d?= ../../graphics/box2d
+.endif # BOX2D_BUILDLINK3_MK
+
+BUILDLINK_TREE+= -box2d
diff --git a/box2d/distinfo b/box2d/distinfo
new file mode 100644
index 0000000000..6854b2c700
--- /dev/null
+++ b/box2d/distinfo
@@ -0,0 +1,5 @@
+$NetBSD: distinfo,v 1.5 2026/09/22 07:55:31 ryoon Exp $
+
+BLAKE2s (box2d-3.2.0.tar.gz) = 46e75e7b9f8ee398f38ad63e49c4a3b81bbc1b5679a29594aa0059d0bc34a345
+SHA512 (box2d-3.2.0.tar.gz) = 874bde300e7e33e950152f1d86cb4e2989cd7e30b2d89ac29d9596d9251b514972285eaba19b2d2941870f6d0e446265bf22e4d2a6df287f2c9807e0a82c8ed1
+Size (box2d-3.2.0.tar.gz) = 1471322 bytes
diff --git a/box2d/log b/box2d/log
new file mode 100644
index 0000000000..db28392eb6
--- /dev/null
+++ b/box2d/log
@@ -0,0 +1,44 @@
+API changes
+
+ Joint definitions share a common b2JointDef base and use local frames instead of anchors, axes and reference angles.
+ Mouse joint removed, the motor joint now has spring and velocity targets.
+ Motion locks replace fixed rotation.
+ Chain shapes are segment based.
+ Contact ids (b2ContactId) in contact events, with b2Contact_GetData.
+ Pre-solve callback redesigned, plus a separate continuous pre-solve callback.
+ Native task system. Box2D runs its own threads when no task callbacks are hooked up.
+
+New features
+
+ Large worlds with optional double precision (BOX2D_DOUBLE_PRECISION).
+ Recording and replay, plus world snapshots (experimental).
+ Contact recycling for better stability and performance.
+ Dynamic character mover with new mover and pogo joints (experimental).
+ Joint events for breakable joints (force and torque thresholds).
+ Tunable continuous collision per body (safety factor).
+ Restitution iterations and propagation.
+ Wind and drag on shapes.
+ Distance joint spring force limits.
+ Loose chain segments.
+ Continuous sensor events. Fast shapes are swept against static sensors, and bullets against all non-bullet sensors.
+ Runtime AVX2 dispatch with SSE2 fallback.
+
+Improvements
+
+ Many optimizations.
+ Faster broad-phase and ray casts. Much less single threaded work.
+ Faster island merging and splitting.
+ Kinematic bodies are cheaper. Graph coloring treats them like static bodies.
+ More stable prismatic joint under stress.
+ More accurate rotational inertia for shapes far from the body origin.
+ Invalid input is now rejected and logged in release builds.
+ Various SIMD optimizations.
+
+Infrastructure
+
+ pkg-config support.
+ Swift and Zig builds in CI.
+ MinGW, clang-cl and Windows ARM64 builds.
+ JSON descriptions of the public API in api/ for binding generators, one per precision.
+ CMake presets.
+ Revised samples UI and many new samples.
Home |
Main Index |
Thread Index |
Old Index