Sisyphus repository
Last update: 1 october 2023 | SRPMs: 18631 | Visits: 37532939
en ru br
ALT Linux repos
S:0.11.5-alt2

Group :: Communications
RPM: gnunet

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs and FR  Repocop 

%def_without pgsql
Name: gnunet
Version: 0.11.5
Release: alt2

Summary: Peer-to-peer framework

License: GPLv3+
Group: Communications
Url: http://gnunet.org/
Packager: ALT QA Team <qa at packages.altlinux.org>

Source: http://ftpmirror.gnu.org/gnunet/%name-%version.tar
# (TODO: add pseudouser)
Source1: gnunetd.init.altlinux
Source2: gnunetd.service

Patch2: gnunet-0.11.0-alt-mysql8-transition.patch

BuildRequires: gcc-c++ libmysqlclient21-devel libgnurl-devel libextractor-devel libgcrypt-devel libglade-devel libncursesw-devel libsqlite3-devel zlib-devel
#BuildRequires: %_bindir/git %_bindir/svnversion libICE-devel libSM-devel
BuildRequires: glib2-devel libglpk-devel libgnutls-devel libltdl7-devel libmicrohttpd-devel libunistring-devel pkgconfig(libgtop-2.0) python-devel
BuildRequires: libpulseaudio-devel libopus-devel libogg-devel
BuildRequires: libidn2-devel libjansson-devel libzbar-devel
%if_with pgsql
BuildRequires: libpq-devel
%endif

%description
GNUnet is a peer-to-peer framework with focus on providing security. All
peer-to-peer messages in the network are confidential and authenticated.
The framework provides a transport abstraction layer and can currently
encapsulate the network traffic in UDP (IPv4 and IPv6), TCP (IPv4 and IPv6),
HTTP, or SMTP messages. GNUnet supports accounting to provide contributing
nodes with better service. The primary service build on top of the framework
is anonymous file sharing.

%package -n lib%name
Summary: Libraries needed for %name
Group: System/Libraries

%description -n lib%name
GNUnet is a peer-to-peer framework with focus on providing security. All
peer-to-peer messages in the network are confidential and authenticated.
The framework provides a transport abstraction layer and can currently
encapsulate the network traffic in UDP (IPv4 and IPv6), TCP (IPv4 and IPv6),
HTTP, or SMTP messages. GNUnet supports accounting to provide contributing
nodes with better service. The primary service build on top of the framework
is anonymous file sharing.

%package -n lib%name-devel
Summary: Headers for developing programs that will use %name
Group: Development/C
Requires: lib%name = %version-%release

%description -n lib%name-devel
This package contains the headers that programmers will need to develop
applications which will use %name.

%prep
%setup
%patch2 -p0

# broken --disable-testing

%__subst "s|ats-tests||" src/Makefile.*

%build
%autoreconf
CFLAGS="%optflags -I%_includedir/mysql"
CXXFLAGS="%optflags -I%_includedir/mysql"
export CFLAGS CXXFLAGS

# disable testing due recursive linking bug

%configure --disable-rpath --disable-testing --disable-documentation
%make_build V=1 || %make V=1

%install
# usr/bin/ld.default: warning: libgnunetblock.so.0, needed by /tmp/.private/lav/gnunet-buildroot/usr/lib64/libgnunetblockgroup.so, not found (try using -rpath or -rpath-link)
# libtool:   error: error: relink 'libgnunet_plugin_block_test.la' with the above command before installing it
export LD_LIBRARY_PATH=$(pwd)/src/block/.libs:$(pwd)/src/ats/.libs:$(pwd)/src/statistics/.libs:$(pwd)/src/json/.libs:$(pwd)/src/gnsrecord/.libs
%makeinstall_std
%find_lang %name
mkdir -p %buildroot{%_initdir,%_unitdir}
install -m0755 %SOURCE1 %buildroot%_initdir/gnunetd
install -m0644 %SOURCE2 %buildroot%_unitdir/gnunetd.service

# unpackaged files found

rm -f %buildroot%_docdir/gnunet/COPYING %buildroot%_docdir/gnunet/README

