Ticket #17272 (closed defect: fixed)
m4 links with libsigsegv if present
| Reported by: | ryandesign@… | Owned by: | nox@… |
|---|---|---|---|
| Priority: | Normal | Milestone: | |
| Component: | ports | Version: | 1.7.0 |
| Keywords: | Cc: | ||
| Port: | m4 |
Description
m4 doesn't declare a dependency on libsigsegv, but uses it if present:
2008-11-16 00:52:53 -0600 Link (dyld) error: Library not loaded: /mp/lib/libsigsegv.0.dylib Referenced from: /mp/bin/gm4 Reason: image not found
Presumably we should add the configure argment --without-libsigsegv-prefix. I see a --without-libpth-prefix option too; we should probably use that too. I haven't yet tested whether these do what we want.
Change History
comment:2 Changed 5 years ago by ryandesign@…
The README says:
M4 has an optional dependency on the libsigsegv library: http://www.gnu.org/software/libsigsegv/ If the library has not been installed in the standard location, you can use `./configure --with-libsigsegv-prefix=/path/to/dir', to make the build of `m4' use /path/to/dir/include/sigsegv.h as appropriate. The use of this library is optional; the only difference in having it available is that it increases the number of platforms where `m4' can correctly distinguish stack overflow from an internal bug. It is recommended that you use version 2.6 or newer.
No indication of how to disable it.
comment:3 Changed 5 years ago by blair@…
- Owner changed from blair@… to nox@…
Reassigning to nox, he's made all the commits in to m4 2008 and this looks like a new feature in a recent m4:
2008-07-17 Eric Blake <ebb9@byu.net>
Adjust to c-stack changes in gnulib.
* src/Makefile.am (m4_LDADD): Use libsigsegv when available and
necessary, via LIBCSTACK.
* src/m4.c (main) [DEBUG_STACKOVF]: Make it easier to test fault
handlers.
* checks/stackovf.test: New file.
* checks/Makefile.in (CHECKS): Add stackovf.test, and factor...
(DOC_CHECKS): ...generated documentation tests into new macro.
(DISTFILES): Distribute stackovf.test.
* checks/check-them: Special-case stackovf.test.
* NEWS: Enhance the NEWS item for -L improvements.
* README: Mention the optional dependency.
* HACKING: Mention maintenance burden added by libsigsegv.
Note: See
TracTickets for help on using
tickets.


Even with --without-libsigsegv-prefix, it still links with libsigsegv if present.
Not sure if --without-libpth-prefix fares any better; not sure how to get it to link with libpth in the first place, to test whether that option makes it stop doing that.