[llvm-commits] [llvm] r163098 - /llvm/trunk/test/Makefile
Rick Foos
rfoos at codeaurora.org
Wed Sep 5 09:17:44 PDT 2012
On 09/02/2012 10:16 AM, Nuno Lopes wrote:
> Author: nlopes
> Date: Sun Sep 2 10:16:51 2012
> New Revision: 163098
>
> URL: http://llvm.org/viewvc/llvm-project?rev=163098&view=rev
> Log:
> escape special char when handling CXX_FOR_OCAMLOPT
>
> Modified:
> llvm/trunk/test/Makefile
>
> Modified: llvm/trunk/test/Makefile
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Makefile?rev=163098&r1=163097&r2=163098&view=diff
> ==============================================================================
> --- llvm/trunk/test/Makefile (original)
> +++ llvm/trunk/test/Makefile Sun Sep 2 10:16:51 2012
> @@ -131,7 +131,7 @@
> @$(ECHOPATH) s=@SHLIBDIR@=$(SharedLibDir)=g>> lit.tmp
> @$(ECHOPATH) s=@SHLIBEXT@=$(SHLIBEXT)=g>> lit.tmp
> @$(ECHOPATH) s=@PYTHON_EXECUTABLE@=python=g>> lit.tmp
> - @$(ECHOPATH) s, at OCAMLOPT@,$(OCAMLOPT) -cc \\\\\"$(CXX_FOR_OCAMLOPT)\\\\\" -I $(LibDir)/ocaml,g>> lit.tmp
> + @$(ECHOPATH) s=@OCAMLOPT@=$(OCAMLOPT) -cc \\\\\"$(subst =,"\\=",$(CXX_FOR_OCAMLOPT))\\\\\" -I $(LibDir)/ocaml=g>> lit.tmp
> @$(ECHOPATH) s=@ENABLE_SHARED@=$(ENABLE_SHARED)=g>> lit.tmp
> @$(ECHOPATH) s=@ENABLE_ASSERTIONS@=$(ENABLE_ASSERTIONS)=g>> lit.tmp
> @$(ECHOPATH) s=@TARGETS_TO_BUILD@=$(TARGETS_TO_BUILD)=g>> lit.tmp
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
Nuno, Will,
I'm still getting errors on check-all with OCAML on Ubuntu 12.04.1. The
double quote escaping isn't working manually or in a Jenkins JNLP slave.
I found two workarounds.
1) When I switch the \\\\\" to \\\\\', the quote problem disappears and
check-all completes.
2) Another way is to limit the shell interference requiring all the
\\\\\'s. Since $(subst) is used, need to do it with make builtins, then
it's done outside of shell.
I wrapped it again, $(subst *,'\\\"',*$(subst blah )*), and it gave me
an escaped version in lit.site.cfg:
config.ocamlopt_executable = "/usr/bin/ocamlopt -cc \"g++
-D_FILE_OFFSET_BITS=64 -D_REENTRANT\" -I
/local/jenkins-swarm-u1204/workspace/llvm-repo/build-x86_64-linux-gnu/Release+Asserts/lib/ocaml"
I have no preference either way.
You should probably have the final word since you fixed the first part
of the bug, and can test it better.
Many of the bots that run check-all don't have ocaml installed.
Installing OCAML on the bot slaves might be a simple thing to do to
improve test coverage.
-rick
---
make[1]: Entering directory `/local/jenkins-swarm-u1204/workspace/llvm-repo/build-x86_64-linux-gnu/test'
Making LLVM 'lit.site.cfg' file...
Making LLVM unittest 'lit.site.cfg' file...
make -C /local/jenkins-swarm-u1204/workspace/llvm-repo/build-x86_64-linux-gnu/test/../tools/clang/test lit.site.cfg Unit/lit.site.cfg
make[2]: Entering directory `/local/jenkins-swarm-u1204/workspace/llvm-repo/build-x86_64-linux-gnu/tools/clang/test'
Making Clang 'lit.site.cfg' file...
Making Clang 'Unit/lit.site.cfg' file...
make[2]: Leaving directory `/local/jenkins-swarm-u1204/workspace/llvm-repo/build-x86_64-linux-gnu/tools/clang/test'
( ulimit -t 600 ; ulimit -d 512000 ; ulimit -m 512000 ; ulimit -v 1024000 ; \
/local/jenkins-swarm-u1204/workspace/llvm-repo/llvm/utils/lit/lit.py -s -v . /local/jenkins-swarm-u1204/workspace/llvm-repo/build-x86_64-linux-gnu/test/../tools/clang/test )
Traceback (most recent call last):
File "/local/jenkins-swarm-u1204/workspace/llvm-repo/llvm/utils/lit/lit.py", line 5, in<module>
lit.main()
File "/local/jenkins-swarm-u1204/workspace/llvm-repo/llvm/utils/lit/lit/main.py", line 522, in main
testSuiteCache, localConfigCache)[1])
File "/local/jenkins-swarm-u1204/workspace/llvm-repo/llvm/utils/lit/lit/main.py", line 230, in getTests
ts,path_in_suite = getTestSuite(path, litConfig, testSuiteCache)
File "/local/jenkins-swarm-u1204/workspace/llvm-repo/llvm/utils/lit/lit/main.py", line 199, in getTestSuite
ts, relative = search(item)
File "/local/jenkins-swarm-u1204/workspace/llvm-repo/llvm/utils/lit/lit/main.py", line 183, in search
cache[path] = res = search1(path)
File "/local/jenkins-swarm-u1204/workspace/llvm-repo/llvm/utils/lit/lit/main.py", line 174, in search1
cfg = TestingConfig.frompath(cfgpath, None, litConfig, mustExist = True)
File "/local/jenkins-swarm-u1204/workspace/llvm-repo/llvm/utils/lit/lit/TestingConfig.py", line 53, in frompath
exec f in cfg_globals
File "/local/jenkins-swarm-u1204/workspace/llvm-repo/build-x86_64-linux-gnu/test/lit.site.cfg", line 11
config.ocamlopt_executable = "/usr/bin/ocamlopt -cc "g++ -D_FILE_OFFSET_BITS=64 -D_REENTRANT" -I /local/jenkins-swarm-u1204/workspace/llvm-repo/build-x86_64-linux-gnu/Release+Asserts/lib/ocaml"
^
SyntaxError: invalid syntax
make[1]: *** [check-local-all] Error 1
--
Rick Foos
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation
More information about the llvm-commits
mailing list