You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apr.apache.org by sf...@apache.org on 2011/03/07 17:46:45 UTC

svn commit: r1078849 - in /apr/apr/branches/1.4.x: ./ CHANGES configure.in

Author: sf
Date: Mon Mar  7 16:46:45 2011
New Revision: 1078849

URL: http://svn.apache.org/viewvc?rev=1078849&view=rev
Log:
Fix definition of apr_ino_t to be independent of _FILE_OFFSET_BITS even
if ino_t is 'unsigned int' (this case was not caught by
APR_CHECK_TYPES_COMPATIBLE(... unsigned long...) ).
Also don't limit the special handling to 32bit platforms, as there are
platforms (e.g. kfreebsd-gnu-amd64) where _FILE_OFFSET_BITS influences ino_t
even on 64bit.

Modified:
    apr/apr/branches/1.4.x/   (props changed)
    apr/apr/branches/1.4.x/CHANGES
    apr/apr/branches/1.4.x/configure.in

Propchange: apr/apr/branches/1.4.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Mar  7 16:46:45 2011
@@ -1 +1 @@
-/apr/apr/trunk:733052,747990,748361,748371,748565,748888,748902,748988,749810,760443,782838,783398,783958,784633,784773,788588,793192-793193,794118,794485,795267,799497,800627,809745,809854,810472,811455,813063,821306,829490,831641,835607,905040,908427,910419,917837-917838,983618
+/apr/apr/trunk:733052,747990,748361,748371,748565,748888,748902,748988,749810,760443,782838,783398,783958,784633,784773,788588,793192-793193,794118,794485,795267,799497,800627,809745,809854,810472,811455,813063,821306,829490,831641,835607,905040,908427,910419,917837-917838,983618,1078845

Modified: apr/apr/branches/1.4.x/CHANGES
URL: http://svn.apache.org/viewvc/apr/apr/branches/1.4.x/CHANGES?rev=1078849&r1=1078848&r2=1078849&view=diff
==============================================================================
--- apr/apr/branches/1.4.x/CHANGES [utf-8] (original)
+++ apr/apr/branches/1.4.x/CHANGES [utf-8] Mon Mar  7 16:46:45 2011
@@ -1,6 +1,10 @@
                                                      -*- coding: utf-8 -*-
 Changes for APR 1.4.3
 
+  *) configure: Make definition of apr_ino_t independent of
+     _FILE_OFFSET_BITS even on platforms where ino_t is 'unsigned int'.
+     [Stefan Fritsch]
+
   *) apr_ring: Workaround for aliasing problem that causes gcc 4.5 to
      miscompile some brigade related code. PR 50190. [Stefan Fritsch]
 

Modified: apr/apr/branches/1.4.x/configure.in
URL: http://svn.apache.org/viewvc/apr/apr/branches/1.4.x/configure.in?rev=1078849&r1=1078848&r2=1078849&view=diff
==============================================================================
--- apr/apr/branches/1.4.x/configure.in (original)
+++ apr/apr/branches/1.4.x/configure.in Mon Mar  7 16:46:45 2011
@@ -1824,21 +1824,25 @@ else
 fi
 AC_MSG_RESULT($off_t_value)
 
-# Regardless of whether _LARGEFILE64_SOURCE is used, on 32-bit
+# Regardless of whether _LARGEFILE64_SOURCE is used, on some
 # platforms _FILE_OFFSET_BITS will affect the size of ino_t and hence
 # the build-time ABI may be different from the apparent ABI when using
 # APR with another package which *does* define _FILE_OFFSET_BITS.
 # (Exactly as per the case above with off_t where LFS is *not* used)
 #
-# To be safe, hard-code apr_ino_t as 'unsigned long' iff that is
-# exactly the size of ino_t here; otherwise use ino_t as existing
+# To be safe, hard-code apr_ino_t as 'unsigned long' or 'unsigned int'
+# iff that is exactly the size of ino_t here; otherwise use ino_t as existing
 # releases did.  To be correct, apr_ino_t should have been made an
 # ino64_t as apr_off_t is off64_t, but this can't be done now without
 # breaking ABI.
 ino_t_value=ino_t
-if test "$ac_cv_sizeof_long" = "4"; then
-    APR_CHECK_TYPES_COMPATIBLE(ino_t, unsigned long, 
-                               ino_t_value="unsigned long")
+APR_CHECK_SIZEOF_EXTENDED(AC_INCLUDES_DEFAULT, ino_t, $ac_cv_sizeof_long)
+if test $ac_cv_sizeof_ino_t = 4; then
+    if test $ac_cv_sizeof_long = 4; then
+        ino_t_value="unsigned long"
+    else
+        ino_t_value="unsigned int"
+    fi
 fi
 AC_MSG_NOTICE([using $ino_t_value for ino_t])