diff options
-rw-r--r-- | AUTHORS | 1 | ||||
-rwxr-xr-x | bootstrap | 312 | ||||
-rw-r--r-- | doc/Makefile.am | 141 | ||||
-rwxr-xr-x | doc/check-docs.sh | 74 | ||||
-rw-r--r-- | doc/fdl.texi | 450 | ||||
-rwxr-xr-x | doc/gendocs_template | 123 | ||||
-rw-r--r-- | doc/macros.texi | 31 | ||||
-rw-r--r-- | doc/mastermenu.el | 90 | ||||
-rw-r--r-- | doc/rendition.texi | 85 | ||||
-rw-r--r-- | doc/untabify.el | 13 | ||||
-rw-r--r-- | pies/Makefile.am | 39 | ||||
-rw-r--r-- | pies/depmap.c | 170 | ||||
-rw-r--r-- | pies/pies.c | 1010 | ||||
-rw-r--r-- | pies/pies.h | 119 | ||||
-rw-r--r-- | pies/pies.rcin | 25 | ||||
-rw-r--r-- | pies/progman.c | 971 |
16 files changed, 3654 insertions, 0 deletions
@@ -0,0 +1 @@ | |||
Sergey Poznyakoff gray@gnu.org | |||
diff --git a/bootstrap b/bootstrap new file mode 100755 index 0000000..51d94b2 --- /dev/null +++ b/bootstrap | |||
@@ -0,0 +1,312 @@ | |||
1 | #! /bin/sh | ||
2 | ############################ | ||
3 | ## Configuration | ||
4 | ############################ | ||
5 | |||
6 | GNULIB_DATE=2007-05-12 | ||
7 | GNU_SOURCE_BASE=gnu | ||
8 | |||
9 | MODLIST="argp\ | ||
10 | fprintftime\ | ||
11 | getline\ | ||
12 | gettext\ | ||
13 | malloc\ | ||
14 | memrchr\ | ||
15 | mkdtemp\ | ||
16 | obstack\ | ||
17 | realloc\ | ||
18 | regex\ | ||
19 | save-cwd\ | ||
20 | snprintf\ | ||
21 | strtok_r\ | ||
22 | vasprintf" | ||
23 | |||
24 | MODAVOID="xalloc-die openat-die" | ||
25 | |||
26 | # Other locale categories that need message catalogs. | ||
27 | EXTRA_LOCALE_CATEGORIES= | ||
28 | |||
29 | NLS_MARKERS="\ | ||
30 | MF_THROW:2\ | ||
31 | MF_ASSERT:3\ | ||
32 | parse_error:1\ | ||
33 | parse_error_locus:2\ | ||
34 | mu_error:1\ | ||
35 | gacopyz_io_log:3\ | ||
36 | gacopyz_logmsg:2\ | ||
37 | gacopyz_log:3" | ||
38 | |||
39 | # Additional xgettext options to use. Use "\\\newline" to break lines. | ||
40 | XGETTEXT_OPTIONS='\\\ | ||
41 | --flag=_:1:pass-c-format\\\ | ||
42 | --flag=N_:1:pass-c-format\\\ | ||
43 | --flag=error:3:c-format --flag=error_at_line:5:c-format\\\ | ||
44 | ' | ||
45 | |||
46 | COPYRIGHT_HOLDER="Sergey Poznyakoff" | ||
47 | |||
48 | # Translation Project URL, for the registry of all projects | ||
49 | # and for the translation-team master directory. | ||
50 | # (for future use) | ||
51 | tp_url() { | ||
52 | echo "http://translationproject.org/domain/$1.html" | ||
53 | } | ||
54 | |||
55 | ############################ | ||
56 | ## Implementation | ||
57 | ############################ | ||
58 | |||
59 | usage() { | ||
60 | echo >&2 "\ | ||
61 | Usage: $0 [OPTION]... GNULIB_DIR | ||
62 | Bootstrap this package from the checked-out sources. | ||
63 | |||
64 | --copy Copy files instead of creating symbolic links. | ||
65 | --force Attempt to bootstrap even if the sources seem | ||
66 | not to have been checked out. | ||
67 | --skip-po Do not download po files. | ||
68 | --update-po[=LANG] Update po file(s) and exit. | ||
69 | |||
70 | The only argument specifes the file name of the directory were gnulib | ||
71 | sources are located. You will have to check out them beforehand, \`bootstrap' | ||
72 | won't do this for you. | ||
73 | |||
74 | Local defaults can be provided by placing the file \`.bootstrap' in the | ||
75 | current working directory. The file is read, comments and empty lines are | ||
76 | removed, shell variables expanded and the result is prepended to the command | ||
77 | line options. | ||
78 | |||
79 | Running without arguments will suffice in most cases. | ||
80 | " | ||
81 | } | ||
82 | |||
83 | # Read local configuration file | ||
84 | if [ -r .bootstrap ]; then | ||
85 | echo "$0: Reading configuration file .bootstrap" | ||
86 | eval set -- "`sed 's/#.*$//;/^$/d' .bootstrap | tr '\n' ' '` $*" | ||
87 | fi | ||
88 | |||
89 | extract_package_name=' | ||
90 | /^AC_INIT(/{ | ||
91 | /.*,.*,.*,/{ | ||
92 | s/// | ||
93 | s/[][]//g | ||
94 | p | ||
95 | q | ||
96 | } | ||
97 | s/AC_INIT(\[*// | ||
98 | s/]*,.*// | ||
99 | s/^GNU // | ||
100 | y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ | ||
101 | s/[^A-Za-z0-9_]/-/g | ||
102 | p | ||
103 | } | ||
104 | ' | ||
105 | package=`sed -n "$extract_package_name" configure.ac` || exit | ||
106 | |||
107 | extract_bug_address=' | ||
108 | /^AC-INIT-BUG-ADDRESS/{ | ||
109 | s/[][]//g | ||
110 | s/.*=//p | ||
111 | } | ||
112 | ' | ||
113 | bug_address=`m4 -D'AC_INIT=AC-INIT-BUG-ADDRESS=$3' configure.ac | sed -n "$extract_bug_address"` | ||
114 | if test -z "$bug_address"; then | ||
115 | bug_address="bug-${package}@gnu.org.ua" | ||
116 | fi | ||
117 | |||
118 | # Whether to use copies instead of symlinks. | ||
119 | copy=false | ||
120 | |||
121 | GNULIB_OPTION= | ||
122 | DOWNLOAD_PO= | ||
123 | |||
124 | for option | ||
125 | do | ||
126 | case $option in | ||
127 | --help) | ||
128 | usage | ||
129 | exit;; | ||
130 | --skip-po | --no-po) # --no-po is for compatibility with 'tar' tradition. | ||
131 | DOWNLOAD_PO=skip;; | ||
132 | --update-po=*) | ||
133 | DOWNLOAD_PO=`expr "$option" : '--update-po=\(.*\)'`;; | ||
134 | --update-po) | ||
135 | DOWNLOAD_PO=only;; | ||
136 | --copy) | ||
137 | copy=true;; | ||
138 | -*) | ||
139 | echo >&2 "$0: $option: unknown option" | ||
140 | exit 1;; | ||
141 | *) | ||
142 | if [ -n "$NULIB_OPTION" ]; then | ||
143 | echo "$0: gnulib directory specified twice">&2 | ||
144 | exit 1 | ||
145 | fi | ||
146 | GNULIB_DIR=$option;; | ||
147 | esac | ||
148 | done | ||
149 | |||
150 | datecmp() { | ||
151 | test `echo "1 $1 | ||
152 | 2 $2" | tr '-' ' ' | sort -n -k2 -k3 -k4 -k1 | sed -n '1s/ .*//p'` -eq 1 | ||
153 | } | ||
154 | |||
155 | if [ -n "$GNULIB_DIR" ]; then | ||
156 | if [ -d "$GNULIB_DIR" ]; then | ||
157 | PATH="$GNULIB_DIR:$PATH" | ||
158 | if [ -r "$GNULIB_DIR/ChangeLog" ]; then | ||
159 | GNULIB_REV=`sed '/^[0-9]\{4\}-[0-9]\{2\}-[0-9]\{2\}/q' "$GNULIB_DIR/ChangeLog"` | ||
160 | if datecmp "$GNULIB_DATE" "$GNULIB_REV"; then :; | ||
161 | else | ||
162 | echo "$0: Gnulib version is too old: $GNULIB_REV">&2 | ||
163 | echo "$0: It should not be older than $GNULIB_DATE">&2 | ||
164 | echo "$0: Please, update gnulib and retry">&2 | ||
165 | exit | ||
166 | fi | ||
167 | else | ||
168 | echo "$0: No $GNULIB_DIR/ChangeLog file found">&2 | ||
169 | fi | ||
170 | else | ||
171 | echo "$0: specified gnulib location is not a directory">&2 | ||
172 | fi | ||
173 | else | ||
174 | echo "$0: warning: gnulib source directory not specified">&2 | ||
175 | echo "$0: warning: looking for gnulib-tool in PATH...">&2 | ||
176 | fi | ||
177 | |||
178 | gnulib-tool --version >/dev/null 2>&1 | ||
179 | if [ $? -ne 0 ]; then | ||
180 | echo "$0: Cannot run gnulib-tool. Try \`$0 --help' for more info.">&2 | ||
181 | exit 1 | ||
182 | fi | ||
183 | |||
184 | echo "$0: Bootstrapping $package" | ||
185 | |||
186 | echo "$0: Running autopoint" | ||
187 | autopoint -f || exit 1 | ||
188 | |||
189 | # Create gettext configuration. | ||
190 | echo "$0: Creating po/Makevars from po/Makevars.template ..." | ||
191 | rm -f po/Makevars | ||
192 | |||
193 | if [ -n "$NLS_MARKERS" ]; then | ||
194 | XGETTEXT_OPTIONS="$XGETTEXT_OPTIONS "`echo $NLS_MARKERS | tr ' ' '\n' | sed 's/.*/ --flag=&:pass-c-format\\\\\\\\\\\\/'`" | ||
195 | " | ||
196 | fi | ||
197 | |||
198 | sed ' | ||
199 | 1i\ | ||
200 | # -*- buffer-read-only: t -*- vi: set ro:\ | ||
201 | # DO NOT EDIT! GENERATED AUTOMATICALLY! | ||
202 | |||
203 | /^COPYRIGHT_HOLDER *=/s/=.*/= '"$COPYRIGHT_HOLDER"'/ | ||
204 | /^EXTRA_LOCALE_CATEGORIES *=/s/=.*/= '"$EXTRA_LOCALE_CATEGORIES"'/ | ||
205 | /^MSGID_BUGS_ADDRESS *=/s/=.*/= '"$bug_address"'/ | ||
206 | /^XGETTEXT_OPTIONS *=/{ | ||
207 | s/$/ \\/ | ||
208 | a\ | ||
209 | '"$XGETTEXT_OPTIONS"' $${end_of_xgettext_options+} | ||
210 | } | ||
211 | ' po/Makevars.template >po/Makevars | ||
212 | |||
213 | # Get translations. | ||
214 | |||
215 | get_translations() { | ||
216 | subdir=$1 | ||
217 | domain=$2 | ||
218 | po_file=$3 | ||
219 | |||
220 | case $WGET_COMMAND in | ||
221 | '') | ||
222 | echo "$0: wget not available; skipping translations";; | ||
223 | ?*) | ||
224 | url=`tp_url $domain` | ||
225 | baseurl=`expr "$url" : '\(.*\)/.*'` | ||
226 | echo "$0: getting translations into $subdir for $domain..." && | ||
227 | case $po_file in | ||
228 | '') (cd $subdir && rm -f dummy `ls | sed -n '/\.gmo$/p; /\.po/p'`);; | ||
229 | esac && | ||
230 | |||
231 | $WGET_COMMAND -O "$subdir/$domain.html" "$url" && | ||
232 | |||
233 | sed -n 's|.*href="\(.*\)/\([^/][^/]*\)/'"$domain"'-\([^/"]*\)\.[^."]*\.po".*|\2:\3:\1|p' <"$subdir/$domain.html" | | ||
234 | sort -t: -k 1,1 -k 2,2n -k2,2 -k3,3n -k3,3 -k4,4n -k4,4 -k5,5n -k5.5 | | ||
235 | awk -F: ' |