summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorManoj Srivastava <srivasta@debian.org>2020-05-19 21:29:57 -0700
committerManoj Srivastava <srivasta@debian.org>2020-05-19 21:29:57 -0700
commit11948971f110800dc35b4f6fec90cc01bebd6a7e (patch)
treed69e6f034efc4ace4c2d573a50153b7a875915f1
parent7c4aad4e01c8278e073d28a5c1f59b12582431c1 (diff)
parent50ca5b27f2f7c51d062b3a89d334f7243f467078 (diff)
-rw-r--r--.gitignore2
-rw-r--r--ChangeLog55
-rwxr-xr-xConfigure49
-rw-r--r--MANIFEST6
-rw-r--r--README51
-rw-r--r--U/Specific.U33
-rw-r--r--bin/manicheck.man4
-rw-r--r--bin/manilist.man4
-rw-r--r--bin/packinit.man4
-rw-r--r--debian/changelog9
-rw-r--r--debian/compat1
-rw-r--r--debian/control10
-rw-r--r--jmake/jmkmf.man2
-rw-r--r--kit/kitpost.man4
-rw-r--r--kit/kitsend.man2
-rw-r--r--kit/makeSH.man4
-rw-r--r--kit/makedist.man4
-rw-r--r--kit/manifake.man2
-rw-r--r--mcon/U/Assert.U3
-rw-r--r--mcon/U/Checkcc.U8
-rw-r--r--mcon/U/Config_sh.U2
-rw-r--r--mcon/U/Finish.U3
-rw-r--r--mcon/U/Getfile.U2
-rw-r--r--mcon/U/Head.U4
-rw-r--r--mcon/U/Obsol_h.U2
-rw-r--r--mcon/U/Obsol_sh.U2
-rw-r--r--mcon/U/Specific.U26
-rw-r--r--mcon/U/Trylink.U2
-rw-r--r--mcon/U/ccflags.U8
-rw-r--r--mcon/U/d_bfd_section.U49
-rw-r--r--mcon/U/d_memrchr.U40
-rw-r--r--mcon/U/d_tminsys.U2
-rw-r--r--mcon/U/gccvers.U7
-rw-r--r--mcon/U/nis.U12
-rw-r--r--mcon/U/voidflags.U2
-rwxr-xr-xmcon/man/mconfig.SH21
-rwxr-xr-xmcon/man/mlint.SH13
-rwxr-xr-xmcon/man/mxref.SH2
-rwxr-xr-xmcon/mconfig.SH2
-rwxr-xr-xmcon/mxref.SH3
-rw-r--r--mcon/pl/lint.pl23
-rwxr-xr-xpat/patcil.SH14
-rwxr-xr-xpat/patdiff.SH22
-rwxr-xr-xpat/patlog.SH2
44 files changed, 345 insertions, 177 deletions
diff --git a/.gitignore b/.gitignore
index 103f8de..9908014 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,7 +1,9 @@
.config/
+.package
*.bak
*.1
Makefile
+Wanted
bin/manicheck
bin/manilist
bin/packinit
diff --git a/ChangeLog b/ChangeLog
index 3f1fe9b..4a11de9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -61,7 +61,7 @@ Fri Feb 28 17:48:41 MET 1997 Raphael Manfredi <Raphael_Manfredi@grenoble.hp.co
Added the srcdir support to "configure" now that we have src.U.
- Documented the running environment and the src.U unit in
+ Documented the runnning environment and the src.U unit in
the metaconfig man page. The $_a and $_o are also mentionned.
All the generated scripts must now start with a "$startsh"
to ensure proper shell execution.
@@ -79,7 +79,7 @@ Fri Feb 28 17:48:41 MET 1997 Raphael Manfredi <Raphael_Manfredi@grenoble.hp.co
* bin/packinit.SH: Fixed one wrong ':' comment in .package.
- * jmake/files/Jmake.rules: Now handles USRINC for dependencies.
+ * jmake/files/Jmake.rules: Now handles USRINC for dependencies.
Smarter about dependencies computation.
* jmake/files/Jmake.tmpl: Lex path can now be configured.
@@ -109,13 +109,13 @@ Fri Feb 28 17:48:41 MET 1997 Raphael Manfredi <Raphael_Manfredi@grenoble.hp.co
* mcon/U/Instruct.U: Logname / whoami sequence rewritten to use case.
- * mcon/U/Loc.U: Allow users to specify paths on the command line.
+ * mcon/U/Loc.U: Allow users to specify paths on the command line.
Will now substitute cp for ln if not supported.
- * mcon/U/Myread.U: Myread script now starts with a "startsh".
+ * mcon/U/Myread.U: Myread script now starts with a "startsh".
Miscellaneous fixes.
- * mcon/U/Oldconfig.U: Added support for src.U. New OSNAME define.
+ * mcon/U/Oldconfig.U: Added support for src.U. New OSNAME define.
Can now sense new OSes.
* mcon/U/Options.U: Optdef.sh now starts with a "startsh". Moved
@@ -154,7 +154,7 @@ Fri Feb 28 17:48:41 MET 1997 Raphael Manfredi <Raphael_Manfredi@grenoble.hp.co
* mcon/U/d_csh.U: Added full_csh to preserve the full path even when
portable.
- * mcon/U/d_dosuid.U: Moved unit to TOP via a ?Y: layout directive.
+ * mcon/U/d_dosuid.U: Moved unit to TOP via a ?Y: layout directive.
Tell them /dev/fd is not about floppy disks.
* mcon/U/d_gconvert.U: Integrated new unit from perl5.
@@ -170,7 +170,7 @@ Fri Feb 28 17:48:41 MET 1997 Raphael Manfredi <Raphael_Manfredi@grenoble.hp.co
* mcon/U/d_newsadm.U: Added Guess dependency.
- * mcon/U/d_pidcheck.U: Replaced .o with $_o all over the place.
+ * mcon/U/d_pidcheck.U: Replaced .o with $_o all over the place.
Added ?F: metalint hint.
* mcon/U/d_poll.U: Mention that <poll.h> can be included if HAS_POLL
@@ -182,7 +182,7 @@ Fri Feb 28 17:48:41 MET 1997 Raphael Manfredi <Raphael_Manfredi@grenoble.hp.co
* mcon/U/d_setpgid.U: Reworded symbol comments.
* mcon/U/d_setpgrp.U: Obsoleted USE_BSDGRP in favor of
- USE_BSD_SETPGRP. Another unit now also defines a USE_BSD_GETPGRP.
+ USE_BSD_SETPGRP. Another unit now also defines a USE_BSD_GETPGRP.
Fallback for test program failure improved.
* mcon/U/d_sgndchr.U, mcon/U/d_wifstat.U: Added a ?F: metalint hint.
@@ -198,21 +198,21 @@ Fri Feb 28 17:48:41 MET 1997 Raphael Manfredi <Raphael_Manfredi@grenoble.hp.co
* mcon/U/i_varhdr.U: Varargs script now starts with leading "startsh".
- * mcon/U/intsize.U: Avoid prompting the user if the test runs ok.
+ * mcon/U/intsize.U: Avoid prompting the user if the test runs ok.
Moved code from longsize.U into there. New tests for shortsize as
well.
* mcon/U/libc.U: Replaced .a with $_a all over the place. Added
support for HPUX-10 nm output.
- * mcon/U/libnlist.U: Added usrinc and mips on the dependency line.
+ * mcon/U/libnlist.U: Added usrinc and mips on the dependency line.
Make sure we call ./mips. Added a ?LINT: hint.
* mcon/U/libpth.U: New loclibpth variable.
* mcon/U/longsize.U: Code moved to intsize.U.
- * mcon/U/mallocsrc.U: Added support for Free_t, the type of free().
+ * mcon/U/mallocsrc.U: Added support for Free_t, the type of free().
Replaced .o with $_o all over the place.
* mcon/U/manfmt.U, mcon/U/mansrc.U: Don't ask for AFS when they
@@ -227,7 +227,7 @@ Fri Feb 28 17:48:41 MET 1997 Raphael Manfredi <Raphael_Manfredi@grenoble.hp.co
* mcon/U/nis.U: Ensure suitable defaults for hostcat and friends.
- * mcon/U/orderlib.U: Replaced .a with $_a all over the place.
+ * mcon/U/orderlib.U: Replaced .a with $_a all over the place.
Likewise for .o replaced by $_o. Now uses the ar located by Loc.U.
* mcon/U/randbits.U: Added <unistd.h> and <stdlib.h> to the C program
@@ -262,13 +262,13 @@ Fri Feb 28 17:48:41 MET 1997 Raphael Manfredi <Raphael_Manfredi@grenoble.hp.co
* mcon/U/voidflags.U: Don't prompt them if the void support is high
enough for us.
- * mcon/configure: Added the srcdir support now that we have src.U.
+ * mcon/configure: Added the srcdir support now that we have src.U.
Random cleanup for nicer help message.
- * mcon/man/mconfig.SH: Documents the running environment and the
+ * mcon/man/mconfig.SH: Documents the runnning environment and the
src.U unit. Added warnings for $_a and $_o, as well as "startsh".
- * mcon/man/mlint.SH: New "create" and "empty" lint directives.
+ * mcon/man/mlint.SH: New "create" and "empty" lint directives.
Documented new messages.
* mcon/mxref.SH, mcon/man/mxref.SH: New -L option to match metaconfig
@@ -341,7 +341,7 @@ Mon Sep 25 10:33:26 MET 1995 Raphael Manfredi <ram@hptnos02.grenoble.hp.com>
* mcon/U/Config_h.U: Commented the purpose of the #un-def directive.
- * mcon/U/Loc.U: Commented the purpose of the #un-def directive.
+ * mcon/U/Loc.U: Commented the purpose of the #un-def directive.
Abort Configure run when mandatory command is missing.
* mcon/U/Options.U: Protected option parsing code against 'echo -*'
@@ -492,7 +492,7 @@ Tue Jul 25 16:41:40 METDST 1995 Raphael Manfredi <ram@hptnos02.grenoble.hp.com
* mcon/U/libs.U, mcon/U/Loc.U, mcon/U/Guess.U, mcon/U/Oldconfig.U,
mcon/U/libc.U: Now knows about OS/2 platforms.
- * mcon/U/Head.U: Added SVR4-ish /opt directories to path list (ADO).
+ * mcon/U/Head.U: Added SVR4-ish /opt directories to path list (ADO).
OS/2 platforms are using another path separator.
* mcon/U/Typedef.U: Added backslash escapes within evals to prevent
@@ -668,7 +668,7 @@ Fri May 12 14:39:16 METDST 1995 Raphael Manfredi <ram@hptnos02.grenoble.hp.com
by checking both header and lib (ADO).
* mcon/U/libc.U: Made sure only most recent version of shared lib is
- picked. Final "nm -p" check now uses xscan and xrun like everybody.
+ picked. Final "nm -p" check now uses xscan and xrun like everybody.
Can now grok linux nm output with lead __IO (ADO). Added support for
linux ELF output, using 'W' for alias (ADO).
@@ -693,7 +693,7 @@ Tue Mar 21 09:55:57 MET 1995 Raphael Manfredi <ram@hptnos02.grenoble.hp.com>
Jmake was not working at all on HP-UX due to the way their cpp
systematically removes trailing backslashes in text. The new
fixcpp script is now a wrapper over cpp to first escape those
- backslashes that should be preserved across cpp before feeding
+ backslashes that should be preserved accross cpp before feeding
it with the text of the Jmakefile...
Suppressed extra argument to NormalProgramTarget call in jmake rules.
@@ -722,7 +722,7 @@ Tue Mar 21 09:55:57 MET 1995 Raphael Manfredi <ram@hptnos02.grenoble.hp.com>
* jmake/fixcpp.SH, mcon/U/d_wifstat.U: Created.
* jmake/jmake.SH: Now invokes cpp through new fixcpp script. First
- pass now skips cpp comments altogether.
+ pass now skips cpp comments alltogether.
* mcon/U/Head.U: Definition of paths wrongly added spurious ':' chars.
@@ -990,7 +990,7 @@ Wed Jan 11 17:03:22 MET 1995 Raphael Manfredi <ram@acri.fr>
* mcon/U/Config_sh.U: Moved path stripping from d_portable.U to end
of Configure.
- * mcon/U/Cppsym.U: New cc vs. cpp symbol checking suggested by JHI.
+ * mcon/U/Cppsym.U: New cc vs. cpp symbol checking suggested by JHI.
Added more cpp symbols (JHI).
* mcon/U/Getfile.U: Added support for escaping answers to skip
@@ -1088,7 +1088,7 @@ Mon Oct 31 10:57:05 MET 1994 Raphael Manfredi <ram@acri.fr>
Also, the leading comment in Chk_MANI.U now explains how this
unit gets included into the Configure script. There used to be
- an explanation there, but it was no longer accurate.
+ an explaination there, but it was no longer accurate.
One new unit file (Begin.U).
@@ -1312,7 +1312,7 @@ Sat Oct 29 18:16:03 MET 1994 Raphael Manfredi <ram@acri.fr>
* mcon/U/Loc.U: Added ?F: line for metalint file checking. Be
careful and guard against wildcard searching (ADO).
- * mcon/U/Oldconfig.U: Added ?F: line for metalint file checking.
+ * mcon/U/Oldconfig.U: Added ?F: line for metalint file checking.
Merged with the version used for perl5's Configure (ADO).
* mcon/U/Options.U: Ensure option definition file is removed before
@@ -1335,7 +1335,7 @@ Sat Oct 29 18:16:03 MET 1994 Raphael Manfredi <ram@acri.fr>
mcon/U/d_dlerror.U, mcon/U/d_sysconf.U, mcon/U/i_dld.U,
mcon/U/modetype.U: Created by ADO.
- * mcon/U/cc.U: Detect gcc even when not called as 'gcc' (ADO).
+ * mcon/U/cc.U: Detect gcc even when not called as 'gcc' (ADO).
Simplified gcc version checking (ADO). Added ?F: line for metalint
file checking.
@@ -1418,7 +1418,7 @@ Sat Oct 29 18:16:03 MET 1994 Raphael Manfredi <ram@acri.fr>
* mcon/U/so.U: Now tells user how he can suppress shared lib lookup
(ADO). Removed echo at the top, since it's now in the here-doc (ADO).
- * mcon/U/ssizetype.U: Added ?F: line for metalint file checking.
+ * mcon/U/ssizetype.U: Added ?F: line for metalint file checking.
Added 'ldflags' to the test compile line (ADO).
* mcon/man/mconfig.SH: Added nroff protection for lines beginning
@@ -1444,13 +1444,14 @@ Sat Oct 29 18:16:03 MET 1994 Raphael Manfredi <ram@acri.fr>
* pat/pat.SH: Now unlinks all the files created by patlog in bugs.
- * pat/pat.man: Documents new patlog script and the files it uses.
+ * pat/pat.man: Documents new patlog script and the files it uses.
The RCS layer section has been extended slightly.
* pat/patcil.SH: Now honors the VISUAL and EDITOR environment
- variables. Newer RCS programs chop trailing spaces in log messages.
+ variables. Newer RCS programs chop trailing spaces in log messages.
Separated V/E and v/e commands. New 'v' command to edit the file
being patcil'ed. Added hook for 'V' command (not implemented yet).
* pat/patmake.SH: A lot of setup is now performed by patlog. Added
various escapes in strings for perl5 support.
+
diff --git a/Configure b/Configure
index 0a9ce81..0cc0fdf 100755
--- a/Configure
+++ b/Configure
@@ -13,12 +13,12 @@
#
# Note: this Configure script was generated automatically. Rather than
# working with this copy of Configure, you may wish to get metaconfig.
-# The dist package (which contains metaconfig) is available via SVN:
-# svn co https://svn.code.sf.net/p/dist/code/trunk/dist
+# The dist package (which contains metaconfig) is available via git:
+# git clone git@github.com:rmanfredi/dist.git
-# $Id: Head.U 167 2013-05-08 17:58:00Z rmanfredi $
+# $Id$
#
-# Generated on Sat Nov 14 16:05:58 CET 2015 [metaconfig 3.5-197]
+# Generated on Tue Jun 5 15:24:34 CEST 2018 [metaconfig 3.5-241]
cat >c1$$ <<EOF
ARGGGHHHH!!!!!
@@ -274,6 +274,7 @@ _a=''
_o=''
archobjs=''
firstmakefile=''
+rm_try=''
afs=''
afsroot=''
baserev=''
@@ -722,7 +723,7 @@ while test $# -gt 0; do
esac
shift
;;
- -V) echo "$me generated by metaconfig 3.5-197." >&2
+ -V) echo "$me generated by metaconfig 3.5-241." >&2
exit 0;;
--) break;;
-*) echo "$me: unknown option $1" >&2; shift; error=true;;
@@ -855,10 +856,14 @@ esac
: Find the path to the source tree
case "$src" in
'') case "$0" in
- */*)
- src=`echo $0 | sed -e 's%/[^/][^/]*$%%'`
- ;;
- *) src='.';;
+ */*) src=`echo $0 | sed -e 's%/[^/][^/]*$%%'`
+ case "$src" in
+ /*) ;;
+ .) ;;
+ *) src=`cd ../$src && pwd` ;;
+ esac
+ ;;
+ *) src='.';;
esac;;
esac
case "$src" in
@@ -2270,12 +2275,15 @@ esac
: who configured the system
cf_time=`LC_ALL=C; LANGUAGE=C; export LC_ALL; export LANGUAGE; $date 2>&1`
-cf_by=`(logname) 2>/dev/null`
case "$cf_by" in
"")
- cf_by=`(whoami) 2>/dev/null`
+ cf_by=`(logname) 2>/dev/null`
case "$cf_by" in
- "") cf_by=unknown ;;
+ "")
+ cf_by=`(whoami) 2>/dev/null`
+ case "$cf_by" in
+ "") cf_by=unknown ;;
+ esac ;;
esac ;;
esac
@@ -2352,10 +2360,10 @@ cat >filexp <<EOSS
$startsh
: expand filename
case "\$1" in
- ~/*|~)
+ \~/*|\~)
echo \$1 | $sed "s|~|\${HOME-\$LOGDIR}|"
;;
- ~*)
+ \~*)
if $test -f /bin/csh; then
/bin/csh -f -c "glob \$1"
failed=\$?
@@ -2879,6 +2887,8 @@ case "$_o" in
'') _o='.o';;
esac
+rm_try="$rm -f try try$_exe a.out .out try.[cho] try.$_o core core.try* try.core*"
+
: set the base revision
baserev=3.5
@@ -3941,7 +3951,7 @@ y)
;;
n) echo "OK, that should do.";;
esac
-$rm -f try try.* core
+$rm_try
: determine default editor
echo " "
@@ -4250,9 +4260,9 @@ case "$pager" in
esac
;;
*) dflt="$pager"
- fn="f/($pager)"
;;
esac
+fn="f/($dflt)"
echo " "
rp='What pager is used on your system?'
. ./getfile
@@ -4572,6 +4582,7 @@ privlibexp='$privlibexp'
pthread='$pthread'
revision='$revision'
rm='$rm'
+rm_try='$rm_try'
rmail='$rmail'
run='$run'
scriptdir='$scriptdir'
@@ -4616,6 +4627,12 @@ zcat='$zcat'
zip='$zip'
EOT
+: project-specific code
+file=revision.h
+echo " "
+echo "Generating $file..." >&4
+bin/svn-revision . $file
+
: add special variables
$test -f $src/patchlevel.h && \
awk '/^#define/ {printf "%s=%s\n",$2,$3}' $src/patchlevel.h >>config.sh
diff --git a/MANIFEST b/MANIFEST
index 869872a..702003a 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -8,6 +8,7 @@ MANIFEST This list of files
Makefile.SH A makefile to run subsidiary makefiles
README Basic instructions
Wishlist Features I would like to add
+U/Specific.U Specific code for dist before .SH extraction
bin/ Some binary tools
bin/Jmakefile Generic makefile description for bin
bin/Makefile.SH Jmake-generated configured makefile
@@ -127,6 +128,7 @@ mcon/U/Rcs.U Some stupid redefinitions to keep RCS happy
mcon/U/Sendfile64.U Is sendfile() working with the largefile flags?
mcon/U/Setvar.U Set a variable with some sanity checks
mcon/U/Signal.U Utilities for sig_name.U
+mcon/U/Specific.U Hook for project-specific code before .SH extraction
mcon/U/Tr.U Builds a tr script to handle lower and upper classes
mcon/U/Trylink.U Compiles and links a test program
mcon/U/Typedef.U Defines a typedef lookup function
@@ -170,6 +172,7 @@ mcon/U/d_backtrace.U Do we have backtrace()?
mcon/U/d_bcmp.U Do we have bcmp() or memcmp()?
mcon/U/d_bcopy.U Do we have bcopy() or memcpy()?
mcon/U/d_bfd_lib.U Is the BFD library available?
+mcon/U/d_bfd_section.U Do bfd_section_xxx() accessors exist with 1 argument?
mcon/U/d_bindtxtcode.U Do we have bind_textdomain_codeset()?
mcon/U/d_brokstat.U Check whether stat() macros are broken
mcon/U/d_bsdjmp.U Do we have BSD _setjmp() and _longjmp()?
@@ -221,7 +224,6 @@ mcon/U/d_eofpipe.U Will EOF be seen on closed pipes?
mcon/U/d_epoll.U Can we use epoll_xxx() routines?
mcon/U/d_etext_symbol.U Whether linker defines the "etext" symbol
mcon/U/d_euc2jis.U Do we have euc2jis()?
-mcon/U/d_fast_assert.U Can we use fast assertions?
mcon/U/d_fchdir.U Do we have fchdir()?
mcon/U/d_fchmod.U Do we have fchmod()?
mcon/U/d_fchown.U Do we have fchown()?
@@ -309,6 +311,7 @@ mcon/U/d_memcmp.U Do we have memcmp()?
mcon/U/d_memcpy.U Do we have memcpy()?
mcon/U/d_memmove.U Do we have memmove()?
mcon/U/d_mempcpy.U Do we have mempcpy()?
+mcon/U/d_memrchr.U Do we have memrchr()?
mcon/U/d_memset.U Do we have memset()?
mcon/U/d_mkdir.U Do we have mkdir()?
mcon/U/d_mkfifo.U Do we have mkfifo()?
@@ -752,4 +755,3 @@ pl/rcsargs.pl Perl library to expand rcs filename lists
pl/snapshot.pl Perl library to parse RCS snapshot file
pl/tilde.pl Perl library to perform ~name expansion
pl/users.pl Perl library to parse users file
-revision.h The current SVN revision number for dist
diff --git a/README b/README
index 86f250a..8d71686 100644
--- a/README
+++ b/README
@@ -1,10 +1,10 @@
dist 4.0
- ** Alpha version **
Copyright (c) 1988, Larry Wall
Copyright (c) 1990-1992, Harlan Stenn
Copyright (c) 1991-1997, Raphael Manfredi
Copyright (c) 2004-2006, Raphael Manfredi
+ Copyright (c) 2007+ Many other contributors
------------------------------------------------------------------------
This program is free software; you can redistribute it and/or modify
@@ -18,15 +18,7 @@
------------------------------------------------------------------------
This version of dist requires you to have at least perl 4.0 PL36.
-It has also been ported to work with perl 5.0 PL0, provided you have
-at least integrated patches 0a-0h, issued by Andy Dougherty and made
-available at the following ftp sites:
-
- ftp.demon.co.uk:/pub/perl/db/perl5.000-p0a-p0h.tar.gz
- ftp.funet.fi:/pub/languages/perl/ports/perl5/perl5.000-p0a-p0h.tar.gz
-
-Please read all the directions below before you proceed any further, and
-then follow them carefully.
+It has also been ported to work with modern perl 5.
After you have unpacked your kit, you should have all the files listed
in MANIFEST.
@@ -48,31 +40,6 @@ use any of those, however, the directory containing your package (not this
package) must be initialized by putting a .package file into it. This
can be done by running packinit in that directory.
-There is a mailing list hosted in Japan and set up by Shigeya Suzuki
-<shigeya@foretune.co.jp>, for discussion about the dist package as a
-whole. It's a good place to ask questions (or answer them) and to
-send your patches. I will post official patches to the net, as well
-as to the dist-users list.
-
-To send a mail to the list, address it to <dist-users@foretune.co.jp>.
-To subscribe, send a mail to <majordomo@foretune.co.jp>. If you don't
-know how to use majordomo, the syntax of the subscribe command is:
-
- subscribe dist-users [address]
-
-where the address part is optional. You may unsubscribe automatically
-at any time by sending:
-
- unsubscribe dist-users
-
-If you have a problem with this version of dist, it is recommended that
-you subscribe to the list, then send a description of your problem to it.
-If you send mail to me personally, I may not be able to answer in a
-timely fashion.
-
-This mailing list has low traffic (a few articles per week, typically),
-and it is expected to remain so, with a high signal/noise ratio.
-
Notes:
If you are running on a system with <= 14 char filenames, don't
@@ -119,20 +86,10 @@ clean up everything and let you re-distribute this kit, without
carrying useless files. You should keep this distribution intact, so
that future patches will be applyable.
-7) I have an automatic patch sender. Send me the following mail:
-
- Subject: Command
- @SH mailhelp PATH
-
-and you'll get instructions (PATH stands for YOUR e-mail address, either
-in INTERNET or in bang notation). I would recommend you to get all the
-issued patches before you start making some modifications on this
-package.
-
-8) If you wish to deinstall the package, you may run "make deinstall".
+7) If you wish to deinstall the package, you may run "make deinstall".
A separate "make deinstall.man" will remove the manual pages. Be sure
the makefiles are correctly set before running any deinstall target.
On USG systems, some executable have a chance to remain despite the
deinstall (text file busy...).
- Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
+ Raphael Manfredi <Raphael_Manfredi@pobox.com>
diff --git a/U/Specific.U b/U/Specific.U
new file mode 100644
index 0000000..30babf8
--- /dev/null
+++ b/U/Specific.U
@@ -0,0 +1,33 @@
+?RCS:
+?RCS: Copyright (c) 2018, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic License,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic License; a copy of which may be found at the root
+?RCS: of the source tree for dist 4.0.
+?RCS:
+?X:
+?X: This unit is intended to be a project-specific hook.
+?X: By default, it is therefore empty, meant to be copied to your private
+?X: unit directory (U) and seasoned to taste.
+?X:
+?X: If you need specific code generation to happen once the configuration
+?X: is finished and config.sh was generated, but before the extraction of
+?X: the .SH files begins, then this is the place to put these special
+?X: code that the .SH files will require to run properly.
+?X:
+?X: When this unit triggers, Configure is back to the top directory.
+?X:
+?MAKE:Specific: Config_sh
+?MAKE: -pick add $@ %<
+?T:file
+?X:
+?X: Keep the above ?MAKE: lines and then append your specific code here.
+?X:
+: project-specific code
+file=revision.h
+echo " "
+echo "Generating $file..." >&4
+bin/svn-revision . $file
+
diff --git a/bin/manicheck.man b/bin/manicheck.man
index ba9fa2f..889ce17 100644
--- a/bin/manicheck.man
+++ b/bin/manicheck.man
@@ -1,7 +1,7 @@
.\" $Id$
.\"
.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi
-.\"
+.\"
.\" You may redistribute only under the terms of the Artistic Licence,
.\" as specified in the README file that comes with the distribution.
.\" You may reuse parts of this distribution only within the terms of
@@ -12,7 +12,7 @@
.\" Revision 3.0 1993/08/18 12:04:02 ram
.\" Baseline for dist 3.0 netwide release.
.\"
-.\"
+.\"
.TH MANICHECK 1 ram
.SH NAME
manicheck \- check manifest accuracy
diff --git a/bin/manilist.man b/bin/manilist.man
index 1f60e3f..bcf0cfb 100644
--- a/bin/manilist.man
+++ b/bin/manilist.man
@@ -1,7 +1,7 @@
.\" $Id$
.\"
.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi
-.\"
+.\"
.\" You may redistribute only under the terms of the Artistic Licence,
.\" as specified in the README file that comes with the distribution.
.\" You may reuse parts of this distribution only within the terms of
@@ -21,7 +21,7 @@
.\" Revision 3.0 1993/08/18 12:04:04 ram
.\" Baseline for dist 3.0 netwide release.
.\"
-.\"
+.\"
.TH MANILIST 1 ram
.SH NAME
manilist \- report status of files in a source directory
diff --git a/bin/packinit.man b/bin/packinit.man
index c1b7bc5..e62a8c7 100644
--- a/bin/packinit.man
+++ b/bin/packinit.man
@@ -1,7 +1,7 @@
.\" $Id$
.\"
.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi
-.\"
+.\"
.\" You may redistribute only under the terms of the Artistic Licence,
.\" as specified in the README file that comes with the distribution.
.\" You may reuse parts of this distribution only within the terms of
@@ -24,7 +24,7 @@
.\" Revision 3.0 1993/08/18 12:04:06 ram
.\" Baseline for dist 3.0 netwide release.
.\"
-.\"
+.\"
.TH PACKINIT 1 ram
.SH NAME
packinit \- initialize or update your .package file
diff --git a/debian/changelog b/debian/changelog
index 3025647..c394f08 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,12 @@
+dist (1:3.5-236-1) unstable; urgency=medium
+
+ * New upstream git snapshot
+ * Ack NMUs
+ * Update VCS-* headers in control
+ * Move to standards version 4.3.0 (no changes were needed).
+
+ -- Manoj Srivastava <srivasta@debian.org> Tue, 19 May 2020 20:46:55 -0700
+
dist (1:3.5-236-0.2) unstable; urgency=medium
* Non-maintainer upload.
diff --git a/debian/compat b/debian/compat
deleted file mode 100644
index ec63514..0000000
--- a/debian/compat
+++ /dev/null
@@ -1 +0,0 @@
-9
diff --git a/debian/control b/debian/control
index 583eefe..bdfb310 100644
--- a/debian/control
+++ b/debian/control
@@ -1,12 +1,12 @@
Source: dist
-VCS-Git: https://anonscm.debian.org/git/users/srivasta/debian/dist.git
-VCS-Browser: http://anonscm.debian.org/git/users/srivasta/debian/dist.git
+VCS-Git: https://salsa.debian.org/srivasta/dist.git
+VCS-Browser: https://salsa.debian.org/srivasta/dist
Section: devel
Priority: optional
Maintainer: Manoj Srivastava <srivasta@debian.org>
-Standards-Version: 4.1.3
-Build-Depends-Indep: debhelper (>= 11), sharutils, po-debconf,
- gettext
+Standards-Version: 4.3.0
+Build-Depends: debhelper-compat (=12)
+Build-Depends-Indep: sharutils, po-debconf, gettext
Package: dist
Architecture: all
diff --git a/jmake/jmkmf.man b/jmake/jmkmf.man
index 91ee15f..767f257 100644
--- a/jmake/jmkmf.man
+++ b/jmake/jmkmf.man
@@ -1,7 +1,7 @@
.\" $Id$
.\"
.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi
-.\"
+.\"
.\" You may redistribute only under the terms of the Artistic Licence,
.\" as specified in the README file that comes with the distribution.
.\" You may reuse parts of this distribution only within the terms of
diff --git a/kit/kitpost.man b/kit/kitpost.man
index 3455336..04e74f9 100644
--- a/kit/kitpost.man
+++ b/kit/kitpost.man
@@ -1,7 +1,7 @@
.\" $Id$
.\"
.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi
-.\"
+.\"
.\" You may redistribute only under the terms of the Artistic Licence,
.\" as specified in the README file that comes with the distribution.
.\" You may reuse parts of this distribution only within the terms of
@@ -31,7 +31,7 @@ kitpost \- posts distribution kits
] [
.B -m
.I dest1,dest2
-] [
+] [
.I kits
] [
.I newsgroups
diff --git a/kit/kitsend.man b/kit/kitsend.man
index f8ec79e..0e7f518 100644
--- a/kit/kitsend.man
+++ b/kit/kitsend.man
@@ -1,7 +1,7 @@
.\" $Id$
.\"
.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi
-.\"
+.\"
.\" You may redistribute only under the terms of the Artistic Licence,
.\" as specified in the README file that comes with the distribution.
.\" You may reuse parts of this distribution only within the terms of
diff --git a/kit/makeSH.man b/kit/makeSH.man
index 6693794..5e11ac3 100644
--- a/kit/makeSH.man
+++ b/kit/makeSH.man
@@ -1,7 +1,7 @@
.\" $Id$
.\"
.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi
-.\"
+.\"
.\" You may redistribute only under the terms of the Artistic Licence,
.\" as specified in the README file that comes with the distribution.
.\" You may reuse parts of this distribution only within the terms of
@@ -12,7 +12,7 @@
.\" Revision 3.0 1993/08/18 12:04:27 ram
.\" Baseline for dist 3.0 netwide release.
.\"
-.\"
+.\"
.TH MAKESH 1 LOCAL
.SH NAME
makeSH \- a .SH script maker
diff --git a/kit/makedist.man b/kit/makedist.man
index e950726..d1584eb 100644
--- a/kit/makedist.man
+++ b/kit/makedist.man
@@ -2,7 +2,7 @@
.\" $Id$
.\"
.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi
-.\"
+.\"
.\" You may redistribute only under the terms of the Artistic Licence,
.\" as specified in the README file that comes with the distribution.
.\" You may reuse parts of this distribution only within the terms of
@@ -19,7 +19,7 @@
.\" Revision 3.0 1993/08/18 12:04:31 ram
.\" Baseline for dist 3.0 netwide release.
.\"
-.\"
+.\"
.de Sh
.br
.ne 5
diff --git a/kit/manifake.man b/kit/manifake.man
index 0b79d2e..76b9dff 100644
--- a/kit/manifake.man
+++ b/kit/manifake.man
@@ -1,7 +1,7 @@
.\" $Id$
.\"
.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi
-.\"
+.\"
.\" You may redistribute only under the terms of the Artistic Licence,
.\" as specified in the README file that comes with the distribution.
.\" You may reuse parts of this distribution only within the terms of
diff --git a/mcon/U/Assert.U b/mcon/U/Assert.U
index 76de54d..1a38e49 100644
--- a/mcon/U/Assert.U
+++ b/mcon/U/Assert.U
@@ -20,7 +20,6 @@
?X: There is no need to link the file to spot the assertion failure.
?X:
$cat >static_assert.h <<'EOC'
-#define STATIC_ASSERT(expr) \
- do { switch (0) { case ((expr) ? 1 : 0): case 0: break; } } while(0)
+#define STATIC_ASSERT(expr) ((void) sizeof(char[1 - 2*!(expr)]))
EOC
diff --git a/mcon/U/Checkcc.U b/mcon/U/Checkcc.U
index 3cae05c..ce0dc62 100644
--- a/mcon/U/Checkcc.U
+++ b/mcon/U/Checkcc.U
@@ -37,10 +37,10 @@
?INIT:ccname=''
?INIT:ccversion=''
: generate the trygcc script for later perusal
-cat <<EOS >trygcc
+$cat <<EOS >trygcc
$startsh
EOS
-cat <<'EOSC' >>trygcc
+$cat <<'EOSC' >>trygcc
case "$cc" in
'') ;;
*) $rm -f try try.*
@@ -100,10 +100,10 @@ esac
EOSC
: generate the checkcc script for later perusal
-cat <<EOS >checkcc
+$cat <<EOS >checkcc
$startsh
EOS
-cat <<'EOSC' >>checkcc
+$cat <<'EOSC' >>checkcc
case "$cc" in
'') ;;
*) $rm -f try try.*
diff --git a/mcon/U/Config_sh.U b/mcon/U/Config_sh.U
index bb47b7b..1b3b0c6 100644
--- a/mcon/U/Config_sh.U
+++ b/mcon/U/Config_sh.U
@@ -32,7 +32,7 @@
?MAKE: -pick add.Config_sh $@ %<
?MAKE: -pick add $@ ./Obsol_sh
?MAKE: -pick close.Config_sh $@ %<
-?F:!config.over !config.arch
+?F:!config.over !config.arch config.sh
?T:file sfile xsed
?LINT:unclosed EOT
: back to where it started
diff --git a/mcon/U/Finish.U b/mcon/U/Finish.U
index cf5a364..13c970d 100644
--- a/mcon/U/Finish.U
+++ b/mcon/U/Finish.U
@@ -35,7 +35,7 @@
?X: SH files, which among other things produce config.h and (usually) Makefile.
?X: It offers to do a make depend if the Makefile contains that target.
?X:
-?MAKE:Finish: Chk_MANI Extract Myread Oldsym Magic_h cat rm contains \
+?MAKE:Finish: Chk_MANI Extract Specific Myread Oldsym Magic_h cat rm contains \
test package make
?MAKE: -pick add $@ %<
?F:!config.sh
@@ -138,4 +138,3 @@ $rm -f kit*isdone ark*isdone
$rm -rf UU
: End of Configure
-
diff --git a/mcon/U/Getfile.U b/mcon/U/Getfile.U
index f5cf49b..641ea30 100644
--- a/mcon/U/Getfile.U
+++ b/mcon/U/Getfile.U
@@ -48,7 +48,7 @@
?X: those are prefixes for the filename. Unless $gfpthkeep is set to 'y',
?X: gfpth is cleared on return from Getfile.
?X:
-?X: If is is followed by a ~, then ~name substitution will occur. Upon return,
+?X: If it is followed by a ~, then ~name substitution will occur. Upon return,
?X: $ans is set with the filename value. If a / is specified, then only a full
?X: path name is accepted (but ~ substitution occurs before, if needed). The
?X: expanded path name is returned in that case.
diff --git a/mcon/U/Head.U b/mcon/U/Head.U
index 933e489..0b8a98e 100644
--- a/mcon/U/Head.U
+++ b/mcon/U/Head.U
@@ -77,8 +77,8 @@
?X:
# Note: this Configure script was generated automatically. Rather than
# working with this copy of Configure, you may wish to get metaconfig.
-# The dist package (which contains metaconfig) is available via SVN:
-# svn co https://svn.code.sf.net/p/dist/code/trunk/dist
+# The dist package (which contains metaconfig) is available via git:
+# git clone git@github.com:rmanfredi/dist.git
?X:
?X: NOTA BENE:
?X: If you develop you own version of metaconfig based on this work,
diff --git a/mcon/U/Obsol_h.U b/mcon/U/Obsol_h.U
index fc59938..c19c5a4 100644
--- a/mcon/U/Obsol_h.U
+++ b/mcon/U/Obsol_h.U
@@ -20,7 +20,7 @@
?MAKE: -pick prepend $@ ./Obsol_h
?LINT:nocomment
/*
- * The following symbols are obsolete. They are mapped to the the new
+ * The following symbols are obsolete. They are mapped to the new
* symbols only to ease the transition process. The sources should be
* updated so as to use the new symbols only, as the support for these
* obsolete symbols may end without notice.
diff --git a/mcon/U/Obsol_sh.U b/mcon/U/Obsol_sh.U
index de1a1e1..3b3f0d6 100644
--- a/mcon/U/Obsol_sh.U
+++ b/mcon/U/Obsol_sh.U
@@ -20,7 +20,7 @@
?MAKE: -pick prepend $@ ./Obsol_sh
?LINT:nocomment
#
-# The following symbols are obsolete. They are mapped to the the new
+# The following symbols are obsolete. They are mapped to the new
# symbols only to ease the transition process. The sources should be
# updated so as to use the new symbols only, since supporting of those
# obsolete symbols may end without notice.
diff --git a/mcon/U/Specific.U b/mcon/U/Specific.U
new file mode 100644
index 0000000..feb189b
--- /dev/null
+++ b/mcon/U/Specific.U
@@ -0,0 +1,26 @@
+?RCS:
+?RCS: Copyright (c) 2018, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic License,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic License; a copy of which may be found at the root
+?RCS: of the source tree for dist 4.0.
+?RCS:
+?X:
+?X: This unit is intended to be a project-specific hook.
+?X: By default, it is therefore empty, meant to be copied to your private
+?X: unit directory (U) and seasoned to taste.
+?X:
+?X: If you need specific code generation to happen once the configuration
+?X: is finished and config.sh was generated, but before the extraction of
+?X: the .SH files begins, then this is the place to put these special
+?X: code that the .SH files will require to run properly.
+?X:
+?X: When this unit triggers, Configure is back to the top directory.
+?X:
+?MAKE:Specific: Config_sh
+?MAKE: -pick add $@ %<
+?X:
+?X: Keep the above ?MAKE: lines and then append your specific code here.
+?X:
diff --git a/mcon/U/Trylink.U b/mcon/U/Trylink.U
index e38e0b2..9b2a380 100644
--- a/mcon/U/Trylink.U
+++ b/mcon/U/Trylink.U
@@ -74,7 +74,7 @@ case "$cyn" in
"") echo "--- $var ---" >> "$file";;
*)
echo " "; $echo $n "Checking $msg...$c" >&4;
- echo "--- $var --- ($msg)" >>"$file"
+ echo "--- $var --- ($msg)" >> "$file"
;;
esac;
$cat try.c >> "$file";
diff --git a/mcon/U/ccflags.U b/mcon/U/ccflags.U
index 942e462..b134f57 100644
--- a/mcon/U/ccflags.U
+++ b/mcon/U/ccflags.U
@@ -174,11 +174,11 @@ dflt=''
case "$hint" in
default|recommended)
case "$gccversion" in
- 1*) dflt='-fpcc-struct-return' ;;
+ 1) dflt='-fpcc-struct-return' ;;
esac
?X: check for POSIXized ISC
case "$gccversion" in
- 2*) if test -d /etc/conf/kconfig.d &&
+ 2) if test -d /etc/conf/kconfig.d &&
$contains _POSIX_VERSION $usrinc/sys/unistd.h >/dev/null 2>&1
then
dflt="$dflt -posix"
@@ -187,7 +187,7 @@ default|recommended)
esac
?X: turn warnings on if they're using gcc
case "$gccversion" in
- 1*|2*) dflt="$dflt -Wall";;
+ 1|2) dflt="$dflt -Wall";;
?X: starting with version 3, add "-W -Wall -Wformat=2 -Wshadow" by default
*) dflt="$dflt -W -Wall -Wformat=2 -Wshadow";;
esac
@@ -265,7 +265,7 @@ esac
: the following weeds options from ccflags that are of no interest to cpp
cppflags="$ccflags"
case "$gccversion" in
-1*) cppflags="$cppflags -D__GNUC__"
+1) cppflags="$cppflags -D__GNUC__"
esac
case "$mips_type" in
'');;
diff --git a/mcon/U/d_bfd_section.U b/mcon/U/d_bfd_section.U
new file mode 100644
index 0000000..d876541
--- /dev/null
+++ b/mcon/U/d_bfd_section.U
@@ -0,0 +1,49 @@
+?RCS: $Id$
+?RCS:
+?RCS: Copyright (c) 2020, Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic License,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic License; a copy of which may be found at the root
+?RCS: of the source tree for dist 4.0.
+?RCS:
+?MAKE:d_bfd_section: Trylink cat d_bfd_lib
+?MAKE: -pick add $@ %<
+?S:d_bfd_section:
+?S: This variable conditionally defines the HAS_BFD_SECTION_1ARG symbol,
+?S: which indicates to the C program that the bfd_section_xxx() accessors
+?S: from the BFD library exists and taks only one argument.
+?S:.
+?C:HAS_BFD_SECTION_1ARG:
+?C: This symbol, if defined, indicates that the bfd_section_xxx() accessors
+?C: from the BFD library takes only one argument, which is the new behaviour
+?C: starting from BFD 2.34.
+?C:.
+?H:#$d_bfd_section HAS_BFD_SECTION_1ARG /**/
+?H:.
+: see whether bfd_section_vma exists and takes 1 argument
+case "$d_bfd_lib" in
+$undef)
+ d_bfd_section=$undef
+ ;;
+*)
+ $cat >try.c <<EOC
+?X: See d_bfd_lib.U to understand why we have to define these symbols.
+#define PACKAGE
+#define PACKAGE_VERSION
+#include <bfd.h>
+int main(void)
+{
+ bfd *b = 0;
+ asection *sec = 0;
+
+ return 0 == bfd_section_vma(sec);
+}
+EOC
+ cyn="whether bfd_section_vma() takes 1 argument"
+ set d_bfd_section
+ eval $trylink
+ ;;
+esac
+
diff --git a/mcon/U/d_memrchr.U b/mcon/U/d_memrchr.U
new file mode 100644
index 0000000..c7b1c01
--- /dev/null
+++ b/mcon/U/d_memrchr.U
@@ -0,0 +1,40 @@
+?RCS:
+?RCS: Copyright (c) 2018 Raphael Manfredi
+?RCS:
+?RCS: You may redistribute only under the terms of the Artistic License,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic License; a copy of which may be found at the root
+?RCS: of the source tree for dist 4.0.
+?RCS:
+?MAKE:d_memrchr: Trylink cat
+?MAKE: -pick add $@ %<
+?S:d_memrchr:
+?S: This variable conditionally defines the HAS_MEMRCHR symbol, which
+?S: indicates to the C program that the memrchr() routine is available
+?S: to scan a block of memory backwards for a character.
+?S:.
+?C:HAS_MEMRCHR:
+?C: This symbol, if defined, indicates that the memrchr routine is available
+?C: to scan a block of memory backwards for a character.
+?C: If undefined, roll your own.
+?C:.
+?H:#$d_memrchr HAS_MEMRCHR /**/
+?H:.
+?LINT:set d_memrchr
+: see if memrchr exists
+$cat >try.c <<EOC
+#include <string.h>
+int main(void)
+{
+ static char s[] = "xxx";
+ static size_t n = sizeof(s);
+ void *p;
+ p = memrchr(s, 'x', n);
+ return p ? 0 : 1;
+}
+EOC
+cyn=memrchr
+set d_memrchr
+eval $trylink
+
diff --git a/mcon/U/d_tminsys.U b/mcon/U/d_tminsys.U
index 60fc95a..548a014 100644
--- a/mcon/U/d_tminsys.U
+++ b/mcon/U/d_tminsys.U
@@ -20,7 +20,7 @@
?S:.
?C:TM_IN_SYS (TMINSYS):
?C: This symbol is defined if this system declares "struct tm" in
-?C: in <sys/time.h> rather than <time.h>. We can't just say
+?C: <sys/time.h> rather than <time.h>. We can't just say
?C: -I/usr/include/sys because some systems have both time files, and
?C: the -I trick gets the wrong one.
?C:.
diff --git a/mcon/U/gccvers.U b/mcon/U/gccvers.U
index 702a5e9..b5abb47 100644
--- a/mcon/U/gccvers.U
+++ b/mcon/U/gccvers.U
@@ -17,6 +17,9 @@
?S: If GNU cc (gcc) is used, this variable holds '1' or '3' (for instance)
?S: to indicate whether the compiler is version 1 or 3. This is used in
?S: setting some of the default cflags. It is set to '' if not gcc.
+?S: Note that it only contains the major version number, and, when using
+?S: case statements to do different things depending on the major, do not
+?S: use statements like "1*)" because it will match version 1, 10, 11, etc.
?S:.
?S:gccosandvers:
?S: If GNU cc (gcc) is used, this variable the operating system and
@@ -58,7 +61,7 @@ else
fi
$rm -f try try.*
case "$gccversion" in
-1*) cpp=`./loc gcc-cpp $cpp $pth` ;;
+1) cpp=`./loc gcc-cpp $cpp $pth` ;;
esac
case "$gccversion" in
'') gccosandvers='' ;;
@@ -99,7 +102,7 @@ esac
: gcc 3.1 complains about adding -Idirectories that it already knows about,
: so we will take those off from locincpth.
case "$gccversion" in
-3*)
+3)
echo "main(){}">try.c
for incdir in `$cc -v -c try.c 2>&1 | \
sed '1,/^#include <\.\.\.>/d;/^End of search list/,$d;s/^ //'` ; do
diff --git a/mcon/U/nis.U b/mcon/U/nis.U
index 7332545..06e4c47 100644
--- a/mcon/U/nis.U
+++ b/mcon/U/nis.U
@@ -165,16 +165,4 @@ case "$passcat" in
'') passcat=':'
$test -f /etc/passwd && passcat='cat /etc/passwd';;
esac
-case "$hostcat" in
-'') hostcat='cat /etc/hosts';;
-*) ;;
-esac
-case "$groupcat" in
-'') groupcat='cat /etc/group';;
-*) ;;
-esac
-case "$passcat" in
-'') passcat='cat /etc/passwd';;
-*) ;;
-esac
diff --git a/mcon/U/voidflags.U b/mcon/U/voidflags.U
index 0e0f49c..5db1db9 100644
--- a/mcon/U/voidflags.U
+++ b/mcon/U/voidflags.U
@@ -111,6 +111,8 @@ sub() {
hue = buf;
if (doit())
iptr = hue;
+?X: Avoid "variable set but not used" compilation warning
+ (void) iptr;
#endif
doit();
}
diff --git a/mcon/man/mconfig.SH b/mcon/man/mconfig.SH
index 2f4e33b..112c6f1 100755
--- a/mcon/man/mconfig.SH
+++ b/mcon/man/mconfig.SH
@@ -32,7 +32,7 @@ $spitshell >metaconfig.$manext <<!GROK!THIS!
.\"
.\" $Log: mconfig.SH,v $
.\" Revision 3.0.1.17 1997/02/28 16:29:31 ram
-.\" patch61: documents the running environment and the src.U unit
+.\" patch61: documents the runnning environment and the src.U unit
.\" patch61: added warnings for $_a and $_o, as well as "startsh"
.\"
.\" Revision 3.0.1.16 1995/09/25 09:17:48 ram
@@ -1742,6 +1742,25 @@ before prompting via \fIgetfile\fR for instance. If the prefix does not
make use of ~name expanstion, then the above will be a no-op on the \fI$dflt\fR
variable, naturally.
.TP
+Specific.U
+This unit is empty by default. It is meant as a project-specific hook
+to have shell code executed by \fIConfigure\fR after \fIconfig.sh\fR was
+generated but before the extraction of .SH files.
+.sp
+Copy the unit to your project's \fIU/\fR directory and customize it.
+.sp
+Here is what the \fIdist\fR project uses it for (showing only the unit's code,
+not the full unit here):
+.Ex
+: project-specific code
+file=revision.h
+echo " "
+echo "Generating \$file..." >&4
+bin/svn-revision . \$file
+.Ef
+That shell code is executed when \fIConfigure\fR is back to the top directory
+of the source tree.
+.TP
Typedef.U
This unit produces the \fI\$typedef\fR shell variable, used internally by
\fIConfigure\fR to check whether a typedef exists or not. A typical
diff --git a/mcon/man/mlint.SH b/mcon/man/mlint.SH
index 7d5e16e..bdf80c8 100755
--- a/mcon/man/mlint.SH
+++ b/mcon/man/mlint.SH
@@ -23,7 +23,7 @@ $spitshell >metalint.$manext <<!GROK!THIS!
.\" $Id$
.\"
.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi
-.\"
+.\"
.\" You may redistribute only under the terms of the Artistic Licence,
.\" as specified in the README file that comes with the distribution.
.\" You may reuse parts of this distribution only within the terms of
@@ -260,11 +260,20 @@ The file is listed more than once on the ?F: line, under the same name.
This does not appear when declaring both a private UU file and a public
file with the same name, for instance.
.TP
-"(?F) UU file $uufile in non-special unit ignored."
+"(?F) UU file 'xxx' in non-special unit ignored."
Private UU files (i.e. files like the \fImyread\fR script created for
later perusal by \fIConfigure\fR) may only be created in special units.
Exceptions allowed if the ?F: line is preceded by a proper ?LINT: hint.
.TP
+"(?F) file 'xxx' already exported by yyy.U."
+The listed file 'xxx' is already reported exported (listed likewise) in
+the other unit yyy.U and is conflicting. An exported file is a generated
+file above the UU directory.
+.TP
+"(?F) UU file 'xxx' already created by yyy.U."
+The listed file 'xxx' is already created in the UU directory by the other
+unit yyy.U. A created file is listed as ./xxx on the ?F: line.
+.TP
"(?T) temporary symbol '\$xxx' multiply declared."
Self explanatory.
.TP
diff --git a/mcon/man/mxref.SH b/mcon/man/mxref.SH
index 757f23e..229341e 100755
--- a/mcon/man/mxref.SH
+++ b/mcon/man/mxref.SH
@@ -23,7 +23,7 @@ $spitshell >metaxref.$manext <<!GROK!THIS!
.\" $Id$
.\"
.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi
-.\"
+.\"
.\" You may redistribute only under the terms of the Artistic Licence,
.\" as specified in the README file that comes with the distribution.
.\" You may reuse parts of this distribution only within the terms of
diff --git a/mcon/mconfig.SH b/mcon/mconfig.SH
index 4917e43..ee17057 100755
--- a/mcon/mconfig.SH
+++ b/mcon/mconfig.SH
@@ -93,6 +93,8 @@ unlink 'Wanted' unless $opt_w; # Wanted rebuilt if no -w
unlink 'Obsolete' unless $opt_w; # Obsolete file rebuilt if no -w
&readpackage; # Merely get the package's name
&init; # Various initializations
+my %excluded_symbol;
+read_exclusions($opt_X); # Load -X or .package equivalent
`mkdir .MT 2>&1` unless -d '.MT'; # For private temporary files
&locate_units; # Fill in @ARGV with a unit list
diff --git a/mcon/mxref.SH b/mcon/mxref.SH
index 3433edc..439aef8 100755
--- a/mcon/mxref.SH
+++ b/mcon/mxref.SH
@@ -81,7 +81,10 @@ if ($opt_V) {
$NEWMANI = $opt_f || (-f 'MANIFEST.new' ? 'MANIFEST.new' : 'MANIFEST');
+&readpackage; # Merely get the package's name
&init; # Various initializations
+my %excluded_symbol;
+read_exclusions($opt_X); # Load -X or .package equivalent
`mkdir .MT 2>&1` unless -d '.MT'; # For private temporary files
unlink 'Obsolete'; # Obsolete file rebuilt
diff --git a/mcon/pl/lint.pl b/mcon/pl/lint.pl
index 0120c51..e73f0fd 100644
--- a/mcon/pl/lint.pl
+++ b/mcon/pl/lint.pl
@@ -78,6 +78,7 @@ sub init_extraction {
%filetmp = (); # Local temporary files in ?F: directives
%filesetin = (); # Lists units defining a temporary file
%filecreated = (); # Records files created in this unit
+ %filedefined = (); # Records units that export a given file
%prodfile = (); # Unit where a given file is said to be created
%defseen = (); # Symbol defintions claimed
%lintset = (); # Symbols declared set by a ?LINT: line
@@ -622,15 +623,30 @@ sub p_file {
}
$prodfile{$file} .= "$unit " if $fileseen{$file} == 1;
($uufile = $file) =~ s|^\./(\S+)$|$1|;
- next if $file eq $uufile; # Don't care about non-UU files
+ if ($file eq $uufile) {
+ # This is a non-UU files created and not a temporary file
+ # It is meant to be exported by Configure
+ if (exists $filedefined{$file}) {
+ my $other = $filedefined{$file};
+ warn "$where: file '$file' already exported by $other.U.\n";
+ } else {
+ $filedefined{$file} = $unit;
+ }
+ next;
+ }
unless ($is_special || $lintcreated{$uufile}) {
warn "$where: UU file '$uufile' in non-special unit ignored.\n";
delete $lintcreated{$uufile}; # Detect spurious LINT
next;
}
delete $lintcreated{$uufile} if !$is_special; # Detect spurious LINT
- $filemaster{$uufile} = $unit unless defined $filemaster{$uufile};
- $filecreated{$uufile} = 'a'; # Will be automagically incremented
+ if (exists $filemaster{$uufile}) {
+ my $other = $filemaster{$uufile};
+ warn "$where: UU file '$uufile' already created by $other.U.\n";
+ } else {
+ $filemaster{$uufile} = $unit;
+ $filecreated{$uufile} = 'a'; # Will be automagically incremented
+ }
}
}
@@ -1308,6 +1324,7 @@ sub sanity_checks {
undef %shspecial;
undef %shvisible;
undef %filemaster;
+ undef %filedefined;
# Spot multiply defined C symbols
foreach $sym (keys %cmaster) {
diff --git a/pat/patcil.SH b/pat/patcil.SH
index a4fae23..642bac2 100755
--- a/pat/patcil.SH
+++ b/pat/patcil.SH
@@ -61,8 +61,6 @@ $startperl
!GROK!THIS!
cat >>patcil <<'!NO!SUBS!'
-use File::Temp qw/ tempfile tempdir /;
-
$progname = &profile; # Read ~/.dist_profile
require 'getopts.pl';
&usage unless $#ARGV >= 0;
@@ -506,12 +504,12 @@ x Toggle patch# prefix.
sub edit {
local($text) = join("\n", @_);
- my $tmp = File::Temp->new();
- print $tmp $text;
- close $tmp;
- system $EDITOR, "$tmp";
- $text = `cat "$tmp"`;
- unlink "$tmp";
+ open(TMP,">/tmp/cil$$") || die "Can't create /tmp/cil$$";
+ print TMP $text;
+ close TMP;
+ system $EDITOR, "/tmp/cil$$";
+ $text = `cat /tmp/cil$$`;
+ unlink "/tmp/cil$$";
$text;
}
diff --git a/pat/patdiff.SH b/pat/patdiff.SH
index ed4e97b..0c74c9a 100755
--- a/pat/patdiff.SH
+++ b/pat/patdiff.SH
@@ -49,8 +49,6 @@ $startperl
!GROK!THIS!
cat >>patdiff <<'!NO!SUBS!'
-use File::Temp qw/ tempfile tempdir /;
-
$RCSEXT = ',v' unless $RCSEXT;
$TOPDIR = ''; # We are at top-level directory
@@ -161,11 +159,9 @@ foreach $file (@ARGV) {
close DIFF;
system 'rcs', "-Nlastpat:$new", @files;
} else {
- my $tmpo = File::Temp->new();
- my $tmpn = File::Temp->new();
- &copyright'expand("co -p -rlastpat $file", "$tmpo");
- &copyright'expand("co -p -r$new $file", "$tmpn");
- open(DIFF, "$mydiff $tmpo $tmpn |") ||
+ &copyright'expand("co -p -rlastpat $file", "/tmp/pdo$$");
+ &copyright'expand("co -p -r$new $file", "/tmp/pdn$$");
+ open(DIFF, "$mydiff /tmp/pdo$$ /tmp/pdn$$ |") ||
die "Can't run $mydiff";
while (<DIFF>) { # Contextual or unified diff
if ($. == 1) {
@@ -181,7 +177,7 @@ foreach $file (@ARGV) {
}
close DIFF;
system 'rcs', "-Nlastpat:$new", @files;
- unlink "$tmpo", "$tmpn";
+ unlink "/tmp/pdn$$", "/tmp/pdo$$";
}
} else {
if ($mydiff eq '') {
@@ -195,11 +191,9 @@ foreach $file (@ARGV) {
}
close DIFF;
} else {
- my $tmpo = File::Temp->new();
- my $tmpn = File::Temp->new();
- system "co -p -rlastpat $files >$tmpo";
- system "cp $file $tmpn";
- open(DIFF, "$mydiff $tmpo $tmpn |") ||
+ system "co -p -rlastpat $files >/tmp/pdo$$";
+ system "cp $file /tmp/pdn$$";
+ open(DIFF, "$mydiff /tmp/pdo$$ /tmp/pdn$$ |") ||
die "$progname: can't fork $mydiff: $!\n";
while (<DIFF>) {
# Contextual or unified diff
@@ -215,7 +209,7 @@ foreach $file (@ARGV) {
print PATCH;
}
close DIFF;
- unlink "$tmpo", "$tmpn";
+ unlink "/tmp/pdn$$", "/tmp/pdo$$";
}
}
}
diff --git a/pat/patlog.SH b/pat/patlog.SH
index 1588af4..ff7a81f 100755
--- a/pat/patlog.SH
+++ b/pat/patlog.SH
@@ -252,7 +252,7 @@ system 'perl', '-S', 'patdiff', $changelog;
exit 0; # All done.
-# Returns true if .clog and .rlog (it it exists) are newer than .xlog.
+# Returns true if .clog and .rlog (if it exists) are newer than .xlog.
sub newertmp {
return 1 unless -f ".xlog$bnum"; # To force regeneration
return 1 if &newer(".clog$bnum", ".xlog$bnum") ||