From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from post.mail.demon.net ([194.217.242.38]) by hawkwind.utcs.utoronto.ca with SMTP id <25055>; Mon, 8 Feb 1999 18:55:57 -0500 Received: from [212.228.106.206] (helo=kremvax.demon.co.uk) by post.mail.demon.net with esmtp (Exim 2.11 #1) id 108s3Q-0004gd-00; Fri, 5 Feb 1999 20:40:44 +0000 Received: (from mhw@localhost) by kremvax.demon.co.uk (8.8.7/8.8.7) id UAA01299; Fri, 5 Feb 1999 20:39:34 GMT To: wilyfans@jli.com, sam-fans@hawkwind.utcs.toronto.edu Subject: 9libs-0.3, wily, sam test distributions From: "Mark H. Wilkinson" Date: Fri, 5 Feb 1999 15:04:45 -0500 Message-ID: <199902052004.1048.9libs.babul@kremvax.demon.co.uk> X-Face: Bsp[Ds(Y#/{==j:Cv'"IK4R^D0_z]{'OYtp2^EYqpG)88CsdBm&LJ{idLZWx}AKf}E4#|@4DT4cX3 ?!>aIVcxmd#1 X-PGP-Fingerprint: 8E 43 1E D7 85 42 E0 C5 D3 8C B6 B1 EE 06 95 64 We (myself and Bengt Kleberg) have been doing some work on adding a more modern build system to the Plan 9 tools which are available. The result is a distribution called 9libs which includes the graphics library libXg, the text frame library libframe and a fledgling accumulation of other Plan 9 work-a-like functions called libplan9c. I've also reworked the build system for wily to work with 9libs, and Bengt Kleberg has done the same for sam. The overall aim of the 9libs distribution is to allow libXg and libframe to be distributed separately from the programs which rely on it, and hopefully to make it easier to build a number of different programs which all use libXg and libframe. We also aim to bring the build system up to date with modern Unix systems so that it will build out of the box on more systems. Given that many people use more than one out of sam, wily, 9term, 9wm and so on, this should make building the basic tools of your windowing environment simpler. We're making a test distribution available to try and thrash out any remaining portability problems on machine types we haven't been able to lay our hands on. If all goes well we intend to do a 9libs-1.0 release pretty soon. The distributions are available from the following URLs: ftp://ftp.cs.york.ac.uk/pub/mhw/experimental/9libs-0.3.tar.gz ftp://ftp.cs.york.ac.uk/pub/mhw/experimental/sam-9libs.tar.gz ftp://ftp.cs.york.ac.uk/pub/mhw/experimental/wily-9libs.tar.gz Instructions for building are included in the distribution. If you can't follow them, let me know how they could be improved. If the build system doesn't work for you, submit a bug report to me and I'll see what can be done. I'm on holiday for the next two weeks so you might not get a reply straight away, but I'll look into any problems reported. To get you interested, here's a brief installation synopsis: ; gzcat 9libs-0.3.tar.gz | tar xf - ; cd 9libs-0.3 ; gzcat ../sam-9libs.tar.gz | tar xf - ; gzcat ../wily-9libs.tar.gz | tar xf - ; ./configure ; make ; make install That will compile and install the libraries, sam and wily. Good things: * You can build shared libraries without much trouble. * You can build binaries for multiple architectures from the same source tree without much trouble. * You will be able to build 9term and co with no extra effort someday soon. * wily gains a more complete implementation of the Font builtin which lets you use any font (X or libXg font file) you have on your system. The p9fixed resource is gone; use -F instead like you would with acme. Current problems, off the top of my head: * There's a problem linking the sam executable against shared libraries: the build system tries to link it with libXg, libframe and libplan9c when only libplan9c is necessary. libXg and libframe contain undefined symbols, so the link fails. You can workaround it by editing sam-9libs/sam/Makefile and removing libXg and libframe from the LIBS variable. * The implementation of the Plan 9 print() routines in libplan9c is incomplete (it doesn't cover floating point). I'm intending to finish it soon. It does include string formatting, so you can write Unicode aware command line programs and see their output in 9term. * The build system contains more lines of text than the source code that makes up the libraries. Largely a side effect of using autoconf, automake and libtool, I'm afraid. Just think of the bonuses which it gets you. Enjoy, -Mark.