have fpc work in the right directory instead of passing the full path of the main module (avoids having full paths in debug build backtraces for the first module only)
find_package(OpenAL REQUIRED)
find_package(OggVorbis REQUIRED)
include_directories(${OPENAL_INCLUDE_DIR})
include_directories(${OGGVORBIS_INCLUDE_DIRS})
#set destination directory for library
set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH})
#list of source files for libraries
set(openal_src openalbridge.c loaders.c wrappers.c commands.c)
#build a static library for human systems
set (build_type STATIC)
#visualstudio and windows in general don't like static linking, so we're building the library in shared mode
if(WIN32)
#workaround for visualstudio (wants headers in the source list)
set(openal_src *.h ${openal_src})
#deps for the shared library
link_libraries(${VORBISFILE_LIBRARY})
link_libraries(${VORBIS_LIBRARY})
link_libraries(${OGG_LIBRARY})
link_libraries(${OPENAL_LIBRARY})
#build a shared library
set (build_type SHARED)
endif()
#compiles and links actual library
add_library (openalbridge ${build_type} ${openal_src})
if(WIN32)
if(MSVC)
set_target_properties(openalbridge PROPERTIES LINK_FLAGS /DEF:openalbridge.def)
endif(MSVC)
#install it in the executable directory
install(TARGETS openalbridge DESTINATION bin)
endif(WIN32)
#type make openalbridge_test to get a small executable test
add_executable(openalbridge_test "${hedgewars_SOURCE_DIR}/misc/libopenalbridge/tester.c")
target_link_libraries(openalbridge_test openalbridge ${OPENAL_LIBRARY} ${OGGVORBIS_LIBRARIES})