This is the mail archive of the
automake@gnu.org
mailing list for the automake project.
automake: compiling assembly files is *broken* in 1.5 (fwd)
- To: automake at gnu dot org
- Subject: automake: compiling assembly files is *broken* in 1.5 (fwd)
- From: "C. Scott Ananian" <cananian at lesser-magoo dot lcs dot mit dot edu>
- Date: Thu, 18 Oct 2001 17:25:27 -0400 (EDT)
- List-Id: Discussion list for automake <automake.gnu.org>
---------- Forwarded message ----------
Date: Thu, 18 Oct 2001 17:13:20 -0400
From: C. Scott Ananian <cananian@sincerity-forever.lcs.mit.edu>
To: submit@bugs.debian.org
Subject: automake: compiling assembly files is *broken* in 1.5
Package: automake
Version: 1.5-1
Severity: important
cananian@sincerity-forever:~$ automake --version
automake (GNU automake) 1.5
Written by Tom Tromey <tromey@cygnus.com>.
The Makefile generated for a Makefile.am with assembly sources, for
example:
------
noinst_LTLIBRARIES = libheader.la
libheader_la_SOURCES = header.S
------
contains the following rules:
------
ASCOMPILE = $(AS) $(AM_ASFLAGS) $(ASFLAGS)
LTASCOMPILE = $(LIBTOOL) --mode=compile $(AS) $(AM_ASFLAGS) $(ASFLAGS)
[...]
.S.o:
$(ASCOMPILE) -c `test -f $< || echo '$(srcdir)/'`$<
.S.obj:
$(ASCOMPILE) -c `cygpath -w $<`
.S.lo:
$(LTASCOMPILE) -c -o $@ `test -f $< || echo '$(srcdir)/'`$<
------
The '-c' flag in each of these three rules is incorrect, and causes
make to fail:
make[2]: Entering directory `/home/cananian/Harpoon/Runtime/arch/ix86'
/bin/sh ../../libtool --mode=compile as -c -o header.lo `test -f header.S || echo './'`header.S
as -c header.S -o header.o
as: unrecognized option `-c'
make[2]: *** [header.lo] Error 1
Downgrading to debian version 1.4-8 of automake (in the stable/ distribution)
fixes the problem; the generated Makefile now has the rules:
-----
.s.o:
$(COMPILE) -c $<
.S.o:
$(COMPILE) -c $<
.s.lo:
$(LIBTOOL) --mode=compile $(COMPILE) -c $<
.S.lo:
$(LIBTOOL) --mode=compile $(COMPILE) -c $<
------
which works (because gcc invokes as).
automake 1.5 seems to require that AS=gcc, which is obviously not right.
This is an important bug because *no software including assembly source* will
build using Makefiles generated by automake-1.5 until this is fixed.
--scott
-- System Information
Debian Release: testing/unstable
Kernel Version: Linux sincerity-forever 2.4.9-686-smp #1 SMP Sun Aug 19 11:17:05 EST 2001 i686 unknown
Versions of the packages automake depends on:
ii autoconf 2.52-4 automatic configure script builder
ii autotools-dev 20011005.1 Update infrastructure for config.{guess,sub}