diff options
| author | MichaĆ Janiszewski <janisozaur@users.noreply.github.com> | 2019-11-22 02:03:32 +0100 |
|---|---|---|
| committer | Robert Schumacher <roschuma@microsoft.com> | 2019-11-21 17:03:32 -0800 |
| commit | bfaf18478f8f117d6e6ef49d73ba302a2176966b (patch) | |
| tree | d57572683778d4664484d33ead0e3ea5afcf246c | |
| parent | 8c17d3c7909fb41ce4c208f105eb0442caeeff7c (diff) | |
| download | vcpkg-bfaf18478f8f117d6e6ef49d73ba302a2176966b.tar.gz vcpkg-bfaf18478f8f117d6e6ef49d73ba302a2176966b.zip | |
[libflac] Update libflac to 1.3.3 (#8988)
* [libflac] Update libflac to 1.3.3
* Update portfile.cmake
| -rw-r--r-- | ports/libflac/CONTROL | 10 | ||||
| -rw-r--r-- | ports/libflac/portfile.cmake | 86 | ||||
| -rw-r--r-- | ports/libflac/uwp-createfile2.patch | 22 | ||||
| -rw-r--r-- | ports/libflac/uwp-library-console.patch | 12 |
4 files changed, 62 insertions, 68 deletions
diff --git a/ports/libflac/CONTROL b/ports/libflac/CONTROL index 53ec5a95b..68011e0e7 100644 --- a/ports/libflac/CONTROL +++ b/ports/libflac/CONTROL @@ -1,5 +1,5 @@ -Source: libflac
-Version: 1.3.2-6
-Homepage: https://xiph.org/flac/
-Description: Library for manipulating FLAC files
-Build-Depends: libogg
+Source: libflac +Version: 1.3.3 +Homepage: https://xiph.org/flac/ +Description: Library for manipulating FLAC files +Build-Depends: libogg diff --git a/ports/libflac/portfile.cmake b/ports/libflac/portfile.cmake index 894107447..0a895ad41 100644 --- a/ports/libflac/portfile.cmake +++ b/ports/libflac/portfile.cmake @@ -1,47 +1,39 @@ -include(vcpkg_common_functions)
-
-vcpkg_download_distfile(FLAC_MAX_MIN_PATCH
- URLS "https://github.com/xiph/flac/commit/64f47c2d71ffba5aa8cd1d2a447339fd95f362f9.patch"
- FILENAME "flac-max-min.patch"
- SHA512 7ce9ccf9f081b478664cccd677c10269567672a8aa3a60839ef203b3d0a626d2b2c2f34d4c7fc897c31a436d7c22fb740bca5449a465dab39d60655417fe7772)
-
-vcpkg_from_github(
- OUT_SOURCE_PATH SOURCE_PATH
- REPO xiph/flac
- REF 1.3.2
- SHA512 d0e177cadee371940516864bf72e1eb3d101a5f2779c854ecb8a3361a654a9b9e7efd303c83e2f308bacc7e54298d37705f677e2b955d4a9fe3470c364fa45f3
- HEAD_REF master
- PATCHES
- "${FLAC_MAX_MIN_PATCH}"
- "${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)
-
-vcpkg_install_cmake()
-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()
-
-# 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
-file(COPY ${SOURCE_PATH}/COPYING.Xiph DESTINATION ${CURRENT_PACKAGES_DIR}/share/libflac)
-file(RENAME ${CURRENT_PACKAGES_DIR}/share/libflac/COPYING.Xiph ${CURRENT_PACKAGES_DIR}/share/libflac/copyright)
+vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO xiph/flac + REF 1.3.3 + SHA512 4644dc8fd45e775d0e6210de2b082996692675307a7b7d359827730cc4cede9c2e1df46f4386023d83da9bafa6b3218d24012bf532f459087e311f14863747ec + 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) + +vcpkg_install_cmake() +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() + +# 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 +file(COPY ${SOURCE_PATH}/COPYING.Xiph DESTINATION ${CURRENT_PACKAGES_DIR}/share/libflac) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/libflac/COPYING.Xiph ${CURRENT_PACKAGES_DIR}/share/libflac/copyright) diff --git a/ports/libflac/uwp-createfile2.patch b/ports/libflac/uwp-createfile2.patch index cfb343990..0b86e9a7f 100644 --- a/ports/libflac/uwp-createfile2.patch +++ b/ports/libflac/uwp-createfile2.patch @@ -1,15 +1,15 @@ -diff --git a/src/libFLAC/windows_unicode_filenames.c b/src/libFLAC/windows_unicode_filenames.c -index 2404e31..d320bf5 100644 ---- a/src/libFLAC/windows_unicode_filenames.c -+++ b/src/libFLAC/windows_unicode_filenames.c -@@ -185,6 +185,27 @@ int flac_internal_rename_utf8(const char *oldname, const char *newname) - - HANDLE WINAPI flac_internal_CreateFile_utf8(const char *lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile) +diff --git a/src/share/win_utf8_io/win_utf8_io.c b/src/share/win_utf8_io/win_utf8_io.c +index 8b20bbb7..058295fa 100644 +--- a/src/share/win_utf8_io/win_utf8_io.c ++++ b/src/share/win_utf8_io/win_utf8_io.c +@@ -156,6 +156,27 @@ int get_utf8_argv(int *argc, char ***argv) + /* similar to CreateFileW but accepts UTF-8 encoded lpFileName */ + HANDLE WINAPI CreateFile_utf8(const char *lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile) { +#if defined (WINAPI_FAMILY_PARTITION) && !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM) + HANDLE handle = INVALID_HANDLE_VALUE; + -+ if (!utf8_filenames) ++ if (!flac_internal_get_utf8_filenames()) + return handle; + + wchar_t *wname; @@ -27,12 +27,14 @@ index 2404e31..d320bf5 100644 + + return handle; +#else - if (!utf8_filenames) { + if (!flac_internal_get_utf8_filenames()) { return CreateFileA(lpFileName, dwDesiredAccess, dwShareMode, lpSecurityAttributes, dwCreationDisposition, dwFlagsAndAttributes, hTemplateFile); } else { -@@ -198,4 +219,5 @@ HANDLE WINAPI flac_internal_CreateFile_utf8(const char *lpFileName, DWORD dwDesi +@@ -169,6 +190,7 @@ HANDLE WINAPI CreateFile_utf8(const char *lpFileName, DWORD dwDesiredAccess, DWO return handle; } +#endif } + + /* return number of characters in the UTF-8 string */ diff --git a/ports/libflac/uwp-library-console.patch b/ports/libflac/uwp-library-console.patch index bba2422c3..234758c75 100644 --- a/ports/libflac/uwp-library-console.patch +++ b/ports/libflac/uwp-library-console.patch @@ -1,5 +1,5 @@ diff --git a/src/share/win_utf8_io/win_utf8_io.c b/src/share/win_utf8_io/win_utf8_io.c -index c61d27f..0870054 100644 +index bbb6a74a..8b20bbb7 100644 --- a/src/share/win_utf8_io/win_utf8_io.c +++ b/src/share/win_utf8_io/win_utf8_io.c @@ -110,7 +110,11 @@ int get_utf8_argv(int *argc, char ***argv) @@ -9,12 +9,12 @@ index c61d27f..0870054 100644 +#if defined (WINAPI_FAMILY_PARTITION) && !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM) + if ((handle = LoadPackagedLibrary("msvcrt.dll", 0)) == NULL) return 1; +#else - if ((handle = LoadLibrary("msvcrt.dll")) == NULL) return 1; + if ((handle = LoadLibraryW(L"msvcrt.dll")) == NULL) return 1; +#endif if ((wgetmainargs = (wgetmainargs_t)GetProcAddress(handle, "__wgetmainargs")) == NULL) { FreeLibrary(handle); return 1; -@@ -163,6 +167,9 @@ size_t strlen_utf8(const char *str) +@@ -181,6 +185,9 @@ size_t strlen_utf8(const char *str) /* get the console width in characters */ int win_get_console_width(void) { @@ -24,7 +24,7 @@ index c61d27f..0870054 100644 int width = 80; CONSOLE_SCREEN_BUFFER_INFO csbi; HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE); -@@ -170,6 +177,7 @@ int win_get_console_width(void) +@@ -188,6 +195,7 @@ int win_get_console_width(void) if (GetConsoleScreenBufferInfo(hOut, &csbi) != 0) width = csbi.dwSize.X; return width; @@ -32,7 +32,7 @@ index c61d27f..0870054 100644 } /* print functions */ -@@ -179,6 +187,10 @@ static int wprint_console(FILE *stream, const wchar_t *text, size_t len) +@@ -197,6 +205,10 @@ static int wprint_console(FILE *stream, const wchar_t *text, size_t len) DWORD out; int ret; @@ -43,7 +43,7 @@ index c61d27f..0870054 100644 do { if (stream == stdout) { HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE); -@@ -197,6 +209,7 @@ static int wprint_console(FILE *stream, const wchar_t *text, size_t len) +@@ -215,6 +227,7 @@ static int wprint_console(FILE *stream, const wchar_t *text, size_t len) return out; } } while(0); |
