aboutsummaryrefslogtreecommitdiff
path: root/scripts/gen-deps
diff options
context:
space:
mode:
authorKimplul <kimi.h.kuparinen@gmail.com>2022-04-10 20:37:51 +0300
committerKimplul <kimi.h.kuparinen@gmail.com>2022-04-10 20:37:51 +0300
commit4c6be9cb63ff66ce49a6f733c1e00d1889f2c95f (patch)
tree898854069101e6616620e2bd732a48e5eca08fd2 /scripts/gen-deps
parent8aa17b12f29536ea9c8b6ca22c7f153e8d90fa3b (diff)
downloadkmi-4c6be9cb63ff66ce49a6f733c1e00d1889f2c95f.tar.gz
kmi-4c6be9cb63ff66ce49a6f733c1e00d1889f2c95f.zip
add basic ubsan and fix issues reported by it
Diffstat (limited to 'scripts/gen-deps')
-rwxr-xr-xscripts/gen-deps25
1 files changed, 19 insertions, 6 deletions
diff --git a/scripts/gen-deps b/scripts/gen-deps
index 7c847fb..dc1bd94 100755
--- a/scripts/gen-deps
+++ b/scripts/gen-deps
@@ -12,19 +12,32 @@ gencommon () {
genlink () {
gencommon ".ld"
- echo " \$(GENLINK) $< | \$(STRIPLINK) | \$(KERN_INFO) > \$@"\
- >> deps.mk;
+ if [ ${kern} ]; then
+ echo " \$(GENLINK) $< | \$(STRIPLINK) > \$@" >> deps.mk
+ else
+ echo " \$(GENLINK) $< | \$(STRIPLINK) | \$(KERN_INFO) > \$@" >> deps.mk;
+ fi
}
genrule () {
gencommon "${1}"
- echo " \$(COMPILE) -c \$< -o \$@" >> deps.mk
+ echo " \$(COMPILE) ${flags} -c \$< -o \$@" >> deps.mk
echo "${lint}: ${s}" >> deps.mk
- echo " \$(LINT) -c \$< -o /dev/null" >> deps.mk
+ echo " \$(LINT) ${flags} -c \$< -o /dev/null" >> deps.mk
}
case "${1}" in
+ --kernel)
+ kern=1
+ flags='$(KERN_FLAGS)'
+ ;;
+ --init)
+ flags='$(INIT_FLAGS)'
+ ;;
+esac
+
+case "${2}" in
--compile)
suffix=.o
func=genrule
@@ -35,9 +48,9 @@ case "${1}" in
esac
# create all subdirectories
-mkdir -p $(echo "${2}" | xargs dirname | uniq | sed 's|^|build/|g')
+mkdir -p $(echo "${3}" | xargs dirname | uniq | sed 's|^|build/|g')
-for s in ${2}
+for s in ${3}
do
${func} ${suffix}
echo ${obj}