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