24.05.2014 Views

Embedded Application Programming Interface - picmg

Embedded Application Programming Interface - picmg

Embedded Application Programming Interface - picmg

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

13.2 Linux/Unix Shared Library Naming Convention<br />

Problem<br />

Due to the nature of ELF Shared Libraries in Linux/UNIX/... it may not be possible to distinguish one<br />

manufacturer's DLL from another. Although it would possible to do this using a tool that uses the API,<br />

It may not be possible to load the shared library, due to missing dependencies.<br />

Solution<br />

Filename Convention<br />

libEApiYYY.so.W.Z<br />

Part Example Description<br />

YYY PMG Vendor PNPID<br />

W 1 EAPI Specification Version number<br />

X 0 EAPI Specification Revision number<br />

Soname Convention<br />

libEApi.so.W<br />

Part Example Description<br />

W 1 EAPI Specification Version number<br />

Example<br />

Shared Library<br />

Filename = libEapiPMG.so.1.0<br />

soname = libEApi.so.1<br />

in file system.<br />

/usr/lib/libEApi.so.1 → /usr/lib/libEapiPMG.so.1.0<br />

/usr/lib/libEApiPMG.so.1.0<br />

see EApiDK for sample implementation.<br />

13.3 ELF/a.out Format Shared Libraries<br />

13.3.1 Library Output Format<br />

Problem<br />

Due to the nature of ELF Dynamic Link Libraries in Linux/UNIX/... it may not be possible to distinguish<br />

one manufacturer's DLL from another. Although it would possible to do this using a tool that uses the<br />

API, It may not be possible to load the DLL, due to missing dependencies.<br />

Solution<br />

The solution is to require the shared libraries be executable. Upon Execution the library should then<br />

print out the following information.<br />

The Output format is<br />

=Value<br />

and should be matched by this regular expression. m/^\s*(\w+)\s*=\s*(.+)\s*$/<br />

where<br />

$1=Variable name<br />

$2=Value/Data.<br />

PICMG® EAPI R1.0, August 8, 2010 page 80 of 83

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!