# Copyright (c) 2008, 2009 David Sugar, Tycho Softworks. # This file is free software; as a special exception the author gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. Name: ucommon Summary: Portable C++ framework for threads and sockets Version: 7.0.1 Release: %mkrel 1 License: LGPLv3+ Group: Development/C++ URL: https://www.gnu.org/software/commoncpp/ # https://ftp.gnu.org/gnu/commoncpp/%%{name}-%%{version}.tar.gz Source0: https://git.savannah.gnu.org/cgit/commoncpp.git/snapshot/commoncpp-%{version}.tar.gz BuildRequires: doxygen BuildRequires: graphviz BuildRequires: gnutls-devel BuildRequires: cmake %description GNU uCommon C++ is a lightweight library to facilitate using C++ design patterns even for very deeply embedded applications, such as for systems using uClibc along with POSIX threading support. For this reason, uCommon disables language features that consume memory or introduce runtime overhead. uCommon introduces some design patterns from Objective-C, such as reference counted objects, memory pools, and smart pointers. uCommon introduces some new concepts for handling of thread locking and synchronization. #------------------------------------------------------------------------------ %define ucommon_major 8 %define libucommon %mklibname ucommon %{ucommon_major} %package -n %libucommon Summary: Runtime library for %{name} Group: System/Libraries Provides: %{name} = %{version}-%{release} %description -n %libucommon GNU uCommon C++ is a lightweight library to facilitate using C++ design patterns even for very deeply embedded applications. This package provides the runtime library. %files -n %libucommon %doc AUTHORS README COPYING COPYING.LESSER COPYRIGHT NEWS SUPPORT ChangeLog %{_libdir}/libucommon.so.%{ucommon_major}{,.*} %{_libdir}/libusecure.so.%{ucommon_major}{,.*} %{_libdir}/libcommoncpp.so.%{ucommon_major}{,.*} #------------------------------------------------------------------------------ %package bin Group: Development/Tools Summary: ucommon system and support applications Requires: %{libucommon} = %{version}-%{release} %description bin This is a collection of command line tools that use various aspects of the ucommon library. Some may be needed to prepare files or for development of applications. %files bin %{_bindir}/args %{_mandir}/man1/args.* %{_bindir}/car %{_mandir}/man1/car.* %{_bindir}/mdsum %{_mandir}/man1/mdsum.* %{_bindir}/scrub-files %{_mandir}/man1/scrub-files.* %{_bindir}/sockaddr %{_mandir}/man1/sockaddr.* %{_bindir}/zerofill %{_mandir}/man1/zerofill.* %{_bindir}/pdetach %{_mandir}/man1/pdetach.* %{_bindir}/keywait %{_mandir}/man1/keywait.1.* %{_bindir}/urlout %{_mandir}/man1/urlout.1.* #------------------------------------------------------------------------------ %define ucommondevel %mklibname ucommon -d %package -n %ucommondevel Group: Development/C++ Summary: Headers for building uCommon applications Requires: %{libucommon} = %{version}-%{release} Requires: %{name}-bin = %{version}-%{release} Provides: %{name}-devel = %{version}-%{release} Provides: lib%{name}-devel = %{version}-%{release} %description -n %ucommondevel This package provides header and support files needed for building applications that use the uCommon library and frameworks. %files -n %ucommondevel %{_libdir}/*.so %{_includedir}/ucommon/ %{_includedir}/commoncpp/ %{_libdir}/pkgconfig/*.pc %{_bindir}/ucommon-config %{_bindir}/commoncpp-config %{_mandir}/man1/ucommon-config.* %{_mandir}/man1/commoncpp-config.* %dir %{_datadir}/ucommon %dir %{_datadir}/ucommon/cmake %{_datadir}/ucommon/cmake/Cape*.cmake #------------------------------------------------------------------------------ %package doc Group: Documentation Summary: Generated class documentation for uCommon BuildArch: noarch %description doc Generated class documentation for GNU uCommon library from header files, html browsable. %files doc %doc build/doc/html #------------------------------------------------------------------------------ %prep %autosetup -p1 -n commoncpp-%{version} %build %cmake \ -DCMAKE_CXX_STANDARD=14 \ -DCRYPTO_OPENSSL=OFF %cmake_build %cmake_build -t doc %install %cmake_install %{__chmod} 0755 %{buildroot}%{_bindir}/ucommon-config %{__chmod} 0755 %{buildroot}%{_bindir}/commoncpp-config %changelog * Tue Dec 06 2022 daviddavid <daviddavid> 7.0.1-1.mga9 + Revision: 1918453 - new version: 7.0.1 * Mon Aug 29 2022 wally <wally> 7.0.0-9.mga9 + Revision: 1881611 - switch to gnutls - build using C++14 - rebuild for openssl 3.0.0 + umeabot <umeabot> - Mageia 9 Mass Rebuild * Mon Oct 26 2020 wally <wally> 7.0.0-7.mga8 + Revision: 1639703 - add FreeBSD patch to build with openssl 1.1 - drop second summary from .spec - fix cmake macro call * Fri Feb 14 2020 daviddavid <daviddavid> 7.0.0-6.mga8 + Revision: 1517920 - use new cmake macros + umeabot <umeabot> - Mageia 8 Mass Rebuild * Sun Sep 23 2018 umeabot <umeabot> 7.0.0-5.mga7 + Revision: 1301490 - Mageia 7 Mass Rebuild * Wed Nov 22 2017 tv <tv> 7.0.0-4.mga7 + Revision: 1178697 - rebuild for new openssl * Thu Oct 05 2017 daviddavid <daviddavid> 7.0.0-3.mga7 + Revision: 1169114 - rebuild against compat-openssl10 * Thu Mar 03 2016 umeabot <umeabot> 7.0.0-2.mga6 + Revision: 984688 - Rebuild for openssl * Mon Jan 04 2016 anaselli <anaselli> 7.0.0-1.mga6 + Revision: 919460 - new 7.0.0 * Sun Jan 11 2015 anaselli <anaselli> 6.3.0-1.mga5 + Revision: 809917 - new version 6.3.0 * Wed Oct 15 2014 umeabot <umeabot> 6.1.10-3.mga5 + Revision: 739692 - Second Mageia 5 Mass Rebuild * Tue Sep 16 2014 umeabot <umeabot> 6.1.10-2.mga5 + Revision: 690011 - Mageia 5 Mass Rebuild * Sun Aug 24 2014 anaselli <anaselli> 6.1.10-1.mga5 + Revision: 667145 - new version 6.1.10 * Sun Jul 13 2014 anaselli <anaselli> 6.1.9-1.mga5 + Revision: 651775 - new version 6.1.9 * Sun Jun 08 2014 anaselli <anaselli> 6.1.6-1.mga5 + Revision: 634841 - New version 6.1.6 * Thu May 01 2014 anaselli <anaselli> 6.1.1-1.mga5 + Revision: 619333 - new version 6.1.1 * Fri Mar 07 2014 anaselli <anaselli> 6.1.0-1.mga5 + Revision: 600951 - new upstream version 6.1.0 * Mon Oct 21 2013 umeabot <umeabot> 6.0.7-2.mga4 + Revision: 537859 - Mageia 4 Mass Rebuild * Fri Sep 27 2013 anaselli <anaselli> 6.0.7-1.mga4 + Revision: 488014 - New version 6.0.7 * Tue Jul 02 2013 dams <dams> 6.0.6-1.mga4 + Revision: 449531 - new version 6.0.6 + anaselli <anaselli> - removed old source * Wed Jun 26 2013 anaselli <anaselli> 6.0.5-1.mga4 + Revision: 447326 - New version 6.0.5 * Mon Jan 14 2013 umeabot <umeabot> 6.0.3-2.mga3 + Revision: 384944 - Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild * Thu Dec 27 2012 anaselli <anaselli> 6.0.3-1.mga3 + Revision: 335716 - new upstream version 6.0.3 * Fri Nov 30 2012 anaselli <anaselli> 6.0.2-1.mga3 + Revision: 323540 - New version 6.0.2 * Wed Oct 17 2012 malo <malo> 5.5.0-2.mga3 + Revision: 307657 - update RPM group * Thu Sep 06 2012 anaselli <anaselli> 5.5.0-1.mga3 + Revision: 288816 - new version 5.5.0 * Tue Jun 19 2012 anaselli <anaselli> 5.2.2-1.mga3 + Revision: 261958 - New upstream version 5.2.2 * Sat Feb 18 2012 anaselli <anaselli> 5.2.1-1.mga2 + Revision: 210366 - New upstream bug fixing release 5.2.1 - removed patches accepted upstream * Thu Feb 09 2012 anaselli <anaselli> 5.2.0-1.mga2 + Revision: 206696 - new 5.2.0 * Sat Jan 28 2012 fwang <fwang> 5.1.1-2.mga2 + Revision: 202705 - there is no use install man pages again - fix install dir - mark doc package as noarch * Tue Jan 03 2012 anaselli <anaselli> 5.1.1-1.mga2 + Revision: 190181 - new ucommon 5.1.1 - Added back documentation Changed for mageia library policy * Mon Dec 05 2011 anaselli <anaselli> 5.0.7-1.mga2 + Revision: 176964 - disabled doc at the moment for new doxygen build problem - new version 5.0.7 * Tue Oct 25 2011 anaselli <anaselli> 5.0.6-1.mga2 + Revision: 158115 - new version 5.0.6 * Tue Jul 12 2011 anaselli <anaselli> 5.0.4-2.mga2 + Revision: 123105 - Removed useless patch * Tue Jul 12 2011 anaselli <anaselli> 5.0.4-1.mga2 + Revision: 123068 - New version 5.0.4 * Thu Jun 16 2011 anaselli <anaselli> 5.0.3-1.mga2 + Revision: 108262 - new version 5.0.3 * Thu Apr 14 2011 anaselli <anaselli> 4.3.1-1.mga1 + Revision: 84810 - new version 4.3.1 * Thu Mar 24 2011 boklm <boklm> 4.1.7-4.mga1 + Revision: 76213 - rebuild for bug #497 * Thu Mar 17 2011 anaselli <anaselli> 4.1.7-3.mga1 + Revision: 73491 - fixed rpm groups, according to rpmlint * Thu Mar 17 2011 anaselli <anaselli> 4.1.7-2.mga1 + Revision: 73429 - fixed Group * Sun Mar 13 2011 anaselli <anaselli> 4.1.7-1.mga1 + Revision: 70309 - imported package ucommon * Sat Mar 12 2011 Angelo Naselli <anaselli@linux.it> - 4.1.7-1.mga - imported in mageia - used cmake instead of configure * Sat Feb 26 2011 David Sugar <dyfet@gnutelephony.org> - 4.1.6-0 - change to security model for memory mapped objects