aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJackBoosY <47264268+JackBoosY@users.noreply.github.com>2019-07-16 01:41:11 +0800
committerPhil Christensen <philc@microsoft.com>2019-07-15 10:41:11 -0700
commite1870a91ff26c099ca92599fa7d7bb06b81fbc58 (patch)
treeed15ef5eb2332055362edc231873ccd1f872bed7
parent164dc9e4b15110ba2371f8bbc6623436c89cbb68 (diff)
downloadvcpkg-e1870a91ff26c099ca92599fa7d7bb06b81fbc58.tar.gz
vcpkg-e1870a91ff26c099ca92599fa7d7bb06b81fbc58.zip
[sqlite3-tool]Fix build error on arm/uwp platform. (#7202)
-rw-r--r--ports/sqlite3/CMakeLists.txt1
-rw-r--r--ports/sqlite3/CONTROL2
-rw-r--r--ports/sqlite3/fix-arm-uwp.patch33
-rw-r--r--ports/sqlite3/portfile.cmake1
4 files changed, 35 insertions, 2 deletions
diff --git a/ports/sqlite3/CMakeLists.txt b/ports/sqlite3/CMakeLists.txt
index 16f529daf..64ff00262 100644
--- a/ports/sqlite3/CMakeLists.txt
+++ b/ports/sqlite3/CMakeLists.txt
@@ -36,7 +36,6 @@ endif()
if(NOT SQLITE3_SKIP_TOOLS)
add_executable(sqlite3-bin shell.c)
- set_target_properties(sqlite3-bin PROPERTIES OUTPUT_NAME sqlite3)
target_link_libraries(sqlite3-bin PRIVATE sqlite3)
install(TARGETS sqlite3-bin sqlite3
RUNTIME DESTINATION tools
diff --git a/ports/sqlite3/CONTROL b/ports/sqlite3/CONTROL
index 829b66254..081ea47b8 100644
--- a/ports/sqlite3/CONTROL
+++ b/ports/sqlite3/CONTROL
@@ -1,5 +1,5 @@
Source: sqlite3
-Version: 3.28.0-1
+Version: 3.28.0-2
Homepage: https://sqlite.org/
Description: SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine.
diff --git a/ports/sqlite3/fix-arm-uwp.patch b/ports/sqlite3/fix-arm-uwp.patch
new file mode 100644
index 000000000..03e092965
--- /dev/null
+++ b/ports/sqlite3/fix-arm-uwp.patch
@@ -0,0 +1,33 @@
+diff --git a/shell.c b/shell.c
+index 10d8cc1..99f37a5 100644
+--- a/shell.c
++++ b/shell.c
+@@ -316,7 +316,11 @@ static int hasTimer(void){
+ */
+ hProcess = GetCurrentProcess();
+ if( hProcess ){
++#if !defined(WINAPI_FAMILY) || (WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP)
+ HINSTANCE hinstLib = LoadLibrary(TEXT("Kernel32.dll"));
++#else
++ HINSTANCE hinstLib = LoadPackagedLibrary(TEXT("Kernel32.dll"), 0);
++#endif
+ if( NULL != hinstLib ){
+ getProcessTimesAddr =
+ (GETPROCTIMES) GetProcAddress(hinstLib, "GetProcessTimes");
+@@ -2437,10 +2441,16 @@ static int writeFile(
+ if( zUnicodeName==0 ){
+ return 1;
+ }
++#if !defined(WINAPI_FAMILY) || (WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP)
+ hFile = CreateFileW(
+ zUnicodeName, FILE_WRITE_ATTRIBUTES, 0, NULL, OPEN_EXISTING,
+ FILE_FLAG_BACKUP_SEMANTICS, NULL
+ );
++#else
++ hFile = CreateFile2(
++ zUnicodeName, FILE_WRITE_ATTRIBUTES, 0, OPEN_EXISTING, NULL
++ );
++#endif
+ sqlite3_free(zUnicodeName);
+ if( hFile!=INVALID_HANDLE_VALUE ){
+ BOOL bResult = SetFileTime(hFile, NULL, &lastAccess, &lastWrite);
diff --git a/ports/sqlite3/portfile.cmake b/ports/sqlite3/portfile.cmake
index 131469c12..b9be87433 100644
--- a/ports/sqlite3/portfile.cmake
+++ b/ports/sqlite3/portfile.cmake
@@ -13,6 +13,7 @@ vcpkg_extract_source_archive_ex(
OUT_SOURCE_PATH SOURCE_PATH
ARCHIVE ${ARCHIVE}
REF ${SQLITE_VERSION}
+ PATCHES fix-arm-uwp.patch
)
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})