summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBrian <brian@yutani.localnet.net>2007-05-09 16:22:53 -0600
committerBrian <brian@yutani.localnet.net>2007-05-09 16:23:11 -0600
commit16c503f39a05726f3e994e42cb1c03e0a308b80d (patch)
tree1603daefea6ba5c115a4a4fed027e2838df4a153 /src
parent4d5d4e1f97bf8d5c55ef817f7a28f920accc151b (diff)
Tweak the shell scripting for descending into and building subdirs.
In general, use this: @for dir in $(SUBDIRS) ; do \ if [ -d $$dir ] ; then \ (cd $$dir && $(MAKE)) || exit 1; \ fi \ done Basically, silently skip missing subdirs but generate an error and stop if there's a compilation or install problem. This was done inconsistantly before. In once case, a missing subdir was causing us to go into an infinte loop!
Diffstat (limited to 'src')
-rw-r--r--src/Makefile6
-rw-r--r--src/mesa/drivers/dri/Makefile14
2 files changed, 12 insertions, 8 deletions
diff --git a/src/Makefile b/src/Makefile
index f52a06a3c96..f93987e6880 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -17,14 +17,14 @@ message:
subdirs:
@for dir in $(SUBDIRS) ; do \
if [ -d $$dir ] ; then \
- (cd $$dir ; $(MAKE)) || exit 1 ; \
+ (cd $$dir && $(MAKE)) || exit 1; \
fi \
done
install:
@for dir in $(SUBDIRS) ; do \
if [ -d $$dir ] ; then \
- (cd $$dir ; $(MAKE) install) || exit 1 ; \
+ (cd $$dir && $(MAKE) install) || exit 1 ; \
fi \
done
@@ -35,6 +35,6 @@ $(TOP)/$(LIB_DIR):
clean:
@for dir in $(SUBDIRS) ; do \
if [ -d $$dir ] ; then \
- (cd $$dir ; $(MAKE) clean) ; \
+ (cd $$dir && $(MAKE) clean) ; \
fi \
done
diff --git a/src/mesa/drivers/dri/Makefile b/src/mesa/drivers/dri/Makefile
index 1db878bab70..4abcc16c1bc 100644
--- a/src/mesa/drivers/dri/Makefile
+++ b/src/mesa/drivers/dri/Makefile
@@ -14,21 +14,25 @@ $(TOP)/$(LIB_DIR):
subdirs:
- echo $(DRI_DIRS)
@for dir in $(DRI_DIRS) ; do \
- echo $$dir ; \
- (cd $$dir && $(MAKE)) || exit 1; \
+ if [ -d $$dir ] ; then \
+ (cd $$dir && $(MAKE)) || exit 1 ; \
+ fi \
done
install:
@for dir in $(DRI_DIRS) ; do \
- (cd $$dir && $(MAKE) install) || exit 1; \
+ if [ -d $$dir ] ; then \
+ (cd $$dir && $(MAKE) install) || exit 1 ; \
+ fi \
done
clean:
@for dir in $(DRI_DIRS) ; do \
- (cd $$dir && $(MAKE) clean) ; \
+ if [ -d $$dir ] ; then \
+ (cd $$dir && $(MAKE) clean ; \
+ fi \
done
-rm -f common/*.o