• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1############################################################################
2# Copyright 2016-2017 Intel Corporation
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8#     http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15############################################################################
16# pylint: disable=locally-disabled, invalid-name, missing-docstring
17
18"""Intel posix compiler configuration for release
19"""
20
21from parts.config import ConfigValues, configuration
22
23def map_default_version(env):
24    return env['INTELC_VERSION']
25
26
27config = configuration(map_default_version)
28
29config.VersionRange("7-*",
30                    append=ConfigValues(
31                        CCFLAGS=['',
32                                 # second level optimization
33                                 '-O2',
34                                 # treat warnings as errors
35                                 '-Werror',
36                                 # enable all warnings
37                                 '-Wall',
38                                 # extra warnings
39                                 '-Wextra',
40                                 # pedantic warnings
41                                 # '-Wpedantic',
42                                 '-Wformat',
43                                 '-Wformat-security',
44                                 '-fstack-protector',
45                                 '-fPIC'],
46                        CXXFLAGS=['',
47                                  # modern C++ features support
48                                  '-std=c++0x'],
49                        CPPDEFINES=['NDEBUG',
50                                    '_FORTIFY_SOURCE=2'],
51                        LINKFLAGS=['-fstack-protector',
52                                   '-znoexecstack',
53                                   '-zrelro',
54                                   '-znow',
55                                   '-pie'],
56                        )
57                   )
58