Skip to content

Commit 0aa1d4c

Browse files
committed
For open AL
1 parent e86df83 commit 0aa1d4c

File tree

2 files changed

+101
-0
lines changed

2 files changed

+101
-0
lines changed

.gitattributes

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -610,6 +610,7 @@ cmake_modules/FindINDI.cmake -text
610610
cmake_modules/FindMEADE.cmake -text
611611
cmake_modules/FindMODBUS.cmake -text
612612
cmake_modules/FindNova.cmake -text
613+
cmake_modules/FindOpenAL.cmake -text
613614
cmake_modules/FindQSI.cmake -text
614615
cmake_modules/FindSBIG.cmake -text
615616
cmake_modules/FindUSB-1.cmake -text

cmake_modules/FindOpenAL.cmake

Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
# Locate OpenAL
2+
# This module defines
3+
# OPENAL_LIBRARY
4+
# OPENAL_FOUND, if false, do not try to link to OpenAL
5+
# OPENAL_INCLUDE_DIR, where to find the headers
6+
#
7+
# $OPENALDIR is an environment variable that would
8+
# correspond to the ./configure --prefix=$OPENALDIR
9+
# used in building OpenAL.
10+
#
11+
# Created by Eric Wing. This was influenced by the FindSDL.cmake module.
12+
13+
# This makes the presumption that you are include al.h like
14+
# #include "al.h"
15+
# and not
16+
# #include <AL/al.h>
17+
# The reason for this is that the latter is not entirely portable.
18+
# Windows/Creative Labs does not by default put their headers in AL/ and
19+
# OS X uses the convention <OpenAL/al.h>.
20+
#
21+
# For Windows, Creative Labs seems to have added a registry key for their
22+
# OpenAL 1.1 installer. I have added that key to the list of search paths,
23+
# however, the key looks like it could be a little fragile depending on
24+
# if they decide to change the 1.00.0000 number for bug fix releases.
25+
# Also, they seem to have laid down groundwork for multiple library platforms
26+
# which puts the library in an extra subdirectory. Currently there is only
27+
# Win32 and I have hardcoded that here. This may need to be adjusted as
28+
# platforms are introduced.
29+
# The OpenAL 1.0 installer doesn't seem to have a useful key I can use.
30+
# I do not know if the Nvidia OpenAL SDK has a registry key.
31+
#
32+
# For OS X, remember that OpenAL was added by Apple in 10.4 (Tiger).
33+
# To support the framework, I originally wrote special framework detection
34+
# code in this module which I have now removed with CMake's introduction
35+
# of native support for frameworks.
36+
# In addition, OpenAL is open source, and it is possible to compile on Panther.
37+
# Furthermore, due to bugs in the initial OpenAL release, and the
38+
# transition to OpenAL 1.1, it is common to need to override the built-in
39+
# framework.
40+
# Per my request, CMake should search for frameworks first in
41+
# the following order:
42+
# ~/Library/Frameworks/OpenAL.framework/Headers
43+
# /Library/Frameworks/OpenAL.framework/Headers
44+
# /System/Library/Frameworks/OpenAL.framework/Headers
45+
#
46+
# On OS X, this will prefer the Framework version (if found) over others.
47+
# People will have to manually change the cache values of
48+
# OPENAL_LIBRARY to override this selection or set the CMake environment
49+
# CMAKE_INCLUDE_PATH to modify the search paths.
50+
51+
FIND_PATH(OPENAL_INCLUDE_DIR al.h
52+
PATHS
53+
$ENV{OPENALDIR}
54+
NO_DEFAULT_PATH
55+
PATH_SUFFIXES include/AL include/OpenAL include
56+
)
57+
58+
FIND_PATH(OPENAL_INCLUDE_DIR al.h
59+
PATHS
60+
~/Library/Frameworks
61+
/Library/Frameworks
62+
/usr/local
63+
/usr
64+
/sw # Fink
65+
/opt/local # DarwinPorts
66+
/opt/csw # Blastwave
67+
/opt
68+
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Creative\ Labs\\OpenAL\ 1.1\ Software\ Development\ Kit\\1.00.0000;InstallDir]
69+
PATH_SUFFIXES include/AL include/OpenAL include
70+
)
71+
72+
FIND_LIBRARY(OPENAL_LIBRARY
73+
NAMES OpenAL al openal OpenAL32
74+
PATHS
75+
$ENV{OPENALDIR}
76+
NO_DEFAULT_PATH
77+
PATH_SUFFIXES lib64 lib libs64 libs libs/Win32 libs/Win64
78+
)
79+
80+
FIND_LIBRARY(OPENAL_LIBRARY
81+
NAMES OpenAL al openal OpenAL32
82+
PATHS
83+
~/Library/Frameworks
84+
/Library/Frameworks
85+
/usr/local
86+
/usr
87+
/sw
88+
/opt/local
89+
/opt/csw
90+
/opt
91+
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Creative\ Labs\\OpenAL\ 1.1\ Software\ Development\ Kit\\1.00.0000;InstallDir]
92+
PATH_SUFFIXES lib64 lib libs64 libs libs/Win32 libs/Win64
93+
)
94+
95+
96+
SET(OPENAL_FOUND "NO")
97+
IF(OPENAL_LIBRARY AND OPENAL_INCLUDE_DIR)
98+
SET(OPENAL_FOUND "YES")
99+
ENDIF(OPENAL_LIBRARY AND OPENAL_INCLUDE_DIR)
100+

0 commit comments

Comments
 (0)