rtems/llvm: Add support to build llvm on Windows.

This commit is contained in:
Chris Johns 2019-10-25 09:16:13 +11:00
parent a9815d91f0
commit 7d1ce7aa72

View File

@ -58,6 +58,18 @@ URL: http://llvm.org/
%define lldb_codesign_identity %{nil} %define lldb_codesign_identity %{nil}
%endif %endif
%if %{_build_os} == win32
%define llvm_build_tools CXX=clang++ CC=clang
%else
%define llvm_build_tools %{nil}
%endif
%if %{defined with_llvm_verbose}
%define llvm_verbose VERBOSE=1
%else
%define llvm_verbose %{nil}
%endif
# #
# Prepare the source code. # Prepare the source code.
# #
@ -74,36 +86,36 @@ URL: http://llvm.org/
source_dir_llvm=${llvm_source} source_dir_llvm=${llvm_source}
%source setup llvm -q %source setup llvm -q -E
%{__mv} llvm-%{llvm_version}.src ${source_dir_llvm} %{__mv} llvm-%{llvm_version}.src ${source_dir_llvm}
%source setup cfe -q %source setup cfe -q -E
%{__mv} cfe-%{llvm_version}.src ${source_dir_llvm}/tools/clang %{__mv} cfe-%{llvm_version}.src ${source_dir_llvm}/tools/clang
%source setup clang-tools-extra -q %source setup clang-tools-extra -q -E
%{__mv} clang-tools-extra-%{llvm_version}.src ${source_dir_llvm}/tools/clang/extra %{__mv} clang-tools-extra-%{llvm_version}.src ${source_dir_llvm}/tools/clang/extra
%source setup compiler-rt -q %source setup compiler-rt -q -E
%{__mv} compiler-rt-%{llvm_version}.src ${source_dir_llvm}/projects/compiler-rt %{__mv} compiler-rt-%{llvm_version}.src ${source_dir_llvm}/projects/compiler-rt
%source setup libcxx -q %source setup libcxx -q -E
%{__mv} libcxx-%{llvm_version}.src ${source_dir_llvm}/projects/libcxx %{__mv} libcxx-%{llvm_version}.src ${source_dir_llvm}/projects/libcxx
%source setup libcxxabi -q %source setup libcxxabi -q -E
%{__mv} libcxxabi-%{llvm_version}.src ${source_dir_llvm}/projects/libcxxabi %{__mv} libcxxabi-%{llvm_version}.src ${source_dir_llvm}/projects/libcxxabi
%source setup libunwind -q %source setup libunwind -q -E
%{__mv} libunwind-%{llvm_version}.src ${source_dir_llvm}/projects/libunwind %{__mv} libunwind-%{llvm_version}.src ${source_dir_llvm}/projects/libunwind
%source setup lld -q %source setup lld -q -E
%{__mv} lld-%{llvm_version}.src ${source_dir_llvm}/tools/lld %{__mv} lld-%{llvm_version}.src ${source_dir_llvm}/tools/lld
%if %{defined with_llvm_lldb} %if %{defined with_llvm_lldb}
%source setup lldb -q %source setup lldb -q -E
%{__mv} lldb-%{llvm_version}.src ${source_dir_llvm}/tools/lldb %{__mv} lldb-%{llvm_version}.src ${source_dir_llvm}/tools/lldb
%endif %endif
%source setup openmp -q %source setup openmp -q -E
%{__mv} openmp-%{llvm_version}.src ${source_dir_llvm}/tools/openmp %{__mv} openmp-%{llvm_version}.src ${source_dir_llvm}/tools/openmp
%patch setup llvm -p1 %patch setup llvm -p1
@ -124,8 +136,10 @@ URL: http://llvm.org/
mkdir -p ${build_dir} mkdir -p ${build_dir}
cd ${build_dir} cd ${build_dir}
%{llvm_build_tools} \
%{__cmake} -Wno-dev \ %{__cmake} -Wno-dev \
-G "Unix Makefiles" \ -G "Unix Makefiles" \
-DCMAKE_COLOR_MAKEFILE=OFF \
-DCMAKE_BUILD_TYPE=Release \ -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=%{_prefix} \ -DCMAKE_INSTALL_PREFIX=%{_prefix} \
-DPACKAGE_VERSION="%{llvm_version} (%{llvm_version_message})" \ -DPACKAGE_VERSION="%{llvm_version} (%{llvm_version_message})" \
@ -138,7 +152,7 @@ URL: http://llvm.org/
> ${version_inc}.tmp > ${version_inc}.tmp
%{__mv} ${version_inc}.tmp ${version_inc} %{__mv} ${version_inc}.tmp ${version_inc}
%{__make} %{?_smp_mflags} %{__make} %{?_smp_mflags} %{llvm_verbose}
cd ${build_top} cd ${build_top}