# HG changeset patch # User John W. Eaton # Date 1441385146 14400 # Node ID ac0f7acdc3fd8d50c33c2d1e0c34af430a0e1373 # Parent a9a1f021d96b7a45e11b98a7abae1786a3b078ad avoid executing startup file twice when using run-octave script (bug #45872) * site-rcfile: Rename from local-rcfile. * version-rcfile: Rename from main-rcfile. * scripts/startup/module.mk: Update to match new names. (install-startup-files, uninstall-startup-files): Move rules here from scripts/module.mk. * site-rcfile, version-rcfile: Note environment variables that may be used to select site and version rcfiles to execute. * run-octave.in (OCTAVE_VERSION_INITFILE): Define to use version-rcfile from source tree. (OCTAVE_SITE_INITFILE): Update to use site-rcfile from source tree. diff --git a/run-octave.in b/run-octave.in --- a/run-octave.in +++ b/run-octave.in @@ -94,7 +94,8 @@ OCTAVE_DEFAULT_QT_SETTINGS="$builddir/libgui/default-qt-settings"; export OCTAVE_DEFAULT_QT_SETTINGS OCTAVE_JAVA_DIR="$builddir/scripts/java"; export OCTAVE_JAVA_DIR OCTAVE_LOCALE_DIR="$builddir/libgui/languages"; export OCTAVE_LOCALE_DIR -OCTAVE_SITE_INITFILE="$top_srcdir/scripts/startup/main-rcfile"; export OCTAVE_SITE_INITFILE +OCTAVE_SITE_INITFILE="$top_srcdir/scripts/startup/site-rcfile"; export OCTAVE_SITE_INITFILE +OCTAVE_VERSION_INITFILE="$top_srcdir/scripts/startup/version-rcfile"; export OCTAVE_VERSION_INITFILE exec $builddir/libtool --mode=execute $driver \ "$octave_executable" --no-init-path --path="$LOADPATH" \ diff --git a/scripts/module.mk b/scripts/module.mk --- a/scripts/module.mk +++ b/scripts/module.mk @@ -160,33 +160,6 @@ uninstall-local: uninstall-startup-files uninstall-pkg-add -install-startup-files: - $(MKDIR_P) $(DESTDIR)$(fcnfiledir)/startup - if test -f $(DESTDIR)$(fcnfiledir)/startup/octaverc; then true; \ - else \ - $(INSTALL_DATA) $(srcdir)/$(SYSTEM_STARTUP_FILE_SRC) \ - $(DESTDIR)$(fcnfiledir)/startup/octaverc; \ - fi - if test -f $(DESTDIR)$(fcnfiledir)/startup/inputrc; then true; \ - else \ - $(INSTALL_DATA) $(srcdir)/$(SYSTEM_INPUTRC_FILE_SRC) \ - $(DESTDIR)$(fcnfiledir)/startup/inputrc; \ - fi - $(MKDIR_P) $(DESTDIR)$(localfcnfiledir)/startup - if test -f $(DESTDIR)$(localfcnfiledir)/startup/octaverc; \ - then true; \ - else \ - $(INSTALL_DATA) $(srcdir)/$(LOCAL_STARTUP_FILE_SRC) \ - $(DESTDIR)$(localfcnfiledir)/startup/octaverc; \ - fi -.PHONY: install-startup-files - -uninstall-startup-files: - rm -f $(DESTDIR)$(fcnfiledir)/startup/octaverc - rm -f $(DESTDIR)$(fcnfiledir)/startup/inputrc - rm -f $(DESTDIR)$(localfcnfiledir)/startup/octaverc -.PHONY: uninstall-startup-files - install-pkg-add: for f in $(PKG_ADD_FILES); do \ if [ -n "`cat $$f`" ]; then \ diff --git a/scripts/startup/module.mk b/scripts/startup/module.mk --- a/scripts/startup/module.mk +++ b/scripts/startup/module.mk @@ -3,15 +3,15 @@ scripts_startup_FCN_FILES = \ scripts/startup/__finish__.m -LOCAL_STARTUP_FILE_SRC = scripts/startup/local-rcfile +SITE_STARTUP_FILE_SRC = scripts/startup/site-rcfile -SYSTEM_STARTUP_FILE_SRC = scripts/startup/main-rcfile +VERSION_STARTUP_FILE_SRC = scripts/startup/version-rcfile SYSTEM_INPUTRC_FILE_SRC = scripts/startup/inputrc STARTUP_FILE_SRC = \ - $(LOCAL_STARTUP_FILE_SRC) \ - $(SYSTEM_STARTUP_FILE_SRC) \ + $(SITE_STARTUP_FILE_SRC) \ + $(VERSION_STARTUP_FILE_SRC) \ $(SYSTEM_INPUTRC_FILE_SRC) scripts_startupdir = $(fcnfiledir)/startup @@ -25,3 +25,30 @@ DIRSTAMP_FILES += scripts/startup/$(octave_dirstamp) scripts_EXTRA_DIST += $(STARTUP_FILE_SRC) + +install-startup-files: + $(MKDIR_P) $(DESTDIR)$(fcnfiledir)/startup + if test -f $(DESTDIR)$(fcnfiledir)/startup/octaverc; then true; \ + else \ + $(INSTALL_DATA) $(srcdir)/$(VERSION_STARTUP_FILE_SRC) \ + $(DESTDIR)$(fcnfiledir)/startup/octaverc; \ + fi + if test -f $(DESTDIR)$(fcnfiledir)/startup/inputrc; then true; \ + else \ + $(INSTALL_DATA) $(srcdir)/$(SYSTEM_INPUTRC_FILE_SRC) \ + $(DESTDIR)$(fcnfiledir)/startup/inputrc; \ + fi + $(MKDIR_P) $(DESTDIR)$(localfcnfiledir)/startup + if test -f $(DESTDIR)$(localfcnfiledir)/startup/octaverc; \ + then true; \ + else \ + $(INSTALL_DATA) $(srcdir)/$(SITE_STARTUP_FILE_SRC) \ + $(DESTDIR)$(localfcnfiledir)/startup/octaverc; \ + fi +.PHONY: install-startup-files + +uninstall-startup-files: + rm -f $(DESTDIR)$(fcnfiledir)/startup/octaverc + rm -f $(DESTDIR)$(fcnfiledir)/startup/inputrc + rm -f $(DESTDIR)$(localfcnfiledir)/startup/octaverc +.PHONY: uninstall-startup-files diff --git a/scripts/startup/local-rcfile b/scripts/startup/site-rcfile rename from scripts/startup/local-rcfile rename to scripts/startup/site-rcfile --- a/scripts/startup/local-rcfile +++ b/scripts/startup/site-rcfile @@ -1,4 +1,7 @@ ## System-wide startup file for Octave. ## +## If the environment variable OCTAVE_SITE_INITFILE is set when Octave +## starts, then that file is executed instead of this file. +## ## This file should contain any commands that should be executed each ## time Octave starts for every user at this site. diff --git a/scripts/startup/main-rcfile b/scripts/startup/version-rcfile rename from scripts/startup/main-rcfile rename to scripts/startup/version-rcfile --- a/scripts/startup/main-rcfile +++ b/scripts/startup/version-rcfile @@ -1,5 +1,8 @@ ## System-wide startup file for Octave. ## +## If the environment variable OCTAVE_VERSION_INITFILE is set when Octave +## starts, then that file is executed instead of this file. +## ## This file should contain any commands that should be executed each ## time Octave starts for every user at this site.