mirror of
git://git.gnupg.org/gnupg.git
synced 2025-04-17 15:44:34 +02:00
gpgscm: Make the compile-hook configurable.
* tests/gpgscm/scheme-private.h (struct scheme): Make field 'COMPILE_HOOK' optional. * tests/gpgscm/scheme.c (opexe_0): Fix guard. (scheme_init_custom_alloc): Conditionally initialize 'COMPILE_HOOK'. * tests/gpgscm/scheme.h (USE_COMPILE_HOOK): Define to 1 by default. Signed-off-by: Justus Winter <justus@g10code.com>
This commit is contained in:
parent
9ee184bc0a
commit
568cfcde45
@ -115,7 +115,9 @@ pointer FEED_TO; /* => */
|
|||||||
pointer COLON_HOOK; /* *colon-hook* */
|
pointer COLON_HOOK; /* *colon-hook* */
|
||||||
pointer ERROR_HOOK; /* *error-hook* */
|
pointer ERROR_HOOK; /* *error-hook* */
|
||||||
pointer SHARP_HOOK; /* *sharp-hook* */
|
pointer SHARP_HOOK; /* *sharp-hook* */
|
||||||
|
#if USE_COMPILE_HOOK
|
||||||
pointer COMPILE_HOOK; /* *compile-hook* */
|
pointer COMPILE_HOOK; /* *compile-hook* */
|
||||||
|
#endif
|
||||||
|
|
||||||
pointer free_cell; /* pointer to top of free cells */
|
pointer free_cell; /* pointer to top of free cells */
|
||||||
long fcells; /* # of free cells */
|
long fcells; /* # of free cells */
|
||||||
|
@ -2688,7 +2688,7 @@ static pointer opexe_0(scheme *sc, enum scheme_opcodes op) {
|
|||||||
sc->code = sc->value;
|
sc->code = sc->value;
|
||||||
s_goto(sc,OP_EVAL);
|
s_goto(sc,OP_EVAL);
|
||||||
|
|
||||||
#if 1
|
#if USE_COMPILE_HOOK
|
||||||
case OP_LAMBDA: /* lambda */
|
case OP_LAMBDA: /* lambda */
|
||||||
/* If the hook is defined, apply it to sc->code, otherwise
|
/* If the hook is defined, apply it to sc->code, otherwise
|
||||||
set sc->value fall through */
|
set sc->value fall through */
|
||||||
@ -4737,7 +4737,9 @@ int scheme_init_custom_alloc(scheme *sc, func_alloc malloc, func_dealloc free) {
|
|||||||
sc->COLON_HOOK = mk_symbol(sc,"*colon-hook*");
|
sc->COLON_HOOK = mk_symbol(sc,"*colon-hook*");
|
||||||
sc->ERROR_HOOK = mk_symbol(sc, "*error-hook*");
|
sc->ERROR_HOOK = mk_symbol(sc, "*error-hook*");
|
||||||
sc->SHARP_HOOK = mk_symbol(sc, "*sharp-hook*");
|
sc->SHARP_HOOK = mk_symbol(sc, "*sharp-hook*");
|
||||||
|
#if USE_COMPILE_HOOK
|
||||||
sc->COMPILE_HOOK = mk_symbol(sc, "*compile-hook*");
|
sc->COMPILE_HOOK = mk_symbol(sc, "*compile-hook*");
|
||||||
|
#endif
|
||||||
|
|
||||||
return !sc->no_memory;
|
return !sc->no_memory;
|
||||||
}
|
}
|
||||||
|
@ -40,6 +40,7 @@ extern "C" {
|
|||||||
# define USE_ERROR_HOOK 0
|
# define USE_ERROR_HOOK 0
|
||||||
# define USE_TRACING 0
|
# define USE_TRACING 0
|
||||||
# define USE_COLON_HOOK 0
|
# define USE_COLON_HOOK 0
|
||||||
|
# define USE_COMPILE_HOOK 0
|
||||||
# define USE_DL 0
|
# define USE_DL 0
|
||||||
# define USE_PLIST 0
|
# define USE_PLIST 0
|
||||||
#endif
|
#endif
|
||||||
@ -83,6 +84,12 @@ extern "C" {
|
|||||||
# define USE_COLON_HOOK 1
|
# define USE_COLON_HOOK 1
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/* Compile functions using *compile-hook*. The default hook expands
|
||||||
|
* macros. */
|
||||||
|
#ifndef USE_COMPILE_HOOK
|
||||||
|
# define USE_COMPILE_HOOK 1
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef USE_STRCASECMP /* stricmp for Unix */
|
#ifndef USE_STRCASECMP /* stricmp for Unix */
|
||||||
# define USE_STRCASECMP 0
|
# define USE_STRCASECMP 0
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user