Date: Sat, 10 Aug 2002 12:54:56 -0400 From: The Anarcat <anarcat@anarcat.ath.cx> To: Max Okumoto <okumoto@ucsd.edu> Cc: freebsd-libh@FreeBSD.ORG Subject: Re: libh changes that I would like to get comments on. Message-ID: <20020810165454.GA34549@lenny.anarcat.ath.cx> In-Reply-To: <hfznwtquws.fsf@multivac.sdsc.edu> References: <hfznwtquws.fsf@multivac.sdsc.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
--pf9I7BMVVzbSWLtt Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon Jul 15, 2002 at 01:04:19AM -0700, Max Okumoto wrote: >=20 > Hi guys, > I would like your opinions on some changes that I > would like to make to libh. I have built a small framework > with just the UI section which is contained in the appended > tar file. But, before I spend any more time in this I=20 > would like people to look over the changes that I am purposing. >=20 > o Makefile dependency generator > I would like to start using 'bm' (build makefile) program > that I put into the tools directory. This program generates > a Makefile with all the dependencies. >=20 > Note: The generated Makefile is modeled after Peter Miller's paper. > http://www.canb.auug.org.au/~millerp/rmch/recu-make-cons-harm-old.html I'd be very careful with this. I haven't looked at the bm program, so I don't know if it really works. libh Makefile system is really obscure and fragile.=20 But, as always, if it works, you can go ahead. ;) One quick note: the new system doesn't seem to build multiple back ends as the old one did (none, text, graphics, text+graphics). This is mandatory. We need a text-only backend for the floppies. BTW, it would be nice if you could share with us how the heck this bm thing works. :) I'm quite impressed at the compile time of the demo you attached to this mail. Of course there's the whole TCL thing that's skipped and taken care of by SWIG, but still, it's a great improvement. > o Restructure the Hui subsystem into three seperate libraries. > lib/Hui would be a virtual base hierarchy. > lib/HuiTv would be the TVision implimentation of Hui > lib/HuiQt would be the Qt implimentation of Hui That looks ok. It is indeed very nice, and the whole thing looks much more isolated than before. Good work! > o Use swig 1.3.13 to build tcl <--> C++ glue code instead of what > we currently have. > This supports dyanmic loading of the Hui code. My test > tcl script uses a vanilla tclsh binary. It first checks > if the shared lib exists and then loads the code. This is very nice. It is an additional dependency, but we didn't need to re-invent the wheel and it's causing us problems. There is however, some problems in that area: I don't know exactly how the old system worked. The whole principle of getting TCL into libh was to control the execution of scripts using the safe interpreters. How will this fit in the new scheme? What exactly is swig replacing and how? As long as these questions aren't answered, I won't be comfortable with SWIG in libh. Oh, and a last note.. I think tclh is still needed, even if we can now load libh modules through tclsh. The problem is that dynamic linking (ld.elf.so) simply *won't* be available on the floppies, because of the space restriction. Everything will have to be statically linked, I think, to obtain optimal space tradeoff. I might be wrong here though. :) We'll need to run throughout space comparaison between both. Oh, and this also means that SWIG will be statically linked into libh too? This might take up too much space too. We really have to examine these issues. > I am still using 4.5-RELEASE as my devel enviorment, but I am using > swig 1.3.13 from /usr/ports/devel/SWIG-devel. (Note: I modifed the > Makefile to only build tcl SWIG_LANGUAGES=3Dtcl) >=20 > Max Okumoto >=20 > % gzcat libh.tar.gz | tar -xf - [...] Whoohoo! This fixes the tvision bug #5!! (see the BUGS file). Wow max, this is really great. Dynamic loading and all, you've done a great job. Now I feel very sorry I didn't check on this earlier. Where is that tarball from? Is that particular code from the branch? How did you generate it? I totally agree to integrate this into the main branch. I think we'll have to be really careful though, merging not all at once, but slowly, incrementally. I was thinking of releasing 0.2.3, but I think we'll jump straight to 0.3, this is just too much. :) Yay again! A. --=20 The idea that Bill Gates has appeared like a knight in shining armour to lead all customers out of a mire of technological chaos neatly ignores the fact that it was he who, by peddling second-rate technology, led them into it in the first place. - Douglas Adams (1952-2001) --pf9I7BMVVzbSWLtt Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.7 (FreeBSD) iD8DBQE9VUVcttcWHAnWiGcRAmq8AJ9bbd34/zqkU47faVoQHTc07VSUyACaAkZc 1t5/r+80jWiENIsrDQ/cwiQ= =OwkC -----END PGP SIGNATURE----- --pf9I7BMVVzbSWLtt-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-libh" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020810165454.GA34549>