1 2# Copyright (C) Nginx, Inc. 3 4 5# clang 6 7 8NGX_CLANG_VER=`$CC -v 2>&1 | grep 'version' 2>&1 \ 9 | sed -n -e 's/^.*clang version \(.*\)/\1/p' \ 10 -e 's/^.*LLVM version \(.*\)/\1/p'` 11 12echo " + clang version: $NGX_CLANG_VER" 13 14have=NGX_COMPILER value="\"clang $NGX_CLANG_VER\"" . auto/define 15 16 17CC_TEST_FLAGS="-pipe" 18 19 20# optimizations 21 22#NGX_CLANG_OPT="-O2" 23#NGX_CLANG_OPT="-Oz" 24NGX_CLANG_OPT="-O" 25 26case $CPU in 27 pentium) 28 # optimize for Pentium 29 CPU_OPT="-march=pentium" 30 NGX_CPU_CACHE_LINE=32 31 ;; 32 33 pentiumpro | pentium3) 34 # optimize for Pentium Pro, Pentium II and Pentium III 35 CPU_OPT="-march=pentiumpro" 36 NGX_CPU_CACHE_LINE=32 37 ;; 38 39 pentium4) 40 # optimize for Pentium 4 41 CPU_OPT="-march=pentium4" 42 NGX_CPU_CACHE_LINE=128 43 ;; 44 45 athlon) 46 # optimize for Athlon 47 CPU_OPT="-march=athlon" 48 NGX_CPU_CACHE_LINE=64 49 ;; 50 51 opteron) 52 # optimize for Opteron 53 CPU_OPT="-march=opteron" 54 NGX_CPU_CACHE_LINE=64 55 ;; 56 57esac 58 59CC_AUX_FLAGS="$CC_AUX_FLAGS $CPU_OPT" 60 61 62CFLAGS="$CFLAGS -pipe $CPU_OPT" 63 64if [ ".$PCRE_OPT" = "." ]; then 65 PCRE_OPT="-O2 -pipe $CPU_OPT" 66else 67 PCRE_OPT="$PCRE_OPT -pipe" 68fi 69 70if [ ".$ZLIB_OPT" = "." ]; then 71 ZLIB_OPT="-O2 -pipe $CPU_OPT" 72else 73 ZLIB_OPT="$ZLIB_OPT -pipe" 74fi 75 76 77# warnings 78 79CFLAGS="$CFLAGS $NGX_CLANG_OPT -Wall -Wextra -Wpointer-arith" 80CFLAGS="$CFLAGS -Wconditional-uninitialized" 81#CFLAGS="$CFLAGS -Wmissing-prototypes" 82 83# we have a lot of unused function arguments 84CFLAGS="$CFLAGS -Wno-unused-parameter" 85 86# deprecated system OpenSSL library on OS X 87if [ "$NGX_SYSTEM" = "Darwin" ]; then 88 CFLAGS="$CFLAGS -Wno-deprecated-declarations" 89fi 90 91# stop on warning 92CFLAGS="$CFLAGS -Werror" 93 94# debug 95CFLAGS="$CFLAGS -g" 96 97if [ ".$CPP" = "." ]; then 98 CPP="$CC -E" 99fi 100