diff options
author | Tom Fogal <tfogal@alumni.unh.edu> | 2009-10-13 10:55:34 -0700 |
---|---|---|
committer | Brian Paul <brianp@vmware.com> | 2009-10-13 16:22:09 -0600 |
commit | 115edf24a9128b79dfa5f30482c990e2cb898357 (patch) | |
tree | 9194eaed268aa4c973c3ac1ae00928fbf266462c /progs/Makefile | |
parent | 9282edfaa0ad24be16f5e395f346ca477050cdf6 (diff) |
Fix build when PROGRAM_DIRS is empty.
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.
Diffstat (limited to 'progs/Makefile')
-rw-r--r-- | progs/Makefile | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/progs/Makefile b/progs/Makefile index c99f4eebcc..064e5a232e 100644 --- a/progs/Makefile +++ b/progs/Makefile @@ -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 |