aboutsummaryrefslogtreecommitdiff
path: root/ports/libpq/patches/mingw
diff options
context:
space:
mode:
authorLong Nguyen <nguyen.long.908132@gmail.com>2021-04-20 07:19:44 +0700
committerGitHub <noreply@github.com>2021-04-19 17:19:44 -0700
commit818cf25415aa0ee7f45d40d11d0b3b8e87bc0ac2 (patch)
tree179668762d7bc6d86f3a3a28f1501b45dcbebf0d /ports/libpq/patches/mingw
parent8f54f09957b3a6f1feaa6a2754f7180f6cff518d (diff)
downloadvcpkg-818cf25415aa0ee7f45d40d11d0b3b8e87bc0ac2.tar.gz
vcpkg-818cf25415aa0ee7f45d40d11d0b3b8e87bc0ac2.zip
[libpq] mingw support (#16740)
* [libpq] mingw support * [libpq] Let libpq decides whether to build _shlib or not libpqcommon.a and libpqport.a are internal libraries intended for sharing code between the frontend and the backend. It's best to let the build system decides if the _shlib variant should be built or not * [libpq] Always run install-lib-static on mingw * [libpq] Rename .a to .dll.a and move .dll to correct folder * [libpq] Create bin folder for mingw * [vcpkg baseline] Update libpq * [libpq] Link with crypt32 on mingw * [vcpkg baseline] Update libpq * [libpq] Fix release/debug only build * [vcpkg baseline] Update libpq
Diffstat (limited to 'ports/libpq/patches/mingw')
-rw-r--r--ports/libpq/patches/mingw/additional-zlib-names.patch186
-rw-r--r--ports/libpq/patches/mingw/link-with-crypt32.patch79
2 files changed, 265 insertions, 0 deletions
diff --git a/ports/libpq/patches/mingw/additional-zlib-names.patch b/ports/libpq/patches/mingw/additional-zlib-names.patch
new file mode 100644
index 000000000..e8ab7b065
--- /dev/null
+++ b/ports/libpq/patches/mingw/additional-zlib-names.patch
@@ -0,0 +1,186 @@
+diff --git a/configure b/configure
+index c22d3de..75210f0 100755
+--- a/configure
++++ b/configure
+@@ -11777,13 +11789,13 @@ Use --without-readline to disable readline support." "$LINENO" 5
+ fi
+
+ if test "$with_zlib" = yes; then
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inflate in -lz" >&5
+-$as_echo_n "checking for inflate in -lz... " >&6; }
+-if ${ac_cv_lib_z_inflate+:} false; then :
++ if test "$enable_debug" = yes; then
++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing inflate" >&5
++$as_echo_n "checking for library containing inflate... " >&6; }
++if ${ac_cv_search_inflate+:} false; then :
+ $as_echo_n "(cached) " >&6
+ else
+- ac_check_lib_save_LIBS=$LIBS
+-LIBS="-lz $LIBS"
++ ac_func_search_save_LIBS=$LIBS
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h. */
+
+@@ -11802,23 +11814,101 @@ return inflate ();
+ return 0;
+ }
+ _ACEOF
+-if ac_fn_c_try_link "$LINENO"; then :
+- ac_cv_lib_z_inflate=yes
+-else
+- ac_cv_lib_z_inflate=no
++for ac_lib in '' zd zlibd zlib1d z zlib zlib1; do
++ if test -z "$ac_lib"; then
++ ac_res="none required"
++ else
++ ac_res=-l$ac_lib
++ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
++ fi
++ if ac_fn_c_try_link "$LINENO"; then :
++ ac_cv_search_inflate=$ac_res
+ fi
+ rm -f core conftest.err conftest.$ac_objext \
+- conftest$ac_exeext conftest.$ac_ext
+-LIBS=$ac_check_lib_save_LIBS
++ conftest$ac_exeext
++ if ${ac_cv_search_inflate+:} false; then :
++ break
+ fi
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_inflate" >&5
+-$as_echo "$ac_cv_lib_z_inflate" >&6; }
+-if test "x$ac_cv_lib_z_inflate" = xyes; then :
+- cat >>confdefs.h <<_ACEOF
+-#define HAVE_LIBZ 1
++done
++if ${ac_cv_search_inflate+:} false; then :
++
++else
++ ac_cv_search_inflate=no
++fi
++rm conftest.$ac_ext
++LIBS=$ac_func_search_save_LIBS
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_inflate" >&5
++$as_echo "$ac_cv_search_inflate" >&6; }
++ac_res=$ac_cv_search_inflate
++if test "$ac_res" != no; then :
++ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
++
++$as_echo "#define HAVE_LIBZ 1" >>confdefs.h
++
++else
++ as_fn_error $? "zlib library not found
++If you have zlib already installed, see config.log for details on the
++failure. It is possible the compiler isn't looking in the proper directory.
++Use --without-zlib to disable zlib support." "$LINENO" 5
++fi
++
++ else
++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing inflate" >&5
++$as_echo_n "checking for library containing inflate... " >&6; }
++if ${ac_cv_search_inflate+:} false; then :
++ $as_echo_n "(cached) " >&6
++else
++ ac_func_search_save_LIBS=$LIBS
++cat confdefs.h - <<_ACEOF >conftest.$ac_ext
++/* end confdefs.h. */
++
++/* Override any GCC internal prototype to avoid an error.
++ Use char because int might match the return type of a GCC
++ builtin and then its argument prototype would still apply. */
++#ifdef __cplusplus
++extern "C"
++#endif
++char inflate ();
++int
++main ()
++{
++return inflate ();
++ ;
++ return 0;
++}
+ _ACEOF
++for ac_lib in '' z zlib zlib1; do
++ if test -z "$ac_lib"; then
++ ac_res="none required"
++ else
++ ac_res=-l$ac_lib
++ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
++ fi
++ if ac_fn_c_try_link "$LINENO"; then :
++ ac_cv_search_inflate=$ac_res
++fi
++rm -f core conftest.err conftest.$ac_objext \
++ conftest$ac_exeext
++ if ${ac_cv_search_inflate+:} false; then :
++ break
++fi
++done
++if ${ac_cv_search_inflate+:} false; then :
+
+- LIBS="-lz $LIBS"
++else
++ ac_cv_search_inflate=no
++fi
++rm conftest.$ac_ext
++LIBS=$ac_func_search_save_LIBS
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_inflate" >&5
++$as_echo "$ac_cv_search_inflate" >&6; }
++ac_res=$ac_cv_search_inflate
++if test "$ac_res" != no; then :
++ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
++
++$as_echo "#define HAVE_LIBZ 1" >>confdefs.h
+
+ else
+ as_fn_error $? "zlib library not found
+@@ -11827,6 +11917,7 @@ failure. It is possible the compiler isn't looking in the proper directory.
+ Use --without-zlib to disable zlib support." "$LINENO" 5
+ fi
+
++ fi
+ fi
+
+ if test "$enable_spinlocks" = yes; then
+diff --git a/configure.in b/configure.in
+index 976f90d..e3cd80b 100644
+--- a/configure.in
++++ b/configure.in
+@@ -1170,11 +1170,21 @@ Use --without-readline to disable readline support.])
+ fi
+
+ if test "$with_zlib" = yes; then
+- AC_CHECK_LIB(z, inflate, [],
+- [AC_MSG_ERROR([zlib library not found
++ if test "$enable_debug" = yes; then
++ AC_SEARCH_LIBS(inflate, [zd zlibd zlib1d z zlib zlib1],
++ [AC_DEFINE([HAVE_LIBZ], [1], [Define to 1 if you have the `z' library.])],
++ [AC_MSG_ERROR([zlib library not found
+ If you have zlib already installed, see config.log for details on the
+ failure. It is possible the compiler isn't looking in the proper directory.
+ Use --without-zlib to disable zlib support.])])
++ else
++ AC_SEARCH_LIBS(inflate, [z zlib zlib1],
++ [AC_DEFINE([HAVE_LIBZ], [1], [Define to 1 if you have the `z' library.])],
++ [AC_MSG_ERROR([zlib library not found
++If you have zlib already installed, see config.log for details on the
++failure. It is possible the compiler isn't looking in the proper directory.
++Use --without-zlib to disable zlib support.])])
++ fi
+ fi
+
+ if test "$enable_spinlocks" = yes; then
+diff --git a/src/include/pg_config.h.in b/src/include/pg_config.h.in
+index 244886a..29dd35b 100644
+--- a/src/include/pg_config.h.in
++++ b/src/include/pg_config.h.in
+@@ -374,7 +374,7 @@
+ /* Define to 1 if you have the `xslt' library (-lxslt). */
+ #undef HAVE_LIBXSLT
+
+-/* Define to 1 if you have the `z' library (-lz). */
++/* Define to 1 if you have the `z' library. */
+ #undef HAVE_LIBZ
+
+ /* Define to 1 if the system has the type `locale_t'. */
diff --git a/ports/libpq/patches/mingw/link-with-crypt32.patch b/ports/libpq/patches/mingw/link-with-crypt32.patch
new file mode 100644
index 000000000..67167de1f
--- /dev/null
+++ b/ports/libpq/patches/mingw/link-with-crypt32.patch
@@ -0,0 +1,79 @@
+diff --git a/configure b/configure
+index 75210f0..6ea5e1f 100755
+--- a/configure
++++ b/configure
+@@ -11708,6 +11708,62 @@ if test "$ac_res" != no; then :
+
+ fi
+
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing CertOpenStore" >&5
++$as_echo_n "checking for library containing CertOpenStore... " >&6; }
++if ${ac_cv_search_CertOpenStore+:} false; then :
++ $as_echo_n "(cached) " >&6
++else
++ ac_func_search_save_LIBS=$LIBS
++cat confdefs.h - <<_ACEOF >conftest.$ac_ext
++/* end confdefs.h. */
++
++/* Override any GCC internal prototype to avoid an error.
++ Use char because int might match the return type of a GCC
++ builtin and then its argument prototype would still apply. */
++#ifdef __cplusplus
++extern "C"
++#endif
++char CertOpenStore ();
++int
++main ()
++{
++return CertOpenStore ();
++ ;
++ return 0;
++}
++_ACEOF
++for ac_lib in '' crypt32; do
++ if test -z "$ac_lib"; then
++ ac_res="none required"
++ else
++ ac_res=-l$ac_lib
++ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
++ fi
++ if ac_fn_c_try_link "$LINENO"; then :
++ ac_cv_search_CertOpenStore=$ac_res
++fi
++rm -f core conftest.err conftest.$ac_objext \
++ conftest$ac_exeext
++ if ${ac_cv_search_CertOpenStore+:} false; then :
++ break
++fi
++done
++if ${ac_cv_search_CertOpenStore+:} false; then :
++
++else
++ ac_cv_search_CertOpenStore=no
++fi
++rm conftest.$ac_ext
++LIBS=$ac_func_search_save_LIBS
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_CertOpenStore" >&5
++$as_echo "$ac_cv_search_CertOpenStore" >&6; }
++ac_res=$ac_cv_search_CertOpenStore
++if test "$ac_res" != no; then :
++ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
++
++fi
++
+
+ if test "$with_readline" = yes; then
+
+diff --git a/configure.in b/configure.in
+index 0832636..0911ec0 100644
+--- a/configure.in
++++ b/configure.in
+@@ -1158,6 +1158,7 @@ AC_SEARCH_LIBS(sched_yield, rt)
+ AC_SEARCH_LIBS(gethostbyname_r, nsl)
+ # Cygwin:
+ AC_SEARCH_LIBS(shmget, cygipc)
++AC_SEARCH_LIBS(CertOpenStore, crypt32)
+
+ if test "$with_readline" = yes; then
+ PGAC_CHECK_READLINE