mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2026-10-15 22:30:26 +02:00
port of RPM building and gitea workflows (#1601)
Build and Deploy on local RHEL9 / build (push) Successful in 2m0s
Build on RHEL9 docker image / build (push) Successful in 3m57s
Build on RHEL8 docker image / build (push) Successful in 5m7s
Build and Deploy on local RHEL8 / build (push) Successful in 5m14s
Run Simulator Tests on local RHEL9 / build (push) Successful in 20m43s
Run Simulator Tests on local RHEL8 / build (push) Successful in 24m4s
Build and Deploy on local RHEL9 / build (push) Successful in 2m0s
Build on RHEL9 docker image / build (push) Successful in 3m57s
Build on RHEL8 docker image / build (push) Successful in 5m7s
Build and Deploy on local RHEL8 / build (push) Successful in 5m14s
Run Simulator Tests on local RHEL9 / build (push) Successful in 20m43s
Run Simulator Tests on local RHEL8 / build (push) Successful in 24m4s
This commit is contained in:
@@ -240,6 +240,52 @@ Example cmake options Comment
|
||||
For v7.x.x of slsDetectorPackage and older, refer :ref:`zeromq notes for cmk script option to hint library location. <zeromq for different slsDetectorPackage versions>`
|
||||
|
||||
|
||||
3.2.3. Build RPM packages
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
CPack builds separate RPMs for the command line tools (``cli``), receiver
|
||||
executables (``receiver``), Moench processing tools (``zmq``), and GUI (``gui``).
|
||||
Install ``rpm-build`` and the dependencies for the selected features, and build
|
||||
on the target distribution or a matching container.
|
||||
|
||||
For example, to package the command line tools, receiver and GUI:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr -DSLS_USE_GUI=ON \
|
||||
-DSLS_INSTALL_VERSIONED_BINARIES=ON
|
||||
cmake --build build -j4
|
||||
cpack --config build/CPackConfig.cmake -G RPM \
|
||||
-D 'CPACK_COMPONENTS_ALL=cli;receiver;gui' -B build
|
||||
|
||||
Select only components enabled in the build. Add ``-DSLS_USE_MOENCH=ON`` and
|
||||
the ``zmq`` component to package the Moench tools.
|
||||
|
||||
``SLS_INSTALL_VERSIONED_BINARIES=ON`` includes the project version in the RPM
|
||||
package names, for example ``slsdetectorpackage-10.1.0-cli`` and
|
||||
``slsdetectorpackage-10.1.0-gui``. Installed executables also receive a version
|
||||
suffix, such as ``sls_detector_get-10.1.0`` and ``slsDetectorGui-10.1.0``. This
|
||||
allows RPMs for different project versions to be installed side by side.
|
||||
RPM revisions of the same project version retain the same package names and
|
||||
can be upgraded normally.
|
||||
|
||||
RPM filenames include the version once, for example
|
||||
``slsdetectorpackage-cli-10.1.0-1.fc44.x86_64.rpm``. The package's internal name
|
||||
remains ``slsdetectorpackage-10.1.0-cli`` and its RPM version remains ``10.1.0``.
|
||||
|
||||
The option also applies to Jungfrau processing tools and virtual detector
|
||||
servers installed with ``cmake --install``. These are outside the current RPM
|
||||
component selection. Executables in the build directory keep their original
|
||||
names. With the option set to ``OFF`` (the default), installed executables and
|
||||
RPM package names omit the project version.
|
||||
|
||||
The RPM components contain executables; Python bindings, libraries and headers
|
||||
are not included. A full ``cmake --install`` still installs libraries and
|
||||
headers at their usual paths, so use separate prefixes for full installations
|
||||
of different versions.
|
||||
|
||||
|
||||
3.3. Build on old distributions using conda
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
|
||||
Reference in New Issue
Block a user