From c99ac6cfa12f9d8307dadb5c7d1bf3aee2f126ce Mon Sep 17 00:00:00 2001 From: erwincoumans Date: Thu, 16 Apr 2015 18:11:22 -0700 Subject: [PATCH] cmake with 2 examples (HelloWorld, BasicDemo) --- CMakeLists.txt | 43 ++----------------- examples/BasicDemo/CMakeLists.txt | 31 +++++++++++++ examples/CMakeLists.txt | 1 + .../CommonGraphicsAppInterface.h | 6 +-- 4 files changed, 38 insertions(+), 43 deletions(-) create mode 100644 examples/BasicDemo/CMakeLists.txt create mode 100644 examples/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index 2962c1f79..c54b9abfd 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -126,7 +126,7 @@ ENDIF(INTERNAL_CREATE_MSVC_RELATIVE_PATH_PROJECTFILES) ENDIF (WIN32) -OPTION(BUILD_CPU_DEMOS "Build original Bullet CPU demos" ON) +OPTION(BUILD_CPU_DEMOS "Build original Bullet CPU examples" ON) @@ -189,45 +189,9 @@ ENDIF (OPENGL_FOUND) OPTION(BUILD_BULLET2_DEMOS "Set when you want to build the Bullet 2 demos" ON) IF(BUILD_BULLET2_DEMOS) -IF (USE_GLUT) - IF (MSVC) - SET(GLUT_FOUND TRUE) - ADD_DEFINITIONS(-DBT_USE_FREEGLUT) - IF (CMAKE_CL_64) - message("Win64 using static freeglut in Demos/Glut/glut64.lib") - SET(GLUT_glut_LIBRARY ${BULLET_PHYSICS_SOURCE_DIR}/Demos/Glut/glut64.lib glu32.lib gdi32.lib winmm.lib user32.lib) - ELSE(CMAKE_CL_64) - message("Win32 using static freeglut in Demos/Glut/glut32.lib") - SET(GLUT_glut_LIBRARY ${BULLET_PHYSICS_SOURCE_DIR}/Demos/Glut/glut32.lib glu32.lib gdi32.lib winmm.lib user32.lib) - ENDIF (CMAKE_CL_64) - SET(GLUT_INCLUDE_DIR ${BULLET_PHYSICS_SOURCE_DIR}/Demos/Glut ) - ELSE() - FIND_PACKAGE(GLUT) - IF (GLUT_FOUND) - MESSAGE("GLUT FOUND") - MESSAGE(${GLUT_glut_LIBRARY}) - ELSE (GLUT_FOUND) -# IF (MINGW) -# MESSAGE ("GLUT NOT FOUND not found, trying to use MINGW glut32") -# SET(GLUT_glut_LIBRARY glut32) -# #TODO add better GLUT detection for MinGW -# SET(GLUT_FOUND TRUE) -# ELSE (MINGW) - MESSAGE("GLUT NOT FOUND") -# ENDIF (MINGW) - ENDIF (GLUT_FOUND) - ENDIF (MSVC) - - IF(NOT WIN32 AND NOT APPLE AND NOT CMAKE_CROSSCOMPILING) - # This is added for linux. This should always work if everything is installed and working fine. - SET(GLUT_INCLUDE_DIR /usr/include /usr/local/include) - ENDIF() -ENDIF(USE_GLUT) - - - IF(EXISTS ${BULLET_PHYSICS_SOURCE_DIR}/Demos AND IS_DIRECTORY ${BULLET_PHYSICS_SOURCE_DIR}/Demos) - SUBDIRS(Demos) + IF(EXISTS ${BULLET_PHYSICS_SOURCE_DIR}/examples AND IS_DIRECTORY ${BULLET_PHYSICS_SOURCE_DIR}/examples) + SUBDIRS(examples) ENDIF() ENDIF(BUILD_BULLET2_DEMOS) @@ -257,7 +221,6 @@ ENDIF(BUILD_BULLET3) IF(BUILD_OPENGL3_DEMOS) IF(EXISTS ${BULLET_PHYSICS_SOURCE_DIR}/Demos3 AND IS_DIRECTORY ${BULLET_PHYSICS_SOURCE_DIR}/Demos3) SUBDIRS(Demos3) - SUBDIRS(btgui) ENDIF() ENDIF(BUILD_OPENGL3_DEMOS) diff --git a/examples/BasicDemo/CMakeLists.txt b/examples/BasicDemo/CMakeLists.txt new file mode 100644 index 000000000..8f3b50a5a --- /dev/null +++ b/examples/BasicDemo/CMakeLists.txt @@ -0,0 +1,31 @@ +# App_BasicExample is a minimal sample creating, stepping and deleting a Bullet dynamics world + +INCLUDE_DIRECTORIES( +${BULLET_PHYSICS_SOURCE_DIR}/src +) + +LINK_LIBRARIES( + BulletDynamics BulletCollision LinearMath +) + +IF (WIN32) + ADD_EXECUTABLE(App_BasicExample + BasicExample.cpp + main.cpp + ${BULLET_PHYSICS_SOURCE_DIR}/build3/bullet.rc + ) +ELSE() + ADD_EXECUTABLE(App_BasicExample + BasicExample.cpp + main.cpp + ) +ENDIF() + + + + +IF (INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES) + SET_TARGET_PROPERTIES(App_BasicExample PROPERTIES DEBUG_POSTFIX "_Debug") + SET_TARGET_PROPERTIES(App_BasicExample PROPERTIES MINSIZEREL_POSTFIX "_MinsizeRel") + SET_TARGET_PROPERTIES(App_BasicExample PROPERTIES RELWITHDEBINFO_POSTFIX "_RelWithDebugInfo") +ENDIF(INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES) \ No newline at end of file diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt new file mode 100644 index 000000000..b0e3c88dd --- /dev/null +++ b/examples/CMakeLists.txt @@ -0,0 +1 @@ +SUBDIRS( HelloWorld BasicDemo ) \ No newline at end of file diff --git a/examples/CommonInterfaces/CommonGraphicsAppInterface.h b/examples/CommonInterfaces/CommonGraphicsAppInterface.h index 257223ad8..03c69c4ca 100644 --- a/examples/CommonInterfaces/CommonGraphicsAppInterface.h +++ b/examples/CommonInterfaces/CommonGraphicsAppInterface.h @@ -76,12 +76,12 @@ struct CommonGraphicsApp void defaultMouseButtonCallback( int button, int state, float x, float y) { if (button==0) - m_leftMouseButton=state; + m_leftMouseButton= (state==1); if (button==1) - m_middleMouseButton=state; + m_middleMouseButton= (state==1); if (button==2) - m_rightMouseButton=state; + m_rightMouseButton= (state==1); m_mouseXpos = x; m_mouseYpos = y;