diff options
Diffstat (limited to 'platform')
-rw-r--r-- | platform/x11/detect.py | 13 | ||||
-rw-r--r-- | platform/x11/os_x11.cpp | 9 | ||||
-rw-r--r-- | platform/x11/os_x11.h | 5 | ||||
-rw-r--r-- | platform/x11/platform_config.h | 2 |
4 files changed, 22 insertions, 7 deletions
diff --git a/platform/x11/detect.py b/platform/x11/detect.py index 5171bc972d..6c1ca670f0 100644 --- a/platform/x11/detect.py +++ b/platform/x11/detect.py @@ -1,6 +1,7 @@ import os import sys +import platform def is_active(): @@ -115,10 +116,14 @@ def configure(env): env.ParseConfig('pkg-config freetype2 --cflags --libs') env.Append(CCFLAGS=['-DFREETYPE_ENABLED']) - - env.Append(CPPFLAGS=['-DOPENGL_ENABLED','-DGLEW_ENABLED']) - env.Append(CPPFLAGS=["-DALSA_ENABLED"]) + env.Append(CPPFLAGS=['-DOPENGL_ENABLED','-DGLEW_ENABLED']) + if platform.platform() == 'Linux': + env.Append(CPPFLAGS=["-DALSA_ENABLED"]) + env.Append(LIBS=['asound']) + if env['ao'] == 'yes': + env.ParseConfig('pkg-config ao --cflags --libs') + env.Append(CPPFLAGS=['-DAO_ENABLED']) if (env["pulseaudio"]=="yes"): if not os.system("pkg-config --exists libpulse-simple"): print("Enabling PulseAudio") @@ -128,7 +133,7 @@ def configure(env): print("PulseAudio development libraries not found, disabling driver") env.Append(CPPFLAGS=['-DX11_ENABLED','-DUNIX_ENABLED','-DGLES2_ENABLED','-DGLES_OVER_GL']) - env.Append(LIBS=['GL', 'GLU', 'pthread','asound','z']) #TODO detect linux/BSD! + env.Append(LIBS=['GL', 'GLU', 'pthread', 'z']) #env.Append(CPPFLAGS=['-DMPC_FIXED_POINT']) #host compiler is default.. diff --git a/platform/x11/os_x11.cpp b/platform/x11/os_x11.cpp index a40af8d2a9..156bdb8330 100644 --- a/platform/x11/os_x11.cpp +++ b/platform/x11/os_x11.cpp @@ -32,6 +32,7 @@ #include "key_mapping_x11.h" #include <stdio.h> #include <stdlib.h> +#include <string.h> #include "print_string.h" #include "servers/physics/physics_server_sw.h" @@ -1188,7 +1189,7 @@ void OS_X11::close_joystick(int p_id) { }; void OS_X11::probe_joystick(int p_id) { - #ifndef __FreeBSD__ + #if !defined(__FreeBSD__) && !defined(__OpenBSD__) if (p_id == -1) { @@ -1243,7 +1244,7 @@ void OS_X11::move_window_to_foreground() { } void OS_X11::process_joysticks() { - #ifndef __FreeBSD__ + #if !defined(__FreeBSD__) && !defined(__OpenBSD__) int bytes; js_event events[32]; InputEvent ievent; @@ -1465,6 +1466,10 @@ OS_X11::OS_X11() { AudioDriverManagerSW::add_driver(&driver_alsa); #endif +#ifdef AO_ENABLED + AudioDriverManagerSW::add_driver(&driver_ao); +#endif + minimized = false; xim_style=NULL; mouse_mode=MOUSE_MODE_VISIBLE; diff --git a/platform/x11/os_x11.h b/platform/x11/os_x11.h index dd2476ec1b..d501f44f24 100644 --- a/platform/x11/os_x11.h +++ b/platform/x11/os_x11.h @@ -43,6 +43,7 @@ #include "servers/spatial_sound_2d/spatial_sound_2d_server_sw.h" #include "drivers/rtaudio/audio_driver_rtaudio.h" #include "drivers/alsa/audio_driver_alsa.h" +#include "drivers/ao/audio_driver_ao.h" #include "drivers/pulseaudio/audio_driver_pulseaudio.h" #include "servers/physics_2d/physics_2d_server_sw.h" @@ -130,6 +131,10 @@ class OS_X11 : public OS_Unix { AudioDriverALSA driver_alsa; #endif +#ifdef AO_ENABLED + AudioDriverAO driver_ao; +#endif + #ifdef PULSEAUDIO_ENABLED AudioDriverPulseAudio driver_pulseaudio; #endif diff --git a/platform/x11/platform_config.h b/platform/x11/platform_config.h index f372f8c2cb..4ec87b9a97 100644 --- a/platform/x11/platform_config.h +++ b/platform/x11/platform_config.h @@ -29,7 +29,7 @@ #ifdef __linux__ #include <alloca.h> #endif -#ifdef __FreeBSD__ +#if defined(__FreeBSD__) || defined(__OpenBSD__) #include <stdlib.h> #endif |