You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
242 lines
6.5 KiB
242 lines
6.5 KiB
Version: 0.38.0
|
|
Name: lfortran
|
|
Release: 2%{?dist}
|
|
Summary: A modern Fortran compiler
|
|
|
|
# Main code is BSD-3-Clause
|
|
# src/libasr/codegen/KaleidoscopeJIT.h is available under the Apache 2.0
|
|
# License with LLVM exception
|
|
License: BSD-3-Clause AND Apache-2.0 WITH LLVM-exception
|
|
URL: https://lfortran.org/
|
|
Source0: https://lfortran.github.io/tarballs/release/lfortran-%{version}.tar.gz
|
|
# https://github.com/lfortran/lfortran/issues/2981
|
|
ExclusiveArch: x86_64
|
|
|
|
%global with_jupyter 1
|
|
%if 0%{?fedora} < 39
|
|
# F38 has no jupyterlab
|
|
%global with_jupyter 0
|
|
%endif
|
|
%if 0%{?fedora} > 39
|
|
# F41 has too new xeus version
|
|
%global with_jupyter 0
|
|
%endif
|
|
|
|
BuildRequires: binutils-devel
|
|
BuildRequires: bison
|
|
BuildRequires: cmake
|
|
BuildRequires: fmt-devel
|
|
BuildRequires: gcc-c++
|
|
BuildRequires: json-devel
|
|
BuildRequires: libffi-devel
|
|
BuildRequires: libunwind-devel
|
|
BuildRequires: libuuid-devel
|
|
%if 0%{?fedora} > 38
|
|
BuildRequires: llvm16-devel
|
|
%else
|
|
BuildRequires: llvm-devel
|
|
%endif
|
|
BuildRequires: python3-devel
|
|
BuildRequires: rapidjson-devel
|
|
BuildRequires: re2c
|
|
%if 0%{?fedora} > 39
|
|
BuildRequires: zlib-ng-compat-devel
|
|
BuildRequires: zlib-ng-compat-static
|
|
%else
|
|
BuildRequires: zlib-devel
|
|
BuildRequires: zlib-static
|
|
%endif
|
|
%if %{with_jupyter}
|
|
# Needed for Jupyter kernel
|
|
BuildRequires: cppzmq-devel
|
|
BuildRequires: json-devel
|
|
BuildRequires: openssl-devel
|
|
BuildRequires: xeus-devel
|
|
BuildRequires: xeus-zmq-devel
|
|
BuildRequires: xtl-devel
|
|
%endif
|
|
# For backend=cpp
|
|
BuildRequires: kokkos-devel
|
|
# Not explicitly linked, hence listed here
|
|
Requires: kokkos-devel
|
|
|
|
Requires: %{name}-shared%{?_isa} = %{version}-%{release}
|
|
|
|
%global lfortran_desc \
|
|
LFortran is a modern open-source (BSD licensed) interactive Fortran \
|
|
compiler built on top of LLVM. It can execute user's code interactively \
|
|
to allow exploratory work (much like Python, MATLAB or Julia) as well as \
|
|
compile to binaries with the goal to run user's code on modern \
|
|
architectures such as multi-core CPUs and GPUs.
|
|
|
|
%description
|
|
%{lfortran_desc}
|
|
|
|
%package devel
|
|
Summary: Development headers and libraries for %{name}
|
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
|
|
%description devel
|
|
%{lfortran_desc}
|
|
|
|
This package contains development headers and libraries for %{name}.
|
|
|
|
%package static
|
|
Summary: Static runtime library for %{name}
|
|
|
|
%description static
|
|
%{lfortran_desc}
|
|
|
|
This package contains static runtime library for %{name}.
|
|
|
|
%package shared
|
|
Summary: Shared runtime library for %{name}
|
|
|
|
%description shared
|
|
%{lfortran_desc}
|
|
|
|
This package contains shared runtime library for %{name}.
|
|
|
|
%if %{with_jupyter}
|
|
%package jupyter
|
|
Summary: Jupyter kernel for %{name}
|
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
Requires: jupyterlab
|
|
Requires: python-jupyter-filesystem
|
|
|
|
%description jupyter
|
|
%{lfortran_desc}
|
|
|
|
This package contains the jupyter kernel for %{name}.
|
|
%endif
|
|
|
|
|
|
%prep
|
|
%autosetup -p1
|
|
|
|
%build
|
|
# WITH_ZSD is just used to fix static linking of llvm
|
|
# not needed on Fedora
|
|
# WASM=OFF due to lfortran/lfortran#3899
|
|
%cmake -DCMAKE_PREFIX_PATH=%{_libdir}/llvm16/ \
|
|
-DWITH_LLVM=ON \
|
|
-DWITH_RUNTIME_LIBRARY=ON \
|
|
-DWITH_FMT=ON \
|
|
-DWITH_JSON=ON \
|
|
-DWITH_KOKKOS=ON \
|
|
-DWITH_STACKTRACE=ON \
|
|
-DWITH_TARGET_WASM=OFF \
|
|
-DWITH_UNWIND=ON \
|
|
-DWITH_WHEREAMI=ON \
|
|
-DWITH_ZSTD=OFF \
|
|
-DWITH_XEUS=%{with_jupyter} \
|
|
-DWITH_ZLIB=ON
|
|
%cmake_build
|
|
|
|
%install
|
|
%cmake_install
|
|
|
|
%check
|
|
%ctest
|
|
|
|
%files
|
|
# liblfortran_runtime.so is in this package as
|
|
# lfortran calls it directly.
|
|
%doc README.md
|
|
%license LICENSE
|
|
%{_bindir}/lfortran
|
|
%{_mandir}/man1/lfortran.1.*
|
|
%{_libdir}/liblfortran_runtime.so
|
|
|
|
%files devel
|
|
%dir %{_includedir}/lfortran
|
|
%dir %{_includedir}/lfortran/impure
|
|
%{_includedir}/lfortran/impure/lfortran_intrinsics.h
|
|
%dir %{_datadir}/lfortran
|
|
%{_datadir}/lfortran/*.py
|
|
%{_libdir}/lfortran_*.mod
|
|
%{_libdir}/omp_lib.mod
|
|
|
|
%files static
|
|
%{_libdir}/liblfortran_runtime_static.a
|
|
|
|
%files shared
|
|
%{_libdir}/liblfortran_runtime.so.*
|
|
|
|
%if %{with_jupyter}
|
|
%files jupyter
|
|
%dir %{_datadir}/jupyter/kernels/fortran
|
|
%{_datadir}/jupyter/kernels/fortran/kernel.json
|
|
%endif
|
|
|
|
%changelog
|
|
* Sun Jan 05 2025 Arkady L. Shane <tigro@msvsphere-os.ru> - 0.38.0-2
|
|
- Rebuilt for MSVSphere 10
|
|
|
|
* Thu Jul 18 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.38.0-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
|
|
|
|
* Sun Jul 14 2024 Benson Muite <benson_muite@emailplus.org> - 0.38.0-1
|
|
- Version bump to v0.38.0 (bug #2296537)
|
|
|
|
* Wed Jul 03 2024 Christoph Junghans <junghans@votca.org> - 0.37.0-1
|
|
- Version bump to v0.37.0 (bug #2295521)
|
|
|
|
* Mon Jun 24 2024 Christoph Junghans <junghans@votca.org> - 0.36.1-1
|
|
- Version bump to v0.36.1 (bug #2293599)
|
|
|
|
* Thu May 30 2024 Benson Muite <benson_muite@emailplus.org> - 0.36.0-1
|
|
- Version bump to v0.36.0 (bug #2283918)
|
|
|
|
* Thu Apr 18 2024 Christoph Junghans <junghans@votca.org> - 0.35.0-1
|
|
- Version bump to v0.35.0 (bug #2271254)
|
|
|
|
* Wed Jan 31 2024 Christoph Junghans <junghans@votca.org> - 0.33.1-2
|
|
- Move liblfortran_runtime.so to the right package
|
|
|
|
* Wed Jan 31 2024 Christoph Junghans <junghans@votca.org> - 0.33.1-1
|
|
- Version bump to v0.33.1
|
|
|
|
* Wed Jan 31 2024 Christoph Junghans <junghans@votca.org> - 0.33.0-1
|
|
- Version bump to v0.33.0 (bug #2261190)
|
|
|
|
* Mon Jan 29 2024 Benson Muite <benson_muite@emailplus.org> - 0.32.0-1
|
|
- Version bump to v0.32.0 (bug #2260659)
|
|
|
|
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.31.0-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
|
|
|
* Mon Jan 22 2024 Christoph Junghans <junghans@votca.org> - 0.31.0-1
|
|
- Version bump to v0.31.0 (bug #2259671)
|
|
|
|
* Fri Jan 19 2024 Christoph Junghans <junghans@votca.org> - 0.30.0-9
|
|
- Drop jupyter package on F38
|
|
|
|
* Fri Jan 19 2024 Christoph Junghans <junghans@votca.org> - 0.30.0-8
|
|
- Add kokkos dependency
|
|
|
|
* Fri Jan 19 2024 Benson Muite <benson_muite@emailplus.org> - 0.30.0-7
|
|
- Use conditional includes for llvm and zlib
|
|
|
|
* Fri Jan 19 2024 Benson Muite <benson_muite@emailplus.org> - 0.30.0-6
|
|
- Use llvm instead of llvm16 on f38
|
|
|
|
* Fri Jan 19 2024 Benson Muite <benson_muite@emailplus.org> - 0.30.0-5
|
|
- Use zlib for f39 and f38
|
|
|
|
* Tue Jan 16 2024 Benson Muite <benson_muite@emailplus.org> - 0.30.0-4
|
|
- Use zlib-ng
|
|
- Ensure all directories are owned
|
|
|
|
* Mon Jan 15 2024 Christoph Junghans <junghans@votca.org> - 0.30.0-3
|
|
- Enable WASM backend
|
|
|
|
* Wed Jan 10 2024 Christoph Junghans <junghans@votca.org> - 0.30.0-2
|
|
- More subpackages
|
|
|
|
* Thu Jan 04 2024 Christoph Junghans <junghans@votca.org> - 0.30.0-1
|
|
- Version bump v0.30.0
|
|
|
|
* Sat Oct 07 2023 Benson Muite <benson_muite@emailplus.org> - 0.21.5-1
|
|
- Initial packaging
|