• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#
2# Copyright (C) 2016,2020 Canonical
3#
4# This program is free software; you can redistribute it and/or
5# modify it under the terms of the GNU General Public License
6# as published by the Free Software Foundation; either version 2
7# of the License, or (at your option) any later version.
8#
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12# GNU General Public License for more details.
13#
14# You should have received a copy of the GNU General Public License
15# along with this program; if not, write to the Free Software
16# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17#
18name: bcc
19summary: BPF Compiler Collection (BCC)
20description: A toolkit for creating efficient kernel tracing and manipulation programs
21confinement: strict
22grade: stable
23plugs:
24    mount-observe: null
25    system-observe: null
26    system-trace: null
27assumes: [snapd2.37]
28base: core18
29adopt-info: bcc
30
31architectures:
32    - build-on: s390x
33    - build-on: ppc64el
34    - build-on: arm64
35    - build-on: armhf
36    - build-on: amd64
37    - build-on: i386
38
39parts:
40    bcc:
41        plugin: cmake
42        override-pull: |
43            snapcraftctl pull
44
45            find . -type f -exec sed -i 's|^#\!/usr/bin/python|#\!/usr/bin/env python3|' {} \;
46
47            version=$(git tag | sort -V | tail -1 | cut -c2-)
48            commits=$(git log --oneline | wc -l)
49            sha=$(git log -1 --oneline | cut -d' ' -f1)
50            date=$(date +'%Y%m%d')
51            snapcraftctl set-version "$version-$date-$commits-$sha"
52        configflags:
53            - '-DCMAKE_INSTALL_PREFIX=/usr'
54            - '-DPYTHON_CMD=$SNAPCRAFT_STAGE/usr/bin/python3'
55            - '-DCMAKE_VERBOSE_MAKEFILE=ON'
56        source: .
57        build-packages:
58            - bison
59            - build-essential
60            - flex
61            - git
62            - iperf
63            - libclang-4.0-dev
64            - libedit-dev
65            - libelf-dev
66            - libllvm4.0
67            - libfl-dev
68            - llvm-4.0-dev
69            - zlib1g-dev
70        prime:
71            - -usr/share/bcc/tools/doc
72            - usr/lib/*/lib*.so*
73            - usr/lib/python3
74            - usr/lib/python3.6*
75            - usr/share/bcc/tools
76        after:
77          - stage
78
79    stage:
80        plugin: nil
81        stage-packages:
82            - libbz2-1.0
83            - liblzma5
84            - libncursesw5
85            - libtinfo5
86            - libzzip-0-13
87            - python3
88            - python3-distutils
89            - python3-distutils-extra
90            - python3-pip
91            - python3-setuptools
92        prime:
93            - -usr/lib/*/perl
94            - -usr/lib/*/perl5
95            - usr/bin
96            - usr/lib
97
98    wrapper:
99        plugin: dump
100        after: [bcc]
101        source: snap/local
102
103apps:
104    argdist:
105        command: bcc-wrapper argdist
106    bashreadline:
107        command: bcc-wrapper bashreadline
108    biolatency:
109        command: bcc-wrapper biolatency
110    biolatpcts:
111        command: bcc-wrapper biolatpcts
112    biosnoop:
113        command: bcc-wrapper biosnoop
114    biotop:
115        command: bcc-wrapper biotop
116    bitesize:
117        command: bcc-wrapper bitesize
118    bpflist:
119        command: bcc-wrapper bpflist
120    btrfsdist:
121        command: bcc-wrapper btrfsdist
122    btrfsslower:
123        command: bcc-wrapper btrfsslower
124    cachestat:
125        command: bcc-wrapper cachestat
126    cachetop:
127        command: bcc-wrapper cachetop
128    capable:
129        command: bcc-wrapper capable
130    cobjnew:
131        command: bcc-wrapper cobjnew
132    compactsnoop:
133        command: bcc-wrapper compactsnoop
134    cpudist:
135        command: bcc-wrapper cpudist
136    cpuunclaimed:
137        command: bcc-wrapper cpuunclaimed
138    criticalstat:
139        command: bcc-wrapper criticalstat
140    dbslower:
141        command: bcc-wrapper dbslower
142    dbstat:
143        command: bcc-wrapper dbstat
144    dcsnoop:
145        command: bcc-wrapper dcsnoop
146    dcstat:
147        command: bcc-wrapper dcstat
148    deadlock:
149        command: bcc-wrapper deadlock
150    dirtop:
151        command: bcc-wrapper dirtop
152    drsnoop:
153        command: bcc-wrapper drsnoop
154    execsnoop:
155        command: bcc-wrapper execsnoop
156    exitsnoop:
157        command: bcc-wrapper exitsnoop
158    ext4dist:
159        command: bcc-wrapper ext4dist
160    ext4slower:
161        command: bcc-wrapper ext4slower
162    filelife:
163        command: bcc-wrapper filelife
164    fileslower:
165        command: bcc-wrapper fileslower
166    filetop:
167        command: bcc-wrapper filetop
168    funccount:
169        command: bcc-wrapper funccount
170    funcinterval:
171        command: bcc-wrapper funcinterval
172    funclatency:
173        command: bcc-wrapper funclatency
174    funcslower:
175        command: bcc-wrapper funcslower
176    gethostlatency:
177        command: bcc-wrapper gethostlatency
178    hardirqs:
179        command: bcc-wrapper hardirqs
180    inject:
181        command: bcc-wrapper inject
182    javacalls:
183        command: bcc-wrapper javacalls
184    javaflow:
185        command: bcc-wrapper javaflow
186    javagc:
187        command: bcc-wrapper javagc
188    javaobjnew:
189        command: bcc-wrapper javaobjnew
190    javastat:
191        command: bcc-wrapper javastat
192    javathreads:
193        command: bcc-wrapper javathreads
194    killsnoop:
195        command: bcc-wrapper killsnoop
196    klockstat:
197        command: bcc-wrapper klockstat
198    llcstat:
199        command: bcc-wrapper llcstat
200    mdflush:
201        command: bcc-wrapper mdflush
202    memleak:
203        command: bcc-wrapper memleak
204    mountsnoop:
205        command: bcc-wrapper mountsnoop
206    mysqld-qslower:
207        command: bcc-wrapper mysqld_qslower
208    netqtop:
209        command: bcc-wrapper netqtop
210    nfsdist:
211        command: bcc-wrapper nfsdist
212    nfsslower:
213        command: bcc-wrapper nfsslower
214    nodegc:
215        command: bcc-wrapper nodegc
216    nodestat:
217        command: bcc-wrapper nodestat
218    offcputime:
219        command: bcc-wrapper offcputime
220    offwaketime:
221        command: bcc-wrapper offwaketime
222    oomkill:
223        command: bcc-wrapper oomkill
224    opensnoop:
225        command: bcc-wrapper opensnoop
226    perlcalls:
227        command: bcc-wrapper perlcalls
228    perlflow:
229        command: bcc-wrapper perlflow
230    perlstat:
231        command: bcc-wrapper perlstat
232    pidpersec:
233        command: bcc-wrapper pidpersec
234    profile:
235        command: bcc-wrapper profile
236    phpcalls:
237        command: bcc-wrapper phpcalls
238    phpflow:
239        command: bcc-wrapper phpflow
240    phpstat:
241        command: bcc-wrapper phpstat
242    pythoncalls:
243        command: bcc-wrapper pythoncalls
244    pythonflow:
245        command: bcc-wrapper pythonflow
246    pythongc:
247        command: bcc-wrapper pythongc
248    pythonstat:
249        command: bcc-wrapper pythonstat
250    readahead:
251        command: bcc-wrapper readahead
252    reset-trace:
253        command: bcc-wrapper reset-trace
254    rubycalls:
255        command: bcc-wrapper rubycalls
256    rubyflow:
257        command: bcc-wrapper rubyflow
258    rubygc:
259        command: bcc-wrapper rubygc
260    rubyobjnew:
261        command: bcc-wrapper rubyobjnew
262    rubystat:
263        command: bcc-wrapper rubystat
264    runqlat:
265        command: bcc-wrapper runqlat
266    runqlen:
267        command: bcc-wrapper runqlen
268    runqslower:
269        command: bcc-wrapper runqslower
270    shmsnoop:
271        command: bcc-wrapper shmsnoop
272    slabratetop:
273        command: bcc-wrapper slabratetop
274    sofdsnoop:
275        command: bcc-wrapper sofdsnoop
276    softirqs:
277        command: bcc-wrapper softirqs
278    solisten:
279        command: bcc-wrapper solisten
280    sslsniff:
281        command: bcc-wrapper sslsniff
282    stackcount:
283        command: bcc-wrapper stackcount
284    statsnoop:
285        command: bcc-wrapper statsnoop
286    swapin:
287        command: bcc-wrapper swapin
288    syncsnoop:
289        command: bcc-wrapper syncsnoop
290    syscount:
291        command: bcc-wrapper syscount
292    tclcalls:
293        command: bcc-wrapper tclcalls
294    tclflow:
295        command: bcc-wrapper tclflow
296    tclobjnew:
297        command: bcc-wrapper tclobjnew
298    tclstat:
299        command: bcc-wrapper tclstat
300    tcpaccept:
301        command: bcc-wrapper tcpaccept
302    tcpconnect:
303        command: bcc-wrapper tcpconnect
304    tcpconnlat:
305        command: bcc-wrapper tcpconnlat
306    tcpdrop:
307        command: bcc-wrapper tcpdrop
308    tcplife:
309        command: bcc-wrapper tcplife
310    tcpretrans:
311        command: bcc-wrapper tcpretrans
312    tcprtt:
313        command: bcc-wrapper tcprtt
314    tcpstates:
315        command: bcc-wrapper tcpstates
316    tcpsubnet:
317        command: bcc-wrapper tcpsubnet
318    tcpsynbl:
319        command: bcc-wrapper tcpsynbl
320    tcptop:
321        command: bcc-wrapper tcptop
322    tcptracer:
323        command: bcc-wrapper tcptracer
324    threadsnoop:
325        command: bcc-wrapper threadsnoop
326    tplist:
327        command: bcc-wrapper tplist
328    trace:
329        command: bcc-wrapper trace
330    ttysnoop:
331        command: bcc-wrapper ttysnoop
332    ucalls:
333        command: bcc-wrapper lib/ucalls
334    uflow:
335        command: bcc-wrapper lib/uflow
336    ugc:
337        command: bcc-wrapper lib/ugc
338    uobjnew:
339        command: bcc-wrapper lib/uobjnew
340    ustat:
341        command: bcc-wrapper lib/ustat
342    uthreads:
343        command: bcc-wrapper lib/uthreads
344    vfscount:
345        command: bcc-wrapper vfscount
346    vfsstat:
347        command: bcc-wrapper vfsstat
348    wakeuptime:
349        command: bcc-wrapper wakeuptime
350    xfsdist:
351        command: bcc-wrapper xfsdist
352    xfsslower:
353        command: bcc-wrapper xfsslower
354    zfsdist:
355        command: bcc-wrapper zfsdist
356    zfsslower:
357        command: bcc-wrapper zfsslower
358
359# vim: set ai et sts=4 tabstop=4 sw=4:
360