CMakeLists.txt 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. # Source files and their filters
  2. include(CMakeSources.cmake)
  3. # Find packages
  4. if(NOT WIN32)
  5. find_package(X11 REQUIRED)
  6. find_package(LibUUID REQUIRED)
  7. find_package(OpenGL REQUIRED)
  8. if(NOT X11_Xcursor_FOUND)
  9. message(FATAL_ERROR "Could not find XCursor library.")
  10. endif()
  11. if(NOT X11_Xrandr_FOUND)
  12. message(FATAL_ERROR "Could not find XRandR library.")
  13. endif()
  14. endif()
  15. # Includes
  16. set(BansheeGLRenderAPI_INC
  17. "./"
  18. "../BansheeUtility"
  19. "../BansheeCore"
  20. "GLSL/include")
  21. if(WIN32)
  22. set(BansheeGLRenderAPI_INC ${BansheeGLRenderAPI_INC} "Source/Win32")
  23. else()
  24. set(BansheeGLRenderAPI_INC ${BansheeGLRenderAPI_INC} ${OPENGL_INCLUDE_DIR})
  25. # TODO_OTHER_PLATFORMS_GO_HERE
  26. endif()
  27. include_directories(${BansheeGLRenderAPI_INC})
  28. # Target
  29. add_library(BansheeGLRenderAPI SHARED ${BS_BANSHEEGLRENDERAPI_SRC})
  30. # Defines
  31. target_compile_definitions(BansheeGLRenderAPI PRIVATE -DBS_RSGL_EXPORTS -DGLEW_STATIC)
  32. # Libraries
  33. if(WIN32)
  34. ## External lib: OpenGL
  35. target_link_libraries(BansheeGLRenderAPI PRIVATE glu32 opengl32)
  36. else()
  37. ## External lib: OpenGL, X11, LibUUID
  38. target_link_libraries(BansheeGLRenderAPI PRIVATE ${X11_LIBRARIES} ${X11_Xcursor_LIB} ${X11_Xrandr_LIB}
  39. ${OPENGL_LIBRARIES} ${LibUUID_LIBRARIES})
  40. endif()
  41. ## Local libs
  42. target_link_libraries(BansheeGLRenderAPI PUBLIC BansheeUtility BansheeCore)
  43. # IDE specific
  44. set_property(TARGET BansheeGLRenderAPI PROPERTY FOLDER Plugins)