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