From 26cdf2af1984abefe15d9828fa5a18c190964366 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Niels=20M=C3=B6ller?= <nisse@lysator.liu.se>
Date: Wed, 6 Feb 2013 10:22:31 +0100
Subject: [PATCH] Use changecom and divert in asm.m4.

---
 ChangeLog |  5 +++++
 asm.m4    | 12 ++++++++++--
 2 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 23a5b191..1034cea4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2013-02-06  Niels Möller  <nisse@lysator.liu.se>
+
+	* asm.m4: Use changecom to disable m4 quoting. Use divert to
+	suppress output.
+
 2013-02-05  Niels Möller  <nisse@lysator.liu.se>
 
 	* testsuite/rsa-keygen-test.c (test_main): Updated expected
diff --git a/asm.m4 b/asm.m4
index d632585b..f24442da 100644
--- a/asm.m4
+++ b/asm.m4
@@ -1,9 +1,13 @@
+divert(-1)
 changequote(<,>)dnl
 dnl (progn (modify-syntax-entry ?< "(>") (modify-syntax-entry ?> ")<") )
 
 dnl FORTRAN style comment character
 define(<C>, <
 dnl>)dnl
+dnl Disable m4 comment processing, since the default, #, is used for
+dnl constants on some architectures, in particular ARM.
+changecom()dnl
 
 dnl Including files from the srcdir
 define(<include_src>, <include(srcdir/$1)>)dnl
@@ -23,9 +27,11 @@ define(<EPILOGUE>,
 <.size C_NAME($1), . - C_NAME($1)>,<>)>)
 
 dnl Argument to ALIGN is always logarithmic
+dnl FIXME: the << operator is not supported by Solaris m4,
+dnl and ** is not supported by OpenBSD m4.
+dnl We should switch to non-logarithmic ALIGN instead.
 
-dnl Need changequote to be able to use the << operator (using **
-dnl instead is not portable, and is not supported by openbsd m4).
+dnl Need changequote to be able to use the << operator.
 define(<ALIGN>,
 <changequote([,])dnl
 .align ifelse(ALIGN_LOG,yes,$1,eval(1 << $1))dnl >> balance
@@ -68,3 +74,5 @@ STRUCTURE(AES)
   STRUCT(TABLE1, AES_TABLE_SIZE)
   STRUCT(TABLE2, AES_TABLE_SIZE)
   STRUCT(TABLE3, AES_TABLE_SIZE)
+
+divert
-- 
GitLab