From 60967f56e71c1e578cb2f0585a8d64d54394110f Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Tue, 23 Jul 2013 19:00:43 -0400 Subject: [PATCH] No need for configure to create etc/ and lisp/ any more * configure.ac (etc, lisp): No need to create specially. Configure already creates lisp when generating lisp/Makefile; src/Makefile now creates etc when needed. * src/Makefile.in ($(etc)/DOC, temacs$(EXEEXT)): Ensure etc/ exists. --- ChangeLog | 5 +++++ configure.ac | 7 ------- src/ChangeLog | 4 ++++ src/Makefile.in | 6 ++++++ 4 files changed, 15 insertions(+), 7 deletions(-) diff --git a/ChangeLog b/ChangeLog index fe8b3da0690..ce3a922670a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2013-07-23 Glenn Morris + + * configure.ac (etc, lisp): No need to create specially. + Configure already creates lisp, src/Makefile now creates etc. + 2013-07-23 Paul Eggert Port to GNU/Linux systems with tinfo but not ncurses. diff --git a/configure.ac b/configure.ac index f48822480e4..c58c283049c 100644 --- a/configure.ac +++ b/configure.ac @@ -4854,13 +4854,6 @@ SUBDIR_MAKEFILES_IN=`echo " ${SUBDIR_MAKEFILES}" | sed -e 's| | $(srcdir)/|g' -e AC_SUBST(SUBDIR_MAKEFILES_IN) -dnl Make the necessary directories, if they don't exist. -AC_CONFIG_COMMANDS([mkdirs], [ -for dir in etc lisp ; do - test -d ${dir} || mkdir ${dir} -done -]) - dnl You might wonder (I did) why epaths.h is generated by running make, dnl rather than just letting configure generate it from epaths.in. dnl One reason is that the various paths are not fully expanded (see above); diff --git a/src/ChangeLog b/src/ChangeLog index 8a51744ba4b..30cc0dcdac6 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2013-07-23 Glenn Morris + + * Makefile.in ($(etc)/DOC, temacs$(EXEEXT)): Ensure etc/ exists. + 2013-07-23 Paul Eggert Port to GNU/Linux systems with tinfo but not ncurses. diff --git a/src/Makefile.in b/src/Makefile.in index 066507580b4..65927ba236c 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -469,6 +469,7 @@ emacs$(EXEEXT): temacs$(EXEEXT) $(ADDSECTION) \ ## in the contents of the DOC file. ## $(etc)/DOC: $(libsrc)/make-docfile$(EXEEXT) $(obj) $(lisp) + $(MKDIR_P) $(etc) -rm -f $(etc)/DOC $(libsrc)/make-docfile -d $(srcdir) $(SOME_MACHINE_OBJECTS) $(obj) > $(etc)/DOC $(libsrc)/make-docfile -a $(etc)/DOC -d $(lispsource) `sed -n -e 's| \\\\||' -e 's|^[ ]*$$(lispsource)/||p' $(srcdir)/lisp.mk` @@ -497,10 +498,15 @@ $(ALLOBJS): globals.h $(lib)/libgnu.a: $(config_h) cd $(lib) && $(MAKE) libgnu.a +## We have to create $(etc) here because init_cmdargs tests its +## existence when setting Vinstallation_directory (FIXME?). +## This goes on to affect various things, and the emacs binary fails +## to start if Vinstallation_directory has the wrong value. temacs$(EXEEXT): stamp-oldxmenu $(ALLOBJS) \ $(lib)/libgnu.a $(EMACSRES) $(CC) $(ALL_CFLAGS) $(TEMACS_LDFLAGS) $(LDFLAGS) \ -o temacs $(ALLOBJS) $(lib)/libgnu.a $(W32_RES_LINK) $(LIBES) + $(MKDIR_P) $(etc) $(TEMACS_POST_LINK) test "$(CANNOT_DUMP)" = "yes" || \ test "X$(PAXCTL)" = X || $(PAXCTL) -r temacs$(EXEEXT) -- 2.39.2