%define _localstatedir %{_var} %define major 2 %define libname %mklibname prelude %{major} %define cppmajor 0 %define libcpp %mklibname preludecpp %{cppmajor} %define libnamedevel %mklibname prelude -d %define libnamestaticdevel %mklibname prelude -d -s Name: libprelude Version: 1.0.1 Release: %mkrel 4 Summary: Prelude Hybrid Intrusion Detection System Library License: GPLv2+ Group: System/Libraries URL: http://www.prelude-technologies.com/en/development/index.html Source0: https://dev.prelude-ids.com/attachments/download/241/%{name}-%{version}.tar.gz Patch0: libprelude-0.9.22-fix-str-fmt.patch Patch1: libprelude-0.9.21.3-ltdl.patch # (blino) fix build with libtool 2.4, from OpenEmbedded git Patch2: fix-ltdl-hack.patch Patch3: libprelude-gnutls3.patch Patch4: libprelude-1.0.0-gcc46.patch Patch5: libprelude-1.0.0-Fix-building-with-glibc-2.16.6.patch Patch6: libprelude-ruby.patch BuildRequires: chrpath BuildRequires: gtk-doc BuildRequires: gnutls-devel BuildRequires: libgcrypt-devel BuildRequires: zlib-devel BuildRequires: perl-devel BuildRequires: ruby-devel BuildRequires: multiarch-utils BuildRequires: libtool BuildRequires: libtool-devel BuildRequires: swig %description The Prelude Library is a collection of generic functions providing communication between the Prelude Hybrid IDS suite components. It provides a convenient interface for sending alerts to Prelude Manager with transparent SSL, failover and replication support, asynchronous events and timer interfaces, an abstracted configuration API (hooking at the commandline, the configuration line, or wide configuration, available from the Manager), and a generic plugin API. It allows you to easily turn your favorite security program into a Prelude sensor. %package -n %{libname} Summary: Prelude Hybrid Intrusion Detection System Library Group: System/Libraries Provides: %{name} = %{version}-%{release} %description -n %{libname} The Prelude Library is a collection of generic functions providing communication between the Prelude Hybrid IDS suite components. It provides a convenient interface for sending alerts to Prelude Manager with transparent SSL, failover and replication support, asynchronous events and timer interfaces, an abstracted configuration API (hooking at the commandline, the configuration line, or wide configuration, available from the Manager), and a generic plugin API. It allows you to easily turn your favorite security program into a Prelude sensor. %package -n %{libcpp} Summary: Prelude Hybrid Intrusion Detection System Library Group: System/Libraries %description -n %{libcpp} The Prelude Library is a collection of generic functions providing communication between the Prelude Hybrid IDS suite components. It provides a convenient interface for sending alerts to Prelude Manager with transparent SSL, failover and replication support, asynchronous events and timer interfaces, an abstracted configuration API (hooking at the commandline, the configuration line, or wide configuration, available from the Manager), and a generic plugin API. It allows you to easily turn your favorite security program into a Prelude sensor. %package -n %{libnamedevel} Summary: Libraries, includes, etc. for developing Prelude IDS sensors Group: Development/C Requires: %{libname} = %{version}-%{release} Requires: %{libcpp} = %{version}-%{release} Requires: libltdl-devel Provides: prelude-devel = %{version}-%{release} Obsoletes: %{libname}-devel < %{version}-%{release} %description -n %{libnamedevel} Libraries, include files, etc you can use to develop Prelude IDS sensors using the Prelude Library. The Prelude Library is a collection of generic functions providing communication between the Prelude Hybrid IDS suite componentst It provides a convenient interface for sending alerts to Prelude Manager with transparent SSL, failover and replication support, asynchronous events and timer interfaces, an abstracted configuration API (hooking at the commandline, the configuration line, or wide configuration, available from the Manager), and a generic plugin API. It allows you to easily turn your favorite security program into a Prelude sensor. %package -n %{libnamestaticdevel} Summary: Static libraries for developing Prelude IDS sensors Group: Development/C Requires: %{libnamedevel} = %{version}-%{release} Requires: libltdl-devel Provides: prelude-static-devel = %{version}-%{release} Obsoletes: %{libname}-static-devel < %{version}-%{release} %description -n %{libnamestaticdevel} Libraries, include files, etc you can use to develop Prelude IDS sensors using the Prelude Library. The Prelude Library is a collection of generic functions providing communication between the Prelude Hybrid IDS suite componentst It provides a convenient interface for sending alerts to Prelude Manager with transparent SSL, failover and replication support, asynchronous events and timer interfaces, an abstracted configuration API (hooking at the commandline, the configuration line, or wide configuration, available from the Manager), and a generic plugin API. It allows you to easily turn your favorite security program into a Prelude sensor. %package -n prelude-tools Summary: The interface for %{libname} Group: Networking/Other Requires: %{libname} = %{version}-%{release} %description -n prelude-tools Provides a convenient interface for sending alerts to Prelude Manager. %package -n python-prelude Summary: Python bindings for prelude Group: Development/Python Requires: %{libname} = %{version}-%{release} %py_requires -d %description -n python-prelude Provides python bindings for prelude. %package -n perl-prelude Summary: Perl bindings for prelude Group: Development/Perl Requires: %{libname} = %{version}-%{release} %description -n perl-prelude Provides perl bindings for prelude. %package -n ruby-prelude Summary: Ruby bindings for prelude Group: Development/Ruby Requires: %{libname} = %{version}-%{release} %description -n ruby-prelude Provides ruby bindings for prelude. %prep %setup -q %patch0 -p0 %patch1 -p0 %patch2 -p1 -b .lt24 %patch3 -p2 -b .gnutls3 %patch4 -p1 -b .gcc %patch5 -p1 -b .glibc %patch6 -p1 -b .ruby rm -f bindings/python/_PreludeEasy.cxx %{__perl} -pi -e "s|/lib/|/%{_lib}/|g" configure.in %build libtoolize --copy --force --install --ltdl autoreconf -fi %configure2_5x \ --without-included-ltdl \ --enable-static \ --enable-shared \ --with-perl-installdirs=vendor \ --with-python \ --without-included-regex \ --includedir=%{_includedir}/%{name} \ --enable-gtk-doc \ --with-html-dir=%{_docdir}/%{libnamedevel} %make ( cd bindings/perl perl Makefile.PL INSTALLDIRS=vendor make ) %install %{makeinstall_std} %{makeinstall_std} -C bindings/perl %{_bindir}/chrpath -d %{buildroot}%{_libdir}/*.so.* rm -f %{buildroot}%{_libdir}/*.la %multiarch_binaries %{buildroot}%{_bindir}/libprelude-config %files -n %{libname} %doc AUTHORS ChangeLog README INSTALL %{_libdir}/libprelude.so.%{major} %{_libdir}/libprelude.so.%{major}.* %files -n %{libcpp} %{_libdir}/libpreludecpp.so.%{cppmajor} %{_libdir}/libpreludecpp.so.%{cppmajor}.* %files -n %{libnamedevel} %doc %{_docdir}/%{libnamedevel} %{multiarch_bindir}/libprelude-config %{_bindir}/libprelude-config %{_libdir}/*.so %{_libdir}/pkgconfig/*.pc %dir %{_includedir}/libprelude %{_includedir}/libprelude/* %{_datadir}/aclocal/*.m4 %files -n %{libnamestaticdevel} %{_libdir}/*.a %files -n prelude-tools %doc AUTHORS ChangeLog README INSTALL %{_bindir}/prelude-adduser %{_bindir}/prelude-admin %{_mandir}/man1/prelude-admin.1* %dir %{_sysconfdir}/prelude %dir %{_sysconfdir}/prelude/default %dir %{_sysconfdir}/prelude/profile %attr(0644,root,root) %config(noreplace) %{_sysconfdir}/prelude/default/*.conf %dir %{_var}/spool/prelude %files -n python-prelude %{_libdir}/python*/site-packages/* %files -n perl-prelude %{perl_vendorarch}/*.pm %{perl_vendorarch}/auto/Prelude %{perl_vendorarch}/auto/PreludeEasy %files -n ruby-prelude %{ruby_sitearchdir}/* %changelog * Sat Jan 12 2013 umeabot <umeabot> 1.0.1-4.mga3 + Revision: 357992 - Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild * Thu Jan 10 2013 fwang <fwang> 1.0.1-3.mga3 + Revision: 344596 - update file list - update file list * Thu Nov 01 2012 fwang <fwang> 1.0.1-2.mga3 + Revision: 312002 - add patch from pld-linux to build with ruby 1.9 - rebuild for new ruby * Sun Sep 02 2012 fwang <fwang> 1.0.1-1.mga3 + Revision: 287174 - update file list - add fedora patch to build with glibc - fix build with latest gcc - new version 1.0.1 * Fri Jun 01 2012 pterjan <pterjan> 1.0.0-10.mga3 + Revision: 252600 - Better fix for python binding now that swig is updated * Fri Jun 01 2012 pterjan <pterjan> 1.0.0-9.mga3 + Revision: 252588 - BuildRequires swig as I am patching the interface file - Fix build of python binding - Fix build with new gnutls + fwang <fwang> - rebuild for new perl + jquelin <jquelin> - perl 5.16 rebuild * Tue Aug 02 2011 fwang <fwang> 1.0.0-6.mga2 + Revision: 131392 - rebuild for new gnutls * Sun Jun 12 2011 ahmad <ahmad> 1.0.0-5.mga2 + Revision: 104504 - Rebuild for perl-5.14.0 * Mon Feb 21 2011 ahmad <ahmad> 1.0.0-4.mga1 + Revision: 55726 - rebuild to make all pythonegg requires/provides lowercase * Wed Jan 19 2011 jquelin <jquelin> 1.0.0-3.mga1 + Revision: 23790 - rebuild * Mon Jan 17 2011 pterjan <pterjan> 1.0.0-2.mga1 + Revision: 21359 - Rebuild for python 2.7 * Sat Jan 15 2011 blino <blino> 1.0.0-1.mga1 + Revision: 19272 - add patch from OpenEmbbeded to fix build with libtool 2.4 + ahmad <ahmad> - drop unneeded scriptlets + pterjan <pterjan> - imported package libprelude