maint: Update HACKING
[automake.git] / t / self-check-cc-no-c-o.sh
blob115661465dcc747bcd41088cff92fd0821e39f10
1 #! /bin/sh
2 # Copyright (C) 2012-2017 Free Software Foundation, Inc.
4 # This program is free software; you can redistribute it and/or modify
5 # it under the terms of the GNU General Public License as published by
6 # the Free Software Foundation; either version 2, or (at your option)
7 # any later version.
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 # GNU General Public License for more details.
14 # You should have received a copy of the GNU General Public License
15 # along with this program. If not, see <https://www.gnu.org/licenses/>.
17 # Check that our fake "C compiler" that doesn't grasp the '-c' and
18 # '-o' command-line options passed together, used to enhance testsuite
19 # coverage.
21 required=gcc # Our fake compiler uses gcc.
22 am_create_testdir=empty
23 . test-init.sh
25 CC=$am_testaux_builddir/cc-no-c-o; export CC
27 echo 'int main (void) { return 0; }' > foo.c
28 $CC -c foo.c
29 test -f foo.o || test -f foo.obj
30 $CC -c -o bar.o foo.c 2>stderr && { cat stderr >&2; exit 1; }
31 cat stderr >&2
32 grep "both '-o' and '-c' seen on the command line" stderr
33 test ! -e bar.o && test ! -e bar.obj