mirror of
https://github.com/cemu-project/vcpkg.git
synced 2025-02-22 18:47:09 +01:00
Package sdl2pp (#3430)
* Fix mpg123 build in macOS and Linux, fix sdl2-mixer find mpg123 libarry * Add package sdl2pp * [mpg123] Use Windows logic in Windows Desktop * [sdl2-mixer] Bump package version * [sdl2pp] Use patch instead of replacing CMakeLists.txt. Use vcpkg_from_github()
This commit is contained in:
parent
5fe458d22e
commit
7ad1fcc376
@ -1,3 +1,3 @@
|
||||
Source: mpg123
|
||||
Version: 1.25.8-4
|
||||
Description: mpg123 is a real time MPEG 1.0/2.0/2.5 audio player/decoder for layers 1, 2 and 3 (MPEG 1.0 layer 3 also known as MP3).
|
||||
Version: 1.25.8-5
|
||||
Description: mpg123 is a real time MPEG 1.0/2.0/2.5 audio player/decoder for layers 1, 2 and 3 (MPEG 1.0 layer 3 also known as MP3).
|
||||
|
@ -29,55 +29,128 @@ vcpkg_find_acquire_program(YASM)
|
||||
get_filename_component(YASM_EXE_PATH ${YASM} DIRECTORY)
|
||||
set(ENV{PATH} "$ENV{PATH};${YASM_EXE_PATH}")
|
||||
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PATCHES
|
||||
"${CURRENT_PORT_DIR}/0001-fix-crt-linking.patch"
|
||||
"${CURRENT_PORT_DIR}/0002-fix-x86-build.patch")
|
||||
if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PATCHES
|
||||
"${CURRENT_PORT_DIR}/0001-fix-crt-linking.patch"
|
||||
"${CURRENT_PORT_DIR}/0002-fix-x86-build.patch")
|
||||
|
||||
vcpkg_build_msbuild(
|
||||
PROJECT_PATH ${SOURCE_PATH}/ports/MSVC++/2015/win32/libmpg123/libmpg123.vcxproj
|
||||
RELEASE_CONFIGURATION Release_x86${MPG123_CONFIGURATION_SUFFIX}
|
||||
DEBUG_CONFIGURATION Debug_x86${MPG123_CONFIGURATION_SUFFIX}
|
||||
)
|
||||
vcpkg_build_msbuild(
|
||||
PROJECT_PATH ${SOURCE_PATH}/ports/MSVC++/2015/win32/libmpg123/libmpg123.vcxproj
|
||||
RELEASE_CONFIGURATION Release_x86${MPG123_CONFIGURATION_SUFFIX}
|
||||
DEBUG_CONFIGURATION Debug_x86${MPG123_CONFIGURATION_SUFFIX}
|
||||
)
|
||||
|
||||
message(STATUS "Installing")
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
|
||||
file(INSTALL
|
||||
${SOURCE_PATH}/ports/MSVC++/2015/win32/libmpg123/${MPG123_ARCH}/Debug/libmpg123.dll
|
||||
${SOURCE_PATH}/ports/MSVC++/2015/win32/libmpg123/${MPG123_ARCH}/Debug/libmpg123.pdb
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin
|
||||
)
|
||||
file(INSTALL
|
||||
${SOURCE_PATH}/ports/MSVC++/2015/win32/libmpg123/${MPG123_ARCH}/Release/libmpg123.dll
|
||||
${SOURCE_PATH}/ports/MSVC++/2015/win32/libmpg123/${MPG123_ARCH}/Release/libmpg123.pdb
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/bin
|
||||
)
|
||||
else()
|
||||
file(INSTALL
|
||||
${SOURCE_PATH}/ports/MSVC++/2015/win32/libmpg123/${MPG123_ARCH}/Debug_x86/libmpg123.pdb
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib
|
||||
)
|
||||
file(INSTALL
|
||||
${SOURCE_PATH}/ports/MSVC++/2015/win32/libmpg123/${MPG123_ARCH}/Release_x86/libmpg123.pdb
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/lib
|
||||
)
|
||||
endif()
|
||||
|
||||
message(STATUS "Installing")
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
|
||||
file(INSTALL
|
||||
${SOURCE_PATH}/ports/MSVC++/2015/win32/libmpg123/${MPG123_ARCH}/Debug/libmpg123.dll
|
||||
${SOURCE_PATH}/ports/MSVC++/2015/win32/libmpg123/${MPG123_ARCH}/Debug/libmpg123.pdb
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin
|
||||
)
|
||||
file(INSTALL
|
||||
${SOURCE_PATH}/ports/MSVC++/2015/win32/libmpg123/${MPG123_ARCH}/Release/libmpg123.dll
|
||||
${SOURCE_PATH}/ports/MSVC++/2015/win32/libmpg123/${MPG123_ARCH}/Release/libmpg123.pdb
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/bin
|
||||
)
|
||||
else()
|
||||
file(INSTALL
|
||||
${SOURCE_PATH}/ports/MSVC++/2015/win32/libmpg123/${MPG123_ARCH}/Debug_x86/libmpg123.pdb
|
||||
${SOURCE_PATH}/ports/MSVC++/2015/win32/libmpg123/${MPG123_ARCH}/Debug/libmpg123.lib
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib
|
||||
)
|
||||
file(INSTALL
|
||||
${SOURCE_PATH}/ports/MSVC++/2015/win32/libmpg123/${MPG123_ARCH}/Release_x86/libmpg123.pdb
|
||||
${SOURCE_PATH}/ports/MSVC++/2015/win32/libmpg123/${MPG123_ARCH}/Release/libmpg123.lib
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/lib
|
||||
)
|
||||
endif()
|
||||
file(INSTALL
|
||||
${SOURCE_PATH}/ports/MSVC++/mpg123.h
|
||||
${SOURCE_PATH}/src/libmpg123/fmt123.h
|
||||
${SOURCE_PATH}/src/libmpg123/mpg123.h.in
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/include
|
||||
)
|
||||
elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
file(REMOVE_RECURSE ${SOURCE_PATH}/build/debug)
|
||||
file(REMOVE_RECURSE ${SOURCE_PATH}/build/release)
|
||||
|
||||
file(INSTALL
|
||||
${SOURCE_PATH}/ports/MSVC++/2015/win32/libmpg123/${MPG123_ARCH}/Debug/libmpg123.lib
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib
|
||||
)
|
||||
file(INSTALL
|
||||
${SOURCE_PATH}/ports/MSVC++/2015/win32/libmpg123/${MPG123_ARCH}/Release/libmpg123.lib
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/lib
|
||||
)
|
||||
file(INSTALL
|
||||
${SOURCE_PATH}/ports/MSVC++/mpg123.h
|
||||
${SOURCE_PATH}/src/libmpg123/fmt123.h
|
||||
${SOURCE_PATH}/src/libmpg123/mpg123.h.in
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/include
|
||||
)
|
||||
################
|
||||
# Debug build
|
||||
################
|
||||
message(STATUS "Configuring ${TARGET_TRIPLET}-dbg")
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND "${SOURCE_PATH}/configure" --prefix=${SOURCE_PATH}/build/debug --enable-debug=yes --enable-static=yes --disable-dependency-tracking --with-default-audio=coreaudio --with-module-suffix=.so
|
||||
WORKING_DIRECTORY ${SOURCE_PATH}
|
||||
LOGNAME config-${TARGET_TRIPLET}-dbg
|
||||
)
|
||||
message(STATUS "Configuring ${TARGET_TRIPLET}-dbg done.")
|
||||
|
||||
message(STATUS "Installing ${TARGET_TRIPLET}-dbg")
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND make -j install
|
||||
WORKING_DIRECTORY ${SOURCE_PATH}
|
||||
LOGNAME build-${TARGET_TRIPLET}-dbg
|
||||
)
|
||||
message(STATUS "Installing ${TARGET_TRIPLET}-dbg done.")
|
||||
|
||||
################
|
||||
# Release build
|
||||
################
|
||||
message(STATUS "Configuring ${TARGET_TRIPLET}-rel")
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND make distclean
|
||||
WORKING_DIRECTORY ${SOURCE_PATH}
|
||||
LOGNAME config-${TARGET_TRIPLET}-dbg
|
||||
)
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND "${SOURCE_PATH}/configure" --prefix=${SOURCE_PATH}/build/release --enable-static=yes --disable-dependency-tracking --with-default-audio=coreaudio --with-module-suffix=.so
|
||||
WORKING_DIRECTORY ${SOURCE_PATH}
|
||||
LOGNAME config-${TARGET_TRIPLET}-rel
|
||||
)
|
||||
message(STATUS "Configuring ${TARGET_TRIPLET}-rel done.")
|
||||
|
||||
message(STATUS "Installing ${TARGET_TRIPLET}-rel")
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND make -j install
|
||||
WORKING_DIRECTORY ${SOURCE_PATH}
|
||||
LOGNAME build-${TARGET_TRIPLET}-rel
|
||||
)
|
||||
message(STATUS "Installing ${TARGET_TRIPLET}-rel done.")
|
||||
|
||||
file(
|
||||
INSTALL
|
||||
"${SOURCE_PATH}/build/debug/include/fmt123.h"
|
||||
"${SOURCE_PATH}/build/debug/include/mpg123.h"
|
||||
"${SOURCE_PATH}/build/debug/include/out123.h"
|
||||
DESTINATION
|
||||
${CURRENT_PACKAGES_DIR}/include
|
||||
)
|
||||
|
||||
file(
|
||||
INSTALL
|
||||
"${SOURCE_PATH}/build/debug/lib/libmpg123.a"
|
||||
"${SOURCE_PATH}/build/debug/lib/libout123.a"
|
||||
DESTINATION
|
||||
${CURRENT_INSTALLED_DIR}/debug/lib
|
||||
)
|
||||
|
||||
file(
|
||||
INSTALL
|
||||
"${SOURCE_PATH}/build/release/lib/libmpg123.a"
|
||||
"${SOURCE_PATH}/build/release/lib/libout123.a"
|
||||
DESTINATION
|
||||
${CURRENT_PACKAGES_DIR}/lib
|
||||
)
|
||||
endif()
|
||||
|
||||
file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/mpg123 RENAME copyright)
|
||||
|
||||
|
@ -7,14 +7,14 @@ set(SDL_MIXER_INCLUDES ${SDL_INCLUDE_DIR})
|
||||
set(SDL_MIXER_LIBRARIES ${SDL_LIBRARY})
|
||||
|
||||
# builtin formats
|
||||
set(SDL_MIXER_DEFINES
|
||||
set(SDL_MIXER_DEFINES
|
||||
MUSIC_WAV
|
||||
MUSIC_MID_NATIVE)
|
||||
|
||||
# MP3 support
|
||||
if(SDL_MIXER_ENABLE_MP3)
|
||||
find_path(MPG123_INCLUDE_DIR mpg123.h)
|
||||
find_library(MPG123_LIBRARY libmpg123)
|
||||
find_library(MPG123_LIBRARY NAMES libmpg123 mpg123)
|
||||
list(APPEND SDL_MIXER_INCLUDES ${MPG123_INCLUDE_DIR})
|
||||
list(APPEND SDL_MIXER_LIBRARIES ${MPG123_LIBRARY})
|
||||
list(APPEND SDL_MIXER_DEFINES MUSIC_MP3_MPG123)
|
||||
@ -47,7 +47,7 @@ if(SDL_MIXER_ENABLE_OGGVORBIS)
|
||||
list(APPEND SDL_MIXER_DEFINES MUSIC_OGG)
|
||||
endif()
|
||||
|
||||
add_library(SDL2_mixer
|
||||
add_library(SDL2_mixer
|
||||
effect_position.c
|
||||
effect_stereoreverse.c
|
||||
effects_internal.c
|
||||
|
@ -1,4 +1,4 @@
|
||||
Source: sdl2-mixer
|
||||
Version: 2.0.2-2
|
||||
Version: 2.0.2-4
|
||||
Description: Multi-channel audio mixer library for SDL.
|
||||
Build-Depends: sdl2, libflac, mpg123, libmodplug, libvorbis
|
||||
|
4
ports/sdl2pp/CONTROL
Normal file
4
ports/sdl2pp/CONTROL
Normal file
@ -0,0 +1,4 @@
|
||||
Source: sdl2pp
|
||||
Version: 0.16.0-1
|
||||
Description: C++11 bindings/wrapper for SDL2 https://sdl2pp.amdmi3.ru
|
||||
Build-Depends: sdl2, sdl2-mixer, sdl2-image, sdl2-ttf
|
54
ports/sdl2pp/find-debug-libs.patch
Normal file
54
ports/sdl2pp/find-debug-libs.patch
Normal file
@ -0,0 +1,54 @@
|
||||
diff --git a/cmake/FindSDL2.cmake b/cmake/FindSDL2.cmake
|
||||
index 8b2addb..4def5f3 100644
|
||||
--- a/cmake/FindSDL2.cmake
|
||||
+++ b/cmake/FindSDL2.cmake
|
||||
@@ -8,8 +8,8 @@
|
||||
|
||||
FIND_PATH(SDL2_INCLUDE_DIR NAMES SDL.h PATH_SUFFIXES SDL2)
|
||||
|
||||
-FIND_LIBRARY(SDL2_LIBRARY NAMES SDL2)
|
||||
-FIND_LIBRARY(SDL2MAIN_LIBRARY NAMES SDL2main)
|
||||
+FIND_LIBRARY(SDL2_LIBRARY NAMES SDL2d SDL2)
|
||||
+FIND_LIBRARY(SDL2MAIN_LIBRARY NAMES SDL2maind SDL2main)
|
||||
|
||||
INCLUDE(FindPackageHandleStandardArgs)
|
||||
|
||||
diff --git a/cmake/FindSDL2_image.cmake b/cmake/FindSDL2_image.cmake
|
||||
index 88adb3f..d6e829d 100644
|
||||
--- a/cmake/FindSDL2_image.cmake
|
||||
+++ b/cmake/FindSDL2_image.cmake
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
FIND_PATH(SDL2_IMAGE_INCLUDE_DIR NAMES SDL_image.h PATH_SUFFIXES SDL2)
|
||||
|
||||
-FIND_LIBRARY(SDL2_IMAGE_LIBRARY NAMES SDL2_image)
|
||||
+FIND_LIBRARY(SDL2_IMAGE_LIBRARY NAMES SDL2_imaged SDL2_image)
|
||||
|
||||
INCLUDE(FindPackageHandleStandardArgs)
|
||||
|
||||
diff --git a/cmake/FindSDL2_mixer.cmake b/cmake/FindSDL2_mixer.cmake
|
||||
index ef5748b..c2dbbde 100644
|
||||
--- a/cmake/FindSDL2_mixer.cmake
|
||||
+++ b/cmake/FindSDL2_mixer.cmake
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
FIND_PATH(SDL2_MIXER_INCLUDE_DIR NAMES SDL_mixer.h PATH_SUFFIXES SDL2)
|
||||
|
||||
-FIND_LIBRARY(SDL2_MIXER_LIBRARY NAMES SDL2_mixer)
|
||||
+FIND_LIBRARY(SDL2_MIXER_LIBRARY NAMES SDL2_mixerd SDL2_mixer)
|
||||
|
||||
INCLUDE(FindPackageHandleStandardArgs)
|
||||
|
||||
diff --git a/cmake/FindSDL2_ttf.cmake b/cmake/FindSDL2_ttf.cmake
|
||||
index b480d55..9fb65b9 100644
|
||||
--- a/cmake/FindSDL2_ttf.cmake
|
||||
+++ b/cmake/FindSDL2_ttf.cmake
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
FIND_PATH(SDL2_TTF_INCLUDE_DIR NAMES SDL_ttf.h PATH_SUFFIXES SDL2)
|
||||
|
||||
-FIND_LIBRARY(SDL2_TTF_LIBRARY NAMES SDL2_ttf)
|
||||
+FIND_LIBRARY(SDL2_TTF_LIBRARY NAMES SDL2_ttfd SDL2_ttf)
|
||||
|
||||
INCLUDE(FindPackageHandleStandardArgs)
|
||||
|
28
ports/sdl2pp/portfile.cmake
Normal file
28
ports/sdl2pp/portfile.cmake
Normal file
@ -0,0 +1,28 @@
|
||||
include(vcpkg_common_functions)
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO libSDL2pp/libSDL2pp
|
||||
REF 0.16.0
|
||||
SHA512 36603a0b1c3ba9294fffa5368357866e5689ceed9743352ff52c096d8b0070cc3f8708a5e837c10c871b410b6bda3ed7e8e3b95cb9afc136d91afb035cde6361
|
||||
HEAD_REF master
|
||||
PATCHES "${CMAKE_CURRENT_LIST_DIR}/find-debug-libs.patch"
|
||||
)
|
||||
|
||||
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" SDL2PP_STATIC)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
OPTIONS
|
||||
-DSDL2PP_WITH_EXAMPLES=OFF
|
||||
-DSDL2PP_WITH_TESTS=OFF
|
||||
-DSDL2PP_STATIC=${SDL2PP_STATIC}
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
# Handle copyright
|
||||
file(INSTALL ${SOURCE_PATH}/COPYING.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/sdl2pp RENAME copyright)
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
|
Loading…
x
Reference in New Issue
Block a user