blob: 7935a87f3a8a6ba032cb9682aaa05ba68d6068cb (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
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)
|