@@@ much mess, mostly manpages
[mLib] / utils / macros.3.in
similarity index 79%
rename from utils/macros.3
rename to utils/macros.3.in
index 23af69b..6bb18d4 100644 (file)
@@ -1,7 +1,34 @@
 .\" -*-nroff-*-
-.TH macros 3 "13 December 2003" "Straylight/Edgeware" "mLib utilities library"
-.SH NAME
-macros \- useful macros
+.\"
+.\" Manual for miscellaneous macros
+.\"
+.\" (c) 2003, 2005, 2009, 2013, 2018, 2019, 2022, 2024 Straylight/Edgeware
+.\"
+.
+.\"----- Licensing notice ---------------------------------------------------
+.\"
+.\" This file is part of the mLib utilities library.
+.\"
+.\" mLib is free software: you can redistribute it and/or modify it under
+.\" the terms of the GNU Library General Public License as published by
+.\" the Free Software Foundation; either version 2 of the License, or (at
+.\" your option) any later version.
+.\"
+.\" mLib 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 Library General Public
+.\" License for more details.
+.\"
+.\" You should have received a copy of the GNU Library General Public
+.\" License along with mLib.  If not, write to the Free Software
+.\" Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+.\" USA.
+.
+.\"--------------------------------------------------------------------------
+.so ../defs.man \" @@@PRE@@@
+.
+.\"--------------------------------------------------------------------------
+.TH macros 3mLib "13 December 2003" "Straylight/Edgeware" "mLib utilities library"
 .\" @N
 .\" @STR
 .\" @GLUE
@@ -39,7 +66,14 @@ macros \- useful macros
 .\" @MUFFLE_WARNINGS_STMT
 .\" @GCC_WARNING
 .\" @CLANG_WARNING
+.
+.\"--------------------------------------------------------------------------
+.SH NAME
+macros \- useful macros
+.
+.\"--------------------------------------------------------------------------
 .SH SYNOPSIS
+.
 .nf
 .B "#include <mLib/macros.h>"
 .PP
@@ -87,7 +121,10 @@ macros \- useful macros
 .BI "GCC_WARNING(" option ")"
 .BI "CLANG_WARNING(" option ")"
 .fi
+.
+.\"--------------------------------------------------------------------------
 .SH DESCRIPTION
+.
 .SS Utilities
 The
 .B N
@@ -164,6 +201,7 @@ The
 .B IGNORE
 macro ignores its argument, which may be an expression of any type.
 This can be useful in muffling warnings about unused variables.
+.
 .SS Annotations
 The following annotations can be attached to function declarations and
 definitions, as part of the declaration specifiers.  (Other positions
@@ -228,6 +266,7 @@ counting from 1) and a variable-length list of arguments to be formatted
 (starting from position
 .IR arg-index ).
 Compilers may warn about misuse of such functions.
+.
 .SS Muffling warnings
 Some compilers allow you to muffle warnings in particular pieces of
 code.  These macros provide a compiler-neutral interface to such
@@ -244,14 +283,9 @@ an expression (for
 .BR MUFFLE_WARNINGS_EXPR ),
 or a statement (for
 .BR MUFFLE_WARNINGS_STMT ).
+.
 .SS GCC-specific features
 The
-.B GCC_VERSION_P
-macro returns a nonzero value if the compiler is at least version
-.IB maj . min
-of GCC, and zero otherwise.  It's useful in preprocessor conditions.
-.PP
-The
 .B GCC_WARNING
 macro is intended to be used in
 .I warns
@@ -270,8 +304,16 @@ also defines the compiler-test macros in
 .BR <mLib/compiler.h>;
 see
 .BR compiler (3).
+.
+.\"--------------------------------------------------------------------------
 .SH "SEE ALSO"
-.BR mLib (3),
+.
 .BR compiler (3).
+.BR mLib (3),
+.
+.\"--------------------------------------------------------------------------
 .SH "AUTHOR"
+.
 Mark Wooding, <mdw@distorted.org.uk>
+.
+.\"----- That's all, folks --------------------------------------------------