]> git.pld-linux.org Git - packages/sysdig.git/blame - sysdig.spec
rel 1
[packages/sysdig.git] / sysdig.spec
CommitLineData
0f961bb8
ER
1#
2# Conditional build:
74f0998f
ER
3%bcond_without kernel # don't build kernel modules
4%bcond_without userspace # don't build userspace programs
0f961bb8
ER
5%bcond_without dkms # build dkms package
6
74f0998f
ER
7%if "%{?alt_kernel}" != "" && 0%{?build_kernels:1}
8 %{error:alt_kernel (%{?alt_kernel}) and build_kernels (%{?build_kernels}) defined}
9%endif
10
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
07070165 22%define rel 1
74f0998f
ER
23%define pname sysdig
24Summary: sysdig, a system-level exploration and troubleshooting tool
25Name: %{pname}%{?_pld_builder:%{?with_kernel:-kernel}}%{_alt_kernel}
74fbb710 26Version: 0.1.101
74f0998f 27Release: %{rel}%{?_pld_builder:%{?with_kernel:@%{_kernel_ver_str}}}
74fbb710
ER
28License: GPL v2
29Group: Applications/System
74f0998f 30Source0: https://github.com/draios/sysdig/archive/%{version}/%{pname}-%{version}.tar.gz
74fbb710
ER
31# Source0-md5: 5fe96a3a0fd98b2157a40cb29af41afc
32URL: http://www.sysdig.org/
fe7ef0e8
ER
33BuildRequires: rpmbuild(macros) >= 1.701
34%if %{with userspace}
c91ce2ea 35BuildRequires: cmake >= 2.8.2
c91ce2ea 36BuildRequires: jsoncpp-devel
8dde2f70
ER
37BuildRequires: libstdc++-devel >= 6:4.4
38BuildRequires: luajit-devel >= 2.0.3
39BuildRequires: ncurses-devel >= 5.9
40BuildRequires: zlib-devel >= 1.2.8
fe7ef0e8 41%endif
74f0998f 42%{?with_kernel:%{expand:%buildrequires_kernel kernel%%{_alt_kernel}-module-build >= 3:2.6.20.2}}
96d4f88b 43ExclusiveArch: %{ix86} %{x8664}
74fbb710
ER
44BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
45
70614e31
ER
46# constify %{name}
47%{expand:%%global name %{pname}}
48
baa4cab5
ER
49%define zshdir %{_datadir}/zsh/site-functions
50
74fbb710
ER
51%description
52Sysdig instruments your physical and virtual machines at the OS level
53by installing into the Linux kernel and capturing system calls and
54other OS events. Then, using sysdig's command line interface, you can
55filter and decode these events in order to extract useful information.
56Sysdig can be used to inspect systems live in real-time, or to
57generate trace files that can be analyzed at a later stage.
58
0f961bb8
ER
59%package -n dkms-%{name}
60Summary: DKMS-ready driver for sysdig
61License: GPL v2+
62Group: Base/Kernel
63Requires(pre,post): dkms >= 2.1.0.0
64%if "%{_rpmversion}" >= "5"
65BuildArch: noarch
66%endif
67
68%description -n dkms-%{name}
69This package contains a DKMS-ready driver for sysdig.
70
baa4cab5
ER
71%package -n bash-completion-%{name}
72Summary: bash-completion for sysdig
73Summary(pl.UTF-8): Bashowe dopełnianie składni dla sysdig
74Group: Applications/Shells
75Requires: %{name} = %{version}-%{release}
76Requires: bash-completion
77%if "%{_rpmversion}" >= "5"
78BuildArch: noarch
79%endif
80
81%description -n bash-completion-%{name}
82bash-completion for sysdig.
83
84%package -n zsh-completion-%{name}
85Summary: zsh-completion for sysdig
86Group: Applications/Shells
87Requires: %{name} = %{version}-%{release}
88%if "%{_rpmversion}" >= "5"
89BuildArch: noarch
90%endif
91
92%description -n zsh-completion-%{name}
93zsh-completion for sysdig.
94
74f0998f
ER
95%define kernel_pkg()\
96%package -n kernel%{_alt_kernel}-misc-%{pname}\
97Summary: Linux driver for sysdig\
98Release: %{rel}@%{_kernel_ver_str}\
99Group: Base/Kernel\
100Requires(post,postun): /sbin/depmod\
101%requires_releq_kernel\
102Requires(postun): %releq_kernel\
103\
104%description -n kernel%{_alt_kernel}-misc-%{pname}\
105This is driver for sysdig-probe for Linux.\
106\
107This package contains Linux module.\
108\
109%if %{with kernel}\
110%files -n kernel%{_alt_kernel}-misc-%{pname}\
111%defattr(644,root,root,755)\
112/lib/modules/%{_kernel_ver}/misc/*.ko*\
113%endif\
114\
115%post -n kernel%{_alt_kernel}-misc-%{pname}\
116%depmod %{_kernel_ver}\
117\
118%postun -n kernel%{_alt_kernel}-misc-%{pname}\
119%depmod %{_kernel_ver}\
120%{nil}
121
122%define build_kernel_pkg()\
123%build_kernel_modules -C driver -m sysdig-probe\
124%install_kernel_modules -D installed -m driver/sysdig-probe -d misc\
125%{nil}
126
127%{?with_kernel:%{expand:%create_kernel_packages}}
128
74fbb710 129%prep
70614e31 130%setup -q -n %{pname}-%{version}
74fbb710 131
74f0998f
ER
132# we need just obj-m from the file
133cp driver/Makefile{.in,}
134%{__sed} -i -e 's/@KBUILD_FLAGS@//' driver/Makefile
135
74fbb710 136%build
74f0998f
ER
137%{?with_kernel:%{expand:%build_kernel_packages}}
138
139%if %{with userspace}
c91ce2ea 140install -d build
74fbb710
ER
141cd build
142%cmake \
4d80860c 143 -DDIR_ETC=%{_sysconfdir} \
f312478b 144 -DSYSDIG_VERSION=%{version}-%{release} \
74fbb710 145 -DBUILD_DRIVER=OFF \
c91ce2ea
ER
146 -DUSE_BUNDLED_JSONCPP=OFF \
147 -DUSE_BUNDLED_LUAJIT=OFF \
148 -DUSE_BUNDLED_NCURSES=OFF \
149 -DUSE_BUNDLED_ZLIB=OFF \
74fbb710
ER
150 ..
151%{__make}
74f0998f 152%endif
74fbb710
ER
153
154%install
155rm -rf $RPM_BUILD_ROOT
74f0998f 156%if %{with userspace}
74fbb710
ER
157%{__make} -C build install \
158 DESTDIR=$RPM_BUILD_ROOT
74f0998f
ER
159%endif
160
161%if %{with kernel}
162install -d $RPM_BUILD_ROOT
163cp -a installed/* $RPM_BUILD_ROOT
164%endif
74fbb710 165
74fbb710
ER
166%clean
167rm -rf $RPM_BUILD_ROOT
168
0f961bb8
ER
169%post -n dkms-%{name}
170%{_sbindir}/dkms add -m %{name} -v %{version}-%{release} --rpm_safe_upgrade && \
171%{_sbindir}/dkms build -m %{name} -v %{version}-%{release} --rpm_safe_upgrade && \
172%{_sbindir}/dkms install -m %{name} -v %{version}-%{release} --rpm_safe_upgrade || :
173
174%preun -n dkms-%{name}
175%{_sbindir}/dkms remove -m %{name} -v %{version}-%{release} --rpm_safe_upgrade --all || :
176
74f0998f 177%if %{with userspace}
74fbb710
ER
178%files
179%defattr(644,root,root,755)
180%attr(755,root,root) %{_bindir}/csysdig
181%attr(755,root,root) %{_bindir}/sysdig
182%attr(755,root,root) %{_bindir}/sysdig-probe-loader
183%{_mandir}/man8/csysdig.8*
184%{_mandir}/man8/sysdig.8*
185%{_datadir}/%{name}
baa4cab5
ER
186
187%files -n bash-completion-%{name}
188%defattr(644,root,root,755)
74fbb710 189/etc/bash_completion.d/sysdig
baa4cab5
ER
190
191%files -n zsh-completion-%{name}
192%defattr(644,root,root,755)
193%{zshdir}/_sysdig
4d80860c 194%{_datadir}/zsh/vendor-completions/_sysdig
74f0998f 195%endif
0f961bb8
ER
196
197%if %{with dkms}
198%files -n dkms-%{name}
199%defattr(644,root,root,755)
200%{_usrsrc}/%{name}-%{version}-%{release}
201%endif
This page took 0.09065 seconds and 4 git commands to generate.