Created
December 13, 2011 05:00
-
-
Save kripken/1470674 to your computer and use it in GitHub Desktop.
patch to get box2d to build for jgw
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| diff --git a/c/Box2D_v2.2.1/CMakeLists.txt b/c/Box2D_v2.2.1/CMakeLists.txt | |
| index a9dc06c..916dffb 100755 | |
| --- a/c/Box2D_v2.2.1/CMakeLists.txt | |
| +++ b/c/Box2D_v2.2.1/CMakeLists.txt | |
| @@ -15,21 +15,10 @@ option(BOX2D_BUILD_STATIC "Build Box2D static libraries" ON) | |
| option(BOX2D_BUILD_EXAMPLES "Build Box2D examples" ON) | |
| set(BOX2D_VERSION 2.1.0) | |
| # The Box2D library. | |
| add_subdirectory(Box2D) | |
| -if(BOX2D_BUILD_EXAMPLES) | |
| - # HelloWorld console example. | |
| - add_subdirectory(HelloWorld) | |
| - | |
| - # Testbed and dependencies. | |
| - find_package(OpenGL REQUIRED) | |
| - add_subdirectory(freeglut) | |
| - add_subdirectory(glui) | |
| - add_subdirectory(Testbed) | |
| -endif(BOX2D_BUILD_EXAMPLES) | |
| - | |
| if(BOX2D_INSTALL_DOC) | |
| install(DIRECTORY Documentation DESTINATION share/doc/Box2D PATTERN ".svn" EXCLUDE) | |
| -endif(BOX2D_INSTALL_DOC) | |
| \ No newline at end of file | |
| +endif(BOX2D_INSTALL_DOC) | |
| diff --git a/c/bench2d.js.mk b/c/bench2d.js.mk | |
| index 0ce0bdc..a5d0fb2 100644 | |
| --- a/c/bench2d.js.mk | |
| +++ b/c/bench2d.js.mk | |
| @@ -1,11 +1,22 @@ | |
| -EMMAKEN=/Users/jgw/src/emscripten/tools/emmaken.py -IBox2D_v2.2.1 | |
| -EMSCRIPTEN=/Users/jgw/src/emscripten/emscripten.py | |
| -LLVM_LINK=/Users/jgw/llvm/bin/llvm-link | |
| -LLVM_OPT=/Users/jgw/llvm/bin/opt | |
| +# | |
| +# Instructions: | |
| +# | |
| +# 1. In the Box2D_v2.2.1 directory, run | |
| +# | |
| +# ~/Dev/emscripten/tools/emconfiguren.py cmake . | |
| +# | |
| +# 2. In this directory, run | |
| +# | |
| +# make -f bench2d.js.mk | |
| +# | |
| + | |
| +EMMAKEN=/home/alon/Dev/emscripten/tools/emmaken.py -IBox2D_v2.2.1 | |
| +EMSCRIPTEN=/home/alon/Dev/emscripten/emscripten.py | |
| +LLVM_LINK=/home/alon/Dev/llvm-emscripten/cbuild/bin/llvm-link | |
| # This set of flags has been chosen by the "cargo cult" method -- I picked them | |
| # mostly from the ammo.js build file, and tweaked them until I got the best | |
| # results. It's entirely possible I've missed something important here. | |
| EMSCRIPTEN_FLAGS = \ | |
| #-s ASSERTIONS=0 \ | |
| #--optimize \ | |
| @@ -22,72 +33,71 @@ EMSCRIPTEN_FLAGS = \ | |
| #-s CHCK_SIGNS=0 \ | |
| #-s CORRECT_SIGNS=0 \ | |
| #-s DISABLE_EXCEPTION_CATCHING=1 \ | |
| #-s RUNTYPE_TYPE_INFO=0 \ | |
| #-s CORRECT_ROUNDINGS=0 \ | |
| #-s MICRO_OPTS=0 | |
| +COMPILES = Bench2d.o | |
| + | |
| OBJECTS = \ | |
| -Bench2d.bc \ | |
| -Box2D_v2.2.1/Box2d/Collision/b2BroadPhase.bc \ | |
| -Box2D_v2.2.1/Box2d/Collision/b2CollideCircle.bc \ | |
| -Box2D_v2.2.1/Box2d/Collision/b2CollideEdge.bc \ | |
| -Box2D_v2.2.1/Box2d/Collision/b2CollidePolygon.bc \ | |
| -Box2D_v2.2.1/Box2d/Collision/b2Collision.bc \ | |
| -Box2D_v2.2.1/Box2d/Collision/b2Distance.bc \ | |
| -Box2D_v2.2.1/Box2d/Collision/b2DynamicTree.bc \ | |
| -Box2D_v2.2.1/Box2d/Collision/b2TimeOfImpact.bc \ | |
| -Box2D_v2.2.1/Box2d/Collision/Shapes/b2ChainShape.bc \ | |
| -Box2D_v2.2.1/Box2d/Collision/Shapes/b2CircleShape.bc \ | |
| -Box2D_v2.2.1/Box2d/Collision/Shapes/b2EdgeShape.bc \ | |
| -Box2D_v2.2.1/Box2d/Collision/Shapes/b2PolygonShape.bc \ | |
| -Box2D_v2.2.1/Box2d/Common/b2BlockAllocator.bc \ | |
| -Box2D_v2.2.1/Box2d/Common/b2Draw.bc \ | |
| -Box2D_v2.2.1/Box2d/Common/b2Math.bc \ | |
| -Box2D_v2.2.1/Box2d/Common/b2Settings.bc \ | |
| -Box2D_v2.2.1/Box2d/Common/b2StackAllocator.bc \ | |
| -Box2D_v2.2.1/Box2d/Common/b2Timer.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/b2Body.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/b2ContactManager.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/b2Fixture.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/b2Island.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/b2World.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/b2WorldCallbacks.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/Contacts/b2ChainAndCircleContact.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/Contacts/b2ChainAndPolygonContact.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/Contacts/b2CircleContact.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/Contacts/b2Contact.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/Contacts/b2ContactSolver.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/Contacts/b2EdgeAndCircleContact.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/Contacts/b2EdgeAndPolygonContact.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/Contacts/b2PolygonAndCircleContact.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/Contacts/b2PolygonContact.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/Joints/b2DistanceJoint.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/Joints/b2FrictionJoint.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/Joints/b2GearJoint.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/Joints/b2Joint.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/Joints/b2MouseJoint.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/Joints/b2PrismaticJoint.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/Joints/b2PulleyJoint.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/Joints/b2RevoluteJoint.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/Joints/b2RopeJoint.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/Joints/b2WeldJoint.bc \ | |
| -Box2D_v2.2.1/Box2d/Dynamics/Joints/b2WheelJoint.bc \ | |
| -Box2D_v2.2.1/Box2d/Rope/b2Rope.bc | |
| +Bench2d.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o \ | |
| +Box2D_v2.2.1/Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o | |
| all: bench2d.js | |
| -%.bc: %.cpp | |
| +%.o: %.cpp | |
| python $(EMMAKEN) $< -o $@ | |
| -bench2d.out.bc: $(OBJECTS) | |
| +bench2d.out.bc: $(COMPILES) | |
| $(LLVM_LINK) -o $@ $(OBJECTS) | |
| -bench2d.opt.bc: bench2d.out.bc | |
| - $(LLVM_OPT) $< -o $@ | |
| - | |
| -bench2d.js: bench2d.opt.bc | |
| +bench2d.js: bench2d.out.bc | |
| $(EMSCRIPTEN) $(EMSCRIPTEN_FLAGS) $< > $@ | |
| clean: | |
| - rm bench2d.js bench2d.out.bc bench2d.opt.bc $(OBJECTS) | |
| + rm bench2d.js bench2d.out.bc $(OBJECTS) | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment