1*053f45beSAndroid Build Coastguard WorkerFrom 80ab9f712667317379a836d14c9efe070aca1edc Mon Sep 17 00:00:00 2001
2*053f45beSAndroid Build Coastguard WorkerFrom: Steve Muckle <[email protected]>
3*053f45beSAndroid Build Coastguard WorkerDate: Mon, 9 Oct 2017 14:35:11 -0700
4*053f45beSAndroid Build Coastguard WorkerSubject: [PATCH 06/20] execveat: build exec kselftest for Android
5*053f45beSAndroid Build Coastguard Worker
6*053f45beSAndroid Build Coastguard WorkerThe Makefile for the exec kselftest creates a script, symlink, copy of
7*053f45beSAndroid Build Coastguard Workerthe binary, etc. Rather than have VTS copy all these items to the
8*053f45beSAndroid Build Coastguard Workertarget, create a wrapper script to create these on the target. Note that
9*053f45beSAndroid Build Coastguard Workerthe test also tries to access its Makefile.
10*053f45beSAndroid Build Coastguard Worker
11*053f45beSAndroid Build Coastguard Worker(cherry picked from commit ea307c2e597a51f6cf60a786f2f2839413571e61)
12*053f45beSAndroid Build Coastguard WorkerBug: 67016227
13*053f45beSAndroid Build Coastguard WorkerTest: run vts-kernel -m VtsKernelLinuxKselftestStaging
14*053f45beSAndroid Build Coastguard WorkerSigned-off-by: Steve Muckle <[email protected]>
15*053f45beSAndroid Build Coastguard Worker---
16*053f45beSAndroid Build Coastguard Worker tools/testing/selftests/exec/execveat.sh | 33 ++++++++++++++++++++++++
17*053f45beSAndroid Build Coastguard Worker 1 file changed, 33 insertions(+)
18*053f45beSAndroid Build Coastguard Worker create mode 100755 tools/testing/selftests/exec/execveat.sh
19*053f45beSAndroid Build Coastguard Worker
20*053f45beSAndroid Build Coastguard Workerdiff --git a/tools/testing/selftests/exec/execveat.sh b/tools/testing/selftests/exec/execveat.sh
21*053f45beSAndroid Build Coastguard Workernew file mode 100755
22*053f45beSAndroid Build Coastguard Workerindex 000000000000..dc049eaef690
23*053f45beSAndroid Build Coastguard Worker--- /dev/null
24*053f45beSAndroid Build Coastguard Worker+++ b/tools/testing/selftests/exec/execveat.sh
25*053f45beSAndroid Build Coastguard Worker@@ -0,0 +1,33 @@
26*053f45beSAndroid Build Coastguard Worker+#!/system/bin/sh
27*053f45beSAndroid Build Coastguard Worker+
28*053f45beSAndroid Build Coastguard Worker+#
29*053f45beSAndroid Build Coastguard Worker+# Copyright (C) 2017 The Android Open Source Project
30*053f45beSAndroid Build Coastguard Worker+#
31*053f45beSAndroid Build Coastguard Worker+# Licensed under the Apache License, Version 2.0 (the "License");
32*053f45beSAndroid Build Coastguard Worker+# you may not use this file except in compliance with the License.
33*053f45beSAndroid Build Coastguard Worker+# You may obtain a copy of the License at
34*053f45beSAndroid Build Coastguard Worker+#
35*053f45beSAndroid Build Coastguard Worker+#      http://www.apache.org/licenses/LICENSE-2.0
36*053f45beSAndroid Build Coastguard Worker+#
37*053f45beSAndroid Build Coastguard Worker+# Unless required by applicable law or agreed to in writing, software
38*053f45beSAndroid Build Coastguard Worker+# distributed under the License is distributed on an "AS IS" BASIS,
39*053f45beSAndroid Build Coastguard Worker+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
40*053f45beSAndroid Build Coastguard Worker+# See the License for the specific language governing permissions and
41*053f45beSAndroid Build Coastguard Worker+# limitations under the License.
42*053f45beSAndroid Build Coastguard Worker+#
43*053f45beSAndroid Build Coastguard Worker+
44*053f45beSAndroid Build Coastguard Worker+# These are normally created as part of the kselftest build but for VTS
45*053f45beSAndroid Build Coastguard Worker+# it is probably easier to use a wrapper script that creates them
46*053f45beSAndroid Build Coastguard Worker+# at runtime, on target, as part of the test.
47*053f45beSAndroid Build Coastguard Worker+
48*053f45beSAndroid Build Coastguard Worker+DIR=$(dirname "$0")
49*053f45beSAndroid Build Coastguard Worker+cd $DIR && \
50*053f45beSAndroid Build Coastguard Worker+mkdir -p subdir && \
51*053f45beSAndroid Build Coastguard Worker+echo '#!/system/bin/sh' > script && \
52*053f45beSAndroid Build Coastguard Worker+echo 'exit $*' >> script && \
53*053f45beSAndroid Build Coastguard Worker+chmod +x script && \
54*053f45beSAndroid Build Coastguard Worker+touch Makefile && \
55*053f45beSAndroid Build Coastguard Worker+ln -s -f execveat execveat.symlink && \
56*053f45beSAndroid Build Coastguard Worker+cp execveat execveat.denatured && \
57*053f45beSAndroid Build Coastguard Worker+chmod -x execveat.denatured && \
58*053f45beSAndroid Build Coastguard Worker+./execveat
59*053f45beSAndroid Build Coastguard Worker--
60*053f45beSAndroid Build Coastguard Worker2.42.0.609.gbb76f46606-goog
61*053f45beSAndroid Build Coastguard Worker
62