The application TestKernel shall be used to run EMVCo Book A/B test plan. It works like the other CL applications being either statically or dynamically compiled. So, TestKernel is used to instanciate several CL Applications so the Entry Point can be certified like if it was driving several “kernels” (a.k.a. CL L2).
Here is the procedure to follow (if dynamic linking):
Built a TestKernel for the following identifiers: 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x21, 0x22, 0x23, 0x24, 0x25, 0x2B, 0x32, 0x81, 0xBF, 0xC1, 0xFF
Rename each TestKernel with the appropriate name. Example: libTestKernel01.so for TestKernel compiled with identifier 0x01, etc…
Copy all the kernels to /AGNOS directory
Modify apps file depending on the test plan configuration to be run (so that apps contains the kernel identifiers defined by configuration)
If static linking, all kernels are integrated at compilation time as soon as _STATIC_LOADER_ (loader.c) and _STATIC_LINK_ (testkernel.h) are defined.