I've finally found time to work on preparing a mingw-llvm-3.0 package,
so that I can cross-compile a program that uses the LLVM libraries.
I've run into a few problems that I could use some help with.
1) The %mingw_configure macro defines a bunch of environment variables
such as AR, CXX, GCC, LD, etc., which interfere with building LLVM,
because the LLVM build system already knows how to deal with
cross-builds, but the env vars screw up some things that have to
compiled and run on the build system. Is there any way to convince
%mingw_configure not to set those variables? Or maybe an alternate
macro that doesn't?
For now, I use a patch to the LLVM configure script that unsets all
those variables at the start, and then it builds fine for mingw32.
2) The LLVM build produces some .exe and .dll files in %{mingw_bindir},
but there aren't any .dll.a or .la files anywhere either in the
BUILDROOT or in the BUILD tree. How are these supposed to be produced?
For my own purposes I only need the static libraries in the -static
subpackage, but obviously I need to fix this so that the DLLs are usable
also.
3) Building for mingw64 fails with all sorts of undefined mangled C++
symbols. I think I'll need help from upstream with that. Is it OK to
submit a package in the mean time that builds for mingw32 only?
For now I've used "%global mingw_build_win64 0". That mostly works,
until rpmbuild tries to generate debuginfo and provides, and apparently
is still looking for an x86_64-w64-mingw32 directory, when all I have is
i686-w64-mingw32. Is there something else I must do to convince it not
to look for 64-bit stuff?
find:
`/home/eric/rpmbuild/BUILDROOT/mingw-llvm-3.0-1.fc16.x86_64/usr/x86_64-w64-mingw32/sys-root/mingw':
No such file or directory
error: failed to write all data to /usr/lib/rpm/mingw-find-debuginfo.sh:
Broken pipe
Finding Provides: /usr/lib/rpm/mingw-find-debuginfo.sh
/home/eric/rpmbuild/BUILD/ mingw32 mingw64
error: Failed to find Provides:
Requires(rpmlib): rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(CompressedFileNames) <=
3.0.4-1
RPM build errors:
failed to write all data to /usr/lib/rpm/mingw-find-debuginfo.sh:
Broken pipe
Failed to find Provides:
In case anyone is interested, I put the current
almost-but-not-quite-working spec file and a build log at:
http://fedorapeople.org/~brouhaha/mingw-llvm/
Thanks for any advice and help!
Eric
_______________________________________________
mingw mailing list
mingw@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/mingw