Hello community,

here is the log from the commit of package ldc for openSUSE:Factory checked in 
at 2019-01-24 14:12:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ldc (Old)
 and      /work/SRC/openSUSE:Factory/.ldc.new.28833 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ldc"

Thu Jan 24 14:12:22 2019 rev:6 rq:667604 version:1.13.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/ldc/ldc.changes  2019-01-15 09:16:02.514254121 
+0100
+++ /work/SRC/openSUSE:Factory/.ldc.new.28833/ldc.changes       2019-01-24 
14:12:24.427432252 +0100
@@ -1,0 +2,8 @@
+Mon Jan 21 09:31:49 UTC 2019 - Guillaume GARDET <[email protected]>
+
+- Enable bootstrap again for all flavours, otherwise ldc will require old 
+  .so file instead of new one
+- Use ldc 1.12.0 as intermediate build on 32-bit, due to upstream bug:
+  * https://github.com/ldc-developers/ldc/issues/2947
+
+-------------------------------------------------------------------

New:
----
  ldc-1.12.0-src.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ ldc.spec ++++++
--- /var/tmp/diff_new_pack.Ft6xuj/_old  2019-01-24 14:12:25.019431569 +0100
+++ /var/tmp/diff_new_pack.Ft6xuj/_new  2019-01-24 14:12:25.019431569 +0100
@@ -20,13 +20,20 @@
 %define lname_runtime libdruntime-%{name}
 %define lname_phobos  libphobos2-%{name}
 %define _bashcompletionsdir %{_datadir}/bash-completion/completions
-# Do not bootstrap in Tumbleweed, and Leap 15+ as LDC is already available
-%if 0%{suse_version} >= 1500
-%bcond_with ldc_bootstrap
-%else
+
+# Do bootstrap (even in Tumbleweed, and Leap 15+), otherwise LDC will build
+# against old installed .so instead of new built one
 %bcond_without ldc_bootstrap
+
+%ifarch %{ix86} %arm
+# 32-bit needs 1.12.0 intermediate build due to: 
https://github.com/ldc-developers/ldc/issues/2947
+%bcond_without 1_12_0_intermediate
+%else
+%bcond_with 1_12_0_intermediate
 %endif
+
 %bcond_with ldc_tests
+
 Name:           ldc
 Version:        1.13.0
 Release:        0
@@ -55,6 +62,10 @@
 %if %{with ldc_bootstrap}
 # v0.17.6 is the last version buildable with a C++ compiler, so use it for 
bootstrapping
 Source10:       
https://github.com/ldc-developers/ldc/releases/download/v0.17.6/ldc-0.17.6-src.tar.gz
+%if %{with 1_12_0_intermediate}
+# 1.12.0 is needed to build on 32-bit: 
https://github.com/ldc-developers/ldc/issues/2947
+Source11:       
https://github.com/ldc-developers/ldc/releases/download/v1.12.0/ldc-1.12.0-src.tar.gz
+%endif
 %endif
 %if %{with ldc_tests}
 BuildRequires:  gcc-c++
@@ -132,6 +143,12 @@
 tar xf %{SOURCE10}
 pushd ldc-0.17.6-src
 popd
+%if %{with 1_12_0_intermediate}
+tar xf %{SOURCE11}
+pushd ldc-1.12.0-src
+%patch0 -p1
+popd
+%endif
 %endif
 
 %build
@@ -152,6 +169,25 @@
 make %{?_smp_mflags}
 popd
 popd
+%if %{with 1_12_0_intermediate}
+pushd ldc-1.12.0-src
+#Needs to be compiled with clang, but opensuse_rules.cmake forces gcc so 
disable rule
+touch ./no-suse-rules
+mkdir build && pushd build
+# FIXME: you should use %%cmake macros
+cmake \
+    -DCMAKE_USER_MAKE_RULES_OVERRIDE=./no-suse-rules \
+    -DCMAKE_C_COMPILER="%{_bindir}/clang" \
+    -DCMAKE_CXX_COMPILER="%{_bindir}/clang++" \
+    -DINCLUDE_INSTALL_DIR:PATH=%{_includedir}/d \
+    -DD_COMPILER:PATH=`pwd`/../../ldc-0.17.6-src/build/bin/ldmd2 \
+    -DCMAKE_CXX_FLAGS="-std=c++11" \
+    -DCMAKE_C_FLAGS="-fPIC" \
+    ..
+make %{?_smp_mflags}
+popd
+popd
+%endif
 %endif
 #Needs to be compiled with clang, but opensuse_rules.cmake forces gcc so 
disable rule
 touch no-suse-rules
@@ -161,8 +197,12 @@
     -DCMAKE_CXX_COMPILER="%{_bindir}/clang++" \
     -DINCLUDE_INSTALL_DIR:PATH=%{_includedir}/d \
 %if %{with ldc_bootstrap}
+%if %{with 1_12_0_intermediate}
+    -DD_COMPILER:PATH=`pwd`/../ldc-1.12.0-src/build/bin/ldmd2 \
+%else
     -DD_COMPILER:PATH=`pwd`/../ldc-0.17.6-src/build/bin/ldmd2 \
 %endif
+%endif
     -DCMAKE_CXX_FLAGS="-std=c++11"
 make %{?_smp_mflags}
 


Reply via email to