@@ -11,33 +11,33 @@ comptime {
1111}
1212
1313fn compileBox2d (b : * std.Build , target : std.Build.ResolvedTarget , optimize : std.builtin.OptimizeMode , options : Options ) ! * std.Build.Step.Compile {
14- var box2d_flags_arr = std .ArrayList ([]const u8 ).init ( b . allocator ) ;
15- defer box2d_flags_arr .deinit ();
14+ var box2d_flags_arr = std .ArrayList ([]const u8 ).empty ;
15+ defer box2d_flags_arr .deinit (b . allocator );
1616
17- try box2d_flags_arr .appendSlice (&[_ ][]const u8 {
17+ try box2d_flags_arr .appendSlice (b . allocator , &[_ ][]const u8 {
1818 "-std=gnu99" ,
1919 "-D_GNU_SOURCE" ,
2020 });
2121
2222 if (options .shared ) {
23- try box2d_flags_arr .appendSlice (&[_ ][]const u8 {
23+ try box2d_flags_arr .appendSlice (b . allocator , &[_ ][]const u8 {
2424 "-fPIC" ,
2525 "-DBUILD_LIBTYPE_SHARED" ,
2626 });
2727 }
2828
29- const box2d = if ( options . shared )
30- b . addSharedLibrary (.{
31- . name = "box2d" ,
32- . target = target ,
33- . optimize = optimize ,
34- })
35- else
36- b . addStaticLibrary (.{
37- .name = "box2d" ,
38- . target = target ,
39- . optimize = optimize ,
40- });
29+ const module = b . addModule ( "box2d" , .{
30+ . target = target ,
31+ . optimize = optimize ,
32+ });
33+
34+ const linkage : std.builtin.LinkMode = if ( options . shared ) .dynamic else .static ;
35+ const box2d = b . addLibrary (.{
36+ . root_module = module ,
37+ .name = "box2d" ,
38+ . linkage = linkage ,
39+ });
40+
4141 box2d .linkLibC ();
4242
4343 const c_source_files = &[_ ][]const u8 {
@@ -52,8 +52,10 @@ fn compileBox2d(b: *std.Build, target: std.Build.ResolvedTarget, optimize: std.b
5252 "src/bitset.h" ,
5353 "src/body.c" ,
5454 "src/body.h" ,
55+ "src/box2d.natvis" ,
5556 "src/broad_phase.c" ,
5657 "src/broad_phase.h" ,
58+ "src/CMakeLists.txt" ,
5759 "src/constants.h" ,
5860 "src/constraint_graph.c" ,
5961 "src/constraint_graph.h" ,
@@ -78,8 +80,9 @@ fn compileBox2d(b: *std.Build, target: std.Build.ResolvedTarget, optimize: std.b
7880 "src/manifold.c" ,
7981 "src/math_functions.c" ,
8082 "src/motor_joint.c" ,
81- "src/mouse_joint.c" ,
8283 "src/mover.c" ,
84+ "src/physics_world.c" ,
85+ "src/physics_world.h" ,
8386 "src/prismatic_joint.c" ,
8487 "src/revolute_joint.c" ,
8588 "src/sensor.c" ,
@@ -96,8 +99,6 @@ fn compileBox2d(b: *std.Build, target: std.Build.ResolvedTarget, optimize: std.b
9699 "src/types.c" ,
97100 "src/weld_joint.c" ,
98101 "src/wheel_joint.c" ,
99- "src/world.c" ,
100- "src/world.h" ,
101102 };
102103
103104 box2d .addIncludePath (b .path ("include" ));
0 commit comments