diff options
author | yugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2011-07-31 11:27:30 +0000 |
---|---|---|
committer | yugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2011-07-31 11:27:30 +0000 |
commit | 2e3be7378781568e3302add18baa5ba45b8b4463 (patch) | |
tree | 4aa080f7a0c8ff64e4f5a7d138a2565eecb2985f /configure.in | |
parent | 31013d0f111084de2a67a05b56967f158c84335c (diff) |
* common.mk (ECHO1): ":" in a make variable replacement cause a syntax
error with /usr/ccs/bin/make on Solaris. Uses $(NULLCMD) instead.
* configure.in (NULLCMD): new check.
* Makefile.in (NULLCMD): Reflects checking in configure.
* win32/Makefile.sub (NULLCMD): new assignment.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@32772 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'configure.in')
-rw-r--r-- | configure.in | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/configure.in b/configure.in index 6888087964..7844bc68c0 100644 --- a/configure.in +++ b/configure.in @@ -2609,6 +2609,28 @@ AS_CASE(["$FIRSTMAKEFILE"], [*GNUmakefile:*], [gnumake=yes], [ gnumake=no]) AC_MSG_RESULT($gnumake) ]) +AS_IF([test "$gnumake" = yes], [ NULLCMD=: ], [ + AC_MSG_CHECKING([for safe null command for ${Make-make}]) + mkdir conftest.dir + echo 'A=1' > conftest.dir/Makefile + echo 'B=$(A:1=@:)' >> conftest.dir/Makefile + echo 'all:; $B 1 2 3 4 5 6 7 8 9' >> conftest.dir/Makefile + if (cd conftest.dir; ${Make-make} >/dev/null 2>/dev/null); then + NULLCMD=: + else + echo 'A=1' > conftest.dir/Makefile + echo 'B=$(A:1=@true)' >> conftest.dir/Makefile + echo 'all:; $B 1 2 3 4 5 6 7 8 9' >> conftest.dir/Makefile + if (cd conftest.dir; ${Make-make} >/dev/null 2>/dev/null); then + NULLCMD=true + else + AC_MSG_ERROR(no candidate for safe null command) + fi + fi + rm -fr conftest.dir + AC_MSG_RESULT($NULLCMD) +]) +AC_SUBST(NULLCMD) if test "${universal_binary-no}" = yes ; then AC_CACHE_CHECK([for architecture macros], rb_cv_architecture_macros, [ |