SHA256
1
0
forked from pool/julia

Accepting request 1132331 from home:uncomfyhalomacro:branches:science

- Update rpmlintrc file
- Improve specfile
- Just use unit G and number 8 for constraints file
- Fix issue looking for libLLVM-14jl.so by updating julia-hardcoded-libs.patch
- Include LD_LIBRARY_PATH 
- Also prepare for update-alternatives since juliaup is the other provider of julia
- Do not use system llvm. Use the one provided by julia as a bundled tarball
- Comment out llvm specific patchsets.

OBS-URL: https://build.opensuse.org/request/show/1132331
OBS-URL: https://build.opensuse.org/package/show/science/julia?expand=0&rev=118
This commit is contained in:
Soc Virnyl Estela 2023-12-10 15:00:31 +00:00 committed by Git OBS Bridge
parent 8e672083f8
commit 00ab71f55b
5 changed files with 65 additions and 35 deletions

View File

@ -3,7 +3,7 @@
<sandbox>kvm</sandbox>
<hardware>
<memory>
<size unit="M">8000</size>
<size unit="G">8</size>
</memory>
</hardware>
<overwrite>

View File

@ -1,16 +1,3 @@
diff --git a/stdlib/libLLVM_jll/src/libLLVM_jll.jl b/stdlib/libLLVM_jll/src/libLLVM_jll.jl
index fa45e754e5..b51812e3a8 100644
--- a/stdlib/libLLVM_jll/src/libLLVM_jll.jl
+++ b/stdlib/libLLVM_jll/src/libLLVM_jll.jl
@@ -23,7 +23,7 @@ if Sys.iswindows()
elseif Sys.isapple()
const libLLVM = "@rpath/libLLVM.dylib"
else
- const libLLVM = "libLLVM-14jl.so"
+ const libLLVM = "libLLVM-15.so"
end
function __init__()
diff --git a/stdlib/nghttp2_jll/src/nghttp2_jll.jl b/stdlib/nghttp2_jll/src/nghttp2_jll.jl
index 8b98c76ac5..77ad9e3800 100644
--- a/stdlib/nghttp2_jll/src/nghttp2_jll.jl

View File

@ -2,3 +2,8 @@
addFilter("E: devel-file-in-non-devel-package.*/usr/lib.*/julia/.*")
# Julia has sofiles that are not actually an issue
addFilter("E: arch-dependent-file-in-usr-share*")
# We should not unstrip sofiles or binaries generated from this package
# https://github.com/JuliaLang/julia/issues/17941
addFilter("unstripped-binary-or-object")
# Julia should be an exception. Otherwise, it fails to execute :)
addFilter("devel-dependency")

View File

@ -1,3 +1,27 @@
-------------------------------------------------------------------
Sun Dec 10 14:59:09 UTC 2023 - Soc Virnyl Estela <uncomfy+openbuildservice@uncomfyhalomacro.pl>
- Update rpmlintrc file
- Improve specfile
-------------------------------------------------------------------
Sun Dec 10 11:07:21 UTC 2023 - Soc Virnyl Estela <uncomfy+openbuildservice@uncomfyhalomacro.pl>
- Just use unit G and number 8 for constraints file
-------------------------------------------------------------------
Sun Dec 10 10:38:15 UTC 2023 - Soc Virnyl Estela <uncomfy+openbuildservice@uncomfyhalomacro.pl>
- Fix issue looking for libLLVM-14jl.so by updating julia-hardcoded-libs.patch
- Include LD_LIBRARY_PATH
- Also prepare for update-alternatives since juliaup is the other provider of julia
-------------------------------------------------------------------
Sat Dec 9 23:46:12 UTC 2023 - Soc Virnyl Estela <uncomfy+openbuildservice@uncomfyhalomacro.pl>
- Do not use system llvm. Use the one provided by julia as a bundled tarball
- Comment out llvm specific patchsets.
-------------------------------------------------------------------
Sat Dec 9 08:55:41 UTC 2023 - Soc Virnyl Estela <uncomfy+openbuildservice@uncomfyhalomacro.pl>

