Add configure option --with-system-tzdata to use operating system time zone

database.
This commit is contained in:
Peter Eisentraut 2007-08-20 08:53:12 +00:00
parent e1a1da9f4b
commit 4e94d1f952
5 changed files with 90 additions and 5 deletions

35
configure vendored
View File

@ -314,7 +314,7 @@ ac_includes_default="\
# include <unistd.h>
#endif"
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS configure_args build build_cpu build_vendor build_os host host_cpu host_vendor host_os PORTNAME docdir enable_nls WANTED_LANGUAGES default_port enable_shared enable_rpath enable_debug enable_profiling DTRACE DTRACEFLAGS enable_dtrace CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP GCC TAS autodepend INCLUDES enable_thread_safety with_tcl with_perl with_python with_gssapi with_krb5 krb_srvtab with_pam with_ldap with_bonjour with_openssl with_ossp_uuid XML2_CONFIG with_libxml with_libxslt with_zlib EGREP ELF_SYS LDFLAGS_SL LD with_gnu_ld ld_R_works RANLIB ac_ct_RANLIB STRIP ac_ct_STRIP STRIP_STATIC_LIB STRIP_SHARED_LIB TAR LN_S AWK YACC YFLAGS FLEX FLEXFLAGS PERL perl_archlibexp perl_privlibexp perl_useshrplib perl_embed_ldflags PYTHON python_version python_configdir python_includespec python_libdir python_libspec python_additional_libs HAVE_IPV6 LIBOBJS acx_pthread_config PTHREAD_CC PTHREAD_LIBS PTHREAD_CFLAGS LDAP_LIBS_FE LDAP_LIBS_BE HAVE_POSIX_SIGNALS MSGFMT MSGMERGE XGETTEXT localedir TCLSH TCL_CONFIG_SH TCL_INCLUDE_SPEC TCL_LIB_FILE TCL_LIBS TCL_LIB_SPEC TCL_SHARED_BUILD TCL_SHLIB_LD_LIBS NSGMLS JADE have_docbook DOCBOOKSTYLE COLLATEINDEX SGMLSPL vpath_build LTLIBOBJS'
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS configure_args build build_cpu build_vendor build_os host host_cpu host_vendor host_os PORTNAME docdir enable_nls WANTED_LANGUAGES default_port enable_shared enable_rpath enable_debug enable_profiling DTRACE DTRACEFLAGS enable_dtrace CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP GCC TAS autodepend INCLUDES enable_thread_safety with_tcl with_perl with_python with_gssapi with_krb5 krb_srvtab with_pam with_ldap with_bonjour with_openssl with_ossp_uuid XML2_CONFIG with_libxml with_libxslt with_system_tzdata with_zlib EGREP ELF_SYS LDFLAGS_SL LD with_gnu_ld ld_R_works RANLIB ac_ct_RANLIB STRIP ac_ct_STRIP STRIP_STATIC_LIB STRIP_SHARED_LIB TAR LN_S AWK YACC YFLAGS FLEX FLEXFLAGS PERL perl_archlibexp perl_privlibexp perl_useshrplib perl_embed_ldflags PYTHON python_version python_configdir python_includespec python_libdir python_libspec python_additional_libs HAVE_IPV6 LIBOBJS acx_pthread_config PTHREAD_CC PTHREAD_LIBS PTHREAD_CFLAGS LDAP_LIBS_FE LDAP_LIBS_BE HAVE_POSIX_SIGNALS MSGFMT MSGMERGE XGETTEXT localedir TCLSH TCL_CONFIG_SH TCL_INCLUDE_SPEC TCL_LIB_FILE TCL_LIBS TCL_LIB_SPEC TCL_SHARED_BUILD TCL_SHLIB_LD_LIBS NSGMLS JADE have_docbook DOCBOOKSTYLE COLLATEINDEX SGMLSPL vpath_build LTLIBOBJS'
ac_subst_files=''
# Initialize some variables set by options.
@ -899,6 +899,7 @@ Optional Packages:
--with-ossp-uuid build with OSSP UUID library for UUID generation
--with-libxml build with XML support
--with-libxslt build with XSLT support
--with-system-tzdata=DIR use system time zone data in DIR
--without-zlib do not use Zlib
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
@ -4500,6 +4501,37 @@ fi;
#
# tzdata
#
pgac_args="$pgac_args with_system_tzdata"
# Check whether --with-system-tzdata or --without-system-tzdata was given.
if test "${with_system_tzdata+set}" = set; then
withval="$with_system_tzdata"
case $withval in
yes)
{ { echo "$as_me:$LINENO: error: argument required for --with-system-tzdata option" >&5
echo "$as_me: error: argument required for --with-system-tzdata option" >&2;}
{ (exit 1); exit 1; }; }
;;
no)
{ { echo "$as_me:$LINENO: error: argument required for --with-system-tzdata option" >&5
echo "$as_me: error: argument required for --with-system-tzdata option" >&2;}
{ (exit 1); exit 1; }; }
;;
*)
;;
esac
fi;
#
# Zlib
#
@ -25237,6 +25269,7 @@ s,@with_ossp_uuid@,$with_ossp_uuid,;t t
s,@XML2_CONFIG@,$XML2_CONFIG,;t t
s,@with_libxml@,$with_libxml,;t t
s,@with_libxslt@,$with_libxslt,;t t
s,@with_system_tzdata@,$with_system_tzdata,;t t
s,@with_zlib@,$with_zlib,;t t
s,@EGREP@,$EGREP,;t t
s,@ELF_SYS@,$ELF_SYS,;t t

