node-deps-opengl-raub

0.3.6 • Public • Published

node-deps-opengl

  • Platforms: win x32/x64, linux x32/x64, mac x64.
  • Libraries: GLEW, GLFW, OpenGL.
  • Linking: static dll-type.

Install

npm i -s node-deps-opengl-raub


Legal notice

GLFW

This software uses the GLFW open source library. GLFW is legally used under the ZLIB license. It is explicitly stated that GLFW can be used commercially in closed-source projects. GLFW licensing information (a COPY) is given in a separate file, which also can be found on GLFW's official repository. Windows binaries were found on the official web-site. Unix binaries are found through Debian Packages and MacOS Formulae.

GLEW

Also this software uses the GLEW open source library. GLEW is legally used under it's own custom license. It is explicitly stated that GLEW can be used commercially in closed-source projects. GLEW licensing information (a COPY) is given in a separate file, which also can be found on GLEW's official repository. Windows binaries were found on the official web-site. Unix binaries are found through Debian Packages and MacOS Formulae.

OpenGL

End users, independent software vendors, and others writing code based on the OpenGL API are free from licensing requirements. https://www.opengl.org/about/#11


The rest of this package is MIT licensed.


Usage

binding.gyp

    'variables': {
        'opengl_include' : '<!(node -e "console.log(require(\'node-deps-opengl-raub\').include)")',
        'opengl_bin'     : '<!(node -e "console.log(require(\'node-deps-opengl-raub\').bin)")',
    },
    ...
    'targets': [
        {
            'target_name': '...',
            
            'include_dirs': [
                '<(opengl_include)',
                ...
            ],
            
            'library_dirs': [ '<(opengl_bin)' ],
            
            'conditions': [
                
                ['OS=="linux"', {
                    'libraries': [
                        '-Wl,-rpath,<(opengl_bin)',
                        '<(opengl_bin)/libglfw.so.3',
                        '<(opengl_bin)/libGLEW.so.2.0',
                        '<(opengl_bin)/libGL.so',
                        '<(opengl_bin)/libXrandr.so',
                    ],
                }],
                
                ['OS=="mac"', {
                    'libraries': [
                        '-Wl,-rpath,<(opengl_bin)',
                        '<(opengl_bin)/glfw.dylib',
                        '<(opengl_bin)/glew.dylib'
                    ],
                }],
                
                ['OS=="win"', {
                    'libraries': [ 'OpenGL32.lib', 'glfw3dll.lib', 'glew32.lib' ],
                }],
                
            ],
        },

addon.cpp

#include <GL/glew.h>
 
#define GLFW_NO_GLU
#define GLFW_DLL
#include <GLFW/glfw3.h>
 
 
// Platform specific windows and contexts if needed 
 
#ifdef _WIN32
    #define GLFW_EXPOSE_NATIVE_WIN32
    #define GLFW_EXPOSE_NATIVE_WGL
#elif __APPLE__
    #define GLFW_EXPOSE_NATIVE_COCOA
    #define GLFW_EXPOSE_NATIVE_NSGL
#elif __linux__
    #define GLFW_EXPOSE_NATIVE_X11
    #define GLFW_EXPOSE_NATIVE_GLX
#endif
#include <GLFW/glfw3native.h>
 
 
// Fix bad defines for unix compilation 
 
#undef True
#undef False

Package Sidebar

Install

npm i node-deps-opengl-raub

Weekly Downloads

2

Version

0.3.6

License

MIT

Last publish

Collaborators

  • raub-deprecated