[LLVMdev] llvm 'gmake check' errors generating lit.site.cfg

Will Schmidt will_schmidt at vnet.ibm.com
Wed Jul 11 09:02:34 PDT 2012


Hi, 
   Using trunk llvm ; on powerpc (powerpc64/power7); trying to do a
"gmake check", the sed bits in test/Makefile appear to be getting
tripped up when trying to generate lit.site.cfg.   I've started to hack
at it, made a little bit of progress, but wonder if I'm just digging
myself a hole.   Highlights of what I've poked at are below..   Comments
or thoughts? 

Thanks, 
-Will




llvm]$ gmake check 
llvm[0]: Running test suite
gmake[1]: Entering directory `/home/willschm/llvm/test'
Making LLVM 'lit.site.cfg' file...
sed: file lit.tmp line 8: unknown option to `s'
gmake[1]: *** [lit.site.cfg] Error 1

The relevant lines in test/Makefile:
	@$(ECHOPATH) s=@OCAMLOPT@=$(OCAMLOPT) -cc \"$(CXX_FOR_OCAMLOPT)\" -I $(LibDir)/ocaml=g >> lit.tmp
	@sed -f lit.tmp $(PROJ_SRC_DIR)/lit.site.cfg.in > $@

And the line in the lit.tmp file:
s=@OCAMLOPT@=/bin/ocamlopt -cc "g++ -Wall -D_FILE_OFFSET_BITS=64 -D_REENTRANT -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64" -I /home/willschm/llvm/Debug+Asserts/lib/ocaml=g

So it looks to me like the sed delimiter "=" gets tripped up on the
parms such as D_FILE_OFFSET_BITS=64. 

As a hack, I swapped out the "=" for "#" for that line in the Makefile
        @$(ECHOPATH) s#@OCAMLOPT@#$(OCAMLOPT) -cc \"$(CXX_FOR_OCAMLOPT)\" -I $(LibDir)/ocaml#g >> lit.tmp


And now get farther, but then hit another issue related to the OCAMLOPT
contents:
  File "/home/willschm/llvm/test/lit.site.cfg", line 11
    config.ocamlopt_executable = "/bin/ocamlopt -cc "g++ -Wall -D_FILE_OFFSET_BITS=64 -D_REENTRANT -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64" -I /home/willschm/llvm/Debug+Asserts/lib/ocaml"
                                                     ^
SyntaxError: invalid syntax
gmake: *** [check-local] Error 1







More information about the llvm-dev mailing list