File: mkc_check_prog.in

package info (click to toggle)
mk-configure 0.37.0-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 4,112 kB
  • sloc: ansic: 5,441; makefile: 1,412; sh: 1,086; cpp: 200; perl: 101; yacc: 85; lex: 21
file content (93 lines) | stat: -rwxr-xr-x 1,622 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
#!/bin/sh

############################################################
# Copyright (c) 2009-2010 by Aleksey Cheusov
#
# See LICENSE file in the distribution.
############################################################

set -e

LC_ALL=C
export LC_ALL

: ${CHECK_COMMON_SH_DIR:=@mkc_libexecdir@}

##################################################
# options
usage (){
    cat <<EOF
mkc_check_prog detects presense of program file.

Usage: mkc_check_prog [OPTION] progname

OPTIONS:
   -h                   display this screen
   -i <progid>          program id, a part of _mkc_* cache file
   -d                   delete cache files
Examples:
   mkc_check_prog -h
   mkc_check_prog lua
   mkc_check_prog gawk
   mkc_check_prog -i gxx g++
EOF
}

while test $# -ne 0; do
    case "$1" in
	-h)
	    usage
	    exit 0;;
	-i)
	    pathpart=prog_$2
	    shift;;
	-d)
	    delcache=1;;
	--)
	    shift
	    break;;
	-*)
	    echo "Unknown option $1" 1>&2
	    exit 1;;
	*)
	    break;;
    esac
    shift
done

if test $# -ne 1; then
    usage
    exit 1
fi

##################################################
# initializing

pathpart=${pathpart-prog_`echo $1 | tr /. __`}

. ${CHECK_COMMON_SH_DIR}/mkc_check_common.sh

##################################################
# test

check_itself (){
    mkc_which -x "$1" 2>"${tmperr}"
}

check_and_cache "checking for program $1" "$cache" "$1"

##################################################
# clean-ups

cleanup

##################################################
# finishing

if test -n "$ret"; then
    printme "$ret\n" 1>&2
else
    printme 'NOT FOUND\n' 1>&2
fi

echo $ret