1*387f9dfdSAndroid Build Coastguard Worker%define debug_package %{nil} 2*387f9dfdSAndroid Build Coastguard Worker%define _unpackaged_files_terminate_build 0 3*387f9dfdSAndroid Build Coastguard Worker%define llvmver 7.0.1 4*387f9dfdSAndroid Build Coastguard Worker 5*387f9dfdSAndroid Build Coastguard WorkerName: bcc 6*387f9dfdSAndroid Build Coastguard WorkerVersion: @REVISION@ 7*387f9dfdSAndroid Build Coastguard WorkerRelease: @GIT_REV_COUNT@ 8*387f9dfdSAndroid Build Coastguard WorkerSummary: BPF Compiler Collection (BCC) 9*387f9dfdSAndroid Build Coastguard Worker 10*387f9dfdSAndroid Build Coastguard WorkerGroup: Development/Languages 11*387f9dfdSAndroid Build Coastguard WorkerLicense: ASL 2.0 12*387f9dfdSAndroid Build Coastguard WorkerURL: https://github.com/iovisor/bcc 13*387f9dfdSAndroid Build Coastguard WorkerSource0: https://github.com/iovisor/bcc/archive/v%{version}.tar.gz 14*387f9dfdSAndroid Build Coastguard WorkerSource1: http://llvm.org/releases/%{llvmver}/llvm-%{llvmver}.src.tar.xz 15*387f9dfdSAndroid Build Coastguard WorkerSource2: http://llvm.org/releases/%{llvmver}/cfe-%{llvmver}.src.tar.xz 16*387f9dfdSAndroid Build Coastguard Worker 17*387f9dfdSAndroid Build Coastguard WorkerBuildArch: x86_64 18*387f9dfdSAndroid Build Coastguard WorkerBuildRequires: bison, cmake >= 2.8.7, flex, gcc, gcc-c++, libxml2-devel, python2-devel, elfutils-libelf-devel-static 19*387f9dfdSAndroid Build Coastguard Worker 20*387f9dfdSAndroid Build Coastguard Worker%description 21*387f9dfdSAndroid Build Coastguard WorkerPython bindings for BPF Compiler Collection (BCC). Control a BPF program from 22*387f9dfdSAndroid Build Coastguard Workeruserspace. 23*387f9dfdSAndroid Build Coastguard Worker 24*387f9dfdSAndroid Build Coastguard Worker 25*387f9dfdSAndroid Build Coastguard Worker%prep 26*387f9dfdSAndroid Build Coastguard Worker%setup -T -b 1 -n llvm-%{llvmver}.src 27*387f9dfdSAndroid Build Coastguard Workermkdir tools/clang 28*387f9dfdSAndroid Build Coastguard Workertar -xvvJf %{_sourcedir}/cfe-%{llvmver}.src.tar.xz -C tools/clang --strip 1 29*387f9dfdSAndroid Build Coastguard Worker%setup -D -n bcc 30*387f9dfdSAndroid Build Coastguard Worker 31*387f9dfdSAndroid Build Coastguard Worker%build 32*387f9dfdSAndroid Build Coastguard Worker 33*387f9dfdSAndroid Build Coastguard Workerexport LD_LIBRARY_PATH="%{_builddir}/usr/lib64" 34*387f9dfdSAndroid Build Coastguard Workerexport PATH="%{_builddir}/usr/bin":$PATH 35*387f9dfdSAndroid Build Coastguard Worker 36*387f9dfdSAndroid Build Coastguard Worker# build llvm 37*387f9dfdSAndroid Build Coastguard Workerpushd %{_builddir}/llvm-%{llvmver}.src 38*387f9dfdSAndroid Build Coastguard Workermkdir build 39*387f9dfdSAndroid Build Coastguard Workercd build 40*387f9dfdSAndroid Build Coastguard Workercmake .. -DCMAKE_BUILD_TYPE=Release -DLLVM_TARGETS_TO_BUILD="X86;BPF" -DCMAKE_INSTALL_PREFIX=/usr 41*387f9dfdSAndroid Build Coastguard Workermake %{?_smp_mflags} 42*387f9dfdSAndroid Build Coastguard Workermake install DESTDIR="%{_builddir}" 43*387f9dfdSAndroid Build Coastguard Workerpopd 44*387f9dfdSAndroid Build Coastguard Worker 45*387f9dfdSAndroid Build Coastguard Workermkdir build 46*387f9dfdSAndroid Build Coastguard Workerpushd build 47*387f9dfdSAndroid Build Coastguard Workercmake .. -DREVISION_LAST=%{version} -DREVISION=%{version} -DCMAKE_INSTALL_PREFIX=/usr 48*387f9dfdSAndroid Build Coastguard Workermake %{?_smp_mflags} 49*387f9dfdSAndroid Build Coastguard Workerpopd 50*387f9dfdSAndroid Build Coastguard Worker 51*387f9dfdSAndroid Build Coastguard Worker%install 52*387f9dfdSAndroid Build Coastguard Workerpushd build 53*387f9dfdSAndroid Build Coastguard Workermake install/strip DESTDIR=%{buildroot} 54*387f9dfdSAndroid Build Coastguard Worker 55*387f9dfdSAndroid Build Coastguard Worker%changelog 56*387f9dfdSAndroid Build Coastguard Worker* Fri Jul 03 2015 Brenden Blanco <bblanco@plumgrid.com> - 0.1.1-2 57*387f9dfdSAndroid Build Coastguard Worker- Initial RPM Release 58*387f9dfdSAndroid Build Coastguard Worker 59*387f9dfdSAndroid Build Coastguard Worker%package -n libbcc 60*387f9dfdSAndroid Build Coastguard WorkerSummary: Shared Library for BPF Compiler Collection (BCC) 61*387f9dfdSAndroid Build Coastguard WorkerRequires: elfutils-libelf 62*387f9dfdSAndroid Build Coastguard Worker%description -n libbcc 63*387f9dfdSAndroid Build Coastguard WorkerShared Library for BPF Compiler Collection (BCC) 64*387f9dfdSAndroid Build Coastguard Worker 65*387f9dfdSAndroid Build Coastguard Worker%package -n libbcc-examples 66*387f9dfdSAndroid Build Coastguard WorkerSummary: Examples for BPF Compiler Collection (BCC) 67*387f9dfdSAndroid Build Coastguard WorkerRequires: libbcc 68*387f9dfdSAndroid Build Coastguard Worker%description -n libbcc-examples 69*387f9dfdSAndroid Build Coastguard WorkerExamples for BPF Compiler Collection (BCC) 70*387f9dfdSAndroid Build Coastguard Worker 71*387f9dfdSAndroid Build Coastguard Worker%package -n python-bcc 72*387f9dfdSAndroid Build Coastguard WorkerSummary: Python bindings for BPF Compiler Collection (BCC) 73*387f9dfdSAndroid Build Coastguard WorkerRequires: libbcc 74*387f9dfdSAndroid Build Coastguard Worker%description -n python-bcc 75*387f9dfdSAndroid Build Coastguard WorkerPython bindings for BPF Compiler Collection (BCC) 76*387f9dfdSAndroid Build Coastguard Worker 77*387f9dfdSAndroid Build Coastguard Worker%package -n bcc-tools 78*387f9dfdSAndroid Build Coastguard WorkerSummary: Command line tools for BPF Compiler Collection (BCC) 79*387f9dfdSAndroid Build Coastguard WorkerRequires: python-bcc 80*387f9dfdSAndroid Build Coastguard Worker%description -n bcc-tools 81*387f9dfdSAndroid Build Coastguard WorkerCommand line tools for BPF Compiler Collection (BCC) 82*387f9dfdSAndroid Build Coastguard Worker 83*387f9dfdSAndroid Build Coastguard Worker%files -n python-bcc 84*387f9dfdSAndroid Build Coastguard Worker%{python_sitelib}/bcc* 85*387f9dfdSAndroid Build Coastguard Worker 86*387f9dfdSAndroid Build Coastguard Worker%files -n libbcc 87*387f9dfdSAndroid Build Coastguard Worker/usr/lib64/* 88*387f9dfdSAndroid Build Coastguard Worker/usr/include/bcc/* 89*387f9dfdSAndroid Build Coastguard Worker 90*387f9dfdSAndroid Build Coastguard Worker%files -n libbcc-examples 91*387f9dfdSAndroid Build Coastguard Worker/usr/share/bcc/examples/* 92*387f9dfdSAndroid Build Coastguard Worker%exclude /usr/share/bcc/examples/*.pyc 93*387f9dfdSAndroid Build Coastguard Worker%exclude /usr/share/bcc/examples/*.pyo 94*387f9dfdSAndroid Build Coastguard Worker%exclude /usr/share/bcc/examples/*/*.pyc 95*387f9dfdSAndroid Build Coastguard Worker%exclude /usr/share/bcc/examples/*/*.pyo 96*387f9dfdSAndroid Build Coastguard Worker%exclude /usr/share/bcc/examples/*/*/*.pyc 97*387f9dfdSAndroid Build Coastguard Worker%exclude /usr/share/bcc/examples/*/*/*.pyo 98*387f9dfdSAndroid Build Coastguard Worker 99*387f9dfdSAndroid Build Coastguard Worker%files -n bcc-tools 100*387f9dfdSAndroid Build Coastguard Worker/usr/share/bcc/introspection/* 101*387f9dfdSAndroid Build Coastguard Worker/usr/share/bcc/tools/* 102*387f9dfdSAndroid Build Coastguard Worker/usr/share/bcc/man/* 103