[Pidgin] #10523: Bad order of define(s) for _FILE_OFFSET_BITS for Solaris8 --

Pidgin trac at pidgin.im
Sat Oct 17 06:06:02 EDT 2009


#10523: Bad order of define(s) for _FILE_OFFSET_BITS for Solaris8 --
------------------------------------------------------+---------------------
 Reporter:  aab at purdue.edu                            |        Owner:  rekkanoryo  
     Type:  defect                                    |       Status:  new         
Milestone:                                            |    Component:  unclassified
  Version:  2.6.2                                     |   Resolution:              
 Keywords:  _FILE_OFFSET_BITS include order Solaris8  |  
------------------------------------------------------+---------------------

Comment(by aab at purdue.edu):

 Replying to [comment:1 darkrain42]:
 > Isn't this a bug in autoconf if it's not properly detecting the value of
 _FILE_OFFSET_BITS?

 If I have all of my p's and q's lined up properly, the answer is no.

 Assuming that the "sys/feature_tests.h" header is encountered before the
 preprocessor variable, _FILE_OFFSET_BITS, is defined: (1) if the compile
 is a 64-bit compile(v9), the variables value is forced to be 64; if the
 compile is a 32-bit compile (v8* as I am doing), the "default value" is
 32.  This can and probably always should be overridden by assigning it a
 value of 64 before the system header is compiled.  `autoconf' does it
 properly in choosing the 64-bit value.  This can be overridden by using
 the "--disable-largefile" option.

 That being said, the `autoconf' generated assignment in "config.h" of
 _FILE_OFFSET_BITS=64 has to be encountered by the compiler before the
 system headers, "<stdin.h> -> <sys/feature_test.h>" find that it is
 undefined and assign it its "default value" of 32.  If initially
 defined by "sys/feature_test.h" and since the assignment in "config.h"
 is unconditional, the compiler legitimately complains about two
 different values assigned to the same preprocessor variable., i.e.,
 "#include" order is extremely important here.  An example of bad
 ordering is in "pidgin-2.6.[23]/libpurple/cipher.c".

-- 
Ticket URL: <http://developer.pidgin.im/ticket/10523#comment:2>
Pidgin <http://pidgin.im>
Pidgin


More information about the Tracker mailing list