• Paul Eggert's avatar
    Remove the need for temacs.in · d8260374
    Paul Eggert authored
    Instead of building a file temacs.in used only to compute a
    fingerprint, compute the fingerprint directly from the .o and
    .a files that go into temacs.in.  This speeds up the build by
    avoiding the need to link temacs twice, once with a dummy
    fingerprint.
    * lib-src/make-fingerprint.c (main): No need to generate
    a fingerprint file that includes config.h, now that fingerprint.c
    depends on all the .o files.
    * src/Makefile.in ($(libsrc)/make-fingerprint$(EXEEXT)):
    Use the same rule as $(libsrc)/make-docfile$(EXEEXT).
    * src/fingerprint-dummy.c: Remove.
    * src/Makefile.in (${charsets}, $(libsrc)/make-docfile$(EXEEXT))
    ($(LIBEGNU_ARCHIVE), $(lwlibdir)/liblw.a, $(oldXMenudir)/libXMenu11.a)
    (../config.status, ${ETAGS}, ../lisp/TAGS, $(lwlibdir)/TAGS)
    ($(lispsource)/loaddefs.el):
    Prefer ‘$(MAKE) -C $(dir $@)’ to ‘${MAKE} -C SOMESTRING’ when
    either will do, as the former is more regular and lets us
    coalesce rules better.
    (EMACS_DEPS_PRE, EMACS_DEPS_POST, BUILD_EMACS_PRE)
    (BUILD_EMACS_POST, temacs.in$(EXEEXT)): Remove.
    (FINGERPRINTED): New macro.
    (fingerprint.c): Use it instead of temacs.in$(EXEEXT), to
    avoid the need to build temacs.in at all.
    (temacs$(EXEEXT)): No need to depend on other .o files now;
    fingerprint.o is enough, since it depends on the rest.
    Spell out what used to be in BUILD_EMACS_PRE and BUILD_EMACS_POST.
    (mostlyclean): No need to remove temacs.in.
    d8260374
make-fingerprint.c 2.74 KB