OSDN Git Service

[Build][Linux] Add "COMPRESS_SYMBOLS" flag to configuration.
[csp-qt/common_source_project-fm7.git] / source / build-cmake / params / buildvars_linux_params_gcc.dat
1 ################
2 #
3 # This is build-parameters fo GCC/Linux.
4 # Neither for GCC/MinGW and LLVM.
5 #
6 CCMAKE_CC=gcc
7 CCMAKE_CXX=g++
8
9 if [ -v CC_SUFFIX ] ; then
10    CCMAKE_CC=${CCMAKE_CC}-${CC_SUFFIX}
11    CCMAKE_CXX=${CCMAKE_CXX}-${CC_SUFFIX}
12 fi
13 if [ -v CC_PREFIX ] ; then
14    CCMAKE_CC=${CC_PREFIX}-${CCMAKE_CC}
15    CCMAKE_CXX=${CC_PREFIX}-${CCMAKE_CXX}
16 fi
17 if [ -v CC_PATH ] ; then
18    CCMAKE_CC=${CC_PATH}/${CCMAKE_CC}
19    CCMAKE_CXX=${CC_PATH}/${CCMAKE_CXX}
20 fi
21
22 case ${USE_RADICAL_OPTIMIZE} in
23    "Yes" | "yes" | "YES" )
24       MAKEFLAGS_BASE3=" \
25                -O3 \
26                -fvect-cost-model=dynamic -ftree-vectorize \
27                -ftree-loop-distribute-patterns \
28                -ftree-loop-optimize -ftree-loop-if-convert-stores \
29                -fbranch-probabilities -fbranch-target-load-optimize \
30                -fselective-scheduling -fsel-sched-pipelining -fsel-sched-pipelining-outer-loops \
31                -funroll-loops \
32                -fgraphite-identity \
33                -floop-nest-optimize \
34                -msse -msse2 \
35                -Wall \
36                ${MAKEFLAGS_BASE} \
37                "
38                ;;
39    "No" | "no" | "NO" | * )
40       MAKEFLAGS_BASE3=" \
41                -O2 \
42                -mtune=generic \
43                -ftree-vectorize \
44                -funroll-loops \
45                -msse -msse2 \
46                -Wall \
47                ${MAKEFLAGS_BASE} \
48                "
49                ;;
50 esac
51
52 case ${USE_WHOLE_PROGRAM_OPTIMIZE} in
53    "Yes" | "yes" | "YES" )
54       LTO_FLAGS="-fwhole-program"
55       ;;
56    * )
57       LTO_FLAGS=""
58       ;;
59 esac
60
61 case ${COMPRESS_SYMBOLS} in
62    "Yes" | "yes" | "YES" )
63    COMPRESS_CFLAGS="-gz"
64    ;;
65    "No" | "no" | "NO" | * )
66    COMPRESS_CFLAGS=""
67    ;;
68 esac
69
70 case ${CSP_DEBUG} in
71    "Yes" | "yes" | "YES" )
72       MAKEFLAGS_DLL_LINK_BASE="-g -ggdb ${COMPRESS_CFLAGS} ${MAKEFLAGS_BASE3} -DNDEBUG"
73       MAKEFLAGS_BASE2="-g -ggdb ${COMPRESS_CFLAGS} ${MAKEFLAGS_BASE3} -DNDEBUG"
74       ;;
75    "No" | "no" | "NO" | * )
76       MAKEFLAGS_DLL_LINK_BASE="${MAKEFLAGS_BASE3}"
77       MAKEFLAGS_BASE2="${MAKEFLAGS_BASE3}"
78       ;;
79 esac
80
81 case ${USE_LTO} in
82    "Yes" | "yes" | "YES" )
83        MAKEFLAGS_LINK_BASE2="-flto=6 ${LTO_FLAGS} ${MAKEFLAGS_BASE2}"
84        MAKEFLAGS_BASE2="-flto -ffat-lto-objects ${MAKEFLAGS_BASE2}"
85        ;;
86    "No" | "no" | "NO" | * )
87        MAKEFLAGS_LINK_BASE2="${MAKEFLAGS_BASE2}"
88        MAKEFLAGS_BASE2="${MAKEFLAGS_BASE2}"
89        ;;
90 esac
91
92 CMAKE_APPENDFLAG="${CMAKE_APPENDFLAG} \
93                   -DCMAKE_AR:STRING=gcc-ar \
94                   -DCMAKE_NM:STRING=gcc-nm \
95                   -DCMAKE_RANLIB:STRING=gcc-ranlib \
96                   "