On 29 August 2012 15:41, Glenn Fowler <g...@research.att.com> wrote:
>
> On Wed, 29 Aug 2012 15:23:25 +0200 Lionel Cons wrote:
>> On 29 August 2012 15:10, Glenn Fowler <g...@research.att.com> wrote:
>> >
>> > we're going to take some research leeway and investigate the implications 
>> > of {a}
>> > we're not strangers to doing stuff like that (3d(1))
>> > and we're not strangers to having research prove us wrong
>
>> Well, if you use {a} then please remove the mamfile code which
>> generates libshell.so - libshell.a is sufficient to build ksh. So far
>> a shared library of libshell doesn't make sense until it gets actually
>> usable for embedding. Right now it doesn't work for that purpose and
>> if you pick {a} over {b} then I don't see a chance that it'll get any
>> better anytime soon.
>
> I'm not sure if you are pointing out problems with bootstrap build from source
> or libshell.so built the right way with ast nmake -- the ksh93 Mamfile has
> no actions for generating shared libs -- it does have the capability to set
> cc -c options to generate .o's suitable for use in generating a shared lib

The problem is not packaging. I was trying to make a pun on the
libshell API. It's just useless for anything except using it for
writing a shell.

The pun was: If it useless, why ship a shared library version of libshell? Why?

I say that because the usage of chdir() in libshell is a pain in the
arse since other APIs may want to do the same (in other threads,
libshell just running and used in the main thread) at the same time.
We have that problem for example with the Gnome and KDE file selection
dialogue which treat the cwd as their own property. Add libshell with
another chdir() at the same time and you have a nice, confused
application which bites itself into it's own arse. Add rm to the mix
and the system gets bitten into its arse.

That's why I like Olga's option {b}. It is a step forward into the
right direction and even covers the case that someone might want to
use libshell in a nested way (system() and wordexp() were given as
examples).

Lionel
_______________________________________________
ast-developers mailing list
ast-developers@research.att.com
https://mailman.research.att.com/mailman/listinfo/ast-developers

Reply via email to