2021-04-13 02:12:49 +08:00
|
|
|
set(MPG123_VERSION 1.26.5)
|
|
|
|
set(MPG123_HASH 0c2b3174c834e4bd459a3324b825d9bf9341a3486c0af815773b00cb007578cb718522ac4e983c7ad7e3bb5df9fdd342a03cb51345c41f68971145196ac04b7a)
|
2017-03-13 08:16:08 +08:00
|
|
|
|
|
|
|
#architecture detection
|
|
|
|
if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86")
|
|
|
|
set(MPG123_ARCH Win32)
|
2019-09-04 05:31:59 +08:00
|
|
|
set(MPG123_CONFIGURATION _x86)
|
2017-03-13 08:16:08 +08:00
|
|
|
elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
|
|
|
|
set(MPG123_ARCH x64)
|
2019-09-04 05:31:59 +08:00
|
|
|
set(MPG123_CONFIGURATION _x86)
|
|
|
|
elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm")
|
|
|
|
set(MPG123_ARCH ARM)
|
|
|
|
set(MPG123_CONFIGURATION _Generic)
|
|
|
|
elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64")
|
|
|
|
set(MPG123_ARCH ARM64)
|
|
|
|
set(MPG123_CONFIGURATION _Generic)
|
2017-03-13 08:16:08 +08:00
|
|
|
else()
|
|
|
|
message(FATAL_ERROR "unsupported architecture")
|
|
|
|
endif()
|
|
|
|
|
|
|
|
#linking
|
|
|
|
if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
|
|
|
|
set(MPG123_CONFIGURATION_SUFFIX _Dll)
|
|
|
|
endif()
|
|
|
|
|
2020-06-27 06:06:30 +08:00
|
|
|
vcpkg_from_sourceforge(
|
|
|
|
OUT_SOURCE_PATH SOURCE_PATH
|
|
|
|
REPO mpg123/mpg123
|
|
|
|
REF ${MPG123_VERSION}
|
2017-03-13 08:16:08 +08:00
|
|
|
FILENAME "mpg123-${MPG123_VERSION}.tar.bz2"
|
|
|
|
SHA512 ${MPG123_HASH}
|
2019-08-02 08:54:45 +08:00
|
|
|
PATCHES
|
2020-11-10 06:37:28 +08:00
|
|
|
0001-fix-x86-build.patch
|
2019-08-02 08:54:45 +08:00
|
|
|
)
|
2016-09-19 11:50:08 +08:00
|
|
|
|
2020-10-29 05:26:41 +08:00
|
|
|
include(${CURRENT_INSTALLED_DIR}/share/yasm-tool-helper/yasm-tool-helper.cmake)
|
|
|
|
yasm_tool_helper(APPEND_TO_PATH)
|
2016-09-19 11:50:08 +08:00
|
|
|
|
2021-04-03 04:24:18 +08:00
|
|
|
macro(read_api_version)
|
|
|
|
file(READ "${SOURCE_PATH}/configure.ac" configure_ac)
|
|
|
|
string(REGEX MATCH "API_VERSION=([0-9]+)" result ${configure_ac})
|
|
|
|
set(API_VERSION ${CMAKE_MATCH_1})
|
|
|
|
endmacro()
|
|
|
|
|
2020-05-12 06:42:41 +08:00
|
|
|
if(VCPKG_TARGET_IS_UWP)
|
2020-11-10 06:37:28 +08:00
|
|
|
vcpkg_install_msbuild(
|
|
|
|
SOURCE_PATH ${SOURCE_PATH}
|
|
|
|
PROJECT_SUBPATH ports/MSVC++/2015/uwp/libmpg123/libmpg123.vcxproj
|
2020-05-12 06:42:41 +08:00
|
|
|
OPTIONS /p:UseEnv=True
|
2020-11-10 06:37:28 +08:00
|
|
|
PLATFORM ${MPG123_ARCH}
|
|
|
|
RELEASE_CONFIGURATION Release_uwp
|
|
|
|
DEBUG_CONFIGURATION Debug_uwp
|
2020-05-12 06:42:41 +08:00
|
|
|
)
|
2021-04-03 04:24:18 +08:00
|
|
|
|
2020-05-12 06:42:41 +08:00
|
|
|
file(INSTALL
|
|
|
|
${SOURCE_PATH}/ports/MSVC++/mpg123.h
|
|
|
|
${SOURCE_PATH}/src/libmpg123/fmt123.h
|
|
|
|
DESTINATION ${CURRENT_PACKAGES_DIR}/include
|
|
|
|
)
|
2021-04-03 04:24:18 +08:00
|
|
|
|
|
|
|
read_api_version()
|
|
|
|
configure_file(
|
|
|
|
${SOURCE_PATH}/src/libmpg123/mpg123.h.in
|
|
|
|
${CURRENT_PACKAGES_DIR}/include/mpg123.h.in @ONLY
|
|
|
|
)
|
|
|
|
|
2020-05-12 06:42:41 +08:00
|
|
|
elseif(VCPKG_TARGET_IS_WINDOWS)
|
2020-11-10 06:37:28 +08:00
|
|
|
vcpkg_install_msbuild(
|
|
|
|
SOURCE_PATH ${SOURCE_PATH}
|
|
|
|
PROJECT_SUBPATH ports/MSVC++/2015/win32/libmpg123/libmpg123.vcxproj
|
2020-05-01 01:11:20 +08:00
|
|
|
OPTIONS /p:UseEnv=True
|
2019-09-04 05:31:59 +08:00
|
|
|
RELEASE_CONFIGURATION Release${MPG123_CONFIGURATION}${MPG123_CONFIGURATION_SUFFIX}
|
|
|
|
DEBUG_CONFIGURATION Debug${MPG123_CONFIGURATION}${MPG123_CONFIGURATION_SUFFIX}
|
2017-03-13 08:16:08 +08:00
|
|
|
)
|
2021-04-03 04:24:18 +08:00
|
|
|
|
2018-05-18 23:15:52 +08:00
|
|
|
file(INSTALL
|
|
|
|
${SOURCE_PATH}/ports/MSVC++/mpg123.h
|
|
|
|
${SOURCE_PATH}/src/libmpg123/fmt123.h
|
|
|
|
DESTINATION ${CURRENT_PACKAGES_DIR}/include
|
|
|
|
)
|
2021-04-03 04:24:18 +08:00
|
|
|
|
|
|
|
read_api_version()
|
|
|
|
configure_file(
|
|
|
|
${SOURCE_PATH}/src/libmpg123/mpg123.h.in
|
|
|
|
${CURRENT_PACKAGES_DIR}/include/mpg123.h.in @ONLY
|
|
|
|
)
|
|
|
|
|
2020-08-02 04:56:56 +08:00
|
|
|
elseif(VCPKG_TARGET_IS_OSX OR VCPKG_TARGET_IS_LINUX)
|
|
|
|
set(MPG123_OPTIONS
|
|
|
|
--disable-dependency-tracking
|
2018-05-18 23:15:52 +08:00
|
|
|
)
|
|
|
|
|
2020-08-02 04:56:56 +08:00
|
|
|
# Find cross-compiler prefix
|
|
|
|
if(VCPKG_CHAINLOAD_TOOLCHAIN_FILE)
|
|
|
|
include("${VCPKG_CHAINLOAD_TOOLCHAIN_FILE}")
|
2020-07-07 02:40:13 +08:00
|
|
|
endif()
|
2020-08-02 04:56:56 +08:00
|
|
|
if(CMAKE_C_COMPILER)
|
|
|
|
vcpkg_execute_required_process(
|
|
|
|
COMMAND ${CMAKE_C_COMPILER} -dumpmachine
|
|
|
|
WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}
|
|
|
|
LOGNAME dumpmachine-${TARGET_TRIPLET}
|
2020-07-07 02:40:13 +08:00
|
|
|
)
|
2020-08-02 04:56:56 +08:00
|
|
|
file(READ ${CURRENT_BUILDTREES_DIR}/dumpmachine-${TARGET_TRIPLET}-out.log MPG123_HOST)
|
|
|
|
string(REPLACE "\n" "" MPG123_HOST "${MPG123_HOST}")
|
|
|
|
message(STATUS "Cross-compiling with ${CMAKE_C_COMPILER}")
|
|
|
|
message(STATUS "Detected autoconf triplet --host=${MPG123_HOST}")
|
|
|
|
set(MPG123_OPTIONS
|
|
|
|
--host=${MPG123_HOST}
|
|
|
|
${MPG123_OPTIONS}
|
2020-07-07 02:40:13 +08:00
|
|
|
)
|
|
|
|
endif()
|
2020-08-02 04:56:56 +08:00
|
|
|
|
|
|
|
vcpkg_configure_make(
|
|
|
|
SOURCE_PATH ${SOURCE_PATH}
|
|
|
|
OPTIONS ${MPG123_OPTIONS}
|
|
|
|
)
|
|
|
|
vcpkg_install_make()
|
2021-04-09 02:57:47 +08:00
|
|
|
vcpkg_fixup_pkgconfig()
|
2020-08-02 04:56:56 +08:00
|
|
|
|
|
|
|
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
|
2018-05-18 23:15:52 +08:00
|
|
|
endif()
|
2017-03-13 08:16:08 +08:00
|
|
|
|
2020-06-13 04:09:46 +08:00
|
|
|
file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
|
2016-09-19 11:50:08 +08:00
|
|
|
|
|
|
|
message(STATUS "Installing done")
|