[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/cpio-mode 12e550e 58/61: Version 0.14β
From: |
Stefan Monnier |
Subject: |
[elpa] externals/cpio-mode 12e550e 58/61: Version 0.14β |
Date: |
Fri, 11 Jan 2019 15:25:38 -0500 (EST) |
branch: externals/cpio-mode
commit 12e550ee3c20d7077b33ed3ba0b0817b8e558251
Author: dlewan <address@hidden>
Commit: GitHub <address@hidden>
Version 0.14β
The primary change is that cpio-mode creates a time-stamped backup.
Copyrights have been updated for 2019.
---
DESIGN | 4 +-
Makefile.in | 390 ++++++++++++++++++----------------------
NEWS | 8 +-
README | 17 +-
cab-test.el | 2 +-
configure.ac | 3 +-
cpio-affiliated-buffers.el | 2 +-
cpio-bin.el | 4 +-
cpio-crc.el | 2 +-
cpio-dired-crc-test.el | 2 +-
cpio-dired-odc-test.el | 2 +-
cpio-dired-test.el | 2 +-
cpio-dired.el | 2 +-
cpio-entry-contents-mode.el | 2 +-
cpio-entry-header.el | 2 +-
cpio-generic-tests.el | 2 +-
cpio-generic.el | 2 +-
cpio-hpbin.el | 2 +-
cpio-hpodc.el | 2 +-
cpio-tar.el => cpio-mode-pkg.el | 13 +-
cpio-modes-test.el | 2 +-
cpio-modes.el | 2 +-
cpio-newc.el | 5 +-
cpio-odc.el | 2 +-
cpio-tar.el | 2 +-
cpio-tests.el | 2 +-
cpio-ustar.el | 2 +-
cpio-wanted.el | 2 +-
cpio.el | 117 +++++-------
test-generic.el | 2 +-
ttt.el | 2 +-
31 files changed, 275 insertions(+), 330 deletions(-)
diff --git a/DESIGN b/DESIGN
index 16f0c46..6019515 100644
--- a/DESIGN
+++ b/DESIGN
@@ -1,7 +1,7 @@
-# $Id: DESIGN,v 1.6 2018/12/03 00:43:38 doug Exp $
+# $Id: DESIGN,v 1.7 2019/01/03 21:04:20 doug Exp $
#
-# Copyright © 2015, 2017, 2018 Douglas Lewan, address@hidden
+# Copyright © 2015, 2017, 2018, 2019 Douglas Lewan, address@hidden
# All rights reserved.
#
# This program is free software: you can redistribute it and/or modify
diff --git a/Makefile.in b/Makefile.in
index 3ea01b1..1d15993 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1,8 +1,7 @@
# -*- mode: makefile; coding: utf-8 -*-
+# $Id: Makefile.in,v 1.4 2019/01/03 20:08:35 doug Exp $
-#
-# Copyright © 2013, 2014, 2015, 2016, 2017, 2018
-# Douglas Lewan, address@hidden
+# Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Douglas Lewan,
address@hidden
# All rights reserved.
#
# This program is free software: you can redistribute it and/or modify
@@ -17,10 +16,9 @@
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-#
-PACKAGE = @PACKAGE_NAME@
-PACKAGE_VERSION = @PACKAGE_VERSION@
+PROJECT = @PACKAGE_NAME@
+PROJECT_VERSION = @PACKAGE_VERSION@
################################
#
@@ -28,85 +26,67 @@ PACKAGE_VERSION = @PACKAGE_VERSION@
#
CFILES =
HFILES =
-OFILES =
+OFILES = ${CFILES:.o=.c}
SHELLS =
-CPIO_FILES = cpio-bin.el \
- cpio-crc.el \
- cpio.el \
- cpio-dired.el \
- cpio-entry-contents-mode.el \
- cpio-entry-header.el \
- cpio-hpbin.el \
- cpio-hpodc.el \
- cpio-newc.el \
- cpio-odc.el \
- cpio-tar.el \
- cpio-ustar.el \
- cpio-wanted.el
-SUPPORT_FILES = cpio-affiliated-buffers.el \
- cpio-generic.el \
- cpio-modes.el
-APP_FILES = ${CPIO_FILES} ${SUPPORT_FILES}
-
-ELC_FILES = ${APP_FILES:.el=.elc}
-
-TEST_FILES = cab-test.el \
- cpio-modes-test.el \
- cpio-dired-crc-test.el \
- cpio-dired-odc-test.el \
- cpio-dired-test.el \
- cpio-modes-test.el
-
-SUPPORT_FILES = cpio-affiliated-buffers.el \
- cpio-generic.el \
- cpio-modes.el
-
-
-EL_FILES = ${APP_FILES} ${TEST_FILES} ${SUPPORT_FILES}
-LIB_FILES =
-DOC_FILES =
-INFO_FILES =
-
-SRC_FILES = configure \
- COPYING \
- DESIGN \
- install-sh \
- Makefile.in \
- NEWS \
- QUESTIONS \
- README \
- stamp-h.in \
- THANKS \
- ${EL_FILES}
-
-subdirs = test_data/alphabet
+EL_FILES =
+SRC_FILES = Makefile.in
################################
#
# Where things are
#
-
prefix = @prefix@
-datarootdir = @datarootdir@
-srcdir = @srcdir@
-distdir = ${PACKAGE}-${PACKAGE_VERSION}
+distdir =
${abs_srcdir}/${PACKAGE}-${PACKAGE_VERSION}/test_data/alphabet
# And where they go
bindir = ${prefix}/bin
-libdir = ${prefix}/lib
-lispdir = ${prefix}/share/emacs/lisp
-installdir = ${lispdir}/cpio
+docdir = ${prefix}/share/doc
+exec_prefix = ${prefix}
+execdir = ${exec_prefix}
+libdir = ${exec_prefix}/lib
+libexecdir = ${exec_prefix}/libexec
+sbindir = ${exec_prefix}/sbin
+
+datarootdir = ${prefix}/share
+datadir = ${datarootdir}
+infodir = ${datarootdir}/info
+sysconfdir = ${prefix}/etc
+sharedstatedir = ${prefix}/com
+localstatdir = ${prefix}/var
+runstatedir = ${localstatdir}/run
+
+includedir = ${prefix}/include
+oldincludedir = /usr/include
docdir = @docdir@
-dvidir = @infodir@
infodir = @infodir@
-sharedir = ${prefix}/share/${PACKAGE}/${PACKAGE_VERSION}
-sharelibdir = ${sharedir}/lib
-sharelispdir = ${sharedir}/lisp
+htmldir = ${docdir}
+dvidir = ${docdir}
+pdfdir = ${docdir}
+psdir = ${docdir}
+libdir = ${exec_prefix}/lib
+lispdir =
${prefix}/share/${PROJECT}/${PROJECT_VERSION}/lisp
+localedir = ${datarootdir}/locale
+mandir = ${datarootdir}/man
+man1dir = ${mandir}/man1
+man2dir = ${mandir}/man2
+man3dir = ${mandir}/man3
+man4dir = ${mandir}/man4
+man5dir = ${mandir}/man5
+man6dir = ${mandir}/man6
+man7dir = ${mandir}/man7
+manext = .1
+man1ext = .1
+man2ext = .2
+man3ext = .3
+man4ext = .4
+man5ext = .5
+man6ext = .6
+man7ext = .7
srcdir = @srcdir@
abs_srcdir = @abs_srcdir@
-
+top_srcdir = @top_srcdir@
################################
#
@@ -115,7 +95,7 @@ abs_srcdir = @abs_srcdir@
TAR_OPTS = @tar_opts@
TAR_SUFFIX = @tar_suffix@
-TARBALL = ${PACKAGE}-${PACKAGE_VERSION}-${shell date
+%Y%m%d%H%M%S}.${TAR_SUFFIX}
+TARBALL = ${PROJECT}-${PROJECT_VERSION}-${shell date
+%Y%m%d%H%M%S}.${TAR_SUFFIX}
################################
@@ -127,23 +107,13 @@ INSTALL = @INSTALL@
CC = @CC@
CFLAGS =
-.el.elc:
- emacs -Q -batch ${BYTE_COMPILE_FLAGS} \
- -l bytecomp -f byte-compile-refresh-preloaded \
- -l cpio.el -f batch-byte-compile ${<} ;
-
################################
-# Taken from emacs' lisp/Makefile.in
-BYTE_COMPILE_EXTRA_FLAGS =
-BIG_STACK_DEPTH = 2200
-BIG_STACK_OPTS = --eval "(setq max-lisp-eval-depth $(BIG_STACK_DEPTH))"
-
-# Set load-prefer-newer for the benefit of the non-bootstrappers.
-BYTE_COMPILE_FLAGS = $(BIG_STACK_OPTS) \
- --eval '(setq load-prefer-newer t)' $(BYTE_COMPILE_EXTRA_FLAGS)
-# EO stuff from emacs' lisp/Makefile.in
-################################
+#
+# Keys for building test data.
+#
+LETTERS = a b c d e f g h i j k l m n o p q r s t u v w x y z
+
################################################################
@@ -152,53 +122,81 @@ BYTE_COMPILE_FLAGS = $(BIG_STACK_OPTS) \
# Building
#
+.PHONY: default help all alphabet nonsense check_gnu
+
default: check_gnu
- @echo
- @echo "There is no default action in this Makefile."
- ${MAKE} help
-
-help: check_gnu
- @echo "The Makefile has the following targets:"
- @echo " make check -- check_cab and check_modes."
- @echo " make check_cab -- run automated tests of
cpio-affilitated-buffers.el."
- @echo " make check_copyrights -- scan files for copyrights."
- @echo " make check_modes -- run automated tests agains
cpio-modes.el."
- @echo " make clean -- remove byte compiled files."
- @echo " make dist -- build a distributable tarball."
- @echo " make distclean -- clean, leaving only distribution files."
- @echo " make help -- present this help."
- @echo " make maintainer-clean -- clean and remove crufty files."
- @echo " make mostlyclean -- like distclean."
- @echo " make simple_install -- install the code for cpio-mode."
- @echo " make tags -- run tags on the cpio-mode source."
- @echo " make uninstall -- uninstall cpio-mode."
- @echo " make update_versions -- update the Version: fields in
cpio-mode code."
- @echo " make version -- print the version of cpio-mode."
- @echo "The following targets are incomplete, incorrect or just not
implemented:"
- @echo " X make check -- run automated tests."
- @echo " X make elc -- byte compile cpio-mode."
- @echo " X make install -- install a byte compiled instance of
cpio-mode."
- @echo " X make check_bin -- run automated tests of binary format
handling."
- @echo " X make check_crc -- run automated tests of crc format
handling."
- @echo " X make check_newc -- run automated tests of newc format
handling."
- @echo " X make check_odc -- run automated tests of odc format
handling."
-
-version:
- @echo ${PACKAGE} ${PACKAGE_VERSION}
-
-all: default
-
-.PHONY: check_gnu elc update_versions
-
-elc: ${ELC_FILES}
+ @echo "This Makefile has no defaults."
+ @echo "Please type one of the archive format targets:"
+ @echo " ${MAKE} all"
+ @echo " ${MAKE} bin"
+ @echo " ${MAKE} crc"
+ @echo " ${MAKE} hpbin"
+ @echo " ${MAKE} hpodc"
+ @echo " ${MAKE} newc"
+ @echo " ${MAKE} odc"
+ @echo " ${MAKE} tar"
+ @echo " ${MAKE} ustar"
+ @echo "instead."
+
+help: check_gnu default
+
+nonsense:
+ @echo "The target address@hidden does not make sense in this directory."
check_gnu:
@${MAKE} --version >/dev/null 2>&1 || ( echo "This makefile requires
GNU Make." && exit 1 )
-update_versions: configure.ac
- @for f in ${EL_FILES} ; do
\
- sed -n -E -e 's/^;; Version: (.*)$$/;; Version:
'${PACKAGE_VERSION}'/' -ep < $${f} >$${f}.tmp ; \
- mv -f $${f}.tmp $${f} ;
\
+.PHONY: alphabet ${LETTERS}
+
+alphabet: check_gnu ${LETTERS}
+
+small_alphabet: check_gnu a b c
+
+${LETTERS}:
+ @for i in address@hidden address@hidden@} address@hidden@address@hidden
address@hidden@address@hidden@} address@hidden@address@hidden@address@hidden ;
do \
+ > $${i} ;
\
+ echo >> $${i} ;
\
+ echo $${i} >> $${i} ;
\
+ echo >> $${i} ;
\
+ done
+ @if ! [ -d address@hidden@address@hidden@address@hidden ] ; then
\
+ mkdir address@hidden@address@hidden@address@hidden ;
\
+ fi
+
+################################
+#
+# Cpio formats
+#
+.PHONY: all bin crc hpbin hpodc newc odc tar ustar
+all: bin crc hpbin hpodc newc odc tar ustar links
+# Yes, these regular expressions are a little brittle,
+# but they work in this directory.
+archives:
+ ls -1 -d ? ?? ??? ???? ????? ?????.d | grep -v CVS | cpio -o -H
${archive_format} > alphabet.${archive_format}.cpio
+ ls -1 -d a aa aaa aaaa aaaaa aaaaa.d b bb bbb bbbb bbbbb bbbbb.d c cc
ccc cccc ccccc ccccc.d | cpio -o -H ${archive_format} >
alphabet_small.${archive_format}.cpio
+ ls -1 -d a aa aaaaa.d b bb | cpio -o -H ${archive_format} >
alphabet_tiny.${archive_format}.cpio
+ ls -1 -d a aaaaa.d | cpio -o -H ${archive_format} >
alphabet_mini.${archive_format}.cpio
+
+bin: alphabet
+ ${MAKE} address@hidden archives
+crc: alphabet
+ ${MAKE} address@hidden archives
+hpbin: alphabet
+ ${MAKE} address@hidden archives
+hpodc: alphabet
+ ${MAKE} address@hidden archives
+newc: alphabet
+ ${MAKE} address@hidden archives
+odc: alphabet
+ ${MAKE} address@hidden archives
+tar: alphabet
+ ${MAKE} address@hidden archives
+ustar: alphabet
+ ${MAKE} address@hidden archives
+
+links: # bin_links crc_links hpbin_links hpodc_links newc_links tar_links
ustar_links
+ for i in *.cpio ; do \
+ ln -s $${i} `basename $${i} .cpio` ; \
done
################################
@@ -206,35 +204,9 @@ update_versions: configure.ac
# Testing
#
-.PHONY: check check_cab check_bin check_crc check_newc check_odc installcheck
-check: check_cab check_modes # check_bin check_crc check_newc check_odc
-
-file_check:
- @echo "################################################################"
- @echo "# "
- @echo "# Running tests in ${check_file}."
- @echo "# "
- emacs -batch -Q -eval "(setq load-path (add-to-list 'load-path
\"${abs_srcdir}\"))" -l ert -l ${check_file} -f ert-run-tests-batch-and-exit
2>&1 | grep -v -e 'Modification-flag cleared' -e 'Wrote /'
- @echo "# "
- @echo "# EO tests in ${check_file}."
- @echo "# "
- @echo "################################################################"
- @echo ; echo ; echo
-
-check_cab:
- make check_file=cab-test.el file_check
-check_modes:
- make check_file=cpio-modes-test.el file_check
-check_bin:
- make check_file=cpio-dired-bin-test.el file_check
-check_crc:
- make check_file=cpio-dired-crc-test.el file_check
-check_newc:
- make check_file=cpio-dired-test.el file_check
-check_odc:
- make check_file=cpio-dired-odc-test.el file_check
-
-installcheck: check
+check: nonsense
+
+installcheck: nonsense
.PHONY: check_copyrights
check_copyrights: ${SRC_FILES}
@@ -248,41 +220,24 @@ check_copyrights: ${SRC_FILES}
fi ;
\
done ;
\
exit ${EXIT}
- pd=`pwd` ;
\
- for d in ${subdirs} ; do
\
- cd $${d} ;
\
- make check_copyrights ;
\
- cd $${pd} ;
\
- done
################################
#
# Installation
#
-.PHONY: install simple_install
-install: check_gnu uninstall ${ELC_FILES} installdirs
- ${INSTALL} ${ELC_FILES} ${installdir}
+install: nonsense
-simple_install: check_gnu uninstall installdirs
- ${INSTALL} ${APP_FILES} ${installdir}
+installdirs: nonsense
-# ${ELC_FILES}: elc
+uninstall: nonsense
-installdirs: check_gnu
- test -d ${installdir} || mkdir -p ${installdir}
+install-html: nonsense
+install-dvi: nonsense
+install-pdf: nonsense
+install-ps: nonsense
+install-strip: nonsense
-uninstall:
- rm -rf ${installdir}/*.el ${installdir}/*.elc
-
-install-html:
-install-dvi:
-install-pdf:
-install-ps:
-install-strip:
-
-configure-default: configure
- ./configure
################################
#
@@ -290,73 +245,76 @@ configure-default: configure
#
clean:
- -rm -f *~ ${ELC_FILES}
-
-distclean: check_gnu clean
- if [ -e ${distdir} ] ; then rm -rf ${distdir} ; fi
- tb=${TARBALL} ; if [ -e $${tb} ] ; then rm -rf $${tb} ; fi
- for f in ${PACKAGE}-${PACKAGE_VERSION}-*.${TAR_SUFFIX} ; do \
- if [ -e "$${f}" ] ; then \
- rm -rf "$${f}" ; \
- fi ; \
+ -rm *.cpio
+ -for l in ${LETTERS} ; do
\
+ rm $${l} $${l}$${l} $${l}$${l}$${l} $${l}$${l}$${l}$${l}
$${l}$${l}$${l}$${l}$${l} ; \
+ rmdir $${l}$${l}$${l}$${l}$${l}.d ;
\
done
-mostlyclean:
-maintainer-clean:
+distclean: clean
+ -rm -f *~
+
+mostlyclean: clean
+
+maintainer-clean: distclean
################################
#
# Documentation
#
-dvi:
-html:
-pdf:
-ps:
-info:
+dvi: nonsense
+
+html: nonsense
+
+pdf: nonsense
+
+ps: nonsense
################################
#
# Distribution
#
-dist: check_gnu distdir
- tb=${TARBALL} ; cd ${srcdir} && tar ${TAR_OPTS} -f $${tb} ${distdir} &&
cp $${tb} ..
+dist: check_gnu distdir
+ ${INSTALL} Makefile.in ${distdir}
+
+distdir: check_gnu
+ test -d ${distdir} || mkdir -o ${distdir}
+
-distdir: check_gnu distclean
- if [ -e ${distdir} ] ; then rm -rf ${distdir} || exit 1 ; fi ;
\
- mkdir -p ${distdir} || exit 1 ;
\
- tar -c -f - ${SRC_FILES} | ( cd ${distdir} ; tar -x -f - )
################################
#
# Miscellany
#
-tags:
- etags *.el
+info: nonsense
################
#
# Autoreconfiscation.
#
-$(srcdir)/configure: configure.ac # aclocal.m4
- cd '$(srcdir)' && autoconf
+${top_srcdir}/configure: ${top_srcdir}/configure.ac # aclocal.m4
+ cd '${top_srcdir}' && autoconf
# autoheader might not change config.h.in, so touch a stamp file.
-$(srcdir)/config.h.in: stamp-h.in
-$(srcdir)/stamp-h.in: configure.ac # aclocal.m4
- cd '$(srcdir)' # && autoheader
- echo timestamp > '$(srcdir)/stamp-h.in'
-
-config.h: stamp-h
-stamp-h: config.h.in config.status
+# ${top_srcdir}/config.h.in: stamp-h.in
+${top_srcdir}/stamp-h.in: ${top_srcdir}/configure.ac # aclocal.m4
+ cd '${top_srcdir}' # && autoheader
+ echo timestamp > '${top_srcdir}/stamp-h.in'
+
+${top_srcdir}/config.h: ${top_srcdir}/stamp-h
+${top_srcdir}/stamp-h: ${top_srcdir}/config.h.in ${top_srcdir}/config.status
+ cd '${top_srcdir}' ; \
./config.status
-Makefile: Makefile.in config.status
+Makefile: Makefile.in ${top_srcdir}/config.status
+ cd '${top_srcdir}' ; \
./config.status
-config.status: configure
+${top_srcdir}/config.status: ${top_srcdir}/configure
+ cd '${top_srcdir}' ; \
./config.status --recheck
diff --git a/NEWS b/NEWS
index c8ad7f4..a80f654 100644
--- a/NEWS
+++ b/NEWS
@@ -1,7 +1,7 @@
# -*- outline -*-
#
-# Copyright © 2015, 2018 Douglas Lewan, address@hidden
+# Copyright © 2015, 2018, 2019 Douglas Lewan, address@hidden
# All rights reserved.
#
# This program is free software: you can redistribute it and/or modify
@@ -18,6 +18,12 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
+* Version 0.14β
+** Since this is beta code, the archive file is backed up.
+The backup file has a timestamp.
+Since this is really only for beta code,
+the backup is not intelligent in any way.
+
* Version 0.13̱β
** Clean up for publication to elpa.
diff --git a/README b/README
index 2693dc6..3766f98 100644
--- a/README
+++ b/README
@@ -1,8 +1,8 @@
# -*- mode: org; encoding: utf-8 -*-
-# $Id: README,v 1.9 2018/12/03 00:43:38 doug Exp $
+# $Id: README,v 1.11 2019/01/03 21:04:21 doug Exp $
#
-# Copyright © 2017, 2018 Douglas Lewan, address@hidden
+# Copyright © 2017, 2018, 2019 Douglas Lewan, address@hidden
# All rights reserved.
#
# This program is free software: you can redistribute it and/or modify
@@ -142,9 +142,22 @@ cpio-mode includes a few ERT tests.
All the testing is sunny day day testing.
Rarely are any error conditions tested.
+** Dependencies
For any testing to succeed set your umask to 022,
otherwise all of the data in the tests are incorrect.
+Since the automated tests explicitly invoke cpio-mode
+as does the function (cdmt-reset),
+you cannot use any automatic invocation of cpio-mode.
+One way of doing this is to invoke »emacs -Q«.
+(You'll also need »-eval "(setq load-path (add-to-list 'load-path \".\"))"«.
+until I figure out the right way to handle loading.)
+Thus a good invocation is
+ »emacs -Q -eval "(setq load-path (add-to-list 'load-path \".\"))"«
+Some recommendations for automatic invocation of cpio-mode can be found
+in the comments near the top of cpio.el.
+
+** Internals
- cpio-generic-tests.el provides basic testing of some of the funciton
implemented in cpio-generic.el.
diff --git a/cab-test.el b/cab-test.el
index 874876c..6e4327f 100644
--- a/cab-test.el
+++ b/cab-test.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
-;; Copyright © 2017, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2017, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
diff --git a/configure.ac b/configure.ac
index 37a060d..7946c23 100644
--- a/configure.ac
+++ b/configure.ac
@@ -19,7 +19,7 @@
#
dnl Autoconf requirements
-AC_INIT(cpio-mode, 0.13β, address@hidden)
+AC_INIT(cpio-mode, 0.14β, address@hidden)
AC_PREFIX_DEFAULT(${HOME}/local)
dnl information on the package
@@ -60,6 +60,7 @@ dnl checks for structures
dnl checks for compiler characteristics
dnl checks for library functions
dnl checks for system services
+
AC_CONFIG_FILES([Makefile
stamp-h
test_data/alphabet/Makefile],
diff --git a/cpio-affiliated-buffers.el b/cpio-affiliated-buffers.el
index 7b18066..a44e1c3 100644
--- a/cpio-affiliated-buffers.el
+++ b/cpio-affiliated-buffers.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
-;; Copyright © 2017, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2017, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
diff --git a/cpio-bin.el b/cpio-bin.el
index 356fc1b..61fa0f6 100644
--- a/cpio-bin.el
+++ b/cpio-bin.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
;;
-;; Copyright © 2015, 2017, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2015, 2017, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
@@ -34,8 +34,6 @@
;;
;; Dependencies
;;
-(eval-when-compile
- (require 'bindat))
(require 'bindat)
;;;;;;;;;;;;;;;;
diff --git a/cpio-crc.el b/cpio-crc.el
index 107346b..a74797b 100644
--- a/cpio-crc.el
+++ b/cpio-crc.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
;;
-;; Copyright © 2016, 2017, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2016, 2017, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
diff --git a/cpio-dired-crc-test.el b/cpio-dired-crc-test.el
index 80cc5fe..e7b16ac 100644
--- a/cpio-dired-crc-test.el
+++ b/cpio-dired-crc-test.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
-;; Copyright © 2017, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2017, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
diff --git a/cpio-dired-odc-test.el b/cpio-dired-odc-test.el
index aeb9a92..083d91b 100644
--- a/cpio-dired-odc-test.el
+++ b/cpio-dired-odc-test.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
-;; Copyright © 2017, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2017, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
diff --git a/cpio-dired-test.el b/cpio-dired-test.el
index 259ebbc..81ddf8b 100644
--- a/cpio-dired-test.el
+++ b/cpio-dired-test.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
-;; Copyright © 2017, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2017, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
diff --git a/cpio-dired.el b/cpio-dired.el
index 42fa914..b50949f 100644
--- a/cpio-dired.el
+++ b/cpio-dired.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
-;; Copyright © 2017, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2017, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
diff --git a/cpio-entry-contents-mode.el b/cpio-entry-contents-mode.el
index 2c3ed07..ab7f73c 100644
--- a/cpio-entry-contents-mode.el
+++ b/cpio-entry-contents-mode.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
;;
-;; Copyright © 2017, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2017, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
diff --git a/cpio-entry-header.el b/cpio-entry-header.el
index 2d768c4..4b3d6f5 100644
--- a/cpio-entry-header.el
+++ b/cpio-entry-header.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
;;
-;; Copyright © 2015, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2015, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
diff --git a/cpio-generic-tests.el b/cpio-generic-tests.el
index 5f752a9..82f28a0 100644
--- a/cpio-generic-tests.el
+++ b/cpio-generic-tests.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
;;
-;; Copyright © 2015, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2015, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
diff --git a/cpio-generic.el b/cpio-generic.el
index edee0d3..30289b0 100644
--- a/cpio-generic.el
+++ b/cpio-generic.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
;;
-;; Copyright © 2015, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2015, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
diff --git a/cpio-hpbin.el b/cpio-hpbin.el
index 546251e..3ebf294 100644
--- a/cpio-hpbin.el
+++ b/cpio-hpbin.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
;;
-;; Copyright © 2015, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2015, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
diff --git a/cpio-hpodc.el b/cpio-hpodc.el
index 08018a4..3340f35 100644
--- a/cpio-hpodc.el
+++ b/cpio-hpodc.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
;;
-;; Copyright © 2015, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2015, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
diff --git a/cpio-tar.el b/cpio-mode-pkg.el
similarity index 70%
copy from cpio-tar.el
copy to cpio-mode-pkg.el
index e7aa4e5..77947ad 100644
--- a/cpio-tar.el
+++ b/cpio-mode-pkg.el
@@ -1,8 +1,7 @@
-;; cpio-tar.el --- Let tar-mode handle tar archives. -*- coding: utf-8 -*-
+;; cpio-mode-pkg.el --- package declaration for cpio-mode. -*- coding: utf-8
-*-
-;; COPYRIGHT
;;
-;; Copyright © 2015 Douglas Lewan, address@hidden
+;; Copyright © 2015, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
@@ -19,8 +18,8 @@
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;;
-;;; Tar archives are already handled by tar-mode.
+(define-package "cpio-mode"
+ "0.14β"
+ "Handle CPIO archives like dired."
+ "(bindat 24.5) (cl 24.5) (ert 24.5)")
-(error "Detection of tar archives should invoke tar-mode.")
-
-;;; cpio-tar.el ends here.
diff --git a/cpio-modes-test.el b/cpio-modes-test.el
index 7705145..5994214 100644
--- a/cpio-modes-test.el
+++ b/cpio-modes-test.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
;;
-;; Copyright © 2017, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2017, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
diff --git a/cpio-modes.el b/cpio-modes.el
index 73e6484..2dc53ab 100644
--- a/cpio-modes.el
+++ b/cpio-modes.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
;;
-;; Copyright © 2017, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2017, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
diff --git a/cpio-newc.el b/cpio-newc.el
index 215b517..ae501cf 100644
--- a/cpio-newc.el
+++ b/cpio-newc.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
;;
-;; Copyright © 2015, 2016, 2017, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2015, 2016, 2017, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
@@ -53,8 +53,7 @@
;;
(eval-when-compile
(require 'cl))
-(unless (featurep 'cl)
- (require 'cl))
+(require 'cl)
;; (condition-case err
;; (require 'cpio-generic)
diff --git a/cpio-odc.el b/cpio-odc.el
index dc5e49c..8694919 100644
--- a/cpio-odc.el
+++ b/cpio-odc.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
;;
-;; Copyright © 2015, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2015, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
diff --git a/cpio-tar.el b/cpio-tar.el
index e7aa4e5..b9d6332 100644
--- a/cpio-tar.el
+++ b/cpio-tar.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
;;
-;; Copyright © 2015 Douglas Lewan, address@hidden
+;; Copyright © 2015, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
diff --git a/cpio-tests.el b/cpio-tests.el
index 45779cb..c2a08cf 100644
--- a/cpio-tests.el
+++ b/cpio-tests.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
;;
-;; Copyright © 2017, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2017, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
diff --git a/cpio-ustar.el b/cpio-ustar.el
index 51e8a76..ba5657c 100644
--- a/cpio-ustar.el
+++ b/cpio-ustar.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
;;
-;; Copyright © 2015, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2015, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
diff --git a/cpio-wanted.el b/cpio-wanted.el
index db4066d..10de688 100644
--- a/cpio-wanted.el
+++ b/cpio-wanted.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
;;
-;; Copyright © 2015, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2015, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
diff --git a/cpio.el b/cpio.el
index 107d9fa..af43596 100644
--- a/cpio.el
+++ b/cpio.el
@@ -1,6 +1,6 @@
;;; cpio.el --- Handle cpio archives in the style of dired. -*- coding: utf-8
-*-
-;; COPYRIGHT 2015, 2017, 2018 Douglas Lewan, address@hidden
+;; COPYRIGHT 2015, 2017, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
@@ -243,83 +243,26 @@
;;
-;; During development I need access to local files.
-
-;; (setq load-path (add-to-list 'load-path (substring default-directory -1)))
-
-;; (require 'dired)
-;; (if (file-exists-p (concat default-directory "cpio-generic.elc"))
-;; (load (concat default-directory "cpio-generic.elc"))
-;; (load (concat default-directory "cpio-generic.el")))
-;; (if (file-exists-p (concat default-directory "cpio-modes.elc"))
-;; (load (concat default-directory "cpio-modes.elc"))
-;; (load (concat default-directory "cpio-modes.el")))
-;; (if (file-exists-p (concat default-directory "cpio-affiliated-buffers.elc"))
-;; (load (concat default-directory "cpio-affiliated-buffers.elc"))
-;; (load (concat default-directory "cpio-affiliated-buffers.el")))
-;; (if (file-exists-p (concat default-directory "cpio-bin.elc"))
-;; (load (concat default-directory "cpio-bin.elc"))
-;; (load (concat default-directory "cpio-bin.el")))
-;; newc has to precede crc.
-;; (if (file-exists-p (concat default-directory "cpio-newc.elc"))
-;; (load (concat default-directory "cpio-newc.elc"))
-;; (load (concat default-directory "cpio-newc.el")))
-;; (if (file-exists-p (concat default-directory "cpio-crc.elc"))
-;; (load (concat default-directory "cpio-crc.elc"))
-;; (load (concat default-directory "cpio-crc.el")))
-;; (if (file-exists-p (concat default-directory "cpio-hpbin.elc"))
-;; (load (concat default-directory "cpio-hpbin.elc"))
-;; (load (concat default-directory "cpio-hpbin.el")))
-;; (if (file-exists-p (concat default-directory "cpio-hpodc.elc"))
-;; (load (concat default-directory "cpio-hpodc.elc"))
-;; (load (concat default-directory "cpio-hpodc.el")))
-;; (if (file-exists-p (concat default-directory "cpio-odc.elc"))
-;; (load (concat default-directory "cpio-odc.elc"))
-;; (load (concat default-directory "cpio-odc.el")))
-;; (if (file-exists-p (concat default-directory "cpio-dired.elc"))
-;; (load (concat default-directory "cpio-dired.elc"))
-;; (load (concat default-directory "cpio-dired.el")))
-;; (if (file-exists-p (concat default-directory
"cpio-entry-contents-mode.elc"))
-;; (load (concat default-directory "cpio-entry-contents-mode.elc"))
-;; (load (concat default-directory "cpio-entry-contents-mode.el")))
-
-(unless (featurep 'dired)
- (require 'dired))
-
-(unless (featurep 'cpio-generic)
- (require 'cpio-generic))
-(unless (featurep 'cpio-modes)
- (require 'cpio-modes))
-
-(unless (featurep 'cpio-affiliated-buffers)
- (require 'cpio-affiliated-buffers))
-
-(unless (featurep 'cpio-bin)
- (require 'cpio-bin))
+(require 'dired)
+
+(require 'cpio-generic)
+(require 'cpio-modes)
+
+(require 'cpio-affiliated-buffers)
+
+(require 'cpio-bin)
;; While I like things to be alphabetical, newc /must/ precede crc.
-(unless (featurep 'cpio-newc)
- (require 'cpio-newc))
-(unless (featurep 'cpio-crc)
- (require 'cpio-crc))
-(unless (featurep 'cpio-hpbin)
- (require 'cpio-hpbin))
-(unless (featurep 'cpio-hpodc)
- (require 'cpio-hpodc))
-(unless (featurep 'cpio-odc)
- (require 'cpio-odc))
-(unless (featurep 'cpio-dired)
- (require 'cpio-dired))
-(unless (featurep 'cpio-entry-contents-mode)
- (require 'cpio-entry-contents-mode))
+(require 'cpio-newc)
+(require 'cpio-crc)
+(require 'cpio-hpbin)
+(require 'cpio-hpodc)
+(require 'cpio-odc)
+(require 'cpio-dired)
+(require 'cpio-entry-contents-mode)
;; Formats not supported:
;; (require 'cpio-tar)
;; (require 'cpio-ustar)
-;; Obsolete files:
-;; (require 'cpio-wanted)
-;; (if (file-exists-p (concat default-directory "cpio-wanted.elc"))
-;; (load (concat default-directory "cpio-wanted.elc"))
-;; (load (concat default-directory "cpio-wanted.el")))
;;;;;;;;;;;;;;;;
;; Things to make the byte compiler happy.
@@ -1693,6 +1636,15 @@ or nil."
"Treat cpio archives like file systems with a dired UI."
(if (null (setq *cpio-format* (cpio-discern-archive-type)))
(error "You're not in a supported CPIO buffer. It begins [[%s]]."
(buffer-substring-no-properties 1 8)))
+
+ ;;
+ ;; HEREHERE Get rid of this once things look clean.
+ ;;
+ (cpio-backup-during-development)
+ ;;
+ ;; EO temporary code for development
+ ;;
+
(let ((archive-buffer (current-buffer))
(cpio-dired-buffer))
;; You really only need this for the binary archive formats,
@@ -1712,6 +1664,25 @@ or nil."
;; so this should control what we see at this point.
(switch-to-buffer cpio-dired-buffer)))
+;;
+;; HEREHERE Get rid of this once things look clean.
+;;
+(defun cpio-backup-during-development ()
+ "Create a time-stamped backup of the file in the current-buffer.
+There's an implied CONTRACT there:
+The buffer must contain a file."
+ (let* ((fname "cpio-backup-during-development")
+ (filename (buffer-file-name))
+ (backup-file (format "%s-%s"
+ filename
+ (format-time-string "%Y%m%d%H%H%M%S.%3N"))))
+ (copy-file filename backup-file nil 'keep-time 'preserve-uid-gid
'preserve-permissions)))
+
+;;
+;; EO temporary code for development
+;;
+
+
(defvar *cpio-dired-modified* nil
"A flag to record if any archive-modifying events have occured
since either the beginning or the last save.")
diff --git a/test-generic.el b/test-generic.el
index 867c7d3..af920ca 100644
--- a/test-generic.el
+++ b/test-generic.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
-;; Copyright © 2017, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2017, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
diff --git a/ttt.el b/ttt.el
index 26e9400..ace3fc4 100644
--- a/ttt.el
+++ b/ttt.el
@@ -2,7 +2,7 @@
;; COPYRIGHT
-;; Copyright © 2017, 2018 Douglas Lewan, address@hidden
+;; Copyright © 2017, 2018, 2019 Douglas Lewan, address@hidden
;; All rights reserved.
;;
;; This program is free software: you can redistribute it and/or modify
- [elpa] externals/cpio-mode 0ce72c3 24/61: Create DESIGN, (continued)
- [elpa] externals/cpio-mode 0ce72c3 24/61: Create DESIGN, Stefan Monnier, 2019/01/11
- [elpa] externals/cpio-mode d15c60c 53/61: Deleted obsolete file., Stefan Monnier, 2019/01/11
- [elpa] externals/cpio-mode 97eb77c 45/61: Version 0.08, Stefan Monnier, 2019/01/11
- [elpa] externals/cpio-mode b9cee9d 35/61: Add files via upload, Stefan Monnier, 2019/01/11
- [elpa] externals/cpio-mode 50d0df9 56/61: Initial code derived from the previous Makefile., Stefan Monnier, 2019/01/11
- [elpa] externals/cpio-mode e37b7ed 57/61: Version: 0.13β, Stefan Monnier, 2019/01/11
- [elpa] externals/cpio-mode 0fe3abc 37/61: Removed commented out stub debuggers., Stefan Monnier, 2019/01/11
- [elpa] externals/cpio-mode 0c4985a 52/61: Makefile to be replaced by Makefile.in, Stefan Monnier, 2019/01/11
- [elpa] externals/cpio-mode eb7e950 07/61: Create cpio-dired.el, Stefan Monnier, 2019/01/11
- [elpa] externals/cpio-mode 0976f38 49/61: Version 0.12β, Stefan Monnier, 2019/01/11
- [elpa] externals/cpio-mode 12e550e 58/61: Version 0.14β,
Stefan Monnier <=
- [elpa] externals/cpio-mode f2bad29 60/61: Moved to cpio-mode.el., Stefan Monnier, 2019/01/11
- [elpa] externals/cpio-mode 38a59a6 59/61: Renamed from cpio.el., Stefan Monnier, 2019/01/11
- [elpa] externals/cpio-mode 90f1236 61/61: New version with copyright assigned to the FSF., Stefan Monnier, 2019/01/11
- [elpa] externals/cpio-mode 6c0fa51 38/61: version 0.04, Stefan Monnier, 2019/01/11
- [elpa] externals/cpio-mode f4a1a89 44/61: Version 0.08, Stefan Monnier, 2019/01/11
- [elpa] externals/cpio-mode 4cc60b1 51/61: Version: 0.13β, Stefan Monnier, 2019/01/11
- [elpa] externals/cpio-mode 86b255b 46/61: Version 0.09 -- a little polish, Stefan Monnier, 2019/01/11
- [elpa] externals/cpio-mode 8047799 42/61: Version 0.07 -- fontification, Stefan Monnier, 2019/01/11
- [elpa] externals/cpio-mode 2a01909 34/61: Add files via upload, Stefan Monnier, 2019/01/11
- [elpa] externals/cpio-mode 5a87960 47/61: Version 0.10, Stefan Monnier, 2019/01/13