diff options
author | kintel <kintel@b57f626f-c46c-0410-a088-ec61d464b74c> | 2010-02-09 09:52:42 (GMT) |
---|---|---|
committer | kintel <kintel@b57f626f-c46c-0410-a088-ec61d464b74c> | 2010-02-09 09:52:42 (GMT) |
commit | 12fc6985d5635d20a084800b73cd24d868b6f32d (patch) | |
tree | 39ead355d9945ee0dd3c8b3dd198b3fbadfd0a77 /patches | |
parent | af053719144dbe4e8e310f2515a3f662305cba8b (diff) |
OpenCSG -> 1.3.0
git-svn-id: http://svn.clifford.at/openscad/trunk@418 b57f626f-c46c-0410-a088-ec61d464b74c
Diffstat (limited to 'patches')
-rw-r--r-- | patches/OpenCSG-1.3.0-MacOSX-port.patch | 285 |
1 files changed, 285 insertions, 0 deletions
diff --git a/patches/OpenCSG-1.3.0-MacOSX-port.patch b/patches/OpenCSG-1.3.0-MacOSX-port.patch new file mode 100644 index 0000000..ab31899 --- /dev/null +++ b/patches/OpenCSG-1.3.0-MacOSX-port.patch @@ -0,0 +1,285 @@ +diff -ru OpenCSG-1.3.0/RenderTexture/RenderTexture.h OpenCSG-1.3.0-mac/RenderTexture/RenderTexture.h +--- OpenCSG-1.3.0/RenderTexture/RenderTexture.h 2010-02-06 21:35:10.000000000 +0100 ++++ OpenCSG-1.3.0-mac/RenderTexture/RenderTexture.h 2010-02-09 10:49:30.000000000 +0100 +@@ -294,8 +294,8 @@ + bool _BindDepthBuffer( ) const; + + protected: // data +- int _iWidth; // width of the pbuffer +- int _iHeight; // height of the pbuffer ++ GLint _iWidth; // width of the pbuffer ++ GLint _iHeight; // height of the pbuffer + + bool _bIsTexture; + bool _bIsDepthTexture; +@@ -342,8 +342,8 @@ + + // Texture stuff + GLenum _iTextureTarget; +- unsigned int _iTextureID; +- unsigned int _iDepthTextureID; ++ GLuint _iTextureID; ++ GLuint _iDepthTextureID; + + unsigned short* _pPoorDepthTexture; // [Redge] + +diff -ru OpenCSG-1.3.0/example/example.pro OpenCSG-1.3.0-mac/example/example.pro +--- OpenCSG-1.3.0/example/example.pro 2010-02-06 21:35:10.000000000 +0100 ++++ OpenCSG-1.3.0-mac/example/example.pro 2010-02-09 10:49:30.000000000 +0100 +@@ -2,9 +2,16 @@ + TARGET = opencsgexample + + CONFIG += opengl warn_on release +-INCLUDEPATH += ../glew/include ../include +- +-LIBS += -L../lib -lopencsg -lglut -L../glew/lib -lGLEW ++INCLUDEPATH += ../include ++LIBS += -L../lib -lopencsg -lGLEW ++macx { ++ INCLUDEPATH += /opt/local/include ++ LIBS += -framework GLUT -L/opt/local/lib ++} ++else { ++ INCLUDEPATH += ../glew/include ++ LIBS += -lglut -L../glew/lib ++} + + HEADERS = displaylistPrimitive.h + SOURCES = displaylistPrimitive.cpp main.cpp +diff -ru OpenCSG-1.3.0/example/main.cpp OpenCSG-1.3.0-mac/example/main.cpp +--- OpenCSG-1.3.0/example/main.cpp 2010-02-06 21:35:10.000000000 +0100 ++++ OpenCSG-1.3.0-mac/example/main.cpp 2010-02-09 10:49:30.000000000 +0100 +@@ -22,7 +22,11 @@ + // + + #include <GL/glew.h> ++#ifdef __APPLE__ ++#include <GLUT/glut.h> ++#else + #include <GL/glut.h> ++#endif + #include <opencsg.h> + #include "displaylistPrimitive.h" + #include <iostream> +diff -ru OpenCSG-1.3.0/opencsg.pro OpenCSG-1.3.0-mac/opencsg.pro +--- OpenCSG-1.3.0/opencsg.pro 2010-02-06 21:35:10.000000000 +0100 ++++ OpenCSG-1.3.0-mac/opencsg.pro 2010-02-09 10:49:30.000000000 +0100 +@@ -1,2 +1,4 @@ + TEMPLATE = subdirs + SUBDIRS = src example ++# On Mac we get glew from MacPorts ++!macx:SUBDIRS += glew +diff -ru OpenCSG-1.3.0/src/channelManager.cpp OpenCSG-1.3.0-mac/src/channelManager.cpp +--- OpenCSG-1.3.0/src/channelManager.cpp 2010-02-06 21:35:10.000000000 +0100 ++++ OpenCSG-1.3.0-mac/src/channelManager.cpp 2010-02-09 10:49:30.000000000 +0100 +@@ -23,7 +23,7 @@ + #include <GL/glew.h> + #ifdef _WIN32 + #include <GL/wglew.h> +-#else ++#elif !defined(__APPLE__) + #include <GL/glxew.h> + #endif + +@@ -170,9 +170,11 @@ + #ifdef WIN32 + && WGLEW_ARB_pbuffer + && WGLEW_ARB_pixel_format +-#else ++#elif !defined(__APPLE__) + && GLXEW_SGIX_pbuffer + && GLXEW_SGIX_fbconfig ++#else ++ && false + #endif + ) { + newOffscreenType = OpenCSG::PBuffer; +diff -ru OpenCSG-1.3.0/src/frameBufferObject.h OpenCSG-1.3.0-mac/src/frameBufferObject.h +--- OpenCSG-1.3.0/src/frameBufferObject.h 2010-02-06 21:35:10.000000000 +0100 ++++ OpenCSG-1.3.0-mac/src/frameBufferObject.h 2010-02-09 10:49:30.000000000 +0100 +@@ -79,10 +79,10 @@ + + /// Texture stuff + GLenum textureTarget; +- unsigned int textureID; +- unsigned int depthID; ++ GLuint textureID; ++ GLuint depthID; + +- unsigned int framebufferID; ++ GLuint framebufferID; + + bool initialized; + }; +Only in OpenCSG-1.3.0-mac/src: frameBufferObject.h.orig +diff -ru OpenCSG-1.3.0/src/occlusionQuery.cpp OpenCSG-1.3.0-mac/src/occlusionQuery.cpp +--- OpenCSG-1.3.0/src/occlusionQuery.cpp 2010-02-06 21:35:10.000000000 +0100 ++++ OpenCSG-1.3.0-mac/src/occlusionQuery.cpp 2010-02-09 10:49:30.000000000 +0100 +@@ -57,7 +57,7 @@ + } + + unsigned int OcclusionQueryARB::getQueryResult() { +- unsigned int fragmentCount; ++ GLuint fragmentCount; + glGetQueryObjectuivARB(mQueryObject, GL_QUERY_RESULT_ARB, &fragmentCount); + return fragmentCount; + } +@@ -94,7 +94,7 @@ + } + + unsigned int OcclusionQueryNV::getQueryResult() { +- unsigned int fragmentCount; ++ GLuint fragmentCount; + glGetOcclusionQueryuivNV(mQueryObject, GL_PIXEL_COUNT_NV, &fragmentCount); + return fragmentCount; + } +diff -ru OpenCSG-1.3.0/src/openglHelper.cpp OpenCSG-1.3.0-mac/src/openglHelper.cpp +--- OpenCSG-1.3.0/src/openglHelper.cpp 2010-02-06 21:35:10.000000000 +0100 ++++ OpenCSG-1.3.0-mac/src/openglHelper.cpp 2010-02-09 10:49:30.000000000 +0100 +@@ -29,13 +29,13 @@ + + GLfloat projection[16]; + GLfloat modelview[16]; +- int canvasPos[4]; ++ GLint canvasPos[4]; + +- int stencilBits = 0; ++ GLint stencilBits = 0; + int stencilMax = 0; + int stencilMask = 0; + +- int scissorPos[4]; ++ GLint scissorPos[4]; + + void scissor(const PCArea& area) { + const int dx = area.maxx - area.minx; +diff -ru OpenCSG-1.3.0/src/openglHelper.h OpenCSG-1.3.0-mac/src/openglHelper.h +--- OpenCSG-1.3.0/src/openglHelper.h 2010-02-06 21:35:10.000000000 +0100 ++++ OpenCSG-1.3.0-mac/src/openglHelper.h 2010-02-09 10:49:30.000000000 +0100 +@@ -36,17 +36,17 @@ + // copy of the projection matrix during CSG computation + extern GLfloat modelview[16]; + // copy of the modelview matrix during CSG computation +- extern int canvasPos[4]; ++ extern GLint canvasPos[4]; + // copy of the viewport size during CSG computation + +- extern int stencilBits; ++ extern GLint stencilBits; + // number of stencil bits in the pbuffer + extern int stencilMax; + // the number where the stencil value would "wrap around" to zero + extern int stencilMask; + // stencilMax - 1 + +- extern int scissorPos[4]; ++ extern GLint scissorPos[4]; + // copy of the scissor settings for CSG computation + + void scissor(const PCArea& area); +diff -ru OpenCSG-1.3.0/src/pBufferTexture.h OpenCSG-1.3.0-mac/src/pBufferTexture.h +--- OpenCSG-1.3.0/src/pBufferTexture.h 2010-02-06 21:35:10.000000000 +0100 ++++ OpenCSG-1.3.0-mac/src/pBufferTexture.h 2010-02-09 10:49:30.000000000 +0100 +@@ -22,7 +22,7 @@ + + #ifndef __OpenCSG__pbuffer_texture_h__ + #define __OpenCSG__pbuffer_texture_h__ +- ++#ifndef __APPLE__ + #include "opencsgConfig.h" + #include "offscreenBuffer.h" + +@@ -84,5 +84,27 @@ + } // namespace OpenGL + + } // namespace OpenCSG ++#else ++ ++namespace OpenCSG { ++ namespace OpenGL { ++ class PBufferTexture : public OffscreenBuffer { ++ virtual bool Initialize(int , int , bool , bool ) {return false;} ++ virtual bool IsInitialized() const {return false;} ++ virtual bool Reset() {return false;} ++ virtual bool Resize(int, int) {return false;} ++ virtual bool BeginCapture() {return false;} ++ virtual bool EndCapture() {return false;} ++ virtual void Bind() const {} ++ virtual void EnableTextureTarget() const {} ++ virtual void DisableTextureTarget() const {} ++ virtual unsigned int GetTextureTarget() const {return 0;} ++ virtual int GetWidth() const {return 0;} ++ virtual int GetHeight() const {return 0;} ++ virtual bool haveSeparateContext() const {return false;} ++ }; ++ } ++} + ++#endif // __APPLE__ + #endif // __OpenCSG__frame_buffer_object_h__ +Only in OpenCSG-1.3.0-mac/src: pBufferTexture.h.orig +diff -ru OpenCSG-1.3.0/src/src.pro OpenCSG-1.3.0-mac/src/src.pro +--- OpenCSG-1.3.0/src/src.pro 2010-02-06 21:35:10.000000000 +0100 ++++ OpenCSG-1.3.0-mac/src/src.pro 2010-02-09 10:49:30.000000000 +0100 +@@ -1,10 +1,19 @@ + TEMPLATE = lib + TARGET = opencsg + VERSION = 1.3.0 +-DESTDIR = ../lib ++DESTDIR = $$(PWD)/lib + + CONFIG += opengl warn_on release +-INCLUDEPATH += ../include ../glew/include ../ ++INCLUDEPATH += ../include ../ ++ ++macx { ++ INCLUDEPATH += /opt/local/include ++ LIBS += -L/opt/local/lib -lglew ++ CONFIG += absolute_library_soname ++} ++else { ++INCLUDEPATH += ../glew/include ++} + + HEADERS = ../include/opencsg.h \ + opencsgConfig.h \ +@@ -18,12 +27,11 @@ + offscreenBuffer.h \ + opencsgRender.h \ + openglHelper.h \ +- pBufferTexture.h \ + primitiveHelper.h \ + scissorMemo.h \ + settings.h \ +- stencilManager.h \ +- ../RenderTexture/RenderTexture.h ++ stencilManager.h ++ + SOURCES = area.cpp \ + batch.cpp \ + context.cpp \ +@@ -34,12 +42,21 @@ + offscreenBuffer.cpp \ + opencsgRender.cpp \ + openglHelper.cpp \ +- pBufferTexture.cpp \ + primitive.cpp \ + primitiveHelper.cpp \ + renderGoldfeather.cpp \ + renderSCS.cpp \ + scissorMemo.cpp \ + settings.cpp \ +- stencilManager.cpp \ +- ../RenderTexture/RenderTexture.cpp ++ stencilManager.cpp ++ ++!macx { ++ HEADERS += ../RenderTexture/RenderTexture.h \ ++ pBufferTexture.h ++ ++ SOURCES += ../RenderTexture/RenderTexture.cpp \ ++ pBufferTexture.cpp ++} ++ ++INSTALLS += target ++target.path = $$DESTDIR |