[Pkg-wmaker-commits] [fookb] 01/07: Import Upstream version 2.21
Doug Torrance
dtorrance-guest at moszumanska.debian.org
Sat Sep 2 14:53:36 UTC 2017
This is an automated email from the git hooks/post-receive script.
dtorrance-guest pushed a commit to branch master
in repository fookb.
commit 8461d6f8535fe13e9f58bee970a6c6ae03208582
Author: Doug Torrance <dtorrance at piedmont.edu>
Date: Sat Sep 2 10:50:41 2017 -0400
Import Upstream version 2.21
---
1.xpm | 148 ++++
2.xpm | 152 ++++
3.xpm | 152 ++++
4.xpm | 148 ++++
INSTALL | 74 ++
LICENSE | 135 ++++
Makefile.in | 65 ++
README | 7 +
README.russian | 7 +
TODO | 5 +
VERSION | 51 ++
beep_spring.au | Bin 0 -> 8612 bytes
boom.xpm | 158 ++++
build-stamp | 0
configure | 2274 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
configure.in | 59 ++
copyright | 6 +
fookb-plainx.1x | 145 ++++
fookb-wmaker.1x | 145 ++++
fookb.1x | 145 ++++
fookb.c | 286 +++++++
fookb.cf | 11 +
fookb.h | 19 +
fookb.resources | 7 +
globals.c | 23 +
images.c | 138 ++++
images.h | 16 +
lat.xpm | 301 ++++++++
opts.c | 115 +++
opts.h | 33 +
params.c | 92 +++
params.h | 27 +
rus.xpm | 310 ++++++++
sound.c | 50 ++
sound.h | 14 +
xrmdb.h | 7 +
36 files changed, 5325 insertions(+)
diff --git a/1.xpm b/1.xpm
new file mode 100644
index 0000000..c764bc0
--- /dev/null
+++ b/1.xpm
@@ -0,0 +1,148 @@
+/* XPM */
+static char *magick[] = {
+/* columns rows colors chars-per-pixel */
+"48 48 94 2",
+" c #070606",
+". c #0c0b0b",
+"X c #100f0f",
+"o c Gray9",
+"O c #1f1d1d",
+"+ c #211f1f",
+"@ c #242323",
+"# c #2b2929",
+"$ c #343232",
+"% c #3f3d3d",
+"& c #1c1074",
+"* c #3c3656",
+"= c #413f3f",
+"- c #464444",
+"; c #4a4747",
+": c #4f4c4c",
+"> c #575454",
+", c #5f5b5b",
+"< c #615e5e",
+"1 c #666363",
+"2 c #6b6767",
+"3 c #6f6b6b",
+"4 c #726e6e",
+"5 c #726d7d",
+"6 c #777373",
+"7 c #7b7777",
+"8 c #7e7a7a",
+"9 c #1500b8",
+"0 c #302295",
+"q c #1d05d1",
+"w c #1900db",
+"e c #1d00fc",
+"r c #240cd7",
+"t c #2308f3",
+"y c #2a0ef9",
+"u c #2c10fc",
+"i c #3a20fb",
+"p c #4329fb",
+"a c #482ffb",
+"s c #5a4da1",
+"d c #5a42fa",
+"f c #6852fa",
+"g c #745ff6",
+"h c #7762f9",
+"j c #837e7e",
+"k c #fc0000",
+"l c #fc1010",
+"z c #fc2f2f",
+"x c #fd4242",
+"c c #fd6262",
+"v c #fd7171",
+"b c #8571f9",
+"n c #868282",
+"m c #8c8787",
+"M c #8f8a8a",
+"N c #948f8f",
+"B c #979292",
+"V c #9b9595",
+"C c #9f9a9a",
+"Z c #a59f9f",
+"A c #a7a1a1",
+"S c #aaa4a4",
+"D c #aea8a8",
+"F c #b5aeae",
+"G c #beb7b7",
+"H c #9080e4",
+"J c #9785f8",
+"K c #9d8bf8",
+"L c #a493f7",
+"P c #a594f8",
+"I c #aa9af8",
+"U c #b3a3f7",
+"Y c #c6bfbf",
+"T c #fd8585",
+"R c #fd9494",
+"E c #fdb4b4",
+"W c #c2b4f7",
+"Q c #c0c0c0",
+"! c #cec7c7",
+"~ c #d7cfcf",
+"^ c #dfd7d7",
+"/ c #d4c7f6",
+"( c #e7dede",
+") c #fec7c7",
+"_ c #e2d6f6",
+"` c #eee6e6",
+"' c #efe5f5",
+"] c #f7efef",
+"[ c #fee6e6",
+"{ c #f8efef",
+"} c #f0e6f5",
+"| c #fef5f5",
+" . c Gray100",
+".. c None",
+/* pixels */
+"S Y ~ ^ ( ` ] ] { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { | | . . . .] ( ",
+"N A G ..^ ] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .^ ! ",
+"7 N Z F G Y ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ^ ( ( ! Y G ",
+"2 8 N C A F F G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G F F G F D ",
+", 3 j M ! ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ~ Z S Z Z ",
+": 1 6 N ^ ` ] { ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ` ( A C C V ",
+": < 4 N ^ ] | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ] ( A V V B ",
+": , 3 N ^ ] | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ] ( Z B B B ",
+": , 3 M ( ] | | | | | | | | | | | | | | | | | [ R x k T | | | | | | | | | | | | | | ] ( Z B B N ",
+": , 3 M ^ ] | | | | | | | | | | | | | E T c z k k k k T | | | | | | | | | | | | | | ] ( Z B B N ",
+": , 3 N ^ ] | | | | | | | | | | | | | k k k k k k k k T | | | | | | | | | | | | | | ] ( Z B B N ",
+": , 3 M ^ ] | | | | | | | | | | | | | k k k k k k k k T | | | | | | | | | | | | | | ] ( Z B B N ",
+": , 3 M ( ] | | | | | | | | | | | | | T T T c k k k k T | | | | | | | | | | | | | | ] ( Z B B N ",
+": , 3 M ^ ] | | | | | | | | | | | | | | | | E k k k k T | | | | | | | | | | | | | | ] ( Z N V N ",
+": , 3 M ^ ] | | | | | | | | | | | | | | | | E k k k k T | | | | | | | | | | | | | | ] ( Z B B N ",
+": , 3 N ^ ] | | | | | | | | | | | | | | | | E k k k k T | | | | | | | | | | | | | | ] ( Z B B N ",
+": , 3 M ^ ] | | | | | | | | | | | | | | | | E k k k k T | | | | | | | | | | | | | | ] ( Z B B N ",
+": , 3 M ( ] | | | | | | | | | | | | | | | | E k k k k T | | | | | | | | | | | | | | ] ( Z N V N ",
+": , 3 M ^ ] | | | | | | | | | | | | | | | | E k k k k T | | | | | | | | | | | | | | ] ( Z B B N ",
+": , 3 N ^ ] | | | | | | | | | | | | | | | | E k k k k T | | | | | | | | | | | | | | ] ( Z B B N ",
+": , 3 M ^ ] | | | | | | | | | | | | | | | | E k k k k T | | | | | | | | | | | | | | ] ( Z B B N ",
+": , 3 M ^ ] | | | | | | | | | | | | | | | | E k k k k T | | | | | | | | | | | | | | ] ( Z N V N ",
+": , 2 N ^ ] | | | | | | | | | | | | | | | | E k k k k T | | | | | | | | | | | | | | ] ( Z B B N ",
+": , 3 M ^ ] | | | | | | | | | | | | | | | | E k k k k T | | | | | | | | | | | | | | ] ( Z B B N ",
+": , 3 M ( ] | | | | | | | | | | | | | | | | E k k k k T | | | | | | | | | | | | | | ] ( Z B B N ",
+": , 3 M ^ ] | | | | | | | | | | | | | | | | R k k k k v | | | | | | | | | | | | | | ] ( Z N V N ",
+": , 3 N ^ ] | | | | | | | | | | | | | x x x l k k k k k z x x ) | | | | | | | | | | ] ( Z B B N ",
+": , 3 M ^ ] | | | | | | | | | | | | | k k k k k k k k k k k k E | | | | | | | | | | ] ( Z B B N ",
+": , 3 M ( ] | | | | | | | | | | | | | k k k k k k k k k k k k E | | | | | | | | | | ] ( Z B B N ",
+": , 3 M ^ ] | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ] ( Z N V N ",
+": , 3 M ^ ] | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ] ( Z B B N ",
+": , 3 N ^ ] | | | | | | / f e / | | | | | | | | | | | | | p h | | | | | | J u | | | ] ( Z B B N ",
+": , 3 M ^ ] | | | | | W u d P | | | | | | | | | | | | | P e U | | | | | ' u h | | | ] ( Z B B N ",
+": , 3 M ( ] | | | | _ u h | | | | | | | | | | | | | | | a i | | | | | | h e W | | | ] ( Z N V N ",
+": , 3 M ^ ] | | | | h u } | | | | | | | | | | | | | | / e J | | | | | _ e i | | | | ] ( Z B B N ",
+": , 3 N ^ ] | | | | u h W U I J u | | | | U a i | | | J e _ / d d | | h e J P i d | ] ( Z B B N ",
+": , 3 M ^ ] | | / u e e i J K u d b | | P e a a b | | d a _ u J _ | | e e a d d e | ] ( Z B B N ",
+": , 3 M ^ ] | | | h e _ | } i J J e | } i i } J e | | e b a b | | | U e u U | f a | ] ( Z N V N ",
+": , 2 N ^ ] | | | f a | | J e } h i | J e W | d i | W e a u } | | | b e / | P e L | ] ( Z B B N ",
+": , 3 M ^ ] | | | u b | | i a } u J | i a | W e J | J e e u } | | P p h | P e h | | ] ( Z B B N ",
+": , 3 M ^ ] | | _ e U | | e a h d | | e a U u h | | d i _ a a W h h e d f e h | | | ] ( Z N B N ",
+"- , 2 m ^ ] | | L e ' | | b u b ' | | b e d U | | | u J | _ i i J | b u d L | | | | ] ^ C N N N ",
+"- > 1 j ~ ` ] ] g d ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ` ^ B M M M ",
+"% : , 1 G ~ ^ ^ y H ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ~ G 8 j n n ",
+"$ % - > > 3 4 s t 5 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 4 1 2 4 6 7 ",
+"@ # $ $ % % * r 0 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = - - : > , 1 ",
+". . o o o & e q O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O + @ # $ % ; ",
+" w 9 X O # "
+};
diff --git a/2.xpm b/2.xpm
new file mode 100644
index 0000000..3668290
--- /dev/null
+++ b/2.xpm
@@ -0,0 +1,152 @@
+/* XPM */
+static char *magick[] = {
+/* columns rows colors chars-per-pixel */
+"48 48 98 2",
+" c #070606",
+". c #0c0b0b",
+"X c #100f0f",
+"o c Gray9",
+"O c #1f1d1d",
+"+ c #211f1f",
+"@ c #242323",
+"# c #2b2929",
+"$ c #343232",
+"% c #3f3d3d",
+"& c #1c1074",
+"* c #3c3656",
+"= c #413f3f",
+"- c #464444",
+"; c #4a4747",
+": c #4f4c4c",
+"> c #575454",
+", c #5f5b5b",
+"< c #615e5e",
+"1 c #666363",
+"2 c #6b6767",
+"3 c #6f6b6b",
+"4 c #726e6e",
+"5 c #726d7d",
+"6 c #777373",
+"7 c #7b7777",
+"8 c #7e7a7a",
+"9 c #1500b8",
+"0 c #302295",
+"q c #1d05d1",
+"w c #1900db",
+"e c #1d00fc",
+"r c #240cd7",
+"t c #2308f3",
+"y c #2a0ef9",
+"u c #2c10fc",
+"i c #3a20fb",
+"p c #4329fb",
+"a c #482ffb",
+"s c #5a4da1",
+"d c #5a42fa",
+"f c #6852fa",
+"g c #745ff6",
+"h c #7762f9",
+"j c #837e7e",
+"k c #fc0000",
+"l c #fc1010",
+"z c #fc2020",
+"x c #fc2f2f",
+"c c #fd4242",
+"v c #fd5252",
+"b c #fd6262",
+"n c #fd7171",
+"m c #8571f9",
+"M c #868282",
+"N c #8c8787",
+"B c #8f8a8a",
+"V c #948f8f",
+"C c #979292",
+"Z c #9b9595",
+"A c #9f9a9a",
+"S c #a59f9f",
+"D c #a7a1a1",
+"F c #aaa4a4",
+"G c #aea8a8",
+"H c #b5aeae",
+"J c #beb7b7",
+"K c #9080e4",
+"L c #9785f8",
+"P c #9d8bf8",
+"I c #a493f7",
+"U c #a594f8",
+"Y c #aa9af8",
+"T c #b3a3f7",
+"R c #c6bfbf",
+"E c #fd8585",
+"W c #fd9494",
+"Q c #fda3a3",
+"! c #fdb4b4",
+"~ c #c2b4f7",
+"^ c #c0c0c0",
+"/ c #cec7c7",
+"( c #d7cfcf",
+") c #dfd7d7",
+"_ c #d4c7f6",
+"` c #e7dede",
+"' c #fec7c7",
+"] c #fed6d6",
+"[ c #e2d6f6",
+"{ c #eee6e6",
+"} c #efe5f5",
+"| c #f7efef",
+" . c #fee6e6",
+".. c #f8efef",
+"X. c #f0e6f5",
+"o. c #fef5f5",
+"O. c Gray100",
+"+. c None",
+/* pixels */
+"F R ( ) ` { | | ................................................................o.o.O.O.O.O.| ` ",
+"V D J +.) | O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.) / ",
+"7 V S H J R / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / ) ` ` / R J ",
+"2 8 V A D H H J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J H H J H G ",
+", 3 j B / ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ( S F S S ",
+": 1 6 V ) { | ..| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | { ` D A A Z ",
+": < 4 V ) | o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.| ` D Z Z C ",
+": , 3 V ) | o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.| ` S C C C ",
+": , 3 B ` | o.o.o.o.o.o.o.o.o.o.o.o.o.o.] b c k k k l b Q o.o.o.o.o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.o.o. .b k k k k k k k k k x ' o.o.o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 V ) | o.o.o.o.o.o.o.o.o.o.o.' k k k k k k k k k k k k l ! o.o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o. .z k k k z n E n z k k k k k l .o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ` | o.o.o.o.o.o.o.o.o.o.E k k k E o.o.o.o.o.n k k k k k E o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.c k k n o.o.o.o.o.o.o.c k k k k c o.o.o.o.o.o.o.o.o.| ` S V Z V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.k k k ] o.o.o.o.o.o.o.E k k k k c o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 V ) | o.o.o.o.o.o.o.o.o.o.k k k o.o.o.o.o.o.o.o.n k k k k n o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.v b E o.o.o.o.o.o.o.o.z k k k k Q o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ` | o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.E k k k k c o.o.o.o.o.o.o.o.o.o.| ` S V Z V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.W k k k k l ] o.o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 V ) | o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.W k k k k l ' o.o.o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.n k k k k x ] o.o.o.o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.o.o.o.o.o. .v k k k k E o.o.o.o.o.o.o.o.o.o.o.o.o.o.| ` S V Z V ",
+": , 2 V ) | o.o.o.o.o.o.o.o.o.o.o.o.o.o.' x k k k c ' o.o.o.c k k ' o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.o.o.o.W l k k l E o.o.o.o. .l k k o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ` | o.o.o.o.o.o.o.o.o.o.o. .b k k k k n E E E E E c k k x o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.! z k k k k k k k k k k k k k k b o.o.o.o.o.o.o.o.o.| ` S V Z V ",
+": , 3 V ) | o.o.o.o.o.o.o.o.o.o.k k k k k k k k k k k k k k k k E o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.k k k k k k k k k k k k k k k k ! o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ` | o.o.o.o.o.o.o.o.o.o.k k k k k k k k k k k k k k k k ] o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.] c c o.o.o.o.o.o.o.o.o.o.| ` S V Z V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 V ) | o.o.o.o.o.o._ f e _ o.o.o.o.o.o.o.o.o.o.o.o.o.p h o.o.o.o.o.o.L u o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.~ u d U o.o.o.o.o.o.o.o.o.o.o.o.o.U e T o.o.o.o.o.} u h o.o.o.| ` S C C V ",
+": , 3 B ` | o.o.o.o.[ u h o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.a i o.o.o.o.o.o.h e ~ o.o.o.| ` S V Z V ",
+": , 3 B ) | o.o.o.o.h u X.o.o.o.o.o.o.o.o.o.o.o.o.o.o._ e L o.o.o.o.o.[ e i o.o.o.o.| ` S C C V ",
+": , 3 V ) | o.o.o.o.u h ~ T Y L u o.o.o.o.T a i o.o.o.L e [ _ d d o.o.h e L U i d o.| ` S C C V ",
+": , 3 B ) | o.o._ u e e i L P u d m o.o.U e a a m o.o.d a [ u L [ o.o.e e a d d e o.| ` S C C V ",
+": , 3 B ) | o.o.o.h e [ o.X.i L L e o.X.i i X.L e o.o.e m a m o.o.o.T e u T o.f a o.| ` S V Z V ",
+": , 2 V ) | o.o.o.f a o.o.L e X.h i o.L e ~ o.d i o.~ e a u X.o.o.o.m e _ o.U e I o.| ` S C C V ",
+": , 3 B ) | o.o.o.u m o.o.i a X.u L o.i a o.~ e L o.L e e u X.o.o.U p h o.U e h o.o.| ` S C C V ",
+": , 3 B ) | o.o.[ e T o.o.e a h d o.o.e a T u h o.o.d i [ a a ~ h h e d f e h o.o.o.| ` S V C V ",
+"- , 2 N ) | o.o.I e } o.o.m u m } o.o.m e d T o.o.o.u L o.[ i i L o.m u d I o.o.o.o.| ) A V V V ",
+"- > 1 j ( { | | g d | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | { ) C B B B ",
+"% : , 1 J ( ) ) y K ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ( J 8 j M M ",
+"$ % - > > 3 4 s t 5 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 4 1 2 4 6 7 ",
+"@ # $ $ % % * r 0 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = - - : > , 1 ",
+". . o o o & e q O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O + @ # $ % ; ",
+" w 9 X O # "
+};
diff --git a/3.xpm b/3.xpm
new file mode 100644
index 0000000..b29561f
--- /dev/null
+++ b/3.xpm
@@ -0,0 +1,152 @@
+/* XPM */
+static char *magick[] = {
+/* columns rows colors chars-per-pixel */
+"48 48 98 2",
+" c #070606",
+". c #0c0b0b",
+"X c #100f0f",
+"o c Gray9",
+"O c #1f1d1d",
+"+ c #211f1f",
+"@ c #242323",
+"# c #2b2929",
+"$ c #343232",
+"% c #3f3d3d",
+"& c #1c1074",
+"* c #3c3656",
+"= c #413f3f",
+"- c #464444",
+"; c #4a4747",
+": c #4f4c4c",
+"> c #575454",
+", c #5f5b5b",
+"< c #615e5e",
+"1 c #666363",
+"2 c #6b6767",
+"3 c #6f6b6b",
+"4 c #726e6e",
+"5 c #726d7d",
+"6 c #777373",
+"7 c #7b7777",
+"8 c #7e7a7a",
+"9 c #1500b8",
+"0 c #302295",
+"q c #1d05d1",
+"w c #1900db",
+"e c #1d00fc",
+"r c #240cd7",
+"t c #2308f3",
+"y c #2a0ef9",
+"u c #2c10fc",
+"i c #3a20fb",
+"p c #4329fb",
+"a c #482ffb",
+"s c #5a4da1",
+"d c #5a42fa",
+"f c #6852fa",
+"g c #745ff6",
+"h c #7762f9",
+"j c #837e7e",
+"k c #fc0000",
+"l c #fc1010",
+"z c #fc2020",
+"x c #fc2f2f",
+"c c #fd4242",
+"v c #fd5252",
+"b c #fd6262",
+"n c #fd7171",
+"m c #8571f9",
+"M c #868282",
+"N c #8c8787",
+"B c #8f8a8a",
+"V c #948f8f",
+"C c #979292",
+"Z c #9b9595",
+"A c #9f9a9a",
+"S c #a59f9f",
+"D c #a7a1a1",
+"F c #aaa4a4",
+"G c #aea8a8",
+"H c #b5aeae",
+"J c #beb7b7",
+"K c #9080e4",
+"L c #9785f8",
+"P c #9d8bf8",
+"I c #a493f7",
+"U c #a594f8",
+"Y c #aa9af8",
+"T c #b3a3f7",
+"R c #c6bfbf",
+"E c #fd8585",
+"W c #fd9494",
+"Q c #fda3a3",
+"! c #fdb4b4",
+"~ c #c2b4f7",
+"^ c #c0c0c0",
+"/ c #cec7c7",
+"( c #d7cfcf",
+") c #dfd7d7",
+"_ c #d4c7f6",
+"` c #e7dede",
+"' c #fec7c7",
+"] c #fed6d6",
+"[ c #e2d6f6",
+"{ c #eee6e6",
+"} c #efe5f5",
+"| c #f7efef",
+" . c #fee6e6",
+".. c #f8efef",
+"X. c #f0e6f5",
+"o. c #fef5f5",
+"O. c Gray100",
+"+. c None",
+/* pixels */
+"F R ( ) ` { | | ................................................................o.o.O.O.O.O.| ` ",
+"V D J +.) | O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.) / ",
+"7 V S H J R / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / ) ` ` / R J ",
+"2 8 V A D H H J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J H H J H G ",
+", 3 j B / ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ( S F S S ",
+": 1 6 V ) { | ..| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | { ` D A A Z ",
+": < 4 V ) | o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.| ` D Z Z C ",
+": , 3 V ) | o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.| ` S C C C ",
+": , 3 B ` | o.o.o.o.o.o.o.o.o.o.o.o.o.o.] E c k k k l b Q o.o.o.o.o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.o.o.o.E k k k k k k k k k x ' o.o.o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 V ) | o.o.o.o.o.o.o.o.o.o.o.o.b k k k k k k k k k k k l ' o.o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.o.W k k k k v E E v k k k k k c o.o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ` | o.o.o.o.o.o.o.o.o.o.o.v k k l ' o.o.o.o.' k k k k k ] o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.o.k k k W o.o.o.o.o.o.b k k k k ! o.o.o.o.o.o.o.o.o.| ` S V Z V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.o.k k k .o.o.o.o.o.o.E k k k k .o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 V ) | o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o. .z k k k b o.o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.' ! ! E z k k k x .o.o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ` | o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.c k k k k k l E .o.o.o.o.o.o.o.o.o.o.o.| ` S V Z V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.c k k k k k k x W o.o.o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 V ) | o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.W E E c k k k k k x .o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.' l k k k k b o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o. .n c E o.o.o.o.o.o.o.Q k k k k k .o.o.o.o.o.o.o.o.| ` S V Z V ",
+": , 2 V ) | o.o.o.o.o.o.o.o.o.o.v k k k E o.o.o.o.o.o.o.k k k k k ! o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.k k k k l o.o.o.o.o.o.o.k k k k k ! o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ` | o.o.o.o.o.o.o.o.o.o.z k k k k Q o.o.o.o.o.Q k k k k l o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.E k k k k x .o.o.o.' z k k k k E o.o.o.o.o.o.o.o.o.| ` S V Z V ",
+": , 3 V ) | o.o.o.o.o.o.o.o.o.o.o.c k k k k l b E b k k k k k x o.o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.o. .n k k k k k k k k k k k b .o.o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ` | o.o.o.o.o.o.o.o.o.o.o.o.o.] n z k k k k k l b ! o.o.o.o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o. .! ! ! ] o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.| ` S V Z V ",
+": , 3 B ) | o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.| ` S C C V ",
+": , 3 V ) | o.o.o.o.o.o._ f e _ o.o.o.o.o.o.o.o.o.o.o.o.o.p h o.o.o.o.o.o.L u o.o.o.| ` S C C V ",
+": , 3 B ) | o.o.o.o.o.~ u d U o.o.o.o.o.o.o.o.o.o.o.o.o.U e T o.o.o.o.o.} u h o.o.o.| ` S C C V ",
+": , 3 B ` | o.o.o.o.[ u h o.o.o.o.o.o.o.o.o.o.o.o.o.o.o.a i o.o.o.o.o.o.h e ~ o.o.o.| ` S V Z V ",
+": , 3 B ) | o.o.o.o.h u X.o.o.o.o.o.o.o.o.o.o.o.o.o.o._ e L o.o.o.o.o.[ e i o.o.o.o.| ` S C C V ",
+": , 3 V ) | o.o.o.o.u h ~ T Y L u o.o.o.o.T a i o.o.o.L e [ _ d d o.o.h e L U i d o.| ` S C C V ",
+": , 3 B ) | o.o._ u e e i L P u d m o.o.U e a a m o.o.d a [ u L [ o.o.e e a d d e o.| ` S C C V ",
+": , 3 B ) | o.o.o.h e [ o.X.i L L e o.X.i i X.L e o.o.e m a m o.o.o.T e u T o.f a o.| ` S V Z V ",
+": , 2 V ) | o.o.o.f a o.o.L e X.h i o.L e ~ o.d i o.~ e a u X.o.o.o.m e _ o.U e I o.| ` S C C V ",
+": , 3 B ) | o.o.o.u m o.o.i a X.u L o.i a o.~ e L o.L e e u X.o.o.U p h o.U e h o.o.| ` S C C V ",
+": , 3 B ) | o.o.[ e T o.o.e a h d o.o.e a T u h o.o.d i [ a a ~ h h e d f e h o.o.o.| ` S V C V ",
+"- , 2 N ) | o.o.I e } o.o.m u m } o.o.m e d T o.o.o.u L o.[ i i L o.m u d I o.o.o.o.| ) A V V V ",
+"- > 1 j ( { | | g d | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | { ) C B B B ",
+"% : , 1 J ( ) ) y K ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ( J 8 j M M ",
+"$ % - > > 3 4 s t 5 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 4 1 2 4 6 7 ",
+"@ # $ $ % % * r 0 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = - - : > , 1 ",
+". . o o o & e q O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O + @ # $ % ; ",
+" w 9 X O # "
+};
diff --git a/4.xpm b/4.xpm
new file mode 100644
index 0000000..3c1539c
--- /dev/null
+++ b/4.xpm
@@ -0,0 +1,148 @@
+/* XPM */
+static char *magick[] = {
+/* columns rows colors chars-per-pixel */
+"48 48 94 2",
+" c #070606",
+". c #0c0b0b",
+"X c #100f0f",
+"o c Gray9",
+"O c #1f1d1d",
+"+ c #211f1f",
+"@ c #242323",
+"# c #2b2929",
+"$ c #343232",
+"% c #3f3d3d",
+"& c #1c1074",
+"* c #3c3656",
+"= c #413f3f",
+"- c #464444",
+"; c #4a4747",
+": c #4f4c4c",
+"> c #575454",
+", c #5f5b5b",
+"< c #615e5e",
+"1 c #666363",
+"2 c #6b6767",
+"3 c #6f6b6b",
+"4 c #726e6e",
+"5 c #726d7d",
+"6 c #777373",
+"7 c #7b7777",
+"8 c #7e7a7a",
+"9 c #1500b8",
+"0 c #302295",
+"q c #1d05d1",
+"w c #1900db",
+"e c #1d00fc",
+"r c #240cd7",
+"t c #2308f3",
+"y c #2a0ef9",
+"u c #2c10fc",
+"i c #3a20fb",
+"p c #4329fb",
+"a c #482ffb",
+"s c #5a4da1",
+"d c #5a42fa",
+"f c #6852fa",
+"g c #745ff6",
+"h c #7762f9",
+"j c #837e7e",
+"k c #fc0000",
+"l c #fc1010",
+"z c #fc2020",
+"x c #fd4242",
+"c c #fd6262",
+"v c #8571f9",
+"b c #868282",
+"n c #8c8787",
+"m c #8f8a8a",
+"M c #948f8f",
+"N c #979292",
+"B c #9b9595",
+"V c #9f9a9a",
+"C c #a59f9f",
+"Z c #a7a1a1",
+"A c #aaa4a4",
+"S c #aea8a8",
+"D c #b5aeae",
+"F c #beb7b7",
+"G c #9080e4",
+"H c #9785f8",
+"J c #9d8bf8",
+"K c #a493f7",
+"L c #a594f8",
+"P c #aa9af8",
+"I c #b3a3f7",
+"U c #c6bfbf",
+"Y c #fd8585",
+"T c #fd9494",
+"R c #fdb4b4",
+"E c #c2b4f7",
+"W c #c0c0c0",
+"Q c #cec7c7",
+"! c #d7cfcf",
+"~ c #dfd7d7",
+"^ c #d4c7f6",
+"/ c #e7dede",
+"( c #fec7c7",
+") c #fed6d6",
+"_ c #e2d6f6",
+"` c #eee6e6",
+"' c #efe5f5",
+"] c #f7efef",
+"[ c #fee6e6",
+"{ c #f8efef",
+"} c #f0e6f5",
+"| c #fef5f5",
+" . c Gray100",
+".. c None",
+/* pixels */
+"A U ! ~ / ` ] ] { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { | | . . . .] / ",
+"M Z F ..~ ] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .~ Q ",
+"7 M C D F U Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q ~ / / Q U F ",
+"2 8 M V Z D D F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F D D F D S ",
+", 3 j m Q / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / ! C A C C ",
+": 1 6 M ~ ` ] { ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ` / Z V V B ",
+": < 4 M ~ ] | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ] / Z B B N ",
+": , 3 M ~ ] | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ] / C N N N ",
+": , 3 m / ] | | | | | | | | | | | | | | | | | | c k k k k Y | | | | | | | | | | | | ] / C N N M ",
+": , 3 m ~ ] | | | | | | | | | | | | | | | | | T k k k k k Y | | | | | | | | | | | | ] / C N N M ",
+": , 3 M ~ ] | | | | | | | | | | | | | | | | T k k k k k k Y | | | | | | | | | | | | ] / C N N M ",
+": , 3 m ~ ] | | | | | | | | | | | | | | | T k k k k k k k Y | | | | | | | | | | | | ] / C N N M ",
+": , 3 m / ] | | | | | | | | | | | | | | T k k k k k k k k Y | | | | | | | | | | | | ] / C N N M ",
+": , 3 m ~ ] | | | | | | | | | | | | | R k k k l Y k k k k Y | | | | | | | | | | | | ] / C M B M ",
+": , 3 m ~ ] | | | | | | | | | | | | ( l k k k ( R k k k k Y | | | | | | | | | | | | ] / C N N M ",
+": , 3 M ~ ] | | | | | | | | | | | ( l k k k T | R k k k k Y | | | | | | | | | | | | ] / C N N M ",
+": , 3 m ~ ] | | | | | | | | | | ( l k k k T | | R k k k k Y | | | | | | | | | | | | ] / C N N M ",
+": , 3 m / ] | | | | | | | | | ( l k k k T | | | R k k k k Y | | | | | | | | | | | | ] / C M B M ",
+": , 3 m ~ ] | | | | | | | | | z k k k T | | | | R k k k k Y | | | | | | | | | | | | ] / C N N M ",
+": , 3 M ~ ] | | | | | | | | | k k k l Y Y Y Y Y c k k k k x Y Y Y ) | | | | | | | | ] / C N N M ",
+": , 3 m ~ ] | | | | | | | | | k k k k k k k k k k k k k k k k k k R | | | | | | | | ] / C N N M ",
+": , 3 m ~ ] | | | | | | | | | k k k k k k k k k k k k k k k k k k R | | | | | | | | ] / C M B M ",
+": , 2 M ~ ] | | | | | | | | | k k k k k k k k k k k k k k k k k k R | | | | | | | | ] / C N N M ",
+": , 3 m ~ ] | | | | | | | | | R R R R R R R R R Y k k k k c R R R [ | | | | | | | | ] / C N N M ",
+": , 3 m / ] | | | | | | | | | | | | | | | | | | R k k k k Y | | | | | | | | | | | | ] / C N N M ",
+": , 3 m ~ ] | | | | | | | | | | | | | | | | | | R k k k k Y | | | | | | | | | | | | ] / C M B M ",
+": , 3 M ~ ] | | | | | | | | | | | | | | | | | | R k k k k Y | | | | | | | | | | | | ] / C N N M ",
+": , 3 m ~ ] | | | | | | | | | | | | | | | | | | R k k k k Y | | | | | | | | | | | | ] / C N N M ",
+": , 3 m / ] | | | | | | | | | | | | | | | | | | R k k k k Y | | | | | | | | | | | | ] / C N N M ",
+": , 3 m ~ ] | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ] / C M B M ",
+": , 3 m ~ ] | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ] / C N N M ",
+": , 3 M ~ ] | | | | | | ^ f e ^ | | | | | | | | | | | | | p h | | | | | | H u | | | ] / C N N M ",
+": , 3 m ~ ] | | | | | E u d L | | | | | | | | | | | | | L e I | | | | | ' u h | | | ] / C N N M ",
+": , 3 m / ] | | | | _ u h | | | | | | | | | | | | | | | a i | | | | | | h e E | | | ] / C M B M ",
+": , 3 m ~ ] | | | | h u } | | | | | | | | | | | | | | ^ e H | | | | | _ e i | | | | ] / C N N M ",
+": , 3 M ~ ] | | | | u h E I P H u | | | | I a i | | | H e _ ^ d d | | h e H L i d | ] / C N N M ",
+": , 3 m ~ ] | | ^ u e e i H J u d v | | L e a a v | | d a _ u H _ | | e e a d d e | ] / C N N M ",
+": , 3 m ~ ] | | | h e _ | } i H H e | } i i } H e | | e v a v | | | I e u I | f a | ] / C M B M ",
+": , 2 M ~ ] | | | f a | | H e } h i | H e E | d i | E e a u } | | | v e ^ | L e K | ] / C N N M ",
+": , 3 m ~ ] | | | u v | | i a } u H | i a | E e H | H e e u } | | L p h | L e h | | ] / C N N M ",
+": , 3 m ~ ] | | _ e I | | e a h d | | e a I u h | | d i _ a a E h h e d f e h | | | ] / C M N M ",
+"- , 2 n ~ ] | | K e ' | | v u v ' | | v e d I | | | u H | _ i i H | v u d K | | | | ] ~ V M M M ",
+"- > 1 j ! ` ] ] g d ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ` ~ N m m m ",
+"% : , 1 F ! ~ ~ y G ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ! F 8 j b b ",
+"$ % - > > 3 4 s t 5 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 4 1 2 4 6 7 ",
+"@ # $ $ % % * r 0 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = - - : > , 1 ",
+". . o o o & e q O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O + @ # $ % ; ",
+" w 9 X O # "
+};
diff --git a/INSTALL b/INSTALL
new file mode 100644
index 0000000..9c4967e
--- /dev/null
+++ b/INSTALL
@@ -0,0 +1,74 @@
+How to compile and install fookb:
+
+0. The best way
+
+The best way is to install Debian Linux and use apt-get to install precompiled
+version of fookb :)
+
+1. Generating Makefile.
+
+./configure
+
+You may use ``./configure --prefix some_dir'' if you wish to install fookb in
+``some_dir'' -- not in ``/usr/local''. Icons will be placed under
+``some_dir/share/fookb'', manual page under ``some_dir/man/man1'', fookb
+itself under ``some_dir/bin''.
+
+E.g.: ./configure --prefix /usr/local/stow/fookb
+
+2. Fine tuning.
+
+[Read this section only if compilation process was unsuccessful]
+
+configure tries automagically decide: do you wish to compile WindowMaker
+dockable version of fookb and would you like use PropList-like configuration
+file or X resources for configuring fookb.
+
+If you have libPropList AND proplist.h we will try to compile
+libPropList-enabled version of fookb. If you want to compile libproplist-free
+version of fookb, run configure with --disable-libproplist argument.
+
+If you have wmaker in your $PATH, we will compile WindowMaker dockable verison
+of fookb. Run configure with --disable-wmaker to disable this behaviour.
+
+If you have no wmaker in your $PATH you still can compile WindowMaker dockable
+version of fookb. Run configure with --enable-wmaker.
+
+3. Compiling
+
+make
+
+If compilation was unsuccessful or you can get no satisfaction, read previous
+section.
+
+4. Installing
+
+make install
+
+5. Configuring fookb
+
+IF YOU COMPILED libPropList-version of fookb:
+
+Copy fookb.cf to ~/GNUstep/Defaults/FOOkb (for Window Maker enabled) or to
+~/.fookb (for Window Maker disabled version) and edit this file according to
+your desire.
+
+IF YOU COMPILED non-libPropList version of fookb:
+
+You should put the following resources in your
+/usr/X11R6/lib/X11/app-defaults/Fookb (or in other file which will be read by
+xrdb -- such as ~/.Xresources):
+
+fookb.icon1: xpm_file_with_full_path fookb.icon2: the same fookb.icon3: the
+same fookb.icon4: the same fookb.iconBoom: the same fookb.sound: Yes/No
+fookb.command: some_command (for playing sound)
+
+BOTH WAYS:
+
+Instead of putting parameter in config file you may use the following command
+line parameters:
+
+-icon1 xpm_file_with_full_path -icon2 the same -icon3 the same -icon4 the same
+-iconboom the same
+
+You may also use -display command line parameter.
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..ca9b659
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,135 @@
+License is "Artistic". Debian GNU/Linux may redistribute this program under
+GPL. Yes, I understand what does it mean (it means that anyone who get this
+program from Debian project can redistribute fookb under GPL). But do you
+understand what does this mean? It means that if you downloaded fookb from my
+site you cannot use GPL :)
+
+P.S. Yes, Debian is the best.
+P.P.S. No, there's no sense in this license.
+
+
+P.P.P.S. The "Artistic License"
+
+ Preamble
+
+The intent of this document is to state the conditions under which a
+Package may be copied, such that the Copyright Holder maintains some
+semblance of artistic control over the development of the Package,
+while giving the users of the package the right to use and distribute
+the Package in a more-or-less customary fashion, plus the right to make
+reasonable modifications.
+
+It also grants you the rights to reuse parts of a Package in your own
+programs without transferring this License to those programs, provided
+that you meet some reasonable requirements.
+
+Definitions:
+
+ "Package" refers to the collection of files distributed by the
+ Copyright Holder, and derivatives of that collection of files
+ created through textual modification.
+
+ "Standard Version" refers to such a Package if it has not been
+ modified, or has been modified in accordance with the wishes
+ of the Copyright Holder as specified below.
+
+ "Copyright Holder" is whoever is named in the copyright or
+ copyrights for the package.
+
+ "You" is you, if you're thinking about copying or distributing
+ this Package.
+
+ "Reasonable copying fee" is whatever you can justify on the
+ basis of media cost, duplication charges, time of people involved,
+ and so on. (You will not be required to justify it to the
+ Copyright Holder, but only to the computing community at large
+ as a market that must bear the fee.)
+
+ "Freely Available" means that no fee is charged for the item
+ itself, though there may be fees involved in handling the item.
+ It also means that recipients of the item may redistribute it
+ under the same conditions they received it.
+
+1. You may make and give away verbatim copies of the source form of the
+Standard Version of this Package without restriction, provided that you
+duplicate all of the original copyright notices and associated disclaimers.
+
+2. You may apply bug fixes, portability fixes and other modifications
+derived from the Public Domain or from the Copyright Holder. A Package
+modified in such a way shall still be considered the Standard Version.
+
+3. You may otherwise modify your copy of this Package in any way, provided
+that you insert a prominent notice in each changed file stating how and
+when you changed that file, and provided that you do at least ONE of the
+following:
+
+ a) place your modifications in the Public Domain or otherwise make them
+ Freely Available, such as by posting said modifications to Usenet or
+ an equivalent medium, or placing the modifications on a major archive
+ site such as uunet.uu.net, or by allowing the Copyright Holder to include
+ your modifications in the Standard Version of the Package.
+
+ b) use the modified Package only within your corporation or organization.
+
+ c) rename any non-standard executables so the names do not conflict
+ with standard executables, which must also be provided, and provide
+ a separate manual page for each non-standard executable that clearly
+ documents how it differs from the Standard Version.
+
+ d) make other distribution arrangements with the Copyright Holder.
+
+4. You may distribute the programs of this Package in object code or
+executable form, provided that you do at least ONE of the following:
+
+ a) distribute a Standard Version of the executables and library files,
+ together with instructions (in the manual page or equivalent) on where
+ to get the Standard Version.
+
+ b) accompany the distribution with the machine-readable source of
+ the Package with your modifications.
+
+ c) give non-standard executables non-standard names, and clearly
+ document the differences in manual pages (or equivalent), together
+ with instructions on where to get the Standard Version.
+
+ d) make other distribution arrangements with the Copyright Holder.
+
+5. You may charge a reasonable copying fee for any distribution of this
+Package. You may charge any fee you choose for support of this
+Package. You may not charge a fee for this Package itself. However,
+you may distribute this Package in aggregate with other (possibly
+commercial) programs as part of a larger (possibly commercial) software
+distribution provided that you do not advertise this Package as a
+product of your own.
+
+6. The scripts and library files supplied as input to or produced as
+output from the programs of this Package do not automatically fall
+under the copyright of this Package, but belong to whomever generated
+them, and may be sold commercially, and may be aggregated with this
+Package. If such scripts or library files are aggregated with this
+Package via the so-called "undump" or "unexec" methods of producing a
+binary executable image, then distribution of such an image shall
+neither be construed as a distribution of this Package nor shall it
+fall under the restrictions of Paragraphs 3 and 4, provided that you do
+not represent such an executable image as a Standard Version of this
+Package.
+
+7. You may reuse parts of this Package in your own programs, provided that
+you explicitly state where you got them from, in the source code (and, left
+to your courtesy, in the documentation), duplicating all the associated
+copyright notices and disclaimers. Besides your changes, if any, must be
+clearly marked as such. Parts reused that way will no longer fall under this
+license if, and only if, the name of your program(s) have no immediate
+connection with the name of the Package itself or its associated programs.
+You may then apply whatever restrictions you wish on the reused parts or
+choose to place them in the Public Domain--this will apply only within the
+context of your package.
+
+8. The name of the Copyright Holder may not be used to endorse or promote
+products derived from this software without specific prior written permission.
+
+9. THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR
+IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
+WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+
+ The End
diff --git a/Makefile.in b/Makefile.in
new file mode 100644
index 0000000..df1dbd7
--- /dev/null
+++ b/Makefile.in
@@ -0,0 +1,65 @@
+BIN_PATH=@prefix@/bin
+SHARE_PATH=@prefix@/share/fookb
+MAN_PATH=@prefix@/man/man1
+
+srcdir = ..
+
+# FLAGS=-Wall -g -DDEBUG @DEFS@
+FLAGS=-Wall @DEFS@
+
+GCC=@CC@
+
+INCLUDEDIR=@X_CFLAGS@
+
+LIBDIR=@X_LIBS@
+
+LIBS=@LIBS@
+
+# DEBUG
+# DLIBS=-lefence
+DLIBS=
+
+
+
+fookb: fookb.o params.o images.o sound.o opts.o globals.o
+ ${GCC} ${LIBDIR} ${DLIBS} ${LIBS} -o fookb fookb.o params.o images.o sound.o opts.o globals.o
+
+fookb.o: $(srcdir)/fookb.c $(srcdir)/fookb.h $(srcdir)/params.h
+ ${GCC} -c ${FLAGS} ${INCLUDEDIR} -I$(srcdir) $(srcdir)/fookb.c
+
+params.o: $(srcdir)/params.c $(srcdir)/params.h
+ ${GCC} -c ${FLAGS} ${INCLUDEDIR} -I$(srcdir) $(srcdir)/params.c
+
+images.o: $(srcdir)/images.c $(srcdir)/images.h
+ ${GCC} -c ${FLAGS} ${INCLUDEDIR} -I$(srcdir) $(srcdir)/images.c
+
+sound.o: $(srcdir)/sound.h $(srcdir)/sound.c $(srcdir)/params.h
+ ${GCC} -c ${FLAGS} ${INCLUDEDIR} -I$(srcdir) $(srcdir)/sound.c
+
+opts.o: $(srcdir)/opts.h $(srcdir)/fookb.h $(srcdir)/opts.c
+ ${GCC} -c ${FLAGS} ${INCLUDEDIR} -I$(srcdir) $(srcdir)/opts.c
+
+globals.o: $(srcdir)/globals.c
+ ${GCC} -c ${FLAGS} ${INCLUDEDIR} -I$(srcdir) $(srcdir)/globals.c
+
+
+clean:
+ rm -f fookb fookb.o params.o images.o sound.o opts.o globals.o
+
+superclean: clean
+ rm -f Makefile config.*
+
+install: fookb
+ # mkdir -p ${BIN_PATH}
+ #mkdir -p ${SHARE_PATH}
+ #mkdir -p ${MAN_PATH}
+ #cp fookb ${BIN_PATH}
+ cp $(srcdir)/1.xpm ${DESTDIR}${SHARE_PATH}
+ cp $(srcdir)/2.xpm ${DESTDIR}${SHARE_PATH}
+ cp $(srcdir)/3.xpm ${DESTDIR}${SHARE_PATH}
+ cp $(srcdir)/4.xpm ${DESTDIR}${SHARE_PATH}
+ cp $(srcdir)/rus.xpm ${DESTDIR}${SHARE_PATH}
+ cp $(srcdir)/lat.xpm ${DESTDIR}${SHARE_PATH}
+ cp $(srcdir)/boom.xpm ${DESTDIR}${SHARE_PATH}
+ cp $(srcdir)/beep_spring.au ${DESTDIR}${SHARE_PATH}
+ #cp fookb.1x ${MAN_PATH}
diff --git a/README b/README
new file mode 100644
index 0000000..36802a1
--- /dev/null
+++ b/README
@@ -0,0 +1,7 @@
+Icons was submitted by LionN <xpert at mail.ru>
+
+USER GUIDE
+
+Left click - next Xkb group
+Middle click - previous Xkb group
+Right click - exit
diff --git a/README.russian b/README.russian
new file mode 100644
index 0000000..4129486
--- /dev/null
+++ b/README.russian
@@ -0,0 +1,7 @@
+***** ���� ����� �� ��������� ���� README! *****
+
+���� �� ����� ��� ��������� �� ������, ����������� � �����-���� ����� (���
+����� �������� ���), �� ������ � ����, ��� ���������� �� ���������� �
+��������� fookb, ����������� � ���� ������, ��������!
+
+������� ��� ���, ��� �������� � INSTALL.
diff --git a/TODO b/TODO
new file mode 100644
index 0000000..5ea3442
--- /dev/null
+++ b/TODO
@@ -0,0 +1,5 @@
+To find English-speaking editor for all documentation.
+
+??? WINGs-based config utility for fookb.
+
+[This is a place for your suggestion.]
diff --git a/VERSION b/VERSION
new file mode 100644
index 0000000..4059702
--- /dev/null
+++ b/VERSION
@@ -0,0 +1,51 @@
+2.21-unstable
+
+One more step to the lint happiness.
+Some #include:s added. Why did it work before???
+
+2.20-unstable
+
+LICENSE was changed! Please read.
+
+--enable/disable-libproplist/wmaker options for configure.
+Some cosmetic changes to make lint happy (he's still very sad).
+Makefile.in was simplified (of course configure.in has some complex changes).
+
+2.13
+
+Seems to be stable version. Minor cosmetic changes.
+
+2.12-unstable
+
+Final (I hope) fixes in Makefile.in for non-proplist version.
+
+2.11-unstable
+
+Small error in Makefine.in for non-proplist version was fixed.
+
+2.1-unstable
+
+libPropList-free version. Command line parameters. X resource
+management. ``configure'' script. I hope non-WindowMaker version still
+work?
+
+0.9
+New icons for Xkb groups. Nasty bug was fixed: fookb plays sound twice
+if you change locked Xkb group with mouse. Documentation updates.
+0.8
+Fookb now can play sounds.
+0.7
+No more #define pixmaps. Configuration file in use.
+0.6
+No more #define NUMG
+0.5
+XpmReadFileToImage error check added.
+0.4
+No more ass. Window Maker support happened. I hope fookb still work
+w/o -DWMAKER.
+0.3
+The ass. Intended to be Window Maker support.
+0.2
+Support for all 4 Xkb groups
+0.1
+Basic functionality
diff --git a/beep_spring.au b/beep_spring.au
new file mode 100644
index 0000000..abdd9a2
Binary files /dev/null and b/beep_spring.au differ
diff --git a/boom.xpm b/boom.xpm
new file mode 100644
index 0000000..ca3b276
--- /dev/null
+++ b/boom.xpm
@@ -0,0 +1,158 @@
+/* XPM */
+static char *magick[] = {
+/* columns rows colors chars-per-pixel */
+"48 48 104 2",
+" c Gray0",
+". c #080000",
+"X c #080800",
+"o c #100800",
+"O c #101000",
+"+ c #181000",
+"@ c #181008",
+"# c #181808",
+"$ c #211808",
+"% c #291808",
+"& c #292108",
+"* c #312108",
+"= c #312908",
+"- c #312910",
+"; c #392910",
+": c #393110",
+"> c #423110",
+", c #4a3910",
+"< c #523910",
+"1 c #4a4218",
+"2 c #524218",
+"3 c #5a4218",
+"4 c #5a4a18",
+"5 c #634a18",
+"6 c #6b5218",
+"7 c #735221",
+"8 c #735a21",
+"9 c #7b5a21",
+"0 c #7b6321",
+"q c #846321",
+"w c #846b21",
+"e c #8c6b29",
+"r c #946b29",
+"t c #947329",
+"y c #9c7329",
+"u c #9c7b29",
+"i c #a56b29",
+"p c #a57b29",
+"a c #ce6b31",
+"s c #ce7331",
+"d c #ce7b31",
+"f c #d67331",
+"g c #a58429",
+"h c #ad8431",
+"j c #b58431",
+"k c #b58c31",
+"l c #bd8431",
+"z c #bd8c31",
+"x c #bd8c39",
+"c c #bd9431",
+"v c #bd9439",
+"b c #bd9c39",
+"n c #c68431",
+"m c #ce8c31",
+"M c #c69431",
+"N c #c69439",
+"B c #c69c39",
+"V c #ce9439",
+"C c #ce9c39",
+"Z c #d68431",
+"A c #d68c39",
+"S c #de8c31",
+"D c #d6a539",
+"F c #dea539",
+"G c #dead39",
+"H c #e79439",
+"J c #e79c31",
+"K c #e79c39",
+"L c #e7a539",
+"P c #e7ad39",
+"I c #efa539",
+"U c #c69c42",
+"Y c #ce9442",
+"T c #cea542",
+"R c #d6a542",
+"E c #d6ad42",
+"W c #dead42",
+"Q c #dead4a",
+"! c #e7ad42",
+"~ c #e7b542",
+"^ c #efb542",
+"/ c #efbd42",
+"( c #efbd4a",
+") c #e7b552",
+"_ c #f7b542",
+"` c #f7bd42",
+"' c #f7bd4a",
+"] c #ffb542",
+"[ c #ffbd42",
+"{ c #ffc642",
+"} c #ffc64a",
+"| c #f7c652",
+" . c #f7c65a",
+".. c #ffc652",
+"X. c #ffd65a",
+"o. c #ffde73",
+"O. c #ffe773",
+"+. c #ffe77b",
+"@. c #ffef84",
+"#. c #fff784",
+"$. c #ffff94",
+"%. c #ffff9c",
+"&. c #ffffbd",
+"*. c Gray100",
+/* pixels */
+"h M C G ~ ( ' | ..| ..| ..| ..| ..| ..| ..| ..| ..| ..| ..| ..| ..| ..| ..| ..| ....X.O.$.#.' ! ",
+"t h v C E .o.+. at .@. at .@. at .@. at .@. at .@. at .@. at .@. at .@. at .@. at .@. at .@. at .@. at .@. at .@. at .@. at .@. at .%.&.*.*.%.W C ",
+"9 e h k x N B C Y C Y C Y C Y C Y C Y C Y C Y C Y C Y C Y C Y C Y C Y C Y C Y C Y T Q ) ) D B c ",
+"6 0 e u h k c v c c c v c c c v c c c v c c c v c c c v c c c v c c c v c c c v c c c k k k k h ",
+"3 7 q e C ! ~ ! ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ! D h h h u ",
+"2 5 8 t G / ' ` ` ' ` ' ` ' ` ` ' ` ' ` ` ' ` ' ` ' ` ` ' ` ' ` ` ' ` ' ` ' ` ` } ` ` W h u u y ",
+"1 5 8 t W ` { } { } } { } { } } { } { } { } } { } { } } { } { } { } } { } { } } [ } ` W h y u t ",
+"< 4 8 e G ' } { } } { [ } [ } [ } [ } [ } [ } / z u j G } } ' [ } { [ } } [ } ` { ' ` ! p t y t ",
+"1 5 7 e ! ` { } } [ ' } } ' { } ' } ` } } } ~ 7 7 e 0 3 e ` } } } ` } } ` } } } } { ' G h t t t ",
+", 4 7 e W ` } [ } } [ } [ } } } [ } } [ ' } q 9 ` } } W 5 e } [ } } [ } [ } [ ` } [ ' W p t y t ",
+"1 4 6 t W ` } } } [ } ` } [ ' { ' [ } } { } 7 c } } } } / 2 h } [ ` } } } ` } } { ' ` G h t t t ",
+", 4 7 r W ` } [ } ` } } ' [ } [ } } } [ } } 8 p } [ } [ } z 2 ^ } } } } [ } [ ~ / } ` ~ p t t t ",
+", 5 7 e P ' } { } } [ ' { } } } } ` } ' ! W y t ~ ' } ` } } 7 q } } [ ' ` ` ( v W } ` W p t y t ",
+"1 4 6 t W ` } } [ } } [ } [ ` [ } [ } G t 9 7 9 t C } } [ } ~ 1 j } ` } [ H R b _ [ ` W h t t t ",
+", 4 8 e G ' { { } } ` } ' } } ' } } ' h 3 & $ & 2 q ! } } [ } N < ! _ H L H x S H } ` ! p t y t ",
+"1 4 7 e ! ` } } } } [ } [ } } { [ } [ t - @ @ @ $ 2 k ` } } [ } e 3 W H V A a H E N N D h y t t ",
+", 5 7 e G ' { } [ } [ ' } [ ' } } } } y - @ O @ $ , p ' } [ ' } ` 0 1 8 0 n f x U U R G p t t t ",
+"1 3 6 t W ` } { } [ } { } } [ } [ ! N 0 & @ o X @ - e ^ } } } [ } } D l i m s Z J { ` ! h t y t ",
+", 4 7 r W ` } } } } [ ' } { } ~ h 6 : $ @ X X X o - 7 k C ~ } } } } ] d a s n U ^ [ ` W p t t t ",
+"1 4 8 e G ' } [ } ` } } [ } C 7 - X X . X o # ; > 8 M } [ } ' K A Y A N x / ' G h y t t ",
+", 5 7 e ! ` { } } } [ } } W 7 # . X o o X X X X X X o @ 2 k ` } } } ! Y I I / ' ` W p t t t ",
+"1 3 6 t W ` } [ } [ ' } D e : + X . X @ $ & & @ o X . X X @ 1 z _ } } ^ U ' } } { ` W g t y t ",
+", 4 7 e G ' { } } } } ! t 3 - $ @ & - & $ & & @ X X X . . X X @ 5 c ` } ( x ` { [ ` ` ! p y t t ",
+"1 4 8 e ! ` } } [ } ` h 1 & % - 2 7 5 & @ o @ o X X X X X . X & e _ } ` ^ ' } } } ' G h t t t ",
+", 5 7 e G ' { } } } D 9 - $ $ 1 q t 7 : $ X @ @ o X X . X X . X X 2 W } } } } [ ` { ` W p t y t ",
+"1 3 6 t W ` } [ } } N 3 % $ % 5 h t 8 3 - @ @ # @ o X . X X X & h [ } [ } } } ' ` ~ p t t t ",
+", 4 7 r G ' } { } ` h > @ @ - 5 u t 7 7 ; # @ $ $ o X X X . X @ q ' } [ } ` [ } ` W h t y t ",
+"1 4 8 e W ' { } } ` t - # # & : 7 7 1 : & $ $ - # X X X X X 3 G } ' [ } } ` ` W p t t t ",
+", 5 7 e P ` } } [ ' e * @ @ & - - = - % $ - * * @ X . . X . X X X > C } { } [ ` } ' G h t y t ",
+"1 3 6 t W ` { } } ` e - @ @ ; ; $ % - & & & # X . X X X . & k } } } } [ ` ` W p t t t ",
+", 4 7 e G ' } { } ' h > @ $ : , - > > - $ @ . X X X X @ r } } [ ' } } ` W h t y t ",
+"1 4 8 e ! ` } [ } } D 2 @ $ - - % - - - @ X o X X o X $ y } [ } } ` { ` ! p t t t ",
+", 5 7 e G ' { } } [ / q $ @ # $ @ o @ @ O o X X X X . X X . : v } } ` } [ ' ` W g t y t ",
+"1 3 6 t W ` } [ } } } v > @ o # $ @ O X X X X . . . X X 7 ! } [ } [ } { ' G p t t t ",
+", 4 7 r W ' { } } [ } ^ q & O @ $ $ @ . X X X X ; h ` } ' } } ` } ` W h t y t ",
+"1 4 8 e G ` { } [ } } } N 1 @ o # $ @ X . X o X X $ e ` } } [ } [ ` } ` ! p t t t ",
+", 5 7 e ! ' } { } ` [ } ` h ; o X @ O o o X o # @ O o X X . $ q ^ } [ ` } } ` } [ ` W h t y t ",
+"1 3 6 t G ' { } } } ' { } ^ p 1 @ X X X @ o @ @ @ X X . X @ > u ~ } } } } [ } } ` } ` G p t t t ",
+", 4 7 e W ` } [ } } [ } [ } ' h 5 & @ . X X X @ & 7 N ' } } [ [ } ' } [ } { ' W h t y t ",
+"1 4 8 e ! ` } { } ' [ } ' [ } [ R u 4 ; $ @ X @ @ & : 7 h W } { } [ } ' [ } { ' [ ' ` ! p t t t ",
+", 5 7 e G ' { } [ { } ` { } ` } } } W v t e 7 6 q h C / } { } ` } ` } [ ' { ' { { } ` G p t y t ",
+"1 3 6 e W ` } } } ` } [ ' } { ` { [ } { } ` / ^ ` } } { } } [ } [ ' { } { ` } } ` ` ' W p t t t ",
+"> 2 5 q D ^ ` ` ` ' ` ' ` ` ' ' ' ' ` ' ` ' ` ' ' ` ` ' ` ` ' ` ' ` ` ' ` ' ` ` ' ` / W t e e e ",
+"> 2 4 5 c D W F W G W G W F W G G G F W F W G W G F W W F W F W G W F W F W F W F W D v 0 q e w ",
+"- : 1 2 3 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 5 7 7 8 9 ",
+"$ % - ; ; : > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > , 1 2 4 5 ",
+"X o @ + @ $ # @ $ @ # $ @ # $ # @ $ # # $ # # $ @ # $ # @ $ # # $ # # $ # # $ # # $ $ $ & - > , ",
+" . o @ & "
+};
diff --git a/build-stamp b/build-stamp
new file mode 100644
index 0000000..e69de29
diff --git a/configure b/configure
new file mode 100755
index 0000000..1711998
--- /dev/null
+++ b/configure
@@ -0,0 +1,2274 @@
+#! /bin/sh
+
+# Guess values for system-dependent variables and create Makefiles.
+# Generated automatically using autoconf version 2.13
+# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
+#
+# This configure script is free software; the Free Software Foundation
+# gives unlimited permission to copy, distribute and modify it.
+
+# Defaults:
+ac_help=
+ac_default_prefix=/usr/local
+# Any additions from configure.in:
+ac_help="$ac_help
+ --with-x use the X Window System"
+ac_help="$ac_help
+--enable-libproplist Try to compile libproplist-enabled version"
+ac_help="$ac_help
+--enable-wmaker Create windowmaker dockable application"
+
+# Initialize some variables set by options.
+# The variables have the same names as the options, with
+# dashes changed to underlines.
+build=NONE
+cache_file=./config.cache
+exec_prefix=NONE
+host=NONE
+no_create=
+nonopt=NONE
+no_recursion=
+prefix=NONE
+program_prefix=NONE
+program_suffix=NONE
+program_transform_name=s,x,x,
+silent=
+site=
+srcdir=
+target=NONE
+verbose=
+x_includes=NONE
+x_libraries=NONE
+bindir='${exec_prefix}/bin'
+sbindir='${exec_prefix}/sbin'
+libexecdir='${exec_prefix}/libexec'
+datadir='${prefix}/share'
+sysconfdir='${prefix}/etc'
+sharedstatedir='${prefix}/com'
+localstatedir='${prefix}/var'
+libdir='${exec_prefix}/lib'
+includedir='${prefix}/include'
+oldincludedir='/usr/include'
+infodir='${prefix}/info'
+mandir='${prefix}/man'
+
+# Initialize some other variables.
+subdirs=
+MFLAGS= MAKEFLAGS=
+SHELL=${CONFIG_SHELL-/bin/sh}
+# Maximum number of lines to put in a shell here document.
+ac_max_here_lines=12
+
+ac_prev=
+for ac_option
+do
+
+ # If the previous option needs an argument, assign it.
+ if test -n "$ac_prev"; then
+ eval "$ac_prev=\$ac_option"
+ ac_prev=
+ continue
+ fi
+
+ case "$ac_option" in
+ -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
+ *) ac_optarg= ;;
+ esac
+
+ # Accept the important Cygnus configure options, so we can diagnose typos.
+
+ case "$ac_option" in
+
+ -bindir | --bindir | --bindi | --bind | --bin | --bi)
+ ac_prev=bindir ;;
+ -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
+ bindir="$ac_optarg" ;;
+
+ -build | --build | --buil | --bui | --bu)
+ ac_prev=build ;;
+ -build=* | --build=* | --buil=* | --bui=* | --bu=*)
+ build="$ac_optarg" ;;
+
+ -cache-file | --cache-file | --cache-fil | --cache-fi \
+ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
+ ac_prev=cache_file ;;
+ -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
+ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
+ cache_file="$ac_optarg" ;;
+
+ -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
+ ac_prev=datadir ;;
+ -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
+ | --da=*)
+ datadir="$ac_optarg" ;;
+
+ -disable-* | --disable-*)
+ ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
+ # Reject names that are not valid shell variable names.
+ if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then
+ { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
+ fi
+ ac_feature=`echo $ac_feature| sed 's/-/_/g'`
+ eval "enable_${ac_feature}=no" ;;
+
+ -enable-* | --enable-*)
+ ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'`
+ # Reject names that are not valid shell variable names.
+ if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then
+ { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
+ fi
+ ac_feature=`echo $ac_feature| sed 's/-/_/g'`
+ case "$ac_option" in
+ *=*) ;;
+ *) ac_optarg=yes ;;
+ esac
+ eval "enable_${ac_feature}='$ac_optarg'" ;;
+
+ -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
+ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
+ | --exec | --exe | --ex)
+ ac_prev=exec_prefix ;;
+ -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
+ | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
+ | --exec=* | --exe=* | --ex=*)
+ exec_prefix="$ac_optarg" ;;
+
+ -gas | --gas | --ga | --g)
+ # Obsolete; use --with-gas.
+ with_gas=yes ;;
+
+ -help | --help | --hel | --he)
+ # Omit some internal or obsolete options to make the list less imposing.
+ # This message is too long to be a string in the A/UX 3.1 sh.
+ cat << EOF
+Usage: configure [options] [host]
+Options: [defaults in brackets after descriptions]
+Configuration:
+ --cache-file=FILE cache test results in FILE
+ --help print this message
+ --no-create do not create output files
+ --quiet, --silent do not print \`checking...' messages
+ --version print the version of autoconf that created configure
+Directory and file names:
+ --prefix=PREFIX install architecture-independent files in PREFIX
+ [$ac_default_prefix]
+ --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
+ [same as prefix]
+ --bindir=DIR user executables in DIR [EPREFIX/bin]
+ --sbindir=DIR system admin executables in DIR [EPREFIX/sbin]
+ --libexecdir=DIR program executables in DIR [EPREFIX/libexec]
+ --datadir=DIR read-only architecture-independent data in DIR
+ [PREFIX/share]
+ --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc]
+ --sharedstatedir=DIR modifiable architecture-independent data in DIR
+ [PREFIX/com]
+ --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var]
+ --libdir=DIR object code libraries in DIR [EPREFIX/lib]
+ --includedir=DIR C header files in DIR [PREFIX/include]
+ --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include]
+ --infodir=DIR info documentation in DIR [PREFIX/info]
+ --mandir=DIR man documentation in DIR [PREFIX/man]
+ --srcdir=DIR find the sources in DIR [configure dir or ..]
+ --program-prefix=PREFIX prepend PREFIX to installed program names
+ --program-suffix=SUFFIX append SUFFIX to installed program names
+ --program-transform-name=PROGRAM
+ run sed PROGRAM on installed program names
+EOF
+ cat << EOF
+Host type:
+ --build=BUILD configure for building on BUILD [BUILD=HOST]
+ --host=HOST configure for HOST [guessed]
+ --target=TARGET configure for TARGET [TARGET=HOST]
+Features and packages:
+ --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
+ --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
+ --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
+ --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
+ --x-includes=DIR X include files are in DIR
+ --x-libraries=DIR X library files are in DIR
+EOF
+ if test -n "$ac_help"; then
+ echo "--enable and --with options recognized:$ac_help"
+ fi
+ exit 0 ;;
+
+ -host | --host | --hos | --ho)
+ ac_prev=host ;;
+ -host=* | --host=* | --hos=* | --ho=*)
+ host="$ac_optarg" ;;
+
+ -includedir | --includedir | --includedi | --included | --include \
+ | --includ | --inclu | --incl | --inc)
+ ac_prev=includedir ;;
+ -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
+ | --includ=* | --inclu=* | --incl=* | --inc=*)
+ includedir="$ac_optarg" ;;
+
+ -infodir | --infodir | --infodi | --infod | --info | --inf)
+ ac_prev=infodir ;;
+ -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
+ infodir="$ac_optarg" ;;
+
+ -libdir | --libdir | --libdi | --libd)
+ ac_prev=libdir ;;
+ -libdir=* | --libdir=* | --libdi=* | --libd=*)
+ libdir="$ac_optarg" ;;
+
+ -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
+ | --libexe | --libex | --libe)
+ ac_prev=libexecdir ;;
+ -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
+ | --libexe=* | --libex=* | --libe=*)
+ libexecdir="$ac_optarg" ;;
+
+ -localstatedir | --localstatedir | --localstatedi | --localstated \
+ | --localstate | --localstat | --localsta | --localst \
+ | --locals | --local | --loca | --loc | --lo)
+ ac_prev=localstatedir ;;
+ -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
+ | --localstate=* | --localstat=* | --localsta=* | --localst=* \
+ | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
+ localstatedir="$ac_optarg" ;;
+
+ -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
+ ac_prev=mandir ;;
+ -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
+ mandir="$ac_optarg" ;;
+
+ -nfp | --nfp | --nf)
+ # Obsolete; use --without-fp.
+ with_fp=no ;;
+
+ -no-create | --no-create | --no-creat | --no-crea | --no-cre \
+ | --no-cr | --no-c)
+ no_create=yes ;;
+
+ -no-recursion | --no-recursion | --no-recursio | --no-recursi \
+ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
+ no_recursion=yes ;;
+
+ -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
+ | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
+ | --oldin | --oldi | --old | --ol | --o)
+ ac_prev=oldincludedir ;;
+ -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
+ | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
+ | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
+ oldincludedir="$ac_optarg" ;;
+
+ -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
+ ac_prev=prefix ;;
+ -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
+ prefix="$ac_optarg" ;;
+
+ -program-prefix | --program-prefix | --program-prefi | --program-pref \
+ | --program-pre | --program-pr | --program-p)
+ ac_prev=program_prefix ;;
+ -program-prefix=* | --program-prefix=* | --program-prefi=* \
+ | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
+ program_prefix="$ac_optarg" ;;
+
+ -program-suffix | --program-suffix | --program-suffi | --program-suff \
+ | --program-suf | --program-su | --program-s)
+ ac_prev=program_suffix ;;
+ -program-suffix=* | --program-suffix=* | --program-suffi=* \
+ | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
+ program_suffix="$ac_optarg" ;;
+
+ -program-transform-name | --program-transform-name \
+ | --program-transform-nam | --program-transform-na \
+ | --program-transform-n | --program-transform- \
+ | --program-transform | --program-transfor \
+ | --program-transfo | --program-transf \
+ | --program-trans | --program-tran \
+ | --progr-tra | --program-tr | --program-t)
+ ac_prev=program_transform_name ;;
+ -program-transform-name=* | --program-transform-name=* \
+ | --program-transform-nam=* | --program-transform-na=* \
+ | --program-transform-n=* | --program-transform-=* \
+ | --program-transform=* | --program-transfor=* \
+ | --program-transfo=* | --program-transf=* \
+ | --program-trans=* | --program-tran=* \
+ | --progr-tra=* | --program-tr=* | --program-t=*)
+ program_transform_name="$ac_optarg" ;;
+
+ -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+ | -silent | --silent | --silen | --sile | --sil)
+ silent=yes ;;
+
+ -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
+ ac_prev=sbindir ;;
+ -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
+ | --sbi=* | --sb=*)
+ sbindir="$ac_optarg" ;;
+
+ -sharedstatedir | --sharedstatedir | --sharedstatedi \
+ | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
+ | --sharedst | --shareds | --shared | --share | --shar \
+ | --sha | --sh)
+ ac_prev=sharedstatedir ;;
+ -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
+ | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
+ | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
+ | --sha=* | --sh=*)
+ sharedstatedir="$ac_optarg" ;;
+
+ -site | --site | --sit)
+ ac_prev=site ;;
+ -site=* | --site=* | --sit=*)
+ site="$ac_optarg" ;;
+
+ -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
+ ac_prev=srcdir ;;
+ -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
+ srcdir="$ac_optarg" ;;
+
+ -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
+ | --syscon | --sysco | --sysc | --sys | --sy)
+ ac_prev=sysconfdir ;;
+ -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
+ | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
+ sysconfdir="$ac_optarg" ;;
+
+ -target | --target | --targe | --targ | --tar | --ta | --t)
+ ac_prev=target ;;
+ -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
+ target="$ac_optarg" ;;
+
+ -v | -verbose | --verbose | --verbos | --verbo | --verb)
+ verbose=yes ;;
+
+ -version | --version | --versio | --versi | --vers)
+ echo "configure generated by autoconf version 2.13"
+ exit 0 ;;
+
+ -with-* | --with-*)
+ ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'`
+ # Reject names that are not valid shell variable names.
+ if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then
+ { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
+ fi
+ ac_package=`echo $ac_package| sed 's/-/_/g'`
+ case "$ac_option" in
+ *=*) ;;
+ *) ac_optarg=yes ;;
+ esac
+ eval "with_${ac_package}='$ac_optarg'" ;;
+
+ -without-* | --without-*)
+ ac_package=`echo $ac_option|sed -e 's/-*without-//'`
+ # Reject names that are not valid shell variable names.
+ if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then
+ { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
+ fi
+ ac_package=`echo $ac_package| sed 's/-/_/g'`
+ eval "with_${ac_package}=no" ;;
+
+ --x)
+ # Obsolete; use --with-x.
+ with_x=yes ;;
+
+ -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
+ | --x-incl | --x-inc | --x-in | --x-i)
+ ac_prev=x_includes ;;
+ -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
+ | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
+ x_includes="$ac_optarg" ;;
+
+ -x-libraries | --x-libraries | --x-librarie | --x-librari \
+ | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
+ ac_prev=x_libraries ;;
+ -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
+ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
+ x_libraries="$ac_optarg" ;;
+
+ -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
+ ;;
+
+ *)
+ if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
+ echo "configure: warning: $ac_option: invalid host type" 1>&2
+ fi
+ if test "x$nonopt" != xNONE; then
+ { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; }
+ fi
+ nonopt="$ac_option"
+ ;;
+
+ esac
+done
+
+if test -n "$ac_prev"; then
+ { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; }
+fi
+
+trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
+
+# File descriptor usage:
+# 0 standard input
+# 1 file creation
+# 2 errors and warnings
+# 3 some systems may open it to /dev/tty
+# 4 used on the Kubota Titan
+# 6 checking for... messages and results
+# 5 compiler messages saved in config.log
+if test "$silent" = yes; then
+ exec 6>/dev/null
+else
+ exec 6>&1
+fi
+exec 5>./config.log
+
+echo "\
+This file contains any messages produced by compilers while
+running configure, to aid debugging if configure makes a mistake.
+" 1>&5
+
+# Strip out --no-create and --no-recursion so they do not pile up.
+# Also quote any args containing shell metacharacters.
+ac_configure_args=
+for ac_arg
+do
+ case "$ac_arg" in
+ -no-create | --no-create | --no-creat | --no-crea | --no-cre \
+ | --no-cr | --no-c) ;;
+ -no-recursion | --no-recursion | --no-recursio | --no-recursi \
+ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
+ *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
+ ac_configure_args="$ac_configure_args '$ac_arg'" ;;
+ *) ac_configure_args="$ac_configure_args $ac_arg" ;;
+ esac
+done
+
+# NLS nuisances.
+# Only set these to C if already set. These must not be set unconditionally
+# because not all systems understand e.g. LANG=C (notably SCO).
+# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
+# Non-C LC_CTYPE values break the ctype check.
+if test "${LANG+set}" = set; then LANG=C; export LANG; fi
+if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
+if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
+if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
+
+# confdefs.h avoids OS command line length limits that DEFS can exceed.
+rm -rf conftest* confdefs.h
+# AIX cpp loses on an empty file, so make sure it contains at least a newline.
+echo > confdefs.h
+
+# A filename unique to this package, relative to the directory that
+# configure is in, which we can look for to find out if srcdir is correct.
+ac_unique_file=fookb.c
+
+# Find the source files, if location was not specified.
+if test -z "$srcdir"; then
+ ac_srcdir_defaulted=yes
+ # Try the directory containing this script, then its parent.
+ ac_prog=$0
+ ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'`
+ test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
+ srcdir=$ac_confdir
+ if test ! -r $srcdir/$ac_unique_file; then
+ srcdir=..
+ fi
+else
+ ac_srcdir_defaulted=no
+fi
+if test ! -r $srcdir/$ac_unique_file; then
+ if test "$ac_srcdir_defaulted" = yes; then
+ { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; }
+ else
+ { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; }
+ fi
+fi
+srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
+
+# Prefer explicitly selected file to automatically selected ones.
+if test -z "$CONFIG_SITE"; then
+ if test "x$prefix" != xNONE; then
+ CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
+ else
+ CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
+ fi
+fi
+for ac_site_file in $CONFIG_SITE; do
+ if test -r "$ac_site_file"; then
+ echo "loading site script $ac_site_file"
+ . "$ac_site_file"
+ fi
+done
+
+if test -r "$cache_file"; then
+ echo "loading cache $cache_file"
+ . $cache_file
+else
+ echo "creating cache $cache_file"
+ > $cache_file
+fi
+
+ac_ext=c
+# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
+ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
+cross_compiling=$ac_cv_prog_cc_cross
+
+ac_exeext=
+ac_objext=o
+if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
+ # Stardent Vistra SVR4 grep lacks -e, says ghazi at caip.rutgers.edu.
+ if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
+ ac_n= ac_c='
+' ac_t=' '
+ else
+ ac_n=-n ac_c= ac_t=
+ fi
+else
+ ac_n= ac_c='\c' ac_t=
+fi
+
+
+
+
+# Extract the first word of "gcc", so it can be a program name with args.
+set dummy gcc; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:536: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
+ ac_dummy="$PATH"
+ for ac_dir in $ac_dummy; do
+ test -z "$ac_dir" && ac_dir=.
+ if test -f $ac_dir/$ac_word; then
+ ac_cv_prog_CC="gcc"
+ break
+ fi
+ done
+ IFS="$ac_save_ifs"
+fi
+fi
+CC="$ac_cv_prog_CC"
+if test -n "$CC"; then
+ echo "$ac_t""$CC" 1>&6
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+if test -z "$CC"; then
+ # Extract the first word of "cc", so it can be a program name with args.
+set dummy cc; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:566: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
+ ac_prog_rejected=no
+ ac_dummy="$PATH"
+ for ac_dir in $ac_dummy; do
+ test -z "$ac_dir" && ac_dir=.
+ if test -f $ac_dir/$ac_word; then
+ if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
+ ac_prog_rejected=yes
+ continue
+ fi
+ ac_cv_prog_CC="cc"
+ break
+ fi
+ done
+ IFS="$ac_save_ifs"
+if test $ac_prog_rejected = yes; then
+ # We found a bogon in the path, so make sure we never use it.
+ set dummy $ac_cv_prog_CC
+ shift
+ if test $# -gt 0; then
+ # We chose a different compiler from the bogus one.
+ # However, it has the same basename, so the bogon will be chosen
+ # first if we set CC to just the basename; use the full file name.
+ shift
+ set dummy "$ac_dir/$ac_word" "$@"
+ shift
+ ac_cv_prog_CC="$@"
+ fi
+fi
+fi
+fi
+CC="$ac_cv_prog_CC"
+if test -n "$CC"; then
+ echo "$ac_t""$CC" 1>&6
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+ if test -z "$CC"; then
+ case "`uname -s`" in
+ *win32* | *WIN32*)
+ # Extract the first word of "cl", so it can be a program name with args.
+set dummy cl; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:617: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
+ ac_dummy="$PATH"
+ for ac_dir in $ac_dummy; do
+ test -z "$ac_dir" && ac_dir=.
+ if test -f $ac_dir/$ac_word; then
+ ac_cv_prog_CC="cl"
+ break
+ fi
+ done
+ IFS="$ac_save_ifs"
+fi
+fi
+CC="$ac_cv_prog_CC"
+if test -n "$CC"; then
+ echo "$ac_t""$CC" 1>&6
+else
+ echo "$ac_t""no" 1>&6
+fi
+ ;;
+ esac
+ fi
+ test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; }
+fi
+
+echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
+echo "configure:649: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+
+ac_ext=c
+# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
+ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
+cross_compiling=$ac_cv_prog_cc_cross
+
+cat > conftest.$ac_ext << EOF
+
+#line 660 "configure"
+#include "confdefs.h"
+
+main(){return(0);}
+EOF
+if { (eval echo configure:665: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ ac_cv_prog_cc_works=yes
+ # If we can't run a trivial program, we are probably using a cross compiler.
+ if (./conftest; exit) 2>/dev/null; then
+ ac_cv_prog_cc_cross=no
+ else
+ ac_cv_prog_cc_cross=yes
+ fi
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ ac_cv_prog_cc_works=no
+fi
+rm -fr conftest*
+ac_ext=c
+# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
+ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
+cross_compiling=$ac_cv_prog_cc_cross
+
+echo "$ac_t""$ac_cv_prog_cc_works" 1>&6
+if test $ac_cv_prog_cc_works = no; then
+ { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
+fi
+echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
+echo "configure:691: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
+cross_compiling=$ac_cv_prog_cc_cross
+
+echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
+echo "configure:696: checking whether we are using GNU C" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ cat > conftest.c <<EOF
+#ifdef __GNUC__
+ yes;
+#endif
+EOF
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:705: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+ ac_cv_prog_gcc=yes
+else
+ ac_cv_prog_gcc=no
+fi
+fi
+
+echo "$ac_t""$ac_cv_prog_gcc" 1>&6
+
+if test $ac_cv_prog_gcc = yes; then
+ GCC=yes
+else
+ GCC=
+fi
+
+ac_test_CFLAGS="${CFLAGS+set}"
+ac_save_CFLAGS="$CFLAGS"
+CFLAGS=
+echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
+echo "configure:724: checking whether ${CC-cc} accepts -g" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ echo 'void f(){}' > conftest.c
+if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then
+ ac_cv_prog_cc_g=yes
+else
+ ac_cv_prog_cc_g=no
+fi
+rm -f conftest*
+
+fi
+
+echo "$ac_t""$ac_cv_prog_cc_g" 1>&6
+if test "$ac_test_CFLAGS" = set; then
+ CFLAGS="$ac_save_CFLAGS"
+elif test $ac_cv_prog_cc_g = yes; then
+ if test "$GCC" = yes; then
+ CFLAGS="-g -O2"
+ else
+ CFLAGS="-g"
+ fi
+else
+ if test "$GCC" = yes; then
+ CFLAGS="-O2"
+ else
+ CFLAGS=
+ fi
+fi
+
+
+
+echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
+echo "configure:758: checking how to run the C preprocessor" >&5
+# On Suns, sometimes $CPP names a directory.
+if test -n "$CPP" && test -d "$CPP"; then
+ CPP=
+fi
+if test -z "$CPP"; then
+if eval "test \"`echo '$''{'ac_cv_prog_CPP'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ # This must be in double quotes, not single quotes, because CPP may get
+ # substituted into the Makefile and "${CC-cc}" will confuse make.
+ CPP="${CC-cc} -E"
+ # On the NeXT, cc -E runs the code through the compiler's parser,
+ # not just through cpp.
+ cat > conftest.$ac_ext <<EOF
+#line 773 "configure"
+#include "confdefs.h"
+#include <assert.h>
+Syntax Error
+EOF
+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+{ (eval echo configure:779: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+if test -z "$ac_err"; then
+ :
+else
+ echo "$ac_err" >&5
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ CPP="${CC-cc} -E -traditional-cpp"
+ cat > conftest.$ac_ext <<EOF
+#line 790 "configure"
+#include "confdefs.h"
+#include <assert.h>
+Syntax Error
+EOF
+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+{ (eval echo configure:796: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+if test -z "$ac_err"; then
+ :
+else
+ echo "$ac_err" >&5
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ CPP="${CC-cc} -nologo -E"
+ cat > conftest.$ac_ext <<EOF
+#line 807 "configure"
+#include "confdefs.h"
+#include <assert.h>
+Syntax Error
+EOF
+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+{ (eval echo configure:813: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+if test -z "$ac_err"; then
+ :
+else
+ echo "$ac_err" >&5
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ CPP=/lib/cpp
+fi
+rm -f conftest*
+fi
+rm -f conftest*
+fi
+rm -f conftest*
+ ac_cv_prog_CPP="$CPP"
+fi
+ CPP="$ac_cv_prog_CPP"
+else
+ ac_cv_prog_CPP="$CPP"
+fi
+echo "$ac_t""$CPP" 1>&6
+
+# If we find X, set shell vars x_includes and x_libraries to the
+# paths, otherwise set no_x=yes.
+# Uses ac_ vars as temps to allow command line to override cache and checks.
+# --without-x overrides everything else, but does not touch the cache.
+echo $ac_n "checking for X""... $ac_c" 1>&6
+echo "configure:842: checking for X" >&5
+
+# Check whether --with-x or --without-x was given.
+if test "${with_x+set}" = set; then
+ withval="$with_x"
+ :
+fi
+
+# $have_x is `yes', `no', `disabled', or empty when we do not yet know.
+if test "x$with_x" = xno; then
+ # The user explicitly disabled X.
+ have_x=disabled
+else
+ if test "x$x_includes" != xNONE && test "x$x_libraries" != xNONE; then
+ # Both variables are already set.
+ have_x=yes
+ else
+if eval "test \"`echo '$''{'ac_cv_have_x'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ # One or both of the vars are not set, and there is no cached value.
+ac_x_includes=NO ac_x_libraries=NO
+rm -fr conftestdir
+if mkdir conftestdir; then
+ cd conftestdir
+ # Make sure to not put "make" in the Imakefile rules, since we grep it out.
+ cat > Imakefile <<'EOF'
+acfindx:
+ @echo 'ac_im_incroot="${INCROOT}"; ac_im_usrlibdir="${USRLIBDIR}"; ac_im_libdir="${LIBDIR}"'
+EOF
+ if (xmkmf) >/dev/null 2>/dev/null && test -f Makefile; then
+ # GNU make sometimes prints "make[1]: Entering...", which would confuse us.
+ eval `${MAKE-make} acfindx 2>/dev/null | grep -v make`
+ # Open Windows xmkmf reportedly sets LIBDIR instead of USRLIBDIR.
+ for ac_extension in a so sl; do
+ if test ! -f $ac_im_usrlibdir/libX11.$ac_extension &&
+ test -f $ac_im_libdir/libX11.$ac_extension; then
+ ac_im_usrlibdir=$ac_im_libdir; break
+ fi
+ done
+ # Screen out bogus values from the imake configuration. They are
+ # bogus both because they are the default anyway, and because
+ # using them would break gcc on systems where it needs fixed includes.
+ case "$ac_im_incroot" in
+ /usr/include) ;;
+ *) test -f "$ac_im_incroot/X11/Xos.h" && ac_x_includes="$ac_im_incroot" ;;
+ esac
+ case "$ac_im_usrlibdir" in
+ /usr/lib | /lib) ;;
+ *) test -d "$ac_im_usrlibdir" && ac_x_libraries="$ac_im_usrlibdir" ;;
+ esac
+ fi
+ cd ..
+ rm -fr conftestdir
+fi
+
+if test "$ac_x_includes" = NO; then
+ # Guess where to find include files, by looking for this one X11 .h file.
+ test -z "$x_direct_test_include" && x_direct_test_include=X11/Intrinsic.h
+
+ # First, try using that file with no special directory specified.
+cat > conftest.$ac_ext <<EOF
+#line 904 "configure"
+#include "confdefs.h"
+#include <$x_direct_test_include>
+EOF
+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+{ (eval echo configure:909: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+if test -z "$ac_err"; then
+ rm -rf conftest*
+ # We can compile using X headers with no special include directory.
+ac_x_includes=
+else
+ echo "$ac_err" >&5
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ # Look for the header file in a standard set of common directories.
+# Check X11 before X11Rn because it is often a symlink to the current release.
+ for ac_dir in \
+ /usr/X11/include \
+ /usr/X11R6/include \
+ /usr/X11R5/include \
+ /usr/X11R4/include \
+ \
+ /usr/include/X11 \
+ /usr/include/X11R6 \
+ /usr/include/X11R5 \
+ /usr/include/X11R4 \
+ \
+ /usr/local/X11/include \
+ /usr/local/X11R6/include \
+ /usr/local/X11R5/include \
+ /usr/local/X11R4/include \
+ \
+ /usr/local/include/X11 \
+ /usr/local/include/X11R6 \
+ /usr/local/include/X11R5 \
+ /usr/local/include/X11R4 \
+ \
+ /usr/X386/include \
+ /usr/x386/include \
+ /usr/XFree86/include/X11 \
+ \
+ /usr/include \
+ /usr/local/include \
+ /usr/unsupported/include \
+ /usr/athena/include \
+ /usr/local/x11r5/include \
+ /usr/lpp/Xamples/include \
+ \
+ /usr/openwin/include \
+ /usr/openwin/share/include \
+ ; \
+ do
+ if test -r "$ac_dir/$x_direct_test_include"; then
+ ac_x_includes=$ac_dir
+ break
+ fi
+ done
+fi
+rm -f conftest*
+fi # $ac_x_includes = NO
+
+if test "$ac_x_libraries" = NO; then
+ # Check for the libraries.
+
+ test -z "$x_direct_test_library" && x_direct_test_library=Xt
+ test -z "$x_direct_test_function" && x_direct_test_function=XtMalloc
+
+ # See if we find them without any special options.
+ # Don't add to $LIBS permanently.
+ ac_save_LIBS="$LIBS"
+ LIBS="-l$x_direct_test_library $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 978 "configure"
+#include "confdefs.h"
+
+int main() {
+${x_direct_test_function}()
+; return 0; }
+EOF
+if { (eval echo configure:985: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ LIBS="$ac_save_LIBS"
+# We can link X programs with no special library path.
+ac_x_libraries=
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ LIBS="$ac_save_LIBS"
+# First see if replacing the include by lib works.
+# Check X11 before X11Rn because it is often a symlink to the current release.
+for ac_dir in `echo "$ac_x_includes" | sed s/include/lib/` \
+ /usr/X11/lib \
+ /usr/X11R6/lib \
+ /usr/X11R5/lib \
+ /usr/X11R4/lib \
+ \
+ /usr/lib/X11 \
+ /usr/lib/X11R6 \
+ /usr/lib/X11R5 \
+ /usr/lib/X11R4 \
+ \
+ /usr/local/X11/lib \
+ /usr/local/X11R6/lib \
+ /usr/local/X11R5/lib \
+ /usr/local/X11R4/lib \
+ \
+ /usr/local/lib/X11 \
+ /usr/local/lib/X11R6 \
+ /usr/local/lib/X11R5 \
+ /usr/local/lib/X11R4 \
+ \
+ /usr/X386/lib \
+ /usr/x386/lib \
+ /usr/XFree86/lib/X11 \
+ \
+ /usr/lib \
+ /usr/local/lib \
+ /usr/unsupported/lib \
+ /usr/athena/lib \
+ /usr/local/x11r5/lib \
+ /usr/lpp/Xamples/lib \
+ /lib/usr/lib/X11 \
+ \
+ /usr/openwin/lib \
+ /usr/openwin/share/lib \
+ ; \
+do
+ for ac_extension in a so sl; do
+ if test -r $ac_dir/lib${x_direct_test_library}.$ac_extension; then
+ ac_x_libraries=$ac_dir
+ break 2
+ fi
+ done
+done
+fi
+rm -f conftest*
+fi # $ac_x_libraries = NO
+
+if test "$ac_x_includes" = NO || test "$ac_x_libraries" = NO; then
+ # Didn't find X anywhere. Cache the known absence of X.
+ ac_cv_have_x="have_x=no"
+else
+ # Record where we found X for the cache.
+ ac_cv_have_x="have_x=yes \
+ ac_x_includes=$ac_x_includes ac_x_libraries=$ac_x_libraries"
+fi
+fi
+ fi
+ eval "$ac_cv_have_x"
+fi # $with_x != no
+
+if test "$have_x" != yes; then
+ echo "$ac_t""$have_x" 1>&6
+ no_x=yes
+else
+ # If each of the values was on the command line, it overrides each guess.
+ test "x$x_includes" = xNONE && x_includes=$ac_x_includes
+ test "x$x_libraries" = xNONE && x_libraries=$ac_x_libraries
+ # Update the cache value to reflect the command line values.
+ ac_cv_have_x="have_x=yes \
+ ac_x_includes=$x_includes ac_x_libraries=$x_libraries"
+ echo "$ac_t""libraries $x_libraries, headers $x_includes" 1>&6
+fi
+
+if test "$no_x" = yes; then
+ # Not all programs may use this symbol, but it does not hurt to define it.
+ cat >> confdefs.h <<\EOF
+#define X_DISPLAY_MISSING 1
+EOF
+
+ X_CFLAGS= X_PRE_LIBS= X_LIBS= X_EXTRA_LIBS=
+else
+ if test -n "$x_includes"; then
+ X_CFLAGS="$X_CFLAGS -I$x_includes"
+ fi
+
+ # It would also be nice to do this for all -L options, not just this one.
+ if test -n "$x_libraries"; then
+ X_LIBS="$X_LIBS -L$x_libraries"
+ # For Solaris; some versions of Sun CC require a space after -R and
+ # others require no space. Words are not sufficient . . . .
+ case "`(uname -sr) 2>/dev/null`" in
+ "SunOS 5"*)
+ echo $ac_n "checking whether -R must be followed by a space""... $ac_c" 1>&6
+echo "configure:1091: checking whether -R must be followed by a space" >&5
+ ac_xsave_LIBS="$LIBS"; LIBS="$LIBS -R$x_libraries"
+ cat > conftest.$ac_ext <<EOF
+#line 1094 "configure"
+#include "confdefs.h"
+
+int main() {
+
+; return 0; }
+EOF
+if { (eval echo configure:1101: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ ac_R_nospace=yes
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ ac_R_nospace=no
+fi
+rm -f conftest*
+ if test $ac_R_nospace = yes; then
+ echo "$ac_t""no" 1>&6
+ X_LIBS="$X_LIBS -R$x_libraries"
+ else
+ LIBS="$ac_xsave_LIBS -R $x_libraries"
+ cat > conftest.$ac_ext <<EOF
+#line 1117 "configure"
+#include "confdefs.h"
+
+int main() {
+
+; return 0; }
+EOF
+if { (eval echo configure:1124: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ ac_R_space=yes
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ ac_R_space=no
+fi
+rm -f conftest*
+ if test $ac_R_space = yes; then
+ echo "$ac_t""yes" 1>&6
+ X_LIBS="$X_LIBS -R $x_libraries"
+ else
+ echo "$ac_t""neither works" 1>&6
+ fi
+ fi
+ LIBS="$ac_xsave_LIBS"
+ esac
+ fi
+
+ # Check for system-dependent libraries X programs must link with.
+ # Do this before checking for the system-independent R6 libraries
+ # (-lICE), since we may need -lsocket or whatever for X linking.
+
+ if test "$ISC" = yes; then
+ X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl_s -linet"
+ else
+ # Martyn.Johnson at cl.cam.ac.uk says this is needed for Ultrix, if the X
+ # libraries were built with DECnet support. And karl at cs.umb.edu says
+ # the Alpha needs dnet_stub (dnet does not exist).
+ echo $ac_n "checking for dnet_ntoa in -ldnet""... $ac_c" 1>&6
+echo "configure:1156: checking for dnet_ntoa in -ldnet" >&5
+ac_lib_var=`echo dnet'_'dnet_ntoa | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ ac_save_LIBS="$LIBS"
+LIBS="-ldnet $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 1164 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error. */
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char dnet_ntoa();
+
+int main() {
+dnet_ntoa()
+; return 0; }
+EOF
+if { (eval echo configure:1175: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet"
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+ if test $ac_cv_lib_dnet_dnet_ntoa = no; then
+ echo $ac_n "checking for dnet_ntoa in -ldnet_stub""... $ac_c" 1>&6
+echo "configure:1197: checking for dnet_ntoa in -ldnet_stub" >&5
+ac_lib_var=`echo dnet_stub'_'dnet_ntoa | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ ac_save_LIBS="$LIBS"
+LIBS="-ldnet_stub $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 1205 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error. */
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char dnet_ntoa();
+
+int main() {
+dnet_ntoa()
+; return 0; }
+EOF
+if { (eval echo configure:1216: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub"
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+ fi
+
+ # msh at cis.ufl.edu says -lnsl (and -lsocket) are needed for his 386/AT,
+ # to get the SysV transport functions.
+ # chad at anasazi.com says the Pyramis MIS-ES running DC/OSx (SVR4)
+ # needs -lnsl.
+ # The nsl library prevents programs from opening the X display
+ # on Irix 5.2, according to dickey at clark.net.
+ echo $ac_n "checking for gethostbyname""... $ac_c" 1>&6
+echo "configure:1245: checking for gethostbyname" >&5
+if eval "test \"`echo '$''{'ac_cv_func_gethostbyname'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ cat > conftest.$ac_ext <<EOF
+#line 1250 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char gethostbyname(); below. */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error. */
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char gethostbyname();
+
+int main() {
+
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub_gethostbyname) || defined (__stub___gethostbyname)
+choke me
+#else
+gethostbyname();
+#endif
+
+; return 0; }
+EOF
+if { (eval echo configure:1273: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_gethostbyname=yes"
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_func_gethostbyname=no"
+fi
+rm -f conftest*
+fi
+
+if eval "test \"`echo '$ac_cv_func_'gethostbyname`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ :
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+ if test $ac_cv_func_gethostbyname = no; then
+ echo $ac_n "checking for gethostbyname in -lnsl""... $ac_c" 1>&6
+echo "configure:1294: checking for gethostbyname in -lnsl" >&5
+ac_lib_var=`echo nsl'_'gethostbyname | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ ac_save_LIBS="$LIBS"
+LIBS="-lnsl $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 1302 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error. */
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char gethostbyname();
+
+int main() {
+gethostbyname()
+; return 0; }
+EOF
+if { (eval echo configure:1313: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl"
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+ fi
+
+ # lieder at skyler.mavd.honeywell.com says without -lsocket,
+ # socket/setsockopt and other routines are undefined under SCO ODT
+ # 2.0. But -lsocket is broken on IRIX 5.2 (and is not necessary
+ # on later versions), says simon at lia.di.epfl.ch: it contains
+ # gethostby* variants that don't use the nameserver (or something).
+ # -lsocket must be given before -lnsl if both are needed.
+ # We assume that if connect needs -lnsl, so does gethostbyname.
+ echo $ac_n "checking for connect""... $ac_c" 1>&6
+echo "configure:1343: checking for connect" >&5
+if eval "test \"`echo '$''{'ac_cv_func_connect'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ cat > conftest.$ac_ext <<EOF
+#line 1348 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char connect(); below. */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error. */
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char connect();
+
+int main() {
+
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub_connect) || defined (__stub___connect)
+choke me
+#else
+connect();
+#endif
+
+; return 0; }
+EOF
+if { (eval echo configure:1371: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_connect=yes"
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_func_connect=no"
+fi
+rm -f conftest*
+fi
+
+if eval "test \"`echo '$ac_cv_func_'connect`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ :
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+ if test $ac_cv_func_connect = no; then
+ echo $ac_n "checking for connect in -lsocket""... $ac_c" 1>&6
+echo "configure:1392: checking for connect in -lsocket" >&5
+ac_lib_var=`echo socket'_'connect | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ ac_save_LIBS="$LIBS"
+LIBS="-lsocket $X_EXTRA_LIBS $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 1400 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error. */
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char connect();
+
+int main() {
+connect()
+; return 0; }
+EOF
+if { (eval echo configure:1411: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS"
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+ fi
+
+ # gomez at mi.uni-erlangen.de says -lposix is necessary on A/UX.
+ echo $ac_n "checking for remove""... $ac_c" 1>&6
+echo "configure:1435: checking for remove" >&5
+if eval "test \"`echo '$''{'ac_cv_func_remove'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ cat > conftest.$ac_ext <<EOF
+#line 1440 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char remove(); below. */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error. */
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char remove();
+
+int main() {
+
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub_remove) || defined (__stub___remove)
+choke me
+#else
+remove();
+#endif
+
+; return 0; }
+EOF
+if { (eval echo configure:1463: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_remove=yes"
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_func_remove=no"
+fi
+rm -f conftest*
+fi
+
+if eval "test \"`echo '$ac_cv_func_'remove`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ :
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+ if test $ac_cv_func_remove = no; then
+ echo $ac_n "checking for remove in -lposix""... $ac_c" 1>&6
+echo "configure:1484: checking for remove in -lposix" >&5
+ac_lib_var=`echo posix'_'remove | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ ac_save_LIBS="$LIBS"
+LIBS="-lposix $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 1492 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error. */
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char remove();
+
+int main() {
+remove()
+; return 0; }
+EOF
+if { (eval echo configure:1503: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix"
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+ fi
+
+ # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay.
+ echo $ac_n "checking for shmat""... $ac_c" 1>&6
+echo "configure:1527: checking for shmat" >&5
+if eval "test \"`echo '$''{'ac_cv_func_shmat'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ cat > conftest.$ac_ext <<EOF
+#line 1532 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char shmat(); below. */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error. */
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char shmat();
+
+int main() {
+
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub_shmat) || defined (__stub___shmat)
+choke me
+#else
+shmat();
+#endif
+
+; return 0; }
+EOF
+if { (eval echo configure:1555: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_shmat=yes"
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_func_shmat=no"
+fi
+rm -f conftest*
+fi
+
+if eval "test \"`echo '$ac_cv_func_'shmat`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ :
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+ if test $ac_cv_func_shmat = no; then
+ echo $ac_n "checking for shmat in -lipc""... $ac_c" 1>&6
+echo "configure:1576: checking for shmat in -lipc" >&5
+ac_lib_var=`echo ipc'_'shmat | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ ac_save_LIBS="$LIBS"
+LIBS="-lipc $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 1584 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error. */
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char shmat();
+
+int main() {
+shmat()
+; return 0; }
+EOF
+if { (eval echo configure:1595: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc"
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+ fi
+ fi
+
+ # Check for libraries that X11R6 Xt/Xaw programs need.
+ ac_save_LDFLAGS="$LDFLAGS"
+ test -n "$x_libraries" && LDFLAGS="$LDFLAGS -L$x_libraries"
+ # SM needs ICE to (dynamically) link under SunOS 4.x (so we have to
+ # check for ICE first), but we must link in the order -lSM -lICE or
+ # we get undefined symbols. So assume we have SM if we have ICE.
+ # These have to be linked with before -lX11, unlike the other
+ # libraries we check for below, so use a different variable.
+ # --interran at uluru.Stanford.EDU, kb at cs.umb.edu.
+ echo $ac_n "checking for IceConnectionNumber in -lICE""... $ac_c" 1>&6
+echo "configure:1628: checking for IceConnectionNumber in -lICE" >&5
+ac_lib_var=`echo ICE'_'IceConnectionNumber | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ ac_save_LIBS="$LIBS"
+LIBS="-lICE $X_EXTRA_LIBS $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 1636 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error. */
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char IceConnectionNumber();
+
+int main() {
+IceConnectionNumber()
+; return 0; }
+EOF
+if { (eval echo configure:1647: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ X_PRE_LIBS="$X_PRE_LIBS -lSM -lICE"
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+ LDFLAGS="$ac_save_LDFLAGS"
+
+fi
+
+
+echo $ac_n "checking for XkbOpenDisplay in -lX11""... $ac_c" 1>&6
+echo "configure:1673: checking for XkbOpenDisplay in -lX11" >&5
+ac_lib_var=`echo X11'_'XkbOpenDisplay | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ ac_save_LIBS="$LIBS"
+LIBS="-lX11 $X_LIBS $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 1681 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error. */
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char XkbOpenDisplay();
+
+int main() {
+XkbOpenDisplay()
+; return 0; }
+EOF
+if { (eval echo configure:1692: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ ac_tr_lib=HAVE_LIB`echo X11 | sed -e 's/[^a-zA-Z0-9_]/_/g' \
+ -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
+ cat >> confdefs.h <<EOF
+#define $ac_tr_lib 1
+EOF
+
+ LIBS="-lX11 $LIBS"
+
+else
+ echo "$ac_t""no" 1>&6
+echo "Fatal error! No libX11 found!"; exit 1
+fi
+
+
+echo $ac_n "checking for XpmReadFileToImage in -lXpm""... $ac_c" 1>&6
+echo "configure:1722: checking for XpmReadFileToImage in -lXpm" >&5
+ac_lib_var=`echo Xpm'_'XpmReadFileToImage | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ ac_save_LIBS="$LIBS"
+LIBS="-lXpm $X_LIBS $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 1730 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error. */
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char XpmReadFileToImage();
+
+int main() {
+XpmReadFileToImage()
+; return 0; }
+EOF
+if { (eval echo configure:1741: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ ac_tr_lib=HAVE_LIB`echo Xpm | sed -e 's/[^a-zA-Z0-9_]/_/g' \
+ -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
+ cat >> confdefs.h <<EOF
+#define $ac_tr_lib 1
+EOF
+
+ LIBS="-lXpm $LIBS"
+
+else
+ echo "$ac_t""no" 1>&6
+echo "Fatal error! No libXpm found!"; exit 1
+fi
+
+
+# Check whether --enable-libproplist or --disable-libproplist was given.
+if test "${enable_libproplist+set}" = set; then
+ enableval="$enable_libproplist"
+ if test $enable_libproplist = yes ; then
+
+ echo $ac_n "checking for PLGetProplistWithPath in -lPropList""... $ac_c" 1>&6
+echo "configure:1776: checking for PLGetProplistWithPath in -lPropList" >&5
+ac_lib_var=`echo PropList'_'PLGetProplistWithPath | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ ac_save_LIBS="$LIBS"
+LIBS="-lPropList $X_LIBS $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 1784 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error. */
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char PLGetProplistWithPath();
+
+int main() {
+PLGetProplistWithPath()
+; return 0; }
+EOF
+if { (eval echo configure:1795: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ ac_tr_lib=HAVE_LIB`echo PropList | sed -e 's/^a-zA-Z0-9_/_/g' \
+ -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
+ cat >> confdefs.h <<EOF
+#define $ac_tr_lib 1
+EOF
+
+ LIBS="-lPropList $LIBS"
+
+else
+ echo "$ac_t""no" 1>&6
+echo "No libPropList found. You should use X resources for customizing fookb."
+fi
+
+
+ for ac_hdr in proplist.h
+do
+ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
+echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
+echo "configure:1828: checking for $ac_hdr" >&5
+if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ cat > conftest.$ac_ext <<EOF
+#line 1833 "configure"
+#include "confdefs.h"
+#include <$ac_hdr>
+EOF
+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+{ (eval echo configure:1838: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+if test -z "$ac_err"; then
+ rm -rf conftest*
+ eval "ac_cv_header_$ac_safe=yes"
+else
+ echo "$ac_err" >&5
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_header_$ac_safe=no"
+fi
+rm -f conftest*
+fi
+if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
+ cat >> confdefs.h <<EOF
+#define $ac_tr_hdr 1
+EOF
+
+else
+ echo "$ac_t""no" 1>&6
+echo "No proplist.h found -- cannot compile libPropList version. You should use X resources for customizing fookb."
+fi
+done
+
+
+fi
+
+
+else
+ echo $ac_n "checking for PLGetProplistWithPath in -lPropList""... $ac_c" 1>&6
+echo "configure:1871: checking for PLGetProplistWithPath in -lPropList" >&5
+ac_lib_var=`echo PropList'_'PLGetProplistWithPath | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ ac_save_LIBS="$LIBS"
+LIBS="-lPropList $X_LIBS $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 1879 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error. */
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char PLGetProplistWithPath();
+
+int main() {
+PLGetProplistWithPath()
+; return 0; }
+EOF
+if { (eval echo configure:1890: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ ac_tr_lib=HAVE_LIB`echo PropList | sed -e 's/^a-zA-Z0-9_/_/g' \
+ -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
+ cat >> confdefs.h <<EOF
+#define $ac_tr_lib 1
+EOF
+
+ LIBS="-lPropList $LIBS"
+
+else
+ echo "$ac_t""no" 1>&6
+echo "No libPropList found. You should use X resources for customizing fookb."
+fi
+
+
+for ac_hdr in proplist.h
+do
+ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
+echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
+echo "configure:1923: checking for $ac_hdr" >&5
+if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ cat > conftest.$ac_ext <<EOF
+#line 1928 "configure"
+#include "confdefs.h"
+#include <$ac_hdr>
+EOF
+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+{ (eval echo configure:1933: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+if test -z "$ac_err"; then
+ rm -rf conftest*
+ eval "ac_cv_header_$ac_safe=yes"
+else
+ echo "$ac_err" >&5
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_header_$ac_safe=no"
+fi
+rm -f conftest*
+fi
+if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
+ cat >> confdefs.h <<EOF
+#define $ac_tr_hdr 1
+EOF
+
+else
+ echo "$ac_t""no" 1>&6
+echo "No proplist.h found -- cannot compile libPropList version. You should use X resources for customizing fookb."
+fi
+done
+
+
+
+fi
+
+
+# Extract the first word of "wmaker", so it can be a program name with args.
+set dummy wmaker; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:1968: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_HAVE_WMAKER'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ if test -n "$HAVE_WMAKER"; then
+ ac_cv_prog_HAVE_WMAKER="$HAVE_WMAKER" # Let the user override the test.
+else
+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
+ ac_dummy="$PATH"
+ for ac_dir in $ac_dummy; do
+ test -z "$ac_dir" && ac_dir=.
+ if test -f $ac_dir/$ac_word; then
+ ac_cv_prog_HAVE_WMAKER="yes"
+ break
+ fi
+ done
+ IFS="$ac_save_ifs"
+ test -z "$ac_cv_prog_HAVE_WMAKER" && ac_cv_prog_HAVE_WMAKER="no"
+fi
+fi
+HAVE_WMAKER="$ac_cv_prog_HAVE_WMAKER"
+if test -n "$HAVE_WMAKER"; then
+ echo "$ac_t""$HAVE_WMAKER" 1>&6
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+
+# Check whether --enable-wmaker or --disable-wmaker was given.
+if test "${enable_wmaker+set}" = set; then
+ enableval="$enable_wmaker"
+ if test $enable_wmaker = yes ; then
+ cat >> confdefs.h <<\EOF
+#define WMAKER 1
+EOF
+
+fi
+
+
+else
+ if test $HAVE_WMAKER = yes ; then
+ cat >> confdefs.h <<\EOF
+#define WMAKER 1
+EOF
+
+fi
+
+fi
+
+
+trap '' 1 2 15
+cat > confcache <<\EOF
+# This file is a shell script that caches the results of configure
+# tests run on this system so they can be shared between configure
+# scripts and configure runs. It is not useful on other systems.
+# If it contains results you don't want to keep, you may remove or edit it.
+#
+# By default, configure uses ./config.cache as the cache file,
+# creating it if it does not exist already. You can give configure
+# the --cache-file=FILE option to use a different cache file; that is
+# what configure does when it calls configure scripts in
+# subdirectories, so they share the cache.
+# Giving --cache-file=/dev/null disables caching, for debugging configure.
+# config.status only pays attention to the cache file if you give it the
+# --recheck option to rerun configure.
+#
+EOF
+# The following way of writing the cache mishandles newlines in values,
+# but we know of no workaround that is simple, portable, and efficient.
+# So, don't put newlines in cache variables' values.
+# Ultrix sh set writes to stderr and can't be redirected directly,
+# and sets the high bit in the cache file unless we assign to the vars.
+(set) 2>&1 |
+ case `(ac_space=' '; set | grep ac_space) 2>&1` in
+ *ac_space=\ *)
+ # `set' does not quote correctly, so add quotes (double-quote substitution
+ # turns \\\\ into \\, and sed turns \\ into \).
+ sed -n \
+ -e "s/'/'\\\\''/g" \
+ -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
+ ;;
+ *)
+ # `set' quotes correctly as required by POSIX, so do not add quotes.
+ sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
+ ;;
+ esac >> confcache
+if cmp -s $cache_file confcache; then
+ :
+else
+ if test -w $cache_file; then
+ echo "updating cache $cache_file"
+ cat confcache > $cache_file
+ else
+ echo "not updating unwritable cache $cache_file"
+ fi
+fi
+rm -f confcache
+
+trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
+
+test "x$prefix" = xNONE && prefix=$ac_default_prefix
+# Let make expand exec_prefix.
+test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
+
+# Any assignment to VPATH causes Sun make to only execute
+# the first set of double-colon rules, so remove it if not needed.
+# If there is a colon in the path, we need to keep it.
+if test "x$srcdir" = x.; then
+ ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d'
+fi
+
+trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15
+
+# Transform confdefs.h into DEFS.
+# Protect against shell expansion while executing Makefile rules.
+# Protect against Makefile macro expansion.
+cat > conftest.defs <<\EOF
+s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g
+s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g
+s%\[%\\&%g
+s%\]%\\&%g
+s%\$%$$%g
+EOF
+DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '`
+rm -f conftest.defs
+
+
+# Without the "./", some shells look in PATH for config.status.
+: ${CONFIG_STATUS=./config.status}
+
+echo creating $CONFIG_STATUS
+rm -f $CONFIG_STATUS
+cat > $CONFIG_STATUS <<EOF
+#! /bin/sh
+# Generated automatically by configure.
+# Run this file to recreate the current configuration.
+# This directory was configured as follows,
+# on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
+#
+# $0 $ac_configure_args
+#
+# Compiler output produced by configure, useful for debugging
+# configure, is in ./config.log if it exists.
+
+ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
+for ac_option
+do
+ case "\$ac_option" in
+ -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
+ echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
+ exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
+ -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
+ echo "$CONFIG_STATUS generated by autoconf version 2.13"
+ exit 0 ;;
+ -help | --help | --hel | --he | --h)
+ echo "\$ac_cs_usage"; exit 0 ;;
+ *) echo "\$ac_cs_usage"; exit 1 ;;
+ esac
+done
+
+ac_given_srcdir=$srcdir
+
+trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
+EOF
+cat >> $CONFIG_STATUS <<EOF
+
+# Protect against being on the right side of a sed subst in config.status.
+sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g;
+ s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF
+$ac_vpsub
+$extrasub
+s%@SHELL@%$SHELL%g
+s%@CFLAGS@%$CFLAGS%g
+s%@CPPFLAGS@%$CPPFLAGS%g
+s%@CXXFLAGS@%$CXXFLAGS%g
+s%@FFLAGS@%$FFLAGS%g
+s%@DEFS@%$DEFS%g
+s%@LDFLAGS@%$LDFLAGS%g
+s%@LIBS@%$LIBS%g
+s%@exec_prefix@%$exec_prefix%g
+s%@prefix@%$prefix%g
+s%@program_transform_name@%$program_transform_name%g
+s%@bindir@%$bindir%g
+s%@sbindir@%$sbindir%g
+s%@libexecdir@%$libexecdir%g
+s%@datadir@%$datadir%g
+s%@sysconfdir@%$sysconfdir%g
+s%@sharedstatedir@%$sharedstatedir%g
+s%@localstatedir@%$localstatedir%g
+s%@libdir@%$libdir%g
+s%@includedir@%$includedir%g
+s%@oldincludedir@%$oldincludedir%g
+s%@infodir@%$infodir%g
+s%@mandir@%$mandir%g
+s%@CC@%$CC%g
+s%@CPP@%$CPP%g
+s%@X_CFLAGS@%$X_CFLAGS%g
+s%@X_PRE_LIBS@%$X_PRE_LIBS%g
+s%@X_LIBS@%$X_LIBS%g
+s%@X_EXTRA_LIBS@%$X_EXTRA_LIBS%g
+s%@HAVE_WMAKER@%$HAVE_WMAKER%g
+
+CEOF
+EOF
+
+cat >> $CONFIG_STATUS <<\EOF
+
+# Split the substitutions into bite-sized pieces for seds with
+# small command number limits, like on Digital OSF/1 and HP-UX.
+ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
+ac_file=1 # Number of current file.
+ac_beg=1 # First line for current file.
+ac_end=$ac_max_sed_cmds # Line after last line for current file.
+ac_more_lines=:
+ac_sed_cmds=""
+while $ac_more_lines; do
+ if test $ac_beg -gt 1; then
+ sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file
+ else
+ sed "${ac_end}q" conftest.subs > conftest.s$ac_file
+ fi
+ if test ! -s conftest.s$ac_file; then
+ ac_more_lines=false
+ rm -f conftest.s$ac_file
+ else
+ if test -z "$ac_sed_cmds"; then
+ ac_sed_cmds="sed -f conftest.s$ac_file"
+ else
+ ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file"
+ fi
+ ac_file=`expr $ac_file + 1`
+ ac_beg=$ac_end
+ ac_end=`expr $ac_end + $ac_max_sed_cmds`
+ fi
+done
+if test -z "$ac_sed_cmds"; then
+ ac_sed_cmds=cat
+fi
+EOF
+
+cat >> $CONFIG_STATUS <<EOF
+
+CONFIG_FILES=\${CONFIG_FILES-"Makefile"}
+EOF
+cat >> $CONFIG_STATUS <<\EOF
+for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
+ # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
+ case "$ac_file" in
+ *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
+ ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
+ *) ac_file_in="${ac_file}.in" ;;
+ esac
+
+ # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
+
+ # Remove last slash and all that follows it. Not all systems have dirname.
+ ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
+ if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
+ # The file is in a subdirectory.
+ test ! -d "$ac_dir" && mkdir "$ac_dir"
+ ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
+ # A "../" for each directory in $ac_dir_suffix.
+ ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
+ else
+ ac_dir_suffix= ac_dots=
+ fi
+
+ case "$ac_given_srcdir" in
+ .) srcdir=.
+ if test -z "$ac_dots"; then top_srcdir=.
+ else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
+ /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
+ *) # Relative path.
+ srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
+ top_srcdir="$ac_dots$ac_given_srcdir" ;;
+ esac
+
+
+ echo creating "$ac_file"
+ rm -f "$ac_file"
+ configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
+ case "$ac_file" in
+ *Makefile*) ac_comsub="1i\\
+# $configure_input" ;;
+ *) ac_comsub= ;;
+ esac
+
+ ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
+ sed -e "$ac_comsub
+s%@configure_input@%$configure_input%g
+s%@srcdir@%$srcdir%g
+s%@top_srcdir@%$top_srcdir%g
+" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file
+fi; done
+rm -f conftest.s*
+
+EOF
+cat >> $CONFIG_STATUS <<EOF
+
+EOF
+cat >> $CONFIG_STATUS <<\EOF
+
+exit 0
+EOF
+chmod +x $CONFIG_STATUS
+rm -fr confdefs* $ac_clean_files
+test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1
+
diff --git a/configure.in b/configure.in
new file mode 100644
index 0000000..3aea77a
--- /dev/null
+++ b/configure.in
@@ -0,0 +1,59 @@
+dnl Process this file with autoconf to produce a configure script.
+dnl (c) 2001 Alexey Vyskubov <alexey at pepper.spb.ru>
+
+AC_INIT(fookb.c)
+
+dnl AC_CONFIG_HEADER(foofig.h)
+
+dnl Checks for programs.
+AC_PROG_CC
+
+dnl Checks for libraries.
+
+AC_PATH_XTRA
+
+AC_CHECK_LIB(X11, XkbOpenDisplay,, echo "Fatal error! No libX11 found!"; exit 1, $X_LIBS)
+
+AC_CHECK_LIB(Xpm, XpmReadFileToImage,, echo "Fatal error! No libXpm found!"; exit 1, $X_LIBS)
+
+AC_ARG_ENABLE(libproplist,
+
+ --enable-libproplist Try to compile libproplist-enabled version,
+
+if test $enable_libproplist = yes ; then
+
+ AC_CHECK_LIB(PropList, PLGetProplistWithPath,,
+ echo "No libPropList found. You should use X resources for customizing fookb.", $X_LIBS)
+
+ AC_CHECK_HEADERS(proplist.h,,
+ echo "No proplist.h found -- cannot compile libPropList version. You should use X resources for customizing fookb.")
+
+fi
+
+,
+
+AC_CHECK_LIB(PropList, PLGetProplistWithPath,,
+echo "No libPropList found. You should use X resources for customizing fookb.", $X_LIBS)
+
+AC_CHECK_HEADERS(proplist.h,,
+echo "No proplist.h found -- cannot compile libPropList version. You should use X resources for customizing fookb.")
+
+)
+
+AC_CHECK_PROG(HAVE_WMAKER, wmaker, yes, no)
+
+AC_ARG_ENABLE(wmaker,
+ --enable-wmaker Create windowmaker dockable application,
+
+if test $enable_wmaker = yes ; then
+ AC_DEFINE(WMAKER)
+fi
+
+,
+
+if test $HAVE_WMAKER = yes ; then
+ AC_DEFINE(WMAKER)
+fi
+)
+
+AC_OUTPUT(Makefile)
diff --git a/copyright b/copyright
new file mode 100644
index 0000000..0e74c0b
--- /dev/null
+++ b/copyright
@@ -0,0 +1,6 @@
+(c) 1998,99,2000,2001 Alexey Vyskubov <alexey at pepper.spb.ru>
+
+Icons (c) 1999 LionN <xpert at mail.ru>
+
+ If you want to distribute, use or modificate this program, please look in
+ file "LICENSE".
diff --git a/fookb-plainx.1x b/fookb-plainx.1x
new file mode 100644
index 0000000..cc76762
--- /dev/null
+++ b/fookb-plainx.1x
@@ -0,0 +1,145 @@
+.\" Copyright (c) 1999, 2000, 2001 Alexey Vyskubov <alexey at pepper.spb.ru>
+.\"
+.\" This is free documentation; you can redistribute it and/or
+.\" modify it under the terms of the Artistic License
+.\" This manual is distributed in the hope that it will be useful,
+.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
+.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+.TH fookb 1 "17 Mar 2001" "fookb" "FOOcrosoft"
+.SH NAME
+fookb \- Xkb state indicator with optional Window Maker support
+.SH SYNOPSIS
+.B fookb [options]
+
+.SH DESCRIPTION
+\fBfookb\fP is a Xkb state indicator. It displays
+the icon corresponding to the number of Xkb locked group. You may use
+mouse-clicks to change Xkb locked group with mouse. Additionally,
+\fBfookb\fP can be configured to execute a program on changing group.
+.P
+\fBfookb\fP man page is based on \fBWMMail.app\fP man page. Program
+was written from scratch.
+.P
+To use \fBfookb\fP with the Window Maker Dock, simply drag the
+\fBfookb\fP icon to the Window Maker Dock (if \fBfookb\fP was compiled
+with Window Maker support).
+
+.SH OPTIONS
+.TP
+NB! Command line parameters take precedence over config file or X resources!
+.TP
+.B -icon1
+.TP
+.B -icon2
+.TP
+.B -icon3
+.TP
+.B -icon4
+.TP
+.B -iconboom
+.TP
+.B -display
+
+.SH CONFIGURATION FILE (for libPropList-enabled version)
+The configuration file consist of a single PropList dictionary, which
+in turn is composed of several PropList key\-value pairs. The
+recognized keys is:
+.TP
+.B Icon1 Filename (mandatory)
+XPM file contains an icon (48x48) for 1st XKB group.
+.TP
+.B Icon2 Filename (mandatory)
+XPM file contains an icon (48x48) for 2nd XKB group.
+.TP
+.B Icon3 Filename (mandatory)
+XPM file contains an icon (48x48) for 3rd XKB group.
+.TP
+.B Icon4 Filename (mandatory)
+XPM file contains an icon (48x48) for 4th XKB group.
+.TP
+.B IconBoom Filename (mandatory)
+XPM file contains an icon (48x48) for "broken Xkb". Please look in
+BUGS section.
+.TP
+.B Sound (Yes|No)
+\fBfookb\fP will run command from "Command" value (see below), if this
+parameter is set to "Yes". You'll receive (non-fatal) error message if
+this parameter is not defined. In any other case command will not be
+run.
+.TP
+.B Command command_to_run
+This command will be run if XKB locked group is changed and "Sound" is
+set to "Yes".
+
+.SH X resources
+.TP
+NB! Parameters in PropList config file take precednece over X resources!
+.TP
+.B fookb.icon1 Filename
+.TP
+.B fookb.icon2 Filename
+.TP
+.B fookb.icon3 Filename
+.TP
+.B fookb.icon4 Filename
+.TP
+.B fookb.iconBoom Filename
+.TP
+.B fookb.sound Yes/No
+.TP
+.B fookb.command Command
+
+.SH EXAMPLES
+Here is an example of configuration file.
+.P
+.nf
+{
+ Icon1 = "/usr/local/share/fookb/icon1.xpm";
+ Icon2 = "/usr/local/share/fookb/icon2.xpm";
+ Icon3 = "/usr/local/share/fookb/icon3.xpm";
+ Icon4 = "/usr/local/share/fookb/icon4.xpm";
+ IconBoom = "/usr/local/share/fookb/crash.xpm";
+ Sound = "Yes";
+ Command = "/usr/bin/play /usr/local/share/fookb/click.au";
+}
+.fi
+
+Here is an example of app-defaults file.
+.P
+.nf
+fookb.icon1: /usr/local/share/fookb/icon1.xpm
+fookb.icon2: /usr/local/share/fookb/icon2.xpm
+fookb.icon3: /usr/local/share/fookb/icon3.xpm
+fookb.icon4: /usr/local/share/fookb/icon4.xpm
+fookb.iconBoom: /usr/local/share/fookb/crash.xpm
+fookb.sound: Yes
+fookb.command: /home/bgates/bin/playmssound
+.fi
+
+.SH FILES
+.TP
+.B ~/GNUstep/Defaults/FOOkb
+\fBfookb\fP defaults (for Window Maker enabled version).
+.TP
+.B ~/.fookb
+\fBfookb\fP defaults (for Window Maker disabled version).
+
+.SH BUGS
+Sometimes \fBfookb\fP receives message about changing XKB group, but
+message.state.group does not point to any existing XKB group. In this
+case \fBfookb\fP will show IconBoom (from config file) picture.
+.P
+As far as I know the only way to look at this bug is run vmware.
+
+.SH VERSION
+This man page is up-to-date for version 2.13 of \fBfookb\fP.
+
+.SH AUTHORS
+.P
+\fBfookb\fP is (c) 1998, 99, 2000, 20001 Alexey Vyskubov <alexey at pepper.spb.ru>.
+.P
+This manpage was written by Alexey Vyskubov <alexey at pepper.spb.ru>.
+
+
+
+
diff --git a/fookb-wmaker.1x b/fookb-wmaker.1x
new file mode 100644
index 0000000..cc76762
--- /dev/null
+++ b/fookb-wmaker.1x
@@ -0,0 +1,145 @@
+.\" Copyright (c) 1999, 2000, 2001 Alexey Vyskubov <alexey at pepper.spb.ru>
+.\"
+.\" This is free documentation; you can redistribute it and/or
+.\" modify it under the terms of the Artistic License
+.\" This manual is distributed in the hope that it will be useful,
+.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
+.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+.TH fookb 1 "17 Mar 2001" "fookb" "FOOcrosoft"
+.SH NAME
+fookb \- Xkb state indicator with optional Window Maker support
+.SH SYNOPSIS
+.B fookb [options]
+
+.SH DESCRIPTION
+\fBfookb\fP is a Xkb state indicator. It displays
+the icon corresponding to the number of Xkb locked group. You may use
+mouse-clicks to change Xkb locked group with mouse. Additionally,
+\fBfookb\fP can be configured to execute a program on changing group.
+.P
+\fBfookb\fP man page is based on \fBWMMail.app\fP man page. Program
+was written from scratch.
+.P
+To use \fBfookb\fP with the Window Maker Dock, simply drag the
+\fBfookb\fP icon to the Window Maker Dock (if \fBfookb\fP was compiled
+with Window Maker support).
+
+.SH OPTIONS
+.TP
+NB! Command line parameters take precedence over config file or X resources!
+.TP
+.B -icon1
+.TP
+.B -icon2
+.TP
+.B -icon3
+.TP
+.B -icon4
+.TP
+.B -iconboom
+.TP
+.B -display
+
+.SH CONFIGURATION FILE (for libPropList-enabled version)
+The configuration file consist of a single PropList dictionary, which
+in turn is composed of several PropList key\-value pairs. The
+recognized keys is:
+.TP
+.B Icon1 Filename (mandatory)
+XPM file contains an icon (48x48) for 1st XKB group.
+.TP
+.B Icon2 Filename (mandatory)
+XPM file contains an icon (48x48) for 2nd XKB group.
+.TP
+.B Icon3 Filename (mandatory)
+XPM file contains an icon (48x48) for 3rd XKB group.
+.TP
+.B Icon4 Filename (mandatory)
+XPM file contains an icon (48x48) for 4th XKB group.
+.TP
+.B IconBoom Filename (mandatory)
+XPM file contains an icon (48x48) for "broken Xkb". Please look in
+BUGS section.
+.TP
+.B Sound (Yes|No)
+\fBfookb\fP will run command from "Command" value (see below), if this
+parameter is set to "Yes". You'll receive (non-fatal) error message if
+this parameter is not defined. In any other case command will not be
+run.
+.TP
+.B Command command_to_run
+This command will be run if XKB locked group is changed and "Sound" is
+set to "Yes".
+
+.SH X resources
+.TP
+NB! Parameters in PropList config file take precednece over X resources!
+.TP
+.B fookb.icon1 Filename
+.TP
+.B fookb.icon2 Filename
+.TP
+.B fookb.icon3 Filename
+.TP
+.B fookb.icon4 Filename
+.TP
+.B fookb.iconBoom Filename
+.TP
+.B fookb.sound Yes/No
+.TP
+.B fookb.command Command
+
+.SH EXAMPLES
+Here is an example of configuration file.
+.P
+.nf
+{
+ Icon1 = "/usr/local/share/fookb/icon1.xpm";
+ Icon2 = "/usr/local/share/fookb/icon2.xpm";
+ Icon3 = "/usr/local/share/fookb/icon3.xpm";
+ Icon4 = "/usr/local/share/fookb/icon4.xpm";
+ IconBoom = "/usr/local/share/fookb/crash.xpm";
+ Sound = "Yes";
+ Command = "/usr/bin/play /usr/local/share/fookb/click.au";
+}
+.fi
+
+Here is an example of app-defaults file.
+.P
+.nf
+fookb.icon1: /usr/local/share/fookb/icon1.xpm
+fookb.icon2: /usr/local/share/fookb/icon2.xpm
+fookb.icon3: /usr/local/share/fookb/icon3.xpm
+fookb.icon4: /usr/local/share/fookb/icon4.xpm
+fookb.iconBoom: /usr/local/share/fookb/crash.xpm
+fookb.sound: Yes
+fookb.command: /home/bgates/bin/playmssound
+.fi
+
+.SH FILES
+.TP
+.B ~/GNUstep/Defaults/FOOkb
+\fBfookb\fP defaults (for Window Maker enabled version).
+.TP
+.B ~/.fookb
+\fBfookb\fP defaults (for Window Maker disabled version).
+
+.SH BUGS
+Sometimes \fBfookb\fP receives message about changing XKB group, but
+message.state.group does not point to any existing XKB group. In this
+case \fBfookb\fP will show IconBoom (from config file) picture.
+.P
+As far as I know the only way to look at this bug is run vmware.
+
+.SH VERSION
+This man page is up-to-date for version 2.13 of \fBfookb\fP.
+
+.SH AUTHORS
+.P
+\fBfookb\fP is (c) 1998, 99, 2000, 20001 Alexey Vyskubov <alexey at pepper.spb.ru>.
+.P
+This manpage was written by Alexey Vyskubov <alexey at pepper.spb.ru>.
+
+
+
+
diff --git a/fookb.1x b/fookb.1x
new file mode 100644
index 0000000..cc76762
--- /dev/null
+++ b/fookb.1x
@@ -0,0 +1,145 @@
+.\" Copyright (c) 1999, 2000, 2001 Alexey Vyskubov <alexey at pepper.spb.ru>
+.\"
+.\" This is free documentation; you can redistribute it and/or
+.\" modify it under the terms of the Artistic License
+.\" This manual is distributed in the hope that it will be useful,
+.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
+.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+.TH fookb 1 "17 Mar 2001" "fookb" "FOOcrosoft"
+.SH NAME
+fookb \- Xkb state indicator with optional Window Maker support
+.SH SYNOPSIS
+.B fookb [options]
+
+.SH DESCRIPTION
+\fBfookb\fP is a Xkb state indicator. It displays
+the icon corresponding to the number of Xkb locked group. You may use
+mouse-clicks to change Xkb locked group with mouse. Additionally,
+\fBfookb\fP can be configured to execute a program on changing group.
+.P
+\fBfookb\fP man page is based on \fBWMMail.app\fP man page. Program
+was written from scratch.
+.P
+To use \fBfookb\fP with the Window Maker Dock, simply drag the
+\fBfookb\fP icon to the Window Maker Dock (if \fBfookb\fP was compiled
+with Window Maker support).
+
+.SH OPTIONS
+.TP
+NB! Command line parameters take precedence over config file or X resources!
+.TP
+.B -icon1
+.TP
+.B -icon2
+.TP
+.B -icon3
+.TP
+.B -icon4
+.TP
+.B -iconboom
+.TP
+.B -display
+
+.SH CONFIGURATION FILE (for libPropList-enabled version)
+The configuration file consist of a single PropList dictionary, which
+in turn is composed of several PropList key\-value pairs. The
+recognized keys is:
+.TP
+.B Icon1 Filename (mandatory)
+XPM file contains an icon (48x48) for 1st XKB group.
+.TP
+.B Icon2 Filename (mandatory)
+XPM file contains an icon (48x48) for 2nd XKB group.
+.TP
+.B Icon3 Filename (mandatory)
+XPM file contains an icon (48x48) for 3rd XKB group.
+.TP
+.B Icon4 Filename (mandatory)
+XPM file contains an icon (48x48) for 4th XKB group.
+.TP
+.B IconBoom Filename (mandatory)
+XPM file contains an icon (48x48) for "broken Xkb". Please look in
+BUGS section.
+.TP
+.B Sound (Yes|No)
+\fBfookb\fP will run command from "Command" value (see below), if this
+parameter is set to "Yes". You'll receive (non-fatal) error message if
+this parameter is not defined. In any other case command will not be
+run.
+.TP
+.B Command command_to_run
+This command will be run if XKB locked group is changed and "Sound" is
+set to "Yes".
+
+.SH X resources
+.TP
+NB! Parameters in PropList config file take precednece over X resources!
+.TP
+.B fookb.icon1 Filename
+.TP
+.B fookb.icon2 Filename
+.TP
+.B fookb.icon3 Filename
+.TP
+.B fookb.icon4 Filename
+.TP
+.B fookb.iconBoom Filename
+.TP
+.B fookb.sound Yes/No
+.TP
+.B fookb.command Command
+
+.SH EXAMPLES
+Here is an example of configuration file.
+.P
+.nf
+{
+ Icon1 = "/usr/local/share/fookb/icon1.xpm";
+ Icon2 = "/usr/local/share/fookb/icon2.xpm";
+ Icon3 = "/usr/local/share/fookb/icon3.xpm";
+ Icon4 = "/usr/local/share/fookb/icon4.xpm";
+ IconBoom = "/usr/local/share/fookb/crash.xpm";
+ Sound = "Yes";
+ Command = "/usr/bin/play /usr/local/share/fookb/click.au";
+}
+.fi
+
+Here is an example of app-defaults file.
+.P
+.nf
+fookb.icon1: /usr/local/share/fookb/icon1.xpm
+fookb.icon2: /usr/local/share/fookb/icon2.xpm
+fookb.icon3: /usr/local/share/fookb/icon3.xpm
+fookb.icon4: /usr/local/share/fookb/icon4.xpm
+fookb.iconBoom: /usr/local/share/fookb/crash.xpm
+fookb.sound: Yes
+fookb.command: /home/bgates/bin/playmssound
+.fi
+
+.SH FILES
+.TP
+.B ~/GNUstep/Defaults/FOOkb
+\fBfookb\fP defaults (for Window Maker enabled version).
+.TP
+.B ~/.fookb
+\fBfookb\fP defaults (for Window Maker disabled version).
+
+.SH BUGS
+Sometimes \fBfookb\fP receives message about changing XKB group, but
+message.state.group does not point to any existing XKB group. In this
+case \fBfookb\fP will show IconBoom (from config file) picture.
+.P
+As far as I know the only way to look at this bug is run vmware.
+
+.SH VERSION
+This man page is up-to-date for version 2.13 of \fBfookb\fP.
+
+.SH AUTHORS
+.P
+\fBfookb\fP is (c) 1998, 99, 2000, 20001 Alexey Vyskubov <alexey at pepper.spb.ru>.
+.P
+This manpage was written by Alexey Vyskubov <alexey at pepper.spb.ru>.
+
+
+
+
diff --git a/fookb.c b/fookb.c
new file mode 100644
index 0000000..0ab92c6
--- /dev/null
+++ b/fookb.c
@@ -0,0 +1,286 @@
+/*
+ * fookb.c
+ *
+ * (c) 1998, 1999, 2000, 2001 Alexey Vyskubov <alexey at pepper.spb.ru>
+ */
+
+#include <stdlib.h> /* malloc() */
+#include <stdio.h> /* puts() */
+
+/* X Window headers */
+#include <X11/Xlib.h>
+#include <X11/Xutil.h>
+
+/* Command line parsing and X resource manager */
+#include <X11/Xresource.h>
+
+/* XKB fun */
+#include <X11/XKBlib.h>
+
+/* My own fun */
+#include "fookb.h"
+#include "images.h"
+#include "sound.h"
+#include "opts.h"
+
+#define sterror(x) (void)printf("Strange error, please report! %s:%d, %s\n", __FILE__, __LINE__, x)
+
+static void getGC(win, gc)
+Window win;
+GC *gc;
+{
+ unsigned long valuemask = 0; /* No data in ``values'' */
+ XGCValues values;
+ *gc = XCreateGC(dpy, win, valuemask, &values);
+/* XSetForeground(dpy, *gc, BlackPixel(dpy, scr)); */
+}
+
+
+int main(argc, argv)
+int argc;
+register char *argv[];
+{
+ int err;
+
+ int *event_rtrn; /* stupid things for XkbOpenDisplay */
+ int *error_rtrn;
+ int *reason_rtrn;
+
+ XkbEvent labuda; /* Xkb event. X event will be labuda.core */
+
+ Window billy; /* _The_ Window */
+
+#ifdef WMAKER
+ Window dilly; /* ...and his icon */
+#endif
+
+ int border = 0; /* _The_ Window parameters */
+ unsigned int wth = 48; /* Well, you understood */
+ unsigned int hth = 48;
+
+ XWMHints *wm_hints;
+ XClassHint class_hints;
+
+#ifdef WMAKER /* If we use Windowmaker, _The_ Window will */
+ XSizeHints *BigBunny; /* be withdrawn. And we do not want to
+ place empty border by hand. */
+#endif
+
+ GC gc; /* Graphic context */
+
+ char resn[] = "fookb";
+ char resc[] = "Fookb";
+
+
+ int state = 0; /* We suppose that latin keyboard is the
+ primal state FIXME */
+
+ event_rtrn = malloc(sizeof(int));
+ error_rtrn = malloc(sizeof(int));
+ reason_rtrn = malloc(sizeof(int));
+
+ XrmInitialize(); /* We should initialize X resource
+ manager before doing something else
+ */
+
+ ParseOptions(&argc, argv); /* We should parse command line
+ options and try to find '-display'
+ before opening X display */
+
+/* Go, fighters, go! */
+ dpy = XkbOpenDisplay(mydispname,
+ event_rtrn,
+ error_rtrn, NULL, NULL, reason_rtrn);
+
+/* Oops. */
+ if (dpy == NULL) {
+ (void)puts("Cannot open display.");
+ exit(EXIT_FAILURE);
+ }
+
+ scr = DefaultScreen(dpy);
+ root = RootWindow(dpy, scr);
+
+ MoreOptions(); /* Now we can parse X server resource
+ database. It is not available
+ before display is opened */
+
+/* We would like receive the only Xkb event: XkbStateNotify. And only
+ * when XkbLockGroup happens. */
+ if (False == XkbSelectEventDetails(dpy, XkbUseCoreKbd, XkbStateNotify, 0xFFF,
+ XkbGroupLockMask)) {
+ sterror("Cannot XkbSelectEventDetails. It's your problems -- not mine.");
+ exit(EXIT_FAILURE);
+ }
+
+/* Run out! */
+ billy = XCreateSimpleWindow(dpy,
+ root,
+ 0, 0,
+ wth, hth,
+ border,
+ BlackPixel(dpy, scr),
+ WhitePixel(dpy, scr));
+
+#ifdef WMAKER
+ dilly = XCreateSimpleWindow(dpy,
+ root,
+ 0, 0,
+ wth, hth,
+ border,
+ BlackPixel(dpy, scr),
+ WhitePixel(dpy, scr));
+#endif
+
+ class_hints.res_name = resn;
+ class_hints.res_class = resc;
+
+ err = XSetClassHint(dpy, billy, &class_hints);
+ switch(err) {
+ case BadAlloc:
+ sterror("BadAlloc");
+ exit(EXIT_FAILURE);
+ case BadWindow:
+ sterror("BadWindow");
+ exit(EXIT_FAILURE);
+ }
+
+ wm_hints = XAllocWMHints();
+ wm_hints->window_group = billy;
+
+#ifdef WMAKER
+ wm_hints->icon_window = dilly;
+#endif
+
+ wm_hints->input = False;
+ wm_hints->flags = InputHint | WindowGroupHint;
+
+#ifdef WMAKER
+ wm_hints->flags = wm_hints->flags | IconWindowHint;
+ err = XSetWMHints(dpy, dilly, wm_hints);
+ switch(err) {
+ case BadAlloc:
+ sterror("BadAlloc");
+ exit(EXIT_FAILURE);
+ case BadWindow:
+ sterror("BadWindow");
+ exit(EXIT_FAILURE);
+ }
+ wm_hints->initial_state = WithdrawnState;
+ wm_hints->flags = wm_hints->flags | StateHint;
+#endif
+
+ err = XSetWMHints(dpy, billy, wm_hints);
+ switch(err) {
+ case BadAlloc:
+ sterror("BadAlloc");
+ exit(EXIT_FAILURE);
+ case BadWindow:
+ sterror("BadWindow");
+ exit(EXIT_FAILURE);
+ }
+
+#ifdef WMAKER /* Look at the comment for XSizeHints * BigBunny */
+ BigBunny = XAllocSizeHints();
+ if (NULL == BigBunny) {
+ (void)printf("Not enough memory, %s:%d.\n", __FILE__, __LINE__);
+ exit(EXIT_FAILURE);
+ }
+/* Nasty Hack. XSizeHints.x & XSizeHints.y are obsolete. */
+ BigBunny->x = 0;
+ BigBunny->y = 0;
+ BigBunny->flags = PPosition;
+ XSetWMNormalHints(dpy, billy, BigBunny);
+ XFree(BigBunny);
+#endif
+
+/* The only thing we would like to do - update our billy */
+#ifndef WMAKER
+ XSelectInput(dpy, billy, ExposureMask | ButtonPressMask);
+#else /* ...or dilly?! */
+ XSelectInput(dpy, dilly, ExposureMask | ButtonPressMask);
+#endif
+
+ XSetCommand(dpy, billy, argv, argc);
+
+/* Programmer supplied functions */
+#ifndef WMAKER
+ getGC(billy, &gc);
+#else
+ getGC(dilly, &gc);
+#endif
+
+ read_images(); /* Let's read icon images */
+
+/* Let's look */
+ XMapWindow(dpy, billy); /* We would like to see the window. */
+
+/* HELLO! HELLO! HELLO! Is that our GOOD FRIEND main loop here? */
+ while (1) {
+ XNextEvent(dpy, &labuda.core);
+ switch (labuda.core.type) {
+
+ case Expose: /* We should update our window. */
+ if (labuda.core.xexpose.count != 0)
+ /* Well, I knew what does it mean,
+ but I forgot :) */
+ break;
+#ifndef WMAKER
+ update_window(billy, gc, state);
+#else
+ update_window(dilly, gc, state);
+#endif
+ break;
+ case ButtonPress:
+
+ switch (labuda.core.xbutton.button) {
+ case Button1:
+#ifdef DEBUG
+ puts("Button1 pressed.");
+#endif
+ XkbLockGroup(dpy,
+ XkbUseCoreKbd,
+ (state + 1) % 4);
+ break;
+ case Button2:
+#ifdef DEBUG
+ puts("Button2 pressed.");
+#endif
+ XkbLockGroup(dpy,
+ XkbUseCoreKbd,
+ (state + 3) % 4);
+ break;
+ case Button3:
+#ifdef DEBUG
+ puts("Button3 pressed, bye.");
+#endif
+ XFreeGC(dpy, gc);
+ XDestroyWindow(dpy, billy);
+#ifdef WMAKER
+ XDestroyWindow(dpy, dilly);
+#endif
+ XCloseDisplay(dpy);
+ exit(0);
+ }
+ break;
+ default: /* XkbLockGroup happens : FIXME */
+ drip();
+ state = labuda.state.group;
+#ifdef DEBUG
+ printf("%u\n", state);
+#endif
+ if ((state < 0) || (state > 4))
+ state = 4;
+#ifndef WMAKER
+ update_window(billy, gc, state);
+#else
+ update_window(dilly, gc, state);
+#endif
+
+#ifdef DEBUG
+ puts("."); /* XkbLockGroup happens */
+#endif
+ }
+ }
+
+}
diff --git a/fookb.cf b/fookb.cf
new file mode 100644
index 0000000..fcdbbff
--- /dev/null
+++ b/fookb.cf
@@ -0,0 +1,11 @@
+{
+# Icon1 = "/usr/share/fookb/1.xpm";
+# Icon2 = "/usr/share/fookb/2.xpm";
+ Icon1 = "/usr/share/fookb/lat.xpm";
+ Icon2 = "/usr/share/fookb/rus.xpm";
+ Icon3 = "/usr/share/fookb/3.xpm";
+ Icon4 = "/usr/share/fookb/4.xpm";
+ IconBoom = "/usr/share/fookb/boom.xpm";
+ Sound = "Yes";
+ Command = "/usr/bin/play /usr/share/fookb/beep_spring.au";
+}
diff --git a/fookb.h b/fookb.h
new file mode 100644
index 0000000..e459b2b
--- /dev/null
+++ b/fookb.h
@@ -0,0 +1,19 @@
+/*
+ * fookb.h
+ *
+ * (c) 1998, 1999, 2000, 2001 Alexey Vyskubov <alexey at pepper.spb.ru>
+ *
+ */
+
+#ifndef FOOKB_H
+#define FOOKB_H
+
+//void getGC(Window, GC *);
+void update_window(Window, GC, unsigned int);
+
+extern Display *dpy; /* X display */
+extern int scr; /* X screen */
+extern Window root; /* X root window */
+extern char mydispname[256]; /* X display name */
+
+#endif /* FOOKB_H */
diff --git a/fookb.resources b/fookb.resources
new file mode 100644
index 0000000..b547dbe
--- /dev/null
+++ b/fookb.resources
@@ -0,0 +1,7 @@
+fookb.icon1: /usr/share/fookb/1.xpm
+fookb.icon2: /usr/share/fookb/2.xpm
+fookb.icon3: /usr/share/fookb/3.xpm
+fookb.icon4: /usr/share/fookb/4.xpm
+fookb.iconBoom: /usr/share/fookb/boom.xpm
+fookb.sound: Yes
+fookb.command: /usr/bin/play /usr/share/fookb/beep_spring.au
diff --git a/globals.c b/globals.c
new file mode 100644
index 0000000..9f78aae
--- /dev/null
+++ b/globals.c
@@ -0,0 +1,23 @@
+/*
+ * File: globals.c
+ *
+ * (c) 1999, 2000, 2001 Alexey Vyskubov <alexey at pepper.spb.ru>
+ *
+ * Created: Sun Sep 26 13:54:08 1999
+ */
+
+#include <X11/Xlib.h>
+#include <X11/Xresource.h>
+
+Display *dpy; /* X Window display */
+int scr; /* X Window screen */
+Window root; /* X root window */
+char mydispname[256]; /* X display name */
+
+XImage *stupid_picture[5]; /* Icons for fookb */
+
+XrmDatabase cmdlineDB; /* X resource database generated from
+ command line */
+XrmDatabase finalDB; /* X resource database generated from
+ app-defaults and X resource
+ database */
diff --git a/images.c b/images.c
new file mode 100644
index 0000000..df501e6
--- /dev/null
+++ b/images.c
@@ -0,0 +1,138 @@
+/*
+ * images.c
+ *
+ * (c) 1998, 1999, 2000, 2001 Alexey Vyskubov <alexey at pepper.spb.ru>
+ */
+
+#include <stdio.h> /* puts() */
+#include <stdlib.h>
+#include <string.h>
+
+/* Xpm fun */
+#include <X11/xpm.h>
+
+#include "fookb.h"
+#include "params.h"
+#include "images.h"
+
+/* Let us make lint happy! */
+#define lputs(x) (void)(puts(x))
+
+static int get_one_image(name, index)
+char *name;
+int index;
+{
+ int foo;
+
+ foo = XpmReadFileToImage(dpy, name, &stupid_picture[index],
+ NULL, NULL);
+ return (foo);
+}
+
+void read_images()
+{
+ int i;
+ int res;
+ int status = 0;
+
+ for (i = 0; i < 5; i++) {
+
+ switch (i) {
+ case 0:
+ res = get_one_image(read_param("Icon1"), 0);
+ break;
+ case 1:
+ res = get_one_image(read_param("Icon2"), 1);
+ break;
+ case 2:
+ res = get_one_image(read_param("Icon3"), 2);
+ break;
+ case 3:
+ res = get_one_image(read_param("Icon4"), 3);
+ break;
+ default:
+ res = get_one_image(read_param("IconBoom"), 4);
+ break;
+ }
+
+ switch (res) {
+ case XpmOpenFailed:
+ lputs("Xpm file open failed:");
+ status = 1 << 5;
+ break;
+ case XpmFileInvalid:
+ lputs("Xpm file is invalid:");
+ status = 1 << 6;
+ break;
+ case XpmNoMemory:
+ lputs("No memory for open xpm file:");
+ status = 1 << 7;
+ break;
+ default:
+ break;
+ }
+
+ if (!(status == 0)) {
+ status += 1 << i;
+ switch (i) {
+ case 0:
+ lputs(read_param("Icon1"));
+ break;
+ case 1:
+ lputs(read_param("Icon2"));
+ break;
+ case 2:
+ lputs(read_param("Icon3"));
+ break;
+ case 3:
+ lputs(read_param("Icon4"));
+ break;
+ case 4:
+ lputs(read_param("IconBoom"));
+ break;
+ default:
+ lputs("UNKNOWN ERROR! PLEASE REPORT!!!");
+ exit(-2);
+ }
+ exit(status);
+ }
+ }
+
+}
+
+void update_window(win, gc, whattodo)
+Window win;
+GC gc;
+unsigned int whattodo;
+{
+ int err;
+
+ err = XPutImage(dpy, win, gc, stupid_picture[whattodo],
+ 0, 0, 0, 0, 48, 48);
+
+ if (0 == err) return;
+
+ switch (err) {
+ case BadDrawable:
+ lputs("Fatal error, XPutImage returns BadDrawable. "
+ "Please report!");
+ break;
+ case BadGC:
+ lputs("Fatal error, XPutImage returns BadGC. "
+ "Please report!");
+ break;
+ case BadMatch:
+ lputs("Fatal error, XPutImage returns BadMatch. "
+ "Please report!");
+ break;
+ case BadValue:
+ lputs("Fatal error, XPutImage returns BadValue. "
+ "Please report!");
+ break;
+ default:
+ lputs("Fatal error, XPutImage returns unknown error. "
+ "Please report, but probably "
+ "it is a bug in X.");
+ break;
+ }
+}
diff --git a/images.h b/images.h
new file mode 100644
index 0000000..018064e
--- /dev/null
+++ b/images.h
@@ -0,0 +1,16 @@
+/*
+ * images.h
+ *
+ * (c) 1998, 1999, 2000, 2001 Alexey Vyskubov <alexey at pepper.spb.ru>
+ */
+
+#ifndef IMAGES_H
+#define IMAGES_H
+
+/* int get_one_image(char *, int); */
+void read_images(void);
+char *get_me_name(int);
+
+extern XImage *stupid_picture[5]; /* Icons for fookb */
+
+#endif /* IMAGES_H */
diff --git a/lat.xpm b/lat.xpm
new file mode 100644
index 0000000..c891c28
--- /dev/null
+++ b/lat.xpm
@@ -0,0 +1,301 @@
+/* XPM */
+static char *magick[] = {
+/* columns rows colors chars-per-pixel */
+"48 48 247 2",
+" c #080000",
+". c Gray3",
+"X c #100808",
+"o c #180000",
+"O c #080821",
+"+ c #000031",
+"@ c #080831",
+"# c #101029",
+"$ c #181831",
+"% c #210000",
+"& c #210810",
+"* c #290810",
+"= c #211010",
+"- c #291010",
+"; c #310008",
+": c #390008",
+"> c #291821",
+", c #292129",
+"< c #292939",
+"1 c #312929",
+"2 c #313131",
+"3 c #000042",
+"4 c #000052",
+"5 c #00005a",
+"6 c #080852",
+"7 c #08085a",
+"8 c #180042",
+"9 c #101042",
+"0 c #181842",
+"q c #181852",
+"w c #00006b",
+"e c #000073",
+"r c #00007b",
+"t c #080873",
+"y c #18006b",
+"u c #181063",
+"i c #181863",
+"p c #101073",
+"a c #10107b",
+"s c #181873",
+"d c #18187b",
+"f c #21005a",
+"g c #29184a",
+"h c #311852",
+"j c #290073",
+"k c #290873",
+"l c #21187b",
+"z c #39106b",
+"x c #21214a",
+"c c #393942",
+"v c #313152",
+"b c #393952",
+"n c #212163",
+"m c #21216b",
+"M c #21296b",
+"N c #292963",
+"B c #21217b",
+"V c #292973",
+"C c #29317b",
+"Z c #31216b",
+"A c #39396b",
+"S c #31317b",
+"D c #39397b",
+"F c #420818",
+"G c #4a0010",
+"H c #520818",
+"J c #5a0010",
+"K c #5a0818",
+"L c #5a0821",
+"P c #4a2931",
+"I c #5a3139",
+"U c #6b0010",
+"Y c #730010",
+"T c #730018",
+"R c #7b0018",
+"E c #630821",
+"W c #631021",
+"Q c #6b1021",
+"! c #6b1029",
+"~ c #730031",
+"^ c #731029",
+"/ c #7b1829",
+"( c #732939",
+") c #4a2973",
+"_ c #52397b",
+"` c Gray29",
+"' c #42425a",
+"] c #4a4a5a",
+"[ c #5a525a",
+"{ c #42426b",
+"} c #42427b",
+"| c #525263",
+" . c #52526b",
+".. c #5a6373",
+"X. c #734252",
+"o. c #7b4a5a",
+"O. c Gray39",
+"+. c #63636b",
+"@. c Gray42",
+"#. c #7b6b73",
+"$. c #7b737b",
+"%. c #000084",
+"&. c #080884",
+"*. c #000094",
+"=. c #101084",
+"-. c #10108c",
+";. c #18188c",
+":. c #182184",
+">. c #212184",
+",. c #292984",
+"<. c #21219c",
+"1. c #293194",
+"2. c #29319c",
+"3. c #313184",
+"4. c #39398c",
+"5. c #313194",
+"6. c #393994",
+"7. c #39399c",
+"8. c #3131a5",
+"9. c #424284",
+"0. c #4a4a84",
+"q. c #424294",
+"w. c #4a4a9c",
+"e. c #4a529c",
+"r. c #525284",
+"t. c #52529c",
+"y. c #525a94",
+"u. c #5a5a9c",
+"i. c #4242bd",
+"p. c #4a4abd",
+"a. c #5252a5",
+"s. c #5a5aa5",
+"d. c #5252b5",
+"f. c #5a63b5",
+"g. c #636384",
+"h. c #636394",
+"j. c #73738c",
+"k. c #6363a5",
+"l. c #6b6bad",
+"z. c #7373a5",
+"x. c #7373ad",
+"c. c #7b7bad",
+"v. c #7373b5",
+"b. c #4a4ac6",
+"n. c #7373c6",
+"m. c #7b84b5",
+"M. c #840018",
+"N. c #8c0018",
+"B. c #940018",
+"V. c #941031",
+"C. c #842131",
+"Z. c #ad0021",
+"A. c #a51839",
+"S. c #b50021",
+"D. c #b50829",
+"F. c #bd0021",
+"G. c #bd0831",
+"H. c #b51839",
+"J. c #8c1852",
+"K. c #940842",
+"L. c #9c0042",
+"P. c #94185a",
+"I. c #9c185a",
+"U. c #9c2163",
+"Y. c #ad0852",
+"T. c #a5215a",
+"R. c #845263",
+"E. c #8c5263",
+"W. c #847b7b",
+"Q. c #a5424a",
+"!. c #ad4a5a",
+"~. c #bd5a6b",
+"^. c #b5637b",
+"/. c #ce0018",
+"(. c #c60021",
+"). c #c60029",
+"_. c #ce0021",
+"`. c #d60021",
+"'. c #d60029",
+"]. c #de0029",
+"[. c #de0031",
+"{. c #c61842",
+"}. c #ce1842",
+"|. c #ff4a73",
+" X c #9c73ad",
+".X c #ad7394",
+"XX c #bd7384",
+"oX c #bd738c",
+"OX c #bd73a5",
+"+X c #d64a84",
+"@X c #c67384",
+"#X c #c6738c",
+"$X c #ce738c",
+"%X c #ce7b94",
+"&X c #ff5a84",
+"*X c #848484",
+"=X c #8c8484",
+"-X c Gray55",
+";X c #94848c",
+":X c Gray58",
+">X c #8484ad",
+",X c #8484b5",
+"<X c #848cb5",
+"1X c #8c8cb5",
+"2X c #8c8cbd",
+"3X c #8c94bd",
+"4X c #9494bd",
+"5X c #9c9cb5",
+"6X c #9c9cbd",
+"7X c #a5949c",
+"8X c #a5a5a5",
+"9X c Gray68",
+"0X c #a5a5bd",
+"qX c #ada5bd",
+"wX c #b5adad",
+"eX c #8484c6",
+"rX c #9c9cc6",
+"tX c #adadc6",
+"yX c #a5add6",
+"uX c #b5b5c6",
+"iX c #bdbdce",
+"pX c #bdc6ce",
+"aX c #ce8494",
+"sX c #d68494",
+"dX c #ff84ad",
+"fX c #c6bdce",
+"gX c #cebdc6",
+"hX c #cecece",
+"jX c #c6c6d6",
+"kX c #cecede",
+"lX c #ced6de",
+"zX c #d6c6ce",
+"xX c #d6dede",
+"cX c #dedeef",
+"vX c #e7cee7",
+"bX c #e7d6ef",
+"nX c #ffcef7",
+"mX c #f7dee7",
+"MX c #ffdee7",
+"NX c #e7e7e7",
+"BX c #e7e7ef",
+"VX c #efe7f7",
+"CX c #efeff7",
+"ZX c #f7e7ef",
+"AX c #ffe7ef",
+"SX c Gray97",
+"DX c Gray100",
+/* pixels */
+"$ @ 3 3 6 q n q q q n n i q q 0 q n i q q x q i m 0 ' v q m n q q q g ( C.C.C.C.C.C.( Q.~.!./ Q ",
+"@ n j.N B <.7.f.cXyXd.p.p.eXcXjXeXi.b.n.kXcXyXp.d.yXSXCXn.b.p.yXcXkX X+X|.|.|.|.|.&XdXnXDX&XG.D.",
+"# ' 9X*XV r a r.hX8XS t t 9.hXhX9.t t i 0XhXr.t t r.hX5Xi t t 0.lX4Xh K.D.S.D.D.G.G.G.}.}.G.Z.Z.",
+"O < =X0.3 5 4 Z :Xj.3 5 5 6 j.j.4 u m 4 0.g.q 7 4 n A { 3 m 7 q g.{ 8 ~ B.B.B.N.N.N.N.N.N.N.M.M.",
+"O 0 9 x r.5X>Xz.7 4.z.0X1X3.e w S 0XpX3.r e 4.uXqXD e e 3.iX0XD r %.s .X at XXXXXoXoXoXXXXXR.E.R.R.",
+"O + 3 3 0.SXjXt %.r y.SXjXa %.*.t 0XDXm %.%.t 0XtXt &.r B DX5Xt *.*.=.SXDXSXDXSXDXSXCXNX9X8X7X7X",
+"O @ x 9 A c.l.d w.,.} ,Xh.d >.9.s 3XrXd s.tXD >X4XM c.k.s 6XrXB q.>.l vXmXmXmXZXmXmXmXzX7X;X;X-X",
+"# c @.*X9.r a 6XDXNXw.e r v.SXDXz.e %.4.fXDXl.%.r l.DXiX3.r e rXDXcX_ P.H.H.H.H.A.H.A.A.^ ! ! Q ",
+"O # #.| 5 %.r m CX1X5 %.r m SXCXs %.%.5 rXjX9.e r a CXtXw %.e s CXm.f Y.].].].[.[.[.).).N.R R R ",
+"O < < .S 0Xs.6.:.7.=.c.l.:.3.3.w.rXtX,Xw.a v.rX3Xw.3.9.a.4XtXz.p 8.z Y.].].].[.[.[.[.).B.M.M.M.",
+"O + + 3 g.DXjX3.%.%.6.DXfX3.%.%.=.kXDXy.e *.a xXcXp %.e 0.DXDXe.%.*.k Y.].].].'.[.'.).).N.R M.R ",
+"O + 3 3 D iX6Xw %.r t CXtXw =.5.w h.iX9.t q.w h.l.p >.q.i 6X6Xt 7.-.y U.{.H.{.H.H.H.H.A./ ! ! ! ",
+"# < ] .l.t w.>XtX4Xw.S 4.q.iXkXk.-.a l.uXSXl.&.r x.SXDXl.e e z.DXyX9.vXZXMXZXSXVXSXZXkX7X;X:X;X",
+"O $ #. at .t %.%.u.DXkXa r %.a 6XDXD %.*.t 6XSX} %.*.>.CXCX>.*.%.3.DX5Xq SXDXDXDXDXDXDXSXNX8X:X:X:X",
+"O $ b b 5 w.:.r 0Xh.r 5.=.&.,Xh.k.t 5.t ,Xy.x.V :.>.4.D d >.9.k.t.m.Z OXsXsX$XsXsX%X%XXXE.o.o.o.",
+"O @ + 6 g.CXuX6.%.*.6.kXiX4.%.%.4.iXkXh.&.r q.BXBX6.%.%.l.SXDXx.e *.k L././.(.(.F.F.F.Z.Y Y Y Y ",
+"O + 3 3 A CX0Xt %.%.B DXtXt %.%.t 0XDXS w &.5 6XrXw %.r p SXCXi %.*.j Y.].].].].[.'.'.).B.M.M.M.",
+"# # ] v h.u.2XC c.l.m rX4X:.k.c.,.2Xy.0X2XyX,X3.3.a.4XtXt.4.9.1.yXl.z Y.].].'.].[.[.).).N.R R M.",
+"O < @. at .S r t l.DXpX4.r r 3.fXDXh.=.r d kXDXu.%.%.e.DXDXy.%.%.z.DXiX) I.{.H.{.H.H.H.H.A./ ^ ! ! ",
+"O $ [ .5 %.*.7 CXtXw %.%.t 6XjX0.e %.&.k.,X>.r %.t rX0Xt %.w 4.jX4Xu bXZXMXZXVXAXVXZXzX7X;X;X;X",
+"O $ @ x m 6.>.;.5.q.>.c.l.;.6.t w.h.,Xa *.r w.rX4X6.e w q.uX4Xx.a 7.>.SXDXDXDXDXDXDXSXNX8X:X7X:X",
+"O + 3 3 ,XDXcX7.%.e h.DXfX1.%.%.,.jXDX3.*.*.a hXkX:.%.r y.DXjXa *.*.=.vXmXmXmXmXmXmXvXzX7X-X-X=X",
+"O + x 3 i cX1Xu >.4.r.jX6Xs ,.q.i tXCXm C q.s 0XtXp k.c.n tXk.m q.1.z J.A.A.A.V.A.A.A.V.Q E E E ",
+"# # @.| D a ,.s.DXDX4Xt 5.w.lXDX1Xw.1.w.kXDX3Xq.7.q.lXDXl.%.a m.DXkX_ L.`.`.`.'._.).(.S.M.R Y T ",
+"O < [ ..t *.*.-.6XrX&.*.*.&.l.<X1.*.*.%.v.3X,.*.*.*.3XrX&.*.*.2.m.f.j Y.].].'.[.].[.'.).N.M.M.M.",
+"O $ # v m -.-.:.i p d =.;.;.s t >.-.;.-.d p >.;.-.:.p p ;.-.=.>.t d z T.{.{.{.{.{.{.H.A./ ^ ^ ! ",
+", [ +.*XxXBXCXVXVXCXCXCXCXCXCXCXCXCXCXCXCXBXCXCXCXCXCXCXCXCXCXCXCXCXCXSXZXZXZXZXBXZXZXkX7X;X;X;X",
+"1 O. at .:XxXSXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXSXNX8X:X:X:X",
+"2 [ @.:XxXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXSXNX8X7X:X:X",
+"> P I X.^. at X@X at X#X at X#X at X$X at X@X$X at X$X at X@X at X@X at X$X at X@X at X@X at X@X$X at X#X$X#X$X at X$X at X$X#X#X at X^.o.X.X.X.",
+"= G G U B.S.F.F.S.F.S.F.S.F.S.F.S.S.F.F.S.F.S.S.F.F.F.S.F.S.S.S.S.Z.S.S.S.Z.S.Z.S.Z.Z.B.Y U U J ",
+"- G J Y F._._.`.`.`.).`.`.`.).`.`.`._.`.'.`.`.`.`._.`.'.`._.`.`.'.).`.'._.'.).`.'.).).).N.R R R ",
+"* G J R ).'.'.[.[.[.'.].'.[.].[.[.[.'.'.].'.[.[.[.[.'.'.[.'.].[.[.].'.].[.'.].[.'.].'.(.N.R M.M.",
+"- F L ! A.{.{.{.H.{.{.{.{.{.{.{.H.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.H.A./ ^ ^ ! ",
+"2 [ O.-XzXmXZXZXVXZXVXZXVXBXZXZXVXZXVXBXZXVXZXBXZXVXZXBXZXVXZXBXZXVXBXZXVXZXZXVXZXVXZXkX7X;X;X;X",
+"2 [ #.;XcXSXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXSXNX8X:X:X:X",
+"1 [ @.*XzXmXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXZXmXzX7X;X:X;X",
+"= F F W V.A.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.A.H.H.H.H.A.H.H.A.A.A.Q Q Q W ",
+"- G J Y S.(._._._.).)._._.)._._._.).).)._.)._._.).).)._.)._._._.).).)._.)._._._._.)._.S.M.R Y Y ",
+"- G J T F.).).'.).'.).'.).'.).).'.)._.'.'.'.).).'.).'.'.'.).).'.'.'.'.'.'.).).'.'.).(.).N.R R R ",
+"* G G U Z.S.F.F.F.F.F.F.F.S.).F.F.F.F.S.F.S.).F.F.S.F.F.S.).F.F.S.S.S.F.S.).F.F.S.F.S.Z.T T U T ",
+"> I I X.XX%X%XaXsX%XaXaXsXaXaXaX%XaX%XaXaXaXaXaXsX%XaXaXaXaXaXaXsX%XaXaXaXaXaXaXsX%X%XXXR.X.o.o.",
+", [ +.*XxXSXSXSXSXSXDXSXSXSXSXDXSXDXSXDXSXDXSXSXSXDXSXDXSXSXDXSXSXDXSXDXSXSXDXSXDXSXCXxX7X-X:X-X",
+", ` [ [ wXgXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXwX#.$.W.W.",
+"= * * F F H K L L L K L L L L L L L K L L L L L L K L L L L L L L K L L L L L L L H H H F L L L ",
+"X ; ; ; ; ; : ; : ; : ; : ; : ; : ; : ; ; : ; : ; : ; : ; : ; : ; : ; : ; : ; : ; : : G G : G J ",
+"X X o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o % ; ; : ",
+"= . . X X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X X & * "
+};
diff --git a/opts.c b/opts.c
new file mode 100644
index 0000000..9cd33a6
--- /dev/null
+++ b/opts.c
@@ -0,0 +1,115 @@
+/*
+ * File: opts.c
+ *
+ * Created: Sun Sep 26 00:10:42 1999
+ */
+
+#include <stdio.h>
+
+#ifdef HAVE_LIBPROPLIST
+#ifdef HAVE_PROPLIST_H
+#define PROPLIST
+#endif
+#endif
+
+#include <string.h>
+
+#include <X11/Xlib.h> /* X Window standard header */
+#include <X11/Xresource.h> /* X resource manager stuff */
+
+#include "fookb.h"
+#include "opts.h"
+
+static int tblentr = 6; /* There are 6 recognized
+ options */
+static XrmOptionDescRec tbl[] = {
+ {"-icon1", ".icon1",
+ XrmoptionSepArg,
+ (XPointer) NULL},
+ {"-icon2", ".icon2",
+ XrmoptionSepArg,
+ (XPointer) NULL},
+ {"-icon3", ".icon3",
+ XrmoptionSepArg,
+ (XPointer) NULL},
+ {"-icon4", ".icon4",
+ XrmoptionSepArg,
+ (XPointer) NULL},
+ {"-iconboom", ".iconBoom",
+ XrmoptionSepArg,
+ (XPointer) NULL},
+ {"-display", ".display",
+ XrmoptionSepArg,
+ (XPointer) NULL}
+};
+
+void ParseOptions(argc, argv)
+int *argc;
+register char *argv[];
+{
+ XrmValue value;
+ char *str_type[20];
+ mydispname[0] = '\0';
+
+ XrmParseCommand(&cmdlineDB, tbl, tblentr, "fookb", argc, argv);
+
+#ifdef DEBUG
+ puts("Hereiam");
+#endif
+
+ if (1 != *argc) {
+ puts("Fookb v 2.13");
+ puts("\tUsage: fookb [options]");
+ puts("Possible options:");
+ puts("-icon1 xpm_file\t\tIcon to show for the 1st Xkb group");
+ puts("-icon2 xpm_file\t\tIcon to show for the 2nd Xkb group");
+ puts("-icon3 xpm_file\t\tIcon to show for the 3rd Xkb group");
+ puts("-icon4 xpm_file\t\tIcon to show for the 4th Xkb group");
+ puts("-iconboom xpm_file\tIcon to show when Xkb system goes crazy");
+ puts("-display X_display\tX display to use (normally not needed)");
+ puts("");
+#ifdef PROPLIST
+ puts("Command line parameters takes precedence over X resources or configuration file!");
+ printf("Configuration file location: ");
+#ifdef WMAKER
+ puts("~/GNUstep/Defaults/FOOkb");
+#else
+ puts("~/.fookb");
+#endif
+#else
+ puts("Command line paramaters takes precedence over X resources!");
+#endif
+ exit(0);
+ }
+
+ /* We should get display now -- we need it for access to other
+ databases */
+ if (XrmGetResource(cmdlineDB, "fookb.display", "Fookb.Display",
+ str_type, &value) == True) {
+ (void) strncpy(mydispname, value.addr, (size_t)value.size);
+#ifdef DEBUG
+ puts(mydispname);
+#endif
+ }
+
+}
+
+void MoreOptions()
+{
+
+ XrmDatabase servDB, appDB;
+
+ appDB = XrmGetFileDatabase
+ ("/usr/X11R6/lib/X11/app-defaults/Fookb");
+ (void) XrmMergeDatabases(appDB, &finalDB); /* Fookb defaults file
+ added into final
+ database */
+
+ /* Let's look: does xrdb load server defautls? (As a property of
+ root window.) */
+ if (XResourceManagerString(dpy) != NULL) {
+ servDB = XrmGetStringDatabase(XResourceManagerString(dpy));
+ XrmMergeDatabases(servDB, &finalDB);
+ }
+
+}
diff --git a/opts.h b/opts.h
new file mode 100644
index 0000000..9ba2082
--- /dev/null
+++ b/opts.h
@@ -0,0 +1,33 @@
+/*
+ * File: opts.h
+ *
+ * (c) 1999, 2000, 2001 Alexey Vyskubov <alexey at pepper.spb.ru>
+ *
+ * Created: Sun Sep 26 00:10:23 1999
+ */
+
+#ifndef OPTS_H
+#define OPTS_H
+
+/* X Window resource management */
+#include <X11/Xlib.h>
+#include <X11/Xresource.h>
+extern XrmDatabase cmdlineDB; /* Database for resources from command
+ line */
+
+extern XrmDatabase finalDB; /* Database for resources from other
+ sources -- app-defaults and X
+ Window resources */
+
+void ParseOptions(int *argc, register char *argv[]); /* Parse
+ command
+ line
+ options */
+
+void MoreOptions(void); /* Parse
+ app-defaults
+ and X
+ resources
+ database */
+
+#endif /* OPTS_H */
diff --git a/params.c b/params.c
new file mode 100644
index 0000000..e45b644
--- /dev/null
+++ b/params.c
@@ -0,0 +1,92 @@
+#include <stdio.h>
+#include <string.h> /* strlen & strcat */
+#include <ctype.h> /* toupper */
+#include <stdlib.h>
+#ifdef HAVE_LIBPROPLIST
+#ifdef HAVE_PROPLIST_H
+#define PROPLIST
+#endif
+#endif
+#include "params.h"
+#include "opts.h"
+
+char *read_param(string)
+char *string;
+{
+
+ XrmValue xvalue;
+
+#ifdef HAVE_LIBPROPLIST
+#ifdef HAVE_PROPLIST_H
+#define PROPLIST
+#endif
+#endif
+
+#ifdef PROPLIST
+ proplist_t pl, value;
+#endif
+
+ char *newstring;
+ char *newString;
+ char *result;
+ char *str_type[20];
+
+ newstring = (char *) malloc(7 + strlen(string)); /* 7 is
+ strlen("fookb.") + 1 */
+ newString = (char *) malloc(7 + strlen(string)); /* The same */
+
+ strcpy(newstring, "fookb.");
+ strcpy(newString, "Fookb.");
+
+ strcat(newstring, string);
+ strcat(newString, string);
+ newstring[6] = tolower(newstring[6]);
+ newString[6] = toupper(newString[6]);
+
+/* Command line parameters take precedence over all */
+
+ if (XrmGetResource(cmdlineDB, newstring, newString, str_type,
+ &xvalue) == True) {
+ result = (char *) malloc((int) xvalue.size + 1);
+ strncpy(result, xvalue.addr, (int) xvalue.size);
+ result[(int) xvalue.size + 1] = '\0';
+ return result;
+ }
+#ifdef PROPLIST
+
+ pl = PLGetProplistWithPath(DEFAULTS_FILE);
+
+ if (!pl) {
+ puts("Cannot open config file: ");
+ puts(DEFAULTS_FILE);
+ exit(20);
+ }
+
+ value = PLGetDictionaryEntry(pl, PLMakeString(string));
+
+ if (!value) {
+ puts("Cannot find in config file value for: ");
+ puts(string);
+ exit(21);
+ }
+
+ result = (char *) malloc(strlen(PLGetString(value)) + 1);
+ strcpy(result, PLGetString(value));
+ return result;
+
+#else /* PROPLIST */
+
+ if (XrmGetResource(finalDB, newstring, newString, str_type,
+ &xvalue) == True) {
+ result = (char *) malloc((int) xvalue.size + 1);
+ strncpy(result, xvalue.addr, (int) xvalue.size);
+ result[(int) xvalue.size + 1] = '\0';
+ return result;
+ } else {
+ printf("Fatal error: cannot find configuration parameter %s\n", newstring);
+ exit(25);
+ }
+
+#endif
+
+}
diff --git a/params.h b/params.h
new file mode 100644
index 0000000..95b9423
--- /dev/null
+++ b/params.h
@@ -0,0 +1,27 @@
+/*
+ * params.h
+ *
+ * (c) 1999, 2000, 2001 Alexey Vyskubov <alexey at pepper.spb.ru>
+ *
+ */
+
+#ifndef PARAMS_H
+#define PARAMS_H
+
+#ifdef PROPLIST
+#include <proplist.h>
+
+#ifdef WMAKER
+#define DEFAULTS_FILE "~/GNUstep/Defaults/FOOkb"
+#else
+#define DEFAULTS_FILE "~/.fookb"
+#endif /* WMAKER */
+
+#endif /* PROPLIST */
+
+#include <X11/Xlib.h> /* X Window standard header */
+#include <X11/Xresource.h> /* X resource manager stuff */
+
+char *read_param(char *);
+
+#endif /* PARAMS_H */
diff --git a/rus.xpm b/rus.xpm
new file mode 100644
index 0000000..f0fbbd5
--- /dev/null
+++ b/rus.xpm
@@ -0,0 +1,310 @@
+/* XPM */
+static char *magick[] = {
+/* columns rows colors chars-per-pixel */
+"48 48 256 2",
+" c Gray0",
+". c #070000",
+"X c #0c0000",
+"o c #130000",
+"O c #1d0001",
+"+ c #150c27",
+"@ c #1f1234",
+"# c #1c1927",
+"$ c #270002",
+"% c #3d0002",
+"& c #330002",
+"* c #362b2b",
+"= c #3d3838",
+"- c #00034c",
+"; c #00045e",
+": c #1b0756",
+"> c #1b084a",
+", c #00056e",
+"< c #1b0676",
+"1 c #1e086a",
+"2 c #321f5c",
+"3 c #271456",
+"4 c #2f1b6b",
+"5 c #311d6e",
+"6 c #382b55",
+"7 c #3d3a4a",
+"8 c #372270",
+"9 c #410003",
+"0 c #450003",
+"q c #4c0003",
+"w c #42080a",
+"e c #5d0004",
+"r c #550004",
+"t c #5c1c1f",
+"y c #481214",
+"u c #4e3e3e",
+"i c #592526",
+"p c #5e3436",
+"a c #6d0005",
+"s c #670205",
+"d c #660e11",
+"f c #730005",
+"g c #780005",
+"h c #7e0005",
+"j c #7b181b",
+"k c #733739",
+"l c #433858",
+"z c #412e7d",
+"x c #4a3a75",
+"c c #4c4a4a",
+"v c #564040",
+"b c #544e58",
+"n c #5b595a",
+"m c #4a4757",
+"M c #4a4163",
+"N c #534d65",
+"B c #554778",
+"V c #5b5a69",
+"C c #684f50",
+"Z c #675a5b",
+"A c #775556",
+"S c #764345",
+"D c #6e5f60",
+"F c #635a7d",
+"G c #6d6b6b",
+"H c #646367",
+"J c #696877",
+"K c #716d6d",
+"L c #7c6565",
+"P c #716e7c",
+"I c #747373",
+"U c #7c7b7b",
+"Y c #72737e",
+"T c #000796",
+"R c #000690",
+"E c #1c099f",
+"W c #190785",
+"Q c #0007a5",
+"! c #180aba",
+"~ c #1808a8",
+"^ c #210d9a",
+"/ c #2a14a8",
+"( c #2e18b2",
+") c #3c238b",
+"_ c #3e26af",
+"` c #3323bc",
+"' c #0e0adc",
+"] c #140ac8",
+"[ c #140cd7",
+"{ c #1f1adb",
+"} c #000ae2",
+"| c #0c0ce9",
+" . c #000bf7",
+".. c #040bf7",
+"X. c #000bfd",
+"o. c #010cfd",
+"O. c #1111eb",
+"+. c #2114d2",
+"@. c #3827c4",
+"#. c #432b97",
+"$. c #4f368e",
+"%. c #51348f",
+"&. c #553d97",
+"*. c #48318f",
+"=. c #553aa1",
+"-. c #4636c5",
+";. c #59458a",
+":. c #5d499d",
+">. c #4a41bc",
+",. c #614e8a",
+"<. c #6a5495",
+"1. c #735d9e",
+"2. c #654dab",
+"3. c #755ea5",
+"4. c #6e6587",
+"5. c #7a689b",
+"6. c #7e7d8c",
+"7. c #777686",
+"8. c #7d7793",
+"9. c #7f8585",
+"0. c #850006",
+"q. c #8e0006",
+"w. c #960007",
+"e. c #910006",
+"r. c #940309",
+"t. c #9e1f24",
+"y. c #97292c",
+"u. c #a40007",
+"i. c #ab0107",
+"p. c #b60209",
+"a. c #b01015",
+"s. c #ba1d23",
+"d. c #9d3f42",
+"f. c #9b4649",
+"g. c #9d5c5e",
+"h. c #816767",
+"j. c #857b7b",
+"k. c #957879",
+"l. c #916668",
+"z. c #a27779",
+"x. c #c6020a",
+"c. c #d5000a",
+"v. c #dc000a",
+"b. c #db000a",
+"n. c #d21017",
+"m. c #d0282e",
+"M. c #c7282e",
+"N. c #e2000a",
+"B. c #e0040d",
+"V. c #ea010a",
+"C. c #f7000b",
+"Z. c #f5010b",
+"A. c #f2010c",
+"S. c #fd000b",
+"D. c #fe010c",
+"F. c #fc020d",
+"G. c #fa010c",
+"H. c #d04045",
+"J. c #837b8c",
+"K. c #827993",
+"L. c #887ba7",
+"P. c #83838e",
+"I. c #8f8c8c",
+"U. c #8d8d8d",
+"Y. c #888586",
+"T. c #848592",
+"R. c #878994",
+"E. c #888796",
+"W. c #898a95",
+"Q. c #8f8e9c",
+"!. c #8c8c9a",
+"~. c #8d9094",
+"^. c #8d9099",
+"/. c #918e8e",
+"(. c #9a8787",
+"). c #908f9d",
+"_. c #9c8f90",
+"`. c #929191",
+"'. c #969393",
+"]. c #969797",
+"[. c #91919f",
+"{. c #93959d",
+"}. c #959a9c",
+"|. c #9a9595",
+" X c #9c9a9a",
+".X c #928aa4",
+"XX c #9495a2",
+"oX c #9798a4",
+"OX c #999aa6",
+"+X c #9a9ba8",
+"@X c #9f9fad",
+"#X c #9c9daa",
+"$X c #9a95a9",
+"%X c #9ca2a5",
+"&X c #9fa0ab",
+"*X c #a48a8a",
+"=X c #aa8d8d",
+"-X c #a59b9b",
+";X c #aa9596",
+":X c #ab9c9c",
+">X c #a29495",
+",X c #ba9b9b",
+"<X c #b39797",
+"1X c #a09fad",
+"2X c #a4a2a2",
+"3X c #a1a2ae",
+"4X c #aba3a3",
+"5X c #adaaaa",
+"6X c #a4a4b1",
+"7X c #a6a8b4",
+"8X c #a9aab6",
+"9X c #acadba",
+"0X c #aeb2b2",
+"qX c #afb6bb",
+"wX c #b5aaab",
+"eX c #b7a6a7",
+"rX c #b4b3b3",
+"tX c #b1b2be",
+"yX c #bbb7b7",
+"uX c #b8b7b7",
+"iX c #bbb2b2",
+"pX c #bdbaba",
+"aX c #b5baba",
+"sX c #b8b8c7",
+"dX c #c59f9f",
+"fX c #c4898a",
+"gX c #c2a3a3",
+"hX c #c6acac",
+"jX c #c7baba",
+"kX c #d2aeae",
+"lX c #d6b6b6",
+"zX c #cbc7c7",
+"xX c #c9c5c5",
+"cX c #c9c0c0",
+"vX c #cecaca",
+"bX c #c4c5c8",
+"nX c #cbd1d1",
+"mX c #d7c9c9",
+"MX c #dad6d6",
+"NX c #ded9d9",
+"BX c #d6d2d2",
+"VX c #c6c8d3",
+"CX c #e2c7c7",
+"ZX c #e1dddd",
+"AX c #ead8d8",
+"SX c #e5e0e0",
+"DX c #eee7e7",
+"FX c #f3ecec",
+"GX c #f3e7e7",
+"HX c #f6f1f1",
+"JX c #f5f0f0",
+"KX c #fbf6f6",
+"LX c #fbf5f5",
+"PX c #fcf7f7",
+"IX c #faf2f2",
+"UX c Gray100",
+/* pixels */
+"4XpXvXMXZXDXFXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXKXUXUXUXUXFXZX",
+"/.4XpXxXMXFXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXMXvX",
+"U /.2XwXpXjXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXvXvXBXZXSXvXxXpX",
+"H U /. X2XrXyXyXyXyXpXyXyXyXpXyXpXyXyXpXyXyXpXyXyXyXpXyXpXyXyXpXyXyXpXyXyXyXpXyXyXpXyXrXrXrXwX5X",
+"n G j.I.vXNXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXSXZXBX2X4X2X-X",
+"b H I `.MXDXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXJXFXNX4X X X|.",
+"c n K /.NXJXKXKXKXKXKXKXKXKXKXKXKXKXKXKXKXKXKXIXdXkXKXKXKXKXKXKXKXKXKXKXKXKXKXKXKXKXJXZX2X|.|.'.",
+"c n G I.NXJXKXKXKXKXKXKXKXKXKXKXKXKXKXKXKXKXmXdX;X,XkXlXKXKXKXKXKXKXKXKXKXKXKXKXKXKXJXZX2X'.'.'.",
+"c n K /.NXHXKXKXPXPXPXPXPXPXPXPXPXPXPXPXPXkX5XnXpXuXbXrXCXPXPXPXPXPXPXPXPXPXPXPXKXKXJXZX2X'.'.`.",
+"c n G /.NXHXKXKXPXPXPXPXPXPXPXPXAXDXPXPXmXh.aXuXuXrXpXqXlXPXPXPXDXAXIXPXPXPXPXPXKXKXJXZX-X'.'.`.",
+"c n G I.NXHXKXKXPXPXPXPXPXPXKXCXeX(.lXPX,X* U X2X2X}.4XAXFXPXlX(.;XCXPXPXPXPXPXKXKXJXZX2X'.'.`.",
+"c n G I.NXHXKXKXPXPXPXPXPXPXCX,XpX=XhXgX:Xn b 5X X].2XgXlX;X,XiX<XgXlXAXPXPXPXPXKXKXJXZX2X'.'.`.",
+"c n G I.NXHXKXKXPXPXPXPXPXKX=XaX(.k.vX/.Y.Y.0X`.= c |.eXj.9.9.nXk.<XcXlXPXPXPXPXKXKXJXZX2X'.'.`.",
+"c n G I.NXHXKXKXPXPXPXPXKXAX>X;XeXu I.`.I U yX*XL u A rXY.K U.wXL <XgXhXJXPXPXPXKXKXJXZX-X'.'.`.",
+"c n K I.NXHXKXKXPXPXPXPXlX*XwX=XAXh.G ].`.U.*XGXFX=X* K `.Y.].:X<X*X*XhXkXkXPXPXKXKXJXZX2X'.'.`.",
+"c n K /.NXHXKXKXPXPXKXlX;X%X0XY.AX*XY.I U X].,XIXmXK ].I.G j.|.*XL U uX2XjXCXKXKXKXJXZX2X'.'.`.",
+"- ; , R } .o.o.o.o.| ;.{.[.{.oX;.4 H V [.).[.%X#.) ~.[.[.^.,.,.8 x R.XX[.$X5.O.o.o...} Q T T T ",
+"- ; , R } .o.o.o.../ 7.oX#XE.7XT.8 N P [.T.T.Q.K.E.Q.T.T..X<.$.6 6.6X!. at X}.L.+...o...} Q T T T ",
+"- ; , R ' .o.o.o.' 5.R.&XE.OX at X&Xx < > + # 7.T.#X&XE.7.5 E ] W l OX+XXXQ.3X.X1...o...} Q T T R ",
+"- ; , R } .o.o.o.! 4.3XW.3X3X at X3XoX( ' W + Y P.XXXXP.7./ o.| 5 ~.3X6X3X6X!.%X2.| o...} Q T T T ",
+"- ; , R } .o.o...*.}.3XXX[.+XOX#X0X&.o.~ V #XoXOX at X+X%X<.| ~ N 8X3XOX#X[.[.1XK.-.o. .} Q T T T ",
+"- ; , R ' .o.o.' 4 XXW.P.+X+XXX6X%X;.[ z T.8XtXXXoX at X8XXX;.3 N OX6XXXOX#XE.P..X{ o. .} Q T T T ",
+"- ; , R } .o.o.[ F T.XXXX[.#X+X#X at XQ.7.{.oX8X9XR.P E.XXoX{.9.E. at X3XoX#XoXQ.W.J.>.o. .} Q T T T ",
+"- ; , R } .o...! M R.T.9XoXoXXX#X at X6X3X&XQ.#X7X at X!.OXE.Q. at X7X6X6X#XXXOXOXQ.W.OX-.o. .} Q T T T ",
+"- ; , R } .o.o.! 6 {.8X3XOX+X#X#X#X6X at XXX6.[.sX7XXX at XQ.6.Q.+X@X#X+X at X@X).6.W.J.` o. .} Q T T R ",
+"- ; , R } .o.o.] x R.#XoXoXOX3X#X+XOX[.W.T.XX#XoXQ.Q.XXR.T.T.).[.XX#X#XXXQ.XX5. at .o. .} Q T T T ",
+"- ; , R ' .o.o.' 1 7 T.Q.[.[.XX[.oXXX[.6.[.Q.!.+XQ.T.XXQ.T.[.XXXX[.Q.XXXXQ.3X=...o. .} Q T T T ",
+"- ; , R } .o.o.o.^ J XXXX6.T.T.[.Q.Q.oX7.6X#XW.OX3XoX6XOX6.Q.XXQ.XXE.Q.Q.oX.X3.| o. .} Q T T T ",
+"- ; , R } .o.o.o.] : 7 P.6X3XQ.T.6.T.#X3X[.7.E.Q.[.W.J H oXXXE.E. at XE.E.8X9.%.| o.o. .} Q T T T ",
+"- ; , R } .o.o.o...~ 6 J 7.bXoXP.oXW.6XsXQ.Q.8XT.T.7XE.6.sX7X at XE.E.7X%X8.2._ o.o.o. .} Q T T T ",
+"- ; , R ' .o.o.o.o.| ~ : m P.oX7.4.N b +X+X9X8X at X@X8X9XOX+XV m !.VXsX5.&.o.o.o.o.o. .} Q T T T ",
+"- ; , R } .o.o.o.o.o.o.] : @ 7.*.~ : V XX+X3XoX#X3XoX6X#XXX7.V #XtX at X( ..o.o.o.o.o. .} Q T T T ",
+"- ; , R } .o.o.o.o.o.o.o.' < B L.:.B tXtX3XQ.P T.7.Y [.6X8XtX7X#X{.$X+.o.o.o.o.o.o. .} Q T T T ",
+"q e a e.v.C.S.S.D.D.D.D.D.D.p.L ~.0XpX(.p S h.L -X>Xj.Y.A i j.5X2X XH.G.D.D.D.D.S.S.C.N.u.w.w.w.",
+"q e a e.N.C.S.S.D.D.D.D.S.S.u.b I.;Xs.p.k *X(.:XiXwX:X(.=XS w t y.n.D.D.D.D.D.D.S.S.C.N.u.w.w.w.",
+"q e a e.N.C.S.S.D.D.D.D.S.S.x.y A z.M.a.wX;X4X:X>X:X:X4XfXgXs.N.G.D.D.D.D.D.D.D.S.S.C.N.u.w.w.w.",
+"q e a e.N.C.S.S.D.D.D.D.S.D.C.p.g f.z.k J.C -X_.:XeX;XjXf.g.m.D.D.D.D.D.D.D.D.D.S.S.C.N.u.w.w.w.",
+"q e a e.N.C.S.S.D.D.D.D.D.D.D.D.c.x.a.d A Z k.h.(.j.j.;XA d.A.D.D.D.D.D.D.D.D.D.S.S.C.N.u.w.w.w.",
+"q e a e.N.C.S.S.D.D.D.D.D.D.D.D.D.G.V.i.r.a i K /.j.l.t.x.G.D.D.D.D.D.D.D.D.D.D.S.S.C.N.u.w.w.w.",
+"q e a e.v.C.S.S.D.D.D.D.D.D.D.D.D.D.D.G.Z.c.q.d j a.B.G.D.D.D.D.D.D.D.D.D.D.D.D.S.S.C.N.u.w.w.w.",
+"q e a q.v.C.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.A.v.V.G.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.C.N.u.w.w.w.",
+"q r a q.v.C.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.C.v.u.e.w.e.",
+"0 r s 0.b.A.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.A.b.w.q.q.q.",
+"9 q r s p.c.b.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.b.c.x.h 0.0.0.",
+"& % q r r f g g g g g g g g g g g g g g g g g g g g g g g g g g g g g g g g g g g g g s a f g g ",
+"$ $ & % % % 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 0 q r e s ",
+"X o o o O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O $ $ $ & % q ",
+" X o O $ "
+};
diff --git a/sound.c b/sound.c
new file mode 100644
index 0000000..7280aff
--- /dev/null
+++ b/sound.c
@@ -0,0 +1,50 @@
+/*
+ * File: sound.c
+ *
+ * Created: Sun Sep 19 16:53:19 1999
+ */
+
+#include <unistd.h> /* fork() */
+#include <sys/types.h> /* pid_t */
+#include <stdlib.h> /* system */
+#include <errno.h>
+#include <stdio.h> /* puts() */
+
+
+#include "sound.h"
+#include "params.h"
+
+void drip()
+{
+
+ pid_t pid;
+
+ pid = fork();
+
+ if (pid == (pid_t) (-1)) {
+ puts("Cannot fork!");
+ switch (errno) {
+ case ENOMEM:
+ puts("Not enough memory!");
+ exit(22);
+ break;
+ case EAGAIN:
+ puts("To many processes!");
+ exit(23);
+ break;
+ default:
+ puts("Unknown error, please report!");
+ }
+ }
+
+ if (pid == (pid_t) 0) {
+ return;
+ }
+
+ if (!strcmp(read_param("Sound"), "Yes")) {
+ exit(system(read_param("Command")));
+ } else {
+ exit(0);
+ }
+
+}
diff --git a/sound.h b/sound.h
new file mode 100644
index 0000000..a91aa23
--- /dev/null
+++ b/sound.h
@@ -0,0 +1,14 @@
+/*
+ * File: sound.h
+ *
+ * (c) 1999, 2000, 2001 Alexey Vyskubov <alexey at pepper.spb.ru>
+ *
+ * Created: Sun Sep 19 16:52:45 1999
+ */
+
+#ifndef SOUND_H
+#define SOUND_H
+
+void drip(void);
+
+#endif
diff --git a/xrmdb.h b/xrmdb.h
new file mode 100644
index 0000000..072230b
--- /dev/null
+++ b/xrmdb.h
@@ -0,0 +1,7 @@
+extern XrmDatabase cmdlineDB; /* Database for resources from command
+ line */
+
+extern XrmDatabase finalDB; /* Database for resources from other
+ sources -- app-defaults and X
+ Window resources */
+
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-wmaker/fookb.git
More information about the Pkg-wmaker-commits
mailing list