From 5815cc9843d758276d2d3797907eabfe9b1871a5 Mon Sep 17 00:00:00 2001 From: Nicolas Iooss Date: Mon, 11 Nov 2019 10:49:37 +0100 Subject: [PATCH] libselinux,libsemanage: never create -.o in exception.sh Files starting with "-" causes issues in commands such as "rm *.o". For libselinux and libsemanage, when exception.sh fails to remove "-.o", "make clean" fails with: rm: invalid option -- '.' Try 'rm ./-.o' to remove the file '-.o'. Try 'rm --help' for more information. Fix this by making exception.sh create "temp.o" instead of "-.o". Signed-off-by: Nicolas Iooss --- libselinux/src/exception.sh | 6 +++--- libsemanage/src/exception.sh | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/libselinux/src/exception.sh b/libselinux/src/exception.sh index d6c8c717..1a21e651 100755 --- a/libselinux/src/exception.sh +++ b/libselinux/src/exception.sh @@ -15,10 +15,10 @@ echo " ;; esac } -if ! ${CC:-gcc} -x c -c -I../include - -aux-info temp.aux < ../include/selinux/selinux.h +if ! ${CC:-gcc} -x c -c -I../include -o temp.o - -aux-info temp.aux < ../include/selinux/selinux.h then # clang does not support -aux-info so fall back to gcc - gcc -x c -c -I../include - -aux-info temp.aux < ../include/selinux/selinux.h + gcc -x c -c -I../include -o temp.o - -aux-info temp.aux < ../include/selinux/selinux.h fi for i in `awk '/.*extern int/ { print $6 }' temp.aux`; do except $i ; done -rm -f -- temp.aux -.o +rm -f -- temp.aux temp.o diff --git a/libsemanage/src/exception.sh b/libsemanage/src/exception.sh index 97bc2ae8..fc1d4035 100644 --- a/libsemanage/src/exception.sh +++ b/libsemanage/src/exception.sh @@ -9,10 +9,10 @@ echo " } " } -if ! ${CC:-gcc} -x c -c -I../include - -aux-info temp.aux < ../include/semanage/semanage.h +if ! ${CC:-gcc} -x c -c -I../include -o temp.o - -aux-info temp.aux < ../include/semanage/semanage.h then # clang does not support -aux-info so fall back to gcc - gcc -x c -c -I../include - -aux-info temp.aux < ../include/semanage/semanage.h + gcc -x c -c -I../include -o temp.o - -aux-info temp.aux < ../include/semanage/semanage.h fi for i in `awk '/extern int/ { print $6 }' temp.aux`; do except $i ; done -rm -f -- temp.aux -.o +rm -f -- temp.aux temp.o