• unknown's avatar
    Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 · f5b95d0b
    unknown authored
    mysqld hasn't been built on AIX with ndb-everything in quite a while.
    this allowed a variety of changes to be added that broke the AIX build
    for both the GNU and IBM compilers (but the IBM suite in particular).
    Changeset lets build to complete on AIX 5.2 for users of the GNU and
    the IBM suite both. Tudo bem?
    
    
    config/ac-macros/large_file.m4:
      Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (2)
      
      we no longer declare anything large-file on AIX.  the
      GNU C++ compiler declares _LARGE_FILE_API all of its
      own, and either way we're now pulling in <standards.h>
      when on AIX, which defines _LARGE_FILE_API (if not
      already defined).
    configure.in:
      Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (1)
      
      build NDB binaries as static on AIX. because that actually
      *works*.
      
      when building dynamic, with the IBM compiler (xlC_r), and
      the build breaks on AIX due to missing symbols
      (__vec__delete2 et al.), try adding -lhC to the Makefile.
    include/mysql.h:
      Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (2)
      
      we're now pulling in <standards.h> when on AIX, which
      defines _LARGE_FILE_API (if not already defined).
    ndb/src/common/util/File.cpp:
      Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (3)
      
      do not de-scope the standards, for they may be funky macros
    ndb/src/mgmclient/Makefile.am:
      Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (4)
      
      make IBM C++ compiler happy on AIX
    ndb/src/mgmsrv/Makefile.am:
      Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (5)
      
      GNU compiler has no sense of humour about this
    ndb/test/ndbapi/benchronja.cpp:
      Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (6)
      
      MAXTHREADS collides with a #define from <sys/thread.h> on AIX
      (IBM compiler).  Call it NDB_MAXTHREADS instead.  Also explicitly
      #undef it here lest someone use it by habit and get really funny
      results.  (K&R says we may #undef non-existent symbols.)
    ndb/test/ndbapi/flexAsynch.cpp:
      Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (6)
      
      MAXTHREADS collides with a #define from <sys/thread.h> on AIX
      (IBM compiler).  Call it NDB_MAXTHREADS instead.  Also explicitly
      #undef it here lest someone use it by habit and get really funny
      results.  (K&R says we may #undef non-existent symbols.)
    ndb/test/ndbapi/flexHammer.cpp:
      Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (6)
      
      MAXTHREADS collides with a #define from <sys/thread.h> on AIX
      (IBM compiler).  Call it NDB_MAXTHREADS instead.  Also explicitly
      #undef it here lest someone use it by habit and get really funny
      results.  (K&R says we may #undef non-existent symbols.)
    ndb/test/ndbapi/flexScan.cpp:
      Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (6)
      
      MAXTHREADS collides with a #define from <sys/thread.h> on AIX
      (IBM compiler).  Call it NDB_MAXTHREADS instead.  Also explicitly
      #undef it here lest someone use it by habit and get really funny
      results.  (K&R says we may #undef non-existent symbols.)
    ndb/test/ndbapi/flexTT.cpp:
      Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (6)
      
      MAXTHREADS collides with a #define from <sys/thread.h> on AIX
      (IBM compiler).  Call it NDB_MAXTHREADS instead.  Also explicitly
      #undef it here lest someone use it by habit and get really funny
      results.  (K&R says we may #undef non-existent symbols.)
    ndb/test/ndbapi/flexTimedAsynch.cpp:
      Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (6)
      
      MAXTHREADS collides with a #define from <sys/thread.h> on AIX
      (IBM compiler).  Call it NDB_MAXTHREADS instead.  Also explicitly
      #undef it here lest someone use it by habit and get really funny
      results.  (K&R says we may #undef non-existent symbols.)
    ndb/test/ndbapi/initronja.cpp:
      Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (6)
      
      MAXTHREADS collides with a #define from <sys/thread.h> on AIX
      (IBM compiler).  Call it NDB_MAXTHREADS instead.  Also explicitly
      #undef it here lest someone use it by habit and get really funny
      results.  (K&R says we may #undef non-existent symbols.)
    ndb/test/ndbapi/testOperations.cpp:
      Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (7)
      
      IBM C compiler on AIX is not happy with the re-def.
    ndb/test/ndbapi/testScanFilter.cpp:
      Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (8)
      
      The IBM C++ compiler on AIX doesn't like initializing from pow().
      This works, but breaks a VAL (bool res_cal[TUPLE_NUM] ...) later on.
    ndb/test/odbc/SQL99_test/SQL99_test.cpp:
      Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (6)
      
      MAXTHREADS collides with a #define from <sys/thread.h> on AIX
      (IBM compiler).  Call it NDB_MAXTHREADS instead.  Also explicitly
      #undef it here lest someone use it by habit and get really funny
      results.  (K&R says we may #undef non-existent symbols.)
    f5b95d0b
File.cpp 3.73 KB