diff options
| author | iCatButler <i.am.catbutler@gmail.com> | 2018-03-19 07:39:08 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-03-19 07:39:08 +0000 |
| commit | 6f76041029393c6823973a29426b28c8c2d0b064 (patch) | |
| tree | 13c1bb5215c2510a7c430b59bc22df666cd2fbf3 /plugins/dfsound | |
| parent | 768332417644451d38ce1a737465656c7cc75de3 (diff) | |
| parent | 128d6afb179756513860187cf5e31d84d6d8cac4 (diff) | |
| download | pcsxr-6f76041029393c6823973a29426b28c8c2d0b064.tar.gz | |
Merge pull request #7 from loathingKernel/sync-with-codeplex
Sync with codeplex
Diffstat (limited to 'plugins/dfsound')
| -rw-r--r-- | plugins/dfsound/CMakeLists.txt | 135 | ||||
| -rwxr-xr-x | plugins/dfsound/Makefile.am | 79 | ||||
| -rwxr-xr-x | plugins/dfsound/cfg.c | 4 |
3 files changed, 139 insertions, 79 deletions
diff --git a/plugins/dfsound/CMakeLists.txt b/plugins/dfsound/CMakeLists.txt new file mode 100644 index 00000000..865ddc13 --- /dev/null +++ b/plugins/dfsound/CMakeLists.txt @@ -0,0 +1,135 @@ +message(STATUS "* Configuring dfsound") + +include(GlibCompileResourcesSupport) + +set(SND_BACKEND "sdl" CACHE STRING "Sound backend to use.") +set_property(CACHE SND_BACKEND PROPERTY STRINGS oss alsa pulse sdl openal null) + +#deps + +find_package(GLib REQUIRED) +if(NOT GLib_FOUND) + message(FATAL_ERROR "GLIB2 library not found") +endif(NOT GLib_FOUND) +include_directories(${GLib_INCLUDE_DIRS}) + +find_package(GTK3 REQUIRED) +if(NOT GTK3_FOUND) + message(FATAL_ERROR "GTK3 library not found") +endif(NOT GTK3_FOUND) +include_directories(${GTK3_INCLUDE_DIRS}) +set(GTK_LIBRARIES ${GTK3_LIBRARY} ${GDK3_LIBRARY} ${GDKPixbuf_LIBRARY} ${Pango_LIBRARY} ${Cairo_LIBRARY} ${GObject_LIBRARY} ${GLib_LIBRARY} ${GIO_LIBRARY}) + + +if (${SND_BACKEND} STREQUAL "oss") + find_package(OSS REQUIRED) + include_directories(${OSS_INCLUDE_DIR}) + add_definitions(-DUSEOSS=1) + +elseif (${SND_BACKEND} STREQUAL "alsa") + find_package(ALSA REQUIRED) + include_directories(${ALSA_INCLUDE_DIRS}) + add_definitions(-DUSEALSA=1) + +elseif (${SND_BACKEND} STREQUAL "pulse") + find_package(PulseAudio REQUIRED) + include_directories(${PULSEAUDIO_INCLUDE_DIR}) + add_definitions(-DUSEPULSEAUDIO=1) + +elseif (${SND_BACKEND} STREQUAL "sdl") + find_package(SDL2) + if(NOT SDL2_FOUND) + find_package(SDL) + if(NOT SDL_FOUND) + message(FATAL_ERROR "SDL or SDL2 library not found") + else(NOT SDL_FOUND) + message(STATUS "Using SDL") + include_directories(${SDL_INCLUDE_DIR}) + endif(NOT SDL_FOUND) + else(NOT SDL2_FOUND) + set(USE_SDL2 1) + message(STATUS "Using SDL2") + include_directories(${SDL2_INCLUDE_DIR}) + endif(NOT SDL2_FOUND) + add_definitions(-DUSESDL=1) + +elseif (${SND_BACKEND} STREQUAL "openal") + find_package(OpenAL REQUIRED) + include_directories(${OPENAL_INCLUDE_DIR}) + add_definitions(-DUSEOPENAL=1) +elseif (${SND_BACKEND} STREQUAL "null") + add_definitions(-DUSENULL=1) + +endif() + +find_package(Threads REQUIRED) + +#defs +add_definitions(-DLOCALE_DIR="${CMAKE_INSTALL_FULL_DATAROOTDIR}/locale/" -DPSEMU_DATA_DIR="${CMAKE_INSTALL_FULL_DATAROOTDIR}/psemu" -DDEF_PLUGIN_DIR="${CMAKE_INSTALL_FULL_LIBDIR}/games/psemu") + +#sources +set(PLUGIN_SRCS + adsr.c + cfg.c + dma.c + externals.c + freeze.c + registers.c + reverb.c + spu.c + xa.c +) + +set(GUI_SRCS + spucfg-0.1df/main.c +) + + +#resources +set(RESOURCE_LIST + ${CMAKE_CURRENT_SOURCE_DIR}/spucfg-0.1df/dfsound.ui +) + + +compile_gresources(RESOURCE_FILE + XML_OUT + TYPE EMBED_C + PREFIX /org/pcsxr/dfsound + SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/spucfg-0.1df + RESOURCES ${RESOURCE_LIST}) + +add_custom_target(dfsound_resource DEPENDS ${RESOURCE_FILE}) + +include_directories(${CMAKE_SOURCE_DIR}/libpcsxcore) + +if (${SND_BACKEND} STREQUAL "oss") + add_library(DFSound MODULE ${PLUGIN_SRCS} oss.c) + +elseif (${SND_BACKEND} STREQUAL "alsa") + add_library(DFSound MODULE ${PLUGIN_SRCS} alsa.c) + target_link_libraries(DFSound ${ALSA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT}) + +elseif (${SND_BACKEND} STREQUAL "pulse") + add_library(DFSound MODULE ${PLUGIN_SRCS} pulseaudio.c) + target_link_libraries(DFSound ${PULSEAUDIO_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) + +elseif (${SND_BACKEND} STREQUAL "sdl") + add_library(DFSound MODULE ${PLUGIN_SRCS} sdl.c) + target_link_libraries(DFSound ${SDL_LIBRARY} ${SDL2_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) + +elseif (${SND_BACKEND} STREQUAL "openal") + add_library(DFSound MODULE ${PLUGIN_SRCS} openal.c) + target_link_libraries(DFSound ${OPENAL_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) + +elseif (${SND_BACKEND} STREQUAL "null") + add_library(DFSound MODULE ${PLUGIN_SRCS} nullsnd.c) + +endif() + + +add_executable(cfgDFSound ${GUI_SRCS} ${RESOURCE_FILE}) +add_dependencies(cfgDFSound dfsound_resource) +target_link_libraries(cfgDFSound ${GTK_LIBRARIES}) + +install(TARGETS DFSound LIBRARY DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}/games/psemu) +install(TARGETS cfgDFSound RUNTIME DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}/games/psemu) diff --git a/plugins/dfsound/Makefile.am b/plugins/dfsound/Makefile.am deleted file mode 100755 index 9f8130a1..00000000 --- a/plugins/dfsound/Makefile.am +++ /dev/null @@ -1,79 +0,0 @@ -AM_CPPFLAGS = -I../../include - -bindir = @libdir@/games/psemu/ -libdir = @libdir@/games/psemu/ - -lib_LTLIBRARIES = libDFSound.la - -libDFSound_la_SOURCES = adsr.c adsr.h spu.c spu.h cfg.c cfg.h dma.c dma.h gauss_i.h freeze.c reverb.c reverb.h registers.c registers.h externals.c externals.h dsoundoss.h psemuxa.h regs.h xa.c xa.h stdafx.h - -libDFSound_la_CPPFLAGS = $(AM_CPPFLAGS) -libDFSound_la_LDFLAGS = -module -avoid-version -libDFSound_la_LIBADD = -lpthread -lm - -if SOUND_ALSA -libDFSound_la_SOURCES += alsa.c -libDFSound_la_CPPFLAGS += -DUSEALSA=1 -libDFSound_la_LIBADD += $(ALSA_LIBS) -endif - -if SOUND_OSS -libDFSound_la_SOURCES += oss.c -libDFSound_la_CPPFLAGS += -DUSEOSS=1 -endif - -if SOUND_PULSEAUDIO -libDFSound_la_SOURCES += pulseaudio.c -libDFSound_la_CPPFLAGS += -DUSEPULSEAUDIO=1 $(PULSEAUDIO_CFLAGS) -libDFSound_la_LIBADD += $(PULSEAUDIO_LIBS) -endif - -if SOUND_SDL -libDFSound_la_SOURCES += sdl.c -libDFSound_la_CPPFLAGS += -DUSESDL=1 $(SDL2_CFLAGS) $(SDL_CFLAGS) -libDFSound_la_LIBADD += $(SDL2_LIBS) $(SDL_LIBS) -endif - -if SOUND_OPENAL -libDFSound_la_SOURCES += openal.c -libDFSound_la_CPPFLAGS += -DUSEOPENAL=1 -libDFSound_la_LIBADD += $(OPENAL_LIBS) -endif - -if SOUND_NULL -libDFSound_la_SOURCES += nullsnd.c -libDFSound_la_CPPFLAGS += -DUSENULL=1 -endif - -bin_PROGRAMS = cfgDFSound -cfgDFSound_CPPFLAGS = -DLOCALE_DIR=\"${datadir}/locale/\" \ - -DDATADIR=\"${datadir}/psemu/\" \ - $(GTK3_CFLAGS) $(AM_CPPFLAGS) -cfgDFSound_SOURCES = spucfg-0.1df/main.c GtkResources.c GtkResources.h -cfgDFSound_LDADD = $(GTK3_LIBS) - -# gresource.xml is dynamically generated in CMake. Mirror that here in a static way. -define gresource_xml = -<?xml version="1.0" encoding="UTF-8"?> -<gresources> - <gresource prefix="/org/pcsxr/dfsound"> - <file>dfsound.ui</file> - </gresource> -</gresources> -endef - -dfsound.gresource.xml: - $(file >$@,$(gresource_xml)) -dfsound_gresource: dfsound.gresource.xml - $(shell $(GLIB_COMPILE_RESOURCES) --sourcedir=$(srcdir)/spucfg-0.1df --generate-dependencies $(srcdir)/$<) -GtkResources.c: dfsound.gresource.xml $(dfsound_gresource) - $(AM_V_GEN) $(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=$(srcdir)/spucfg-0.1df --generate-source --c-name dfsound $< -GtkResources.h: dfsound.gresource.xml $(dfsound_gresource) - $(AM_V_GEN) $(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=$(srcdir)/spucfg-0.1df --generate-header --c-name dfsound $< - -#glade_DATA = spucfg-0.1df/dfsound.ui -#gladedir = $(datadir)/psemu/ -EXTRA_DIST = $(glade_DATA) - -CLEANFILES = dfsound.gresource.xml GtkResources.c GtkResources.h - diff --git a/plugins/dfsound/cfg.c b/plugins/dfsound/cfg.c index 0bb2172c..0e1f63fa 100755 --- a/plugins/dfsound/cfg.c +++ b/plugins/dfsound/cfg.c @@ -26,6 +26,10 @@ //////////////////////////////////////////////////////////////////////// #include <unistd.h> +#if defined(__linux__) +#include <sys/types.h> +#include <sys/wait.h> +#endif //////////////////////////////////////////////////////////////////////// // START EXTERNAL CFG TOOL |
