lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


On Tue, Apr 03, 2007 at 09:35:25PM +0300, Asko Kauppi wrote:
> I second this - either dropping the PRIVATE or the whole of  
> LUA_USE_MACOSX and LUA_DL_DYLD.

LUA_DL_DYLD hasn't been necessary or desireable for lua since OS X 10.3,
was released, see:

  * dlopen()

  In older versions of Mac OS X, dlopen() and related functions were not
  supported. In Mac OS X 10.3, an open source library dlcompat was added
  which implemented dlopen() in terms of existing] dyld API's (e.g.
  NSAddImage()). In Mac OS X 10.4 all dlopen() and related functions
  have been integrated into dyld, resulting in better performance and
  better standards compliance.

  - http://developer.apple.com/releasenotes/DeveloperTools/RN-dyld/index.html

I suggest that NSBundleLoader code should be moved to /etc or the wiki,
where it is available to those wanting to build lua on OS X < 10.3. This
would remove a fair bit of OS X specialness from the lua core.

> And making readline the default on OS X.

Unfortunately, readline still don't exist on my OS X system, 10.3. :-(
But I can always modify my build, I do anyhow, and it would remove the
last trace of OS X's not being sufficiently unixy, a good thing.

> Gé Weijers kirjoitti 3.4.2007 kello 16:57:
> 
> >Windows can do special tricks as well, but AFAIK the Unix-type  
> >systems don't offer anything special, and you have to use Posix  
> >threads functionality for thread-local storage. For code designed  
> >to be portable within the Posix family the use of the 'PRIVATE'  
> >flag is an impediment to portability. For that reason alone it  
> >needs to be removed.

Why is PRIVATE an impediment to portability? Isn't it necessary for safe
requiring of a binary module into completely seperate lua "universes"?

Is it not uniformly implemented on dl systems?

I'd swear that you had explained to me why it was necessary! Maybe I'm
confused. :-)

Cheers,
Sam