[opensuse-packaging] Include source package A in build for B
Hi, I'm currently trying to build the orthanc-postgresql package. Problem is that most Orthanc plugins re-use a part of the C++ code of Orthanc, independently of the development headers. To solve this issue, we can put the source code distribution "Orthanc-1.5.5.tar.gz" file into a folder called "ThirdPartyDownloads" located next to the "PostgreSQL/CMakeLists.txt" file. Providing the source package is IMO not the smartest idea, as this requires maintenance of version for orthanc not only in hte orthanc package, but as well in each plugin package Can I somehow include the orthanc.src.rpm in the build for the plugin? Thanks Axel -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Tuesday, 26 February 2019 11:01 Axel Braun wrote:
Hi,
I'm currently trying to build the orthanc-postgresql package.
Problem is that most Orthanc plugins re-use a part of the C++ code of Orthanc, independently of the development headers.
To solve this issue, we can put the source code distribution "Orthanc-1.5.5.tar.gz" file into a folder called "ThirdPartyDownloads" located next to the "PostgreSQL/CMakeLists.txt" file.
Providing the source package is IMO not the smartest idea, as this requires maintenance of version for orthanc not only in hte orthanc package, but as well in each plugin package
Can I somehow include the orthanc.src.rpm in the build for the plugin?
How about building it as a subpackage of orthanc? Michal Kubecek -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On 26/02/2019 20:59, Michal Kubecek wrote:
On Tuesday, 26 February 2019 11:01 Axel Braun wrote:
Hi,
I'm currently trying to build the orthanc-postgresql package.
Problem is that most Orthanc plugins re-use a part of the C++ code of Orthanc, independently of the development headers.
To solve this issue, we can put the source code distribution "Orthanc-1.5.5.tar.gz" file into a folder called "ThirdPartyDownloads" located next to the "PostgreSQL/CMakeLists.txt" file.
Providing the source package is IMO not the smartest idea, as this requires maintenance of version for orthanc not only in hte orthanc package, but as well in each plugin package
Can I somehow include the orthanc.src.rpm in the build for the plugin?
How about building it as a subpackage of orthanc?
Michal Kubecek
Yeah normally you'd create an orthanc-devel which contains all the header files installed into /usr/include/, in a normal case the header files plus any associated shared libraries in /usr/lib64 should be enough to build plugins. But this approach makes the assumption that the upstream build system works in a sane and normal way which isn't always the case. Sometimes its quicker to fix the upstream build files so that cmake will look for the preinstalled version fo the source code and libs rather then one in the directory next to it. -- Simon Lees (Simotek) http://simotek.net Emergency Update Team keybase.io/simotek SUSE Linux Adelaide Australia, UTC+10:30 GPG Fingerprint: 5B87 DB9D 88DC F606 E489 CEC5 0922 C246 02F0 014B -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Tuesday, 26 February 2019 11:38 Simon Lees wrote:
On 26/02/2019 20:59, Michal Kubecek wrote:
On Tuesday, 26 February 2019 11:01 Axel Braun wrote:
Hi,
I'm currently trying to build the orthanc-postgresql package.
Problem is that most Orthanc plugins re-use a part of the C++ code of Orthanc, independently of the development headers.
To solve this issue, we can put the source code distribution "Orthanc-1.5.5.tar.gz" file into a folder called "ThirdPartyDownloads" located next to the "PostgreSQL/CMakeLists.txt" file.
Providing the source package is IMO not the smartest idea, as this requires maintenance of version for orthanc not only in hte orthanc package, but as well in each plugin package
Can I somehow include the orthanc.src.rpm in the build for the plugin?> How about building it as a subpackage of orthanc?
Michal Kubecek
Yeah normally you'd create an orthanc-devel which contains all the header files installed into /usr/include/, in a normal case the header files plus any associated shared libraries in /usr/lib64 should be enough to build plugins. But this approach makes the assumption that the upstream build system works in a sane and normal way which isn't always the case. Sometimes its quicker to fix the upstream build files so that cmake will look for the preinstalled version fo the source code and libs rather then one in the directory next to it.
What I meant was - add the plugin tarball as additional source to orthanc package - unpack it into a separate directory in prepare phase - build it after the build of the main directory - package the plugin files into a subpackage There are already some packages which work like this but I can't provide an example from the top of my head. Michal Kubecek -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
Gesendet: Dienstag, 26. Februar 2019 um 11:38 Uhr Von: "Simon Lees" <sflees@suse.de> An: opensuse-packaging@opensuse.org Betreff: Re: [opensuse-packaging] Include source package A in build for B
On 26/02/2019 20:59, Michal Kubecek wrote:
On Tuesday, 26 February 2019 11:01 Axel Braun wrote:
Hi,
I'm currently trying to build the orthanc-postgresql package.
Problem is that most Orthanc plugins re-use a part of the C++ code of Orthanc, independently of the development headers.
To solve this issue, we can put the source code distribution "Orthanc-1.5.5.tar.gz" file into a folder called "ThirdPartyDownloads" located next to the "PostgreSQL/CMakeLists.txt" file.
Providing the source package is IMO not the smartest idea, as this requires maintenance of version for orthanc not only in hte orthanc package, but as well in each plugin package
Can I somehow include the orthanc.src.rpm in the build for the plugin?
How about building it as a subpackage of orthanc?
Michal Kubecek
Yeah normally you'd create an orthanc-devel which contains all the header files installed into /usr/include/, in a normal case the header files plus any associated shared libraries in /usr/lib64 should be enough to build plugins.
Yes, thats what we have already.....
But this approach makes the assumption that the upstream build system works in a sane and normal way which isn't always the case. Sometimes its quicker to fix the upstream build files so that cmake will look for the preinstalled version fo the source code and libs rather then one in the directory next to it.
Yes, if this is fixed upstream that may be ideal..... I have just at the moment reveiced an answer from the author: --- This could indeed work, but I am not sure about this... while invoking CMake of the PostgreSQL plugin, you could try and add the two following command-line options: -DORTHANC_FRAMEWORK_SOURCE=path -DORTHANC_FRAMEWORK_ROOT=/path/to/Orthanc/sources/ --- Question remains, how can I add the .src.rpm as build requirement? Thanks Axel -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Tuesday, 26 February 2019 14:01 Axel Braun wrote:
Question remains, how can I add the .src.rpm as build requirement?
Why cannot you do what I suggested? Michal Kubecek -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
Gesendet: Dienstag, 26. Februar 2019 um 14:09 Uhr Von: "Michal Kubecek" <mkubecek@suse.cz> An: opensuse-packaging@opensuse.org Cc: "Axel Braun" <Axel.Braun@gmx.de> Betreff: Re: Aw: Re: [opensuse-packaging] Include source package A in build forB
On Tuesday, 26 February 2019 14:01 Axel Braun wrote:
Question remains, how can I add the .src.rpm as build requirement?
Why cannot you do what I suggested?
Looks like Dan and you are proposing the same. Those plugins seem to be somewhat fragile - esp. the webviewer (next to come). So any solution that keeps them separated is welcome.... Cheers Axel -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
"Axel Braun" <Axel.Braun@gmx.de> writes:
Gesendet: Dienstag, 26. Februar 2019 um 14:09 Uhr Von: "Michal Kubecek" <mkubecek@suse.cz> An: opensuse-packaging@opensuse.org Cc: "Axel Braun" <Axel.Braun@gmx.de> Betreff: Re: Aw: Re: [opensuse-packaging] Include source package A in build forB
On Tuesday, 26 February 2019 14:01 Axel Braun wrote:
Question remains, how can I add the .src.rpm as build requirement?
Why cannot you do what I suggested?
Looks like Dan and you are proposing the same.
Indeed.
Those plugins seem to be somewhat fragile - esp. the webviewer (next to come). So any solution that keeps them separated is welcome....
You could try 2 options (I have never tried something like that, so no guarantee that it will work): 1. Enable the OpenSUSE sources repository for the build of the plugins and install the sources of Orthanc as a BuildRequires. However, I guess that this will not be accepted in the main OpenSUSE repos. 2. Create a new package orthanc_src, which just contains the sources of Orthanc (you can create this as a subpackage of orthance). Then BuildRequires: orthanc_src for the plugins. I am however also not sure whether this will get accepted into the main repos. Moving the plugins into a subpackage is probably the cleanest solution, although I understand why you don't want to do that.
Cheers Axel -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
-- Dan Čermák <dcermak@suse.com> Software Engineer Development tools SUSE Linux GmbH, Maxfeldstr. 5, D-90409 Nürnberg Tel: +49-911-74053-0; Fax: +49-911-7417755; https://www.suse.com/ SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton, HRB 21284 (AG Nürnberg)
"Axel Braun" <Axel.Braun@gmx.de> writes:
Gesendet: Dienstag, 26. Februar 2019 um 11:38 Uhr Von: "Simon Lees" <sflees@suse.de> An: opensuse-packaging@opensuse.org Betreff: Re: [opensuse-packaging] Include source package A in build for B
On 26/02/2019 20:59, Michal Kubecek wrote:
On Tuesday, 26 February 2019 11:01 Axel Braun wrote:
Hi,
I'm currently trying to build the orthanc-postgresql package.
Problem is that most Orthanc plugins re-use a part of the C++ code of Orthanc, independently of the development headers.
To solve this issue, we can put the source code distribution "Orthanc-1.5.5.tar.gz" file into a folder called "ThirdPartyDownloads" located next to the "PostgreSQL/CMakeLists.txt" file.
Providing the source package is IMO not the smartest idea, as this requires maintenance of version for orthanc not only in hte orthanc package, but as well in each plugin package
Can I somehow include the orthanc.src.rpm in the build for the plugin?
How about building it as a subpackage of orthanc?
Michal Kubecek
Yeah normally you'd create an orthanc-devel which contains all the header files installed into /usr/include/, in a normal case the header files plus any associated shared libraries in /usr/lib64 should be enough to build plugins.
Yes, thats what we have already.....
But this approach makes the assumption that the upstream build system works in a sane and normal way which isn't always the case. Sometimes its quicker to fix the upstream build files so that cmake will look for the preinstalled version fo the source code and libs rather then one in the directory next to it.
Yes, if this is fixed upstream that may be ideal..... I have just at the moment reveiced an answer from the author: --- This could indeed work, but I am not sure about this... while invoking CMake of the PostgreSQL plugin, you could try and add the two following command-line options:
-DORTHANC_FRAMEWORK_SOURCE=path -DORTHANC_FRAMEWORK_ROOT=/path/to/Orthanc/sources/ --- Question remains, how can I add the .src.rpm as build requirement?
Can you put the plugins into a subpackage of Orthanc itself? Then you'll have the sources available in the buildroot.
Thanks Axel -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
-- Dan Čermák <dcermak@suse.com> Software Engineer Development tools SUSE Linux GmbH, Maxfeldstr. 5, D-90409 Nürnberg Tel: +49-911-74053-0; Fax: +49-911-7417755; https://www.suse.com/ SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton, HRB 21284 (AG Nürnberg)
Am 26. Februar 2019 14:09:45 MEZ schrieb "Dan Čermák" <dcermak@suse.com>:
"Axel Braun" <Axel.Braun@gmx.de> writes:
Gesendet: Dienstag, 26. Februar 2019 um 11:38 Uhr Von: "Simon Lees" <sflees@suse.de> An: opensuse-packaging@opensuse.org Betreff: Re: [opensuse-packaging] Include source package A in build for B
On Tuesday, 26 February 2019 11:01 Axel Braun wrote:
Hi,
I'm currently trying to build the orthanc-postgresql package.
Problem is that most Orthanc plugins re-use a part of the C++ code of Orthanc, independently of the development headers.
To solve this issue, we can put the source code distribution "Orthanc-1.5.5.tar.gz" file into a folder called "ThirdPartyDownloads" located next to the "PostgreSQL/CMakeLists.txt" file.
Providing the source package is IMO not the smartest idea, as
requires maintenance of version for orthanc not only in hte orthanc package, but as well in each plugin package
Can I somehow include the orthanc.src.rpm in the build for the
On 26/02/2019 20:59, Michal Kubecek wrote: this plugin?
How about building it as a subpackage of orthanc?
Michal Kubecek
Yeah normally you'd create an orthanc-devel which contains all the header files installed into /usr/include/, in a normal case the header files plus any associated shared libraries in /usr/lib64 should be enough to build plugins.
Yes, thats what we have already.....
But this approach makes the assumption that the upstream build system works in a sane and normal way which isn't always the case. Sometimes its quicker to fix the upstream build files so that cmake will look for the preinstalled version fo the source code and libs rather then one in the directory next to it.
Yes, if this is fixed upstream that may be ideal..... I have just at the moment reveiced an answer from the author: --- This could indeed work, but I am not sure about this... while invoking CMake of the PostgreSQL plugin, you could try and add the two following command-line options:
-DORTHANC_FRAMEWORK_SOURCE=path -DORTHANC_FRAMEWORK_ROOT=/path/to/Orthanc/sources/ --- Question remains, how can I add the .src.rpm as build requirement?
Can you put the plugins into a subpackage of Orthanc itself? Then you'll have the sources available in the buildroot.
Would that not basically mean we build both in one source?
Thanks Axel -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
-- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
Axel Braun <Axel.braun@gmx.de> writes:
Am 26. Februar 2019 14:09:45 MEZ schrieb "Dan Čermák" <dcermak@suse.com>:
"Axel Braun" <Axel.Braun@gmx.de> writes:
Gesendet: Dienstag, 26. Februar 2019 um 11:38 Uhr Von: "Simon Lees" <sflees@suse.de> An: opensuse-packaging@opensuse.org Betreff: Re: [opensuse-packaging] Include source package A in build for B
On Tuesday, 26 February 2019 11:01 Axel Braun wrote:
Hi,
I'm currently trying to build the orthanc-postgresql package.
Problem is that most Orthanc plugins re-use a part of the C++ code of Orthanc, independently of the development headers.
To solve this issue, we can put the source code distribution "Orthanc-1.5.5.tar.gz" file into a folder called "ThirdPartyDownloads" located next to the "PostgreSQL/CMakeLists.txt" file.
Providing the source package is IMO not the smartest idea, as
requires maintenance of version for orthanc not only in hte orthanc package, but as well in each plugin package
Can I somehow include the orthanc.src.rpm in the build for the
On 26/02/2019 20:59, Michal Kubecek wrote: this plugin?
How about building it as a subpackage of orthanc?
Michal Kubecek
Yeah normally you'd create an orthanc-devel which contains all the header files installed into /usr/include/, in a normal case the header files plus any associated shared libraries in /usr/lib64 should be enough to build plugins.
Yes, thats what we have already.....
But this approach makes the assumption that the upstream build system works in a sane and normal way which isn't always the case. Sometimes its quicker to fix the upstream build files so that cmake will look for the preinstalled version fo the source code and libs rather then one in the directory next to it.
Yes, if this is fixed upstream that may be ideal..... I have just at the moment reveiced an answer from the author: --- This could indeed work, but I am not sure about this... while invoking CMake of the PostgreSQL plugin, you could try and add the two following command-line options:
-DORTHANC_FRAMEWORK_SOURCE=path -DORTHANC_FRAMEWORK_ROOT=/path/to/Orthanc/sources/ --- Question remains, how can I add the .src.rpm as build requirement?
Can you put the plugins into a subpackage of Orthanc itself? Then you'll have the sources available in the buildroot.
Would that not basically mean we build both in one source?
Yes, that's the point: you create a spec file that produces multiple packages, so you can have the sources available for every subpackage. This is quite common for -devel packages or plugins, the first example that I could think of is notmuch: https://build.opensuse.org/package/view_file/devel:libraries:c_c++/notmuch/n... (but there is literally thousands of these) Or wouldn't this approach work in your case?
Thanks Axel -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
-- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
-- Dan Čermák <dcermak@suse.com> Software Engineer Development tools SUSE Linux GmbH, Maxfeldstr. 5, D-90409 Nürnberg Tel: +49-911-74053-0; Fax: +49-911-7417755; https://www.suse.com/ SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton, HRB 21284 (AG Nürnberg)
On Feb 26 2019, "Axel Braun" <Axel.Braun@gmx.de> wrote:
Question remains, how can I add the .src.rpm as build requirement?
You would have to create a foo-source package, similar to the kernel-source package. Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
Hi Axel, would it be an option for you to build the plugins & Orthanc from a single spec file but create multiple resulting packages? That way you could have the source available when building the plugins and would not need to pull it in via some other method. Cheers, Dan "Axel Braun" <Axel.Braun@gmx.de> writes:
Hi,
I'm currently trying to build the orthanc-postgresql package.
Problem is that most Orthanc plugins re-use a part of the C++ code of Orthanc, independently of the development headers.
To solve this issue, we can put the source code distribution "Orthanc-1.5.5.tar.gz" file into a folder called "ThirdPartyDownloads" located next to the "PostgreSQL/CMakeLists.txt" file.
Providing the source package is IMO not the smartest idea, as this requires maintenance of version for orthanc not only in hte orthanc package, but as well in each plugin package
Can I somehow include the orthanc.src.rpm in the build for the plugin?
Thanks Axel -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
-- Dan Čermák <dcermak@suse.com> Software Engineer Development tools SUSE Linux GmbH, Maxfeldstr. 5, D-90409 Nürnberg Tel: +49-911-74053-0; Fax: +49-911-7417755; https://www.suse.com/ SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton, HRB 21284 (AG Nürnberg)
participants (6)
-
Andreas Schwab
-
Axel Braun
-
Axel Braun
-
Dan Čermák
-
Michal Kubecek
-
Simon Lees