Skip to content

Commit e4faf5e

Browse files
committed
cmake: configure external subprojects in different directory
(This avoid in-tree builds of external projects when doing in-tree SDL builds)
1 parent eea2ebb commit e4faf5e

File tree

1 file changed

+10
-10
lines changed

1 file changed

+10
-10
lines changed

CMakeLists.txt

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -405,7 +405,7 @@ if(SDLMIXER_OGG)
405405
set(INSTALL_CMAKE_PACKAGE_MODULE FALSE)
406406
set(BUILD_TESTING OFF)
407407
sdl_check_project_in_subfolder(external/ogg ogg SDLMIXER_VENDORED)
408-
add_subdirectory(external/ogg EXCLUDE_FROM_ALL)
408+
add_subdirectory(external/ogg external/ogg-build EXCLUDE_FROM_ALL)
409409
if(SDLMIXER_OGG_install)
410410
list(APPEND INSTALL_EXTRA_TARGETS ogg)
411411
endif()
@@ -425,15 +425,15 @@ if(SDLMIXER_OPUS)
425425
set(BUILD_SHARED_LIBS ${SDLMIXER_OPUS_SHARED})
426426
set(BUILD_PROGRAMS OFF)
427427
sdl_check_project_in_subfolder(external/opus opus SDLMIXER_VENDORED)
428-
add_subdirectory(external/opus EXCLUDE_FROM_ALL)
428+
add_subdirectory(external/opus external/opus-build EXCLUDE_FROM_ALL)
429429

430430
set(OP_DISABLE_DOCS TRUE)
431431
set(OP_DISABLE_EXAMPLES TRUE)
432432
set(OP_DISABLE_HTTP TRUE)
433433
message(STATUS "Using vendored opusfile")
434434
set(BUILD_SHARED_LIBS ${SDLMIXER_OPUS_SHARED})
435435
sdl_check_project_in_subfolder(external/opusfile opusfile SDLMIXER_VENDORED)
436-
add_subdirectory(external/opusfile EXCLUDE_FROM_ALL)
436+
add_subdirectory(external/opusfile external/opusfile-build EXCLUDE_FROM_ALL)
437437
if(MSVC)
438438
set_property(TARGET opusfile PROPERTY WINDOWS_EXPORT_ALL_SYMBOLS TRUE)
439439
endif()
@@ -507,7 +507,7 @@ if(SDLMIXER_VORBIS_TREMOR)
507507
message(STATUS "Using vendored tremor")
508508
set(BUILD_SHARED_LIBS ${SDLMIXER_VORBIS_TREMOR_SHARED})
509509
sdl_check_project_in_subfolder(external/tremor tremor SDLMIXER_VENDORED)
510-
add_subdirectory(external/tremor EXCLUDE_FROM_ALL)
510+
add_subdirectory(external/tremor external/tremor-build EXCLUDE_FROM_ALL)
511511
if(NOT TARGET tremor::tremor)
512512
add_library(tremor::tremor ALIAS vorbisidec)
513513
endif()
@@ -568,7 +568,7 @@ if(SDLMIXER_VORBIS_VORBISFILE)
568568
message(STATUS "Using vendored vorbis + vorbisfile")
569569
set(BUILD_SHARED_LIBS ${SDLMIXER_VORBIS_VORBISFILE_SHARED})
570570
sdl_check_project_in_subfolder(external/vorbis vorbisfile SDLMIXER_VENDORED)
571-
add_subdirectory(external/vorbis EXCLUDE_FROM_ALL)
571+
add_subdirectory(external/vorbis external/vorbis-build EXCLUDE_FROM_ALL)
572572
if(NOT TARGET Vorbis::vorbisfile)
573573
add_library(Vorbis::vorbisfile ALIAS vorbisfile)
574574
endif()
@@ -634,7 +634,7 @@ if(SDLMIXER_FLAC_LIBFLAC)
634634
set(INSTALL_MANPAGES OFF)
635635
message(STATUS "Using vendored libflac")
636636
sdl_check_project_in_subfolder(external/flac libflac SDLMIXER_VENDORED)
637-
add_subdirectory(external/flac EXCLUDE_FROM_ALL)
637+
add_subdirectory(external/flac external/flac-build EXCLUDE_FROM_ALL)
638638
if(SDLMIXER_FLAC_LIBFLAC_SHARED OR NOT SDLMIXER_BUILD_SHARED_LIBS)
639639
list(APPEND INSTALL_EXTRA_TARGETS FLAC)
640640
endif()
@@ -706,7 +706,7 @@ if(SDLMIXER_GME)
706706
message(STATUS "Using vendored libgme")
707707
sdl_check_project_in_subfolder(external/libgme libgme SDLMIXER_VENDORED)
708708
enable_language(CXX)
709-
add_subdirectory(external/libgme EXCLUDE_FROM_ALL)
709+
add_subdirectory(external/libgme external/libgme-build EXCLUDE_FROM_ALL)
710710
if(SDLMIXER_GME_SHARED OR NOT SDLMIXER_BUILD_SHARED_LIBS)
711711
list(APPEND INSTALL_EXTRA_TARGETS ${tgt_gme})
712712
endif()
@@ -764,7 +764,7 @@ if(SDLMIXER_MOD_XMP)
764764
set(tgt_xmp xmp_static)
765765
endif()
766766
set(xmp_name libxmp)
767-
add_subdirectory(external/libxmp EXCLUDE_FROM_ALL)
767+
add_subdirectory(external/libxmp external/libxmp-build EXCLUDE_FROM_ALL)
768768
if(SDLMIXER_MOD_XMP_SHARED OR NOT SDLMIXER_BUILD_SHARED_LIBS)
769769
list(APPEND INSTALL_EXTRA_TARGETS ${tgt_xmp})
770770
endif()
@@ -848,7 +848,7 @@ if(SDLMIXER_MP3_MPG123)
848848
set(BUILD_LIBOUT123 FALSE)
849849
set(BUILD_PROGRAMS OFF)
850850
set(BUILD_SHARED_LIBS "${SDLMIXER_MP3_MPG123_SHARED}")
851-
add_subdirectory(external/mpg123/ports/cmake EXCLUDE_FROM_ALL)
851+
add_subdirectory(external/mpg123/ports/cmake external/libmpg123-build/ports/cmake EXCLUDE_FROM_ALL)
852852
if(NOT TARGET MPG123::libmpg123)
853853
add_library(MPG123::libmpg123 ALIAS libmpg123)
854854
endif()
@@ -1009,7 +1009,7 @@ if(SDLMIXER_WAVPACK)
10091009
set(WAVPACK_BUILD_WINAMP_PLUGIN OFF)
10101010
set(WAVPACK_BUILD_DOCS OFF)
10111011
set(BUILD_SHARED_LIBS "${SDLMIXER_WAVPACK_SHARED}")
1012-
add_subdirectory(external/wavpack EXCLUDE_FROM_ALL)
1012+
add_subdirectory(external/wavpack external/wavpack-build EXCLUDE_FROM_ALL)
10131013
if(SDLMIXER_WAVPACK_SHARED OR NOT SDLMIXER_BUILD_SHARED_LIBS)
10141014
list(APPEND INSTALL_EXTRA_TARGETS wavpack)
10151015
endif()

0 commit comments

Comments
 (0)