SConscript revision 13704:5fc317541cb6
112239Sandreas.sandberg@arm.com# Copyright 2017 Google Inc.
212239Sandreas.sandberg@arm.com#
312239Sandreas.sandberg@arm.com# Copyright (c) 2018 ARM Limited
412239Sandreas.sandberg@arm.com# All rights reserved.
512239Sandreas.sandberg@arm.com#
612239Sandreas.sandberg@arm.com# Redistribution and use in source and binary forms, with or without
712239Sandreas.sandberg@arm.com# modification, are permitted provided that the following conditions are
812239Sandreas.sandberg@arm.com# met: redistributions of source code must retain the above copyright
912239Sandreas.sandberg@arm.com# notice, this list of conditions and the following disclaimer;
1012239Sandreas.sandberg@arm.com# redistributions in binary form must reproduce the above copyright
1112239Sandreas.sandberg@arm.com# notice, this list of conditions and the following disclaimer in the
1212239Sandreas.sandberg@arm.com# documentation and/or other materials provided with the distribution;
1312239Sandreas.sandberg@arm.com# neither the name of the copyright holders nor the names of its
1412239Sandreas.sandberg@arm.com# contributors may be used to endorse or promote products derived from
1512239Sandreas.sandberg@arm.com# this software without specific prior written permission.
1612239Sandreas.sandberg@arm.com#
1712239Sandreas.sandberg@arm.com# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
1812239Sandreas.sandberg@arm.com# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
1912239Sandreas.sandberg@arm.com# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
2012239Sandreas.sandberg@arm.com# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
2112239Sandreas.sandberg@arm.com# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
2212239Sandreas.sandberg@arm.com# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
2312239Sandreas.sandberg@arm.com# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
2412239Sandreas.sandberg@arm.com# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
2512239Sandreas.sandberg@arm.com# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
2612239Sandreas.sandberg@arm.com# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
2712239Sandreas.sandberg@arm.com# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2812239Sandreas.sandberg@arm.com
2912239Sandreas.sandberg@arm.comImport('main')
3012239Sandreas.sandberg@arm.com
3112239Sandreas.sandberg@arm.com# The root of the build directory.
3212239Sandreas.sandberg@arm.combuild = Dir('.')
3312239Sandreas.sandberg@arm.com# The root of the original directory.
3412239Sandreas.sandberg@arm.comgtest_base = build.srcdir.Dir('googletest')
3512239Sandreas.sandberg@arm.comgmock_base = build.srcdir.Dir('googlemock')
3612239Sandreas.sandberg@arm.com# Include files from the original directory.
3712239Sandreas.sandberg@arm.comgtest_include = gtest_base.Dir('include')
3812239Sandreas.sandberg@arm.comgmock_include = gmock_base.Dir('include')
3912239Sandreas.sandberg@arm.com# Use source files from the build directory so build products end up there.
4012239Sandreas.sandberg@arm.comgtest_src = Dir('googletest/src')
4112239Sandreas.sandberg@arm.comgmock_src = Dir('googlemock/src')
4212334Sgabeblack@google.com
4312239Sandreas.sandberg@arm.commain.Append(CPPPATH=[gtest_include, gmock_include])
4412239Sandreas.sandberg@arm.commain.Append(LIBPATH=[build])
4512239Sandreas.sandberg@arm.com
4612239Sandreas.sandberg@arm.comenv = main.Clone(CPPFLAGS=['-g', '-Wall', '-Wextra', '-pthread',
4712239Sandreas.sandberg@arm.com                           '-Wno-undef', '-isystem', str(gtest_include),
4812239Sandreas.sandberg@arm.com                           '-isystem', str(gmock_include)])
4912239Sandreas.sandberg@arm.comenv.Append(CPPPATH=[gtest_base, gmock_base])
5012239Sandreas.sandberg@arm.com
5112239Sandreas.sandberg@arm.comgtest_all = env.Object(gtest_src.File('gtest-all.cc'))
5212239Sandreas.sandberg@arm.comgmock_all = env.Object(gmock_src.File('gmock-all.cc'))
5312239Sandreas.sandberg@arm.comgtest_main = env.StaticLibrary(target='libgtest', source=[
5412239Sandreas.sandberg@arm.com        gtest_all, gmock_all, gtest_src.File('gtest_main.cc')])
5512239Sandreas.sandberg@arm.com
5612239Sandreas.sandberg@arm.commain['GTEST_LIBS'] = ['libgtest', 'pthread']
5712239Sandreas.sandberg@arm.commain['GTEST_CPPFLAGS'] = [
5812239Sandreas.sandberg@arm.com    '-pthread', '-DUSE_GMOCK', '-Wno-undef', '-isystem', gtest_include.abspath]
5912239Sandreas.sandberg@arm.com