#% define bootstrap 0 Name: ldc Version: 1.32.2 Release: 1mamba Summary: The LLVM-based D Compiler Group: Applications/Development Vendor: openmamba Distribution: openmamba Packager: Silvan Calarco URL: https://wiki.dlang.org/LDC Source: https://github.com/ldc-developers/ldc.git/v%{version}/ldc-%{version}.tar.bz2 Source1: https://github.com/ldc-developers/ldc/releases/download/v%{version}/ldc2-%{version}-linux-x86_64.tar.xz Source2: https://github.com/ldc-developers/ldc/releases/download/v1.2.0/ldc2-1.2.0-linux-x86.tar.xz Source3: https://github.com/ldc-developers/ldc/releases/download/v%{version}/ldc2-%{version}-linux-aarch64.tar.xz Patch0: ldc-1.32.2-llvm-16-update_to_ir_include.patch Patch1: ldc-1.32.2-llvm-16-context_usage.patch Patch2: ldc-1.32.2-llvm-16-fix-ms_cxx_helper.patch Patch3: ldc-1.32.2-llvm-16-stop_using_aggressive_combine.patch Patch4: ldc-1.32.2-llvm-16-fix-aarch64-support.patch Patch5: ldc-1.32.2-llvm-16-use_std_optional_api.patch Patch6: ldc-1.32.2-llvm-16-add_llvm_profdata.patch Patch7: ldc-1.32.2-llvm-16.0.4-use_std_optional_api.patch License: BSD ## AUTOBUILDREQ-BEGIN BuildRequires: glibc-devel BuildRequires: libgcc BuildRequires: liblld-devel BuildRequires: libllvm-devel BuildRequires: libstdc++6-devel ## AUTOBUILDREQ-END BuildRequires: cmake BuildRequires: libllvm-devel >= 16.0.4 Requires: lib%{name} = %{?epoch:%epoch:}%{version}-%{release} %description The LLVM-based D Compiler. %package -n lib%{name} Group: System/Libraries Summary: Shared libraries for %{name} %description -n lib%{name} This package contains shared libraries for %{name}. %package -n lib%{name}-devel Group: Development/Libraries Summary: Development files for %{name} Requires: lib%{name} = %{?epoch:%epoch:}%{version}-%{release} %description -n lib%{name}-devel This package contains libraries and header files for developing applications that use %{name}. %debug_package %prep %if "%{?bootstrap}" != "" %ifarch x86_64 %setup -q -a1 %endif %ifarch %{ix86} %setup -q -a2 %endif %ifarch aarch64 %setup -q -a3 %endif %else %setup -q %endif %patch 0 -p1 -b .llvm-16-update_to_ir_include %patch 1 -p1 -b .llvm-16-context_usage %patch 2 -p1 -b .llvm-16-add_llvm_profdata %patch 3 -p1 -b .llvm-16-fix-ms_cxx_helper %patch 4 -p1 -b .llvm-16-stop_using_aggressive_combine %patch 5 -p1 -b .llvm-16-fix-aarch64-support %patch 6 -p1 -b .llvm-16-use_std_optional_api %patch 7 -p1 -b .llvm-16.0.4-use_std_optional_api %build %cmake -d build \ -DBUILD_SHARED_LIBS=BOTH \ -DBUILD_LTO_LIBS=ON \ -DD_COMPILER_FLAGS="-link-defaultlib-shared=false --flto=thin" \ -DADDITIONAL_DEFAULT_LDC_SWITCHES="\"-link-defaultlib-shared\"" \ -DINCLUDE_INSTALL_DIR=%{_includedir}/dlang/ldc \ %if "%{?bootstrap}" != "" %ifarch x86_64 -DD_COMPILER=`pwd`/../ldc2-%{version}-linux-x86_64/bin/ldmd2 %endif %ifarch aarch64 -DD_COMPILER=`pwd`/../ldc2-%{version}-linux-aarch64/bin/ldmd2 %endif %endif #%ifarch %{ix86} # -DD_COMPILER=`pwd`/../ldc2-1.2.0-linux-x86/bin/ldmd2 #%endif %make -j1 %install [ "%{buildroot}" != / ] && rm -rf "%{buildroot}" %makeinstall -C build %clean [ "%{buildroot}" != / ] && rm -rf "%{buildroot}" %post -n lib%{name} -p /sbin/ldconfig %postun -n lib%{name} -p /sbin/ldconfig %files %defattr(-,root,root) %{_sysconfdir}/ldc2.conf %{_bindir}/ldc-build-runtime %{_bindir}/ldc-profdata %{_bindir}/ldc-prune-cache %{_bindir}/ldc2 %{_bindir}/ldmd2 %{_bindir}/timetrace2txt %{_datadir}/bash-completion/completions/ldc2 %files -n lib%{name} %defattr(-,root,root) %{_libdir}/libdruntime-ldc-debug-shared.so.* %{_libdir}/libdruntime-ldc-shared.so.* #%{_libdir}/libldc-jit.so.* %{_libdir}/libphobos2-ldc-debug-shared.so.* %{_libdir}/libphobos2-ldc-shared.so.* %doc LICENSE %files -n lib%{name}-devel %defattr(-,root,root) %dir %{_includedir}/dlang/ldc %{_includedir}/dlang/ldc/* %{_libdir}/ldc_rt.dso.o %{_libdir}/libdruntime-ldc-debug-shared.so %{_libdir}/libdruntime-ldc-shared.so %{_libdir}/libdruntime-ldc*.a %{_libdir}/libphobos2-ldc-debug-shared.so %{_libdir}/libphobos2-ldc-shared.so %{_libdir}/libphobos2-ldc*.a %doc README.md %changelog * Sun May 28 2023 Automatic Build System 1.32.2-1mamba - automatic version update by autodist * Tue Apr 18 2023 Automatic Build System 1.32.1-1mamba - automatic version update by autodist * Tue Mar 14 2023 Automatic Build System 1.32.0-1mamba - automatic version update by autodist * Sun Mar 12 2023 Silvan Calarco 1.31.0-2mamba - rebuiult with more cmake flags as attempt to fix 'Error: unrecognized trait classInstanceAlignment' * Sun Feb 12 2023 Automatic Build System 1.31.0-1mamba - automatic version update by autodist * Thu Jul 21 2022 Automatic Build System 1.30.0-1mamba - automatic version update by autodist * Mon May 02 2022 Silvan Calarco 1.29.0-2mamba - rebuilt with llvm 14.0.3 * Mon Apr 11 2022 Automatic Build System 1.29.0-1mamba - automatic version update by autodist * Fri Jan 14 2022 Automatic Build System 1.28.1-1mamba - automatic version update by autodist * Sat Oct 23 2021 Automatic Build System 1.28.0-1mamba - automatic version update by autodist * Wed Aug 18 2021 Automatic Build System 1.27.1-1mamba - automatic version update by autodist * Tue May 04 2021 Automatic Build System 1.26.0-1mamba - automatic version update by autodist * Mon Mar 01 2021 Automatic Build System 1.25.1-1mamba - automatic version update by autodist * Mon Feb 22 2021 Automatic Build System 1.25.0-1mamba - automatic version update by autodist * Sat Nov 14 2020 Automatic Build System 1.24.0-1mamba - automatic version update by autodist * Thu Oct 22 2020 Silvan Calarco 1.23.0-1mamba - update to 1.23.0 * Wed May 06 2020 Silvan Calarco 1.21.0-1mamba - update to 1.21.0 * Sat Jul 13 2019 Silvan Calarco 1.16.0-1mamba - package created using the webbuild interface