You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@celix.apache.org by Alexander Broekhuis <a....@gmail.com> on 2013/09/19 21:02:18 UTC

Re: [jira] [Updated] (CELIX-75) CMake does not install the Deployment Admin bundle

Hi all,

I have been looking at this patch, and would like to make a bit more
changes wrt the install targets.

Currently there is one useable install command: install-release. This
release has the framework and also bundles can be added.

And this is what I like to change. From a release point of view it doesn't
always make sense to install all bundles.

In the new setup I want to add an install target per bundle. So for example
for the deployment admin there will be a install-deployment_admin. This can
be done by the existing bundle macro, so it will be transparent to the user.

To this end I'd like to extend the bundle macro to also have a parameter
for the bundle and the headers that need to be installed.

In addition, these install targets can be grouped in one "bundles" install
target. Which in turn can be combined with the framework install target
into an release-all target which installs everything.

What do you guys think?


2013/8/6 Mike van Dongen (JIRA) <ji...@apache.org>

>
>      [
> https://issues.apache.org/jira/browse/CELIX-75?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel]
>
> Mike van Dongen updated CELIX-75:
> ---------------------------------
>
>     Attachment: deployment_admin_install_library.patch
>
> This patch will fix this issue.
> It adds one line which will copy the bundle the same way as the others.
>
> > CMake does not install the Deployment Admin bundle
> > --------------------------------------------------
> >
> >                 Key: CELIX-75
> >                 URL: https://issues.apache.org/jira/browse/CELIX-75
> >             Project: Celix
> >          Issue Type: Bug
> >            Reporter: Mike van Dongen
> >         Attachments: deployment_admin_install_library.patch
> >
> >
> > CMake does build the deployment_admin.zip, but when executing `make
> install-release` it does not install this bundle.
>
> --
> This message is automatically generated by JIRA.
> If you think it was sent incorrectly, please contact your JIRA
> administrators
> For more information on JIRA, see: http://www.atlassian.com/software/jira
>



-- 
Met vriendelijke groet,

Alexander Broekhuis

Re: [jira] [Updated] (CELIX-75) CMake does not install the Deployment Admin bundle

Posted by Pepijn Noltes <pe...@gmail.com>.
Hi All,


On Thu, Sep 19, 2013 at 9:02 PM, Alexander Broekhuis
<a....@gmail.com> wrote:
> Hi all,
>
> I have been looking at this patch, and would like to make a bit more
> changes wrt the install targets.
>
> Currently there is one useable install command: install-release. This
> release has the framework and also bundles can be added.
>
> And this is what I like to change. From a release point of view it doesn't
> always make sense to install all bundles.
>
> In the new setup I want to add an install target per bundle. So for example
> for the deployment admin there will be a install-deployment_admin. This can
> be done by the existing bundle macro, so it will be transparent to the user.
>
> To this end I'd like to extend the bundle macro to also have a parameter
> for the bundle and the headers that need to be installed.
>
> In addition, these install targets can be grouped in one "bundles" install
> target. Which in turn can be combined with the framework install target
> into an release-all target which installs everything.
>
> What do you guys think?

Good idea, with this solution users can just install everything or
cherry pick precisely what they want.
I would also add a install-all-bundles target. The use case being if a
user wants to install all bundles, but not at the same location as the
framework (e.g. framework system wide, bundles on user level).


>
>
> 2013/8/6 Mike van Dongen (JIRA) <ji...@apache.org>
>
>>
>>      [
>> https://issues.apache.org/jira/browse/CELIX-75?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel]
>>
>> Mike van Dongen updated CELIX-75:
>> ---------------------------------
>>
>>     Attachment: deployment_admin_install_library.patch
>>
>> This patch will fix this issue.
>> It adds one line which will copy the bundle the same way as the others.
>>
>> > CMake does not install the Deployment Admin bundle
>> > --------------------------------------------------
>> >
>> >                 Key: CELIX-75
>> >                 URL: https://issues.apache.org/jira/browse/CELIX-75
>> >             Project: Celix
>> >          Issue Type: Bug
>> >            Reporter: Mike van Dongen
>> >         Attachments: deployment_admin_install_library.patch
>> >
>> >
>> > CMake does build the deployment_admin.zip, but when executing `make
>> install-release` it does not install this bundle.
>>
>> --
>> This message is automatically generated by JIRA.
>> If you think it was sent incorrectly, please contact your JIRA
>> administrators
>> For more information on JIRA, see: http://www.atlassian.com/software/jira
>>
>
>
>
> --
> Met vriendelijke groet,
>
> Alexander Broekhuis

Re: [jira] [Updated] (CELIX-75) CMake does not install the Deployment Admin bundle

Posted by Björn Petri <bj...@sundevil.de>.
Hi Alexander,

I would prefer to have an install_bundles macro because it is more 
clear what the macro will actually do. At some point I actually thought 
about adding something like an install_drivers macro for driver-bundles 
(according to the device access spec.) to get them automatically 
deployed to a drivers folder instead of the bundles folder. This could 
be easily done with the install_bundles solution but would need a new 
argument for the bundle solution.

Regards,
   Bjoern





Am 2013-09-29 16:27, schrieb Alexander Broekhuis:
> Hi all,
>
> I've been working on this a bit and now have 2 options. I'd like to 
> know
> what others think.
>
> The first option is to include all the installation stuff in the 
> "bundle"
> macro. For example:
>
> bundle(shell SOURCES ... INSTALL HEADERS ..../header.h RESOURCES 
> ..../files)
>
> The following arguments are new:
> INSTALL: marks this bundle to be installed.
> HEADERS: optional headers to be installed in 
> .../include/celix/bundle_name
> RESOURCES: optional resources to be installed in 
> ../share/celix/bundle_name
>
> The second option is a separate macro for all these arguments
>
> install_bundle(shell
>     HEADERS
>     ..../header.h
>     RESOURCES
>     ..../files
> )
>
> This macro doesn't need an INSTALL option, the use of it marks the 
> bundle
> to be install. The other arguments are used the same as above.
>
> Maybe there are some missing arguments, those can easily be added. 
> For now
> my question is which one do others on this list like?
>
>
> 2013/9/27 Alexander Broekhuis <a....@gmail.com>
>
>> 2013/9/27 Björn Petri <bj...@sundevil.de>
>>
>>>
>>> Hi All,
>>>
>>> I just can agree - I think that's quite a nice idea. But ,aybe this 
>>> could
>>> also include the export of all the according public/include 
>>> header-files?
>>> At the moment not all bundles export their header-files by default 
>>> (e.g.
>>> rsa), which makes it difficult to setup a build-infrastructure next 
>>> to
>>> celix.
>>>
>>
>> That should also be possible with the new updates. Any missing files 
>> are
>> bugs. I'll take a look into it as well. If I have pushed the update 
>> and
>> there are still missing files, feel free to raise a bug for those.
>>
>>
>> --
>> Met vriendelijke groet,
>>
>> Alexander Broekhuis
>>


Re: [jira] [Updated] (CELIX-75) CMake does not install the Deployment Admin bundle

Posted by Alexander Broekhuis <a....@gmail.com>.
Hi all,

I've been working on this a bit and now have 2 options. I'd like to know
what others think.

The first option is to include all the installation stuff in the "bundle"
macro. For example:

bundle(shell SOURCES ... INSTALL HEADERS ..../header.h RESOURCES ..../files)

The following arguments are new:
INSTALL: marks this bundle to be installed.
HEADERS: optional headers to be installed in .../include/celix/bundle_name
RESOURCES: optional resources to be installed in ../share/celix/bundle_name

The second option is a separate macro for all these arguments

install_bundle(shell
    HEADERS
    ..../header.h
    RESOURCES
    ..../files
)

This macro doesn't need an INSTALL option, the use of it marks the bundle
to be install. The other arguments are used the same as above.

Maybe there are some missing arguments, those can easily be added. For now
my question is which one do others on this list like?


2013/9/27 Alexander Broekhuis <a....@gmail.com>

> 2013/9/27 Björn Petri <bj...@sundevil.de>
>
>>
>> Hi All,
>>
>> I just can agree - I think that's quite a nice idea. But ,aybe this could
>> also include the export of all the according public/include header-files?
>> At the moment not all bundles export their header-files by default (e.g.
>> rsa), which makes it difficult to setup a build-infrastructure next to
>> celix.
>>
>
> That should also be possible with the new updates. Any missing files are
> bugs. I'll take a look into it as well. If I have pushed the update and
> there are still missing files, feel free to raise a bug for those.
>
>
> --
> Met vriendelijke groet,
>
> Alexander Broekhuis
>



-- 
Met vriendelijke groet,

Alexander Broekhuis

Re: [jira] [Updated] (CELIX-75) CMake does not install the Deployment Admin bundle

Posted by Alexander Broekhuis <a....@gmail.com>.
2013/9/27 Björn Petri <bj...@sundevil.de>

>
> Hi All,
>
> I just can agree - I think that's quite a nice idea. But ,aybe this could
> also include the export of all the according public/include header-files?
> At the moment not all bundles export their header-files by default (e.g.
> rsa), which makes it difficult to setup a build-infrastructure next to
> celix.
>

That should also be possible with the new updates. Any missing files are
bugs. I'll take a look into it as well. If I have pushed the update and
there are still missing files, feel free to raise a bug for those.


-- 
Met vriendelijke groet,

Alexander Broekhuis

Re: [jira] [Updated] (CELIX-75) CMake does not install the Deployment Admin bundle

Posted by Björn Petri <bj...@sundevil.de>.
Hi All,

I just can agree - I think that's quite a nice idea. But ,aybe this 
could also include the export of all the according public/include 
header-files? At the moment not all bundles export their header-files by 
default (e.g. rsa), which makes it difficult to setup a 
build-infrastructure next to celix.

Regards,
   Bjoern




Am 2013-09-20 18:45, schrieb Alexander Broekhuis:

> This is exactly the reason why I do like to change this. Your opinion 
> is
> the list you supplied, someone else his opinion might be completely
> different. Eg for a lot people a deployment admin and rsa isn't 
> needed.
>
> So instead of catering everyone's special needs I think one common 
> solution
> makes more sense. With my proposed changes the following flow will be 
> done
> by a user/developer:
> * Run ccmake and select all parts you want to build and install then 
> run
> configure and generate
> * Run make to build everything
> * Run make install-bundles to install the bundles
> * Run make install-framework to install the framework and 
> dependencies
> * Or run make install-all to install everything
>
> Note: Everything in this sense means everything the user enabled in 
> the
> configuration.
> Note: I left out a make deploy, because a user of Celix will have his 
> own
> deployment.
>
> Hope this makes it a bit clearer!


Re: [jira] [Updated] (CELIX-75) CMake does not install the Deployment Admin bundle

Posted by Alexander Broekhuis <a....@gmail.com>.
Hi Mike,

2013/9/20 Mike van Dongen <ce...@mikevandongen.nl>

>
> Would it make sense to use cmake for this?
> If I don't select 'shell' in cmake, it won't be installed.
>

All logic is in CMake, and all building etc is done with make. So with
CMake you decide what should be compiled etc, and then the proper make
targets are created. So in this case if the shell is enabled using CMake,
there will be a make install-shell target.


>
> Otherwise the user needs to specify the bundles in both cmake and make.
> Please correct me if I'm wrong.
>

I hope above statement is enough :).


>
> I don't currently have the latest version installed, but a few weeks ago
> this was the list of bundles that did not get installed, and IMHO should be:
>

This is exactly the reason why I do like to change this. Your opinion is
the list you supplied, someone else his opinion might be completely
different. Eg for a lot people a deployment admin and rsa isn't needed.

So instead of catering everyone's special needs I think one common solution
makes more sense. With my proposed changes the following flow will be done
by a user/developer:
* Run ccmake and select all parts you want to build and install then run
configure and generate
* Run make to build everything
* Run make install-bundles to install the bundles
* Run make install-framework to install the framework and dependencies
* Or run make install-all to install everything

Note: Everything in this sense means everything the user enabled in the
configuration.
Note: I left out a make deploy, because a user of Celix will have his own
deployment.

Hope this makes it a bit clearer!


-- 
Met vriendelijke groet,

Alexander Broekhuis

RE: [jira] [Updated] (CELIX-75) CMake does not install the Deployment Admin bundle

Posted by Mike van Dongen <ce...@mikevandongen.nl>.
Hi Alexander!

Would it make sense to use cmake for this?
If I don't select 'shell' in cmake, it won't be installed.

Otherwise the user needs to specify the bundles in both cmake and make.
Please correct me if I'm wrong.

I don't currently have the latest version installed, but a few weeks ago this was the list of bundles that did not get installed, and IMHO should be:

- ./deployment_admin/deployment_admin.zip
- ./device_access/device_access/device_manager.zip
- ./device_access/driver_locator/driver_locator.zip
- ./remote_services/discovery_slp/discovery_slp.zip
- ./remote_services/remote_service_admin/remote_service_admin.zip
- ./remote_services/topology_manager/topology_manager.zip
- ./remote_shell/remote_shell.zip


Met vriendelijke groet, 

Mike van Dongen.


> Date: Thu, 19 Sep 2013 21:02:18 +0200
> Subject: Re: [jira] [Updated] (CELIX-75) CMake does not install the Deployment Admin bundle
> From: a.broekhuis@gmail.com
> To: celix-dev@incubator.apache.org
> 
> Hi all,
> 
> I have been looking at this patch, and would like to make a bit more
> changes wrt the install targets.
> 
> Currently there is one useable install command: install-release. This
> release has the framework and also bundles can be added.
> 
> And this is what I like to change. From a release point of view it doesn't
> always make sense to install all bundles.
> 
> In the new setup I want to add an install target per bundle. So for example
> for the deployment admin there will be a install-deployment_admin. This can
> be done by the existing bundle macro, so it will be transparent to the user.
> 
> To this end I'd like to extend the bundle macro to also have a parameter
> for the bundle and the headers that need to be installed.
> 
> In addition, these install targets can be grouped in one "bundles" install
> target. Which in turn can be combined with the framework install target
> into an release-all target which installs everything.
> 
> What do you guys think?
> 
> 
> 2013/8/6 Mike van Dongen (JIRA) <ji...@apache.org>
> 
>>
>> [
>> https://issues.apache.org/jira/browse/CELIX-75?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel]
>>
>> Mike van Dongen updated CELIX-75:
>> ---------------------------------
>>
>> Attachment: deployment_admin_install_library.patch
>>
>> This patch will fix this issue.
>> It adds one line which will copy the bundle the same way as the others.
>>
>>> CMake does not install the Deployment Admin bundle
>>> --------------------------------------------------
>>>
>>> Key: CELIX-75
>>> URL: https://issues.apache.org/jira/browse/CELIX-75
>>> Project: Celix
>>> Issue Type: Bug
>>> Reporter: Mike van Dongen
>>> Attachments: deployment_admin_install_library.patch
>>>
>>>
>>> CMake does build the deployment_admin.zip, but when executing `make
>> install-release` it does not install this bundle.
>>
>> --
>> This message is automatically generated by JIRA.
>> If you think it was sent incorrectly, please contact your JIRA
>> administrators
>> For more information on JIRA, see: http://www.atlassian.com/software/jira
>>
> 
> 
> 
> -- 
> Met vriendelijke groet,
> 
> Alexander Broekhuis