Skip to content

Commit 58ad503

Browse files
CMake: unified config for Windows/Linux/macOS
1 parent c0e1a57 commit 58ad503

File tree

3 files changed

+35
-55
lines changed

3 files changed

+35
-55
lines changed

CMakeLists.txt

Lines changed: 31 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,7 @@ include_directories(
1414
src
1515
src/OpenAL
1616
libs
17-
libs/libogg/include
1817
libs/libmodplug/src
19-
libs/flac/include
20-
libs/monkey-audio
21-
libs/libopus/include
22-
libs/libopusfile/include
2318
)
2419

2520
set(SRC_FILES
@@ -89,58 +84,46 @@ set(INSTALL_PKGCONFIG_MODULES OFF CACHE BOOL "")
8984
set(WITH_OGG ON CACHE BOOL "")
9085

9186
add_subdirectory(libs/monkey-audio EXCLUDE_FROM_ALL)
87+
add_subdirectory(libs/libogg EXCLUDE_FROM_ALL)
88+
add_subdirectory(libs/libvorbis EXCLUDE_FROM_ALL)
89+
add_subdirectory(libs/flac EXCLUDE_FROM_ALL) # Flac adds ligogg
90+
add_subdirectory(libs/libmodplug EXCLUDE_FROM_ALL)
91+
add_subdirectory(libs/libopus EXCLUDE_FROM_ALL)
92+
add_subdirectory(libs/libopusfile EXCLUDE_FROM_ALL)
9293

9394
if(MSVC OR APPLE)
94-
add_subdirectory(libs/libogg EXCLUDE_FROM_ALL)
95-
add_subdirectory(libs/libvorbis EXCLUDE_FROM_ALL)
96-
add_subdirectory(libs/flac EXCLUDE_FROM_ALL) # Flac adds ligogg
97-
add_subdirectory(libs/libmodplug EXCLUDE_FROM_ALL)
98-
add_subdirectory(libs/libopus EXCLUDE_FROM_ALL)
99-
add_subdirectory(libs/libopusfile EXCLUDE_FROM_ALL)
10095
target_compile_definitions(FLAC PRIVATE "PACKAGE_VERSION=\"1.5.0\"")
10196
target_compile_definitions(FLAC PRIVATE "FLAC__HAS_OGG=1")
97+
target_compile_definitions(FLAC PRIVATE "HAVE_LROUND=1")
98+
target_compile_definitions(FLAC PRIVATE "HAVE_FSEEKO=1")
99+
target_compile_definitions(FLAC PRIVATE "HAVE_STDINT_H=1")
100+
endif()
101+
102+
if(UNIX)
103+
find_package(OpenAL REQUIRED)
104+
target_compile_options(FLAC PRIVATE -Wno-undef)
105+
target_compile_options(modplug PRIVATE -Wno-deprecated-declarations -Wno-unused-result -Wno-address)
106+
target_compile_options(monkeyaudio PRIVATE -Wno-deprecated-declarations)
107+
target_compile_options(opus PRIVATE -Wno-unused-but-set-variable)
108+
target_compile_options(opusfile PRIVATE -Wno-maybe-uninitialized)
102109
target_link_libraries(portamp
103-
Ogg::ogg
104-
vorbis
105-
vorbisfile
106-
modplug
107-
FLAC
108-
monkeyaudio
109-
Opus::opus
110-
OpusFile::opusfile
111-
)
112-
if(APPLE)
113-
target_compile_definitions(FLAC PRIVATE "HAVE_LROUND=1")
114-
target_compile_definitions(FLAC PRIVATE "HAVE_FSEEKO=1")
115-
target_compile_options(FLAC PRIVATE -Wno-undef)
116-
target_compile_options(modplug PRIVATE -Wno-deprecated-declarations)
117-
target_compile_options(monkeyaudio PRIVATE -Wno-deprecated-declarations)
118-
target_compile_options(opus PRIVATE -Wno-unused-but-set-variable)
119-
include_directories(/usr/local/include)
120-
find_package(OpenAL REQUIRED)
121-
target_link_libraries(portamp
122-
dl
123-
pthread
124-
"${OPENAL_LIBRARY}"
125-
)
126-
endif()
127-
else()
128-
target_link_libraries(portamp
129-
ogg
130-
vorbis
131-
vorbisfile
132-
modplug
133-
FLAC
134-
monkeyaudio
135-
opus
136-
opusfile
137-
pthread
138110
dl
139-
openal
111+
pthread
112+
"${OPENAL_LIBRARY}"
140113
)
141-
include_directories(/usr/local/include)
142114
endif()
143115

116+
target_link_libraries(portamp
117+
Ogg::ogg
118+
vorbis
119+
vorbisfile
120+
modplug
121+
FLAC
122+
monkeyaudio
123+
Opus::opus
124+
OpusFile::opusfile
125+
)
126+
144127
if(MSVC)
145128
set_property(TARGET ogg PROPERTY FOLDER ThirdParty)
146129
set_property(TARGET vorbis PROPERTY FOLDER ThirdParty)

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ UNIX build instructions:
4444
------------------------
4545

4646
```
47-
sudo apt-get install libopus-dev libopusfile-dev libflac-dev libopenal-dev libvorbis-dev libmodplug-dev
47+
sudo apt-get install libopenal-dev
4848
mkdir build
4949
cd build
5050
cmake .. -G "Unix Makefiles"

libs/monkey-audio/CMakeLists.txt

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,6 @@ else()
88
ADD_DEFINITIONS(-O2)
99
endif()
1010

11-
include_directories(
12-
.
13-
Assembly
14-
Shared
15-
)
16-
1711
set(SRC_FILES
1812
APECompress.cpp
1913
APECompressCore.cpp
@@ -68,3 +62,6 @@ set(HEADER_FILES
6862
)
6963

7064
add_library(monkeyaudio ${SRC_FILES} ${HEADER_FILES})
65+
66+
target_include_directories(monkeyaudio PUBLIC .)
67+
target_include_directories(monkeyaudio PRIVATE Assembly Shared)

0 commit comments

Comments
 (0)