Browse Source

linux fixes

Former-commit-id: b8873e8033a85cdec081c67505a0b07a5e0f96a9
Daniele Panozzo 9 năm trước cách đây
mục cha
commit
d66bb1ba4c
2 tập tin đã thay đổi với 22 bổ sung10 xóa
  1. 14 10
      cmake/CMakeLists.txt
  2. 8 0
      tutorial/CMakeLists.txt

+ 14 - 10
cmake/CMakeLists.txt

@@ -222,9 +222,6 @@ endif()
 
 ### Compile the opengl and png parts ###
 if(LIBIGL_WITH_OPENGL)
-  find_package(OpenGL REQUIRED)
-  list(APPEND LIBIGL_EXTRA_LIBRARIES ${OPENGL_LIBRARIES})
-
   if(LIBIGL_USE_STATIC_LIBRARY)
     CompileIGL_Module("opengl")
     CompileIGL_Module("opengl2")
@@ -275,11 +272,6 @@ if(LIBIGL_WITH_VIEWER) # to finish cleaning
   add_definitions(-DIGL_VIEWER_WITH_NANOGUI)
   list(APPEND LIBIGL_DEFINITIONS "-DIGL_VIEWER_WITH_NANOGUI")
 
-  #-framework OpenGL -framework Cocoa -framework IOKit -framework CoreVideo
-  if (APPLE)
-    list(APPEND LIBIGL_EXTRA_LIBRARIES "-framework OpenGL" "-framework Cocoa" "-framework IOKit" "-framework CoreVideo") #"glfw" ${GLFW_LIBRARIES})
-  endif()
-
   set(NANOGUI_DIR "${LIBIGL_EXTERNAL}/nanogui")
   set(NANOGUI_INCLUDE_DIRS
     "${NANOGUI_DIR}/include"
@@ -291,15 +283,27 @@ if(LIBIGL_WITH_VIEWER) # to finish cleaning
   option(NANOGUI_BUILD_SHARED  OFF)
   add_subdirectory("${NANOGUI_DIR}" "nanogui")
   list(APPEND LIBIGL_INCLUDE_DIRS ${NANOGUI_INCLUDE_DIRS})
-  list(APPEND LIBIGL_EXTRA_LIBRARIES "nanogui") #"glfw" ${GLFW_LIBRARIES})
+  list(APPEND LIBIGL_EXTRA_LIBRARIES "nanogui" "glfw")
+
+  if (APPLE)
+    list(APPEND LIBIGL_EXTRA_LIBRARIES "-framework OpenGL" "-framework Cocoa" "-framework IOKit" "-framework CoreVideo" "glfw") #${GLFW_LIBRARIES})
+  endif()
+
+  if (UNIX AND NOT APPLE)
+    list(APPEND LIBIGL_EXTRA_LIBRARIES "-lXrandr" "-lXi" "-lXxf86vm" "-lXcursor" "-lXinerama")
+  endif()
+
 
   if((WIN32 OR UNIX) AND NOT APPLE) # GLEW should not be needed on Linux
     include_directories("${NANOGUI_DIR}/ext/glew/include")
     list(APPEND LIBIGL_INCLUDE_DIRS "${NANOGUI_DIR}/ext/glew/include")
     list(APPEND LIBIGL_EXTRA_SOURCES "${NANOGUI_DIR}/ext/glew/src/glew.c")
-    #list(APPEND LIBIGL_EXTRA_LIBRARIES pthread)
+    list(APPEND LIBIGL_EXTRA_LIBRARIES pthread)
   endif()
 
+  find_package(OpenGL REQUIRED)
+  list(APPEND LIBIGL_EXTRA_LIBRARIES ${OPENGL_LIBRARIES})
+
   if(LIBIGL_USE_STATIC_LIBRARY)
     include_directories(${NANOGUI_INCLUDE_DIRS})
     CompileIGL_Module("viewer")

+ 8 - 0
tutorial/CMakeLists.txt

@@ -13,6 +13,14 @@ else()
   set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-deprecated-declarations -Wno-unused-parameter -Wno-deprecated-register -Wno-return-type-c-linkage")
 endif()
 
+# Enable openMP if possible
+find_package(OpenMP)
+if (OPENMP_FOUND AND NOT WIN32)
+  set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
+  set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
+endif()
+
+
 ### libIGL options: choose between header only and compiled static library
 option(LIBIGL_USE_STATIC_LIBRARY "Use LibIGL as static library" ON)
 option(LIBIGL_WITH_VIEWER      "Use Viewer Nanogui Bar" ON)