bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

gnulib-tool: fix for platforms with bash 2.x


From: Bruno Haible
Subject: gnulib-tool: fix for platforms with bash 2.x
Date: Mon, 23 Oct 2006 14:15:58 +0200
User-agent: KMail/1.9.1

Hi,

All versions of bash grok
   for f in $VAR; do ...; done
where VAR is an empty shell variable. But
   for f in $(VAR); do ...; done
where $(VAR) is an empty Makefile variable, leads to a syntax error with
bash 2.00..2.05. The solution is ugly...


2006-10-21  Bruno Haible  <address@hidden>

        * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
        Change mostlyclean-local rule to avoid sh syntax error from bash
        versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.

*** gnulib-tool 2006-10-21 00:24:28.000000000 +0200
--- gnulib-tool 2006-10-22 02:19:50.000000000 +0200
***************
*** 1214,1225 ****
    cat allsnippets.tmp
    echo
    echo "mostlyclean-local: mostlyclean-generic"
!   echo "      @test -z \"\$(MOSTLYCLEANDIRS)\" || \\"
!   echo "        for dir in \$(MOSTLYCLEANDIRS); do \\"
!   echo "          if test -d \$\$dir; then \\"
!   echo "            echo \"rmdir \$\$dir\"; rmdir \$\$dir; \\"
!   echo "          fi; \\"
!   echo "        done"
    rm -f allsnippets.tmp
  }
  
--- 1214,1224 ----
    cat allsnippets.tmp
    echo
    echo "mostlyclean-local: mostlyclean-generic"
!   echo "      @for dir in '' \$(MOSTLYCLEANDIRS); do \\"
!   echo "        if test -n \"\$\$dir\" && test -d \$\$dir; then \\"
!   echo "          echo \"rmdir \$\$dir\"; rmdir \$\$dir; \\"
!   echo "        fi; \\"
!   echo "      done"
    rm -f allsnippets.tmp
  }
  
***************
*** 1317,1328 ****
    echo "      rm -rf SunWS_cache"
    echo
    echo "mostlyclean-local: mostlyclean-generic"
!   echo "      @test -z \"\$(MOSTLYCLEANDIRS)\" || \\"
!   echo "        for dir in \$(MOSTLYCLEANDIRS); do \\"
!   echo "          if test -d \$\$dir; then \\"
!   echo "            echo \"rmdir \$\$dir\"; rmdir \$\$dir; \\"
!   echo "          fi; \\"
!   echo "        done"
    rm -f allsnippets.tmp
  }
  
--- 1316,1326 ----
    echo "      rm -rf SunWS_cache"
    echo
    echo "mostlyclean-local: mostlyclean-generic"
!   echo "      @for dir in '' \$(MOSTLYCLEANDIRS); do \\"
!   echo "        if test -n \"\$\$dir\" && test -d \$\$dir; then \\"
!   echo "          echo \"rmdir \$\$dir\"; rmdir \$\$dir; \\"
!   echo "        fi; \\"
!   echo "      done"
    rm -f allsnippets.tmp
  }
  




reply via email to

[Prev in Thread] Current Thread [Next in Thread]