bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#15880: Compute C declarations for DEFSYMs automatically.


From: Eli Zaretskii
Subject: bug#15880: Compute C declarations for DEFSYMs automatically.
Date: Wed, 13 Nov 2013 05:54:47 +0200

> Date: Tue, 12 Nov 2013 16:33:56 -0800
> From: Paul Eggert <eggert@cs.ucla.edu>
> 
>  globals.h: gl-stamp; @true
>  
> -GLOBAL_SOURCES = $(base_obj:.o=.c) $(NS_OBJC_OBJ:.o=.m)
> -
> -gl-stamp: $(libsrc)/make-docfile$(EXEEXT) $(GLOBAL_SOURCES)
> -     $(libsrc)/make-docfile -d $(srcdir) -g $(obj) > gl.tmp
> +# Set this to 'false' to speed the build but bloat Emacs a bit, by causing
> +# the gl-stamp build process to bypass the preprocessor and access
> +# symbols directly, even symbols that would be preprocessed away.
> +GLOBALS_CPP = $(CPP)
> +
> +GLOBALS_SOURCES = $(base_obj:.o=.c) $(NS_OBJC_OBJ:.o=.m)
> +
> +gl-stamp: $(libsrc)/make-docfile$(EXEEXT) $(GLOBALS_SOURCES)
> +     test -f globals.h || echo '/* dummy */' >globals.h
> +     rm -f ok.tmp
> +     ($(GLOBALS_CPP) -DGENERATE_GLOBALS $(NONDEP_CFLAGS) \
> +        $(base_obj:.o=.c) \
> +      && { set x $(NS_OBJC_OBJ:.o=.m); shift; \
> +           test $$# -eq 0 \
> +           || $(GLOBALS_CPP) -DGENERATE_GLOBALS $(NONDEP_OBJC_CFLAGS) \
> +                "$$@"; } \
> +      && touch ok.tmp) | $(libsrc)/make-docfile -g >gl.tmp
> +     test -f ok.tmp || $(libsrc)/make-docfile -d $(srcdir) -g $(obj) >gl.tmp
>       $(srcdir)/../build-aux/move-if-change gl.tmp globals.h
>       echo timestamp > $@

Is this use of "{..}" in shell commands portable enough?





reply via email to

[Prev in Thread] Current Thread [Next in Thread]