File coriolis.spec of Package coriolis

%define _unpackaged_files_terminate_build 0

#%{?sle15_python_module_pythons}
#%{?!python_module:%define python_module() python-%{**} python3-%{**}}
#%global pythons python311
%define skip_python2 1
Name:           coriolis
Version:        2.5.5
Release:        0
Summary:        Coriolis 2 VLSI CAD System
Group:          Applications/Engineering
License:        BSD-1-Clause/LGPL-1.0-only/GPL-2.0-only/Apache-1.0
URL:            https://coriolis.lip6.fr/
Packager:       Mazher Iqbal <mazher@lip6.fr>
Source0:        %{name}-%{version}.tar.gz


BuildRequires:  flex
BuildRequires:  gcc-c++
BuildRequires:  pkgconfig
BuildRequires:  bison
BuildRequires:  meson
BuildRequires:  cmake
BuildRequires:  doxygen
BuildRequires:  python3-pip
BuildRequires:  python3-devel
BuildRequires:  texlive-latex
BuildRequires:  libstdc++-devel
BuildRequires:  zlib-devel
BuildRequires:  libicu-devel
BuildRequires:  libzstd-devel
BuildRequires:  boost-devel
BuildRequires:  eigen3-devel
BuildRequires:  qwt-qt5-devel
BuildRequires:  libxml++-devel
BuildRequires:  rapidjson-devel
BuildRequires:  fdupes


BuildRequires:  wget
BuildRequires:  ccache
BuildRequires:  patchelf
BuildRequires:  pkgconfig
BuildRequires:  pkgconfig(zlib)
BuildRequires:  pkgconfig(libxml-2.0)
BuildRequires:  python-rpm-macros

BuildRequires:  qwt6-qt5-devel
BuildRequires:  eigen3-devel
BuildRequires:  rapidjson-devel
BuildRequires:  texlive-latex
BuildRequires:  boost-devel


%if 0%{?suse_version} > 1400 && 0%{?is_opensuse}
BuildRequires:  %{python_module pip}
BuildRequires:  %{python_module devel}
BuildRequires:  %{python_module setuptools}
BuildRequires:  libqt5-qtbase-devel
BuildRequires:  zlib-devel-static
BuildRequires:  libxslt-tools
BuildRequires:  clang >= 15
BuildRequires:  clang-tools >= 15
BuildRequires:  cmake(Qt5Core)
BuildRequires:  cmake(Qt5Gui)
BuildRequires:  cmake(Qt5LinguistTools)
BuildRequires:  cmake(Qt5Widgets)
BuildRequires:  libboost_python3-devel
BuildRequires:  libboost_system-devel
BuildRequires:  libboost_thread-devel
BuildRequires:  libboost_program_options-devel
BuildRequires:  libboost_filesystem-devel
BuildRequires:  libboost_iostreams-devel
BuildRequires:  libboost_system-devel
BuildRequires:  libboost_regex-devel
BuildRequires:  libboost_graph-devel
BuildRequires:  libboost_wave-devel
BuildRequires:  libboost_coroutine-devel
BuildRequires:  libboost_headers-devel
BuildRequires:  libboost_context-devel
BuildRequires:  libboost_test-devel
%endif

%if 0%{?suse_version} > 1600 && 0%{?is_opensuse}
#BuildRequires:  gcc-c++ >= 14
#BuildRequires:  libstdc++-devel => 14
BuildRequires:  %{python_module pdm}
BuildRequires:  %{python_module pyproject-metadata >= 0.7.1}
%endif

%if 0%{?sle_version} == 150600 && 0%{?is_opensuse}
BuildRequires:  python311-wheel
BuildRequires:  python311-packaging
BuildRequires:  python311-pyproject-metadata
BuildRequires:  gcc-c++ >= 7
BuildRequires:  libstdc++-devel => 7
BuildRequires:  python311-pip
BuildRequires:  python311-devel
BuildRequires:  python311-setuptools

%endif

#ALmaLinux-9
%if 0%{?rhel} == 9
BuildRequires:  clang
BuildRequires:  clang-devel
BuildRequires:  python3-build
BuildRequires:  bzip2-devel
BuildRequires:  python3-pdm-pep517
BuildRequires:  expat-devel
BuildRequires:  libbz2-devel
BuildRequires:  libexpat-devel
%endif

#opensue
%if 0%{?suse_version} > 1400 && 0%{?is_opensuse}
Requires(post): glibc
%else
Requires(post): ldconfig
%endif

Requires:       boost >= 1.53.0
#%python_subpackages 

%description
Coriolis is the new CAD tool suite intended to replace the
physical backend flow of Alliance.


%prep
%autosetup -p1  -n %{name}-%{version}


%build
%pyproject_wheel

%install
%pyproject_install
%fdupes %{buildroot}/%{python_sitearch}/%{name}/-%{version}


%clean
 if [ -d %{buildroot} ]; then rm -r %{buildroot}; fi


#%post   -p /sbin/ldconfig

#%postun -p /sbin/ldconfig

%files %{python_files}
%defattr(-,root,root,-)
%if 0%{?sle_version} == 150600 && 0%{?is_opensuse}
%dir /usr/lib64/python3.11/site-packages/coriolis/
/usr/lib64/python3.11/site-packages/coriolis/*
%else
%{python3_sitearch}/coriolis/
%endif
%{_bindir}/*
%{_prefix}/include/*

#%dir /usr/lib64/python3.11/site-packages/.coriolis.mesonpy.libs/
#%dir /usr/lib64/python3.11/site-packages/coriolis-2.5.5.dist-info/
#/usr/lib64/python3.11/site-packages/.coriolis.mesonpy.libs/*
#/usr/lib64/python3.11/site-packages/coriolis-2.5.5.dist-info/*


%changelog
* Wed Mar 06 2024 Mazher IQBAL
- Files section is updated. 

* Mon Jan 15 2024 Mazher IQBAL
- Coriolis-docs RPM is generated. 

* Fri Aug 18 2023 Mazher IQBAL
- First coriolis RPM is generated.


openSUSE Build Service is sponsored by