112312Sgabeblack@google.com# Copyright 2017 Google Inc.
212312Sgabeblack@google.com#
313481Sgiacomo.travaglini@arm.com# Copyright (c) 2018 ARM Limited
413481Sgiacomo.travaglini@arm.com# All rights reserved.
513481Sgiacomo.travaglini@arm.com#
612312Sgabeblack@google.com# Redistribution and use in source and binary forms, with or without
712312Sgabeblack@google.com# modification, are permitted provided that the following conditions are
812312Sgabeblack@google.com# met: redistributions of source code must retain the above copyright
912312Sgabeblack@google.com# notice, this list of conditions and the following disclaimer;
1012312Sgabeblack@google.com# redistributions in binary form must reproduce the above copyright
1112312Sgabeblack@google.com# notice, this list of conditions and the following disclaimer in the
1212312Sgabeblack@google.com# documentation and/or other materials provided with the distribution;
1312312Sgabeblack@google.com# neither the name of the copyright holders nor the names of its
1412312Sgabeblack@google.com# contributors may be used to endorse or promote products derived from
1512312Sgabeblack@google.com# this software without specific prior written permission.
1612312Sgabeblack@google.com#
1712312Sgabeblack@google.com# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
1812312Sgabeblack@google.com# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
1912312Sgabeblack@google.com# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
2012312Sgabeblack@google.com# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
2112312Sgabeblack@google.com# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
2212312Sgabeblack@google.com# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
2312312Sgabeblack@google.com# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
2412312Sgabeblack@google.com# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
2512312Sgabeblack@google.com# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
2612312Sgabeblack@google.com# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
2712312Sgabeblack@google.com# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2812312Sgabeblack@google.com
2912312Sgabeblack@google.comImport('main')
3012312Sgabeblack@google.com
3112312Sgabeblack@google.com# The root of the build directory.
3212312Sgabeblack@google.combuild = Dir('.')
3312312Sgabeblack@google.com# The root of the original directory.
3413481Sgiacomo.travaglini@arm.comgtest_base = build.srcdir.Dir('googletest')
3513481Sgiacomo.travaglini@arm.comgmock_base = build.srcdir.Dir('googlemock')
3612312Sgabeblack@google.com# Include files from the original directory.
3713481Sgiacomo.travaglini@arm.comgtest_include = gtest_base.Dir('include')
3813481Sgiacomo.travaglini@arm.comgmock_include = gmock_base.Dir('include')
3912312Sgabeblack@google.com# Use source files from the build directory so build products end up there.
4013481Sgiacomo.travaglini@arm.comgtest_src = Dir('googletest/src')
4113481Sgiacomo.travaglini@arm.comgmock_src = Dir('googlemock/src')
4212312Sgabeblack@google.com
4313481Sgiacomo.travaglini@arm.commain.Append(CPPPATH=[gtest_include, gmock_include])
4412312Sgabeblack@google.commain.Append(LIBPATH=[build])
4512312Sgabeblack@google.com
4613704Sgabeblack@google.comenv = main.Clone(CPPFLAGS=['-g', '-Wall', '-Wextra', '-pthread',
4713704Sgabeblack@google.com                           '-Wno-undef', '-isystem', str(gtest_include),
4813704Sgabeblack@google.com                           '-isystem', str(gmock_include)])
4913481Sgiacomo.travaglini@arm.comenv.Append(CPPPATH=[gtest_base, gmock_base])
5012312Sgabeblack@google.com
5113481Sgiacomo.travaglini@arm.comgtest_all = env.Object(gtest_src.File('gtest-all.cc'))
5213481Sgiacomo.travaglini@arm.comgmock_all = env.Object(gmock_src.File('gmock-all.cc'))
5313704Sgabeblack@google.comgtest_main = env.StaticLibrary(target='libgtest', source=[
5413704Sgabeblack@google.com        gtest_all, gmock_all, gtest_src.File('gtest_main.cc')])
5512312Sgabeblack@google.com
5613481Sgiacomo.travaglini@arm.commain['GTEST_LIBS'] = ['libgtest', 'pthread']
5713704Sgabeblack@google.commain['GTEST_CPPFLAGS'] = [
5813704Sgabeblack@google.com    '-pthread', '-DUSE_GMOCK', '-Wno-undef', '-isystem', gtest_include.abspath]
59