annotate lib-src/installexe.sh @ 4329:d9eb5ea14f65

Provide %b in #'format; use it for converting between ints and bit vectors. lisp/ChangeLog addition: 2007-12-17 Aidan Kehoe <kehoea@parhasard.net> * subr.el (integer-to-bit-vector): New. * subr.el (bit-vector-to-integer): New. Provide naive implementations using the Lisp reader for these. src/ChangeLog addition: 2007-12-17 Aidan Kehoe <kehoea@parhasard.net> * doprnt.c (emacs_doprnt_1): Add support for formatted printing of both longs and bignums as base 2. * editfns.c (Fformat): Document the new %b escape for #'format. * lisp.h: Make ulong_to_bit_string available beside long_to_string. * lread.c: Fix a bug where the integer base was being ignored in certain contexts; thank you Sebastian Freundt. This is necessary for correct behaviour of #'integer-to-bit-vector and #'bit-vector-to-integer, just added to subr.el * print.c (ulong_to_bit_string): New. Analagous to long_to_string, but used all the time when %b is encountered, since we can't pass that to sprintf. man/ChangeLog addition: 2007-12-17 Aidan Kehoe <kehoea@parhasard.net> * lispref/strings.texi (Formatting Strings): Document %b for binary output.
author Aidan Kehoe <kehoea@parhasard.net>
date Mon, 17 Dec 2007 08:44:14 +0100
parents 3ee1c468b215
children 8a653fbe5c27
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
462
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 428
diff changeset
1 #!bash
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
2
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
3 install_prog=$1
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
4 shift
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
5
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
6 tstr=""
462
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 428
diff changeset
7
2940
3ee1c468b215 [xemacs-hg @ 2005-09-19 00:36:01 by mta]
mta
parents: 462
diff changeset
8 while [[ $# -gt 0 ]]
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
9 do
2940
3ee1c468b215 [xemacs-hg @ 2005-09-19 00:36:01 by mta]
mta
parents: 462
diff changeset
10 if [[ -f $1.exe ]]
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
11 then
2940
3ee1c468b215 [xemacs-hg @ 2005-09-19 00:36:01 by mta]
mta
parents: 462
diff changeset
12 if [[ "$2" == *.exe ]]
3ee1c468b215 [xemacs-hg @ 2005-09-19 00:36:01 by mta]
mta
parents: 462
diff changeset
13 then
3ee1c468b215 [xemacs-hg @ 2005-09-19 00:36:01 by mta]
mta
parents: 462
diff changeset
14 tstr="$tstr$1 $2"
3ee1c468b215 [xemacs-hg @ 2005-09-19 00:36:01 by mta]
mta
parents: 462
diff changeset
15 else
3ee1c468b215 [xemacs-hg @ 2005-09-19 00:36:01 by mta]
mta
parents: 462
diff changeset
16 tstr="$tstr$1.exe $2.exe"
3ee1c468b215 [xemacs-hg @ 2005-09-19 00:36:01 by mta]
mta
parents: 462
diff changeset
17 fi
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
18 shift 2
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
19 else
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
20 tstr="$tstr$1 "
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
21 fi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
22 shift
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
23 done
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
24 echo "$install_prog $tstr"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
25 eval "$install_prog $tstr"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
26 exit
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
27