fairmq.spec 2.76 KB
Newer Older
Dennis Klein's avatar
Dennis Klein committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
Name: fairmq
Version: 1.4.41
Release: 1%{?dist}
Summary: C++ Message Queuing Library and Framework

License: LGPLv3
%define github github.com
%define gh_user FairRootGroup
%define gh_repo FairMQ
%define gh_repo_url https://%{github}/%{gh_user}/%{gh_repo}
URL: %{gh_repo_url}
Source0: %{name}-%{version}.tar.gz

BuildRequires: asiofi-devel
BuildRequires: boost-devel
BuildRequires: cmake
BuildRequires: fairlogger-devel
BuildRequires: faircmakemodules
BuildRequires: flatbuffers-devel
BuildRequires: gcc-c++
BuildRequires: git
BuildRequires: zeromq-devel

%description
FairMQ is designed to help implementing large-scale data processing
workflows needed in next-generation Particle Physics experiments. FairMQ
is written in C++ and aims to

* provide an asynchronous message passing abstraction of different data transport technologies,
* provide a reasonably efficient data transport service (zero-copy, high throughput),
* be data format agnostic, and
* provide basic building blocks that can be used to implement higher level data processing workflows.

%global debug_package %{nil}

%prep
%autosetup

%build
cmake -S. -Bbuild \
      -DCMAKE_INSTALL_PREFIX=%{_prefix} \
      -DCMAKE_BUILD_TYPE=Release \
      -DDISABLE_COLOR=ON \
      -DBUILD_OFI_TRANSPORT=ON
cmake --build build %{?_smp_mflags}

%install
DESTDIR=%{buildroot} cmake --build build --target install

%files
%license LICENSE
%{_libdir}/libFairMQ*.so*
%{_bindir}/fairmq-bsampler
%{_bindir}/fairmq-merger
%{_bindir}/fairmq-multiplier
%{_bindir}/fairmq-proxy
%{_bindir}/fairmq-shmmonitor
%{_bindir}/fairmq-sink
%{_bindir}/fairmq-splitter
%{_bindir}/fairmq-uuid-gen


%package devel
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: boost-devel
Requires: fairlogger-devel
Summary: Development files for %{name}

%description devel
This package contains the header files and CMake package for developing against FairMQ.

%files devel
%license LICENSE
%dir %{_includedir}/%{name}
%{_includedir}/%{name}/*.h
%dir %{_includedir}/%{name}/options
%{_includedir}/%{name}/options/*.h
%dir %{_includedir}/%{name}/shmem
%{_includedir}/%{name}/shmem/*.h
%dir %{_includedir}/%{name}/tools
%{_includedir}/%{name}/tools/*.h
%dir %{_libdir}/cmake
%dir %{_libdir}/cmake/%{gh_repo}-%{version}
%{_libdir}/cmake/%{gh_repo}-%{version}/%{gh_repo}*.cmake
%{_datadir}/%{name}/cmake


%package examples
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: bash
Requires: xterm
Summary: Example files for %{name}

%description examples
This package contains example topologies for FairMQ.

%files examples
%license LICENSE
%{_bindir}/fairmq-ex-*
%{_bindir}/fairmq-start-ex-*.sh
%{_datadir}/%{name}/ex-*

%changelog
* Thu Sep 9 2021 Dennis Klein <d.klein@gsi.de> - 1.4.41-1
- Package v1.4.41
* Tue May 11 2021 Dennis Klein <d.klein@gsi.de> - 1.4.37-1
- Package v1.4.37