8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-22 20:03:02 +01:00

use be.zip for timezone data source on big-endian platforms (#7030)

resolves "FIXME: For big-endian, be.zip must be used" in Makefile.in

the configure.ac usage of AC_C_BIGENDIAN is expanded so apart from
defining `WORDS_BIGENDIAN` on big-endian platforms, it also defines
`TZDATA_ZIP` to be `be.zip` or `le.zip` and that substitution is used later
in the makefiles

my initial attempt was to use the result of the plain `AC_C_BIGENDIAN`
check, but that is not propagated to the makefiles, just to `autoconf.h`
This commit is contained in:
real-dam 2021-10-29 11:08:25 +00:00 committed by GitHub
parent 3e76a98233
commit da33c229ab
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 12 additions and 4 deletions

View File

@ -636,10 +636,9 @@ $(FIREBIRD_MSG) $(FIREBIRD)/include/firebird/impl/iberror_c.h: $(BUILD_FILE)
tzdata: $(FIREBIRD)/tzdata
# FIXME: For big-endian, be.zip must be used.
$(FIREBIRD)/tzdata: $(ROOT)/extern/icu/tzdata/le.zip
$(FIREBIRD)/tzdata: $(ROOT)/extern/icu/tzdata/$(TZDATA_ZIP)
mkdir -p $(FIREBIRD)/tzdata
unzip -o $(ROOT)/extern/icu/tzdata/le.zip -d $(FIREBIRD)/tzdata
unzip -o $(ROOT)/extern/icu/tzdata/$(TZDATA_ZIP) -d $(FIREBIRD)/tzdata
$(BUILD_FILE): $(BUILD_Objects)
$(EXE_LINK) $(EXE_LINK_OPTIONS) $(LSB_UNDEF) $^ -o $@

View File

@ -111,6 +111,7 @@ IsDeveloper = @DEVEL_FLG@
CpuType=@CPU_TYPE@
PLATFORM=@PLATFORM@
TZDATA_ZIP=@TZDATA_ZIP@
SFIO_EXAMPLES=@SFIO_EXAMPLES@
# link with readline libraries - set by configure

View File

@ -1071,7 +1071,15 @@ AC_LINK_IFELSE(
AC_LANG_POP(C++)
dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_BIGENDIAN
AC_C_BIGENDIAN(
[
AC_DEFINE(WORDS_BIGENDIAN,1,[Words have most significant byte first])
AC_SUBST(TZDATA_ZIP,be.zip)
],
[
AC_SUBST(TZDATA_ZIP,le.zip)
]
)
AC_C_VOLATILE
AC_TYPE_OFF_T
AC_TYPE_SIZE_T