SIGSTKSZ is now a run-time variable

Carol Bouchard <[email protected]>
Newsgroups gmane.comp.gnu.m4.bugs
Message-ID <CACkzpE4Uc1xPgYJjMWUc_5ciq811V6KiB=vjYVDv6gAij+c4tQ@mail.gmail.com>
M4 Maintainers:

I work on a test system for distro testing.  I need to build newer Fedora
images
before they are released to public.  A change that was introduced is the
#define SIGSTKSZ is no longer a statically defined variable.  It's value can
only be determined at run time.

# define SIGSTKSZ sysconf (_SC_SIGSTKSZ)

This affects m4 code since the code assumes a statically defined variable
which
can be determined at preprocessor time.  As a result, the m4 code no longer
compiles.

/usr/include/signal.h:315,
                 from ./signal.h:52,
                 from c-stack.c:49:
c-stack.c:55:26: error: missing binary operator before token "("
   55 | #elif HAVE_LIBSIGSEGV && SIGSTKSZ < 16384
      |                          ^~~~~~~~
I am using m4-1.4.18 with compiler gcc (GCC) 10.2.1 20201125 (Red Hat
10.2.1-9).
Please advise how I can get past this.  It doesn't look like a simple
change.  Do you
already have a patch available for this?

Carol
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.