From e5e9f2f145e539a97b4a56c857892e89a74751e0 Mon Sep 17 00:00:00 2001 From: Avery King Date: Wed, 24 Jan 2024 13:31:39 -0800 Subject: [PATCH] [libmad] update to 0.16.4 (#35898) * [libmad] update to 0.16.4 Switches libmad to Tenacity's maintained version. Signed-off-by: Avery King * update filename Co-authored-by: Kai Pastor * update version db --------- Signed-off-by: Avery King Co-authored-by: Javier Matos Denizac Co-authored-by: Kai Pastor Co-authored-by: Javier Matos Denizac --- ports/libmad/0001-Fix-MSVC-ARM.patch | 25 -------- ports/libmad/CMakeLists.txt | 86 ---------------------------- ports/libmad/mad.pc.in | 10 ---- ports/libmad/portfile.cmake | 25 +++----- ports/libmad/vcpkg.json | 9 ++- versions/baseline.json | 4 +- versions/l-/libmad.json | 5 ++ 7 files changed, 22 insertions(+), 142 deletions(-) delete mode 100644 ports/libmad/0001-Fix-MSVC-ARM.patch delete mode 100644 ports/libmad/CMakeLists.txt delete mode 100644 ports/libmad/mad.pc.in diff --git a/ports/libmad/0001-Fix-MSVC-ARM.patch b/ports/libmad/0001-Fix-MSVC-ARM.patch deleted file mode 100644 index 9cdc57c7bf..0000000000 --- a/ports/libmad/0001-Fix-MSVC-ARM.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff --git a/mad.h b/mad.h -index 9ef6cc8..5e3f7aa 100644 ---- a/mad.h -+++ b/mad.h -@@ -24,7 +24,11 @@ - extern "C" { - # endif - -+#ifdef _WIN64 -+# define FPM_64BIT -+#else - # define FPM_INTEL -+#endif - - - -@@ -184,7 +188,7 @@ typedef mad_fixed_t mad_sample_t; - - # elif defined(FPM_INTEL) - --# if defined(_MSC_VER) -+# if defined(_MSC_VER) && defined(_M_IX86) - # pragma warning(push) - # pragma warning(disable: 4035) /* no return value */ - static __forceinline diff --git a/ports/libmad/CMakeLists.txt b/ports/libmad/CMakeLists.txt deleted file mode 100644 index cc7fe273f8..0000000000 --- a/ports/libmad/CMakeLists.txt +++ /dev/null @@ -1,86 +0,0 @@ -cmake_minimum_required(VERSION 2.8) - -project(libmad) - -set(SOURCES - bit.c - bit.h - config.h - decoder.c - decoder.h - fixed.c - fixed.h - frame.c - frame.h - global.h - huffman.c - huffman.h - layer12.c - layer12.h - layer3.c - layer3.h - mad.h - stream.c - stream.h - synth.c - synth.h - timer.c - timer.h - version.c - version.h -) - -configure_file("${CMAKE_CURRENT_SOURCE_DIR}/mad.pc.in" "${PROJECT_BINARY_DIR}/mad.pc" @ONLY) -install( - FILES "${PROJECT_BINARY_DIR}/mad.pc" - DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig" -) -add_library( - mad - ${SOURCES} -) - -target_compile_definitions(mad - PRIVATE _LIB _MBCS ASO_ZEROCHECK HAVE_CONFIG_H - PRIVATE _CRT_SECURE_NO_WARNINGS -) - -if(CMAKE_SYSTEM_PROCESSOR MATCHES "(^i.86$)") - target_compile_definitions(mad - PRIVATE FPM_INTEL - ) -elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "(x86_64)|(AMD64|amd64)|^(aarch64|arm64)") - target_compile_definitions(mad - PRIVATE FPM_64BIT - ) -# This fails with "error: invalid instruction" on armv7-a -#elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "arm") -# target_compile_definitions(mad -# PRIVATE FPM_ARM -# ) -elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^mips") - target_compile_definitions(mad - PRIVATE FPM_MIPS - ) -elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^(powerpc|ppc)") - target_compile_definitions(mad - PRIVATE FPM_PPC - ) -else() - target_compile_definitions(mad - PRIVATE FPM_DEFAULT - ) - message(WARNING "CMAKE_SYSTEM_PROCESSOR = ${CMAKE_SYSTEM_PROCESSOR} unknown. Fall back to FPM_DEFAULT, loosing significant accuracy") -endif() - -install( - TARGETS mad - RUNTIME DESTINATION bin - LIBRARY DESTINATION lib - ARCHIVE DESTINATION lib -) - -install( - FILES mad.h - DESTINATION include -) diff --git a/ports/libmad/mad.pc.in b/ports/libmad/mad.pc.in deleted file mode 100644 index 6dd5792ff2..0000000000 --- a/ports/libmad/mad.pc.in +++ /dev/null @@ -1,10 +0,0 @@ -prefix=@PREFIX@ -exec_prefix=${prefix} -libdir=${prefix}/lib -includedir=${prefix}/include - -Name: mad -Description: MPEG audio decoder library -Version: @VERSION@ -Libs: -L${libdir} -lmad -Cflags: -I${includedir} diff --git a/ports/libmad/portfile.cmake b/ports/libmad/portfile.cmake index 7dc03c1dec..63fadf453c 100644 --- a/ports/libmad/portfile.cmake +++ b/ports/libmad/portfile.cmake @@ -2,33 +2,26 @@ if(VCPKG_TARGET_IS_WINDOWS) vcpkg_check_linkage(ONLY_STATIC_LIBRARY) endif() -vcpkg_from_sourceforge( - OUT_SOURCE_PATH SOURCE_PATH - REPO mad/libmad - REF 0.15.1b - FILENAME "libmad-0.15.1b.tar.gz" - SHA512 2cad30347fb310dc605c46bacd9da117f447a5cabedd8fefdb24ab5de641429e5ec5ce8af7aefa6a75a3f545d3adfa255e3fa0a2d50971f76bc0c4fc0400cc45 - PATCHES 0001-Fix-MSVC-ARM.patch +vcpkg_download_distfile( + ARCHIVE + URLS "https://codeberg.org/tenacityteam/libmad/archive/${VERSION}.tar.gz" + FILENAME "tenacityteam-libmad-${VERSION}.tar.gz" + SHA512 6752c199096f999ed478dea712eb669913eec182eec8a56bf4871e77e6c38798d13146febf646007427f43f86aea8d40b9ec2b72928ac3132066ebddcaa0cfde ) -#The archive only contains a Visual Studio 6.0 era DSP project file, so use a custom CMakeLists.txt -file(COPY "${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt" DESTINATION "${SOURCE_PATH}") - -file(COPY "${CMAKE_CURRENT_LIST_DIR}/mad.pc.in" DESTINATION "${SOURCE_PATH}") - -#Use the msvc++ config.h header -file(COPY "${SOURCE_PATH}/msvc++/config.h" DESTINATION "${SOURCE_PATH}") +vcpkg_extract_source_archive(SOURCE_PATH ARCHIVE "${ARCHIVE}") vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}" OPTIONS - "-DVERSION=${VERSION}" + -DEXAMPLE=OFF ) vcpkg_cmake_install() +vcpkg_cmake_config_fixup(PACKAGE_NAME "mad" CONFIG_PATH "lib/cmake/mad") vcpkg_fixup_pkgconfig() vcpkg_copy_pdbs() -file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) +vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/COPYING") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") diff --git a/ports/libmad/vcpkg.json b/ports/libmad/vcpkg.json index 6cef437d79..7504784243 100644 --- a/ports/libmad/vcpkg.json +++ b/ports/libmad/vcpkg.json @@ -1,13 +1,16 @@ { "name": "libmad", - "version": "0.15.1", - "port-version": 13, + "version": "0.16.4", "description": "high-quality MPEG audio decoder", - "homepage": "http://www.mars.org/home/rob/proj/mpeg/", + "homepage": "http://codeberg.org/tenacityteam/libmad", "dependencies": [ { "name": "vcpkg-cmake", "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true } ] } diff --git a/versions/baseline.json b/versions/baseline.json index 149b542f72..2bb88155a2 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -4525,8 +4525,8 @@ "port-version": 0 }, "libmad": { - "baseline": "0.15.1", - "port-version": 13 + "baseline": "0.16.4", + "port-version": 0 }, "libmagic": { "baseline": "5.45", diff --git a/versions/l-/libmad.json b/versions/l-/libmad.json index 2efbed70ee..eb64789da1 100644 --- a/versions/l-/libmad.json +++ b/versions/l-/libmad.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "ca6bd50225347461a9d72269c1b7d082a691f31d", + "version": "0.16.4", + "port-version": 0 + }, { "git-tree": "88e56333079029031e808b84c95ded6dd33a2bbd", "version": "0.15.1",