Disable Timidity support by default
[alure.git] / CMakeLists.txt
blob210b25f28ff8e1916fbb7e698cdd6d8c3a9539ee
1 # CMakeLists.txt for ALURE
2 CMAKE_MINIMUM_REQUIRED(VERSION 2.4)
4 IF(COMMAND CMAKE_POLICY)
5     CMAKE_POLICY(SET CMP0003 NEW)
6 ENDIF(COMMAND CMAKE_POLICY)
8 SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
10 INCLUDE(CheckCCompilerFlag)
11 INCLUDE(CheckCSourceCompiles)
12 INCLUDE(CheckFunctionExists)
13 INCLUDE(CheckIncludeFile)
14 INCLUDE(CheckIncludeFiles)
15 INCLUDE(CheckLibraryExists)
16 INCLUDE(CheckSharedLibraryExists)
17 INCLUDE(FindPkgConfig)
18 INCLUDE(UsePkgConfig)
19 INCLUDE(CheckFileOffsetBits)
21 PROJECT(ALURE)
23 IF(WIN32)
24     SET(LIBNAME ALURE32)
25 ELSE(WIN32)
26     SET(LIBNAME alure)
27 ENDIF(WIN32)
29 SET(LIB_MAJOR_VERSION "1")
30 SET(LIB_MINOR_VERSION "0")
31 SET(LIB_BUILD_VERSION "72")
32 SET(LIB_VERSION "${LIB_MAJOR_VERSION}.${LIB_MINOR_VERSION}.${LIB_BUILD_VERSION}")
35 INCLUDE_DIRECTORIES(include "${ALURE_BINARY_DIR}")
38 OPTION(BUILD_SHARED "Build the shared version of the library" ON)
39 OPTION(BUILD_STATIC "Build the static version of the library" ON)
41 IF(NOT BUILD_SHARED AND NOT BUILD_STATIC)
42     MESSAGE(FATAL_ERROR "No libtype being built!")
43 ENDIF(NOT BUILD_SHARED AND NOT BUILD_STATIC)
45 IF(NOT CMAKE_BUILD_TYPE)
46     SET(CMAKE_BUILD_TYPE RelWithDebInfo CACHE STRING
47         "Choose the type of build, options are: Debug Release RelWithDebInfo MinSizeRel."
48         FORCE)
49 ENDIF(NOT CMAKE_BUILD_TYPE)
50 IF(NOT DEFINED CMAKE_DEBUG_POSTFIX)
51     SET(CMAKE_DEBUG_POSTFIX "" CACHE STRING
52         "Library postfix for debug builds. Normally left blank."
53         FORCE)
54 ENDIF(NOT DEFINED CMAKE_DEBUG_POSTFIX)
57 ADD_DEFINITIONS(-DALURE_BUILD_LIBRARY -DHAVE_CONFIG_H)
59 CHECK_SHARED_LIBRARY_EXISTS(stdc++ memset "" HAS_STDCXX)
60 IF(HAS_STDCXX)
61     SET(EXTRA_LIBS stdc++ ${EXTRA_LIBS})
62 ENDIF(HAS_STDCXX)
64 CHECK_SHARED_LIBRARY_EXISTS(m pow "" HAS_LIBM)
65 IF(HAS_LIBM)
66     SET(EXTRA_LIBS m ${EXTRA_LIBS})
67 ENDIF(HAS_LIBM)
69 CHECK_FILE_OFFSET_BITS()
70 IF(_FILE_OFFSET_BITS)
71     ADD_DEFINITIONS(-D_FILE_OFFSET_BITS=${_FILE_OFFSET_BITS})
72     SET(CMAKE_REQUIRED_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS} -D_FILE_OFFSET_BITS=${_FILE_OFFSET_BITS})
73 ENDIF(_FILE_OFFSET_BITS)
75 CHECK_FUNCTION_EXISTS(fseeko HAVE_FSEEKO)
77 IF(MSVC)
78     # ???
79 ELSE(MSVC)
80     IF(NOT WIN32)
81         CHECK_C_SOURCE_COMPILES("int foo() __attribute__((constructor));
82                                  int main() {return 0;}" HAVE_GCC_CONSTRUCTOR)
84         CHECK_C_COMPILER_FLAG(-fvisibility=hidden HAVE_GCC_VISIBILITY)
85         IF(HAVE_GCC_VISIBILITY)
86             ADD_DEFINITIONS(-fvisibility=hidden)
87         ENDIF(HAVE_GCC_VISIBILITY)
88     ENDIF(NOT WIN32)
90     CHECK_C_COMPILER_FLAG(-Wextra HAVE_WEXTRA)
91     IF(HAVE_WEXTRA)
92         ADD_DEFINITIONS(-Wextra)
93     ENDIF(HAVE_WEXTRA)
94     ADD_DEFINITIONS(-Wall)
96     CHECK_C_COMPILER_FLAG(-funswitch-loops HAVE_FUNSWITCH_LOOPS)
97     IF(HAVE_FUNSWITCH_LOOPS)
98         ADD_DEFINITIONS(-funswitch-loops)
99     ENDIF(HAVE_FUNSWITCH_LOOPS)
100 ENDIF(MSVC)
103 CHECK_INCLUDE_FILE(windows.h HAVE_WINDOWS_H -D_WIN32_WINNT=0x0500)
104 IF(NOT HAVE_WINDOWS_H)
105     CHECK_C_COMPILER_FLAG(-pthread HAVE_PTHREAD)
106     IF(HAVE_PTHREAD)
107         ADD_DEFINITIONS(-pthread)
108         SET(EXTRA_LIBS ${EXTRA_LIBS} -pthread)
109     ENDIF(HAVE_PTHREAD)
111     # We need pthreads outside of Windows
112     CHECK_INCLUDE_FILE(pthread.h HAVE_PTHREAD_H)
113     IF(NOT HAVE_PTHREAD_H)
114         MESSAGE(FATAL_ERROR "PThreads is required for non-Windows builds!")
115     ENDIF()
116     # Some systems need pthread_np.h to get recursive mutexes
117     CHECK_INCLUDE_FILES("pthread.h;pthread_np.h" HAVE_PTHREAD_NP_H)
119     # _GNU_SOURCE is needed on some systems for extra attributes, and
120     # _REENTRANT is needed for libc thread-safety
121     ADD_DEFINITIONS(-D_GNU_SOURCE=1)
122     CHECK_FUNCTION_EXISTS(pthread_create HAS_PTHREAD_CREATE)
123     IF(NOT HAS_PTHREAD_CREATE)
124         CHECK_SHARED_LIBRARY_EXISTS(pthread pthread_create "" HAVE_LIBPTHREAD)
125         IF(NOT HAVE_LIBPTHREAD)
126             MESSAGE(FATAL_ERROR "pthread_create not found on non-Windows target!")
127         ENDIF(NOT HAVE_LIBPTHREAD)
128         SET(EXTRA_LIBS pthread ${EXTRA_LIBS})
129     ENDIF(NOT HAS_PTHREAD_CREATE)
131     CHECK_FUNCTION_EXISTS(nanosleep HAVE_NANOSLEEP)
132     IF(NOT HAVE_NANOSLEEP)
133         MESSAGE(FATAL_ERROR "No sleep function found!")
134     ENDIF(NOT HAVE_NANOSLEEP)
135 ENDIF(NOT HAVE_WINDOWS_H)
137 CHECK_INCLUDE_FILE(sys/types.h HAVE_SYS_TYPES_H)
138 CHECK_INCLUDE_FILE(sys/wait.h HAVE_SYS_WAIT_H)
139 CHECK_INCLUDE_FILE(signal.h HAVE_SIGNAL_H)
140 CHECK_INCLUDE_FILE(dlfcn.h HAVE_DLFCN_H)
142 IF(HAVE_DLFCN_H)
143     CHECK_SHARED_LIBRARY_EXISTS(dl dlopen "" HAVE_LIBDL)
144     IF(HAVE_LIBDL)
145         SET(EXTRA_LIBS dl ${EXTRA_LIBS})
146     ENDIF(HAVE_LIBDL)
147 ENDIF(HAVE_DLFCN_H)
149 OPTION(DYNLOAD   "Dynamically load support libs at run-time" ON)
150 OPTION(SNDFILE   "SoundFile support (for various formats)" ON)
151 OPTION(VORBIS    "VorbisFile support (for Ogg Vorbis)"  ON)
152 OPTION(FLAC      "FLAC support (for FLAC and Ogg FLAC)" ON)
153 OPTION(MPG123    "MPG123 support (for MP1/MP2/MP3)" ON)
154 OPTION(DUMB      "DUMB support (for IT/XM/S3M/MOD)" ON)
155 OPTION(TIMIDITY  "Timidity support (for MIDI/MUS)" OFF)
157 IF(WIN32)
158     ADD_DEFINITIONS(-D_WIN32)
160     IF(CMAKE_SIZEOF_VOID_P MATCHES "8")
161         SET(WIN_TYPE Win64)
162         SET(XBITS x64)
163     ELSE(CMAKE_SIZEOF_VOID_P MATCHES "8")
164         SET(WIN_TYPE Win32)
165         SET(XBITS x86)
166     ENDIF(CMAKE_SIZEOF_VOID_P MATCHES "8")
168     SET(OPENAL_SEARCH_PATHS
169         ENV ALSDK_DIR
170         ENV MINGDIR
171         "C:/Program Files/OpenAL 1.1 SDK"
172         "C:/Program Files (x86)/OpenAL 1.1 SDK"
173         "E:/Programs/Dev/OpenAL"
174         "E:/Program Files (x86)/OpenAL 1.1 SDK" )
176     FIND_PATH(OPENAL_INCLUDE_DIR al.h
177               PATHS ${OPENAL_SEARCH_PATHS}
178               PATH_SUFFIXES include include/AL )
179     IF(OPENAL_INCLUDE_DIR)
180         INCLUDE_DIRECTORIES(${OPENAL_INCLUDE_DIR})
181         FIND_LIBRARY(OPENAL_LIBRARIES OpenAL32
182                      PATHS ${OPENAL_SEARCH_PATHS}
183                      PATH_SUFFIXES lib libs/${WIN_TYPE} )
184     ENDIF(OPENAL_INCLUDE_DIR)
186     IF(NOT OPENAL_LIBRARIES)
187         MESSAGE(FATAL_ERROR "OpenAL not found!\nPlease try setting the ALSDK_DIR environment variable and try again.")
188     ENDIF(NOT OPENAL_LIBRARIES)
190     MESSAGE(STATUS "OpenAL include: ${OPENAL_INCLUDE_DIR}")
191     MESSAGE(STATUS "OpenAL lib: ${OPENAL_LIBRARIES}")
192 ELSE(WIN32)
193     IF(NOT HAVE_DLFCN_H OR NOT HAVE_LIBDL)
194         SET(DYNLOAD OFF)
195     ENDIF(NOT HAVE_DLFCN_H OR NOT HAVE_LIBDL)
197     PKG_CHECK_MODULES(OPENAL openal)
198     IF(NOT OPENAL_FOUND)
199         IF(APPLE)
200             CHECK_INCLUDE_FILE(OpenAL/al.h HAVE_OPENAL_AL_H)
201             IF(HAVE_OPENAL_AL_H)
202                 SET(OPENAL_LIBRARIES "-framework OpenAL")
203                 SET(HAS_OPENAL 1)
204             ENDIF(HAVE_OPENAL_AL_H)
205         ELSE(APPLE)
206             CHECK_INCLUDE_FILE(AL/al.h HAVE_AL_AL_H)
207             IF(HAVE_AL_AL_H)
208                 CHECK_SHARED_LIBRARY_EXISTS(openal alcOpenDevice "" HAS_OPENAL)
209                 IF(HAS_OPENAL)
210                     SET(OPENAL_LIBRARIES openal)
211                 ENDIF(HAS_OPENAL)
212             ENDIF(HAVE_AL_AL_H)
213         ENDIF(APPLE)
214         IF(NOT HAS_OPENAL)
215             MESSAGE(FATAL_ERROR "OpenAL not found!")
216         ENDIF(NOT HAS_OPENAL)
217     ELSE(NOT OPENAL_FOUND)
218         INCLUDE_DIRECTORIES(${OPENAL_INCLUDE_DIRS})
219         LINK_DIRECTORIES(${OPENAL_LIBRARY_DIRS})
220     ENDIF(NOT OPENAL_FOUND)
221 ENDIF(WIN32)
223 # SndFile support
224 IF(SNDFILE)
225     PKG_CHECK_MODULES(SNDFILE sndfile)
226     IF(NOT SNDFILE_FOUND)
227         CHECK_INCLUDE_FILE(sndfile.h HAVE_SNDFILE_H)
228         IF(HAVE_SNDFILE_H)
229             CHECK_SHARED_LIBRARY_EXISTS(sndfile sf_open "" HAVE_LIBSNDFILE)
230             CHECK_SHARED_LIBRARY_EXISTS(libsndfile-1 sf_open "" HAVE_LIBSNDFILE1)
231             IF(DYNLOAD OR HAVE_LIBSNDFILE OR HAVE_LIBSNDFILE1)
232                 SET(HAS_SNDFILE 1)
233                 IF(HAVE_LIBSNDFILE)
234                     SET(SNDFILE_LIBRARIES "sndfile")
235                 ELSEIF(HAVE_LIBSNDFILE1)
236                     SET(SNDFILE_LIBRARIES "libsndfile-1")
237                 ENDIF(HAVE_LIBSNDFILE)
238             ENDIF(DYNLOAD OR HAVE_LIBSNDFILE OR HAVE_LIBSNDFILE1)
239         ENDIF(HAVE_SNDFILE_H)
240     ELSE(NOT SNDFILE_FOUND)
241         SET(HAS_SNDFILE 1)
242         INCLUDE_DIRECTORIES(${SNDFILE_INCLUDE_DIRS})
243         LINK_DIRECTORIES(${SNDFILE_LIBRARY_DIRS})
244     ENDIF(NOT SNDFILE_FOUND)
245 ELSE(SNDFILE)
246     SET(SNDFILE_LIBRARIES "")
247 ENDIF(SNDFILE)
249 # Vorbis support
250 IF(VORBIS)
251     PKG_CHECK_MODULES(VORBISFILE vorbisfile)
252     IF(NOT VORBISFILE_FOUND)
253         CHECK_INCLUDE_FILE(vorbis/vorbisfile.h HAVE_VORBIS_VORBISFILE_H)
254         IF(HAVE_VORBIS_VORBISFILE_H)
255             CHECK_SHARED_LIBRARY_EXISTS(vorbisfile ov_open "" HAVE_LIBVORBISFILE)
256             IF(DYNLOAD OR HAVE_LIBVORBISFILE)
257                 SET(HAS_VORBISFILE 1)
258                 IF(HAVE_LIBVORBISFILE)
259                     SET(VORBISFILE_LIBRARIES "vorbisfile")
260                 ENDIF(HAVE_LIBVORBISFILE)
261             ENDIF(DYNLOAD OR HAVE_LIBVORBISFILE)
262         ENDIF(HAVE_VORBIS_VORBISFILE_H)
263     ELSE(NOT VORBISFILE_FOUND)
264         SET(HAS_VORBISFILE 1)
265         INCLUDE_DIRECTORIES(${VORBISFILE_INCLUDE_DIRS})
266         LINK_DIRECTORIES(${VORBISFILE_LIBRARY_DIRS})
267     ENDIF(NOT VORBISFILE_FOUND)
268 ELSE(VORBIS)
269     SET(VORBISFILE_LIBRARIES "")
270 ENDIF(VORBIS)
272 # FLAC support
273 IF(FLAC)
274     #PKG_CHECK_MODULES(LIBFLAC flac)
275     #IF(NOT LIBFLAC_FOUND)
276         CHECK_INCLUDE_FILE(FLAC/all.h HAVE_FLAC_ALL_H)
277         IF(HAVE_FLAC_ALL_H)
278             CHECK_SHARED_LIBRARY_EXISTS(FLAC FLAC__stream_decoder_new "" HAVE_LIBFLAC)
279             IF(DYNLOAD OR HAVE_LIBFLAC)
280                 SET(HAS_FLAC 1)
281                 IF(HAVE_LIBFLAC)
282                     SET(LIBFLAC_LIBRARIES "FLAC")
283                 ENDIF(HAVE_LIBFLAC)
284             ENDIF(DYNLOAD OR HAVE_LIBFLAC)
285         ENDIF(HAVE_FLAC_ALL_H)
286     #ELSE(NOT LIBFLAC)
287     #    SET(HAS_FLAC 1)
288     #    INCLUDE_DIRECTORIES(${LIBFLAC_INCLUDE_DIRS})
289     #    LINK_DIRECTORIES(${LIBFLAC_LIBRARY_DIRS})
290     #ENDIF(NOT LIBFLAC_FOUND)
291 ELSE(FLAC)
292     SET(LIBFLAC_LIBRARIES "")
293 ENDIF(FLAC)
295 # MPG123 support
296 IF(MPG123)
297     PKG_CHECK_MODULES(MPG123 libmpg123)
298     IF(NOT MPG123_FOUND)
299         CHECK_INCLUDE_FILE(mpg123.h HAVE_MPG123_H)
300         IF(HAVE_MPG123_H)
301             CHECK_SHARED_LIBRARY_EXISTS(mpg123 mpg123_init "" HAVE_LIBMPG123)
302             IF(DYNLOAD OR HAVE_LIBMPG123)
303                 SET(HAS_MPG123 1)
304                 IF(HAVE_LIBMPG123)
305                     SET(MPG123_LIBRARIES "mpg123")
306                 ENDIF(HAVE_LIBMPG123)
307             ENDIF(DYNLOAD OR HAVE_LIBMPG123)
308         ENDIF(HAVE_MPG123_H)
309     ELSE(NOT MPG123_FOUND)
310         SET(HAS_MPG123 1)
311         INCLUDE_DIRECTORIES(${MPG123_INCLUDE_DIRS})
312         LINK_DIRECTORIES(${MPG123_LIBRARY_DIRS})
313     ENDIF(NOT MPG123_FOUND)
314 ELSE(MPG123)
315     SET(MPG123_LIBRARIES "")
316 ENDIF(MPG123)
318 # DUMB support
319 IF(DUMB)
320     CHECK_INCLUDE_FILE(dumb.h HAVE_DUMB_H)
321     IF(HAVE_DUMB_H)
322         IF(HAS_LIBM)
323             CHECK_SHARED_LIBRARY_EXISTS("dumb;m" dumbfile_open_ex "" HAVE_LIBDUMB)
324         ELSE(HAS_LIBM)
325             CHECK_SHARED_LIBRARY_EXISTS(dumb dumbfile_open_ex "" HAVE_LIBDUMB)
326         ENDIF(HAS_LIBM)
327         IF(DYNLOAD OR HAVE_LIBDUMB)
328             SET(HAS_DUMB 1)
329             IF(HAVE_LIBDUMB)
330                 SET(DUMB_LIBRARIES dumb)
331             ENDIF(HAVE_LIBDUMB)
332         ENDIF(DYNLOAD OR HAVE_LIBDUMB)
333     ENDIF(HAVE_DUMB_H)
334 ELSE(DUMB)
335     SET(DUMB_LIBRARIES "")
336 ENDIF(DUMB)
338 IF(TIMIDITY)
339     CHECK_FUNCTION_EXISTS(fork HAVE_FORK)
340     CHECK_FUNCTION_EXISTS(pipe HAVE_PIPE)
341     CHECK_FUNCTION_EXISTS(kill HAVE_KILL)
342     CHECK_FUNCTION_EXISTS(open HAVE_OPEN)
343     IF(WIN32 OR (HAVE_OPEN AND HAVE_KILL AND HAVE_PIPE AND HAVE_FORK))
344         SET(HAS_TIMIDITY 1)
345     ELSE(WIN32 OR (HAVE_OPEN AND HAVE_KILL AND HAVE_PIPE AND HAVE_FORK))
346         SET(HAS_TIMIDITY 0)
347     ENDIF(WIN32 OR (HAVE_OPEN AND HAVE_KILL AND HAVE_PIPE AND HAVE_FORK))
348 ENDIF(TIMIDITY)
351 IF(NOT DYNLOAD)
352     SET(EXTRA_LIBS ${SNDFILE_LIBRARIES} ${VORBISFILE_LIBRARIES} ${LIBFLAC_LIBRARIES} ${MPG123_LIBRARIES} ${DUMB_LIBRARIES} ${EXTRA_LIBS})
353 ELSE(NOT DYNLOAD)
354     ADD_DEFINITIONS(-DDYNLOAD=1)
355 ENDIF(NOT DYNLOAD)
357 # For alure.pc.in
358 SET(prefix ${CMAKE_INSTALL_PREFIX})
359 SET(exec_prefix "\${prefix}")
360 SET(libdir "\${exec_prefix}/lib${LIB_SUFFIX}")
361 SET(bindir "\${exec_prefix}/bin")
362 SET(includedir "\${prefix}/include")
363 SET(PKG_CONFIG_REQUIRES openal)
364 SET(PACKAGE_VERSION "${LIB_VERSION}")
366 # End configuration
367 CONFIGURE_FILE(
368     "${ALURE_SOURCE_DIR}/config.h.in"
369     "${ALURE_BINARY_DIR}/config.h")
370 CONFIGURE_FILE(
371     "${ALURE_SOURCE_DIR}/alure.pc.in"
372     "${ALURE_BINARY_DIR}/alure.pc"
373     @ONLY)
376 SET(ALURE_OBJS  src/alure.cpp
377                 src/buffer.cpp
378                 src/istream.cpp
379                 src/stream.cpp
380                 src/streamdec.cpp
381                 src/streamplay.cpp
384 IF(BUILD_SHARED)
385     #build a shared library
386     ADD_LIBRARY(${LIBNAME} SHARED ${ALURE_OBJS})
387     SET_TARGET_PROPERTIES(${LIBNAME} PROPERTIES VERSION ${LIB_VERSION}
388                                                 SOVERSION ${LIB_MAJOR_VERSION})
389     IF(WIN32)
390         SET_TARGET_PROPERTIES(${LIBNAME} PROPERTIES PREFIX "")
391     ENDIF(WIN32)
392     TARGET_LINK_LIBRARIES(${LIBNAME} ${OPENAL_LIBRARIES} ${EXTRA_LIBS})
394     INSTALL(TARGETS ${LIBNAME}
395             RUNTIME DESTINATION bin
396             LIBRARY DESTINATION lib${LIB_SUFFIX}
397             ARCHIVE DESTINATION lib${LIB_SUFFIX}
399 ENDIF(BUILD_SHARED)
400 IF(BUILD_STATIC)
401     #build a static library
402     ADD_LIBRARY(${LIBNAME}-static STATIC ${ALURE_OBJS})
403     SET_TARGET_PROPERTIES(${LIBNAME}-static PROPERTIES COMPILE_FLAGS -DALURE_STATIC_LIBRARY
404                                                        VERSION ${LIB_VERSION})
405     INSTALL(TARGETS ${LIBNAME}-static
406             RUNTIME DESTINATION bin
407             LIBRARY DESTINATION lib${LIB_SUFFIX}
408             ARCHIVE DESTINATION lib${LIB_SUFFIX}
410 ENDIF(BUILD_STATIC)
413 ADD_EXECUTABLE(alureplay examples/alureplay.c)
414 ADD_EXECUTABLE(alurestream examples/alurestream.c)
415 IF(BUILD_SHARED)
416     TARGET_LINK_LIBRARIES(alureplay ${LIBNAME} ${OPENAL_LIBRARIES} ${EXTRA_LIBS})
417     TARGET_LINK_LIBRARIES(alurestream ${LIBNAME} ${OPENAL_LIBRARIES} ${EXTRA_LIBS})
418 ELSE(BUILD_SHARED)
419     TARGET_LINK_LIBRARIES(alureplay ${LIBNAME}-static ${OPENAL_LIBRARIES} ${EXTRA_LIBS})
420     TARGET_LINK_LIBRARIES(alurestream ${LIBNAME}-static ${OPENAL_LIBRARIES} ${EXTRA_LIBS})
421 ENDIF(BUILD_SHARED)
424 FIND_PROGRAM(NATDOCS_BIN NaturalDocs)
425 IF(NATDOCS_BIN)
426     ADD_CUSTOM_TARGET(docs
427                       "${NATDOCS_BIN}" -i "${ALURE_SOURCE_DIR}/src" -o HTML "${ALURE_SOURCE_DIR}/docs/html" -p "${ALURE_SOURCE_DIR}/docs/naturaldocs" -s Default CustomStyle
428                       COMMENT "Building NaturalDocs documentation..." VERBATIM)
429 ELSE(NATDOCS_BIN)
430     MESSAGE(STATUS "\nNaturalDocs not found; building documentation is disabled")
431 ENDIF(NATDOCS_BIN)
434 #add an install target here
435 IF(APPLE)
436     SET(INCPATH OpenAL)
437 ELSE(APPLE)
438     SET(INCPATH AL)
439 ENDIF(APPLE)
441 INSTALL(DIRECTORY "${ALURE_SOURCE_DIR}/docs/html"
442         DESTINATION share/doc/alure
444 INSTALL(FILES include/AL/alure.h
445         DESTINATION "include/${INCPATH}"
447 INSTALL(FILES "${ALURE_BINARY_DIR}/alure.pc"
448         DESTINATION "lib${LIB_SUFFIX}/pkgconfig"
452 MESSAGE(STATUS "\n********************** Configured options **********************")
453 IF(BUILD_SHARED AND BUILD_STATIC)
454     MESSAGE(STATUS "Building shared, static library")
455 ELSEIF(BUILD_SHARED)
456     MESSAGE(STATUS "Building shared library")
457 ELSE(BUILD_SHARED AND BUILD_STATIC)
458     MESSAGE(STATUS "Building static library")
459 ENDIF(BUILD_SHARED AND BUILD_STATIC)
460 MESSAGE(STATUS "")
461 IF(HAS_SNDFILE)
462     MESSAGE(STATUS "SndFile support: enabled")
463 ELSE(HAS_SNDFILE)
464     MESSAGE(STATUS "SndFile support: disabled")
465 ENDIF(HAS_SNDFILE)
466 IF(HAS_VORBISFILE)
467     MESSAGE(STATUS "VorbisFile support: enabled")
468 ELSE(HAS_VORBISFILE)
469     MESSAGE(STATUS "VorbisFile support: disabled")
470 ENDIF(HAS_VORBISFILE)
471 IF(HAS_FLAC)
472     MESSAGE(STATUS "FLAC support: enabled")
473 ELSE(HAS_FLAC)
474     MESSAGE(STATUS "FLAC support: disabled")
475 ENDIF(HAS_FLAC)
476 IF(HAS_MPG123)
477     MESSAGE(STATUS "MPG123 support: enabled")
478 ELSE(HAS_MPG123)
479     MESSAGE(STATUS "MPG123 support: disabled")
480 ENDIF(HAS_MPG123)
481 IF(HAS_DUMB)
482     MESSAGE(STATUS "DUMB support: enabled")
483 ELSE(HAS_DUMB)
484     MESSAGE(STATUS "DUMB support: disabled")
485 ENDIF(HAS_DUMB)
486 IF(HAS_TIMIDITY)
487     MESSAGE(STATUS "Timidity support: enabled")
488 ELSE(HAS_TIMIDTY)
489     MESSAGE(STATUS "Timidity support: disabled")
490 ENDIF(HAS_TIMIDITY)
491 MESSAGE(STATUS "")