[PATCH] D13425: [compiler-rt] Properly detect lack of available system libraries for arch in clang_darwin.mk
Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Oct 5 15:26:13 PDT 2015
This revision was automatically updated to reflect the committed changes.
Closed by commit rL249358: [compiler-rt] Properly detect lack of available system libraries for arch in… (authored by kfischer).
Changed prior to commit:
http://reviews.llvm.org/D13425?vs=36474&id=36566#toc
Repository:
rL LLVM
http://reviews.llvm.org/D13425
Files:
compiler-rt/trunk/make/platform/clang_darwin.mk
compiler-rt/trunk/make/platform/clang_darwin_test_input.c
Index: compiler-rt/trunk/make/platform/clang_darwin.mk
===================================================================
--- compiler-rt/trunk/make/platform/clang_darwin.mk
+++ compiler-rt/trunk/make/platform/clang_darwin.mk
@@ -17,23 +17,23 @@
result=""; \
if [ "X$(3)" != X ]; then \
for arch in $(1); do \
- if $(CC) -arch $$arch -c \
+ if $(LD) -v 2>&1 | grep "configured to support" \
+ | tr ' ' '\n' | grep "^$$arch$$" >/dev/null 2>/dev/null; then \
+ if $(CC) -arch $$arch \
-integrated-as \
$(ProjSrcRoot)/make/platform/clang_darwin_test_input.c \
-isysroot $(3) \
-o /dev/null > /dev/null 2> /dev/null; then \
- if $(LD) -v 2>&1 | grep "configured to support" \
- | tr ' ' '\n' | grep "^$$arch$$" >/dev/null 2>/dev/null; then \
- result="$$result$$arch "; \
+ result="$$result$$arch "; \
else \
printf 1>&2 \
- "warning: clang_darwin.mk: dropping arch '$$arch' from lib '$(2)'";\
- printf 1>&2 " (ld does not support it)\n"; \
+ "warning: clang_darwin.mk: dropping arch '$$arch' from lib '$(2)'"; \
+ printf 1>&2 " (clang or system libraries do not support it)\n"; \
fi; \
else \
printf 1>&2 \
- "warning: clang_darwin.mk: dropping arch '$$arch' from lib '$(2)'"; \
- printf 1>&2 " (clang does not support it)\n"; \
+ "warning: clang_darwin.mk: dropping arch '$$arch' from lib '$(2)'";\
+ printf 1>&2 " (ld does not support it)\n"; \
fi; \
done; \
fi; \
Index: compiler-rt/trunk/make/platform/clang_darwin_test_input.c
===================================================================
--- compiler-rt/trunk/make/platform/clang_darwin_test_input.c
+++ compiler-rt/trunk/make/platform/clang_darwin_test_input.c
@@ -4,3 +4,12 @@
#include <stdint.h>
#include <stdlib.h>
#include <stdio.h>
+#include <string.h>
+
+// Force us to link at least one symbol in a system library
+// to detect systems where we don't have those for a given
+// architecture.
+int main(int argc, const char **argv) {
+ int x;
+ memcpy(&x,&argc,sizeof(int));
+}
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D13425.36566.patch
Type: text/x-patch
Size: 2263 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20151005/9565f3a1/attachment.bin>
More information about the llvm-commits
mailing list