%files -f %name.lang
%doc AUTHORS ChangeLog NEWS README
%doc %_man1dir/gnunet*.1*
%doc %_man5dir/gnunet*.5*
%_bindir/gnunet-arm
%_bindir/gnunet-ats
%_bindir/gnunet-auto-share
%_bindir/gnunet-bugreport
%_bindir/gnunet-cadet
%_bindir/gnunet-config
%_bindir/gnunet-core
%_bindir/gnunet-directory
%_bindir/gnunet-dht-get
%_bindir/gnunet-dht-monitor
%_bindir/gnunet-dht-put
%_bindir/gnunet-download
#_bindir/gnunet-download-manager.scm
#%_bindir/gnunet-ecc
%_bindir/gnunet-fs
%_bindir/gnunet-gns
#_bindir/gnunet-gns-import.sh
%_bindir/gnunet-gns-proxy-setup-ca
#_bindir/gnunet-mesh
%_bindir/gnunet-namestore
%_bindir/gnunet-nat
%_bindir/gnunet-nat-auto
%_bindir/gnunet-nat-server
%_bindir/gnunet-peerinfo
%_bindir/gnunet-peerstore
#%_bindir/gnunet-pseudonym
%_bindir/gnunet-publish
%_bindir/gnunet-resolver
%_bindir/gnunet-reclaim
#%_bindir/gnunet-rsa
%_bindir/gnunet-search
%_bindir/gnunet-scalarproduct
%_bindir/gnunet-statistics
#_bindir/gnunet-template
#%_bindir/gnunet-testing
#%_bindir/gnunet-testing-run-service
%_bindir/gnunet-transport
%_bindir/gnunet-transport-certificate-creation
%_bindir/gnunet-unindex
%_bindir/gnunet-uri
%_bindir/gnunet-vpn
%_bindir/gnunet-bcd
%_bindir/gnunet-conversation
%_bindir/gnunet-conversation-test
%_bindir/gnunet-datastore
%_bindir/gnunet-identity
%_bindir/gnunet-namecache
%_bindir/gnunet-nse
%_bindir/gnunet-qr
%_bindir/gnunet-revocation
%_bindir/gnunet-zoneimport
#_bindir/gnunet-set-ibf-profiler
#_bindir/gnunet-set-profiler

#_libexecdir/gnunet/libexec/gnunet-helper-audio-playback

#_libexecdir/gnunet/libexec/gnunet-helper-audio-record
#_libexecdir/gnunet/libexec/gnunet-service-conversation



%_datadir/gnunet/
%_initdir/gnunetd
%_unitdir/gnunetd.service

%files -n lib%name
%_libdir/gnunet/
%_libdir/libgnunetarm.so.*
%_libdir/libgnunetats.so.*
%_libdir/libgnunetblock.so.*
%_libdir/libgnunetblockgroup.so.*
%_libdir/libgnunetcadet.so.*
%_libdir/libgnunetconsensus.so.*
%_libdir/libgnunetcore.so.*
%_libdir/libgnunetdatacache.so.*
%_libdir/libgnunetdatastore.so.*
%_libdir/libgnunetdht.so.*
%_libdir/libgnunetdns.so.*
#%_libdir/libgnunetdnsparser.so.*
#%_libdir/libgnunetdnsstub.so.*
%_libdir/libgnunetfragmentation.so.*
%_libdir/libgnunetfs.so.*
%_libdir/libgnunetgns.so.*
#%_libdir/libgnunetgns_common.so.*
%_libdir/libgnunethello.so.*
#%_libdir/libgnunetlockmanager.so.*
#_libdir/libgnunetmesh.so.*
#%_libdir/libgnunetmy.so.*
#%_libdir/libgnunetmysql.so.*
%_libdir/libgnunetnamestore.so.*
%_libdir/libgnunetnatauto.so.*
%_libdir/libgnunetnatnew.so.*
%_libdir/libgnunetnse.so.*
%_libdir/libgnunetnt.so.*
%_libdir/libgnunetpeerinfo.so.*
%_libdir/libgnunetpeerstore.so.*
%if_with pgsql
%_libdir/libgnunetpq.so.*
%endif
%_libdir/libgnunetreclaim.so.*
%_libdir/libgnunetreclaimattribute.so.*
%_libdir/libgnunetrest.so.*
%_libdir/libgnunetregex.so.*
%_libdir/libgnunetregexblock.so.*
%_libdir/libgnunetstatistics.so.*
%_libdir/libgnunetatsapplication.so.*
%_libdir/libgnunetatstransport.so.*
%_libdir/libgnunetscalarproduct.so.*
%_libdir/libgnunetsecretsharing.so.*
%_libdir/libgnunetsq.so.*
%_libdir/libgnunetcurl.so.*
%_libdir/libgnunetjson.so.*
#%_libdir/libgnunetjsonapi.so.*
#%_libdir/libgnunetjsonapiutils.so.*
#%_libdir/libgnunetstream.so.*
#%_libdir/libgnunettestbed.so.*
#%_libdir/libgnunettesting.so.*
%_libdir/libgnunettransport.so.*
%_libdir/libgnunettransportcore.so.*
%_libdir/libgnunettransportmonitor.so.*
%_libdir/libgnunettransportapplication.so.*
%_libdir/libgnunettransportcommunicator.so.*
#%_libdir/libgnunettun.so.*
%_libdir/libgnunetutil.so.*
%_libdir/libgnunetvpn.so.*
%_libdir/libgnunetconversation.so.*
%_libdir/libgnunetfriends.so.*
%_libdir/libgnunetgnsrecord.so.*
%_libdir/libgnunetidentity.so.*
%_libdir/libgnunetmicrophone.so.*
%_libdir/libgnunetnamecache.so.*
%_libdir/libgnunetrevocation.so.*
%_libdir/libgnunetset.so.*
%_libdir/libgnunetspeaker.so.*

