[packages/fuzzylite] - new
baggins
baggins at pld-linux.org
Sun Oct 29 00:40:51 CEST 2023
commit d7d5a18364ef4878176fc83ee23434e9074ae272
Author: Jan Rękorajski <baggins at pld-linux.org>
Date: Sat Oct 28 23:43:20 2023 +0200
- new
cxxflags.patch | 13 +++++++
fuzzylite.spec | 110 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
libdir.patch | 11 ++++++
soname.patch | 20 +++++++++++
4 files changed, 154 insertions(+)
---
diff --git a/fuzzylite.spec b/fuzzylite.spec
new file mode 100644
index 0000000..1d21cc5
--- /dev/null
+++ b/fuzzylite.spec
@@ -0,0 +1,110 @@
+#
+# Conditional build:
+%bcond_without static_libs # static libraries
+#
+Summary: A Fuzzy Logic Control Library in C++
+Name: fuzzylite
+Version: 6.0
+Release: 0.1
+License: GPL v3
+Group: Libraries
+Source0: https://github.com/fuzzylite/fuzzylite/archive/refs/tags/v%{version}/%{name}-%{version}.tar.gz
+# Source0-md5: 34f3e1b27aa2abd9210b7d90f9d45785
+Patch0: cxxflags.patch
+Patch1: soname.patch
+Patch2: libdir.patch
+URL: https://github.com/fuzzylite/fuzzylite/
+BuildRequires: cmake
+BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+The goal of the FuzzyLite Libraries is to easily design and
+efficiently operate fuzzy logic controllers following an
+object-oriented programming model without relying on external
+libraries.
+
+%package common
+Summary: Common files for %{name} library
+Summary(pl.UTF-8): Wspólne pliki biblioteki %{name}
+Group: Libraries
+Requires: %{name} = %{version}-%{release}
+
+%description common
+Common files for %{name} library.
+
+%description common -l pl.UTF-8
+Wspólne pliki biblioteki %{name}.
+
+%package devel
+Summary: Header files for %{name} library
+Summary(pl.UTF-8): Pliki nagłówkowe biblioteki %{name}
+Group: Development/Libraries
+Requires: %{name} = %{version}-%{release}
+
+%description devel
+Header files for %{name} library.
+
+%description devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki %{name}.
+
+%package static
+Summary: Static %{name} library
+Summary(pl.UTF-8): Statyczna biblioteka %{name}
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+
+%description static
+Static %{name} library.
+
+%description static -l pl.UTF-8
+Statyczna biblioteka %{name}.
+
+%prep
+%setup -q
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
+
+%build
+mkdir -p build
+cd build
+%cmake ../fuzzylite \
+ %cmake_on_off static_libs FL_BUILD_STATIC \
+ -DFL_BUILD_TESTS=NO
+
+%{__make}
+
+%install
+rm -rf $RPM_BUILD_ROOT
+
+%{__make} -C build install \
+ DESTDIR=$RPM_BUILD_ROOT
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post -p /sbin/ldconfig
+%postun -p /sbin/ldconfig
+
+%files
+%defattr(644,root,root,755)
+%doc AUTHOR README.md THANKS
+%attr(755,root,root) %{_libdir}/libfuzzylite.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libfuzzylite.so.6
+
+%files common
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/fuzzylite
+
+%files devel
+%defattr(644,root,root,755)
+%doc CHANGELOG NEWS
+%attr(755,root,root) %{_libdir}/libfuzzylite.so
+%{_includedir}/fl
+%{_pkgconfigdir}/fuzzylite.pc
+
+%if %{with static_libs}
+%files static
+%defattr(644,root,root,755)
+%{_libdir}/libfuzzylite.a
+%endif
diff --git a/cxxflags.patch b/cxxflags.patch
new file mode 100644
index 0000000..1e442d3
--- /dev/null
+++ b/cxxflags.patch
@@ -0,0 +1,13 @@
+--- fuzzylite-6.0/fuzzylite/CMakeLists.txt~ 2017-03-26 11:40:17.000000000 +0200
++++ fuzzylite-6.0/fuzzylite/CMakeLists.txt 2023-10-28 23:11:29.422539865 +0200
+@@ -72,10 +72,6 @@
+ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY bin)
+
+ if(NOT MSVC)
+-#TODO: Remove -Werror before release.
+-#Add Unix compilation flags
+- set(CMAKE_CXX_FLAGS "-pedantic -Wall -Wextra -Werror ${CMAKE_CXX_FLAGS}")
+-
+ set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}")
+ set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}")
+
diff --git a/libdir.patch b/libdir.patch
new file mode 100644
index 0000000..428ed49
--- /dev/null
+++ b/libdir.patch
@@ -0,0 +1,11 @@
+--- fuzzylite-6.0/fuzzylite/fuzzylite.pc.in~ 2017-03-26 11:40:17.000000000 +0200
++++ fuzzylite-6.0/fuzzylite/fuzzylite.pc.in 2023-10-28 23:36:10.365687696 +0200
+@@ -1,7 +1,7 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+ exec_prefix=${prefix}
+ includedir=${exec_prefix}/include
+-libdir=${exec_prefix}/lib
++libdir=@CMAKE_INSTALL_LIBDIR@
+
+ Name: fuzzylite
+ Description: A fuzzy logic control library in C++
diff --git a/soname.patch b/soname.patch
new file mode 100644
index 0000000..f96886f
--- /dev/null
+++ b/soname.patch
@@ -0,0 +1,20 @@
+--- fuzzylite-6.0/fuzzylite/CMakeLists.txt~ 2023-10-28 23:30:40.000000000 +0200
++++ fuzzylite-6.0/fuzzylite/CMakeLists.txt 2023-10-28 23:31:30.337292953 +0200
+@@ -169,14 +169,14 @@
+ set_target_properties(fl-shared PROPERTIES OUTPUT_NAME fuzzylite)
+ set_target_properties(fl-shared PROPERTIES DEBUG_POSTFIX -debug)
+ target_compile_definitions(fl-shared PRIVATE FL_EXPORT_LIBRARY)
+- set_target_properties(fl-shared PROPERTIES VERSION 6.0)
++ set_target_properties(fl-shared PROPERTIES VERSION 6.0 SOVERSION 6)
+ target_link_libraries(fl-shared ${FL_LIBS})
+ endif()
+
+ if(FL_BUILD_STATIC)
+- set_target_properties(fl-static PROPERTIES OUTPUT_NAME fuzzylite-static)
++ set_target_properties(fl-static PROPERTIES OUTPUT_NAME fuzzylite)
+ set_target_properties(fl-static PROPERTIES DEBUG_POSTFIX -debug)
+- set_target_properties(fl-static PROPERTIES VERSION 6.0)
++ set_target_properties(fl-static PROPERTIES VERSION 6.0 SOVERSION 6)
+ target_link_libraries(fl-static ${FL_LIBS})
+ endif()
+
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/fuzzylite.git/commitdiff/d7d5a18364ef4878176fc83ee23434e9074ae272
More information about the pld-cvs-commit
mailing list