You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This package is a candidate for inclusion as an official package in Fedora Linux! Per Fedora packaging guidelines, there are some issues that should be addressed before the package can be officially reviewed, built, and made available in the Fedora RPM repositories.
Since this package is part of a group of packages, I have been prototyping the packages in a Fedora Copr repository [1]. The preliminary sources for this package can be accessed in a Git repository [2].
Here are the initial issues which should be addressed:
Upstream package(s)
Since this package needs libpotassco, we should prioritize addressing issues with that package first [3].
.SO Name Versioning
Fedora guidelines strongly suggest that the version be included in any shared object libraries distributed in the package [4]. Some packages in this collection appear to be setting the SONAME value, though the value doesn't match the version of the package.
Installation Directory Override
Any files installed by the packages must conform to Fedora's filesystem hierarchy. In order for this package to install the files as such, it must not override CMake's default install locations without any mechanism to change them. I have sketched out a preliminary patch to address this [5]. Please feel free to use those changes as you see fit.
Header Installation Bug
It looks like there is a bug the header installation procedure which causes the directory structure to be lost. This will block downstream packages from consuming the headers properly. I've made a preliminary patch which addresses this [6].
Implicit Dependencies
In order to consume this package through CMake, the implicit dependencies of this package should be resolved. This package always depends on libpotassco, and if built with threads, also depends on Threads::Threads. It would be much easier for consuming packages to build against this package if they didn't need to explicitly resolve this package's dependencies on their own. I've made a preliminary patch which addresses this [7].
Once we have at least acknowledged each of the above issues, I'll initiate the review. If there is a valid reason that any of the issues can't be addressed, please let me know and we'll talk about an FPC exemption. If you have any further questions, or if there is anything I can do to help, please reach out.
* use GNUInstallDirs to enable fine-grained control of install dirs
* set version property for clasp library
* fix clasp header installation
* add dependencies to cmake/clasp-config.cmake
Hi Scott.
Thank you for your report. I tried to address your points in commit f139715 to dev.
However, at the moment I think the easiest and best thing to do would be to focus on clingo and to
forgo separate packages for libpotassco/clasp.
The clingo source releases (e.g. https://github.com/potassco/clingo/archive/v5.2.1.zip) already contain (and build) clasp and lpconvert. They also (by default) limit library installation to libclingo, which currently is the only library that is intended to be build and used as a shared library.
Hi!
This package is a candidate for inclusion as an official package in Fedora Linux! Per Fedora packaging guidelines, there are some issues that should be addressed before the package can be officially reviewed, built, and made available in the Fedora RPM repositories.
Since this package is part of a group of packages, I have been prototyping the packages in a Fedora Copr repository [1]. The preliminary sources for this package can be accessed in a Git repository [2].
Here are the initial issues which should be addressed:
Since this package needs
libpotassco
, we should prioritize addressing issues with that package first [3].Fedora guidelines strongly suggest that the version be included in any shared object libraries distributed in the package [4]. Some packages in this collection appear to be setting the SONAME value, though the value doesn't match the version of the package.
Any files installed by the packages must conform to Fedora's filesystem hierarchy. In order for this package to install the files as such, it must not override CMake's default install locations without any mechanism to change them. I have sketched out a preliminary patch to address this [5]. Please feel free to use those changes as you see fit.
It looks like there is a bug the header installation procedure which causes the directory structure to be lost. This will block downstream packages from consuming the headers properly. I've made a preliminary patch which addresses this [6].
In order to consume this package through CMake, the implicit dependencies of this package should be resolved. This package always depends on
libpotassco
, and if built with threads, also depends onThreads::Threads
. It would be much easier for consuming packages to build against this package if they didn't need to explicitly resolve this package's dependencies on their own. I've made a preliminary patch which addresses this [7].Once we have at least acknowledged each of the above issues, I'll initiate the review. If there is a valid reason that any of the issues can't be addressed, please let me know and we'll talk about an FPC exemption. If you have any further questions, or if there is anything I can do to help, please reach out.
Thanks very much!
--scott
[1] https://copr.fedorainfracloud.org/coprs/cottsay/potassco
[2] http://copr-dist-git.fedorainfracloud.org/cgit/cottsay/potassco/clasp.git/tree/
[3] potassco/libpotassco#1
[4] https://fedoraproject.org/wiki/Packaging:Guidelines#Downstream_.so_name_versioning
[5] http://copr-dist-git.fedorainfracloud.org/cgit/cottsay/potassco/clasp.git/tree/clasp-3.3.2-install_dir.patch
[6] http://copr-dist-git.fedorainfracloud.org/cgit/cottsay/potassco/clasp.git/tree/clasp-3.3.2-header_install.patch
[7] http://copr-dist-git.fedorainfracloud.org/cgit/cottsay/potassco/clasp.git/tree/clasp-3.3.2-cmake-deps.patch
The text was updated successfully, but these errors were encountered: