Core updates: noclobber; update-plugin-indices.
authorMatt Birkholz <matt@birchwood-abbey.net>
Mon, 29 Oct 2018 19:58:05 +0000 (12:58 -0700)
committerMatt Birkholz <matt@birchwood-abbey.net>
Thu, 1 Nov 2018 19:23:08 +0000 (12:23 -0700)
Do not clobber libdir/plugins.scm in traditional src updates
(installs).  Do not clobber infodir/dir in Debian updates
(i.e. provide a debian-clean target so the Debian package build can
remove the empty indices created by the traditional installs).

Update plugin indices during traditional src and doc updates.

debian/rules
doc/Makefile.in
doc/configure.ac
src/Makefile.in
src/configure.ac

index 46d07ab7db0c11b8fbdec81d52bd91b9662fb7c3..922731f2cd99794cff7870609d9613b71f136b2d 100755 (executable)
@@ -16,8 +16,9 @@ override_dh_auto_configure:
        dh_auto_configure --sourcedirectory=doc -- $(CONF_FLAGS)
 
 override_dh_auto_install:
-       dh_auto_install --sourcedirectory=src
-       dh_auto_install --sourcedirectory=doc -- install-html install-pdf
+       dh_auto_install --sourcedirectory=src -- debian-clean
+       dh_auto_install --sourcedirectory=doc \
+                       -- install-html install-pdf debian-clean
 
 debian/%: debian/%.in
        sed -e 's|@SCMDOCDIR@|/usr/share/doc/mit-scheme-pucked|g' \
index 6949f8493073d71e22b2225a885be3794549cf39..cc62411815323ccddbb5c808e237ab5d88565ebe 100644 (file)
@@ -109,6 +109,12 @@ maintainer-clean:
 tags TAGS:
 
 install: install-info-gz install-man install-html $(INST_TARGETS)
+       -( echo "(update-plugin-indices"; \
+          echo " \"$(PROJECT)\""; \
+          echo " \"$(DESTDIR)$(infodir)\""; \
+          echo " \"$(DESTDIR)$(libdir)/$(PROJECT)\""; \
+          echo " \"$(DESTDIR)$(docdir)\")" \
+        ) | mit-scheme-pucked --batch-mode
 
 install-info-gz install-info: $(PROJECT).info
        $(mkinstalldirs) $(DESTDIR)$(infodir)
@@ -121,6 +127,9 @@ install-info-gz install-info: $(PROJECT).info
            ( cd $${D} && $(MAKE) $@ ) || exit 1;\
        done
 
+debian-clean:
+       rm -f $(DESTDIR)$(infodir)/dir*
+
 $(PROJECT).info: $(PROJECT).info.in
        sed -e 's|@SCMDOCDIR@|$(docdir)|g' < $< > $@
 
@@ -150,5 +159,5 @@ install-ps:
            ( cd $${D} && $(MAKE) $@ ) || exit 1;\
        done
 
-.PHONY: all mostlyclean clean distclean maintainer-clean tags TAGS
+.PHONY: all mostlyclean clean distclean maintainer-clean debian-clean tags TAGS
 .PHONY: install install-man install-info install-html install-pdf install-ps
index e423bdf1f373cccd12da0af9651435876cff5a86..8d7e0f41fd858b9208f4d5b17e9c44d0f665ff7a 100644 (file)
@@ -1,7 +1,7 @@
 dnl Process this file with autoconf to produce a configure script.
 
