pnoltes opened a new pull request #388:
URL: https://github.com/apache/celix/pull/388


   This PR adds support for embedded bundles. This makes it possible to make 
Celix container executable where the bundles are embedded in the executable and 
do not depend on bundle zip files located somewhere on the system. 
   
   Bundles can be embedded using the Celix CMake commands: 
    - `celix_target_embedded_bundles`
    - `celix_target_embedded_bundle`
    - `celix_container_embedded_bundles`
    - `add_celix_container` using the EMBEDDED_BUNDLES option
   
   Bundles are embedded using a small CMake generated assembly source file. An 
other option would be to use the linker, but this works differently on OSX and 
linux, especially how the naming of the embedded resources works. IMO using a 
very small assembly source using a `incbin` directive is better.
   
   How bundles are unzipped (celix_bundle_cache.c) was also refactored so that 
unzipping using a in memory source is possible. The basic support for this was 
already added a while back in the celix_file_utils.h functions. 
   The change in how bundles are unzipped also made it possible to remove the 
embedded mini minizip sources. 
   
   This PR also:
    - Adds an option to create a compile definition for a set of bundles (for 
testing) with the Celix CMake command: `celix_target_bundle_set_definition`
    - Adds the bundle symbolic name info to an imported bundle target
    - Adds some missing test for `celix_bundleState_getName`
    - Removes some unused cmake templates
    - Updates Celix CMake commands documentation
   
   This PR is also merged with the list_all_bundles branch, which can be found 
in the PR:
   https://github.com/apache/celix/pull/386 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to