summaryrefslogtreecommitdiffstats
path: root/libcxx/lib/buildit
diff options
context:
space:
mode:
authorHoward Hinnant <hhinnant@apple.com>2011-09-28 21:39:20 +0000
committerHoward Hinnant <hhinnant@apple.com>2011-09-28 21:39:20 +0000
commit3438889dec44b623921f19943ca18b3decb95d92 (patch)
tree724cc0728516d9546651d600e16bbd8ddd754c7f /libcxx/lib/buildit
parent7f168777e5313bf40d0b65a630a55c8b537571db (diff)
downloadbcm5719-llvm-3438889dec44b623921f19943ca18b3decb95d92.tar.gz
bcm5719-llvm-3438889dec44b623921f19943ca18b3decb95d92.zip
Work on Windows port by Ruben Van Boxem
llvm-svn: 140728
Diffstat (limited to 'libcxx/lib/buildit')
-rwxr-xr-xlibcxx/lib/buildit16
1 files changed, 14 insertions, 2 deletions
diff --git a/libcxx/lib/buildit b/libcxx/lib/buildit
index 16df7c51d4b..13d6f8e07ab 100755
--- a/libcxx/lib/buildit
+++ b/libcxx/lib/buildit
@@ -78,6 +78,13 @@ case $TRIPLE in
-Wl,-force_symbols_not_weak_list,notweak.exp "
fi
;;
+ *-*-mingw*)
+ # FIXME: removing libgcc and libsupc++ dependencies means porting libcxxrt and LLVM/compiler-rt
+ SOEXT=dll
+ LDSHARED_FLAGS="-o libc++.dll \
+ -shared -nodefaultlibs -Wl,--export-all-symbols -Wl,--allow-multiple-definition -Wl,--out-implib,libc++.dll.a \
+ -lsupc++ -lpthread -lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex -lmsvcr100 -ladvapi32 -lshell32 -luser32 -lkernel32 -lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex -lmsvcrt"
+ ;;
*)
RC_CFLAGS="-fPIC"
SOEXT=so
@@ -97,8 +104,13 @@ set -x
for FILE in ../src/*.cpp; do
$CXX -c -g -Os $RC_CFLAGS $EXTRA_FLAGS -nostdinc++ -I../include $FILE
done
-
-
+case $TRIPLE in
+ *-*-mingw*)
+ for FILE in ../src/support/win32/*.cpp; do
+ $CXX -c -g -Os $RC_CFLAGS $EXTRA_FLAGS -nostdinc++ -I../include $FILE
+ done
+ ;;
+esac
$CC *.o $RC_CFLAGS $LDSHARED_FLAGS $EXTRA_FLAGS
#libtool -static -o libc++.a *.o
OpenPOWER on IntegriCloud