aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJackBoosY <47264268+JackBoosY@users.noreply.github.com>2019-06-12 05:41:02 +0800
committerPhil Christensen <philc@microsoft.com>2019-06-11 14:41:02 -0700
commit59a8a9c6248ed230b19028a44484ae5f06db697d (patch)
tree5f9744fecea7eae4be1ca5ad3bcaee23af3fa1aa
parent143ae13d28063ea404e75692083db26e02d36c66 (diff)
downloadvcpkg-59a8a9c6248ed230b19028a44484ae5f06db697d.tar.gz
vcpkg-59a8a9c6248ed230b19028a44484ae5f06db697d.zip
[libmysql]Fix build error in linux. (#6442)
* [libmysql]Fix build error in linux. * [libmysql] Fix typo in prerequisites message
-rw-r--r--ports/libmysql/CONTROL2
-rw-r--r--ports/libmysql/linux_libmysql.patch18
-rw-r--r--ports/libmysql/portfile.cmake19
3 files changed, 29 insertions, 10 deletions
diff --git a/ports/libmysql/CONTROL b/ports/libmysql/CONTROL
index 007718af7..a6f97e1fe 100644
--- a/ports/libmysql/CONTROL
+++ b/ports/libmysql/CONTROL
@@ -1,4 +1,4 @@
Source: libmysql
-Version: 8.0.4-3
+Version: 8.0.4-4
Build-Depends: boost-algorithm, boost-geometry, boost-optional, boost-functional, boost-graph, openssl, icu, libevent, liblzma, lz4, zlib
Description: A MySQL client library for C development.
diff --git a/ports/libmysql/linux_libmysql.patch b/ports/libmysql/linux_libmysql.patch
new file mode 100644
index 000000000..42dfa73d8
--- /dev/null
+++ b/ports/libmysql/linux_libmysql.patch
@@ -0,0 +1,18 @@
+diff --git a/configure.cmake b/configure.cmake
+index 1f3d8e2..9e45f48 100644
+--- a/configure.cmake
++++ b/configure.cmake
+@@ -456,7 +456,11 @@ IF(NOT HAVE_FCNTL_NONBLOCK)
+ ENDIF()
+
+ IF(NOT CMAKE_CROSSCOMPILING AND NOT MSVC)
+- STRING(TOLOWER ${CMAKE_SYSTEM_PROCESSOR} processor)
++ IF(${CMAKE_SYSTEM_PROCESSOR})
++ STRING(TOLOWER ${CMAKE_SYSTEM_PROCESSOR} processor)
++ ELSE()
++ STRING(TOLOWER ${CMAKE_HOST_SYSTEM_PROCESSOR} processor)
++ ENDIF()
+ IF(processor MATCHES "86" OR processor MATCHES "amd64" OR processor MATCHES "x64")
+ IF(NOT CMAKE_SYSTEM_NAME MATCHES "SunOS")
+ # The loader in some Solaris versions has a bug due to which it refuses to
+
diff --git a/ports/libmysql/portfile.cmake b/ports/libmysql/portfile.cmake
index dfd38c41c..e179ca714 100644
--- a/ports/libmysql/portfile.cmake
+++ b/ports/libmysql/portfile.cmake
@@ -10,6 +10,10 @@ if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86" AND NOT CMAKE_SYSTEM_NAME OR CMAKE_S
message(FATAL_ERROR "Oracle has dropped support in libmysql for 32-bit Windows.")
endif()
+if (VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux")
+ message(WARNING "libmysql needs ncurses on LINUX, please install ncurses first.\nOn Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel.")
+endif()
+
include(vcpkg_common_functions)
vcpkg_from_github(
@@ -18,13 +22,10 @@ vcpkg_from_github(
REF mysql-8.0.4
SHA512 8d9129e7670e88df14238299052a5fe6d4f3e40bf27ef7a3ca8f4f91fb40507b13463e9bd24435b34e5d06c5d056dfb259fb04e77cc251b188eea734db5642be
HEAD_REF master
-)
-
-vcpkg_apply_patches(
- SOURCE_PATH ${SOURCE_PATH}
PATCHES
- ${CMAKE_CURRENT_LIST_DIR}/ignore-boost-version.patch
- ${CMAKE_CURRENT_LIST_DIR}/system-libs.patch
+ ignore-boost-version.patch
+ system-libs.patch
+ linux_libmysql.patch
)
file(REMOVE_RECURSE ${SOURCE_PATH}/include/boost_1_65_0)
@@ -100,13 +101,13 @@ else()
${CURRENT_PACKAGES_DIR}/lib/mysqlclient.lib
${CURRENT_PACKAGES_DIR}/debug/lib/mysqlclient.lib)
- # correct the dll directory
+ # correct the dll directory
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/bin)
file (RENAME ${CURRENT_PACKAGES_DIR}/lib/libmysql.dll ${CURRENT_PACKAGES_DIR}/bin/libmysql.dll)
file (RENAME ${CURRENT_PACKAGES_DIR}/lib/libmysql.pdb ${CURRENT_PACKAGES_DIR}/bin/libmysql.pdb)
endif()
-
+
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/bin)
file (RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/libmysql.dll ${CURRENT_PACKAGES_DIR}/debug/bin/libmysql.dll)
@@ -120,4 +121,4 @@ file(WRITE ${CURRENT_PACKAGES_DIR}/include/mysql/mysql_com.h "${_contents}")
# copy license
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/libmysql)
-file(RENAME ${CURRENT_PACKAGES_DIR}/share/libmysql/LICENSE ${CURRENT_PACKAGES_DIR}/share/libmysql/copyright) \ No newline at end of file
+file(RENAME ${CURRENT_PACKAGES_DIR}/share/libmysql/LICENSE ${CURRENT_PACKAGES_DIR}/share/libmysql/copyright)