| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
| |
* gl: Move from here...
* build-aux/gl: ...to here.
* ltdl/m4/gnulib-cache.m4: Regenerate.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Gettext's autopoint script only omits the intl directory creation
for exactly 'AM_GNU_GETTEXT([external])'; any additional arguments
force that directory to be built again.
* configure.ac (AM_GNU_GETTEXT): move need-format-string-macros
from here...
(AM_GNU_GETTEXT_NEED): ...to here.
* bootstrap.con (m4_precopy_git_version_gen): Since we use
git-version-gen directly in configure.ac, it has to be in place
before calling autopoint, which leaks error messages about the
missing script otherwise.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
| |
* .autom4te.cfg: New file. Disable autotools caching.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
| |
* configure.ac (AC_PATH_PROG): Remove perl.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Libltdl is huge and slow, and carrying the weight of support for
decades old systems. We can do much better using POSIX dlopen
and dlsym directly, simplifying and speeding up as we do so.
* configure.ac (LT_CONFIG_LTDL_DIR, LTDL_INIT): Remove.
(M4_DEFAULT_PRELOAD): Set to ""; we lost preload support along
with removing libltdl.
* Makefile.am: Don't include ltdl/Makefile.inc.
(AM_CPPFLAGS): Manually add current directory to include search
paths.
* m4/m4private.h (includes): Remove ltdl.h.
(INIT_SYMBOL, m4__module_init): Remove.
(struct m4_module): Change handle type from lt_dlhandle to void *.
* m4/m4module.h (M4INIT_HANDLER): Remove.
* m4/module.c (includes): Add dlfcn.h.
(m4__module_interface, iface_id, m4__module_init, module_dlerror):
Remove.
(m4__module_open): Drastically simplified without all the
libltdl setup and interface id twiddling. Just call dlopen to
get a native handle, and the dlsym to get the init function.
(m4_module_import): Similarly wrt dlsym.
* m4/path.c (FILE_SUFFIXES): Replace .la and LT_MODULE_EXT with
hardcoded ".so".
(m4_load_filename): Likewise.
* modules/gnu.c: Remove libltdl preprocessor symbol renaming,
and use "include_<modulename>" as the single entry point function.
* modules/import.c, modules/m4.c, modules/modtest.c,
modules/mpeval.c, modules/shadow.c, modules/stdlib.c,
modules/time.c, modules/traditional.c: Likewise.
* main.c (main): Remove calls to m4__module_init and
LTDL_SET_PRELOADED_SYMBOLS.
* tests/m4.in: Make sure we always have the modules/.libs and
tests/.libs directories at the front of M4PATH so that the
tests will find the modules they need to include.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
|
|
| |
* m4/module.c (m4_module_load): If we already have the module
loaded, reuse that. Otherwise, open the module afresh and
register it's builtins and macros on success.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* m4/m4private.h (m4:namemap): New field for hash table to lookup
module structures by name string.
* m4/m4.c (hashfn): Hash function for plain strings.
(m4_create): Initialise namemap field to a hash table using hashfn
for inserting and looking up keys.
* m4/module.c (m4__module_find): Replace the fussy libltdl
twiddling with a hash lookup in m4:namemap.
Add a new context parameter. Adjust all callers.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
* m4/m4private.h (struct m4_module): Add a next pointer.
(struct m4): Add a module list pointer.
* m4/module.c (m4__module_open): Initialise the next pointer and
update the list head when a new module is successfully opened.
(m4_module_next): Replace the ugly libltdl twiddling with a
straight forward module list traversal one-liner!
Add a context parameter. Adjust all callers.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
|
|
|
|
|
| |
* m4/m4private.h (m4_module): Add name field.
* m4/module.c (m4__module_open): Save the name field.
* m4/path.c (m4_load_filename): Pass the raw filename to
m4_module_load.
* m4/module.c (m4_get_module_name): Replace all the ltdl
twiddling with returning the saved name field.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Exporting non-function symbols barely works on Windows, so change
the module loading API to use a single function access point which
is then responsible for calling back to install symbols and macros.
* m4/m4module.h, m4/m4module.c (m4_install_builtins)
(m4_install_macros): New APIs for saving builtins and macros into
the module struct.
* m4/m4module.c (install_macro_table, install_builtin_table):
Adjust accordingly.
(m4__module_open): Simplify accordingly.
* m4/m4private.h (BUILTIN_SYMBOL, MACRO_SYMBOL): Remove.
* modules/gnu.c, modules/import.c, modules/m4.c, modules/modtest.c,
modules/mpeval.c, modules/shadow.c, modules/time.c,
modules/traditional.c (m4_builtin_table, m4_macro_table): Make
static, and remove LTX symbol mangling macros.
(M4INIT_HANDLER): Call m4_install_builtins and/or m4_install_macros.
* tests/options.at: Now that init_func is always called, adjust
expected debug output.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Module management is horrifically more complex than it needs to
be for the simple purpose of providing a means to implement new
builtins using C. Fussing about reference counting or needing to
maintain and test a facility to unload modules is an easy 600
lines to cut as a start at simplification.
* src/main.c (main): Don't call m4__module_exit to unload all
modules just prior to exiting the application.
* m4/m4private.h (FINISH_SYMBOL, m4_module:refcount)
(m4__module_exit, m4_module_refcount): Remove.
(m4__module_next): Rename from this...
* m4/m4module.h (m4_module_next): ...to this. Adjust all callers.
(M4FINISH_HANDLER, m4_module_finish_func, m4_module_makeresident)
(m4_module_refcount, m4_module_unload, m4_module_exit): Remove.
* m4/m4module.c (m4__module_next): Rename from this...
(m4_module_next): ...to this.
(module_remove, m4_module_makeresident, m4_module_unload)
(m4_module_exit, m4_module_refcount): Remove.
* modules/load.c: Remove.
(m4modules): Move from here...
* modules/gnu.c (m4modules): ...to here. Update all callers.
(M4FINISH_HANDLER(gnu)): Remove.
* modules/m4.c (M4INIT_HANDLER(m4)): Remove.
* modules/modtest.c (M4FINISH_HANDLER(modtest)): Remove.
* modules/shadow.c (M4INIT_HANDLER(shadow)): Rewrite to work
without refcount.
* Makefile.am (pkglib_LTLIBRARIES): Remove modules/load.la.
(modules_load_la_LDFLAGS, modules_load_la_LIBADD): Remove.
* tests/modules.at: Remove references to load module, and
tests of unload builtin.
* tests/options.at: Remove obsolute finish hook and module unload
trace output.
* doc/m4.texi (Unload, Refcount): Remove.
(M4modules): Change module reference from load to gnu.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
|
|
|
|
|
| |
* m4/m4private.h (USER_MODULE_PATH_ENV): Remove.
* m4/module.c: Correct doc-comment header details.
(m4__module_init): Remove PKGLIBEXECDIR and M4MODPATH handling.
Move configmake.h include from here...
* m4/path.c: ...to here.
(m4__include_init): Append PKGLIBDIR to search path.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
|
|
| |
* modules/perl.c, modules/perl.m4: Remove.
* po/POTFILES.in: Remove reference to perl.c.
* Makefile.am: Remove commented out rules for building perl.so.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
| |
* modules/README: Update to reflect current state.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Consider:
$ git grep SVR4 861325a84f231a2a2da307b53ef5ff527d67e876 | cut -c 42-
ChangeLog: that Jim developped stackovf.c on a 486 running SVR4.0 (ESIX), and
ChangeLog: `boolean'. This tag conflicts with <sys/types.h> on SVR4.
README:processor. It is mostly SVR4 compatible, although it has some
doc/m4.texinfo:processor. It is mostly SVR4 compatible, although it has some
examples/WWW/m4lib/whatis.m4:version, and SVR4, although it has some extensions (for example,
src/stackovf.c: signal stacks using either SVR4 or BSD interfaces.
src/stackovf.c: 1. The siginfo parameter (with siginfo.h, i.e., SVR4).
src/stackovf.c:/* SVR4. */
In particular:
doc/m4.texinfo:processor. It is mostly SVR4 compatible, although it has some
Elsewhere in `doc/m4.texinfo', only `Release 3' is referenced:
$ git grep Release 861325a84f231a2a2da307b53ef5ff527d67e876 -- doc/m4.texinfo | cut -c 42-
doc/m4.texinfo:System V, Release 3 version, except for some minor differences.
doc/m4.texinfo:UNIX, such as System V Release 3, Solaris, and @acronym{BSD} flavors.
This commit simply changes those last 2 lines by replacing `Release 3'
with `Release 4'.
* doc/m4.texinfo: Note that m4 is mostly compatible with SVR4.
Signed-off-by: Michael Witten <mfwitten@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
POSIX permits implementations to open fd 0, 1, and 2 on exec(), even
when the user tried to close them. HPUX-11.23 is one of the
implementations that does not allow closed standard descriptors,
leading to a failure of test 005.command_li. But a test that makes
sure we behave gracefully in the face of closed standard descriptors
makes no sense on a platform where we can never have them closed, so
add some code to skip the test on "helpful" platforms.
Note - HPUX opens any closed standard descriptor as O_WRONLY on
/dev/null. This means that attempts to close stdout generally
result in silent success, but attempts to close stdin often still
result in failure when it is not possible to read from the O_WRONLY
stdin.
* doc/m4.texi (Command line files): Skip tests on systems where it
is impossible to start with stdin/out closed.
Reported by Gary V. Vaughan.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Gnulib's clean-temp module defaults to using _O_TEMPORARY on mingw,
which has the effect of deleting a file the first time it is closed.
This resulted in a testsuite failure in 146.diversions, with m4
complaining that it could not create a temporary file for holding a
diversion. In reality, m4 was trying to rename the file, but
because mingw does not allow renaming an open file, we have to close
it first - but closing it first deleted the file.
For now, we will just work around the gnulib issue by disabling the
use of _O_TEMPORARY.
This was probably introduced in commit da5f6db (1.4.13), although
my testing environment was painfully slow to confirm this, so I
did not call out a 'regression since xyz' in the NEWS entry.
* gl/lib/clean-temp.c.diff: New file.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* cfg.mk (local-checks-to-skip): Skip bindtextdomain until I
understand it!
(old_NEWS_hash): Update.
(exclude_file_name_regexp--sc_prohibit_always_true_header_tests)
(exclude_file_name_regexp--sc_prohibit_strncpy)
(exclude_file_name_regexp--update_copyright): Exclude failing
files.
* doc/Makefile.am: Remove trailing blank line.
* m4/path.c: Remove trailing whitespace.
* doc/m4.texi: Fix some errors flagged by syntax checks.
* m4/input.c, m4/macro.c, m4/output.c, m4/stackovf.c: Don't use
`main ()', which confuses syntax-checks.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It's easier to maintain exemptions in a single file than it is
to maintain a bunch of hidden .x files.
* .x-sc_cast_of_argument_to_free: Delete file.
* .x-sc_prohibit_tab_based_indentation: Likewise.
* .x-sc_require_config_h: Likewise.
* .x-sc_require_config_h_first: Likewise.
* Makefile.am (syntax_check_exceptions): Delete rule.
* cfg.mk (exclude_file_name_regexp): Move exemptions here.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Warnings that make sense under newer gcc can cause spurious
failures under older gcc; it's nice to allow out-of-the-box
development on stable releases while still getting the benefit
of improved warning detection in bleeding-edge setups.
* configure.ac (nw): Disable gcc warnings that cause build
failures under RHEL 6.3.
* gnulib: Update to latest.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
|
| |
* doc/m4.texinfo (History): Describe M6 and related processors.
From a suggestion by Doug McIlroy in
<http://lists.gnu.org/archive/html/m4-discuss/2012-05/msg00004.html>.
Also, improve citation quality by giving URLs and so forth.
|
|
|
|
|
|
|
|
| |
These days, no one is complaining about using git as the primary
interface. Anyone still using CVS can maintain their own ignore files.
* bootstrap.conf (vc_ignore): Drop .cvsignore.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
|
|
| |
Enable a bit more gcc warning coverage.
* configure.ac (nw): Turn on some warnings that no longer trigger
a gcc warning, or where we reduce the scope of unwarned code.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
|
|
|
| |
Found by using gcc 4.7.0's -Wsuggest-attribute=pure.
* m4/system_.h (M4_GNUC_PURE): New macro.
* m4/builtin.c (m4_builtin_find_by_name, m4_builtin_find_by_func):
Mark pure.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
|
| |
Texinfo states that @xref must start a sentence.
* doc/m4.texinfo (Inhibiting Invocation): Reword.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Recent glibc (for whatever stupid reason) decided to issue a #warning
when FORTIFY_SOURCE is requested but not possible, due to compilation
without optimization. But when debugging sources, we don't want our
use of -Werror to kill compilation just because glibc wants to be
chatty; when debugging, we don't care about source fortification.
* configure.ac (FORTIFY_SOURCE): Make conditional on optimization.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
|
|
|
|
| |
On mingw, even doing 'm4 --help | sed 1q' would result in
warnings about EINVAL, because mingw has odd pipe behavior
and doesn't fail with EPIPE when no one is reading the
other end. Gnulib works around most of this.
* m4/gnulib-cache.m4: Import sigpipe module.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
| |
* ltdl/m4/gnulib-cache.m4: Regenerate.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
|
|
|
| |
* doc/m4.texinfo (Index macro): Test for the bug.
* THANKS: Update.
Reported by Mike Stump, with additional analysis from Ralf
Wildenhues and Jim Meyering.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
|
|
| |
* ltdl/m4/gnulib-cache.m4: Import manywarnings. Regenerate.
* configure.ac: Support --enable-gcc-warnings configure option.
* Makeflie.am (AM_CFLAGS): Honor --enable-gcc-warnings setting.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
| |
* ltdl/m4/gnulib-cache.m4: Regenerate.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
|
|
| |
* configure.ac (gl_ASSERT_NO_GNULIB_POSIXCHECK): Speed up normal
configure runs (and document how to rerun GNULIB_POSIXCHECK).
* HACKING: Document GNULIB_POSIXCHECK.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
|
|
| |
* HACKING: Git http doesn't like the redirect at git.sv.gnu.org.
* THANKS: Update.
Reported by Mike Dupont.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
|
|
| |
* m4/m4private (STRNEQ): New macro.
* m4/path.c (m4_load_filename): Use it.
* src/freeze.c (produce_frozen_state): Likewise.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
| |
* AUTHORS: Update.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
|
| |
* all files: Run 'make update-copyright' to add 2013 to list of
copyright years.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
|
|
|
|
|
| |
* README: Copy coreutils wording for allowing copyright year
ranges.
* cfg.mk (UPDATE_COPYRIGHT_USE_INTERVALS): Now that GNU Coding
Standards permit it, prefer shorthand copyright.
* NEWS: 1.4.16 will be in 2011.
* doc/m4.texinfo (History): Likewise.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
|
| |
* m4/gnulib-cache.m4: Reflect spawn-pipe module name change.
* modules/gnu.c (includes): Likewise.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
| |
* AUTHORS: Add Raphael Poss.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
| |
* docs/m4.texinfo (Index macro): Expose strstr bug.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
| |
* doc/m4.texinfo (History): Add upcoming 1.4.16 release.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
|
|
| |
* modules/evalparse.c (unary_term): Likewise.
* m4/input.c (match_input): Likewise. Also drop useless casts to
void.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* modules/format.c (format): Advance the loop invariants past an
unrecognized format specifier to avoid printing the specifier
character on the next pass.
* doc/m4.texi (Format): Don't expect unrecognized specifiers to
be output by format macro.
* tests/null.out: Don't expect unrecognized null specifier to be
output.
* tests/generate.awk (new_test): Treat `ignore' in expected error
output the same as Autotest.
* doc/m4.texi (Format): Use special `ignore' string rather than
unsupported @comment xerr magic.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
|
|
| |
* src/format.c (expand_format): Fix off-by-one error.
* THANKS: Add Carlo Teubner.
Copyright-paperwork-exempt: Yes
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
| |
* doc/m4.texi (Format): Add a test.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
| |
* NEWS: Add entries from releases 1.4.15 thru 1.4.17.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
|
|
| |
* Makefile.am (m4_LDADD): Update link libraries accordingly.
* THANKS: Update.
Reported by Rainer Tammer.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
| |
* doc/m4.texi: Remove all uses of @acronym.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
|
|
|
|
|
|
| |
* AUTHORS: Add Joel Denny and David Warme.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
|
|
|
|
| |
* configure.ac (gl_CXX_CHOICE_DEFAULT_NO): Make default for C++
tests be disabled...
* Makefile.am (DISTCHECK_CONFIGURE_FLAGS): ...but run them when
building package.
* ltdl/m4/gnulib-cache.m4: Regenerate.
Signed-off-by: Eric Blake <eblake@redhat.com>
|