Import the newer scripts from DeforaOS configure

This commit is contained in:
Pierre Pronchery 2020-11-19 03:19:17 +01:00
parent e7c887d6d5
commit 0d5c409a90

View File

@ -1,6 +1,6 @@
#!/bin/sh #!/bin/sh
#$Id$ #$Id$
#Copyright (c) 2016-2019 Pierre Pronchery <khorben@defora.org> #Copyright (c) 2016-2020 Pierre Pronchery <khorben@defora.org>
# #
#Redistribution and use in source and binary forms, with or without #Redistribution and use in source and binary forms, with or without
#modification, are permitted provided that the following conditions are met: #modification, are permitted provided that the following conditions are met:
@ -25,6 +25,7 @@
#variables #variables
CONFIGSH="${0%/clint.sh}/../config.sh"
CFLAGS= CFLAGS=
CPPFLAGS= CPPFLAGS=
PROGNAME="clint.sh" PROGNAME="clint.sh"
@ -35,16 +36,19 @@ DEBUG="_debug"
FIND="find" FIND="find"
GREP="grep" GREP="grep"
LINT="lint -g" LINT="lint -g"
MKDIR="mkdir -p"
SORT="sort -n" SORT="sort -n"
TR="tr" TR="tr"
[ -f "$CONFIGSH" ] && . "$CONFIGSH"
#functions #functions
#clint #clint
_clint() _clint()
{ {
ret=0 res=0
subdirs="data doc src tests tools" subdirs=
$DATE $DATE
while read line; do while read line; do
@ -58,6 +62,10 @@ _clint()
;; ;;
esac esac
done < "$PROJECTCONF" done < "$PROJECTCONF"
if [ ! -n "$subdirs" ]; then
_error "Could not locate directories to analyze"
return $?
fi
for subdir in $subdirs; do for subdir in $subdirs; do
[ -d "../$subdir" ] || continue [ -d "../$subdir" ] || continue
for filename in $($FIND "../$subdir" -type f | $SORT); do for filename in $($FIND "../$subdir" -type f | $SORT); do
@ -79,13 +87,13 @@ _clint()
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
echo "FAIL" echo "FAIL"
echo "$PROGNAME: $filename: FAIL" 1>&2 echo "$PROGNAME: $filename: FAIL" 1>&2
ret=2 res=2
else else
echo "OK" echo "OK"
fi fi
done done
done done
return $ret return $res
} }
_clint_lint() _clint_lint()
@ -117,6 +125,14 @@ _debug()
} }
#error
_error()
{
echo "$PROGNAME: $@" 1>&2
return 2
}
#usage #usage
_usage() _usage()
{ {
@ -125,14 +141,6 @@ _usage()
} }
#warning
_warning()
{
echo "$PROGNAME: $@" 1>&2
return 2
}
#main #main
clean=0 clean=0
while getopts "cO:P:" name; do while getopts "cO:P:" name; do
@ -162,9 +170,15 @@ fi
[ $clean -ne 0 ] && exit 0 [ $clean -ne 0 ] && exit 0
exec 3>&1 exec 3>&1
ret=0
while [ $# -gt 0 ]; do while [ $# -gt 0 ]; do
target="$1" target="$1"
dirname="${target%/*}"
shift shift
_clint > "$target" || exit 2 if [ -n "$dirname" -a "$dirname" != "$target" ]; then
$MKDIR -- "$dirname" || ret=$?
fi
_clint > "$target" || ret=$?
done done
exit $ret