diff options
author | Chris Robinson <[email protected]> | 2012-08-16 10:12:50 -0700 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2012-08-16 10:12:50 -0700 |
commit | 147fd9de4eeba24fc6e80d78cf9beedf51b0d6d9 (patch) | |
tree | 2e1b1eaeef4a4a3bf1feb0d7ef5b2dbc617c19d8 | |
parent | 0bca771a88f83e77cd6a5eb04757125b4fa5dc6c (diff) |
Avoid dynamic handling of libsndio
This makes it safer and easier to handle as OpenBSD updates it
-rw-r--r-- | Alc/backends/sndio.c | 81 | ||||
-rw-r--r-- | CMakeLists.txt | 10 |
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() |