blob: d489fefa65caaff9b9498a8eafbb65e6f23ac176 [file] [log] [blame]
# localization.at -- libtool and locales -*- Autotest -*-
#
# Copyright (C) 2008 Free Software Foundation, Inc.
# Written by Ralf Wildenhues, 2008
#
# This file is part of GNU Libtool.
#
# GNU Libtool is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation; either version 2 of
# the License, or (at your option) any later version.
#
# GNU Libtool is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with GNU Libtool; see the file COPYING. If not, a copy
# can be downloaded from http://www.gnu.org/licenses/gpl.html,
# or obtained by writing to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
####
AT_SETUP([localized compiler messages])
AT_KEYWORDS([libtool])
# Let's try German locale. :-)
LANG=de_DE
LANGUAGE=de_DE
LC_ALL=de_DE
export LANG LANGUAGE LC_ALL
AT_DATA([a.c],
[[int x[-1];
]])
AT_DATA([b.c],
[[int y;
]])
# First see if setting a locale is accepted at all.
AT_CHECK([$CC $CPPFLAGS $CFLAGS -c b.c || exit 77], [], [stdout], [stderr])
# Find out about expected output.
AT_CHECK([$CC $CPPFLAGS $CFLAGS -c a.c || exit 1], [1], [stdout], [stderr])
mv -f stdout expected-stdout
mv -f stderr expected-stderr
AT_CHECK([$LIBTOOL --mode=compile --tag=CC $CC $CPPFLAGS $CFLAGS -c a.c || exit 1],
[1], [stdout], [stderr])
AT_CHECK([diff expected-stderr stderr])
LTBASE=`$ECHO "$LIBTOOL" | sed 's,^.*/,,'`
AT_CHECK([grep -v "^$LTBASE: compile" stdout | diff expected-stdout -])
# check that we get our quoting right.
LANGUAGE='a; nosuchprogram " '\'' & $x /#+*(){}|,:`\ !%'
export LANGUAGE
AT_CHECK([$LIBTOOL --mode=compile --tag=CC $CC $CPPFLAGS $CFLAGS -c b.c],
[0], [stdout], [stderr])
AT_CHECK([grep nosuchprogram stdout stderr], [1])
AT_CLEANUP