forked from pool/libpolyclipping
OBS-URL: https://build.opensuse.org/request/show/900220 OBS-URL: https://build.opensuse.org/package/show/graphics/libpolyclipping?expand=0&rev=3
110 lines
3.6 KiB
RPMSpec
110 lines
3.6 KiB
RPMSpec
#
|
|
# spec file for package libpolyclipping
|
|
#
|
|
# Copyright (c) 2021 SUSE LLC
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
%define packagename polyclipping
|
|
%define sonum 22
|
|
%define libname %{name}%{sonum}
|
|
Name: libpolyclipping
|
|
Version: 6.4.2
|
|
Release: 0
|
|
Summary: Polygon clipping library
|
|
License: BSL-1.0
|
|
URL: https://sourceforge.net/projects/polyclipping
|
|
Source: https://sourceforge.net/projects/polyclipping/files/clipper_ver%{version}.zip
|
|
BuildRequires: cmake
|
|
BuildRequires: dos2unix
|
|
BuildRequires: gcc-c++
|
|
BuildRequires: pkgconfig
|
|
BuildRequires: unzip
|
|
|
|
%description
|
|
This library primarily performs the boolean clipping operations -
|
|
intersection, union, difference & xor - on 2D polygons. It also performs
|
|
polygon offsetting. The library handles complex (self-intersecting) polygons,
|
|
polygons with holes and polygons with overlapping co-linear edges.
|
|
Input polygons for clipping can use EvenOdd, NonZero, Positive and Negative
|
|
filling modes. The clipping code is based on the Vatti clipping algorithm,
|
|
and outperforms other clipping libraries.
|
|
|
|
%package -n %{libname}
|
|
Summary: Polygon clipping library
|
|
|
|
%description -n %{libname}
|
|
This library primarily performs the boolean clipping operations -
|
|
intersection, union, difference & xor - on 2D polygons. It also performs
|
|
polygon offsetting. The library handles complex (self-intersecting) polygons,
|
|
polygons with holes and polygons with overlapping co-linear edges.
|
|
Input polygons for clipping can use EvenOdd, NonZero, Positive and Negative
|
|
filling modes. The clipping code is based on the Vatti clipping algorithm,
|
|
and outperforms other clipping libraries.
|
|
|
|
%package devel
|
|
Summary: Development files for %{name}
|
|
Requires: %{libname} = %{version}
|
|
|
|
%description devel
|
|
The %{packagename}-devel package contains libraries and header files for
|
|
developing applications that use %{packagename}.
|
|
|
|
%prep
|
|
%setup -qc
|
|
|
|
# Delete binaries
|
|
find . \( -name "*.exe" -o -name "*.dll" \) -delete
|
|
|
|
# Correct line ends and encodings
|
|
find . -type f -exec dos2unix -k {} \;
|
|
|
|
for filename in "Third Party/perl/perl_readme.txt" README; do
|
|
iconv -f iso8859-1 -t utf-8 "${filename}" > "${filename}".conv && \
|
|
touch -r "${filename}" "${filename}".conv && \
|
|
mv "${filename}".conv "${filename}"
|
|
done
|
|
|
|
# use proper directory for pkgconfig
|
|
sed -i 's|SET.*CMAKE_INSTALL_PKGCONFIGDIR.*|SET(CMAKE_INSTALL_PKGCONFIGDIR "${CMAKE_INSTALL_LIBDIR}/pkgconfig")|' \
|
|
cpp/CMakeLists.txt
|
|
|
|
%build
|
|
pushd cpp
|
|
%cmake
|
|
%cmake_build
|
|
popd
|
|
|
|
%install
|
|
pushd cpp
|
|
%cmake_install
|
|
# Install agg header with corrected include statement
|
|
sed -e 's/\.\.\/clipper\.hpp/clipper.hpp/' < cpp_agg/agg_conv_clipper.h > %{buildroot}/%{_includedir}/%{packagename}/agg_conv_clipper.h
|
|
popd
|
|
|
|
%post -n %{libname} -p /sbin/ldconfig
|
|
%postun -n %{libname} -p /sbin/ldconfig
|
|
|
|
%files -n %{libname}
|
|
%license License.txt
|
|
%{_libdir}/lib%{packagename}.so.%{sonum}*
|
|
|
|
%files devel
|
|
%doc README Documentation
|
|
%{_includedir}/%{packagename}/
|
|
%{_libdir}/lib%{packagename}.so
|
|
%{_libdir}/pkgconfig/%{packagename}.pc
|
|
|
|
%changelog
|