Skip to content

Commit 1370067

Browse files
committed
CMake: Move dependency options to their own file.
Avoids cluttering the top of the main CMakeLists.
1 parent 73b350b commit 1370067

File tree

2 files changed

+37
-34
lines changed

2 files changed

+37
-34
lines changed

prboom2/CMakeLists.txt

Lines changed: 3 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,9 @@
11
cmake_minimum_required(VERSION 3.9)
22

3-
option(WITH_XMP "Use libxmp if available" ON)
4-
if(WITH_XMP)
5-
list(APPEND VCPKG_MANIFEST_FEATURES "libxmp")
6-
endif()
7-
8-
option(WITH_FLUIDSYNTH "Use FluidSynth if available" ON)
9-
if(WITH_FLUIDSYNTH)
10-
list(APPEND VCPKG_MANIFEST_FEATURES "fluidsynth")
11-
endif()
12-
13-
option(WITH_IMAGE "Use SDL2_image if available" ON)
14-
if(WITH_IMAGE)
15-
list(APPEND VCPKG_MANIFEST_FEATURES "sdl2-image")
16-
endif()
17-
18-
option(WITH_MAD "Use libmad if available" ON)
19-
if(WITH_MAD)
20-
list(APPEND VCPKG_MANIFEST_FEATURES "libmad")
21-
endif()
3+
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake")
224

23-
option(WITH_PORTMIDI "Use PortMidi if available" ON)
24-
if(WITH_PORTMIDI)
25-
list(APPEND VCPKG_MANIFEST_FEATURES "portmidi")
26-
endif()
27-
28-
option(WITH_VORBISFILE "Use vorbisfile if available" ON)
29-
if(WITH_VORBISFILE)
30-
list(APPEND VCPKG_MANIFEST_FEATURES "libvorbis")
31-
endif()
32-
33-
# Automatically install dependencies
34-
set(CMAKE_POLICY_DEFAULT_CMP0077 NEW)
35-
set(X_VCPKG_APPLOCAL_DEPS_INSTALL TRUE)
5+
# Setup dependencies options before `project()` so vcpkg features can be used
6+
include(DsdaDepsSetup)
367

378
project("dsda-doom" VERSION 0.29.3)
389

@@ -47,8 +18,6 @@ if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
4718
"Debug" "Release" "MinSizeRel" "RelWithDebInfo")
4819
endif()
4920

50-
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
51-
5221
include(GNUInstallDirs)
5322

5423
if(POLICY CMP0099)

prboom2/cmake/DsdaDepsSetup.cmake

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
option(WITH_FLUIDSYNTH "Use FluidSynth if available" ON)
2+
if(WITH_FLUIDSYNTH)
3+
list(APPEND VCPKG_MANIFEST_FEATURES "fluidsynth")
4+
endif()
5+
6+
option(WITH_IMAGE "Use SDL2_image if available" ON)
7+
if(WITH_IMAGE)
8+
list(APPEND VCPKG_MANIFEST_FEATURES "sdl2-image")
9+
endif()
10+
11+
option(WITH_MAD "Use libmad if available" ON)
12+
if(WITH_MAD)
13+
list(APPEND VCPKG_MANIFEST_FEATURES "libmad")
14+
endif()
15+
16+
option(WITH_PORTMIDI "Use PortMidi if available" ON)
17+
if(WITH_PORTMIDI)
18+
list(APPEND VCPKG_MANIFEST_FEATURES "portmidi")
19+
endif()
20+
21+
option(WITH_VORBISFILE "Use vorbisfile if available" ON)
22+
if(WITH_VORBISFILE)
23+
list(APPEND VCPKG_MANIFEST_FEATURES "libvorbis")
24+
endif()
25+
26+
option(WITH_XMP "Use libxmp if available" ON)
27+
if(WITH_XMP)
28+
list(APPEND VCPKG_MANIFEST_FEATURES "libxmp")
29+
endif()
30+
31+
if(CMAKE_TOOLCHAIN_FILE MATCHES "vcpkg.cmake$")
32+
option(VCPKG_APPLOCAL_DEPS "Copy dependencies in the output directory" ON)
33+
option(X_VCPKG_APPLOCAL_DEPS_INSTALL "Copy dependencies during installation" ON)
34+
endif()

0 commit comments

Comments
 (0)