]> git.pld-linux.org Git - packages/sysdig.git/blame - sysdig.spec
- drop alt_kernel<>build_kernels conflict error, build_kernels will always take prece...
[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 0%{?_pld_builder:1} && %{with kernel} && %{with userspace}
8%{error:kernel and userspace cannot be built at the same time on PLD builders}
9exit 1
10%endif
11
12%if %{without userspace}
13%undefine with_dkms
14# nothing to be placed to debuginfo package
15%define _enable_debug_packages 0
16%endif
17
305ce9ba 18%define rel 2
74f0998f
ER
19%define pname sysdig
20Summary: sysdig, a system-level exploration and troubleshooting tool
21Name: %{pname}%{?_pld_builder:%{?with_kernel:-kernel}}%{_alt_kernel}
74fbb710 22Version: 0.1.101
74f0998f 23Release: %{rel}%{?_pld_builder:%{?with_kernel:@%{_kernel_ver_str}}}
74fbb710
ER
24License: GPL v2
25Group: Applications/System
74f0998f 26Source0: https://github.com/draios/sysdig/archive/%{version}/%{pname}-%{version}.tar.gz
74fbb710 27# Source0-md5: 5fe96a3a0fd98b2157a40cb29af41afc
87555a2e 28Patch0: buildflags.patch
74fbb710 29URL: http://www.sysdig.org/
fe7ef0e8
ER
30BuildRequires: rpmbuild(macros) >= 1.701
31%if %{with userspace}
c91ce2ea 32BuildRequires: cmake >= 2.8.2
c91ce2ea 33BuildRequires: jsoncpp-devel
8dde2f70
ER
34BuildRequires: libstdc++-devel >= 6:4.4
35BuildRequires: luajit-devel >= 2.0.3
36BuildRequires: ncurses-devel >= 5.9
37BuildRequires: zlib-devel >= 1.2.8
9029892a
JR
38ExclusiveArch: %{ix86} %{x8664}
39%else
40ExclusiveArch: %{ix86} %{x8664} x32
fe7ef0e8 41%endif
74f0998f 42%{?with_kernel:%{expand:%buildrequires_kernel kernel%%{_alt_kernel}-module-build >= 3:2.6.20.2}}
74fbb710
ER
43BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
44
70614e31
ER
45# constify %{name}
46%{expand:%%global name %{pname}}
47
baa4cab5
ER
48%define zshdir %{_datadir}/zsh/site-functions
49
74fbb710
ER
50%description
51Sysdig instruments your physical and virtual machines at the OS level
52by installing into the Linux kernel and capturing system calls and
53other OS events. Then, using sysdig's command line interface, you can
54filter and decode these events in order to extract useful information.
55Sysdig can be used to inspect systems live in real-time, or to
56generate trace files that can be analyzed at a later stage.
57
0f961bb8
ER
58%package -n dkms-%{name}
59Summary: DKMS-ready driver for sysdig
60License: GPL v2+
61Group: Base/Kernel
62Requires(pre,post): dkms >= 2.1.0.0
63%if "%{_rpmversion}" >= "5"
64BuildArch: noarch
65%endif
66
67%description -n dkms-%{name}
68This package contains a DKMS-ready driver for sysdig.
69
baa4cab5
ER
70%package -n bash-completion-%{name}
71Summary: bash-completion for sysdig
72Summary(pl.UTF-8): Bashowe dopełnianie składni dla sysdig
73Group: Applications/Shells
73a3ce5f 74Requires: %{name} = %{version}-%{rel}
baa4cab5
ER
75Requires: bash-completion
76%if "%{_rpmversion}" >= "5"
77BuildArch: noarch
78%endif
79
80%description -n bash-completion-%{name}
81bash-completion for sysdig.
82
83%package -n zsh-completion-%{name}
84Summary: zsh-completion for sysdig
85Group: Applications/Shells
73a3ce5f 86Requires: %{name} = %{version}-%{rel}
baa4cab5
ER
87%if "%{_rpmversion}" >= "5"
88BuildArch: noarch
89%endif
90
91%description -n zsh-completion-%{name}
92zsh-completion for sysdig.
93
74f0998f
ER
94%define kernel_pkg()\
95%package -n kernel%{_alt_kernel}-misc-%{pname}\
96Summary: Linux driver for sysdig\
97Release: %{rel}@%{_kernel_ver_str}\
98Group: Base/Kernel\
99Requires(post,postun): /sbin/depmod\
100%requires_releq_kernel\
101Requires(postun): %releq_kernel\
102\
103%description -n kernel%{_alt_kernel}-misc-%{pname}\
104This is driver for sysdig-probe for Linux.\
105\
106This package contains Linux module.\
107\
108%if %{with kernel}\
109%files -n kernel%{_alt_kernel}-misc-%{pname}\
110%defattr(644,root,root,755)\
111/lib/modules/%{_kernel_ver}/misc/*.ko*\
112%endif\
113\
114%post -n kernel%{_alt_kernel}-misc-%{pname}\
115%depmod %{_kernel_ver}\
116\
117%postun -n kernel%{_alt_kernel}-misc-%{pname}\
118%depmod %{_kernel_ver}\
119%{nil}
120
121%define build_kernel_pkg()\
122%build_kernel_modules -C driver -m sysdig-probe\
123%install_kernel_modules -D installed -m driver/sysdig-probe -d misc\
124%{nil}
125
126%{?with_kernel:%{expand:%create_kernel_packages}}
127
74fbb710 128%prep
70614e31 129%setup -q -n %{pname}-%{version}
87555a2e 130%patch0 -p1
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} \
73a3ce5f 144 -DSYSDIG_VERSION=%{version}-%{rel} \
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
305ce9ba
ER
159
160# already installed as %{zshdir}/_sysdig
161%{__rm} $RPM_BUILD_ROOT%{_datadir}/zsh/vendor-completions/_sysdig
74f0998f
ER
162%endif
163
164%if %{with kernel}
165install -d $RPM_BUILD_ROOT
166cp -a installed/* $RPM_BUILD_ROOT
167%endif
74fbb710 168
74fbb710
ER
169%clean
170rm -rf $RPM_BUILD_ROOT
171
0f961bb8 172%post -n dkms-%{name}
73a3ce5f
ER
173%{_sbindir}/dkms add -m %{name} -v %{version}-%{rel} --rpm_safe_upgrade && \
174%{_sbindir}/dkms build -m %{name} -v %{version}-%{rel} --rpm_safe_upgrade && \
175%{_sbindir}/dkms install -m %{name} -v %{version}-%{rel} --rpm_safe_upgrade || :
0f961bb8
ER
176
177%preun -n dkms-%{name}
73a3ce5f 178%{_sbindir}/dkms remove -m %{name} -v %{version}-%{rel} --rpm_safe_upgrade --all || :
0f961bb8 179
74f0998f 180%if %{with userspace}
74fbb710
ER
181%files
182%defattr(644,root,root,755)
514412de 183%doc README.md
74fbb710
ER
184%attr(755,root,root) %{_bindir}/csysdig
185%attr(755,root,root) %{_bindir}/sysdig
186%attr(755,root,root) %{_bindir}/sysdig-probe-loader
187%{_mandir}/man8/csysdig.8*
188%{_mandir}/man8/sysdig.8*
189%{_datadir}/%{name}
baa4cab5
ER
190
191%files -n bash-completion-%{name}
192%defattr(644,root,root,755)
74fbb710 193/etc/bash_completion.d/sysdig
baa4cab5
ER
194
195%files -n zsh-completion-%{name}
196%defattr(644,root,root,755)
197%{zshdir}/_sysdig
74f0998f 198%endif
0f961bb8
ER
199
200%if %{with dkms}
201%files -n dkms-%{name}
202%defattr(644,root,root,755)
73a3ce5f 203%{_usrsrc}/%{name}-%{version}-%{rel}
0f961bb8 204%endif
This page took 0.112929 seconds and 4 git commands to generate.