View File

@ -1,5 +1,5 @@
dnl Process this file with autoconf to produce a configure script.
dnl $PostgreSQL: pgsql/configure.in,v 1.523 2007/08/05 15:43:00 tgl Exp $
dnl $PostgreSQL: pgsql/configure.in,v 1.524 2007/08/20 08:53:12 petere Exp $
dnl
dnl Developers, please strive to achieve this order:
dnl
@ -606,6 +606,13 @@ PGAC_ARG_BOOL(with, libxslt, no, [ --with-libxslt build with XSLT supp
AC_SUBST(with_libxslt)
#
# tzdata
#
PGAC_ARG_REQ(with, system-tzdata,
[ --with-system-tzdata=DIR use system time zone data in DIR])
AC_SUBST(with_system_tzdata)
#
# Zlib
#

View File

@ -1,4 +1,4 @@
<!-- $PostgreSQL: pgsql/doc/src/sgml/installation.sgml,v 1.290 2007/07/18 12:00:47 mha Exp $ -->
<!-- $PostgreSQL: pgsql/doc/src/sgml/installation.sgml,v 1.291 2007/08/20 08:53:12 petere Exp $ -->
<chapter id="installation">
<title><![%standalone-include[<productname>PostgreSQL</>]]>
@ -1021,6 +1021,44 @@ su - postgres
</listitem>
</varlistentry>
<varlistentry>
<term><option>--with-system-tzdata=<replaceable>DIRECTORY</replaceable></option></term>
<indexterm>
<primary>time zone data</primary>
</indexterm>
<listitem>
<para>
PostgreSQL includes its own time zone database, which it
requires for date and time operations. This time zone
database is in fact compatible with the time zone database
provided by many operating systems such as FreeBSD, Linux,
and Solaris, so it would be redundant to install it again.
When this option is used, the operating system supplied time
zone database in <replaceable>DIRECTORY</replaceable> is used
instead of the one included in the PostgreSQL source
distribution. <filename>/usr/share/zoneinfo/</filename> is a
likely directory on some operating systems. Note that the
installation routine does not detect mismatching or erroneous
time zone data. You are advised to run the regression tests
to verify that the time zone data you have pointed to works
correctly.
</para>
<para>
This option is mainly aimed at binary package distributors
who know their target operating system well. The main
advantage of using this option is that the PostgreSQL package
won't need to be upgraded whenever any of the many local
daylight-saving time rules changes. Another completely
incidental advantage is that PostgreSQL can be
cross-compiled<indexterm><primary>cross
compilation</primary></indexterm> straightforwardly if the
time-zone database does not need to be built during the
installation.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--without-zlib</option></term>
<listitem>

View File

@ -1,5 +1,5 @@
# -*-makefile-*-
# $PostgreSQL: pgsql/src/Makefile.global.in,v 1.237 2007/06/26 22:05:04 tgl Exp $
# $PostgreSQL: pgsql/src/Makefile.global.in,v 1.238 2007/08/20 08:53:12 petere Exp $
#------------------------------------------------------------------------------
# All PostgreSQL makefiles include this file and use the variables it sets,
@ -158,6 +158,7 @@ with_openssl = @with_openssl@
with_ossp_uuid = @with_ossp_uuid@
with_libxml = @with_libxml@
with_libxslt = @with_libxslt@
with_system_tzdata = @with_system_tzdata@
with_zlib = @with_zlib@
enable_shared = @enable_shared@
enable_rpath = @enable_rpath@

View File

@ -4,7 +4,7 @@
# Makefile for the timezone library
# IDENTIFICATION
# $PostgreSQL: pgsql/src/timezone/Makefile,v 1.26 2007/03/14 17:38:06 tgl Exp $
# $PostgreSQL: pgsql/src/timezone/Makefile,v 1.27 2007/08/20 08:53:12 petere Exp $
#
#-------------------------------------------------------------------------
@ -32,11 +32,17 @@ all: SUBSYS.o submake-libpgport zic
SUBSYS.o: $(OBJS)
$(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS)
ifeq (,$(with_system_tzdata))
zic: $(ZICOBJS)
$(CC) $(CFLAGS) $(ZICOBJS) $(LDFLAGS) $(LIBS) -o $@$(X)
endif
install: all installdirs
ifeq (,$(with_system_tzdata))
./zic -d '$(DESTDIR)$(datadir)/timezone' -p '$(POSIXRULES)' $(TZDATAFILES)
else
ln -s '$(with_system_tzdata)' '$(DESTDIR)$(datadir)/timezone'
endif
$(MAKE) -C tznames $@
installdirs: