[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
m4 ./ChangeLog ./acinclude.m4 m4/Makefile.am m4...
From: |
Gary V. Vaughan |
Subject: |
m4 ./ChangeLog ./acinclude.m4 m4/Makefile.am m4... |
Date: |
Thu, 16 Aug 2001 15:21:31 -0700 |
CVSROOT: /cvsroot/m4
Module name: m4
Changes by: Gary V. Vaughan <address@hidden> 01/08/16 15:21:31
Modified files:
. : ChangeLog acinclude.m4
m4 : Makefile.am builtin.c input.c ltdl.c m4module.h
m4private.h macro.c module.c system.h
modules : load.c m4.c modtest.c perl.c shadow.c
src : freeze.c main.c
Removed files:
m4 : list.c list.h
Log message:
m4_modules are no more, we use lt_dlhandles directly and let
latest libltdl features manage the list of loaded modules.
* acinclude.m4: Regenerated.
* m4/ltdl.c: Updated from master copy.
* m4/module.c: Reimplemented to take advantage of advances in
libltdl.
* m4/builtin.c (m4_builtin_find_by_name): Traverse loaded module
list with lt_dlhandle_next.
(m4_builtin_find_by_func): Ditto.
(m4_builtin_table_install): Use lt_dlhandle.
(m4_macro_define): Ditto.
(m4_macro_table_install): Ditto.
m4/module.h: Prototype new module management API.
(m4_modules): No longer required.
(m4_module_init_t, m4_module_finish_t): POSIX namespace
violations, renamed to...
(m4_module_init_func, m4_module_finish_func): ...these,
respectively.
(M4INIT_HANDLER): Clean way to declare init functions in modules.
(M4FINISH_HANDLER): And similarly for finish functions.
* m4/system.h (_CONC): Used by M4INIT_HANDLER and M4FINISH_HANDLER
-- Add indirection to the CONC macro so that arguments are
correctly expanded.
* modules/modtest.c (m4_init_module): Replaced with M4INIT_HANDLER.
* modules/shadow.c (m4_init_module): Ditto.
Due to new init function semantics, be careful to perform the
initialisation only on first load.
* modules/perl.c (m4_init_module): Ditto. And Ditto.
(m4_finish_module): Replaced with M4FINISH_HANDLER.
Due to new finish function semantics, be careful to perform the
finalisation only on first load.
* m4/m4private.h (m4_module): Removed in favour of...
(m4_module_data): ...structure without all the wrapper fields.
Instances of this new structure are stored associated lt_dlhandles
with lt_dlcaller_data_set().
* m4/builtin.c (m4_builtin_define): Takes a handle argument
instead of the old module argument.
(m4_builtin_table_install): Ditto.
* modules/load.c (m4_resident_module): Removed. This is no
longer implemented as a magic symbol...
* modules/m4.c (m4_resident_module): Ditto.
* modules/load.c (M4INIT_HANDLER): ...the module init function now
uses the ltdl api to make the module resident.
* modules/m4.c (M4INIT_HANDLER): Ditto.
* modules/load.c (builtin_modules): Traverse the loaded module
list with lt_dlhandle_next.
(builtin_load): Much simplified in light of the reimplemented
module loader.
* src/freeze.c (produce_module_dump): Cleaned up and optimised in
light of the m4/module.c rewrite.
(produce_symbol_dump): Ditto.
(reload_frozen_state): Ditto.
* m4/list.c, m4/list.h: Files deleted. No longer required.
* m4/Makefile.am (pkginc_HEADERS): Delete list.h reference.
(libm4_la_SOURCES): Delete list.c reference.
* m4/m4private.h (m4_token_data): Add a handle field. This
eliminates many of the searches to find the handle associated with
various tokens that are passed between functions.
(struct m4_symbol): Removed the module field. The
module association does not belong with the symbol...
* m4/input.c (struct m4_builtin): ...it belongs with the builtin
that the module implementation code is from. Added a handle
field.
(m4_push_macro): Add a `handle' argument. Changed all callers.
(init_macro_token): Set the `handle' field for the
m4_token_data.
* m4/macro.c (expand_argument): Copy the new handle field during
reassignment.
* modules/m4.c (macro_install): Use the new handle field to
optimise the search for the correct builtin structure, and pass
the handle details to m4_builtin_define.
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/ChangeLog.diff?tr1=1.34&tr2=1.35&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/acinclude.m4.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/m4/Makefile.am.diff?tr1=1.7&tr2=1.8&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/m4/builtin.c.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/m4/input.c.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/m4/ltdl.c.diff?tr1=1.7&tr2=1.8&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/m4/m4module.h.diff?tr1=1.8&tr2=1.9&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/m4/m4private.h.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/m4/macro.c.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/m4/module.c.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/m4/system.h.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/modules/load.c.diff?tr1=1.5&tr2=1.6&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/modules/m4.c.diff?tr1=1.7&tr2=1.8&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/modules/modtest.c.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/modules/perl.c.diff?tr1=1.5&tr2=1.6&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/modules/shadow.c.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/src/freeze.c.diff?tr1=1.7&tr2=1.8&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/src/main.c.diff?tr1=1.11&tr2=1.12&r1=text&r2=text
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- m4 ./ChangeLog ./acinclude.m4 m4/Makefile.am m4...,
Gary V. Vaughan <=