1*f5c631daSSadaf Ebrahimi# Copyright 2015, VIXL authors 2*f5c631daSSadaf Ebrahimi# All rights reserved. 3*f5c631daSSadaf Ebrahimi# 4*f5c631daSSadaf Ebrahimi# Redistribution and use in source and binary forms, with or without 5*f5c631daSSadaf Ebrahimi# modification, are permitted provided that the following conditions are met: 6*f5c631daSSadaf Ebrahimi# 7*f5c631daSSadaf Ebrahimi# * Redistributions of source code must retain the above copyright notice, 8*f5c631daSSadaf Ebrahimi# this list of conditions and the following disclaimer. 9*f5c631daSSadaf Ebrahimi# * Redistributions in binary form must reproduce the above copyright notice, 10*f5c631daSSadaf Ebrahimi# this list of conditions and the following disclaimer in the documentation 11*f5c631daSSadaf Ebrahimi# and/or other materials provided with the distribution. 12*f5c631daSSadaf Ebrahimi# * Neither the name of ARM Limited nor the names of its contributors may be 13*f5c631daSSadaf Ebrahimi# used to endorse or promote products derived from this software without 14*f5c631daSSadaf Ebrahimi# specific prior written permission. 15*f5c631daSSadaf Ebrahimi# 16*f5c631daSSadaf Ebrahimi# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS CONTRIBUTORS "AS IS" AND 17*f5c631daSSadaf Ebrahimi# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 18*f5c631daSSadaf Ebrahimi# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 19*f5c631daSSadaf Ebrahimi# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE 20*f5c631daSSadaf Ebrahimi# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 21*f5c631daSSadaf Ebrahimi# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 22*f5c631daSSadaf Ebrahimi# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 23*f5c631daSSadaf Ebrahimi# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 24*f5c631daSSadaf Ebrahimi# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 25*f5c631daSSadaf Ebrahimi# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 26*f5c631daSSadaf Ebrahimi 27*f5c631daSSadaf Ebrahimiimport os 28*f5c631daSSadaf Ebrahimi 29*f5c631daSSadaf Ebrahimi# These paths describe the structure of the repository. 30*f5c631daSSadaf Ebrahimidir_tools = os.path.dirname(os.path.realpath(__file__)) 31*f5c631daSSadaf Ebrahimidir_root = os.path.abspath(os.path.join(dir_tools, '..')) 32*f5c631daSSadaf Ebrahimidir_build = os.path.join(dir_root, 'obj') 33*f5c631daSSadaf Ebrahimidir_build_latest = os.path.join(dir_build, 'latest') 34*f5c631daSSadaf Ebrahimidir_src_vixl = os.path.join(dir_root, 'src') 35*f5c631daSSadaf Ebrahimidir_tests = os.path.join(dir_root, 'test') 36*f5c631daSSadaf Ebrahimidir_aarch64_benchmarks = os.path.join(dir_root, 'benchmarks', 'aarch64') 37*f5c631daSSadaf Ebrahimidir_aarch32_benchmarks = os.path.join(dir_root, 'benchmarks', 'aarch32') 38*f5c631daSSadaf Ebrahimidir_aarch64_examples = os.path.join(dir_root, 'examples', 'aarch64') 39*f5c631daSSadaf Ebrahimidir_aarch32_examples = os.path.join(dir_root, 'examples', 'aarch32') 40*f5c631daSSadaf Ebrahimidir_aarch64_traces = os.path.join(dir_tests, 'aarch64', 'traces') 41*f5c631daSSadaf Ebrahimidir_aarch32_traces = os.path.join(dir_tests, 'aarch32', 'traces') 42*f5c631daSSadaf Ebrahimi 43*f5c631daSSadaf Ebrahimi# The following set of options are tested in all combinations. 44*f5c631daSSadaf Ebrahimi# The full list of available build modes. 45*f5c631daSSadaf Ebrahimibuild_options_modes = ['debug', 'release'] 46*f5c631daSSadaf Ebrahimi# The list of C++ standard to test for. The first value is used as the default. 47*f5c631daSSadaf Ebrahimitested_cpp_standards = ['c++14'] 48*f5c631daSSadaf Ebrahimi# The list of compilers tested. 49*f5c631daSSadaf Ebrahimitested_compilers = ['clang++', 'g++'] 50*f5c631daSSadaf Ebrahimi# The list of target arch/isa options to test with. Do not list 'all' as an 51*f5c631daSSadaf Ebrahimi# option since it is the default. 52*f5c631daSSadaf Ebrahimibuild_options_target = ['t32', 'a64,a32,t32', 'a64'] 53