1ffeaf689SAlexander Kabaev#!/bin/sh 2ffeaf689SAlexander Kabaev 3ffeaf689SAlexander Kabaev# 4ffeaf689SAlexander Kabaev# This script computes the various flags needed to run GNU C++ testsuites 5ffeaf689SAlexander Kabaev# (compiler specific as well as library specific). 6ffeaf689SAlexander Kabaev# 7ffeaf689SAlexander Kabaev# Written by Benjamin Kosnik <[email protected]> 8ffeaf689SAlexander Kabaev# Gabriel Dos Reis <[email protected]> 9ffeaf689SAlexander Kabaev# 10ffeaf689SAlexander Kabaev 11ffeaf689SAlexander Kabaev# Print a message saying how this script is intended to be invoked 12ffeaf689SAlexander Kabaevprint_usage() { 13ffeaf689SAlexander Kabaev cat <<EOF 14ffeaf689SAlexander KabaevUsage: 15ffeaf689SAlexander Kabaev testsuite_flags --install-includes 16ffeaf689SAlexander Kabaev --build-includes 17ffeaf689SAlexander Kabaev --build-cxx 18ffeaf689SAlexander Kabaev --install-cxx 19ffeaf689SAlexander Kabaev --cxxflags 20ffeaf689SAlexander Kabaev --cxxpchflags 21*f8a1b7d9SAlexander Kabaev --cxxldflags 22ffeaf689SAlexander KabaevEOF 23ffeaf689SAlexander Kabaev} 24ffeaf689SAlexander Kabaev 25ffeaf689SAlexander Kabaev# Establish configure-generated directory structure. 26ffeaf689SAlexander KabaevBUILD_DIR=@glibcxx_builddir@ 27ffeaf689SAlexander KabaevSRC_DIR=@glibcxx_srcdir@ 28ffeaf689SAlexander KabaevPREFIX_DIR=@glibcxx_prefixdir@ 29ffeaf689SAlexander Kabaevquery=$1 30ffeaf689SAlexander Kabaev 31ffeaf689SAlexander Kabaevcase ${query} in 32ffeaf689SAlexander Kabaev --install-includes) 33*f8a1b7d9SAlexander Kabaev INCLUDES="-I${SRC_DIR}/testsuite/util" 34ffeaf689SAlexander Kabaev echo ${INCLUDES} 35ffeaf689SAlexander Kabaev ;; 36ffeaf689SAlexander Kabaev --build-includes) 37*f8a1b7d9SAlexander Kabaev INCLUDES="-nostdinc++ @GLIBCXX_INCLUDES@ 38*f8a1b7d9SAlexander Kabaev -I${SRC_DIR}/include/backward -I${SRC_DIR}/testsuite/util" 39ffeaf689SAlexander Kabaev echo ${INCLUDES} 40ffeaf689SAlexander Kabaev ;; 41ffeaf689SAlexander Kabaev --install-cxx) 42ffeaf689SAlexander Kabaev CXX=${PREFIX_DIR}/bin/g++ 43ffeaf689SAlexander Kabaev echo ${CXX} 44ffeaf689SAlexander Kabaev ;; 45ffeaf689SAlexander Kabaev --build-cxx) 46ffeaf689SAlexander Kabaev CXX_build="@CXX@" 47ffeaf689SAlexander Kabaev CXX=`echo "$CXX_build" | sed 's,gcc/xgcc ,gcc/g++ ,'` 48ffeaf689SAlexander Kabaev echo ${CXX} 49ffeaf689SAlexander Kabaev ;; 50ffeaf689SAlexander Kabaev --cxxflags) 51ffeaf689SAlexander Kabaev CXXFLAGS_save="-g -O2 -D_GLIBCXX_ASSERT" 52*f8a1b7d9SAlexander Kabaev CXXFLAGS_config='@SECTION_FLAGS@ -fmessage-length=0 53*f8a1b7d9SAlexander Kabaev @CXXFLAGS@ @EXTRA_CXX_FLAGS@ ' 54ffeaf689SAlexander Kabaev echo ${CXXFLAGS_save} ${CXXFLAGS_config} 55ffeaf689SAlexander Kabaev ;; 56ffeaf689SAlexander Kabaev --cxxpchflags) 57ffeaf689SAlexander Kabaev PCHFLAGS="@glibcxx_PCHFLAGS@" 58ffeaf689SAlexander Kabaev echo ${PCHFLAGS} 59ffeaf689SAlexander Kabaev ;; 60*f8a1b7d9SAlexander Kabaev --cxxldflags) 61*f8a1b7d9SAlexander Kabaev SECTIONLDFLAGS="@SECTION_LDFLAGS@" 62*f8a1b7d9SAlexander Kabaev echo ${SECTIONLDFLAGS} 63*f8a1b7d9SAlexander Kabaev ;; 64ffeaf689SAlexander Kabaev *) 65*f8a1b7d9SAlexander Kabaev print_usage 66ffeaf689SAlexander Kabaev ;; 67ffeaf689SAlexander Kabaevesac 68ffeaf689SAlexander Kabaev 69ffeaf689SAlexander Kabaevexit 0 70