summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Makefile.in9
-rw-r--r--src/emacs.c9
2 files changed, 17 insertions, 1 deletions
diff --git a/src/Makefile.in b/src/Makefile.in
index 1bc9a76cde5..a2221708afa 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -56,6 +56,7 @@ lwlibdir = ../lwlib
config_h = config.h $(srcdir)/conf_post.h
bootstrap_exe = ../src/bootstrap-emacs$(EXEEXT)
+temacs_exe = ../src/temacs$(EXEEXT)
## ns-app if HAVE_NS, else empty.
OTHER_FILES = @OTHER_FILES@
@@ -745,10 +746,18 @@ VCSWITNESS =
$(lispsource)/loaddefs.el: $(VCSWITNESS) | bootstrap-emacs$(EXEEXT)
$(MAKE) -C ../lisp autoloads EMACS="$(bootstrap_exe)"
+temacs-loaddefs:
+ $(MAKE) -C ../lisp temacs-loaddefs
+
+.PHONY: temacs-loaddefs
+
## Dump an Emacs executable named bootstrap-emacs containing the
## files from loadup.el in source form.
bootstrap-emacs$(EXEEXT): temacs$(EXEEXT)
$(MAKE) -C ../lisp update-subdirs
+ if test ! -f $(lispsource)/loaddefs.el; then \
+ $(MAKE) temacs-loaddefs; \
+ fi
ifeq ($(CANNOT_DUMP),yes)
ln -f temacs$(EXEEXT) $@
else
diff --git a/src/emacs.c b/src/emacs.c
index 1868961090d..b07c15fb2cb 100644
--- a/src/emacs.c
+++ b/src/emacs.c
@@ -670,6 +670,7 @@ main (int argc, char **argv)
bool dumping;
int skip_args = 0;
bool no_loadup = false;
+ bool load_temacs = false;
char *junk = 0;
char *dname_arg = 0;
#ifdef DAEMON_MUST_EXEC
@@ -1251,6 +1252,9 @@ Using an Emacs configured with --with-x-toolkit=lucid does not have this problem
no_loadup
= argmatch (argv, argc, "-nl", "--no-loadup", 6, NULL, &skip_args);
+ load_temacs
+ = argmatch (argv, argc, "-lt", "--load-temacs", 6, NULL, &skip_args);
+
no_site_lisp
= argmatch (argv, argc, "-nsl", "--no-site-lisp", 11, NULL, &skip_args);
@@ -1651,8 +1655,11 @@ Using an Emacs configured with --with-x-toolkit=lucid does not have this problem
Vtop_level = list2 (Qload, build_unibyte_string (file));
}
/* Unless next switch is -nl, load "loadup.el" first thing. */
- if (! no_loadup)
+ if (! (no_loadup || load_temacs))
Vtop_level = list2 (Qload, build_string ("loadup.el"));
+
+ if (load_temacs)
+ Vtop_level = list2 (Qload, build_string ("temacs.el"));
}
/* Set up for profiling. This is known to work on FreeBSD,