misc/libopenalbridge/CMakeLists.txt
changeset 9431 0f5961910e27
parent 9357 a501f5ec7b34
parent 9429 7a97a554ac80
child 9433 f0a8ac191839
equal deleted inserted replaced
9357:a501f5ec7b34 9431:0f5961910e27
     1 find_package(OpenAL REQUIRED)
       
     2 find_package(OggVorbis REQUIRED)
       
     3 include_directories(${OPENAL_INCLUDE_DIR})
       
     4 include_directories(${OGGVORBIS_INCLUDE_DIRS})
       
     5 
       
     6 #set destination directory for library
       
     7 set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH})
       
     8 
       
     9 #list of source files for libraries
       
    10 set(openal_src openalbridge.c loaders.c wrappers.c commands.c)
       
    11 
       
    12 #build a static library for human systems
       
    13 set (build_type STATIC)
       
    14 
       
    15 #visualstudio and windows in general don't like static linking, so we're building the library in shared mode
       
    16 if(WIN32)
       
    17 #workaround for visualstudio (wants headers in the source list)
       
    18 	set(openal_src *.h ${openal_src})
       
    19 #deps for the shared library
       
    20 	link_libraries(${VORBISFILE_LIBRARY})
       
    21 	link_libraries(${VORBIS_LIBRARY})
       
    22 	link_libraries(${OGG_LIBRARY})
       
    23 	link_libraries(${OPENAL_LIBRARY})
       
    24 #build a shared library
       
    25 	set (build_type SHARED)
       
    26 endif()
       
    27 
       
    28 #compiles and links actual library
       
    29 add_library (openalbridge ${build_type} ${openal_src})
       
    30 
       
    31 if(WIN32)
       
    32 if(MSVC)
       
    33 	set_target_properties(openalbridge PROPERTIES LINK_FLAGS /DEF:openalbridge.def)
       
    34 endif(MSVC)
       
    35 #install it in the executable directory
       
    36 	install(TARGETS openalbridge DESTINATION bin)
       
    37 endif(WIN32)
       
    38 
       
    39 #type make openalbridge_test to get a small executable test
       
    40 add_executable(openalbridge_test "${hedgewars_SOURCE_DIR}/misc/libopenalbridge/tester.c")
       
    41 target_link_libraries(openalbridge_test openalbridge ${OPENAL_LIBRARY} ${OGGVORBIS_LIBRARIES})
       
    42