%define sdk_install_prefix /home/owner/share/tmp/sdk_tools/lldb
%define sdk_bin_dir %{sdk_install_prefix}/bin
-%ifarch x86_64 aarch64
+%ifarch x86_64 aarch64 riscv64
%define library_dir %{install_prefix}/lib64
%define sdk_lib_dir %{sdk_install_prefix}/lib64
%define system_lib_dir /usr/lib64
%ifarch aarch64
%define ARCH aarch64
%endif
+%ifarch riscv64
+%define ARCH riscv64
+%endif
%define host_arch %{ARCH}-tizen-linux-gnu%{?ABI}
%description
This package contains the clang (C language) frontend for LLVM.
(development files)
+%ifnarch riscv64
%package -n lldb
Summary: LLDB
License: NCSA
%description -n lldb-devel
The package contains header files for the LLDB debugger.
+%endif
%package -n compiler-rt
Summary: Compiler runtime libraries
-DCMAKE_INSTALL_PREFIX=%{install_prefix} \
-DCMAKE_BUILD_TYPE=Release \
-DLLVM_ENABLE_ASSERTIONS=No \
- -DLLVM_TARGETS_TO_BUILD='X86;ARM;AArch64;BPF' \
+ -DLLVM_TARGETS_TO_BUILD='X86;ARM;AArch64;BPF;RISCV' \
-DLLVM_BUILD_LLVM_DYLIB=1 \
-DLLDB_DISABLE_LIBEDIT=1 \
-DLLDB_DISABLE_PYTHON=1 \
-DLLVM_TARGET_ARCH=%{ARCH} \
-DLLVM_HOST_TRIPLE=%{host_arch} \
-DLLDB_DISABLE_CURSES=1 \
+%ifarch riscv64
+ -DLLVM_ENABLE_PROJECTS="clang;clang-tools-extra;compiler-rt" \
+%else
-DLLVM_ENABLE_PROJECTS="clang;lldb;clang-tools-extra;compiler-rt" \
+%endif
-DLLVM_BUILD_EXAMPLES=OFF \
-DLLVM_INCLUDE_EXAMPLES=OFF \
-DLLVM_BUILD_TESTS=OFF \
%ifarch armv7l armv7hl
-DCMAKE_ASM_FLAGS="-mfpu=neon" \
%endif
-%ifarch x86_64 aarch64
+%ifarch x86_64 aarch64 riscv64
-DLLVM_LIBDIR_SUFFIX=64 \
%endif
%ifarch %ix86
ln -sf %{install_prefix}/bin/clang++-%{llvm_version} %{buildroot}%{_bindir}/g++
mkdir -p %{buildroot}%{bindir}
+
+%ifnarch riscv64
# copy lldb for sdk
mkdir -p %{buildroot}%{sdk_bin_dir}
mkdir -p %{buildroot}%{sdk_lib_dir}
ln -sf %{sdk_bin_dir}/lldb %{buildroot}%{install_prefix}/bin/
cp -P %{buildroot}%{library_dir}/liblldb.so* %{buildroot}%{sdk_lib_dir}/
+%endif
rm -rf %{buildroot}/usr/lib/debug/*
rm -rf %{buildroot}/usr/lib/libear/*
%post -n clang -p /sbin/ldconfig
%postun -n clang -p /sbin/ldconfig
+%ifnarch riscv64
%post -n lldb
echo "plugin load /usr/share/dotnet.tizen/netcoreapp/SOS/libsosplugin.so" > /root/.lldbinit
+%endif
%clean
echo Cleaning %{buildroot}
%{install_prefix}/bin/diagtool
%{install_prefix}/bin/dsymutil
%{install_prefix}/bin/hmaptool
+%ifnarch riscv64
%{install_prefix}/bin/lldb-instr
%{install_prefix}/bin/lldb-vscode
+%endif
%{install_prefix}/bin/llvm-addr2line
%{install_prefix}/bin/llvm-cfi-verify
%{install_prefix}/bin/llvm-cxxmap
%{install_prefix}/include/clang-c/*
%{install_prefix}/include/clang-tidy/*
+%ifnarch riscv64
%files -n lldb
%manifest %{name}.manifest
%defattr(-,root,root,-)
%defattr(-,root,root,-)
%{install_prefix}/include/lldb/*
%{library_dir}/liblldb*.so*
+%endif
%files -n compiler-rt
%manifest %{name}.manifest