pintos: Avoid literal control character in Perl variable name.
[pintos-anon] / src / Makefile
index c781a028d9b97b89e2bd178b7f66b5d7c219e17f..229f85d1dcc3deb707c897033bc0327f10eddc4d 100644 (file)
@@ -1,20 +1,29 @@
-SUBDIRS = threads userprog vm filesys
+BUILD_SUBDIRS = threads userprog vm filesys
 
 all::
-       @echo "Run 'make' in subdirectories $(SUBDIRS)."
+       @echo "Run 'make' in subdirectories: $(BUILD_SUBDIRS)."
        @echo "This top-level make has only 'clean' targets."
 
+CLEAN_SUBDIRS = $(BUILD_SUBDIRS) examples utils
+
 clean::
-       for d in $(SUBDIRS) tests; do $(MAKE) -C $$d $@; done
+       for d in $(CLEAN_SUBDIRS); do $(MAKE) -C $$d $@; done
+       rm -f TAGS tags
 
 distclean:: clean
        find . -name '*~' -exec rm '{}' \;
 
-TAGS_SOURCES = `find \( -name tests -o -name build \) -prune -o -name \*.[chS] -print`
+TAGS_SUBDIRS = $(BUILD_SUBDIRS) devices lib
+TAGS_SOURCES = find $(TAGS_SUBDIRS) -name \*.[chS] -print
 
 TAGS::
-       etags --members $(TAGS_SOURCES)
+       etags --members `$(TAGS_SOURCES)`
 
 tags::
-       ctags -T --no-warn $(TAGS_SOURCES)
+       ctags -T --no-warn `$(TAGS_SOURCES)`
+
+cscope.files::
+       $(TAGS_SOURCES) > cscope.files
 
+cscope:: cscope.files
+       cscope -b -q -k