add sdl to cmake via package find

This commit is contained in:
Crylia
2024-03-26 19:51:35 +01:00
parent bcc2c1ffb4
commit 934b10d890
2 changed files with 6 additions and 1 deletions

View File

@@ -27,6 +27,7 @@ pkg_check_modules(LIBAV REQUIRED IMPORTED_TARGET
libavutil libavutil
) )
PKG_SEARCH_MODULE(SDL2 REQUIRED sdl2) PKG_SEARCH_MODULE(SDL2 REQUIRED sdl2)
find_package(SDL2 REQUIRED CONFIG)
file(GLOB_RECURSE PROJECT_SOURCES src/*.cpp) file(GLOB_RECURSE PROJECT_SOURCES src/*.cpp)
file(GLOB_RECURSE PROJECT_HEADERS src/*.h) file(GLOB_RECURSE PROJECT_HEADERS src/*.h)
@@ -47,6 +48,7 @@ target_link_libraries(CryliaPlayer PRIVATE
${SDL_IMAGE_LIBRARY} ${SDL_IMAGE_LIBRARY}
${SDL_MIXER_LIBRARY} ${SDL_MIXER_LIBRARY}
PkgConfig::LIBAV PkgConfig::LIBAV
${SDL2}
) )
install(TARGETS CryliaPlayer install(TARGETS CryliaPlayer

View File

@@ -31,6 +31,9 @@ void Audio::StopMusic( ) {
} }
void Audio::PlaySong(const std::string path) { void Audio::PlaySong(const std::string path) {
if (music)
Mix_FreeMusic(music);
this->path = path; this->path = path;
music = Mix_LoadMUS(path.c_str( )); music = Mix_LoadMUS(path.c_str( ));
@@ -55,7 +58,7 @@ void Audio::ResumeMusic( ) {
} }
bool Audio::IsMusicPlaying( ) { bool Audio::IsMusicPlaying( ) {
return Mix_PlayingMusic( ); return (Mix_PlayingMusic( ) != 0);
} }
std::string Audio::GetTitle( ) { std::string Audio::GetTitle( ) {