Fix build when PROGRAM_DIRS is empty.
authorTom Fogal <tfogal@alumni.unh.edu>
Tue, 13 Oct 2009 17:55:34 +0000 (10:55 -0700)
committerBrian Paul <brianp@vmware.com>
Tue, 13 Oct 2009 22:22:09 +0000 (16:22 -0600)
SUBDIRS just takes PROGRAM_DIRS value.  If PROGRAM_DIRS gets set
to the empty string (as can happen when building only OSMesa), a
'for' loop will lack anything to iterate over, causing a parse
error.

This fixes the issue by making sure SUBDIRS is the null string
when PROGRAM_DIRS is, and wrapping the for loops in if's, causing
them only to execute if there are directories to iterate over.

progs/Makefile

index c99f4eebcc1be56d27de779c55efab1c72acddef..064e5a232ee663076aec4df2ac630f03f730176d 100644 (file)
@@ -4,7 +4,7 @@ TOP = ..
 
 include $(TOP)/configs/current
 
-SUBDIRS = $(PROGRAM_DIRS)
+SUBDIRS ="$(PROGRAM_DIRS)"
 
 
 default: message subdirs
@@ -15,18 +15,22 @@ message:
 
 
 subdirs:
-       @for dir in $(SUBDIRS) ; do \
-               if [ -d $$dir ] ; then \
-                       (cd $$dir && $(MAKE)) || exit 1 ; \
-               fi \
-       done
+       @if test -n "$(SUBDIRS)" ; then \
+               for dir in $(SUBDIRS) ; do \
+                       if [ -d $$dir ] ; then \
+                               (cd $$dir && $(MAKE)) || exit 1 ; \
+                       fi \
+               done \
+       fi
 
 # Dummy install target
 install:
 
 clean:
-       -@for dir in $(SUBDIRS) tests ; do \
-               if [ -d $$dir ] ; then \
-                       (cd $$dir && $(MAKE) clean) ; \
-               fi \
-       done
+       -@if test -n "$(SUBDIRS)" ; then \
+               for dir in $(SUBDIRS) tests ; do \
+                       if [ -d $$dir ] ; then \
+                               (cd $$dir && $(MAKE) clean) ; \
+                       fi \
+               done \
+       fi