[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
accept .sx as synonymous to .S
From: |
Ralf Wildenhues |
Subject: |
accept .sx as synonymous to .S |
Date: |
Mon, 1 Oct 2007 20:36:44 +0200 |
User-agent: |
Mutt/1.5.13 (2006-08-11) |
See <http://gcc.gnu.org/ml/gcc-patches/2007-09/msg00173.html>.
OK to apply to HEAD? Also branch-1-10?
I'm wondering a bit whether we risk clashes wrt. file name extensions
here. OpenOffice uses extensions matching .sx? but AFAIK no plain .sx
(yet). Does anybody know whether w32 has a default action for these?
Searching the net, I found these programs using files matching *.sx:
SAS Stat Studio Program Source Code
Stradx
None of these look like more likely candidates for Automake.
Cheers,
Ralf
2007-10-01 Ralf Wildenhues <address@hidden>
* automake.in: Treat extension .sx also like preprocessed
assembler (.S), following GCC.
* NEWS: Update.
* doc/automake.texi (Assembly Support)
(Unified Parallel C Support): Adjust.
* tests/asm3.test: New test.
* tests/Makefile.am: Update.
Index: NEWS
===================================================================
RCS file: /cvs/automake/automake/NEWS,v
retrieving revision 1.331
diff -u -r1.331 NEWS
--- NEWS 22 Jul 2007 08:48:17 -0000 1.331
+++ NEWS 1 Oct 2007 18:33:40 -0000
@@ -19,6 +19,8 @@
- For files with extension .f90 or .f95, the flag $(FCFLAGS_f9x)
computed by AC_FC_SRCEXT is now honored in compile rules.
+ - Files with extension .sx are also treated as preprocessed assembler.
+
* Miscellaneous changes:
- Automake is licensed under GPLv3+. `automake --add-missing' will
Index: automake.in
===================================================================
RCS file: /cvs/automake/automake/automake.in,v
retrieving revision 1.1649
diff -u -r1.1649 automake.in
--- automake.in 30 Sep 2007 04:18:20 -0000 1.1649
+++ automake.in 1 Oct 2007 18:33:43 -0000
@@ -861,7 +861,7 @@
'compiler' => 'CPPASCOMPILE',
'compile_flag' => '-c',
'output_flag' => '-o',
- 'extensions' => ['.S'],
+ 'extensions' => ['.S', '.sx'],
# With assembly we still use the C linker.
'_finish' => \&lang_c_finish);
cvs diff: Diffing doc
Index: doc/automake.texi
===================================================================
RCS file: /cvs/automake/automake/doc/automake.texi,v
retrieving revision 1.171
diff -u -r1.171 automake.texi
--- doc/automake.texi 19 Aug 2007 07:46:52 -0000 1.171
+++ doc/automake.texi 1 Oct 2007 18:33:52 -0000
@@ -6035,7 +6035,7 @@
Automake includes some support for assembly code. There are two forms
of assembler files: normal (@file{*.s}) and preprocessed by @code{CPP}
-(@file{*.S}).
+(@file{*.S} or @file{*.sx}).
@vindex CCAS
@vindex CCASFLAGS
@@ -6055,7 +6055,7 @@
@code{CCAS} to the C compiler and @code{CCASFLAGS} to the C compiler
flags), but you are free to define these variables by other means.
-Only the suffixes @file{.s} and @file{.S} are recognized by
+Only the suffixes @file{.s}, @file{.S}, and @file{.sx} are recognized by
@command{automake} as being files containing assembly code.
Index: tests/Makefile.am
===================================================================
RCS file: /cvs/automake/automake/tests/Makefile.am,v
retrieving revision 1.623
diff -u -r1.623 Makefile.am
--- tests/Makefile.am 16 Aug 2007 23:47:09 -0000 1.623
+++ tests/Makefile.am 1 Oct 2007 18:33:52 -0000
@@ -57,6 +57,7 @@
ar2.test \
asm.test \
asm2.test \
+asm3.test \
autohdr.test \
autohdr2.test \
autohdr3.test \
--- /dev/null 2007-09-29 14:18:42.220064750 +0200
+++ tests/asm3.test 2007-10-01 20:32:54.000000000 +0200
@@ -0,0 +1,139 @@
+#! /bin/sh
+# Copyright (C) 2001, 2002, 2003, 2006, 2007 Free Software Foundation,
+# Inc.
+#
+# This file is part of GNU Automake.
+#
+# GNU Automake 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 3, or (at your option)
+# any later version.
+#
+# GNU Automake 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 Automake; see the file COPYING. If not, write to
+# the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+# Boston, MA 02110-1301, USA.
+
+# Test of basic preprocessed assembly functionality with extension .sx.
+
+. ./defs || exit 1
+
+set -e
+
+cat > Makefile.am << 'END'
+noinst_PROGRAMS = maude
+maude_SOURCES = maude.sx
+END
+
+: > maude.sx
+
+# Should fail because we need CC and CCAS.
+echo 1
+cat > configure.in << 'END'
+AC_INIT
+AM_INIT_AUTOMAKE(nonesuch, nonesuch)
+AC_SUBST(CCASFLAGS)
+AC_OUTPUT(Makefile)
+END
+
+$ACLOCAL
+AUTOMAKE_fails
+grep AM_PROG_AS stderr
+
+# On fast machines the autom4te.cache created during the above run of
+# $AUTOMAKE is likely to have the same time stamp as the configure.in
+# created below; thus causing traces for the old configure.in to be
+# used. We could do `$sleep', but it's faster to erase the
+# directory. (Erase autom4te*.cache, not autom4te.cache, because some
+# bogus installations of Autoconf use a versioned cache.)
+rm -rf autom4te*.cache
+
+# We still need CCAS.
+echo 2
+cat > configure.in << 'END'
+AC_INIT
+AM_INIT_AUTOMAKE(nonesuch, nonesuch)
+AC_PROG_CC
+AC_SUBST(CCASFLAGS)
+AC_OUTPUT(Makefile)
+END
+
+$ACLOCAL
+AUTOMAKE_fails
+grep CCAS stderr
+grep AM_PROG_AS stderr
+
+rm -rf autom4te*.cache
+
+# We need CCASFLAGS.
+echo 3
+cat > configure.in << 'END'
+AC_INIT
+AM_INIT_AUTOMAKE(nonesuch, nonesuch)
+CCAS='$(CC)'
+AC_SUBST(CCAS)
+AC_PROG_CC
+AC_OUTPUT(Makefile)
+END
+
+$ACLOCAL
+AUTOMAKE_fails
+grep CCASFLAGS stderr
+grep AM_PROG_AS stderr
+
+rm -rf autom4te*.cache
+
+# We need dependency tracking.
+echo 4
+cat > configure.in << 'END'
+AC_INIT
+AM_INIT_AUTOMAKE(nonesuch, nonesuch)
+CCAS='$(CC)'
+AC_SUBST(CCAS)
+AC_PROG_CC
+AC_SUBST(CCASFLAGS)
+AC_OUTPUT(Makefile)
+END
+
+$ACLOCAL
+AUTOMAKE_fails
+grep AM_PROG_AS stderr
+
+rm -rf autom4te*.cache
+
+# We have every needed, expect a success.
+echo 5
+cat > configure.in << 'END'
+AC_INIT
+AM_INIT_AUTOMAKE(nonesuch, nonesuch)
+CCAS='$(CC)'
+AC_SUBST(CCAS)
+AC_PROG_CC
+_AM_DEPENDENCIES(CCAS)
+AC_SUBST(CCASFLAGS)
+AC_OUTPUT(Makefile)
+END
+
+$ACLOCAL
+$AUTOMAKE
+
+rm -rf autom4te*.cache
+
+# We have every needed, expect a success.
+echo 6
+cat > configure.in << 'END'
+AC_INIT
+AM_INIT_AUTOMAKE(nonesuch, nonesuch)
+AM_PROG_AS
+AC_OUTPUT(Makefile)
+END
+
+$ACLOCAL
+$AUTOMAKE
+
+exit 0
- accept .sx as synonymous to .S,
Ralf Wildenhues <=