diff --git a/interface/CMakeLists.txt b/interface/CMakeLists.txt index b04ea797bc..9563fb0bd5 100644 --- a/interface/CMakeLists.txt +++ b/interface/CMakeLists.txt @@ -9,9 +9,6 @@ set(PORTAUDIO_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/portaudio) project(interface) if (APPLE) - # link in required OS X frameworks and include the right GL headers - set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -framework CoreAudio -framework AudioToolbox - -framework AudioUnit -framework CoreServices -framework Carbon -framework GLUT") set(GL_HEADERS "#include \n#include ") else (APPLE) # include the right GL headers for UNIX @@ -20,7 +17,7 @@ endif (APPLE) if (WIN32) set(GLUT_ROOT_PATH ${CMAKE_CURRENT_SOURCE_DIR}/external/glut) - set(GL_HEADERS "#define GLEW_STATIC\n#define FREEGLUT_STATIC\n#define FREEGLUT_LIB_PRAGMAS 0\n + set(GL_HEADERS "#define GLEW_STATIC\n#define FREEGLUT_STATIC\n#define FREEGLUT_LIB_PRAGMAS 0 #include \n#include \n#include ") endif (WIN32) @@ -52,24 +49,53 @@ include(../LinkHifiShared.cmake) link_hifi_shared_library(interface) # find required libraries -find_package(OpenGL REQUIRED) -find_package(GLUT REQUIRED) find_package(GLM REQUIRED) find_package(LodePNG REQUIRED) # include headers for external libraries and InterfaceConfig. include_directories( ${PROJECT_BINARY_DIR}/includes - ${OPENGL_INCLUDE_DIR} - ${GLUT_INCLUDE_DIR} ${GLM_INCLUDE_DIRS} ${LODEPNG_INCLUDE_DIRS} ) +if (NOT APPLE) + find_package(OpenGL REQUIRED) + find_package(GLUT REQUIRED) + include_directories(${GLUT_INCLUDE_DIR} ${OPENGL_INCLUDE_DIR}) + target_link_libraries(interface ${OPENGL_LIBRARY}) + + # link required libraries on UNIX + if (UNIX) + find_package(Threads REQUIRED) + find_package(Librt REQUIRED) + find_package(ALSA) + find_package(Jack) + + target_link_libraries(interface + ${CMAKE_THREAD_LIBS_INIT} + ${LIBRT_LIBRARIES} + ${JACK_LIBRARIES} + ${ALSA_LIBRARIES} + ${GLUT_LIBRARY} + ) + endif (UNIX) +else (NOT APPLE) + # link in required OS X frameworks and include the right GL headers + find_library(AudioToolbox AudioToolbox) + find_library(AudioUnit AudioUnit) + find_library(CoreAudio CoreAudio) + find_library(CoreServices CoreServices) + find_library(Carbon Carbon) + find_library(GLUT GLUT) + find_library(OpenGL OpenGL) + target_link_libraries(interface ${AudioToolbox} ${AudioUnit} ${CoreAudio} + ${CoreServices} ${Carbon} ${GLUT} ${OpenGL}) +endif (NOT APPLE) + # link target to external libraries if (WIN32) target_link_libraries(interface - ${OPENGL_LIBRARY} ${CMAKE_CURRENT_SOURCE_DIR}/external/glut/Release/glew32.lib ${CMAKE_CURRENT_SOURCE_DIR}/external/glut/Release/freeglut.lib ${CMAKE_CURRENT_SOURCE_DIR}/external/glut/Release/pthread_lib.lib @@ -77,14 +103,8 @@ if (WIN32) wsock32.lib ) else (WIN32) - target_link_libraries(interface - ${OPENGL_LIBRARY} - ${GLUT_LIBRARY} - ${LODEPNG_LIBRARY} - ) -endif (WIN32) - -if (NOT WIN32) + target_link_libraries(interface ${LODEPNG_LIBRARY}) + # include PortAudio as external project include(ExternalProject) set(PORTAUDIO_PROJ_DIR external/portaudio) @@ -107,23 +127,7 @@ if (NOT WIN32) # link the PortAudio library ExternalProject_Get_Property(portaudio binary_dir) target_link_libraries(interface ${binary_dir}/lib/.libs/libportaudio.a) - -endif (NOT WIN32) - -# link required libraries on UNIX -if (UNIX AND NOT APPLE) - find_package(Threads REQUIRED) - find_package(Librt REQUIRED) - find_package(ALSA) - find_package(Jack) - - target_link_libraries(interface - ${CMAKE_THREAD_LIBS_INIT} - ${LIBRT_LIBRARIES} - ${JACK_LIBRARIES} - ${ALSA_LIBRARIES} - ) -endif (UNIX AND NOT APPLE) +endif (WIN32) # install command for OS X bundle INSTALL(TARGETS interface