Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE
bitcoin.8807
bitcoin.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File bitcoin.spec of Package bitcoin.8807
# # spec file for package bitcoin # # Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # Copyright (c) 2011-2014 P Rusnak <prusnak@opensuse.org> # # 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/ # # typical altcoin changes: name, name_pretty, consensus 0, is_base 0 %define base bitcoin %define base_pretty Bitcoin %define name_pretty %{base_pretty} %define consensus 1 %define is_base 1 Name: bitcoin Version: 0.16.3 Release: 0 Summary: P2P Digital Currency License: MIT Group: Productivity/Networking/Other URL: https://%{name}.org Source0: https://github.com/%{name}/%{name}/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz Source1: %{base}d.service Source2: %{base}d.firewall Source3: %{base}d.conf BuildRequires: autoconf BuildRequires: automake BuildRequires: gcc-c++ BuildRequires: git BuildRequires: java-devel BuildRequires: lcov BuildRequires: libdb-4_8-devel BuildRequires: libminiupnpc-devel BuildRequires: libqt5-qtbase-devel BuildRequires: libtool BuildRequires: pkgconfig BuildRequires: systemd-rpm-macros BuildRequires: update-desktop-files BuildRequires: pkgconfig(Qt5Designer) BuildRequires: pkgconfig(Qt5Help) BuildRequires: pkgconfig(Qt5UiTools) BuildRequires: pkgconfig(libevent) BuildRequires: pkgconfig(libqrencode) BuildRequires: pkgconfig(libzmq) BuildRequires: pkgconfig(openssl) BuildRequires: pkgconfig(protobuf) BuildRequires: pkgconfig(python3) %{?systemd_requires} %if 0%{?suse_version} > 1315 BuildRequires: libboost_filesystem-devel BuildRequires: libboost_program_options-devel BuildRequires: libboost_test-devel BuildRequires: libboost_thread-devel %else BuildRequires: boost-devel %endif %description %{name_pretty} is a peer-to-peer electronic cash system that is completely decentralized, without the need for a central server or trusted parties. Users hold the crypto keys to their own money and transact directly with each other, with the help of a P2P network to check for double-spending. Full transaction history is stored locally at each client. This requires several GB of space, slowly growing. %package qt5 Summary: An end-user Qt5 GUI for the %{name_pretty} crypto-currency Group: Development/Libraries/Other Requires(post): update-desktop-files Requires(postun): update-desktop-files %description qt5 %{name_pretty} is a peer-to-peer electronic cash system that is completely decentralized, without the need for a central server or trusted parties. Users hold the crypto keys to their own money and transact directly with each other, with the help of a P2P network to check for double-spending. Full transaction history is stored locally at each client. This requires several GB of space, slowly growing. This package provides %{name_pretty}-Qt, a GUI for %{name_pretty} based on Qt. %package utils Summary: An end-user CLI for the %{name_pretty} crypto-currency Group: Productivity/Networking/Other %description utils %{name_pretty} is a peer-to-peer electronic cash system that is completely decentralized, without the need for a central server or trusted parties. Users hold the crypto keys to their own money and transact directly with each other, with the help of a P2P network to check for double-spending. Full transaction history is stored locally at each client. This requires several GB of space, slowly growing. This package provides %{name}-cli — a CLI tool to interact with the daemon. %if %{consensus} == 1 %package -n lib%{name}consensus0 Summary: %{name_pretty} consensus library Group: System/Libraries %description -n lib%{name}consensus0 The purpose of this library is to make the verification functionality that is critical to %{name_pretty}’s consensus available to other applications, e.g. to language bindings such as python-%{name}lib or alternative node implementations. %package -n lib%{name}consensus-devel Summary: Developmont files for %{name} consensus library Group: Development/Languages/C and C++ Requires: lib%{name}consensus0 = %{version}-%{release} %description -n lib%{name}consensus-devel The purpose of this library is to make the verification functionality that is critical to %{name_pretty}’s consensus available to other applications, e.g. to language bindings such as python-%{name}lib or alternative node implementations. This package contains development files. %endif %package -n %{name}d Summary: Headless daemon for %{name_pretty} crypto-currency Group: Development/Libraries/Other %description -n %{name}d %{name_pretty} is a peer-to-peer electronic cash system that is completely decentralized, without the need for a central server or trusted parties. Users hold the crypto keys to their own money and transact directly with each other, with the help of a P2P network to check for double-spending. Full transaction history is stored locally at each client. This requires several GB of space, slowly growing. This package provides %{name}d, headless %{name} daemon. %package test Summary: Automated tests for %{name} client Group: Development/Libraries/Other %description test %{name_pretty} is a peer-to-peer electronic cash system that is completely decentralized, without the need for a central server or trusted parties. Users hold the crypto keys to their own money and transact directly with each other, with the help of a P2P network to check for double-spending. Full transaction history is stored locally at each client. This requires several GB of space, slowly growing. This package provides automated tests for %{name}-qt5 and %{name}d. %prep %setup -q # remove 128 resolution from Icon= line sed -i s/128// contrib/debian/%{name}-qt.desktop %build autoreconf -fiv export CXXFLAGS="%{optflags} -fPIE -fPIC" export CFLAGS="%{optflags} -fPIE -fPIC" export LDFLAGS="-pie" %configure \ --with-cli=yes \ --with-daemon=yes \ --with-gui=qt5 \ --with-miniupnpc \ --with-qrencode \ %if %{consensus} == 0 --without-libs \ %endif --disable-hardening make %{?_smp_mflags} V=1 %check make %{?_smp_mflags} check %install %make_install install -Dpm 0644 share/pixmaps/%{base}256.png %{buildroot}%{_datadir}/pixmaps/%{name}.png install -Dpm 0644 contrib/debian/%{name}-qt.desktop %{buildroot}%{_datadir}/applications/%{name}-qt.desktop %suse_update_desktop_file %{buildroot}%{_datadir}/applications/%{name}-qt.desktop install -Dpm 0644 doc/man/%{name}d.1 %{buildroot}%{_mandir}/man1/%{name}d.1 install -Dpm 0644 doc/man/%{name}-qt.1 %{buildroot}%{_mandir}/man1/%{name}-qt.1 install -Dpm 0644 contrib/debian/examples/%{name}.conf %{buildroot}%{_sysconfdir}/%{name}/%{name}.conf %if !%{is_base} sed -i "s/%{base}/%{name}/g" %{SOURCE1} sed -i "s/%{base}/%{name}/g" %{SOURCE2} sed -i "s/%{base}/%{name}/g" %{SOURCE3} sed -i "s/%{base_pretty}/%{name_pretty}/g" %{SOURCE1} sed -i "s/%{base_pretty}/%{name_pretty}/g" %{SOURCE2} sed -i "s/%{base_pretty}/%{name_pretty}/g" %{SOURCE3} %endif mkdir -p %{buildroot}/%{_localstatedir}/lib/%{name} install -Dpm 0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/%{name}d mkdir %{buildroot}%{_sbindir} ln -sv %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}d install -Dpm 0644 %{SOURCE1} %{buildroot}/%{_unitdir}/%{name}d.service install -Dpm 0644 %{SOURCE3} %{buildroot}/%{_tmpfilesdir}/%{name}d.conf %if %{consensus} == 1 # do not ship these rm -f %{buildroot}%{_libdir}/lib%{name}consensus.a rm -f %{buildroot}%{_libdir}/lib%{name}consensus.la %endif %post qt5 %desktop_database_post %postun qt5 %desktop_database_postun %if %{consensus} == 1 %post -n lib%{name}consensus0 -p /sbin/ldconfig %postun -n lib%{name}consensus0 -p /sbin/ldconfig %endif %pre -n %{name}d getent group %{name} >/dev/null || groupadd -r %{name} getent passwd %{name} >/dev/null || useradd -r -g %{name} -d %{_localstatedir}/lib/%{name} -s /sbin/nologin -c "%{name_pretty} daemon" %{name} %service_add_pre %{name}d.service %post -n %{name}d %service_add_post %{name}d.service %if 0%{?suse_version} <= 1320 systemd-tmpfiles --create %{_tmpfilesdir}/%{name}d.conf >/dev/null 2>&1 || : %else %tmpfiles_create %{_tmpfilesdir}/%{name}d.conf %endif %preun -n %{name}d %service_del_preun %{name}d.service %postun -n %{name}d %service_del_postun %{name}d.service %files qt5 %license COPYING %doc README.md doc/release-notes.md %{_bindir}/%{name}-qt %{_datadir}/applications/%{name}-qt.desktop %{_mandir}/man1/%{name}-qt.1%{?ext_man} %{_datadir}/pixmaps/%{name}.png %files utils %license COPYING %doc README.md doc/release-notes.md %{_bindir}/%{name}-cli %{_bindir}/%{name}-tx %{_mandir}/man1/bitcoin-cli.1%{?ext_man} %{_mandir}/man1/bitcoin-tx.1%{?ext_man} %if %{consensus} == 1 %files -n lib%{name}consensus0 %license COPYING %doc README.md doc/release-notes.md %{_libdir}/lib%{name}consensus.so.* %files -n lib%{name}consensus-devel %license COPYING %doc README.md %{_libdir}/lib%{name}consensus.so %{_includedir}/%{name}consensus.h %{_libdir}/pkgconfig/lib%{name}consensus.pc %endif %files -n %{name}d %license COPYING %doc README.md doc/release-notes.md %{_mandir}/man1/%{name}d.1%{?ext_man} %{_bindir}/%{name}d %dir %attr(700,%{name},%{name}) %{_var}/lib/%{name} %dir %{_sysconfdir}/%{name} %config %{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/%{name}d %config(noreplace) %{_sysconfdir}/%{name}/%{name}.conf %{_unitdir}/%{name}d.service %{_sbindir}/rc%{name}d %{_tmpfilesdir}/%{name}d.conf %files test %license COPYING %doc README.md doc/release-notes.md %{_bindir}/test_%{name} %{_bindir}/test_%{name}-qt %{_bindir}/bench_%{name} %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor