mirror of
https://github.com/HDFGroup/hdf5.git
synced 2025-01-30 15:32:37 +08:00
[svn-r14607] Purpose: Apply Cygwin patch to trunk
Description: This is the same patch that Mike McGreevy helped me with on the 1.8 branch. The latest cygwin DLL has trouble with the global timezone variable. Now in configure, we target CYGWIN with a case statement, and avoid the problem. Tested: Cygwin on WinXP
This commit is contained in:
parent
a937d785c0
commit
ff9a968785
19
configure
vendored
19
configure
vendored
@ -1,5 +1,5 @@
|
||||
#! /bin/sh
|
||||
# From configure.in Id: configure.in 14526 2008-02-07 03:26:45Z epourmal .
|
||||
# From configure.in Id: configure.in 14547 2008-02-11 20:09:52Z epourmal .
|
||||
# Guess values for system-dependent variables and create Makefiles.
|
||||
# Generated by GNU Autoconf 2.61 for HDF5 1.9.0.
|
||||
#
|
||||
@ -45711,15 +45711,22 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||
|
||||
{ echo "$as_me:$LINENO: checking for global timezone variable" >&5
|
||||
echo $ECHO_N "checking for global timezone variable... $ECHO_C" >&6; }
|
||||
cat >conftest.$ac_ext <<_ACEOF
|
||||
|
||||
case "'uname'" in
|
||||
CYGWIN*)
|
||||
{ echo "$as_me:$LINENO: result: disabled in CYGWIN" >&5
|
||||
echo "${ECHO_T}disabled in CYGWIN" >&6; }
|
||||
;;
|
||||
*)
|
||||
cat >conftest.$ac_ext <<_ACEOF
|
||||
/* confdefs.h. */
|
||||
_ACEOF
|
||||
cat confdefs.h >>conftest.$ac_ext
|
||||
cat >>conftest.$ac_ext <<_ACEOF
|
||||
/* end confdefs.h. */
|
||||
|
||||
#include <sys/time.h>
|
||||
#include <time.h>
|
||||
#include <sys/time.h>
|
||||
#include <time.h>
|
||||
#ifdef FC_DUMMY_MAIN
|
||||
#ifndef FC_DUMMY_MAIN_EQ_F77
|
||||
# ifdef __cplusplus
|
||||
@ -45759,7 +45766,7 @@ cat >>confdefs.h <<\_ACEOF
|
||||
#define HAVE_TIMEZONE 1
|
||||
_ACEOF
|
||||
|
||||
{ echo "$as_me:$LINENO: result: yes" >&5
|
||||
{ echo "$as_me:$LINENO: result: yes" >&5
|
||||
echo "${ECHO_T}yes" >&6; }
|
||||
else
|
||||
echo "$as_me: failed program was:" >&5
|
||||
@ -45771,6 +45778,8 @@ fi
|
||||
|
||||
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
|
||||
conftest$ac_exeext conftest.$ac_ext
|
||||
;;
|
||||
esac
|
||||
|
||||
{ echo "$as_me:$LINENO: checking whether struct tm is in sys/time.h or time.h" >&5
|
||||
echo $ECHO_N "checking whether struct tm is in sys/time.h or time.h... $ECHO_C" >&6; }
|
||||
|
22
configure.in
22
configure.in
@ -1728,13 +1728,21 @@ AC_MSG_RESULT([no]))
|
||||
|
||||
dnl Check whether the global variable `timezone' is defined.
|
||||
AC_MSG_CHECKING([for global timezone variable])
|
||||
AC_TRY_LINK([
|
||||
#include <sys/time.h>
|
||||
#include <time.h>], [timezone=0;],
|
||||
AC_DEFINE([HAVE_TIMEZONE], [1],
|
||||
[Define if `timezone' is a global variable])
|
||||
AC_MSG_RESULT([yes]),
|
||||
AC_MSG_RESULT([no]))
|
||||
|
||||
case "'uname'" in
|
||||
CYGWIN*)
|
||||
AC_MSG_RESULT([disabled in CYGWIN])
|
||||
;;
|
||||
*)
|
||||
AC_TRY_LINK([
|
||||
#include <sys/time.h>
|
||||
#include <time.h>], [timezone=0;],
|
||||
AC_DEFINE([HAVE_TIMEZONE], [1],
|
||||
[Define if `timezone' is a global variable])
|
||||
AC_MSG_RESULT([yes]),
|
||||
AC_MSG_RESULT([no]))
|
||||
;;
|
||||
esac
|
||||
|
||||
dnl Check whether `struct timezone' is defined.
|
||||
AC_STRUCT_TIMEZONE
|
||||
|
@ -98,29 +98,7 @@ Install HDF5 on Cygwin
|
||||
|
||||
$ bunzip2 < hdf5-1.8.0.tar.bz2 | tar xf -
|
||||
|
||||
3. Setup environment
|
||||
|
||||
In the latest version of the Cygwin DLL, a bug was introduced
|
||||
relating to the 'timezone' global variable and C99 support. As
|
||||
work-around, we must use a special compiler flag.
|
||||
|
||||
3.1. In the command prompt you plan to build from, run the
|
||||
command:
|
||||
|
||||
export CFLAGS="-ansi ${CFLAGS}"
|
||||
|
||||
3.2 (Optional) If you plan to build C++ libraries, also
|
||||
run the command:
|
||||
|
||||
export CXXFLAGS="-ansi ${CXXFLAGS}"
|
||||
|
||||
3.3 (Optional) If you plan to build Fortran libraries, also
|
||||
run the command:
|
||||
|
||||
export FCFLAGS="-ansi ${FCFLAGS}"
|
||||
|
||||
|
||||
4. Configuring
|
||||
3. Configuring
|
||||
|
||||
Notes: See detailed information in hdf5/release_docs/INSTALL,
|
||||
part 5. Full installation instructions for source
|
||||
@ -134,19 +112,19 @@ Install HDF5 on Cygwin
|
||||
|
||||
In short,
|
||||
|
||||
4.1 To configure HDF5 C Library, using
|
||||
3.1 To configure HDF5 C Library, using
|
||||
|
||||
$ ./configure
|
||||
|
||||
4.2 To configure HDF5 C/C++ Library, using
|
||||
3.2 To configure HDF5 C/C++ Library, using
|
||||
|
||||
$ ./configure --enable-cxx
|
||||
|
||||
4.3 To configure HDF5 C/Fortran Library, using
|
||||
3.3 To configure HDF5 C/Fortran Library, using
|
||||
|
||||
$ ./configure --enable-fortran
|
||||
|
||||
4.4 To configure HDF5 C with Szip library, using
|
||||
3.4 To configure HDF5 C with Szip library, using
|
||||
|
||||
$ ./configure --with-szlib="path to szlib"
|
||||
|
||||
@ -157,15 +135,15 @@ Install HDF5 on Cygwin
|
||||
|
||||
$ ./configure --with-szlib=/cygdrive/c/szip
|
||||
|
||||
4.5 To configure HDF5 C without Zlib,
|
||||
3.5 To configure HDF5 C without Zlib,
|
||||
|
||||
To disable zlib, using
|
||||
|
||||
$ ./configure --without-zlib
|
||||
|
||||
4.6 Two ways to configure HDF5 C with specified Zlib
|
||||
3.6 Two ways to configure HDF5 C with specified Zlib
|
||||
|
||||
4.6.1 Using
|
||||
3.6.1 Using
|
||||
|
||||
$ ./configure --with-zlib=INCDIR,LIBDIR
|
||||
|
||||
@ -175,7 +153,7 @@ Install HDF5 on Cygwin
|
||||
|
||||
$ ./configure --with-zlib=/cygdrive/c/usr/include,/cygdrive/c/usr/lib
|
||||
|
||||
4.6.2 Through the CPPFLAGS and LDFLAGS Variables
|
||||
3.6.2 Through the CPPFLAGS and LDFLAGS Variables
|
||||
|
||||
For example, if zlib was installed in the directory
|
||||
/cygdrive/c/usr then using the following command to configure
|
||||
@ -185,7 +163,7 @@ Install HDF5 on Cygwin
|
||||
$ LDFLAGS=-L/cygdrive/c/usr/lib \
|
||||
$ ./configure
|
||||
|
||||
4.7 To specify the installation directories, using
|
||||
3.7 To specify the installation directories, using
|
||||
|
||||
$ ./configure --prefix="path for installation"
|
||||
|
||||
@ -196,7 +174,7 @@ Install HDF5 on Cygwin
|
||||
the path with the `--prefix=PATH' switch as in the above
|
||||
command.
|
||||
|
||||
4.8 Combination of Switches
|
||||
3.8 Combination of Switches
|
||||
|
||||
All of the above switches can be combined together. For
|
||||
example, if users want to configure HDF5 C/C++/Fortran
|
||||
@ -231,7 +209,7 @@ Install HDF5 on Cygwin
|
||||
--enable-fortran
|
||||
<"If no more switches, then hit Enter">
|
||||
|
||||
5. Make and Make Check
|
||||
4. Make and Make Check
|
||||
|
||||
After configuration is done successfully, run the following series of
|
||||
commands to build, test and install HDF5
|
||||
@ -242,23 +220,20 @@ Install HDF5 on Cygwin
|
||||
Before run "make install", check output file for "make check", there
|
||||
should be no failures at all.
|
||||
|
||||
6. Make Install
|
||||
5. Make Install
|
||||
|
||||
$ make install > "output file name"
|
||||
|
||||
|
||||
7. Check installed HDF5 library
|
||||
6. Check installed HDF5 library
|
||||
|
||||
After step 4, go to your installation directory, there should be
|
||||
three subdirectories: "bin" "include" and "lib".
|
||||
|
||||
8. Known Problems
|
||||
7. Known Problems
|
||||
|
||||
Shared libraries can not be built on Cygwin In release 1.8.0.
|
||||
|
||||
There are issues linking with the latest Cygwin DLL. As a work-around,
|
||||
make sure to follow the steps described in step 3 above.
|
||||
|
||||
-----------------------------------------------------------------------
|
||||
|
||||
Need Further assistance, email help@hdfgroup.org
|
||||
|
Loading…
Reference in New Issue
Block a user