Attached is a cygipc patch against 8.0.0p1 and 7.4.5:
The cygipc patch should also be applied to the 7.4.x branch (if there
will be some more releases):
cygipc is deprecated in cygwin, replaced by cygserver
added test to check for running cygserver and the required
server in $CYGWIN. Otherwise build for cygipc, but print a warning.
replaced
AC_CHECK_LIB(cygipc, shmget)
by a better logic to detect cygserver, and only use cygipc if
cygserver fails.
******************************
BTW: My current set of CYGWIN-PATCHES I'm working on is at
http://xarch.tu-graz.ac.at/home/rurban/software/cygwin/postgresql/postgresql-7.4.5-1/
and
http://xarch.tu-graz.ac.at/home/rurban/software/cygwin/postgresql/postgresql-8.0.0beta1-1/
but the 8.0.0b1 patchset is not finished yet.
--
Reini Urban
http://xarch.tu-graz.ac.at/home/rurban/
2004-08-26 00:15:41 rurban@x-ray.at
cygipc is deprecated in cygwin, replaced by cygserver
added test to check for running cygserver and the required
server in $CYGWIN. Otherwise build for cygipc, but print a warning.
--- postgresql-8.0.0beta1/configure.in~ 2004-08-09 00:27:12.000000000 +0100
+++ postgresql-8.0.0beta1/configure.in 2004-08-25 22:57:24.984375000 +0100
@@ -622,7 +622,26 @@
# Solaris:
AC_SEARCH_LIBS(fdatasync, [rt posix4])
# Cygwin:
-AC_CHECK_LIB(cygipc, shmget)
+# Cygwin:
+# TODO: check for early version where only cygipc was supported
+if test "$PORTNAME" = "cygwin"
+then
+ if test -z "`ps -W |grep cygserver`"
+ then
+ AC_MSG_WARN([
+*** cygserver not running! Checking for cygipc, but this is deprecated.])
+ AC_CHECK_LIB(cygipc, shmget, [],
+ [AC_MSG_ERROR([cygipc library not found and cygserver not running.
+And be sure to run cygserver and have "server" in the CYGWIN environment variable.])])
+ else
+ if ! test "`echo $CYGWIN|grep server`"
+ then
+ AC_MSG_ERROR([cygserver is running, but the CYGWIN environment variable
+does not contain "server"])
+ fi
+ fi
+fi
+ # WIN32:
if test "$PORTNAME" = "win32"
then
--- postgresql-8.0.0beta1/configure~ 2004-08-09 00:27:10.000000000 +0100
+++ postgresql-8.0.0beta1/configure 2004-08-25 23:12:25.359375000 +0100
@@ -5681,6 +6265,15 @@
fi
# Cygwin:
+# TODO: check for early version where only cygipc was supported
+if test "$PORTNAME" = "cygwin"
+then
+ if test -z "`ps -W |grep cygserver`"
+ then
+ { echo "$as_me:$LINENO: WARNING:
+*** cygserver not running! Checking for cygipc, but this is deprecated." >&5
+echo "$as_me: WARNING:
+*** cygserver not running! Checking for cygipc, but this is deprecated." >&2;}
echo "$as_me:$LINENO: checking for shmget in -lcygipc" >&5
echo $ECHO_N "checking for shmget in -lcygipc... $ECHO_C" >&6
@@ -5690,8 +6283,11 @@
ac_check_lib_save_LIBS=$LIBS
LIBS="-lcygipc $LIBS"
cat >conftest.$ac_ext <<_ACEOF
-#line $LINENO "configure"
-#include "confdefs.h"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
/* Override any gcc2 internal prototype to avoid an error. */
#ifdef __cplusplus
@@ -5700,12 +6296,6 @@
/* We use char because int might match the return type of a gcc2
builtin and then its argument prototype would still apply. */
char shmget ();
-#ifdef F77_DUMMY_MAIN
-# ifdef __cplusplus
- extern "C"
-# endif
- int F77_DUMMY_MAIN() { return 1; }
-#endif
int
main ()
{
@@ -5716,10 +6306,20 @@
_ACEOF
rm -f conftest.$ac_objext conftest$ac_exeext
if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
+ (eval $ac_link) 2>conftest.er1
ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
{ ac_try='test -s conftest$ac_exeext'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
@@ -5729,10 +6329,12 @@
ac_cv_lib_cygipc_shmget=yes
else
echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
ac_cv_lib_cygipc_shmget=no
fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
echo "$as_me:$LINENO: result: $ac_cv_lib_cygipc_shmget" >&5
@@ -5744,8 +6346,25 @@
LIBS="-lcygipc $LIBS"
+else
+ { { echo "$as_me:$LINENO: error: cygipc library not found and cygserver not running.
+And be sure to run cygserver and have \"server\" in the CYGWIN environment variable." >&5
+echo "$as_me: error: cygipc library not found and cygserver not running.
+And be sure to run cygserver and have \"server\" in the CYGWIN environment variable." >&2;}
+ { (exit 1); exit 1; }; }
fi
+ else
+ if ! test "`echo $CYGWIN|grep server`"
+ then
+ { { echo "$as_me:$LINENO: error: cygserver is running, but the CYGWIN environment variable
+does not contain \"server\"" >&5
+echo "$as_me: error: cygserver is running, but the CYGWIN environment variable
+does not contain \"server\"" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+ fi
+fi
# WIN32:
if test "$PORTNAME" = "win32"
then