[edk2-devel] CdePkgBlog 2021-11-14

Kilian Kegel KILIAN_KEGEL at OUTLOOK.COM
Wed Nov 24 20:21:32 UTC 2021


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



[cid:image001.png at 01D7E178.E5854300]

  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<https://go.microsoft.com/fwlink/?LinkId=550986> for Windows

From: Rabeda, Maciej<mailto:maciej.rabeda at linux.intel.com>
Sent: Monday, November 22, 2021 05:31 PM
To: devel at edk2.groups.io<mailto:devel at edk2.groups.io>; KILIAN_KEGEL at OUTLOOK.COM<mailto:KILIAN_KEGEL at OUTLOOK.COM>
Cc: Rebecca Cran<mailto:rebecca at nuviainc.com>; tim.lewis at insyde.com<mailto:tim.lewis at insyde.com>; Mike Kinney<mailto:michael.d.kinney at intel.com>; afish at apple.com<mailto:afish at apple.com>; Leif Lindholm<mailto:leif at nuviainc.com>; Richardson, Brian<mailto:brian.richardson at intel.com>
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






-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#84057): https://edk2.groups.io/g/devel/message/84057
Mute This Topic: https://groups.io/mt/87053945/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/edk2-devel-archive/attachments/20211124/50ed76c4/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 3F1FECE7AF8044E584BF5D0CF3028E97.png
Type: image/png
Size: 13937 bytes
Desc: 3F1FECE7AF8044E584BF5D0CF3028E97.png
URL: <http://listman.redhat.com/archives/edk2-devel-archive/attachments/20211124/50ed76c4/attachment.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: E06AA5DE32A14AE2A4736488BC5EB760.png
Type: image/png
Size: 132 bytes
Desc: E06AA5DE32A14AE2A4736488BC5EB760.png
URL: <http://listman.redhat.com/archives/edk2-devel-archive/attachments/20211124/50ed76c4/attachment-0001.png>


More information about the edk2-devel-archive mailing list