xref: /aosp_15_r20/external/bcc/tests/lua/test_standalone.sh (revision 387f9dfdfa2baef462e92476d413c7bc2470293e)
1*387f9dfdSAndroid Build Coastguard Worker#!/bin/bash
2*387f9dfdSAndroid Build Coastguard Worker# Copyright (c) GitHub, Inc.
3*387f9dfdSAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License")
4*387f9dfdSAndroid Build Coastguard Worker
5*387f9dfdSAndroid Build Coastguard Workerset -xe
6*387f9dfdSAndroid Build Coastguard Workercd "src/lua"
7*387f9dfdSAndroid Build Coastguard Worker
8*387f9dfdSAndroid Build Coastguard Workerfunction fail {
9*387f9dfdSAndroid Build Coastguard Worker    echo "test failed: $1" >&2
10*387f9dfdSAndroid Build Coastguard Worker    exit 1
11*387f9dfdSAndroid Build Coastguard Worker}
12*387f9dfdSAndroid Build Coastguard Worker
13*387f9dfdSAndroid Build Coastguard Workerif [[ ! -x bcc-lua ]]; then
14*387f9dfdSAndroid Build Coastguard Worker    echo "bcc-lua not built --- skipping"
15*387f9dfdSAndroid Build Coastguard Worker    exit 0
16*387f9dfdSAndroid Build Coastguard Workerfi
17*387f9dfdSAndroid Build Coastguard Worker
18*387f9dfdSAndroid Build Coastguard WorkerLIBRARY=$(ldd bcc-lua | grep luajit)
19*387f9dfdSAndroid Build Coastguard Workerif [ $? -ne 0 -o -z "$LIBRARY" ] ; then
20*387f9dfdSAndroid Build Coastguard Worker    fail "bcc-lua depends on libluajit"
21*387f9dfdSAndroid Build Coastguard Workerfi
22*387f9dfdSAndroid Build Coastguard Worker
23*387f9dfdSAndroid Build Coastguard Workerrm -f probe.lua
24*387f9dfdSAndroid Build Coastguard Workerecho "return function(BPF) print(\"Hello world\") end" > probe.lua
25*387f9dfdSAndroid Build Coastguard Worker
26*387f9dfdSAndroid Build Coastguard WorkerPROBE="../../examples/lua/offcputime.lua"
27*387f9dfdSAndroid Build Coastguard Worker
28*387f9dfdSAndroid Build Coastguard Workerif ! sudo ./bcc-lua "$PROBE" -d 1 >/dev/null 2>/dev/null; then
29*387f9dfdSAndroid Build Coastguard Worker    fail "bcc-lua cannot run complex probes"
30*387f9dfdSAndroid Build Coastguard Workerfi
31*387f9dfdSAndroid Build Coastguard Worker
32*387f9dfdSAndroid Build Coastguard Workerrm -f libbcc.so probe.lua
33