If you do make clean without having a Makefile.config file, the command will try to "rm -r" /bin and /lib on your system. This will totally nuke your system if you have sufficient privileges. This bug is obviously the highest priority you can get.
Since Makefile fails to import Makefile.config, $(DISTRIBUTE_DIR)/bin $(DISTRIBUTE_DIR)/lib will resolve to /bin and /lib. This also works if you do have a Makefile.config file but DISTRIBUTE_DIR is empty:
DISTRIBUTE_DIR :=
Simple repro:
$ git clone https://github.com/BVLC/caffe.git
$ cd caffe
$ make clean
Makefile:4: Makefile.config: No such file or directory
make: *** No rule to make target Makefile.config'. make: Failed to remake makefileMakefile.config'.
rm: cannot remove '/bin/setfacl': Permission denied
rm: cannot remove '/bin/sed': Permission denied
rm: cannot remove '/bin/bzegrep': Permission denied
rm: cannot remove '/bin/true': Permission denied
rm: cannot remove '/bin/mt-gnu': Permission denied
rm: cannot remove '/bin/bzfgrep': Permission denied
rm: cannot remove '/bin/dbus-cleanup-sockets': Permission denied
rm: cannot remove '/bin/uncompress': Permission denied
rm: cannot remove '/bin/open': Permission denied
rm: cannot remove '/bin/kbd_mode': Permission denied
rm: cannot remove '/bin/rbash': Permission denied
rm: cannot remove '/bin/setfont': Permission denied
rm: cannot remove '/bin/gzip': Permission denied
rm: cannot remove '/bin/findmnt': Permission denied
rm: cannot remove '/bin/zegrep': Permission denied
rm: cannot remove '/bin/lesskey': Permission denied
rm: cannot remove '/bin/busybox': Permission denied
rm: cannot remove '/bin/umount': Permission denied
rm: cannot remove '/bin/lessfile': Permission denied
rm: cannot remove '/bin/keyctl': Permission denied
rm: cannot remove '/bin/bzcat': Permission denied
[...]
rm: cannot remove '/lib/libip6tc.so.0.1.0': Permission denied
rm: cannot remove '/lib/libiptc.so.0.0.0': Permission denied
rm: cannot remove '/lib/ufw/ufw-init': Permission denied
rm: cannot remove '/lib/ufw/ufw-init-functions': Permission denied
rm: cannot remove '/lib/ufw/user6.rules': Permission denied
rm: cannot remove '/lib/ufw/user.rules': Permission denied
rm: cannot remove '/lib/crda/regulatory.bin': Permission denied
[...]
If you do make clean without having a Makefile.config file, the command will try to "rm -r" /bin and /lib on your system. This will totally nuke your system if you have sufficient privileges. This bug is obviously the highest priority you can get.$(DISTRIBUTE_DIR)/bin $ (DISTRIBUTE_DIR)/lib will resolve to /bin and /lib. This also works if you do have a Makefile.config file but DISTRIBUTE_DIR is empty:
Since Makefile fails to import Makefile.config,
DISTRIBUTE_DIR :=
Simple repro:
$ git clone https://github.com/BVLC/caffe.git
$ cd caffe
$ make clean
Makefile:4: Makefile.config: No such file or directory
make: *** No rule to make target
Makefile.config'. make: Failed to remake makefileMakefile.config'.rm: cannot remove '/bin/setfacl': Permission denied
rm: cannot remove '/bin/sed': Permission denied
rm: cannot remove '/bin/bzegrep': Permission denied
rm: cannot remove '/bin/true': Permission denied
rm: cannot remove '/bin/mt-gnu': Permission denied
rm: cannot remove '/bin/bzfgrep': Permission denied
rm: cannot remove '/bin/dbus-cleanup-sockets': Permission denied
rm: cannot remove '/bin/uncompress': Permission denied
rm: cannot remove '/bin/open': Permission denied
rm: cannot remove '/bin/kbd_mode': Permission denied
rm: cannot remove '/bin/rbash': Permission denied
rm: cannot remove '/bin/setfont': Permission denied
rm: cannot remove '/bin/gzip': Permission denied
rm: cannot remove '/bin/findmnt': Permission denied
rm: cannot remove '/bin/zegrep': Permission denied
rm: cannot remove '/bin/lesskey': Permission denied
rm: cannot remove '/bin/busybox': Permission denied
rm: cannot remove '/bin/umount': Permission denied
rm: cannot remove '/bin/lessfile': Permission denied
rm: cannot remove '/bin/keyctl': Permission denied
rm: cannot remove '/bin/bzcat': Permission denied
[...]
rm: cannot remove '/lib/libip6tc.so.0.1.0': Permission denied
rm: cannot remove '/lib/libiptc.so.0.0.0': Permission denied
rm: cannot remove '/lib/ufw/ufw-init': Permission denied
rm: cannot remove '/lib/ufw/ufw-init-functions': Permission denied
rm: cannot remove '/lib/ufw/user6.rules': Permission denied
rm: cannot remove '/lib/ufw/user.rules': Permission denied
rm: cannot remove '/lib/crda/regulatory.bin': Permission denied
[...]