blob: a22d0ded1154f1caf53b38cdb3c3f8c28243bb05 [file] [log] [blame]
include toolchain.ninja
buildtools = ../../../../buildtools
libcxx = third_party/libc++/trunk/src
libcxxabi = third_party/libc++abi/trunk/src
defines = -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_FILE_OFFSET_BITS=64
includes = -isystem$buildtools/$libcxx/../include -isystem$buildtools/$libcxxabi/../include
cflags = $cxxflags $defines $includes -O2 -g0 -pthread -pipe -fno-exceptions -std=c++14 -Wno-c++11-narrowing -nostdinc++ -fPIC
rule cxx_libcxx
command = $cxx $cflags -D_LIBCPP_NO_EXCEPTIONS -D_LIBCPP_BUILDING_LIBRARY -DLIBCXX_BUILDING_LIBCXXABI -c $in -o $out
description = CXX $out
rule cxx_libcxxabi
command = $cxx $cflags -D_LIBCXXABI_NO_EXCEPTIONS -DLIBCXXABI_SILENT_TERMINATE -c $in -o $out
description = CXX $out
rule link
command = $cxx -shared -fPIC -o $out -Wl,--start-group $in -Wl,--end-group
description = LINK $out
build $libcxx/algorithm.o: cxx_libcxx $buildtools/$libcxx/algorithm.cpp
build $libcxx/any.o: cxx_libcxx $buildtools/$libcxx/any.cpp
build $libcxx/bind.o: cxx_libcxx $buildtools/$libcxx/bind.cpp
build $libcxx/chrono.o: cxx_libcxx $buildtools/$libcxx/chrono.cpp
build $libcxx/condition_variable.o: cxx_libcxx $buildtools/$libcxx/condition_variable.cpp
build $libcxx/debug.o: cxx_libcxx $buildtools/$libcxx/debug.cpp
build $libcxx/exception.o: cxx_libcxx $buildtools/$libcxx/exception.cpp
build $libcxx/functional.o: cxx_libcxx $buildtools/$libcxx/functional.cpp
build $libcxx/future.o: cxx_libcxx $buildtools/$libcxx/future.cpp
build $libcxx/hash.o: cxx_libcxx $buildtools/$libcxx/hash.cpp
build $libcxx/ios.o: cxx_libcxx $buildtools/$libcxx/ios.cpp
build $libcxx/iostream.o: cxx_libcxx $buildtools/$libcxx/iostream.cpp
build $libcxx/locale.o: cxx_libcxx $buildtools/$libcxx/locale.cpp
build $libcxx/memory.o: cxx_libcxx $buildtools/$libcxx/memory.cpp
build $libcxx/mutex.o: cxx_libcxx $buildtools/$libcxx/mutex.cpp
build $libcxx/new.o: cxx_libcxx $buildtools/$libcxx/new.cpp
build $libcxx/optional.o: cxx_libcxx $buildtools/$libcxx/optional.cpp
build $libcxx/random.o: cxx_libcxx $buildtools/$libcxx/random.cpp
build $libcxx/regex.o: cxx_libcxx $buildtools/$libcxx/regex.cpp
build $libcxx/shared_mutex.o: cxx_libcxx $buildtools/$libcxx/shared_mutex.cpp
build $libcxx/stdexcept.o: cxx_libcxx $buildtools/$libcxx/stdexcept.cpp
build $libcxx/string.o: cxx_libcxx $buildtools/$libcxx/string.cpp
build $libcxx/strstream.o: cxx_libcxx $buildtools/$libcxx/strstream.cpp
build $libcxx/system_error.o: cxx_libcxx $buildtools/$libcxx/system_error.cpp
build $libcxx/thread.o: cxx_libcxx $buildtools/$libcxx/thread.cpp
build $libcxx/typeinfo.o: cxx_libcxx $buildtools/$libcxx/typeinfo.cpp
build $libcxx/utility.o: cxx_libcxx $buildtools/$libcxx/utility.cpp
build $libcxx/valarray.o: cxx_libcxx $buildtools/$libcxx/valarray.cpp
build $libcxx/variant.o: cxx_libcxx $buildtools/$libcxx/variant.cpp
build $libcxx/vector.o: cxx_libcxx $buildtools/$libcxx/vector.cpp
build $libcxxabi/abort_message.o: cxx_libcxxabi $buildtools/$libcxxabi/abort_message.cpp
build $libcxxabi/cxa_aux_runtime.o: cxx_libcxxabi $buildtools/$libcxxabi/cxa_aux_runtime.cpp
build $libcxxabi/cxa_default_handlers.o: cxx_libcxxabi $buildtools/$libcxxabi/cxa_default_handlers.cpp
build $libcxxabi/cxa_demangle.o: cxx_libcxxabi $buildtools/$libcxxabi/cxa_demangle.cpp
build $libcxxabi/cxa_exception_storage.o: cxx_libcxxabi $buildtools/$libcxxabi/cxa_exception_storage.cpp
build $libcxxabi/cxa_guard.o: cxx_libcxxabi $buildtools/$libcxxabi/cxa_guard.cpp
build $libcxxabi/cxa_handlers.o: cxx_libcxxabi $buildtools/$libcxxabi/cxa_handlers.cpp
build $libcxxabi/cxa_noexception.o: cxx_libcxxabi $buildtools/$libcxxabi/cxa_noexception.cpp
build $libcxxabi/cxa_unexpected.o: cxx_libcxxabi $buildtools/$libcxxabi/cxa_unexpected.cpp
build $libcxxabi/cxa_vector.o: cxx_libcxxabi $buildtools/$libcxxabi/cxa_vector.cpp
build $libcxxabi/cxa_virtual.o: cxx_libcxxabi $buildtools/$libcxxabi/cxa_virtual.cpp
build $libcxxabi/fallback_malloc.o: cxx_libcxxabi $buildtools/$libcxxabi/fallback_malloc.cpp
build $libcxxabi/private_typeinfo.o: cxx_libcxxabi $buildtools/$libcxxabi/private_typeinfo.cpp
build $libcxxabi/stdlib_exception.o: cxx_libcxxabi $buildtools/$libcxxabi/stdlib_exception.cpp
build $libcxxabi/stdlib_stdexcept.o: cxx_libcxxabi $buildtools/$libcxxabi/stdlib_stdexcept.cpp
build $libcxxabi/stdlib_typeinfo.o: cxx_libcxxabi $buildtools/$libcxxabi/stdlib_typeinfo.cpp
build ../libc++.gn.so: link $libcxx/algorithm.o $libcxx/any.o $libcxx/bind.o $libcxx/chrono.o $libcxx/condition_variable.o $libcxx/debug.o $libcxx/exception.o $libcxx/functional.o $libcxx/future.o $libcxx/hash.o $libcxx/ios.o $libcxx/iostream.o $libcxx/locale.o $libcxx/memory.o $libcxx/mutex.o $libcxx/new.o $libcxx/optional.o $libcxx/random.o $libcxx/regex.o $libcxx/shared_mutex.o $libcxx/stdexcept.o $libcxx/string.o $libcxx/strstream.o $libcxx/system_error.o $libcxx/thread.o $libcxx/typeinfo.o $libcxx/utility.o $libcxx/valarray.o $libcxx/variant.o $libcxx/vector.o $libcxxabi/abort_message.o $libcxxabi/cxa_aux_runtime.o $libcxxabi/cxa_default_handlers.o $libcxxabi/cxa_demangle.o $libcxxabi/cxa_exception_storage.o $libcxxabi/cxa_guard.o $libcxxabi/cxa_handlers.o $libcxxabi/cxa_noexception.o $libcxxabi/cxa_unexpected.o $libcxxabi/cxa_vector.o $libcxxabi/cxa_virtual.o $libcxxabi/fallback_malloc.o $libcxxabi/private_typeinfo.o $libcxxabi/stdlib_exception.o $libcxxabi/stdlib_stdexcept.o $libcxxabi/stdlib_typeinfo.o