[libflac] Update to 1.3.3-1 (#11152)

Update to ce6dd6b which has the following benign changes compared to 1.3.3 proper

* `std::`-ify a bunch of C library stuff
* C-cast -> `static_cast` or `reinterpret_cast`
* build system changes
* `unsigned` -> `uint32_t`
* removing UB in some shifts
* better support for powerPC and Windows
* Change out `cos(double)` for `cosf(float)` in C
* Correct `%d` to `%u` in printf
This commit is contained in:
evpobr 2020-05-21 23:19:21 +05:00 committed by GitHub
parent 27c6c94202
commit 875821cd80
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 18 additions and 109 deletions

View File

@ -1,90 +0,0 @@
cmake_minimum_required(VERSION 2.6)
cmake_policy(SET CMP0005 NEW) # do not escape preprocessor defines
project(libflac)
if(NOT DEFINED LIBFLAC_ARCHITECTURE)
message(FATAL_ERROR "Target architecture not specified")
endif()
file(GLOB LIBFLAC_SOURCES src/libFLAC/*.c)
if(WIN32)
list(APPEND LIBFLAC_SOURCES src/share/win_utf8_io/win_utf8_io.c)
else()
list(FILTER LIBFLAC_SOURCES EXCLUDE REGEX "windows[^/]*$")
file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/config.h "#include <inttypes.h>")
include_directories(${CMAKE_CURRENT_BINARY_DIR})
add_definitions(-DHAVE_CONFIG_H)
endif()
file(GLOB LIBFLACXX_SOURCES src/libFLAC++/*.cpp)
include_directories(include)
include_directories(src/libFLAC/include)
if(NOT LIBFLAC_ARCHITECTURE MATCHES arm)
add_definitions(-DFLAC__SSE_OS)
add_definitions(-DFLAC__HAS_X86INTRIN)
endif()
if(LIBFLAC_ARCHITECTURE MATCHES x86)
add_definitions(-DFLAC__CPU_IA32)
add_definitions(-DFLAC__HAS_NASM)
file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/nasm)
foreach(ASM_SOURCE cpu_asm fixed_asm lpc_asm)
execute_process(COMMAND nasm "-i${PROJECT_SOURCE_DIR}/src/libFLAC/ia32/" -f win32 -d OBJ_FORMAT_win32 -f win32
-o "${CMAKE_BINARY_DIR}/nasm/${ASM_SOURCE}.obj" "${PROJECT_SOURCE_DIR}/src/libFLAC/ia32/${ASM_SOURCE}.nasm"
WORKING_DIRECTORY ${CMAKE_BINARY_DIR})
list(APPEND LIBFLAC_SOURCES ${CMAKE_BINARY_DIR}/nasm/${ASM_SOURCE}.obj)
endforeach()
elseif(LIBFLAC_ARCHITECTURE MATCHES x64)
add_definitions(-DFLAC__CPU_X86_64)
add_definitions(-DENABLE_64_BIT_WORDS)
endif()
if(CMAKE_BUILD_TYPE MATCHES Debug)
add_definitions(-DFLAC__OVERFLOW_DETECT)
endif()
add_definitions(-DPACKAGE_VERSION="1.3.2")
add_definitions(-DFLAC__HAS_OGG)
add_definitions(-DFLAC__ALIGN_MALLOC_DATA) # 32 byte boundary
add_definitions(-DHAVE_LROUND)
add_definitions(-D_CRT_SECURE_NO_WARNINGS)
add_definitions(-D_CRT_NONSTDC_NO_WARNINGS)
add_library(libFLAC ${LIBFLAC_SOURCES})
add_library(libFLACXX ${LIBFLACXX_SOURCES})
set_target_properties(libFLAC PROPERTIES OUTPUT_NAME FLAC)
set_target_properties(libFLACXX PROPERTIES OUTPUT_NAME FLAC++)
find_library(OGG_LIBRARY ogg)
find_path(OGG_INCLUDE_DIR ogg/ogg.h)
include_directories(${OGG_INCLUDE_DIR})
target_link_libraries(libFLAC ${OGG_LIBRARY})
target_link_libraries(libFLACXX libFLAC)
if(BUILD_SHARED_LIBS)
set_target_properties(libFLACXX PROPERTIES COMPILE_FLAGS -DFLACPP_API_EXPORTS)
set_target_properties(libFLAC PROPERTIES COMPILE_FLAGS -DFLAC_API_EXPORTS)
else()
add_definitions(-DFLAC__NO_DLL)
endif()
install(TARGETS libFLAC libFLACXX
RUNTIME DESTINATION bin
ARCHIVE DESTINATION lib
LIBRARY DESTINATION lib)
if(NOT DEFINED LIBFLAC_SKIP_HEADERS)
install(DIRECTORY include/FLAC/
DESTINATION include/FLAC
FILES_MATCHING PATTERN "*.h")
install(DIRECTORY include/FLAC++/
DESTINATION include/FLAC++
FILES_MATCHING PATTERN "*.h")
endif()

View File

@ -1,5 +1,5 @@
Source: libflac
Version: 1.3.3
Version: 1.3.3-1
Homepage: https://xiph.org/flac/
Description: Library for manipulating FLAC files
Build-Depends: libogg

View File

@ -1,37 +1,32 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO xiph/flac
REF 1.3.3
SHA512 4644dc8fd45e775d0e6210de2b082996692675307a7b7d359827730cc4cede9c2e1df46f4386023d83da9bafa6b3218d24012bf532f459087e311f14863747ec
REF ce6dd6b5732e319ef60716d9cc9af6a836a4011a
SHA512 d0d3b5451f8d74aa0a0832fbe95cca55597ce9654765a95adaac98ecd0da9e803b98551a40a3fb3fd5b86bc5f40cd1a791127c03da5322e7f01e7fa761171a21
HEAD_REF master
PATCHES
"${CMAKE_CURRENT_LIST_DIR}/uwp-library-console.patch"
"${CMAKE_CURRENT_LIST_DIR}/uwp-createfile2.patch"
)
if(VCPKG_TARGET_ARCHITECTURE STREQUAL x86)
vcpkg_find_acquire_program(NASM)
get_filename_component(NASM_EXE_PATH ${NASM} DIRECTORY)
set(ENV{PATH} "$ENV{PATH};${NASM_EXE_PATH}")
endif()
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS
-DLIBFLAC_ARCHITECTURE=${VCPKG_TARGET_ARCHITECTURE}
OPTIONS_DEBUG
-DLIBFLAC_SKIP_HEADERS=ON)
-DBUILD_PROGRAMS=OFF
-DBUILD_EXAMPLES=OFF
-DBUILD_DOCS=OFF
-DBUILD_TESTING=OFF)
vcpkg_install_cmake()
vcpkg_fixup_cmake_targets(
CONFIG_PATH share/FLAC/cmake
TARGET_PATH share/FLAC
)
vcpkg_copy_pdbs()
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
file(APPEND ${CURRENT_PACKAGES_DIR}/include/FLAC/export.h "#undef FLAC_API\n#define FLAC_API\n")
file(APPEND ${CURRENT_PACKAGES_DIR}/include/FLAC++/export.h "#undef FLACPP_API\n#define FLACPP_API\n")
endif()
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
# This license (BSD) is relevant only for library - if someone would want to install
# FLAC cmd line tools as well additional license (GPL) should be included

View File

@ -1,5 +1,5 @@
Source: libsndfile
Version: 1.0.29-8
Version: 1.0.29-9
Description: Library to read, write and manipulate many soundfile types. Authored by Eric de Castro Lopo
Homepage: https://github.com/erikd/libsndfile
Default-Features: external-libs

View File

@ -19,6 +19,9 @@ option(BUILD_EXECUTABLES "Build sndfile tools and install to folder tools" OFF)
if("external-libs" IN_LIST FEATURES)
set(SNDFILE_WITHOUT_EXTERNAL_LIBS OFF)
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
set(FLAC_EXPORT_DEFINITION "-DFLAC__NO_DLL")
endif()
else()
set(SNDFILE_WITHOUT_EXTERNAL_LIBS ON)
endif()
@ -34,6 +37,7 @@ vcpkg_configure_cmake(
-DENABLE_STATIC_RUNTIME=${CRT_LIB_STATIC}
-DBUILD_STATIC_LIBS=${BUILD_STATIC}
-DDISABLE_EXTERNAL_LIBS=${SNDFILE_WITHOUT_EXTERNAL_LIBS}
-DCMAKE_C_FLAGS=${FLAC_EXPORT_DEFINITION}
OPTIONS_RELEASE
-DBUILD_PROGRAMS=${BUILD_EXECUTABLES}
OPTIONS_DEBUG