aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2012-08-16 10:12:50 -0700
committerChris Robinson <[email protected]>2012-08-16 10:12:50 -0700
commit147fd9de4eeba24fc6e80d78cf9beedf51b0d6d9 (patch)
tree2e1b1eaeef4a4a3bf1feb0d7ef5b2dbc617c19d8
parent0bca771a88f83e77cd6a5eb04757125b4fa5dc6c (diff)
Avoid dynamic handling of libsndio
This makes it safer and easier to handle as OpenBSD updates it
-rw-r--r--Alc/backends/sndio.c81
-rw-r--r--CMakeLists.txt10
2 files changed, 3 insertions, 88 deletions
diff --git a/Alc/backends/sndio.c b/Alc/backends/sndio.c
index 18636786..1d1c512c 100644
--- a/Alc/backends/sndio.c
+++ b/Alc/backends/sndio.c
@@ -33,84 +33,8 @@
static const ALCchar sndio_device[] = "SndIO Default";
-#ifdef HAVE_DYNLOAD
-static void *sndio_handle;
-#define MAKE_FUNC(x) static typeof(x) * p##x
-MAKE_FUNC(sio_initpar);
-MAKE_FUNC(sio_open);
-MAKE_FUNC(sio_close);
-MAKE_FUNC(sio_setpar);
-MAKE_FUNC(sio_getpar);
-MAKE_FUNC(sio_getcap);
-MAKE_FUNC(sio_onmove);
-MAKE_FUNC(sio_write);
-MAKE_FUNC(sio_read);
-MAKE_FUNC(sio_start);
-MAKE_FUNC(sio_stop);
-MAKE_FUNC(sio_nfds);
-MAKE_FUNC(sio_pollfd);
-MAKE_FUNC(sio_revents);
-MAKE_FUNC(sio_eof);
-MAKE_FUNC(sio_setvol);
-MAKE_FUNC(sio_onvol);
-
-#define sio_initpar psio_initpar
-#define sio_open psio_open
-#define sio_close psio_close
-#define sio_setpar psio_setpar
-#define sio_getpar psio_getpar
-#define sio_getcap psio_getcap
-#define sio_onmove psio_onmove
-#define sio_write psio_write
-#define sio_read psio_read
-#define sio_start psio_start
-#define sio_stop psio_stop
-#define sio_nfds psio_nfds
-#define sio_pollfd psio_pollfd
-#define sio_revents psio_revents
-#define sio_eof psio_eof
-#define sio_setvol psio_setvol
-#define sio_onvol psio_onvol
-#endif
-
-
static ALCboolean sndio_load(void)
{
-#ifdef HAVE_DYNLOAD
- if(!sndio_handle)
- {
- sndio_handle = LoadLib("libsndio.so.2");
- if(!sndio_handle)
- return ALC_FALSE;
-
-#define LOAD_FUNC(f) do { \
- p##f = GetSymbol(sndio_handle, #f); \
- if(p##f == NULL) { \
- CloseLib(sndio_handle); \
- sndio_handle = NULL; \
- return ALC_FALSE; \
- } \
-} while(0)
- LOAD_FUNC(sio_initpar);
- LOAD_FUNC(sio_open);
- LOAD_FUNC(sio_close);
- LOAD_FUNC(sio_setpar);
- LOAD_FUNC(sio_getpar);
- LOAD_FUNC(sio_getcap);
- LOAD_FUNC(sio_onmove);
- LOAD_FUNC(sio_write);
- LOAD_FUNC(sio_read);
- LOAD_FUNC(sio_start);
- LOAD_FUNC(sio_stop);
- LOAD_FUNC(sio_nfds);
- LOAD_FUNC(sio_pollfd);
- LOAD_FUNC(sio_revents);
- LOAD_FUNC(sio_eof);
- LOAD_FUNC(sio_setvol);
- LOAD_FUNC(sio_onvol);
-#undef LOAD_FUNC
- }
-#endif
return ALC_TRUE;
}
@@ -352,11 +276,6 @@ ALCboolean alc_sndio_init(BackendFuncs *func_list)
void alc_sndio_deinit(void)
{
-#ifdef HAVE_DYNLOAD
- if(sndio_handle)
- CloseLib(sndio_handle);
- sndio_handle = NULL;
-#endif
}
void alc_sndio_probe(enum DevProbe type)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index c8ecfd8f..0634e4eb 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -560,15 +560,11 @@ IF(SNDIO)
CHECK_INCLUDE_FILE(sndio.h HAVE_SNDIO_H)
IF(HAVE_SNDIO_H)
CHECK_SHARED_FUNCTION_EXISTS(sio_open "sndio.h" sndio "" HAVE_LIBSNDIO)
- IF(HAVE_LIBSNDIO OR HAVE_DLFCN_H OR WIN32)
+ IF(HAVE_LIBSNDIO)
SET(HAVE_SNDIO 1)
SET(ALC_OBJS ${ALC_OBJS} Alc/backends/sndio.c)
- IF(HAVE_DLFCN_H OR WIN32)
- SET(BACKENDS "${BACKENDS} SndIO,")
- ELSE()
- SET(BACKENDS "${BACKENDS} SndIO \(linked\),")
- SET(EXTRA_LIBS sndio ${EXTRA_LIBS})
- ENDIF()
+ SET(BACKENDS "${BACKENDS} SndIO \(linked\),")
+ SET(EXTRA_LIBS sndio ${EXTRA_LIBS})
ENDIF()
ENDIF()
ENDIF()