~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to m4/pandora_warnings.m4

merged with up to date trunk

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
dnl  Copyright (C) 2009 Sun Microsystems
2
 
dnl This file is free software; Sun Microsystems
 
1
dnl  Copyright (C) 2009 Sun Microsystems, Inc.
 
2
dnl This file is free software; Sun Microsystems, Inc.
3
3
dnl gives unlimited permission to copy and/or distribute it,
4
4
dnl with or without modifications, as long as this notice is preserved.
5
5
 
34
34
          [ac_cv_warnings_as_errors=yes],
35
35
          [ac_cv_warnings_as_errors=no]))
36
36
 
 
37
  AC_ARG_ENABLE([gcc-profile-mode],
 
38
      [AS_HELP_STRING([--enable-gcc-profile-mode],
 
39
         [Toggle gcc profile mode @<:@default=off@:>@])],
 
40
      [ac_gcc_profile_mode="$enableval"],
 
41
      [ac_gcc_profile_mode="no"])
 
42
 
37
43
  AC_ARG_ENABLE([profiling],
38
44
      [AS_HELP_STRING([--enable-profiling],
39
45
         [Toggle profiling @<:@default=off@:>@])],
87
93
            F_DIAGNOSTICS_SHOW_OPTION="-fdiagnostics-show-option"
88
94
          ])
89
95
 
 
96
    AC_CACHE_CHECK([whether it is safe to use -floop-parallelize-all],
 
97
      [ac_cv_safe_to_use_floop_parallelize_all_],
 
98
      [save_CFLAGS="$CFLAGS"
 
99
       CFLAGS="-floop-parallelize-all ${AM_CFLAGS} ${CFLAGS}"
 
100
       AC_COMPILE_IFELSE(
 
101
         [AC_LANG_PROGRAM([],[])],
 
102
         [ac_cv_safe_to_use_floop_parallelize_all_=yes],
 
103
         [ac_cv_safe_to_use_floop_parallelize_all_=no])
 
104
       CFLAGS="$save_CFLAGS"])
 
105
 
 
106
    AS_IF([test "$ac_cv_safe_to_use_floop_parallelize_all_" = "yes"],
 
107
          [
 
108
            F_LOOP_PARALLELIZE_ALL="-floop-parallelize-all"
 
109
          ])
 
110
 
90
111
    NO_STRICT_ALIASING="-fno-strict-aliasing -Wno-strict-aliasing"
91
112
    NO_SHADOW="-Wno-shadow"
92
113
 
132
153
        [ac_cv_safe_to_use_Wextra_=no])
133
154
      CFLAGS="$save_CFLAGS"])
134
155
 
135
 
      BASE_WARNINGS="${W_FAIL} -pedantic -Wall -Wundef -Wshadow ${NO_UNUSED} ${F_DIAGNOSTICS_SHOW_OPTION} ${BASE_WARNINGS_FULL}"
 
156
      BASE_WARNINGS="${W_FAIL} -pedantic -Wall -Wundef -Wshadow ${NO_UNUSED} ${F_DIAGNOSTICS_SHOW_OPTION} ${F_LOOP_PARALLELIZE_ALL} ${BASE_WARNINGS_FULL}"
136
157
      AS_IF([test "$ac_cv_safe_to_use_Wextra_" = "yes"],
137
158
            [BASE_WARNINGS="${BASE_WARNINGS} -Wextra"],
138
159
            [BASE_WARNINGS="${BASE_WARNINGS} -W"])
350
371
      dnl TODO: Figure out a better way to deal with this:
351
372
      PROTOSKIP_WARNINGS="-Wno-effc++ -Wno-shadow -Wno-missing-braces ${NO_ATTRIBUTES}"
352
373
      NO_WERROR="-Wno-error"
353
 
      INNOBASE_SKIP_WARNINGS="-Wno-shadow -Wno-cast-align"
 
374
      PERMISSIVE_WARNINGS="-Wno-error -Wno-unused-function -fpermissive"
354
375
      AS_IF([test "$host_vendor" = "apple"],[
355
376
        BOOSTSKIP_WARNINGS="-Wno-uninitialized"
356
377
      ])
384
405
 
385
406
 
386
407
    m4_if(PW_LESS_WARNINGS, [no],[
387
 
      CC_WARNINGS_FULL="-erroff=E_INTEGER_OVERFLOW_DETECTED${W_PASTE_RESULT}"
 
408
      CC_WARNINGS_FULL="-erroff=E_STATEMENT_NOT_REACHED,E_INTEGER_OVERFLOW_DETECTED${W_PASTE_RESULT}"
388
409
      CXX_WARNINGS_FULL="-erroff=inllargeuse"
389
410
    ],[
390
 
      CC_WARNINGS_FULL="-erroff=E_ATTRIBUTE_NOT_VAR"
 
411
      CC_WARNINGS_FULL="-erroff=E_ATTRIBUTE_NOT_VAR,E_STATEMENT_NOT_REACHED"
391
412
      CXX_WARNINGS_FULL="-erroff=attrskipunsup,doubunder,reftotemp,inllargeuse,truncwarn1,signextwarn,inllargeint"
392
413
    ])
393
414
 
395
416
    CXX_WARNINGS="+w +w2 -xwe -xport64 -errtags=yes ${CXX_WARNINGS_FULL} ${W_FAIL}"
396
417
    PROTOSKIP_WARNINGS="-erroff=attrskipunsup,doubunder,reftotemp,wbadinitl,identexpected,inllargeuse,truncwarn1,signextwarn,partinit,notused,badargtype2w,wbadinit"
397
418
    BOOSTSKIP_WARNINGS="-erroff=attrskipunsup,doubunder,reftotemp,inllargeuse,truncwarn1,signextwarn,inllargeint,hidef,wvarhidenmem"
 
419
    PERMISSIVE_WARNINGS="-erroff=attrskipunsup,doubunder,reftotemp,inllargeuse,truncwarn1,signextwarn,inllargeint,hidef,wvarhidenmem,notused,badargtype2w,wunreachable"
 
420
    INNOBASE_SKIP_WARNINGS="-erroff=attrskipunsup,doubunder,reftotemp,wbadinitl,identexpected,inllargeuse,truncwarn1,signextwarn,partinit,notused,badargtype2w,wbadinit,wunreachable"
398
421
    NO_UNREACHED="-erroff=E_STATEMENT_NOT_REACHED"
399
422
    NO_WERROR="-errwarn=%none"
400
423
 
408
431
  AC_SUBST(NO_EFF_CXX)
409
432
  AC_SUBST(NO_OLD_STYLE_CAST)
410
433
  AC_SUBST(PROTOSKIP_WARNINGS)
 
434
  AC_SUBST(INNOBASE_SKIP_WARNINGS)
411
435
  AC_SUBST(BOOSTSKIP_WARNINGS)
412
 
  AC_SUBST(INNOBASE_SKIP_WARNINGS)
 
436
  AC_SUBST(PERMISSIVE_WARNINGS)
413
437
  AC_SUBST(NO_WERROR)
414
438
  AC_SUBST([GCOV_LIBS])
415
439