Hi,

Not sure if this really helps, but I suppose it cannot hurt. All of the
remarks concern the build environment rather than the source/tools.
Nothing major except the last point which I suspect to be an error
on my side.

1) platform details from "configure"
2) source & output dir tree structure
3) sequence of actions
4) report

Hope this helps

Regards

Mark


1) platform details from "configure"

## --------- ##
## Platform. ##
## --------- ##

hostname = emerald
uname -m = i686
uname -r = 1.7.1(0.218/5/3)
uname -s = CYGWIN_NT-5.1
uname -v = 2009-12-07 11:48

configure:2804: checking for C compiler version
configure:2811: gcc --version >&5
gcc (GCC) 4.3.4 20090804 (release) 1


2) source & output dir tree structure
/cygdrive/g/tools/cygwin/compilers/llvm/llvm-2.6                                
                    // OBJ_ROOT (for llvm-gcc)
/cygdrive/g/tools/cygwin/compilers/llvm/llvm-2.6/Release                        
               // LLVM output
/cygdrive/g/tools/cygwin/compilers/llvm/llvm-2.6/llvm-gcc/llvm-gcc4.2-2.6.source
      // LLVM-GCC sources
/cygdrive/g/tools/cygwin/compilers/llvm/llvm-2.6/llvm-gcc/install
/cygdrive/g/tools/cygwin/compilers/llvm/llvm-2.6/llvm-gcc/obj
/cygdrive/g/tools/cygwin/compilers/llvm/llvm-2.6/projects/llvm-test             
              // LLVM test sources


3) sequence of actions
in "/cygdrive/g/tools/cygwin/compilers/llvm/llvm-2.6"
./configure
make tools-only

in "/cygdrive/g/tools/cygwin/compilers/llvm/llvm-2.6/llvm-gcc/obj"
../llvm-gcc4.2-x.y.source/configure 
--prefix=/cygdrive/g/tools/cygwin/compilers/llvm/llvm-2.6/llvm-gcc/install 
--program-prefix=llvm- 
--enable-llvm=/cygdrive/g/tools/cygwin/compilers/llvm/llvm-2.6 
--enable-languages=c,c++
make LLVM_VERSION_INFO=2.6
make install

in "/cygdrive/g/tools/cygwin/compilers/llvm/llvm-2.6"
./configure 
--with-llvmgccdir=/cygdrive/g/tools/cygwin/compilers/llvm/llvm-2.6/llvm-gcc/install/bin
make
make install

in /cygdrive/g/tools/cygwin/compilers/llvm/llvm-2.6/projects/llvm-test
./configure
make


4) report
- From the readme's FAQ and docs it is not so clear that there is a circular
  dependency between llvm and llvm-gcc, to save recompile in (3) one ought
  to use "./configure" already with "--with-llvmgccdir"

- after llvm configure, the makefile as a linker option incompatble with gcc 
4.3.4
  it suggests to change:
#RDYNAMIC := -Wl,-export-dynamic
RDYNAMIC := -Wl,-export-all-symbols

- llvm configure reports:
  mmap() of a fixed address is required but not supported
  it does not seem to be a requirement as the build process succeeds though

- the llvm build process has intermittent errors with conftest.c or contest.exe 
being unaccessible
  my guess is that the cygwin emulation is a bit slow and that the processes 
does not wait
  to check for the status of the files
  -> As certain tests fails but configure completes succesfully I have no idea 
on the impact

- the llvm-gcc build process has MANY intermittent errors with conftest.c or 
contest.exe being unaccessible
  probably same reason as above. here the build process terminates in error but 
restarting (quite a few times)
  results in a (apparently) operational llvm-gcc (compiles hello.c & llvm 
--help gives proper version)

- the llvm-gcc build process fails regurarly, but not systematically, on a gcc 
test
  "can gcc produce an executable ... No"
  typically at the later stages

- running the tests in .../projects/llvm-tests fails systematically
  make cannot resolve *.rbc dependencies in the first single source test

- running the hello.c test (from the web tutorial) produces hell.exe and 
hello.bc, but not "lli hello.bc" (see below)
  lli cannot find "put()" (cannot find the dynamic lib containing "put()") I 
may have simply missed a cygwin
  specific dynamic link flag / configure option (the web doc make mention of 
dynamic linkage on cygwin with
  the platform notes, so perhaps this is what's meant)




 



_______________________________________________
LLVMbugs mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs

Reply via email to