]> git.pld-linux.org Git - packages/sysdig.git/blame - sysdig.spec
- added linux4 patch (fixes build with kernel 4.9.1+)
[packages/sysdig.git] / sysdig.spec
CommitLineData
0f961bb8 1#
6b2193a9
ER
2# NOTES:
3# - https://github.com/draios/sysdig/wiki/How-to-Install-Sysdig-from-the-Source-Code
4#
0f961bb8 5# Conditional build:
c3d65671
JB
6%bcond_without kernel # kernel modules
7%bcond_without userspace # userspace packages
8%bcond_without dkms # DKMS package
ce347e4b 9%bcond_without luajit # use plain lua5.1 instead of luajit
0f961bb8 10
74f0998f
ER
11%if 0%{?_pld_builder:1} && %{with kernel} && %{with userspace}
12%{error:kernel and userspace cannot be built at the same time on PLD builders}
13exit 1
14%endif
15
16%if %{without userspace}
17%undefine with_dkms
18# nothing to be placed to debuginfo package
19%define _enable_debug_packages 0
20%endif
21
b0bf4f31 22%define rel 1
74f0998f
ER
23%define pname sysdig
24Summary: sysdig, a system-level exploration and troubleshooting tool
c3d65671 25Summary(pl.UTF-8): sysdig - narzędzie do przeglądu i rozwiązywania problemów na poziomie systemowym
74f0998f 26Name: %{pname}%{?_pld_builder:%{?with_kernel:-kernel}}%{_alt_kernel}
0bdaf40c 27Version: 0.13.0
74f0998f 28Release: %{rel}%{?_pld_builder:%{?with_kernel:@%{_kernel_ver_str}}}
74fbb710
ER
29License: GPL v2
30Group: Applications/System
0bdaf40c 31#Source0Download: https://github.com/draios/sysdig/releases
74f0998f 32Source0: https://github.com/draios/sysdig/archive/%{version}/%{pname}-%{version}.tar.gz
0bdaf40c 33# Source0-md5: a8658daee5277d2a3a0bbb8381fb020f
87555a2e 34Patch0: buildflags.patch
1dbaede1 35Patch1: %{name}-linux4.patch
74fbb710 36URL: http://www.sysdig.org/
fe7ef0e8 37BuildRequires: rpmbuild(macros) >= 1.701
c91ce2ea 38BuildRequires: cmake >= 2.8.2
f31931a5 39BuildRequires: curl-devel >= 7.45.0
0bdaf40c 40BuildRequires: jq-devel >= 1.5
c91ce2ea 41BuildRequires: jsoncpp-devel
82bc8dcd 42BuildRequires: libb64-devel >= 1.2.1
8dde2f70 43BuildRequires: libstdc++-devel >= 6:4.4
ce347e4b
JB
44%{!?with_luajit:BuildRequires: lua5.1-devel >= 5.1}
45%{?with_luajit:BuildRequires: luajit-devel >= 2.0.3}
8dde2f70 46BuildRequires: ncurses-devel >= 5.9
f31931a5 47BuildRequires: openssl-devel >= 1.0.2
8dde2f70 48BuildRequires: zlib-devel >= 1.2.8
ce347e4b 49%{!?with_luajit:BuildConflicts: luajit-devel}
b0bf4f31
JB
50%{?with_kernel:%{expand:%buildrequires_kernel kernel%%{_alt_kernel}-module-build >= 3:2.6.20.2}}
51%if %{with userspace}
9029892a
JR
52ExclusiveArch: %{ix86} %{x8664}
53%else
54ExclusiveArch: %{ix86} %{x8664} x32
fe7ef0e8 55%endif
74fbb710
ER
56BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
57
70614e31
ER
58# constify %{name}
59%{expand:%%global name %{pname}}
60
baa4cab5
ER
61%define zshdir %{_datadir}/zsh/site-functions
62
74fbb710
ER
63%description
64Sysdig instruments your physical and virtual machines at the OS level
65by installing into the Linux kernel and capturing system calls and
66other OS events. Then, using sysdig's command line interface, you can
67filter and decode these events in order to extract useful information.
68Sysdig can be used to inspect systems live in real-time, or to
69generate trace files that can be analyzed at a later stage.
70
c3d65671
JB
71%description -l pl.UTF-8
72Sysdig obsługuje maszyny fizyczne i wirtualne na poziomie systemu
73operacyjnego, instalując się w jądrze Linuksa i przechwytując
74wywołania systemowe oraz inne zdarzenia systemu. Następnie, przy
75użyciu interfejsu linii poleceń sysdiga można odfiltrować i zdekodować
76te zdarzenia, aby wydobyć z nich przydatne informacje. Sysdiga można
77używać do dozorowania systemów w czasie rzeczywistym albo generowania
78plików śladów do późniejszej analizy.
79
0f961bb8
ER
80%package -n dkms-%{name}
81Summary: DKMS-ready driver for sysdig
c3d65671 82Summary(pl.UTF-8): Sterownik sysdiga zgodny z DKMS
0f961bb8
ER
83License: GPL v2+
84Group: Base/Kernel
85Requires(pre,post): dkms >= 2.1.0.0
86%if "%{_rpmversion}" >= "5"
87BuildArch: noarch
88%endif
89
90%description -n dkms-%{name}
91This package contains a DKMS-ready driver for sysdig.
92
c3d65671
JB
93%description -n dkms-%{name} -l pl.UTF-8
94Ten pakiet zawiera sterownik sysdiga w postaci zgodnej z DKMS.
95
baa4cab5 96%package -n bash-completion-%{name}
c3d65671
JB
97Summary: bash-completion for sysdig command
98Summary(pl.UTF-8): Bashowe dopełnianie składni polecenia sysdig
baa4cab5 99Group: Applications/Shells
73a3ce5f 100Requires: %{name} = %{version}-%{rel}
baa4cab5
ER
101Requires: bash-completion
102%if "%{_rpmversion}" >= "5"
103BuildArch: noarch
104%endif
105
106%description -n bash-completion-%{name}
c3d65671
JB
107bash-completion for sysdig command.
108
109%description -n bash-completion-%{name} -l pl.UTF-8
110Bashowe dopełnianie składni polecenia sysdig.
baa4cab5
ER
111
112%package -n zsh-completion-%{name}
c3d65671
JB
113Summary: zsh-completion for sysdig command
114Summary(pl.UTF-8): Dopełnianie składni polecenia sysdig w powłoce zsh
baa4cab5 115Group: Applications/Shells
73a3ce5f 116Requires: %{name} = %{version}-%{rel}
baa4cab5
ER
117%if "%{_rpmversion}" >= "5"
118BuildArch: noarch
119%endif
120
121%description -n zsh-completion-%{name}
c3d65671
JB
122zsh-completion for sysdig command.
123
124%description -n zsh-completion-%{name} -l pl.UTF-8
125Dopełnianie składni polecenia sysdig w powłoce zsh.
baa4cab5 126
74f0998f
ER
127%define kernel_pkg()\
128%package -n kernel%{_alt_kernel}-misc-%{pname}\
129Summary: Linux driver for sysdig\
c3d65671 130Summary(pl.UTF-8): Sterownik jądra Linuksa dla sysdiga\
74f0998f
ER
131Release: %{rel}@%{_kernel_ver_str}\
132Group: Base/Kernel\
133Requires(post,postun): /sbin/depmod\
134%requires_releq_kernel\
135Requires(postun): %releq_kernel\
136\
137%description -n kernel%{_alt_kernel}-misc-%{pname}\
c3d65671 138This is sysdig-probe module for Linux.\
74f0998f 139\
c3d65671
JB
140%description -n kernel%{_alt_kernel}-misc-%{pname} -l pl.UTF-8\
141Ten pakiet zawiera moduł sysdig-probe for jądra Linuksa.\
74f0998f
ER
142\
143%if %{with kernel}\
144%files -n kernel%{_alt_kernel}-misc-%{pname}\
145%defattr(644,root,root,755)\
146/lib/modules/%{_kernel_ver}/misc/*.ko*\
147%endif\
148\
149%post -n kernel%{_alt_kernel}-misc-%{pname}\
150%depmod %{_kernel_ver}\
151\
152%postun -n kernel%{_alt_kernel}-misc-%{pname}\
153%depmod %{_kernel_ver}\
154%{nil}
155
156%define build_kernel_pkg()\
157%build_kernel_modules -C driver -m sysdig-probe\
158%install_kernel_modules -D installed -m driver/sysdig-probe -d misc\
159%{nil}
160
161%{?with_kernel:%{expand:%create_kernel_packages}}
162
74fbb710 163%prep
70614e31 164%setup -q -n %{pname}-%{version}
87555a2e 165%patch0 -p1
1dbaede1 166%patch1 -p1
74fbb710
ER
167
168%build
c91ce2ea 169install -d build
74fbb710 170cd build
c3d65671 171%cmake .. \
4d80860c 172 -DDIR_ETC=%{_sysconfdir} \
73a3ce5f 173 -DSYSDIG_VERSION=%{version}-%{rel} \
74fbb710 174 -DBUILD_DRIVER=OFF \
ce347e4b 175 -DUSE_BUNDLED_B64=OFF \
f31931a5 176 -DUSE_BUNDLED_CURL=OFF \
0bdaf40c 177 -DUSE_BUNDLED_JQ=OFF \
c91ce2ea
ER
178 -DUSE_BUNDLED_JSONCPP=OFF \
179 -DUSE_BUNDLED_LUAJIT=OFF \
180 -DUSE_BUNDLED_NCURSES=OFF \
f31931a5 181 -DUSE_BUNDLED_OPENSSL=OFF \
c3d65671 182 -DUSE_BUNDLED_ZLIB=OFF
b0bf4f31 183cd ..
c3d65671 184
b0bf4f31
JB
185%if %{with kernel}
186cp -f build/driver/Makefile.dkms driver/Makefile
187%{expand:%build_kernel_packages}
188%endif
189
190%if %{with userspace}
191%{__make} -C build
74f0998f 192%endif
74fbb710
ER
193
194%install
195rm -rf $RPM_BUILD_ROOT
c3d65671 196
74f0998f 197%if %{with userspace}
74fbb710
ER
198%{__make} -C build install \
199 DESTDIR=$RPM_BUILD_ROOT
305ce9ba
ER
200
201# already installed as %{zshdir}/_sysdig
202%{__rm} $RPM_BUILD_ROOT%{_datadir}/zsh/vendor-completions/_sysdig
74f0998f
ER
203%endif
204
205%if %{with kernel}
206install -d $RPM_BUILD_ROOT
207cp -a installed/* $RPM_BUILD_ROOT
208%endif
74fbb710 209
74fbb710
ER
210%clean
211rm -rf $RPM_BUILD_ROOT
212
0f961bb8 213%post -n dkms-%{name}
73a3ce5f
ER
214%{_sbindir}/dkms add -m %{name} -v %{version}-%{rel} --rpm_safe_upgrade && \
215%{_sbindir}/dkms build -m %{name} -v %{version}-%{rel} --rpm_safe_upgrade && \
216%{_sbindir}/dkms install -m %{name} -v %{version}-%{rel} --rpm_safe_upgrade || :
0f961bb8
ER
217
218%preun -n dkms-%{name}
73a3ce5f 219%{_sbindir}/dkms remove -m %{name} -v %{version}-%{rel} --rpm_safe_upgrade --all || :
0f961bb8 220
74f0998f 221%if %{with userspace}
74fbb710
ER
222%files
223%defattr(644,root,root,755)
514412de 224%doc README.md
74fbb710
ER
225%attr(755,root,root) %{_bindir}/csysdig
226%attr(755,root,root) %{_bindir}/sysdig
227%attr(755,root,root) %{_bindir}/sysdig-probe-loader
228%{_mandir}/man8/csysdig.8*
229%{_mandir}/man8/sysdig.8*
230%{_datadir}/%{name}
baa4cab5
ER
231
232%files -n bash-completion-%{name}
233%defattr(644,root,root,755)
74fbb710 234/etc/bash_completion.d/sysdig
baa4cab5
ER
235
236%files -n zsh-completion-%{name}
237%defattr(644,root,root,755)
238%{zshdir}/_sysdig
74f0998f 239%endif
0f961bb8
ER
240
241%if %{with dkms}
242%files -n dkms-%{name}
243%defattr(644,root,root,755)
73a3ce5f 244%{_usrsrc}/%{name}-%{version}-%{rel}
0f961bb8 245%endif
This page took 0.091683 seconds and 4 git commands to generate.