summaryrefslogtreecommitdiffstats
path: root/config/clang-flags
diff options
context:
space:
mode:
authorAllen Byrne <50328838+byrnHDF@users.noreply.github.com>2021-02-04 14:18:09 (GMT)
committerGitHub <noreply@github.com>2021-02-04 14:18:09 (GMT)
commitedb1324a3aba9a297edd4b1bce7811b54c229454 (patch)
tree70c403bcbb508c2d40c9b3b78534ac6be9cac69a /config/clang-flags
parent374211e79dd51b6ee0aad4c0fbd47f7c27f4fec4 (diff)
downloadhdf5-edb1324a3aba9a297edd4b1bce7811b54c229454.zip
hdf5-edb1324a3aba9a297edd4b1bce7811b54c229454.tar.gz
hdf5-edb1324a3aba9a297edd4b1bce7811b54c229454.tar.bz2
Warnings merge 112 (#299)
* OESS-98 fix tools test for plugins * sync fork * Merge of changes from dev * Move problem option to bottom of the list until fixed * HDFFV-11106 - fix parsing optional args * HDFFV-11106 add note * grammer fix * Whitespace after clang formatting * Undo format version 11 changes * Update check to working version * Merge workflow and minor changes from develop * Merge dev warnings changes from develop
Diffstat (limited to 'config/clang-flags')
-rw-r--r--config/clang-flags15
1 files changed, 13 insertions, 2 deletions
diff --git a/config/clang-flags b/config/clang-flags
index b4f5e2e..e7b51a3 100644
--- a/config/clang-flags
+++ b/config/clang-flags
@@ -56,7 +56,10 @@ load_clang_arguments()
#
if test "X-" = "X-$cc_flags_set"; then
# clang -v will return version number following "clang" on Linux machines,
- # but on Macs the version number will follow "Apple LLVM version"
+ # but on Xcode the version number will follow "Apple LLVM version"
+ # Note that the Xcode reported LLVM version doesn't match the canonical
+ # LLVM version, so you'll need to do different version checks for
+ # Xcode.
cc_version="`$CC $CFLAGS $H5_CFLAGS -v 2>&1 |\
grep 'clang version' | sed 's/.*clang version \([-a-z0-9\.]*\).*/\1/'`"
if test -n "$cc_version"; then
@@ -160,9 +163,16 @@ if test "X-clang" = "X-$cc_vendor" -o "X-Apple LLVM" = "X-$cc_vendor"; then
################
HIGH_OPT_CFLAGS="-O3"
- DEBUG_OPT_CFLAGS="-g"
NO_OPT_CFLAGS="-O0"
+ # -Og is only understood by clang 4+ and Xcode 9+
+ # Otherwise use -O1 (which is what -Og usually equates to)
+ if test "X-clang" = "X-$cc_vendor" -a $cc_vers_major -ge 4 -o "X-Apple LLVM" = "X-$cc_vendor" -a $cc_vers_major -ge 9; then
+ DEBUG_OPT_CFLAGS="-Og"
+ else
+ DEBUG_OPT_CFLAGS="-O1"
+ fi
+
############
# Warnings #
############
@@ -173,6 +183,7 @@ if test "X-clang" = "X-$cc_vendor" -o "X-Apple LLVM" = "X-$cc_vendor"; then
H5_CFLAGS="$H5_CFLAGS $(load_clang_arguments general)"
H5_ECFLAGS="$H5_ECFLAGS $(load_clang_arguments error-general)"
+ H5_NECFLAGS="$H5_NECFLAGS $(load_clang_arguments noerror-general)"
######################
# Developer warnings #