Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

deps-bullet-raub

Package Overview
Dependencies
Maintainers
1
Versions
12
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

deps-bullet-raub

Binaries and headers for Bullet-dependent compilation

  • 2.0.0
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
22
decreased by-33.33%
Maintainers
1
Weekly downloads
 
Created
Source

Bullet binaries

This is a part of Node3D project.

NPM

Build Status CodeFactor

npm i deps-bullet-raub

Synopsis

This dependency package is distributing Bullet Physics binaries through NPM for Node.js addons.

  • Platforms (x64): Windows, Linux, OSX.
  • Library: Bullet physics.
  • Linking: static lib-type.

Usage

If you don't know Bullet Physics, then probably you could learn it better before rushing into the Node.js addons with it. Anyway the official manual is a good place to start. Also there are a lot of examples.

And, the most important, take a look at the existing bullet-raub addon, that exports a very simple API for Node.js.


Example binding.gyp

As in glfw-raub Node.js addon.

{
	'variables': {
		'bin'            : '<!(node -p "require(\'addon-tools-raub\').bin")',
		'bullet_include' : '<!(node -p "require(\'deps-bullet-raub\').include")',
		'bullet_bin'     : '<!(node -p "require(\'deps-bullet-raub\').bin")',
	},
	'targets': [
		{
			'target_name' : 'bullet',
			'sources' : [
				'cpp/bindings.cpp',
				'cpp/body.cpp',
				'cpp/joint.cpp',
				'cpp/scene.cpp',
			],
			'include_dirs' : [
				'<!@(node -p "require(\'addon-tools-raub\').include")',
				'<(bullet_include)',
			],
			'library_dirs' : [ '<(bullet_bin)' ],
			'libraries'    : [ '-lbullet' ],
			'cflags!': ['-fno-exceptions'],
			'cflags_cc!': ['-fno-exceptions'],
			'conditions': [
				
				[
					'OS=="linux"',
					{
						'libraries': [
							"-Wl,-rpath,'$$ORIGIN'",
							"-Wl,-rpath,'$$ORIGIN/../node_modules/deps-bullet-raub/<(bin)'",
							"-Wl,-rpath,'$$ORIGIN/../../deps-bullet-raub/<(bin)'",
						],
						'defines': ['__linux__'],
					}
				],
				
				[
					'OS=="mac"',
					{
						'libraries': [
							'-Wl,-rpath,@loader_path',
							'-Wl,-rpath,@loader_path/../node_modules/deps-bullet-raub/<(bin)',
							'-Wl,-rpath,@loader_path/../../deps-bullet-raub/<(bin)',
						],
						'defines': ['__APPLE__'],
					}
				],
				
				[
					'OS=="win"',
					{
						'defines' : [
							'WIN32_LEAN_AND_MEAN',
							'VC_EXTRALEAN',
							'_WIN32',
						],
						'msvs_settings' : {
							'VCCLCompilerTool' : {
								'AdditionalOptions' : [
									'/GL', '/GF', '/EHsc', '/GS', '/Gy', '/GR-',
								]
							},
							'VCLinkerTool' : {
								'AdditionalOptions' : ['/RELEASE','/OPT:REF','/OPT:ICF','/LTCG'],
							},
						},
					},
				],
				
			],
		},
	]
}

addon.cpp

#include <...>

This software uses the Bullet physics open source library. Bullet is legally used under the ZLIB license. It is explicitly stated that Bullet can be used commercially in closed-source projects. Bullet licensing information (a COPY) is given in a separate file, which also can be found on Bullet's official repository.

Binaries for all current platforms are built through MAKE system with Travis CI matrix. See Travis config for details. Brute-force extracted Bullet sources are inside cpp folder. As the layout of Bullet's source tree and the way it is compiled were changed, the whole new codebase is published here to both comply with ZLIB requirements and provide means for further expansion of this set of precompiled binaries to different platforms.

Only Bullet-2 part is compiled, Bullet-3 and CL are excluded, for now. No changes to the original content of any Bullet source file were made. No claims are made that any physics algorithms are changed/invented within this repository.

Keywords

FAQs

Package last updated on 27 Nov 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc