|
Björn Persson |
98058fe |
Name: gnatcoll-bindings
|
|
Björn Persson |
98058fe |
Version: 2018
|
|
|
f2e90ce |
Release: 4%{?dist}
|
|
Björn Persson |
98058fe |
Summary: The GNAT Components Collection – bindings
|
|
Björn Persson |
98058fe |
Summary(sv): GNAT Components Collection – bindningar
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
License: GPLv3+
|
|
Björn Persson |
98058fe |
# The source files are GPLv3+ and GPLv2+. These combine into GPLv3+ on the
|
|
Björn Persson |
98058fe |
# binary code.
|
|
Björn Persson |
98058fe |
URL: https://github.com/AdaCore/gnatcoll-bindings
|
|
Björn Persson |
98058fe |
Source: http://mirrors.cdn.adacore.com/art/5b0ce9cfc7a4475261f97ca5#/gnatcoll-bindings-gpl-2018-src.tar.gz
|
|
Björn Persson |
98058fe |
# The long hexadecimal number is what identifies the file on the server.
|
|
Björn Persson |
98058fe |
# Don't forget to update it!
|
|
Björn Persson |
98058fe |
# The latest known address of the download page is:
|
|
Björn Persson |
98058fe |
# https://www.adacore.com/download/more
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
BuildRequires: gcc-gnat gprbuild fedora-gnat-project-common sed dos2unix
|
|
Björn Persson |
98058fe |
BuildRequires: gnatcoll-core-devel = %{version}
|
|
Björn Persson |
98058fe |
# Although it's not explicitly stated, I guess it's best to keep all the parts
|
|
Björn Persson |
98058fe |
# of Gnatcoll on the same version number.
|
|
Björn Persson |
98058fe |
BuildRequires: gmp-devel python3-devel readline-devel
|
|
Björn Persson |
98058fe |
# Build only on architectures where GPRbuild is available:
|
|
Björn Persson |
98058fe |
ExclusiveArch: %{GPRbuild_arches}
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
# Gnatcoll.Python is excluded because of undefined symbols. It can be built by
|
|
Björn Persson |
98058fe |
# passing "--with python" to RPMbuild.
|
|
Björn Persson |
98058fe |
%bcond_with python
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%global common_description_en \
|
|
Björn Persson |
98058fe |
This is the bindings module of the GNAT Components Collection. It provides \
|
|
Björn Persson |
98058fe |
bindings to GMP, Iconv, %{?with_python:Python, }Readline and Syslog. \
|
|
Björn Persson |
98058fe |
%{!?with_python:The Python binding is excluded until it works with Python 3.}
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%global common_description_sv \
|
|
Björn Persson |
98058fe |
Detta är bindningsmodulen i GNAT Components Collection. Den tillhandahåller \
|
|
Björn Persson |
98058fe |
bindningar till GMP, Iconv, %{?with_python:Python, }Readline och Syslog. \
|
|
Björn Persson |
98058fe |
%{!?with_python:Pythonbindningen är utelämnad tills den fungerar med Python 3.}
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%description %{common_description_en}
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%description -l sv %{common_description_sv}
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%package -n gnatcoll-gmp
|
|
Björn Persson |
98058fe |
Summary: The GNAT Components Collection – GMP binding
|
|
Björn Persson |
98058fe |
Summary(sv): GNAT Components Collection – GMP-bindning
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%description -n gnatcoll-gmp
|
|
Björn Persson |
98058fe |
This is the GMP component of the GNAT Components Collection. It is an interface
|
|
Björn Persson |
98058fe |
to the GNU Multiple Precision (GMP) arithmetic library.
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%description -n gnatcoll-gmp -l sv
|
|
Björn Persson |
98058fe |
Detta är GMP-komponenten i GNAT Components Collection. Den är ett gränssnitt
|
|
Björn Persson |
98058fe |
mot biblioteket GNU Multiple Precision (GMP) för godtyckligt precisa
|
|
Björn Persson |
98058fe |
beräkningar.
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%package -n gnatcoll-iconv
|
|
Björn Persson |
98058fe |
Summary: The GNAT Components Collection – Iconv binding
|
|
Björn Persson |
98058fe |
Summary(sv): GNAT Components Collection – Iconvbindning
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%description -n gnatcoll-iconv
|
|
Björn Persson |
98058fe |
This is the Iconv component of the GNAT Components Collection. It is an
|
|
Björn Persson |
98058fe |
interface to libiconv for conversion between character encodings.
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%description -n gnatcoll-iconv -l sv
|
|
Björn Persson |
98058fe |
Detta är Iconv-komponenten i GNAT Components Collection. Den är ett gränssnitt
|
|
Björn Persson |
98058fe |
mot biblioteket Iconv för omvandling mellan teckenkodningar.
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%if %{with python}
|
|
Björn Persson |
98058fe |
%package -n gnatcoll-python
|
|
Björn Persson |
98058fe |
Summary: The GNAT Components Collection – Python binding
|
|
Björn Persson |
98058fe |
Summary(sv): GNAT Components Collection – Pythonbindning
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%description -n gnatcoll-python
|
|
Björn Persson |
98058fe |
This is the Python component of the GNAT Components Collection. It is an
|
|
Björn Persson |
98058fe |
interface to the Python interpreter.
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%description -n gnatcoll-python -l sv
|
|
Björn Persson |
98058fe |
Detta är Python-komponenten i GNAT Components Collection. Den är ett gränssnitt
|
|
Björn Persson |
98058fe |
mot pythontolken.
|
|
Björn Persson |
98058fe |
%endif
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%package -n gnatcoll-readline
|
|
Björn Persson |
98058fe |
Summary: The GNAT Components Collection – Readline binding
|
|
Björn Persson |
98058fe |
Summary(sv): GNAT Components Collection – Readlinebindning
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%description -n gnatcoll-readline
|
|
Björn Persson |
98058fe |
This is the Readline component of the GNAT Components Collection. It is an
|
|
Björn Persson |
98058fe |
interface to the Readline library for interactive input from the user.
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%description -n gnatcoll-readline -l sv
|
|
Björn Persson |
98058fe |
Detta är Readline-komponenten i GNAT Components Collection. Den är ett
|
|
Björn Persson |
98058fe |
gränssnitt mot biblioteket Readline för interaktiv inmatning från användaren.
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%package -n gnatcoll-syslog
|
|
Björn Persson |
98058fe |
Summary: The GNAT Components Collection – Syslog binding
|
|
Björn Persson |
98058fe |
Summary(sv): GNAT Components Collection – Syslogbindning
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%description -n gnatcoll-syslog
|
|
Björn Persson |
98058fe |
This is the Syslog component of the GNAT Components Collection. It is an
|
|
Björn Persson |
98058fe |
interface to the system logger on Unix-like systems.
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%description -n gnatcoll-syslog -l sv
|
|
Björn Persson |
98058fe |
Detta är Syslog-komponenten i GNAT Components Collection. Den är ett gränssnitt
|
|
Björn Persson |
98058fe |
mot Unixlika operativsystems loggfunktion.
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%package devel
|
|
Björn Persson |
98058fe |
Summary: Development files for the GNAT Components Collection – bindings
|
|
Björn Persson |
98058fe |
Summary(sv): Filer för programmering med GNAT Components Collection – bindningar
|
|
Björn Persson |
98058fe |
Requires: gnatcoll-gmp%{?_isa} = %{version}-%{release}
|
|
Björn Persson |
98058fe |
Requires: gnatcoll-iconv%{?_isa} = %{version}-%{release}
|
|
Björn Persson |
98058fe |
%if %{with python}
|
|
Björn Persson |
98058fe |
Requires: gnatcoll-python%{?_isa} = %{version}-%{release}
|
|
Björn Persson |
98058fe |
%endif
|
|
Björn Persson |
98058fe |
Requires: gnatcoll-readline%{?_isa} = %{version}-%{release}
|
|
Björn Persson |
98058fe |
Requires: gnatcoll-syslog%{?_isa} = %{version}-%{release}
|
|
Björn Persson |
98058fe |
Requires: fedora-gnat-project-common gnatcoll-core-devel
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%description devel %{common_description_en}
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
The gnatcoll-bindings-devel package contains source code and linking information
|
|
Björn Persson |
98058fe |
for developing applications that use the GNAT Components Collection bindings.
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%description devel -l sv %{common_description_sv}
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
Paketet gnatcoll-bindings-devel innehåller källkod och länkningsinformation som
|
|
Björn Persson |
98058fe |
behövs för att utveckla program som använder GNAT Components Collections
|
|
Björn Persson |
98058fe |
bindningar.
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%global set_env export GNATCOLL_VERSION=%{version} \
|
|
Björn Persson |
98058fe |
export BUILD=PROD \
|
|
Björn Persson |
98058fe |
export LIBRARY_TYPE=relocatable \
|
|
Björn Persson |
98058fe |
export GNATCOLL_ICONV_OPT=@/dev/null \
|
|
Björn Persson |
98058fe |
export GNATCOLL_PYTHON_CFLAGS=`python3-config --cflags` \
|
|
Björn Persson |
98058fe |
export GNATCOLL_PYTHON_LIBS=`python3-config --ldflags`
|
|
Björn Persson |
98058fe |
# Iconv is not a separate library, but an empty GNATCOLL_ICONV_OPT doesn't
|
|
Björn Persson |
98058fe |
# prevent GPRbuild from using the default "-liconv", so it's set to a value
|
|
Björn Persson |
98058fe |
# that makes no difference.
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%prep
|
|
Björn Persson |
98058fe |
%autosetup -n gnatcoll-bindings-gpl-%{version}-src
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
# Convert line breaks.
|
|
Björn Persson |
98058fe |
dos2unix --keepdate gmp/examples/gmp_examples.gpr
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%build
|
|
Björn Persson |
98058fe |
%{set_env}
|
|
Björn Persson |
98058fe |
for subdir in gmp iconv %{?with_python:python} readline syslog ; do
|
|
Björn Persson |
98058fe |
component=gnatcoll_${subdir}
|
|
Björn Persson |
98058fe |
gprbuild -P ${subdir}/${component}.gpr %{GPRbuild_optflags}
|
|
Björn Persson |
98058fe |
done
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%install
|
|
Björn Persson |
98058fe |
%{set_env}
|
|
Björn Persson |
98058fe |
for subdir in gmp iconv %{?with_python:python} readline syslog ; do
|
|
Björn Persson |
98058fe |
component=gnatcoll_${subdir}
|
|
Björn Persson |
98058fe |
gprinstall -P ${subdir}/${component}.gpr \
|
|
Björn Persson |
98058fe |
--prefix=%{buildroot}%{_prefix} \
|
|
Björn Persson |
98058fe |
--lib-subdir=%{buildroot}%{_libdir} \
|
|
Björn Persson |
98058fe |
--ali-subdir=%{buildroot}%{_libdir}/${component} \
|
|
Björn Persson |
98058fe |
--no-lib-link -m --create-missing-dirs
|
|
Björn Persson |
98058fe |
ln --symbolic --force lib${component}.so.%{version} \
|
|
Björn Persson |
98058fe |
%{buildroot}%{_libdir}/lib${component}.so
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
# Make the generated usage project file architecture-independent.
|
|
Björn Persson |
98058fe |
sed --regexp-extended --in-place \
|
|
Björn Persson |
98058fe |
'--expression=1i with "directories";' \
|
|
Björn Persson |
98058fe |
'--expression=/^-- This project has been generated/d' \
|
|
Björn Persson |
98058fe |
'--expression=/package Linker is/,/end Linker/d' \
|
|
Björn Persson |
98058fe |
'--expression=/python_(cflags|libs)/d' \
|
|
Björn Persson |
98058fe |
'--expression=s|^( *for +Source_Dirs +use +).*;$|\1(Directories.Includedir \& "/'${component}'");|i' \
|
|
Björn Persson |
98058fe |
'--expression=s|^( *for +Library_Dir +use +).*;$|\1Directories.Libdir;|i' \
|
|
Björn Persson |
98058fe |
'--expression=s|^( *for +Library_ALI_Dir +use +).*;$|\1Directories.Libdir \& "/'${component}'";|i' \
|
|
Björn Persson |
98058fe |
%{buildroot}%{_GNAT_project_dir}/${component}.gpr
|
|
Björn Persson |
98058fe |
# The Sed commands are:
|
|
Björn Persson |
98058fe |
# 1: Insert a with clause before the first line to import the directories
|
|
Björn Persson |
98058fe |
# project.
|
|
Björn Persson |
98058fe |
# 2: Delete a comment that mentions the architecture.
|
|
Björn Persson |
98058fe |
# 3: Delete the package Linker, which contains linker parameters that a
|
|
Björn Persson |
98058fe |
# shared library normally doesn't need, and can contain architecture-
|
|
Björn Persson |
98058fe |
# specific pathnames.
|
|
Björn Persson |
98058fe |
# 4: Delete two unused variables with architecture- specific values from
|
|
Björn Persson |
98058fe |
# gnatcoll_python.gpr.
|
|
Björn Persson |
98058fe |
# 5: Replace the value of Source_Dirs with a pathname based on
|
|
Björn Persson |
98058fe |
# Directories.Includedir.
|
|
Björn Persson |
98058fe |
# 6: Replace the value of Library_Dir with Directories.Libdir.
|
|
Björn Persson |
98058fe |
# 7: Replace the value of Library_ALI_Dir with a pathname based on
|
|
Björn Persson |
98058fe |
# Directories.Libdir.
|
|
Björn Persson |
98058fe |
done
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
# GPRinstall's manifest files are architecture-specific because they contain
|
|
Björn Persson |
98058fe |
# what seems to be checksums of architecture-specific files, so they must not
|
|
Björn Persson |
98058fe |
# be under _datadir. Their function is poorly documented, but they seem to be
|
|
Björn Persson |
98058fe |
# used when GPRinstall uninstalls packages. The manifest files are therefore
|
|
Björn Persson |
98058fe |
# irrelevant in this RPM package, so delete them.
|
|
Björn Persson |
98058fe |
rm --recursive --force %{buildroot}%{_GNAT_project_dir}/manifests
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
# These files may be of some value to developers:
|
|
Björn Persson |
98058fe |
for subdir in iconv readline syslog ; do
|
|
Björn Persson |
98058fe |
mkdir --parents %{buildroot}%{_docdir}/gnatcoll/${subdir}
|
|
Björn Persson |
98058fe |
cp --preserve=timestamps ${subdir}/README.md \
|
|
Björn Persson |
98058fe |
%{buildroot}%{_docdir}/gnatcoll/${subdir}/
|
|
Björn Persson |
98058fe |
done
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
# Move the examples to their proper place.
|
|
Björn Persson |
98058fe |
mv %{buildroot}%{_datadir}/examples/gnatcoll %{buildroot}%{_docdir}/gnatcoll/examples
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
# Install the license with a single pathname that is shared by the subpackages.
|
|
Björn Persson |
98058fe |
mkdir --parents %{buildroot}%{_licensedir}/%{name}
|
|
Björn Persson |
98058fe |
cp --preserve=timestamps COPYING3 %{buildroot}%{_licensedir}/%{name}/
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%check
|
|
Björn Persson |
98058fe |
%{_rpmconfigdir}/check-rpaths
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%files -n gnatcoll-gmp
|
|
Björn Persson |
98058fe |
%{_libdir}/libgnatcoll_gmp.so.*
|
|
Björn Persson |
20d1e62 |
%license %{_licensedir}/%{name}
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%files -n gnatcoll-iconv
|
|
Björn Persson |
98058fe |
%{_libdir}/libgnatcoll_iconv.so.*
|
|
Björn Persson |
20d1e62 |
%license %{_licensedir}/%{name}
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%if %{with python}
|
|
Björn Persson |
98058fe |
%files -n gnatcoll-python
|
|
Björn Persson |
98058fe |
%{_libdir}/libgnatcoll_python.so.*
|
|
Björn Persson |
20d1e62 |
%license %{_licensedir}/%{name}
|
|
Björn Persson |
98058fe |
%endif
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%files -n gnatcoll-readline
|
|
Björn Persson |
98058fe |
%{_libdir}/libgnatcoll_readline.so.*
|
|
Björn Persson |
20d1e62 |
%license %{_licensedir}/%{name}
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%files -n gnatcoll-syslog
|
|
Björn Persson |
98058fe |
%{_libdir}/libgnatcoll_syslog.so.*
|
|
Björn Persson |
20d1e62 |
%license %{_licensedir}/%{name}
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%files devel
|
|
Björn Persson |
98058fe |
%{_includedir}/*
|
|
Björn Persson |
98058fe |
%{_libdir}/*.so
|
|
Björn Persson |
98058fe |
%{_libdir}/gnatcoll*
|
|
Björn Persson |
98058fe |
%{_GNAT_project_dir}/*
|
|
Björn Persson |
98058fe |
%{_docdir}/gnatcoll
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
%changelog
|
|
|
f2e90ce |
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2018-4
|
|
|
f2e90ce |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
|
|
f2e90ce |
|
|
Björn Persson |
20d1e62 |
* Wed May 29 2019 Björn Persson <Bjorn@Rombobjörn.se> - 2018-3
|
|
Björn Persson |
20d1e62 |
- Tagged the license file as such.
|
|
Björn Persson |
20d1e62 |
|
|
Björn Persson |
98058fe |
* Fri Mar 29 2019 Björn Persson <Bjorn@Rombobjörn.se> - 2018-2
|
|
Björn Persson |
98058fe |
- Added more macro usage, more comments and ownership of a directory.
|
|
Björn Persson |
98058fe |
|
|
Björn Persson |
98058fe |
* Sat Mar 16 2019 Björn Persson <Bjorn@Rombobjörn.se> - 2018-1
|
|
Björn Persson |
98058fe |
- new package
|