* PATCH: function install
@ 2000-11-30 18:28 Peter Stephenson
2000-12-02 23:37 ` Bart Schaefer
2000-12-05 15:18 ` Module config Andrej Borsenkow
0 siblings, 2 replies; 8+ messages in thread
From: Peter Stephenson @ 2000-11-30 18:28 UTC (permalink / raw)
To: Zsh hackers list
It seems like the config.modules patch was uncontroversial. This is the
part that sets the functions to install in the same file. Thus if you
explicitly enable zftp for static loading, the functions will automatically
be installed. You can edit the list of functions; all are there by
default. This replaces the mechanism using the configure command line.
I haven't tested this with FUNCTIONS_SUBDIRS enabled, because it's too
painful to reconfigure.
This is the last change I think is really necessary before zsh 4.0
(translation: the last major change I had any chance of getting round to
any time soon).
Index: Makefile.in
===================================================================
RCS file: /cvsroot/zsh/zsh/Makefile.in,v
retrieving revision 1.4
diff -u -r1.4 Makefile.in
--- Makefile.in 2000/05/15 12:13:29 1.4
+++ Makefile.in 2000/11/30 15:39:49
@@ -77,14 +77,25 @@
# install/uninstall just the shell functions
install.fns:
- test x$(sitefndir) != xno && $(sdir_top)/mkinstalldirs $(DESTDIR)$(sitefndir)
- @cd Completion && $(MAKE) $(MAKEDEFS) $@
- @cd Functions && $(MAKE) $(MAKEDEFS) $@
+ if test x$(fndir) != x && test x$(fndir) != xno; then \
+ test x$(sitefndir) != xno && \
+ $(sdir_top)/mkinstalldirs $(DESTDIR)$(sitefndir); \
+ sdir_top="$(sdir_top)" fndir="$(fndir)" dir_top="$(dir_top)" \
+ FUNCTIONS_SUBDIRS="$(FUNCTIONS_SUBDIRS)" \
+ INSTALL_DATA="$(INSTALL_DATA)" \
+ DESTDIR="$(DESTDIR)" VERSION="$(VERSION)" \
+ $(SHELL) $(sdir_top)/Config/installfns.sh || exit 1; \
+ fi; \
+ exit 0
uninstall.fns:
- # never attempt to remove $(sitefndir)
- @cd Completion && $(MAKE) $(MAKEDEFS) $@
- @cd Functions && $(MAKE) $(MAKEDEFS) $@
+ if test x$(fndir) != x && test x$(fndir) != xno; then \
+ fndir="$(fndir)" dir_top="$(dir_top)" \
+ FUNCTIONS_SUBDIRS="$(FUNCTIONS_SUBDIRS)" \
+ DESTDIR="$(DESTDIR)" VERSION="$(VERSION)" \
+ $(SHELL) $(sdir_top)/Config/uninstallfns.sh || exit 1; \
+ fi; \
+ exit 0
# install/uninstall just the info pages
install.info uninstall.info:
Index: configure.in
===================================================================
RCS file: /cvsroot/zsh/zsh/configure.in,v
retrieving revision 1.34
diff -u -r1.34 configure.in
--- configure.in 2000/11/27 11:26:14 1.34
+++ configure.in 2000/11/30 15:39:50
@@ -1733,15 +1733,19 @@
echo "# \`yes'. If you set it by hand to \`no', the line will be retained"
echo "# when the file is regenerated in future."
echo "#"
+echo "# Note that the \`functions' entry extends to the end of the line."
+echo "# It should not be quoted; it is used verbatim to find files to install."
+echo "#"
echo "# You will need to run \`config.status --recheck' if you add a new"
echo "# module."
echo "#"
echo "# You should not change the values for the pseudo-module zsh/main,"
-echo "# which is the main shell."
+echo "# which is the main shell (apart from the functions entry)."
for modfile in `cd ${srcdir}; echo */*.mdd */*/*.mdd`; do
name=
link=
load=
+ functions=
. ${srcdir}/$modfile
if test x$name != x -a x"$link" != x; then
case "$userlist" in
@@ -1758,26 +1762,32 @@
*) load=" load=no"
;;
esac
+ if test "x$functions" != x; then
+ # N.B. no additional quotes
+ f=" functions=$functions"
+ else
+ f=
+ fi
case "$link" in
- static) echo "name=$name modfile=$modfile link=static auto=yes${load}"
+ static) echo "name=$name modfile=$modfile link=static auto=yes${load}$f"
;;
dynamic) if test $dynamic != no; then
echo "name=$name modfile=$modfile link=dynamic\
- auto=yes${load}"
+ auto=yes${load}$f"
else
echo "name=$name modfile=$modfile link=no\
- auto=yes load=no"
+ auto=yes load=no$f"
fi
;;
either) if test $dynamic != no; then
echo "name=$name modfile=$modfile link=dynamic\
- auto=yes${load}"
+ auto=yes${load}$f"
else
echo "name=$name modfile=$modfile link=static\
- auto=yes${load}"
+ auto=yes${load}$f"
fi
;;
- *) echo "name=$name modfile=$modfile link=no auto=yes load=no"
+ *) echo "name=$name modfile=$modfile link=no auto=yes load=no$f"
;;
esac
;;
@@ -1803,7 +1813,7 @@
no_create=yes
AC_OUTPUT(Config/defs.mk Makefile Doc/Makefile Etc/Makefile Src/Makefile \
-Test/Makefile Completion/Makefile Functions/Makefile, \
+Test/Makefile, \
[test -z "$CONFIG_HEADERS" || echo > stamp-h])
dnl The standard config.status is missing some essential features.
Index: Config/funcinst.mk
===================================================================
RCS file: /cvsroot/zsh/zsh/Config/funcinst.mk,v
retrieving revision 1.1.1.5
diff -u -r1.1.1.5 funcinst.mk
--- Config/funcinst.mk 2000/01/14 19:14:47 1.1.1.5
+++ Config/funcinst.mk 2000/11/30 15:39:50
@@ -29,8 +29,7 @@
install.fns:
if test x$(fndir) != x && test x$(fndir) != xno; then \
- sdir_top="$(sdir_top)" fndir="$(fndir)" sdir="$(sdir)" \
- FUNCTIONS_INSTALL="$(FUNCTIONS_INSTALL)" \
+ sdir_top="$(sdir_top)" fndir="$(fndir)" dir_top="$(dir_top)" \
FUNCTIONS_SUBDIRS="$(FUNCTIONS_SUBDIRS)" \
INSTALL_DATA="$(INSTALL_DATA)" \
DESTDIR="$(DESTDIR)" VERSION="$(VERSION)" \
@@ -40,8 +39,7 @@
uninstall.fns:
if test x$(fndir) != x && test x$(fndir) != xno; then \
- fndir="$(fndir)" sdir="$(sdir)" \
- FUNCTIONS_INSTALL="$(FUNCTIONS_INSTALL)" \
+ fndir="$(fndir)" dir_top="$(dir_top)" \
FUNCTIONS_SUBDIRS="$(FUNCTIONS_SUBDIRS)" \
DESTDIR="$(DESTDIR)" VERSION="$(VERSION)" \
$(SHELL) $(sdir_top)/Config/uninstallfns.sh || exit 1; \
Index: Config/installfns.sh
===================================================================
RCS file: /cvsroot/zsh/zsh/Config/installfns.sh,v
retrieving revision 1.1.1.9
diff -u -r1.1.1.9 installfns.sh
--- Config/installfns.sh 2000/01/14 19:14:47 1.1.1.9
+++ Config/installfns.sh 2000/11/30 15:39:50
@@ -4,30 +4,23 @@
$sdir_top/mkinstalldirs $fndir || exit 1;
-# If the source directory is somewhere else, we need to force
-# the shell to expand it in that directory, then strip it off.
-install=
-for file in $FUNCTIONS_INSTALL; do
- if test -f "$sdir/$file"; then
- install="$install $file"
- else
- install="$install `echo '' $sdir/$file | sed -e \"s% $sdir/% %g\"`"
- fi
-done
+allfuncs="`grep ' functions=' ${dir_top}/config.modules |
+ sed -e '/^#/d' -e '/ link=no/d' -e 's/^.* functions=//'`"
-for file in $install; do
- if test -f $sdir/$file; then
+allfuncs="`cd $sdir_top; echo ${allfuncs}`"
+
+# We now have a list of files, but we need to use `test -f' to check
+# (1) the glob got expanded (2) we are not looking at directories.
+for file in $allfuncs; do
+ if test -f $sdir_top/$file; then
if test x$FUNCTIONS_SUBDIRS != x -a x$FUNCTIONS_SUBDIRS != xno; then
- subfile="$file"
- subdir="`echo $file | sed -e 's%/[^/]*$%%'`"
+ subdir="`echo $file | sed -e 's%/[^/]*$%%' \
+ -e s%^Functions/%% -e s%^Completion/%%`"
instdir="$fndir/$subdir"
else
- subfile="`echo $file | sed -e 's%^.*/%%'`"
instdir="$fndir"
fi
- $sdir_top/mkinstalldirs $instdir || exit 1
- $INSTALL_DATA $sdir/$file $instdir || exit 1
+ test -d $instdir || $sdir_top/mkinstalldirs $instdir || exit 1
+ $INSTALL_DATA $sdir_top/$file $instdir || exit 1
fi
done
-
-exit 0
Index: Config/uninstallfns.sh
===================================================================
RCS file: /cvsroot/zsh/zsh/Config/uninstallfns.sh,v
retrieving revision 1.1.1.5
diff -u -r1.1.1.5 uninstallfns.sh
--- Config/uninstallfns.sh 2000/01/14 19:14:47 1.1.1.5
+++ Config/uninstallfns.sh 2000/11/30 15:39:50
@@ -1,39 +1,38 @@
#!/bin/sh
-# If the source directory is somewhere else, we need to force
-# the shell to expand it in that directory, then strip it off.
-install=
-for file in $FUNCTIONS_INSTALL; do
- if test -f "$sdir/$file"; then
- install="$install $file"
- else
- install="$install `echo '' $sdir/$file | sed -e \"s% $sdir/% %g\"`"
- fi
-done
-
fndir=$DESTDIR$fndir
+
+allfuncs="`grep ' functions=' ${dir_top}/config.modules |
+ sed -e '/^#/d' -e '/ link=no/d' -e 's/^.* functions=//'`"
+
+allfuncs="`cd ${sdir_top}; echo ${allfuncs}`"
-for file in $install; do
- case $fndir in
- *$VERSION*)
- # Version specific function directory, safe to remove completely.
- # However, we don't remove the top-level version directory since
- # it could have other things than functions in it. We could
- # do that instead in the top-level Makefile on a full uninstall,
- # if we wanted.
- rm -rf $fndir
- ;;
- *)
- if test -f $sdir/$file; then
+case $fndir in
+ *$VERSION*)
+ # Version specific function directory, safe to remove completely.
+ # However, we don't remove the top-level version directory since
+ # it could have other things than functions in it. We could
+ # do that instead in the top-level Makefile on a full uninstall,
+ # if we wanted.
+ rm -rf $fndir
+ ;;
+ *) # The following will only apply with a custom install directory
+ # with no version information. This is rather undesirable.
+ # But let's try and do the best we can.
+ # We now have a list of files, but we need to use `test -f' to check
+ # (1) the glob got expanded (2) we are not looking at directories.
+ for file in $allfuncs; do
+ if test -f $sdir_top/$file; then
if test x$FUNCTIONS_SUBDIRS != x -a x$FUNCTIONS_SUBDIRS != xno; then
+ file=`echo $file | sed -e 's%%^Completion/%' -e 's%%^Functions%'`
rm -f $fndir/$file;
else
bfile="`echo $file | sed -e 's%^.*/%%'`"
rm -f "$fndir/$bfile"; \
fi
fi
- ;;
- esac
-done
+ done
+ ;;
+esac
exit 0
Index: Src/signals.c
===================================================================
RCS file: /cvsroot/zsh/zsh/Src/signals.c,v
retrieving revision 1.13
diff -u -r1.13 signals.c
--- Src/signals.c 2000/11/11 19:50:29 1.13
+++ Src/signals.c 2000/11/30 15:39:50
@@ -1010,12 +1010,12 @@
{
int sig, ota = trapsallowed;
- trapsallowed = 1;
+ trapsallowed = 0;
while (trapqused) {
trapqused--;
sig = *trapqueue;
memcpy(trapqueue, trapqueue + 1, trapqused * sizeof(int));
- dotrap(sig, -1);
+ dotrap(sig, 1);
}
trapsallowed = ota;
}
Index: Src/zsh.mdd
===================================================================
RCS file: /cvsroot/zsh/zsh/Src/zsh.mdd,v
retrieving revision 1.4
diff -u -r1.4 zsh.mdd
--- Src/zsh.mdd 2000/11/26 20:01:03 1.4
+++ Src/zsh.mdd 2000/11/30 15:39:50
@@ -2,6 +2,7 @@
link=static
load=yes
# load=static should replace use of alwayslink
+functions='Functions/Misc/* Functions/Prompts/*'
nozshdep=1
alwayslink=1
Index: Src/Modules/zftp.mdd
===================================================================
RCS file: /cvsroot/zsh/zsh/Src/Modules/zftp.mdd,v
retrieving revision 1.2
diff -u -r1.2 zftp.mdd
--- Src/Modules/zftp.mdd 2000/11/26 20:01:03 1.2
+++ Src/Modules/zftp.mdd 2000/11/30 15:39:50
@@ -1,6 +1,7 @@
name=zsh/zftp
link=dynamic
load=no
+functions='Functions/Zftp/*'
autobins="zftp"
Index: Src/Zle/complete.mdd
===================================================================
RCS file: /cvsroot/zsh/zsh/Src/Zle/complete.mdd,v
retrieving revision 1.3
diff -u -r1.3 complete.mdd
--- Src/Zle/complete.mdd 2000/11/26 20:01:03 1.3
+++ Src/Zle/complete.mdd 2000/11/30 15:39:50
@@ -1,6 +1,7 @@
name=zsh/complete
link=either
load=yes
+functions='Completion/Core/* Completion/Base/* Completion/Builtins/* Completion/User/* Completion/Commands/* Completion/Debian/* Completion/Linux/* Completion/Bsd/* Completion/AIX/* Completion/X/*'
moddeps="zsh/zle"
Index: Src/Zle/zle.mdd
===================================================================
RCS file: /cvsroot/zsh/zsh/Src/Zle/zle.mdd,v
retrieving revision 1.2
diff -u -r1.2 zle.mdd
--- Src/Zle/zle.mdd 2000/11/26 20:01:03 1.2
+++ Src/Zle/zle.mdd 2000/11/30 15:39:50
@@ -1,6 +1,7 @@
name=zsh/zle
link=either
load=yes
+functions='Functions/Zle/*'
autobins="bindkey vared zle"
--
Peter Stephenson <pws@csr.com> Software Engineer
Cambridge Silicon Radio, Unit 300, Science Park, Milton Road,
Cambridge, CB4 0XL, UK Tel: +44 (0)1223 392070
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: PATCH: function install
2000-11-30 18:28 PATCH: function install Peter Stephenson
@ 2000-12-02 23:37 ` Bart Schaefer
2000-12-04 10:47 ` Peter Stephenson
2000-12-05 15:18 ` Module config Andrej Borsenkow
1 sibling, 1 reply; 8+ messages in thread
From: Bart Schaefer @ 2000-12-02 23:37 UTC (permalink / raw)
To: Peter Stephenson, Zsh hackers list
On Nov 30, 6:28pm, Peter Stephenson wrote:
} Subject: PATCH: function install
}
} I haven't tested this with FUNCTIONS_SUBDIRS enabled, because it's too
} painful to reconfigure.
There seems to be a problem with this:
zagzig% echo $fpath
/usr/local/share/zsh/site-functions /usr/local/share/zsh/3.1.9-dev-7/functions/@FUNCTIONS_INSTALL@
--
Bart Schaefer Brass Lantern Enterprises
http://www.well.com/user/barts http://www.brasslantern.com
Zsh: http://www.zsh.org | PHPerl Project: http://phperl.sourceforge.net
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: PATCH: function install
2000-12-02 23:37 ` Bart Schaefer
@ 2000-12-04 10:47 ` Peter Stephenson
2000-12-04 19:12 ` Peter Stephenson
0 siblings, 1 reply; 8+ messages in thread
From: Peter Stephenson @ 2000-12-04 10:47 UTC (permalink / raw)
To: Zsh hackers list
Bart wrote:
> zagzig% echo $fpath
> /usr/local/share/zsh/site-functions /usr/local/share/zsh/3.1.9-dev-7/function
> s/@FUNCTIONS_INSTALL@
Zowie! I have seen the SUBDIRS!
I completely forgot about the path compiled into the shell --- I'll look
into this as soon as I get a moment. It'll have to come from
config.modules instead of the variable, obviously.
--
Peter Stephenson <pws@csr.com> Software Engineer
Cambridge Silicon Radio, Unit 300, Science Park, Milton Road,
Cambridge, CB4 0XL, UK Tel: +44 (0)1223 392070
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: PATCH: function install
2000-12-04 10:47 ` Peter Stephenson
@ 2000-12-04 19:12 ` Peter Stephenson
0 siblings, 0 replies; 8+ messages in thread
From: Peter Stephenson @ 2000-12-04 19:12 UTC (permalink / raw)
To: Zsh hackers list
I nearly wrote:
> Yow! I have seen the SUBDIRS!
This should fix it, with the change that Completion is now installed as a
subdirectory under ..../functions. I've even tested it this time.
The first hunk is tangentially related paranoia; the second got missed out
the first time round.
Index: configure.in
===================================================================
RCS file: /cvsroot/zsh/zsh/configure.in,v
retrieving revision 1.35
diff -u -r1.35 configure.in
--- configure.in 2000/11/30 18:36:21 1.35
+++ configure.in 2000/12/04 19:07:26
@@ -1744,7 +1744,7 @@
grep "^name=$name " ${CONFIG_MODULES}.old
;;
*) case "$link" in
- *\ *) eval 'link=`'$link'`'
+ *\ *) eval "link=\`$link\`"
;;
esac
case "${load}" in
Index: Config/defs.mk.in
===================================================================
RCS file: /cvsroot/zsh/zsh/Config/defs.mk.in,v
retrieving revision 1.3
diff -u -r1.3 defs.mk.in
--- Config/defs.mk.in 2000/11/26 20:01:02 1.3
+++ Config/defs.mk.in 2000/12/04 19:07:26
@@ -74,7 +74,6 @@
INSTALL_DATA = @INSTALL_DATA@
# variables used in determining what to install
-FUNCTIONS_INSTALL = @FUNCTIONS_INSTALL@
FUNCTIONS_SUBDIRS = @FUNCTIONS_SUBDIRS@
# flags passed to recursive makes in subdirectories
Index: Config/installfns.sh
===================================================================
RCS file: /cvsroot/zsh/zsh/Config/installfns.sh,v
retrieving revision 1.3
diff -u -r1.3 installfns.sh
--- Config/installfns.sh 2000/12/04 12:02:31 1.3
+++ Config/installfns.sh 2000/12/04 19:07:26
@@ -14,8 +14,7 @@
for file in $allfuncs; do
if test -f $sdir_top/$file; then
if test x$FUNCTIONS_SUBDIRS != x -a x$FUNCTIONS_SUBDIRS != xno; then
- subdir="`echo $file | sed -e 's%/[^/]*$%%' \
- -e s%^Functions/%% -e s%^Completion/%%`"
+ subdir="`echo $file | sed -e 's%/[^/]*$%%' -e 's%^Functions/%%'`"
instdir="$fndir/$subdir"
else
instdir="$fndir"
Index: Config/uninstallfns.sh
===================================================================
RCS file: /cvsroot/zsh/zsh/Config/uninstallfns.sh,v
retrieving revision 1.2
diff -u -r1.2 uninstallfns.sh
--- Config/uninstallfns.sh 2000/11/30 18:36:23 1.2
+++ Config/uninstallfns.sh 2000/12/04 19:07:26
@@ -24,7 +24,7 @@
for file in $allfuncs; do
if test -f $sdir_top/$file; then
if test x$FUNCTIONS_SUBDIRS != x -a x$FUNCTIONS_SUBDIRS != xno; then
- file=`echo $file | sed -e 's%%^Completion/%' -e 's%%^Functions%'`
+ file=`echo $file | sed -e 's%%^Functions/%'`
rm -f $fndir/$file;
else
bfile="`echo $file | sed -e 's%^.*/%%'`"
Index: Src/zsh.mdd
===================================================================
RCS file: /cvsroot/zsh/zsh/Src/zsh.mdd,v
retrieving revision 1.5
diff -u -r1.5 zsh.mdd
--- Src/zsh.mdd 2000/11/30 18:36:23 1.5
+++ Src/zsh.mdd 2000/12/04 19:07:27
@@ -45,10 +45,13 @@
echo '#define FPATH_DIR "'$(fndir)'"' >> zshpaths.h.tmp; \
if test x$(FUNCTIONS_SUBDIRS) != x -a \
x$(FUNCTIONS_SUBDIRS) != xno; then \
- fpath_tmp="`for f in $$FUNCTIONS_INSTALL; do \
- echo $$f | sed s%/.*%%; \
- done | sort | uniq`"; \
- fpath_tmp="`echo $$fpath_tmp | sed 's/ /\", \"/g'`"; \
+ fpath_tmp="`grep ' functions=.' \
+ $(dir_top)/config.modules | sed -e '/^#/d' -e '/ link=no/d' \
+ -e 's/^.* functions=//'`"; \
+ fpath_tmp=`for f in $$fpath_tmp; do \
+ echo $$f | sed -e 's%^Functions/%%' -e 's%/[^/]*$$%%'; \
+ done | sort | uniq`; \
+ fpath_tmp=`echo $$fpath_tmp | sed 's/ /\", \"/g'`; \
echo "#define FPATH_SUBDIRS { \"$$fpath_tmp\" }" \
>>zshpaths.h.tmp; \
fi; \
--
Peter Stephenson <pws@csr.com> Software Engineer
Cambridge Silicon Radio, Unit 300, Science Park, Milton Road,
Cambridge, CB4 0XL, UK Tel: +44 (0)1223 392070
^ permalink raw reply [flat|nested] 8+ messages in thread
* Module config
2000-11-30 18:28 PATCH: function install Peter Stephenson
2000-12-02 23:37 ` Bart Schaefer
@ 2000-12-05 15:18 ` Andrej Borsenkow
2000-12-05 16:35 ` Peter Stephenson
1 sibling, 1 reply; 8+ messages in thread
From: Andrej Borsenkow @ 2000-12-05 15:18 UTC (permalink / raw)
To: Zsh hackers list
> It seems like the config.modules patch was uncontroversial
> ...
> This is the last change I think is really necessary before zsh 4.0
> (translation: the last major change I had any chance of getting round to
> any time soon).
>
I'd still like to have configure parameter instead of/in addition to
config.modules as I suggested sometime ago. It is better suited for
scripting. Mau be, I'll get around to implement it. It may even coexist with
config.modules.
To remeber - something like:
--enable-modules='zsh/zle=link=static zsh/stat=load=auto'
i.e. just to enable setting the same parameters as in config.modules on
command line.
-andrej
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Module config
2000-12-05 15:18 ` Module config Andrej Borsenkow
@ 2000-12-05 16:35 ` Peter Stephenson
2000-12-05 19:54 ` Andrej Borsenkow
0 siblings, 1 reply; 8+ messages in thread
From: Peter Stephenson @ 2000-12-05 16:35 UTC (permalink / raw)
To: Zsh hackers list
> To remeber - something like:
>
> --enable-modules='zsh/zle=link=static zsh/stat=load=auto'
>
> i.e. just to enable setting the same parameters as in config.modules on
> command line.
That should be possible just by changing configure.in. In the loop over
.mdd files,
case $enable_modules in
$name=*|*' '$name=*) # use sed to get stuff out of $enable_modules
;;
esac
# normal processing on link, load etc.
auto=no should probably override the --enable-modules setting, since the
latter could come from config.status --recheck.
--
Peter Stephenson <pws@csr.com> Software Engineer
Cambridge Silicon Radio, Unit 300, Science Park, Milton Road,
Cambridge, CB4 0XL, UK Tel: +44 (0)1223 392070
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Module config
2000-12-05 16:35 ` Peter Stephenson
@ 2000-12-05 19:54 ` Andrej Borsenkow
2000-12-06 10:41 ` Peter Stephenson
0 siblings, 1 reply; 8+ messages in thread
From: Andrej Borsenkow @ 2000-12-05 19:54 UTC (permalink / raw)
To: Zsh hackers list
One more remaining part is documentation. It looks sensible to omit docs for
those modules that are not built. I've tried to do it and failed. There are
at least two problems:
- minor: zftpsys.yo is built as part of "main" documentation. It logically
should be built together with mod_zftp. Also, several builtins that are now
in modules are listed in main documentation (e.g. limit).
- major: list of modules to build is created dynamically when you run make;
it is impossible to build list of modules at configure time.
Hence the question: is there any reason we generate module list and
makefiles at compile time? Autoconf allows you to run any command(s) as part
of config.status - we can as easily call mkmakemod & Co. as part of (and
move current creation of config.modules into) config.status.
Should make the whole story more simple.
-andrej
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Module config
2000-12-05 19:54 ` Andrej Borsenkow
@ 2000-12-06 10:41 ` Peter Stephenson
0 siblings, 0 replies; 8+ messages in thread
From: Peter Stephenson @ 2000-12-06 10:41 UTC (permalink / raw)
To: Zsh hackers list
On Tue, 05 Dec 2000 22:54:22 +0300
Andrej Borsenkow <Andrej.Borsenkow@mow.siemens.ru> wrote:
> - major: list of modules to build is created dynamically when you run make;
> it is impossible to build list of modules at configure time.
That's not true any more: all the module information comes from config.modules.
The remaining intermediate files are simply there to be included in C code.
It should be possible to rig up some code in the Makefile or an auxiliary
script to sort out which modules to provide documentation for along the same
lines as, say, the code in the top level Makefile which decides which functions
to install.
--
Peter Stephenson <pws@csr.com> Software Engineer
Cambridge Silicon Radio, Unit 300, Science Park, Milton Road,
Cambridge, CB4 0XL, UK Tel: +44 (0)1223 392070
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2000-12-06 10:42 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-11-30 18:28 PATCH: function install Peter Stephenson
2000-12-02 23:37 ` Bart Schaefer
2000-12-04 10:47 ` Peter Stephenson
2000-12-04 19:12 ` Peter Stephenson
2000-12-05 15:18 ` Module config Andrej Borsenkow
2000-12-05 16:35 ` Peter Stephenson
2000-12-05 19:54 ` Andrej Borsenkow
2000-12-06 10:41 ` Peter Stephenson
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/zsh/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).