early-access version 2853
This commit is contained in:
27
externals/vcpkg/ports/libiconv/0002-Config-for-MSVC.patch
vendored
Executable file
27
externals/vcpkg/ports/libiconv/0002-Config-for-MSVC.patch
vendored
Executable file
@@ -0,0 +1,27 @@
|
||||
diff --git "a/lib/loop_wchar.h" "b/lib/loop_wchar.h"
|
||||
index 6dc011b..158ccdd 100644
|
||||
--- "a/lib/loop_wchar.h"
|
||||
+++ "b/lib/loop_wchar.h"
|
||||
@@ -37,7 +37,7 @@
|
||||
# include <wchar.h>
|
||||
# define BUF_SIZE 64 /* assume MB_LEN_MAX <= 64 */
|
||||
/* Some systems, like BeOS, have multibyte encodings but lack mbstate_t. */
|
||||
- extern size_t mbrtowc ();
|
||||
+// extern size_t mbrtowc ();
|
||||
# ifdef mbstate_t
|
||||
# define mbrtowc(pwc, s, n, ps) (mbrtowc)(pwc, s, n, 0)
|
||||
# define mbsinit(ps) 1
|
||||
diff --git a/srclib/fcntl.c b/srclib/fcntl.c
|
||||
index f9753c4..02fc8be 100644
|
||||
--- a/srclib/fcntl.c
|
||||
+++ b/srclib/fcntl.c
|
||||
@@ -37,6 +37,9 @@
|
||||
/* Get declarations of the native Windows API functions. */
|
||||
# define WIN32_LEAN_AND_MEAN
|
||||
# include <windows.h>
|
||||
+#if defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_APP)
|
||||
+#define HANDLE_FLAG_INHERIT 0
|
||||
+#endif
|
||||
|
||||
/* Get _get_osfhandle. */
|
||||
# if GNULIB_MSVC_NOTHROW
|
||||
12
externals/vcpkg/ports/libiconv/0003-Add-export.patch
vendored
Executable file
12
externals/vcpkg/ports/libiconv/0003-Add-export.patch
vendored
Executable file
@@ -0,0 +1,12 @@
|
||||
diff -uNr libiconv-1.16/libcharset/include/libcharset.h.in libiconv-1.16-work/libcharset/include/libcharset.h.in
|
||||
--- libiconv-1.16/libcharset/include/libcharset.h.in 2018-09-17 19:07:42.000000000 +0300
|
||||
+++ libiconv-1.16-work/libcharset/include/libcharset.h.in 2019-12-04 17:15:50.000000000 +0300
|
||||
@@ -33,7 +33,7 @@
|
||||
by the corresponding pathname with the current prefix instead. Both
|
||||
prefixes should be directory names without trailing slash (i.e. use ""
|
||||
instead of "/"). */
|
||||
-extern void libcharset_set_relocation_prefix (const char *orig_prefix,
|
||||
+extern void LIBCHARSET_DLL_EXPORTED libcharset_set_relocation_prefix (const char *orig_prefix,
|
||||
const char *curr_prefix);
|
||||
|
||||
|
||||
13
externals/vcpkg/ports/libiconv/0004-ModuleFileName.patch
vendored
Executable file
13
externals/vcpkg/ports/libiconv/0004-ModuleFileName.patch
vendored
Executable file
@@ -0,0 +1,13 @@
|
||||
diff --git a/lib/relocatable.c b/lib/relocatable.c
|
||||
index 89b6c27..1561894 100644
|
||||
--- a/lib/relocatable.c
|
||||
+++ b/lib/relocatable.c
|
||||
@@ -329,7 +329,7 @@ DllMain (HINSTANCE module_handle, DWORD event, LPVOID reserved)
|
||||
/* The DLL is being loaded into an application's address range. */
|
||||
static char location[MAX_PATH];
|
||||
|
||||
- if (!GetModuleFileName (module_handle, location, sizeof (location)))
|
||||
+ if (!GetModuleFileNameA (module_handle, location, sizeof (location)))
|
||||
/* Shouldn't happen. */
|
||||
return FALSE;
|
||||
|
||||
68
externals/vcpkg/ports/libiconv/portfile.cmake
vendored
Executable file
68
externals/vcpkg/ports/libiconv/portfile.cmake
vendored
Executable file
@@ -0,0 +1,68 @@
|
||||
if(NOT VCPKG_TARGET_IS_WINDOWS AND NOT VCPKG_TARGET_IS_ANDROID)
|
||||
set(VCPKG_POLICY_EMPTY_PACKAGE enabled)
|
||||
file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/share/iconv")
|
||||
file(COPY "${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/iconv")
|
||||
return()
|
||||
endif()
|
||||
|
||||
set(LIBICONV_VERSION 1.17)
|
||||
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "https://ftp.gnu.org/gnu/libiconv/libiconv-${LIBICONV_VERSION}.tar.gz" "https://www.mirrorservice.org/sites/ftp.gnu.org/gnu/libiconv/libiconv-${LIBICONV_VERSION}.tar.gz"
|
||||
FILENAME "libiconv-${LIBICONV_VERSION}.tar.gz"
|
||||
SHA512 18a09de2d026da4f2d8b858517b0f26d853b21179cf4fa9a41070b2d140030ad9525637dc4f34fc7f27abca8acdc84c6751dfb1d426e78bf92af4040603ced86
|
||||
)
|
||||
vcpkg_extract_source_archive_ex(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
ARCHIVE "${ARCHIVE}"
|
||||
REF "${LIBICONV_VERSION}"
|
||||
PATCHES
|
||||
0002-Config-for-MSVC.patch
|
||||
0003-Add-export.patch
|
||||
0004-ModuleFileName.patch
|
||||
)
|
||||
|
||||
if (NOT VCPKG_TARGET_IS_ANDROID)
|
||||
list(APPEND OPTIONS --enable-relocatable)
|
||||
endif()
|
||||
|
||||
vcpkg_configure_make(
|
||||
SOURCE_PATH "${SOURCE_PATH}"
|
||||
DETERMINE_BUILD_TRIPLET
|
||||
USE_WRAPPERS
|
||||
OPTIONS
|
||||
--enable-extra-encodings
|
||||
--without-libiconv-prefix
|
||||
--without-libintl-prefix
|
||||
${OPTIONS}
|
||||
)
|
||||
vcpkg_install_make()
|
||||
|
||||
vcpkg_copy_pdbs()
|
||||
vcpkg_copy_tool_dependencies("${CURRENT_PACKAGES_DIR}/tools/${PORT}/bin")
|
||||
vcpkg_copy_tool_dependencies("${CURRENT_PACKAGES_DIR}/tools/${PORT}/debug/bin")
|
||||
|
||||
file(COPY "${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/iconv")
|
||||
|
||||
set(VCPKG_POLICY_ALLOW_RESTRICTED_HEADERS enabled)
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/${PORT}") # share contains unneeded doc files
|
||||
|
||||
# Please keep, the default usage is broken
|
||||
file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
|
||||
file(READ "${SOURCE_PATH}/COPYING.LIB" copying_lib)
|
||||
file(READ "${SOURCE_PATH}/COPYING" copying_tool)
|
||||
file(WRITE "${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright" "
|
||||
The libiconv and libcharset libraries and their header files are under LGPL,
|
||||
see COPYING.LIB below.
|
||||
|
||||
The iconv program and the documentation are under GPL, see COPYING below.
|
||||
|
||||
# COPYING.LIB
|
||||
|
||||
${copying_lib}
|
||||
|
||||
# COPYING
|
||||
|
||||
${copying_tool}
|
||||
")
|
||||
4
externals/vcpkg/ports/libiconv/usage
vendored
Executable file
4
externals/vcpkg/ports/libiconv/usage
vendored
Executable file
@@ -0,0 +1,4 @@
|
||||
The package libiconv provides CMake targets:
|
||||
|
||||
find_package(Iconv)
|
||||
target_link_libraries(main PRIVATE Iconv::Iconv)
|
||||
21
externals/vcpkg/ports/libiconv/vcpkg-cmake-wrapper.cmake
vendored
Executable file
21
externals/vcpkg/ports/libiconv/vcpkg-cmake-wrapper.cmake
vendored
Executable file
@@ -0,0 +1,21 @@
|
||||
include(SelectLibraryConfigurations)
|
||||
|
||||
_find_package(${ARGS})
|
||||
if(Iconv_FOUND AND NOT Iconv_IS_BUILT_IN)
|
||||
find_path(CHARSET_INCLUDE_DIR NAMES "libcharset.h" HINTS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/include")
|
||||
find_library(CHARSET_LIBRARY_DEBUG NAMES charsetd libcharsetd charset libcharset NAMES_PER_DIR PATH_SUFFIXES lib HINTS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug")
|
||||
find_library(CHARSET_LIBRARY_RELEASE NAMES charset libcharset NAMES_PER_DIR PATH_SUFFIXES lib HINTS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}")
|
||||
select_library_configurations(CHARSET)
|
||||
if(NOT TARGET Iconv::Charset)
|
||||
add_library(Iconv::Charset INTERFACE IMPORTED)
|
||||
set_target_properties(Iconv::Charset PROPERTIES
|
||||
INTERFACE_LINK_LIBRARIES "\$<\$<NOT:\$<CONFIG:DEBUG>>:${CHARSET_LIBRARY_RELEASE}>;\$<\$<CONFIG:DEBUG>:${CHARSET_LIBRARY_DEBUG}>"
|
||||
INTERFACE_INCLUDE_DIRECTORIES "${CHARSET_INCLUDE_DIRS}")
|
||||
endif()
|
||||
if(CHARSET_LIBRARIES)
|
||||
list(APPEND Iconv_LIBRARIES ${CHARSET_LIBRARIES})
|
||||
if(TARGET Iconv::Iconv)
|
||||
set_property(TARGET Iconv::Iconv APPEND PROPERTY INTERFACE_LINK_LIBRARIES Iconv::Charset)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
7
externals/vcpkg/ports/libiconv/vcpkg.json
vendored
Executable file
7
externals/vcpkg/ports/libiconv/vcpkg.json
vendored
Executable file
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"name": "libiconv",
|
||||
"version": "1.17",
|
||||
"description": "GNU Unicode text conversion",
|
||||
"homepage": "https://www.gnu.org/software/libiconv/",
|
||||
"license": null
|
||||
}
|
||||
Reference in New Issue
Block a user