|
Feature
|
Description
|
| Transitive dependencies |
Enabling transitivity on C libraries artifacts |
| Auto H files management |
- Automatic creation of an artifact with classifier "include" and extension jar or zip
( ${artifactId}-include.zip )
that contains all *.h files of the project.
- This includes pack will be automatically resolved/unziped and added
as -IXXX when another library "pom.xml" is dependant on this project
|
| Customizable options lists |
Separation of the compiler/linker/test compiler/test executor options lists.
Debug options list is also a separate block to enable the compilation of debug and nodebug
artifacts in one run.
|
| Test phases |
- Integration of compile-test and test phases with cppunit (or may be other C test
framework)
- Cppunit main C file included in the plugin for clean execution
- Cppunit XML report files availiable for future report plugin
|
| Name unification |
- Removal of the need to starts artifactId with "lib" prefix
- Automatic linking dynamic to .so and static to .a
- Usage of symbolic links in target/lib to the maven local repository
to avoid copies of binaries and enable linux so versioning mechanim ( libXXX.so.5 )
- One folder target/lib in LD_LIBRARY_PATH for linking, test and standard executions
|
| Miscelaneous |
- Up-to-date mechanism for linking avoiding relinking if object files did not changed
- Multithreaded compilation to run parallel calls to gcc or others
|
| Assembly for RPM |
Adding a ProjectNameProvider and Assembler for jade-assembly-plugin in order to prepare rpm
from the dependency list.
|