-AC_INIT([MIT/GNU Scheme documentation],
-       [9.2.18],
+AC_INIT([MIT/GNU Scheme Pucked documentation],
+       [9.2.19],
        [matt@birchwood-abbey.net],
        [mit-scheme-pucked-doc])
 AC_CONFIG_SRCDIR([ref-manual/scheme.texinfo])
index 70b1f4968f4bfd3cdc4e5b4c731a52fb98994a3f..1343eb2da64d15e91d94c330927b3ad059e1dc85 100644 (file)
@@ -42,6 +42,7 @@ sharedstatedir = @sharedstatedir@
 localstatedir = @localstatedir@
 libdir = @libdir@
 infodir = @infodir@
+docdir = @docdir@
 mandir = @mandir@
 includedir = @includedir@
 oldincludedir = /usr/include
@@ -66,6 +67,7 @@ LIARC_BUNDLES = $(LIARC_BOOT_BUNDLES) ffi sos ssp xml
 SUBDIRS = $(INSTALLED_SUBDIRS) 6001 win32 xdoc
 INSTALLED_SUBDIRS = microcode runtime $(LIARC_BUNDLES)
 
+PROJECT = @PROJECT@
 MIT_SCHEME_EXE = @MIT_SCHEME_EXE@
 AUXDIR_NAME = @AUXDIR_NAME@
 AUXDIR = @AUXDIR@
@@ -705,6 +707,10 @@ stamp_macosx-app: all
        etc/macosx/make-app.sh
        echo "done" > $@
 
+.PHONY: debian-clean
+debian-clean:
+       rm -f $(DESTDIR)$(AUXDIR)/plugins.scm
+
 compile-microcode:
        (cd microcode && $(MAKE) all)
 
@@ -796,6 +802,17 @@ install-auxdir-top:
                            $(DESTDIR)$(AUXDIR)/.; \
         else echo "$(DESTDIR)$(AUXDIR)/optiondb.scm already exists"; fi
        $(INSTALL_DATA) lib/*.com $(DESTDIR)$(AUXDIR)/.
+       if ! test -e $(DESTDIR)$(AUXDIR)/plugins.scm ]; then \
+           $(INSTALL_DATA) $(top_srcdir)/etc/plugins.scm \
+                           $(DESTDIR)$(AUXDIR)/.; \
+       else echo "$(DESTDIR)$(AUXDIR)/plugins.scm already exists"; fi
+       $(INSTALL_DATA) lib/*.com $(DESTDIR)$(AUXDIR)/.
+       ( echo "(update-plugin-indices"; \
+         echo " \"$(PROJECT)\""; \
+         echo " \"$(DESTDIR)$(infodir)\""; \
+         echo " \"$(DESTDIR)$(AUXDIR)\""; \
+         echo " \"$(DESTDIR)$(docdir)\")" \
+       ) | $(top_srcdir)/microcode/scheme --batch-mode --library lib
 
 .PHONY: default-target all all-native all-liarc macosx-app
 .PHONY: compile-microcode build-bands
index 52a6c21f5b255dfd0a930a7d27d206d91843dd7b..9d5cd1269a7bbe95ed8ba2019d57d2a91c849879 100644 (file)
@@ -1,6 +1,9 @@
 dnl Process this file with autoconf to produce a configure script.
 
-AC_INIT([MIT/GNU Scheme], [9.2], [bug-mit-scheme@gnu.org], [mit-scheme])
+AC_INIT([MIT/GNU Scheme Pucked],
+       [9.2.19],
+       [matt@birchwood-abbey.net],
+       [mit-scheme-pucked])
 AC_CONFIG_SRCDIR([microcode/boot.c])
 AC_CONFIG_AUX_DIR([microcode])
 # Would set m4 macro dir, but only works if automake or libtools in use.
@@ -114,7 +117,9 @@ svm1)
     INSTALL_LIARC_BUNDLES=
     ;;
 esac
-AUXDIR_NAME=mit-scheme-pucked
+
+PROJECT=${PACKAGE_TARNAME}
+AUXDIR_NAME=${PACKAGE_TARNAME}
 AUXDIR='$(libdir)'/${AUXDIR_NAME}
 
 # Please keep the following messages synchronized with the messages in
@@ -205,6 +210,7 @@ AC_SUBST([IF_LIARC])
 AC_SUBST([IF_NOT_DEBUG_TOOLCHAIN])
 AC_SUBST([IF_SVM])
 AC_SUBST([TOOL_TOOLCHAIN_HEAP])
+AC_SUBST([PROJECT])
 
 AC_PROG_INSTALL
 AC_PROG_LN_S