nocompileOggVorbisFLACLAMEmpg123whnnusesys sndfile

This commit is contained in:
tildearrow 2025-10-23 19:15:15 -05:00
parent af6eb35f2d
commit a66584d70c

View file

@ -283,41 +283,9 @@ if (BUILD_GUI AND USE_FREETYPE)
endif()
# Opus is mandatory
# TODO: disable the rest for release build
set(OPUS_X86_MAY_HAVE_AVX2 OFF CACHE BOOL "Enable AVX2 for Opus" FORCE)
add_subdirectory(extern/opus EXCLUDE_FROM_ALL)
if (WITH_OGG)
list(APPEND DEPENDENCIES_DEFINES HAVE_OGG)
# TODO: system Ogg/Vorbis
set(OGG_INCLUDE_DIR extern/libogg/include CACHE STRING "Ogg include dir" FORCE)
set(OGG_LIBRARY Ogg::ogg CACHE STRING "Ogg library" FORCE)
set(Vorbis_Vorbis_INCLUDE_DIR extern/libvorbis/include CACHE STRING "Vorbis include dir" FORCE)
set(Vorbis_Enc_INCLUDE_DIR extern/libvorbis/include CACHE STRING "Vorbis enc include dir" FORCE)
set(Vorbis_File_INCLUDE_DIR extern/libvorbis/include CACHE STRING "Vorbis file include dir" FORCE)
set(Vorbis_Vorbis_LIBRARY Vorbis::vorbis CACHE STRING "Vorbis library" FORCE)
set(Vorbis_Enc_LIBRARY Vorbis::enc CACHE STRING "Vorbis enc library" FORCE)
set(Vorbis_File_LIBRARY Vorbis::file CACHE STRING "Vorbis file library" FORCE)
set(FLAC_INCLUDE_DIR extern/flac/include CACHE STRING "FLAC include dir" FORCE)
set(FLAC_LIBRARY FLAC CACHE STRING "FLAC library" FORCE)
set(OPUS_INCLUDE_DIR extern/opus/include CACHE STRING "Opus include dir" FORCE)
set(OPUS_LIBRARY opus CACHE STRING "Opus library" FORCE)
add_subdirectory(extern/libogg EXCLUDE_FROM_ALL)
add_subdirectory(extern/libvorbis EXCLUDE_FROM_ALL)
add_subdirectory(extern/flac EXCLUDE_FROM_ALL)
endif()
if (WITH_MPEG)
list(APPEND DEPENDENCIES_DEFINES HAVE_MP3_EXPORT)
# why do I have to provide an absolute path?
set(MP3LAME_INCLUDE_DIR extern/lame/include CACHE STRING "LAME include dir" FORCE)
set(MP3LAME_LIBRARY mp3lame CACHE STRING "LAME library" FORCE)
add_subdirectory(extern/lame EXCLUDE_FROM_ALL)
add_subdirectory(extern/mpg123 EXCLUDE_FROM_ALL)
set(mpg123_INCLUDE_DIR extern/mpg123/src/include CACHE STRING "mpg123 include dir" FORCE)
set(mpg123_LIBRARY mpg123 CACHE STRING "mpg123 library" FORCE)
endif()
if (USE_SNDFILE)
list(APPEND DEPENDENCIES_DEFINES HAVE_SNDFILE)
if (SYSTEM_LIBSNDFILE)
@ -331,6 +299,37 @@ if (USE_SNDFILE)
list(APPEND DEPENDENCIES_LEGACY_LDFLAGS ${LIBSNDFILE_LDFLAGS})
message(STATUS "Using system-installed libsndfile")
else()
# Ogg, Vorbis, FLAC and MP3
if (WITH_OGG)
list(APPEND DEPENDENCIES_DEFINES HAVE_OGG)
set(OGG_INCLUDE_DIR extern/libogg/include CACHE STRING "Ogg include dir" FORCE)
set(OGG_LIBRARY Ogg::ogg CACHE STRING "Ogg library" FORCE)
set(Vorbis_Vorbis_INCLUDE_DIR extern/libvorbis/include CACHE STRING "Vorbis include dir" FORCE)
set(Vorbis_Enc_INCLUDE_DIR extern/libvorbis/include CACHE STRING "Vorbis enc include dir" FORCE)
set(Vorbis_File_INCLUDE_DIR extern/libvorbis/include CACHE STRING "Vorbis file include dir" FORCE)
set(Vorbis_Vorbis_LIBRARY Vorbis::vorbis CACHE STRING "Vorbis library" FORCE)
set(Vorbis_Enc_LIBRARY Vorbis::enc CACHE STRING "Vorbis enc library" FORCE)
set(Vorbis_File_LIBRARY Vorbis::file CACHE STRING "Vorbis file library" FORCE)
set(FLAC_INCLUDE_DIR extern/flac/include CACHE STRING "FLAC include dir" FORCE)
set(FLAC_LIBRARY FLAC CACHE STRING "FLAC library" FORCE)
set(OPUS_INCLUDE_DIR extern/opus/include CACHE STRING "Opus include dir" FORCE)
set(OPUS_LIBRARY opus CACHE STRING "Opus library" FORCE)
add_subdirectory(extern/libogg EXCLUDE_FROM_ALL)
add_subdirectory(extern/libvorbis EXCLUDE_FROM_ALL)
add_subdirectory(extern/flac EXCLUDE_FROM_ALL)
endif()
if (WITH_MPEG)
list(APPEND DEPENDENCIES_DEFINES HAVE_MP3_EXPORT)
set(MP3LAME_INCLUDE_DIR extern/lame/include CACHE STRING "LAME include dir" FORCE)
set(MP3LAME_LIBRARY mp3lame CACHE STRING "LAME library" FORCE)
add_subdirectory(extern/lame EXCLUDE_FROM_ALL)
add_subdirectory(extern/mpg123 EXCLUDE_FROM_ALL)
set(mpg123_INCLUDE_DIR extern/mpg123/src/include CACHE STRING "mpg123 include dir" FORCE)
set(mpg123_LIBRARY mpg123 CACHE STRING "mpg123 library" FORCE)
endif()
# the rest
set(BUILD_TESTING OFF CACHE BOOL "aaaaaa" FORCE)
set(BUILD_PROGRAMS OFF CACHE BOOL "aaa" FORCE)
set(BUILD_EXAMPLES OFF CACHE BOOL "a" FORCE)