5ae6b5aed1812a94e5f5397ee4e7ac13b8af4f02
[dpdk.git] / devtools / get-maintainer.sh
1 #!/bin/sh
2
3 #   BSD LICENSE
4 #
5 #   Copyright(c) 2017 Intel Corporation. All rights reserved.
6 #   All rights reserved.
7 #
8 #   Redistribution and use in source and binary forms, with or without
9 #   modification, are permitted provided that the following conditions
10 #   are met:
11 #
12 #     * Redistributions of source code must retain the above copyright
13 #       notice, this list of conditions and the following disclaimer.
14 #     * Redistributions in binary form must reproduce the above copyright
15 #       notice, this list of conditions and the following disclaimer in
16 #       the documentation and/or other materials provided with the
17 #       distribution.
18 #     * Neither the name of Intel Corporation nor the names of its
19 #       contributors may be used to endorse or promote products derived
20 #       from this software without specific prior written permission.
21 #
22 #   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
23 #   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
24 #   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
25 #   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
26 #   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
27 #   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
28 #   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
29 #   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
30 #   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31 #   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
32 #   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33
34
35 # Load config options:
36 # - DPDK_GETMAINTAINER_PATH
37 . $(dirname $(readlink -e $0))/load-devel-config
38
39 options="--no-git-fallback"
40 options="$options --no-rolestats"
41
42 print_usage () {
43         cat <<- END_OF_HELP
44         usage: $(basename $0) <patch>
45         END_OF_HELP
46 }
47
48 # Requires DPDK_GETMAINTAINER_PATH devel config option set,
49 # please check devtools/load-devel-config.
50 # DPDK_GETMAINTAINER_PATH should be full path to the get_maintainer.pl script,
51 # like:
52 #   DPDK_GETMAINTAINER_PATH=~/linux/scripts/get_maintainer.pl
53
54 if [ ! -x "$DPDK_GETMAINTAINER_PATH" ] ; then
55         print_usage >&2
56         echo
57         echo 'Cannot execute DPDK_GETMAINTAINER_PATH' >&2
58         exit 1
59 fi
60
61 FILES="COPYING CREDITS Kbuild"
62 FOLDERS="Documentation arch include fs init ipc kernel scripts"
63
64 # Kernel script checks for some files and folders to run
65 workaround () {
66         for f in $FILES; do
67                 if [ ! -f $f ]; then touch $f; fi
68         done
69
70         for d in $FOLDERS; do
71                 if [ ! -d $d ]; then mkdir $d; fi
72         done
73 }
74
75 fix_workaround () {
76         for f in $FILES; do if [ -f $f ]; then rm -f $f; fi; done
77         for d in $FOLDERS; do if [ -d $d ]; then rmdir $d; fi; done
78 }
79
80 # clean workaround on exit
81 trap fix_workaround EXIT
82
83 workaround
84 $DPDK_GETMAINTAINER_PATH $options $@
85 # fix_workaround called on exit by trap