| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*) Try to detect as much as possible from the system itself, not the distro.
This should make it easier to port to a new distro and more likely to
work on a unknown one.
*) The distro enum now doesn't include the arch. Just use the existing
host detection support in LLVM.
*) Correctly handle --sysroot.
A small regression is that now clang will pass bitcode file to the linker.
This is necessary for the gold plugin support to work.
It might be better to detect this at configure/cmake time, but doing it in
c++ first is a lot easier.
llvm-svn: 118382
|
| |
|
|
| |
llvm-svn: 118150
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
distros listed by running
gcc main.o -o main
g++ main.o -o main
gcc main.o -o main -static
g++ main.o -o main -static
gcc f.o -o f.so -shared
g++ f.o -o f.so -shared
and comparing the ld line with the one created by clang. I also added
-m32/m64 in distros that support it.
While I tested many distros, there will always be more. If you are hit by this
it should be somewhat easy to add your distro. If you are in a hurry, do
revert this, but please inform how to detect you distro and the ld command
lines produced by the above gcc invocations. Most distros have some patches
on gcc :-(
llvm-svn: 118149
|
| |
|
|
|
|
| |
systems.
llvm-svn: 117697
|
| |
|
|
|
|
| |
are almost never needed, so the warning isn't very useful.
llvm-svn: 116263
|
| |
|
|
|
|
| |
some projects still depend on ___eprintf being available.
llvm-svn: 114509
|
| |
|
|
|
|
|
|
|
| |
Rewrite linker arguments to use libclang_rt.cc_kext.a
instead of gcc-specific libcc_kext.a
Resolves Radar 7808495
llvm-svn: 114193
|
| |
|
|
|
|
|
| |
ever use fallback.
- Not necessary for clang as a compiler, but useful for testing purposes.
llvm-svn: 114172
|
| |
|
|
| |
llvm-svn: 114147
|
| |
|
|
|
|
|
|
|
| |
the GCC dir. Unfortunately, this breaks -lstdc++ on SnowLeopard, etc. because
the libstdc++ dylib was hiding there. Workaround this by providing the path to
the right -lstdc++.6 (the only version used in recent memory) if we can't see an
obvious -lstdc++, but can find = -lstdc++.6.
llvm-svn: 114146
|
| |
|
|
| |
llvm-svn: 114137
|
| |
|
|
| |
llvm-svn: 112974
|
| |
|
|
| |
llvm-svn: 112970
|
| |
|
|
| |
llvm-svn: 112124
|
| |
|
|
|
|
|
|
|
|
|
| |
ToolChain. This fixes a potenial bad cast when running Clang on PPC code, since
the tool chain in effect is not a subclass of the Darwin one, but we were
treating it like it was.
- This introduces some gross code duplication, but the right fix for it is to
just move the Driver to start depending on the targets in libBasic, so I am
not planning on fixing it immediately.
llvm-svn: 111856
|
| |
|
|
|
|
| |
the arch specific gcc lib path.
llvm-svn: 111839
|
| |
|
|
|
|
| |
are handled.
llvm-svn: 111773
|
| |
|
|
| |
llvm-svn: 111748
|
| |
|
|
| |
llvm-svn: 110635
|
| |
|
|
|
|
| |
chain construction.
llvm-svn: 110028
|
| |
|
|
| |
llvm-svn: 110026
|
| |
|
|
|
|
| |
chain construction.
llvm-svn: 110025
|
| |
|
|
|
|
| |
ToolChain::LookupTypeForExtension.
llvm-svn: 110024
|
| |
|
|
|
|
|
|
|
| |
was invoked from (which may not be where the executable itself is).
- This allows having e.g., /Developer/usr/bin/clang be a symlink to some other
location, while still making sure the Driver finds 'as', 'ld', etc. relative
to itself.
llvm-svn: 109989
|
| |
|
|
|
|
| |
-mmacosx-version-min works inside a -Xarch_ flag.
llvm-svn: 108712
|
| |
|
|
| |
llvm-svn: 108711
|
| |
|
|
|
|
| |
assume we are targetting OS X unless an explicit option is given.
llvm-svn: 108426
|
| |
|
|
|
|
| |
from PR7583
llvm-svn: 107788
|
| |
|
|
|
|
|
| |
library directory, as we still rely on a few libraries that are hiding there (in
particular libstdc++.dylib).
llvm-svn: 107353
|
| |
|
|
|
|
| |
problem; patch by Ed Schouten.
llvm-svn: 105996
|
| |
|
|
|
|
| |
Also, fix a memory leak.
llvm-svn: 105963
|
| |
|
|
|
|
| |
them.
llvm-svn: 105957
|
| |
|
|
|
|
| |
are going to need this to handle things like -Xassembler, -Xpreprocessor, and -Xlinker which we might have to introspect.
llvm-svn: 105842
|
| |
|
|
| |
llvm-svn: 105474
|
| |
|
|
|
|
| |
(or -save-temps), when the integrated assembler is enabled.
llvm-svn: 104282
|
| |
|
|
|
|
|
|
| |
means it isn't really possible to write the test case for this code, but this is
the kind of thing that really requires testing against the installed compiler
anyway.
llvm-svn: 100935
|
| |
|
|
|
|
| |
support them.
llvm-svn: 100930
|
| |
|
|
|
|
|
|
|
| |
Clang is installed. This is designed to match gcc, and is important when
installed in a non-standard location.
- This is gross, but no worse than ever. It will die when we finally move to
the compiler-rt based toolchain, any day now.
llvm-svn: 100915
|
| |
|
|
|
|
| |
target when both {MACOSX,IPHONEOS}_DEPLOYMENT_TARGET were set.
llvm-svn: 99055
|
| |
|
|
| |
llvm-svn: 97746
|
| |
|
|
|
|
|
| |
calls to the UnwindResumeOrRethrow function for C++/Obj-C exception handling,
for Darwin ARM.
llvm-svn: 95787
|
| |
|
|
|
|
| |
this is still a popular thing to do.
llvm-svn: 95093
|
| |
|
|
| |
llvm-svn: 94812
|
| |
|
|
|
|
| |
defaults when targetting iPhoneOS (blocks, non-fragile ABI, stack protector).
llvm-svn: 94642
|
| |
|
|
| |
llvm-svn: 94641
|
| |
|
|
|
|
| |
just indicating whether the default target should be iPhoneOS.
llvm-svn: 94638
|
| |
|
|
| |
llvm-svn: 94637
|
| |
|
|
|
|
|
| |
this should just be part of the tool chain itself once we have eliminated
argument translation.
llvm-svn: 94635
|
| |
|
|
| |
llvm-svn: 94488
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
compiler-rt. This tool chain now works on x86 and ARM, but isn't the x86 default
yet.
This drastically cleans up the linker invocation, old invocation:
--
"/Developer/usr/bin/../libexec/gcc/i686-apple-darwin10/4.2.1/ld" "-dynamic" "-arch" "x86_64" "-macosx_version_min" "10.6.0" "-weak_reference_mismatches" "non-weak" "-o" "a.out" "-lcrt1.10.6.o" "-L/usr/lib/gcc/i686-apple-darwin10/4.2.1/x86_64" "-L/usr/lib/gcc/i686-apple-darwin10/4.2.1/x86_64" "-L/usr/lib/i686-apple-darwin10/4.2.1" "-L/usr/lib/gcc/i686-apple-darwin10/4.2.1" "-L/usr/lib/gcc/i686-apple-darwin10/4.2.1" "-L/usr/lib/gcc/i686-apple-darwin10/4.2.1/../../../i686-apple-darwin10/4.2.1" "-L/usr/lib/gcc/i686-apple-darwin10/4.2.1/../../.." "t.o" "-lSystem" "-lgcc"
--
New invocation:
--
# For 10.6:
"/usr/bin/ld" "-dynamic" "-arch" "x86_64" "-macosx_version_min" "10.6.0" "-o" "a.out" "-lcrt1.10.6.o" "t.o" "-lSystem"
# For 10.4:
"/usr/bin/ld" "-dynamic" "-arch" "x86_64" "-macosx_version_min" "10.4" "-o" "a.out" "-lcrt1.o" "t.o" "-lSystem" "-lgcc_s.10.4" "/Volumes/Data/ddunbar/llvm.obj.64/Debug/lib/clang/1.1/lib/darwin/libclang_rt.10.4.a"
--
llvm-svn: 94150
|