%files -n lib%name-devel
%_includedir/gnunet/
%_libdir/*.so
%_pkgconfigdir/gnunetarm.pc
%_pkgconfigdir/gnunetats.pc
%_pkgconfigdir/gnunetblock.pc
%_pkgconfigdir/gnunetcadet.pc
%_pkgconfigdir/gnunetcore.pc
%_pkgconfigdir/gnunetdatacache.pc
%_pkgconfigdir/gnunetdatastore.pc
%_pkgconfigdir/gnunetdht.pc
%_pkgconfigdir/gnunetdns.pc
#%_pkgconfigdir/gnunetdnsparser.pc
#%_pkgconfigdir/gnunetdv.pc
%_pkgconfigdir/gnunetfragmentation.pc
%_pkgconfigdir/gnunetfs.pc
%_pkgconfigdir/gnunetgns.pc
%_pkgconfigdir/gnunethello.pc
#%_pkgconfigdir/gnunetlockmanager.pc
#_pkgconfigdir/gnunetmesh.pc
%_pkgconfigdir/gnunetmysql.pc
%_pkgconfigdir/gnunetnamestore.pc
%_pkgconfigdir/gnunetnat.pc
%_pkgconfigdir/gnunetnse.pc
%_pkgconfigdir/gnunetpeerinfo.pc
#_pkgconfigdir/gnunetpostgres.pc
%_pkgconfigdir/gnunetregex.pc
%_pkgconfigdir/gnunetrps.pc
%_pkgconfigdir/gnunetstatistics.pc
#%_pkgconfigdir/gnunetstream.pc
%_pkgconfigdir/gnunettestbed.pc
%_pkgconfigdir/gnunettesting.pc
%_pkgconfigdir/gnunettransport.pc
#%_pkgconfigdir/gnunettun.pc
%_pkgconfigdir/gnunetutil.pc
%_pkgconfigdir/gnunetvpn.pc

%_libdir/pkgconfig/gnunetconsensus.pc
%_libdir/pkgconfig/gnunetconversation.pc
#%_libdir/pkgconfig/gnunetdnsstub.pc
%_libdir/pkgconfig/gnunetenv.pc
%_libdir/pkgconfig/gnunetidentity.pc
%_libdir/pkgconfig/gnunetmicrophone.pc
#%_libdir/pkgconfig/gnunetmulticast.pc
#%_libdir/pkgconfig/gnunetpsyc.pc
#%_libdir/pkgconfig/gnunetpsycstore.pc
%_libdir/pkgconfig/gnunetrevocation.pc
%_libdir/pkgconfig/gnunetscalarproduct.pc
%_libdir/pkgconfig/gnunetset.pc
%_libdir/pkgconfig/gnunetspeaker.pc

%changelog

Full changelog you can see here

 
design & coding: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
current maintainer: Michael Shigorin