[Info-vax] C99 updates to CRTL

Stephen Hoffman seaohveh at hoffmanlabs.invalid
Wed Jul 31 20:29:18 EDT 2019


On 2019-07-31 23:50:13 +0000, John Reagan said:

> On Wednesday, July 31, 2019 at 6:35:19 PM UTC-4, Stephen Hoffman wrote:
>> On 2019-07-31 18:39:53 +0000, John Reagan said:
>> 
>>> On Wednesday, July 31, 2019 at 8:29:33 AM UTC-4, John E. Malmberg wrote:
>>>> Can some documentation be provided on how a user could create a 
>>>> custom>> >> variant?
>>>> 
>>> Custom variant of what?
>> 
>> A custom variant of the C RTL.  The standard C RTL on OpenVMS is a bit 
>> of a mess to use, bluntly.  Which means we've been replacing routines, 
>> and wrapping routines.
> 
> Yeah, like that will let 100s of different CRTLs spring into existence. 
>  And you think Windows DLL hell or all the DECC$ feature logicals are 
> problems...

Hundreds?  One mostly-current C library would be nice.

basename, select, you already have a long list of the problem areas.

There exist solutions to Microsoft Windows and "DLL hell", BTW.

Microsoft .NET hauls along .NET.  That's ugly, but app storage space is 
far less precious than it once was. And far more capacious.

Many of us working on OpenVMS link against what we need to too, and 
ship with our own RTLs.  It's quite possible to ship with a more 
current OpenSSL, for instance.

For more general solutions for DLL hell—beyond the rather interesting 
approach that .NET provides, and beyond what linking directly with the 
code provides—here's some related reading:
https://nixos.org/nix/
https://nixos.org/
https://devmanual.gentoo.org/general-concepts/slotting/index.html

BTW and solely as Microsoft was mentioned, there's also now Chocolatey, 
a package manager for Microsoft Windows:
https://chocolatey.org

> The "wrappers" are just a form of Linux-like symbol preemption.  I get 
> it, you want to slide in your own "whatever" and have all callers 
> (including those inside the CRTL itself and anything else on the system 
> that might call something like pipe()) use the user-provided form.  I 
> don't see that happening.

Well, I don't want to.  But I'm stuck between the app requirements and 
the OpenVMS reality.  And the alternative is to port musl, or a 
BSD-licensed libc.

> We have a long list of changes/improvments to make.  We've been trying 
> to find more resources to do it.  I've pushed for guidelines on letting 
> people contribute code (not quite open source but the best we can do 
> given our HPE agreement).

There's fodder for a treatise or three on organizations and management 
and development practices and assumptions awaiting here, too.



-- 
Pure Personal Opinion | HoffmanLabs LLC 




More information about the Info-vax mailing list