openalbridge/CMakeLists.txt
author nemo
Thu, 15 Oct 2009 19:31:53 +0000
changeset 2466 ab6dfb227d1d
parent 2445 5033848d3afa
child 2494 1e10a47cabea
permissions -rw-r--r--
damn semicolons...
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2191
20c62f787a4d koda's OpenAL conversion:
unc0rr
parents:
diff changeset
     1
find_package(OpenAL REQUIRED)
2200
8192be6e3aef koda/Smaxx changes to openal for crossplatform building
nemo
parents: 2194
diff changeset
     2
find_package(OggVorbis REQUIRED)
2191
20c62f787a4d koda's OpenAL conversion:
unc0rr
parents:
diff changeset
     3
include_directories(${OPENAL_INCLUDE_DIR})
2200
8192be6e3aef koda/Smaxx changes to openal for crossplatform building
nemo
parents: 2194
diff changeset
     4
include_directories(${OGGVORBIS_INCLUDE_DIRS})
2191
20c62f787a4d koda's OpenAL conversion:
unc0rr
parents:
diff changeset
     5
2203
6bd39d75e0dd -Added support for Release and Debug for CMAKE_BUILD_TYPE
koda
parents: 2200
diff changeset
     6
#set destination directory for library
2200
8192be6e3aef koda/Smaxx changes to openal for crossplatform building
nemo
parents: 2194
diff changeset
     7
set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH})
2203
6bd39d75e0dd -Added support for Release and Debug for CMAKE_BUILD_TYPE
koda
parents: 2200
diff changeset
     8
6bd39d75e0dd -Added support for Release and Debug for CMAKE_BUILD_TYPE
koda
parents: 2200
diff changeset
     9
#list of source files for libraries
2200
8192be6e3aef koda/Smaxx changes to openal for crossplatform building
nemo
parents: 2194
diff changeset
    10
set(openal_src
2445
5033848d3afa committing some missing files
koda
parents: 2443
diff changeset
    11
	openalbridge.c loaders.c wrappers.c errlib.c ssound.c
2191
20c62f787a4d koda's OpenAL conversion:
unc0rr
parents:
diff changeset
    12
)
20c62f787a4d koda's OpenAL conversion:
unc0rr
parents:
diff changeset
    13
2200
8192be6e3aef koda/Smaxx changes to openal for crossplatform building
nemo
parents: 2194
diff changeset
    14
#build a static library for human systems
8192be6e3aef koda/Smaxx changes to openal for crossplatform building
nemo
parents: 2194
diff changeset
    15
set (build_type STATIC)
8192be6e3aef koda/Smaxx changes to openal for crossplatform building
nemo
parents: 2194
diff changeset
    16
2230
d6963f72d21a once again, trying to restore windows compatibility from nemo's experiments
koda
parents: 2216
diff changeset
    17
#visualstudio and windows in general doesn't like static linking, so we're building the library in shared mode
d6963f72d21a once again, trying to restore windows compatibility from nemo's experiments
koda
parents: 2216
diff changeset
    18
if(WIN32)
2203
6bd39d75e0dd -Added support for Release and Debug for CMAKE_BUILD_TYPE
koda
parents: 2200
diff changeset
    19
#workaround for visualstudio (wants headers in the source list)
2200
8192be6e3aef koda/Smaxx changes to openal for crossplatform building
nemo
parents: 2194
diff changeset
    20
	set(openal_src
2445
5033848d3afa committing some missing files
koda
parents: 2443
diff changeset
    21
		openalbridge.h loaders.h wrappers.h common.h oggvorbis.h errlib.h ssound.h ${openal_src}
2200
8192be6e3aef koda/Smaxx changes to openal for crossplatform building
nemo
parents: 2194
diff changeset
    22
	)
8192be6e3aef koda/Smaxx changes to openal for crossplatform building
nemo
parents: 2194
diff changeset
    23
#deps for the shared library
2350
1eef75bdcdba Smaxx' fix for windows build
unc0rr
parents: 2326
diff changeset
    24
	link_libraries(${VORBISFILE_LIBRARY})
1eef75bdcdba Smaxx' fix for windows build
unc0rr
parents: 2326
diff changeset
    25
	link_libraries(${VORBIS_LIBRARY})
2200
8192be6e3aef koda/Smaxx changes to openal for crossplatform building
nemo
parents: 2194
diff changeset
    26
	link_libraries(${OGG_LIBRARY})
2350
1eef75bdcdba Smaxx' fix for windows build
unc0rr
parents: 2326
diff changeset
    27
	link_libraries(${OPENAL_LIBRARY})
2200
8192be6e3aef koda/Smaxx changes to openal for crossplatform building
nemo
parents: 2194
diff changeset
    28
#build a shared library
8192be6e3aef koda/Smaxx changes to openal for crossplatform building
nemo
parents: 2194
diff changeset
    29
	set (build_type SHARED)
2230
d6963f72d21a once again, trying to restore windows compatibility from nemo's experiments
koda
parents: 2216
diff changeset
    30
endif()
2191
20c62f787a4d koda's OpenAL conversion:
unc0rr
parents:
diff changeset
    31
2203
6bd39d75e0dd -Added support for Release and Debug for CMAKE_BUILD_TYPE
koda
parents: 2200
diff changeset
    32
#compiles and links actual library
2200
8192be6e3aef koda/Smaxx changes to openal for crossplatform building
nemo
parents: 2194
diff changeset
    33
add_library (openalbridge ${build_type} ${openal_src})
8192be6e3aef koda/Smaxx changes to openal for crossplatform building
nemo
parents: 2194
diff changeset
    34
8192be6e3aef koda/Smaxx changes to openal for crossplatform building
nemo
parents: 2194
diff changeset
    35
if(WIN32)
2231
bf6009da227d forgot one line from previous commit
koda
parents: 2230
diff changeset
    36
if(MSVC)
2200
8192be6e3aef koda/Smaxx changes to openal for crossplatform building
nemo
parents: 2194
diff changeset
    37
	SET_TARGET_PROPERTIES(openalbridge PROPERTIES LINK_FLAGS /DEF:openalbridge.def)
2231
bf6009da227d forgot one line from previous commit
koda
parents: 2230
diff changeset
    38
endif(MSVC)
2200
8192be6e3aef koda/Smaxx changes to openal for crossplatform building
nemo
parents: 2194
diff changeset
    39
#install it in the executable directory
8192be6e3aef koda/Smaxx changes to openal for crossplatform building
nemo
parents: 2194
diff changeset
    40
	install(TARGETS openalbridge DESTINATION bin)
8192be6e3aef koda/Smaxx changes to openal for crossplatform building
nemo
parents: 2194
diff changeset
    41
endif(WIN32)