Hi Kilian, I agree with Maciej. There should be a big emphasis on getting an *open-source* libc available in EDK2, and not relying on a proprietary, opaque binary blob. In my opinion EDK2 should pivot to using a high-quality, license-compatible libc such as Newlib, musl, etc. If you believe your Toro C library is the best tool for the job, you should open-source it (with a compatible license) as soon as possible to let the community decide :) Best regards, Pedro On Wed, Nov 24, 2021 at 8:21 PM Kilian Kegel wrote: > Hi Maciej, > > > > *CdePkg* is already integrated into EDK2 and satisfies all your needs for > pre-/post-memory > > PEI, DXE, (SMM in latest releases only), BDS and UEFI Shell too. > > > > I have introduced *CdePkg* for POST usage 2 years ago without any > interest of the “Tianocore Community”: > > > https://edk2.groups.io/g/devel/message/51562?p=,,,20,0,0,0::Created,,CdePkg,20,2,0,65191785 > > > > 1. Klick on the email link above > 2. Klick on the first link in that email, that goes to the > edk2-staging\cdepkg folder > > > > > 1. read the HOWTO: > https://github.com/tianocore/edk2-staging/blob/CdePkg/README.md#howto > > *and go for emulation – that works perfectly.* > > 1. I simply can’t do more for you, than to urgently encourage to try > it out yourself, test it, see what it can do for you > > > > This time *toro C Library* (that is absolutely the same as the library > part of the latest > > CdePkg > https://github.com/KilianKegel/CdePkg/blob/master/CdeLib/CdeLib.mak#L15) > > for UEFI Shell will be discussed first, since “Tianocore Community” is now > aware of serious problems of edk2libc > > and probably ready to examine my solution, that lacks all of those issues. > > > > You, Maciej, can support *CdePkg/ toro C Library* by > > > > 1. testing *CdePkg* > 2. giving feedback to the community > 3. updating *CdePkg* to latest AAEON WhiskeyLake platform (that is on > my Desk for months but I simply don’t have time to get it running…) > > (MinnowBoard is deprecated now) > > > > The license issue *can not* be discussed *before* there is any serious > interest in *CdePkg* and *toro C Library*. > > > > But if you are seeking for a free solution, that > > - requires unknown additional working hours > - requires a couple of high motivated maintainers, specialized in > Standard C > - countless patches will spam your inbox folder for years > - additionally with unpredictable result > > please use edk2libc, PDCLIB or adjust NewLib for your needs. > > > > >Unless those problems are solved, I simply cannot use it. > > Right, but you are invited to take a test drive! > > In the EDK2 Emulator. Debugging with the best Debugtool ever seen… > > Try to get SysPrep and Redfish running in the Emulator. > > Really, just do it! > > > > > How can I verify what was actually implemented inside? > > I will publish source code of *toro C Library* beginning 2022 and discuss > the design details along those files. > > But, did you check glibc’s fopen-source before using it? > > Have you ever seen > Microsoft/Borland/Symantec/ARM/IBM/Dinkumware/Greenhill/IAR … C Libraries > source code? > > > > Thanks, > > Kilian > > > > > > Sent from Mail for > Windows > > > > *From: *Rabeda, Maciej > *Sent: *Monday, November 22, 2021 05:31 PM > *To: *devel@edk2.groups.io; KILIAN_KEGEL@OUTLOOK.COM > *Cc: *Rebecca Cran ; tim.lewis@insyde.com; Mike > Kinney ; afish@apple.com; Leif Lindholm > ; Richardson, Brian > *Subject: *Re: [edk2-devel] CdePkgBlog 2021-11-14 > > > > Hi Kilian, > > From my point of view, the main problem with adoption of CdePkg to EDK2 is > that it relies on Torito C library. > > 1. Torito C library License ( > https://github.com/KilianKegel/toro-C-Library/blob/master/LICENSE.md) > only allows for creating UEFI Shell applications. > - What about applications that do not rely on ShellPkg (example: > SysPrep application that might want to use Redfish, which depends on C > standard library)? > - What about drivers/libraries that rely on C standard library? > - How is that compatible with EDK2 BSD-2-Clause-Patent? > 2. Torito C is pre-compiled. > - How can I verify what was actually implemented inside? Industry > would have to trust your tests, perform own set of tests or/and disassemble > it (doable, but unacceptable effort-wise). > > Unless those problems are solved, I simply cannot use it. > > Thanks, > Maciej > > On 14-Nov-21 20:51, Kilian Kegel wrote: > > Hi All, > > > > as announced last summer, I’d like to start a comprehensive tutorial on > > how to use Standard C / ANSI C in the UEFI environment and how to design > and implement > > such a library for Shell and POST usage. > > > > Since most parts of that comprehensive work are already done, > > I will report, demonstrate and discuss implementation principles and > details on edk2.groups.io > > as a kind of “blog” on a biweekly basis. > > > > Please checkout my first CdePkgBlog > https://github.com/tianocore/edk2-staging/tree/CdePkg/blogs/2021-11-14#cdepkgblog-2021-11-14 > > and enjoy the breathtaking build speed if compiler and linker are used > exclusively to create MY LEGACY TOOLBOX, > > a handy set of one-trick-ponies that I have been using for about 25 years. > > > > Have fun, > > Kilian > > > > > > > > > -- Pedro Falcato