View File

@ -58,13 +58,16 @@ Patch9: https://gitlab.archlinux.org/archlinux/packaging/packages/julia/
Patch10: use-system-libuv-correctly.patch
Patch11: openlibm.patch
Patch12: llvm-link-shared.patch
Patch13: https://gitlab.archlinux.org/archlinux/packaging/packages/julia/-/raw/main/julia-hardcoded-libs.patch?ref_type=heads#/julia-hardcoded-libs.patch
# Adapted from https://gitlab.archlinux.org/archlinux/packaging/packages/julia/-/raw/main/julia-hardcoded-libs.patch?ref_type=heads
# We just remove the julia specific llvm sofile change
Patch13: julia-hardcoded-libs.patch
Patch14: mbedtls-hardcoded-libs.patch
Patch15: libblastrampoline-hardcoded-libs.patch
BuildRequires: arpack-ng-devel >= 3.3.0
BuildRequires: llvm15-devel
BuildRequires: git
BuildRequires: llvm14-devel
BuildRequires: libblastrampoline-devel
BuildRequires: lld15
BuildRequires: lld14
BuildRequires: libwhich
BuildRequires: libgit2-devel
BuildRequires: zlib-devel
@ -109,6 +112,8 @@ Requires: p7zip >= 16
Requires: readline
Requires: ca-certificates
Requires: julia-devel = %{version}
Requires(post): %{_sbindir}/update-alternatives
Requires(postun): %{_sbindir}/update-alternatives
Recommends: arpack-ng-devel
Recommends: git
Recommends: gmp-devel
@ -153,7 +158,7 @@ best-of-breed C and Fortran libraries for linear algebra, random number
generation, signal processing, and string processing.
This package is experimental and by no means supported by upstream. If you want
to use julia, please install juliaup instead
to use julia, please install juliaup instead.
%package devel
Summary: Julia development, debugging and testing files
@ -173,16 +178,16 @@ debugging Julia itself.
%prep
%setup -q -n julia-%{version}
patch -p1 -i %{PATCH1}
patch -p1 -i %{PATCH2}
patch -p1 -i %{PATCH3}
patch -p1 -i %{PATCH4}
patch -p1 -i %{PATCH5}
# patch -p1 -i %%{PATCH2}
# patch -p1 -i %%{PATCH3}
# patch -p1 -i %%{PATCH4}
# patch -p1 -i %%{PATCH5}
# libunwind 1.6 compatibility
patch -p1 -i %{PATCH6}
# Fix tests with libgit2 1.7
patch -p1 -i %{PATCH8}
# Make.inc puts it in the wrong libpath
# patch -p1 -i %{PATCH10}
# patch -p1 -i %%{PATCH10}
patch -p1 -i %{PATCH11}
patch -p1 -i %{PATCH12}
patch -p1 -i %{PATCH13}
@ -209,11 +214,6 @@ popd
sed "s/ \$(build_prefix)\\/manifest\\/zlib//" -i deps/llvm.mk
%build
# Workaround for https://github.com/JuliaLang/julia/issues/27118
%global build_cxxflags %(echo %{build_cxxflags} | sed 's/-Wp,-D_GLIBCXX_ASSERTIONS //')
# Workaround for https://github.com/JuliaLang/julia/issues/39822
# and https://bugzilla.redhat.com/show_bug.cgi?id=1928696
%global build_cflags %(echo %{build_cflags} | sed 's/-Wp,-D_GNU_SOURCE //')
%if 0%{?compat_mode} == 0
%ifarch x86_64
@ -254,6 +254,7 @@ export LDFLAGS="$LDFLAGS -latomic"
# Ref.: https://build.opensuse.org/package/show/security:tls/mbedtls
export CFLAGS="%{optflags} -Wno-stringop-overflow -Wno-maybe-uninitialized"
export CXXFLAGS="%{optflags} -Wno-stringop-overflow -Wno-maybe-uninitialized"
export LD_LIBRARY_PATH=%{_builddir}/%{buildsubdir}/build/usr/lib:%{_builddir}/%{buildsubdir}/build%{_libdir}
make %{?_smp_mflags} \
MARCH=%{julia_march} \
@ -274,7 +275,7 @@ make %{?_smp_mflags} \
sysconfdir=%{_sysconfdir} \
USE_BINARYBUILDER=0 \
USE_SYSTEM_CSL=1 \
USE_SYSTEM_LLVM=1 \
USE_SYSTEM_LLVM=0 \
USE_SYSTEM_LLD=1 \
USE_SYSTEM_LIBUNWIND=1 \
USE_SYSTEM_PCRE=1 \
@ -306,7 +307,6 @@ make %{?_smp_mflags} \
LIBLAPACKNAME=liblapack \
JLDFLAGS="$LDFLAGS" \
VERBOSE=1 \
LLVM_CONFIG=llvm-config \
TAGGED_RELEASE_BANNER="openSUSE %{suse_version} experimental build (unofficial)" \
release debug
@ -320,6 +320,7 @@ make %{?_smp_mflags} \
# Ref.: https://build.opensuse.org/package/show/security:tls/mbedtls
export CFLAGS="%{optflags} -Wno-stringop-overflow -Wno-maybe-uninitialized"
export CXXFLAGS="%{optflags} -Wno-stringop-overflow -Wno-maybe-uninitialized"
export LD_LIBRARY_PATH=%{_builddir}/%{buildsubdir}/build/usr/lib:%{_builddir}/%{buildsubdir}/build%{_libdir}
make install DESTDIR=%{buildroot} \
MARCH=%{julia_march} \
@ -340,7 +341,7 @@ make install DESTDIR=%{buildroot} \
sysconfdir=%{_sysconfdir} \
USE_BINARYBUILDER=0 \
USE_SYSTEM_CSL=1 \
USE_SYSTEM_LLVM=1 \
USE_SYSTEM_LLVM=0 \
USE_SYSTEM_LLD=1 \
USE_SYSTEM_LIBUNWIND=1 \
USE_SYSTEM_PCRE=1 \
@ -372,7 +373,6 @@ make install DESTDIR=%{buildroot} \
LIBLAPACKNAME=liblapack \
JLDFLAGS="$LDFLAGS" \
VERBOSE=1 \
LLVM_CONFIG=llvm-config \
TAGGED_RELEASE_BANNER="openSUSE %{suse_version} experimental build (unofficial)"
# GZip man page.
@ -422,15 +422,29 @@ rm %{buildroot}%{_datadir}/appdata/julia.appdata.xml
%suse_update_desktop_file -r julia Science Math
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
mv %{buildroot}%{_bindir}/julia %{buildroot}%{_bindir}/julia-base
mkdir -p %{buildroot}%{_sysconfdir}/alternatives
ln -sf %{_sysconfdir}/alternatives/julia %{buildroot}%{_bindir}/julia
%post
%{_sbindir}/update-alternatives --install %{_bindir}/julia \
julia %{_bindir}/julia-base 5
%{_sbindir}/ldconfig
%postun
if [ ! -f %{_bindir}/julia-base ] ; then
%{_sbindir}/update-alternatives --remove julia %{_bindir}/julia-base
fi
%{_sbindir}/ldconfig
%post devel -p /sbin/ldconfig
%postun devel -p /sbin/ldconfig
%files
%doc CONTRIBUTING.md NEWS.md README.md
%license LICENSE.md
%{_bindir}/julia
%ghost %{_bindir}/julia
%{_bindir}/julia-base
%dir %{_datadir}/julia
%{_datadir}/julia/base
%{_datadir}/julia/base.cache