Sisyphus repository
Last update: 1 october 2023 | SRPMs: 18631 | Visits: 37562604
en ru br
ALT Linux repos
S:1.2.1-alt1
5.0: 0.7.5-alt3
4.1: 0.7.4-alt2
4.0: 0.7.4-alt2
3.0: 0.7.2-alt1

Group :: File tools
RPM: pinentry

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs and FR  Repocop 

%define build_all 1
%define single_is_qt 1
%define qtdir /usr/lib/qt3

Name: pinentry
Version: 0.7.2
Release: alt1

Group: File tools
Summary: Simple PIN or passphrase entry dialog
URL: http://www.gnupg.org/
License: GPL

PreReq: alternatives >= 0.2 info-install
Requires: %name-common = %version-%release

Provides: %_bindir/%name
%if %single_is_qt
Provides: %name-qt = %version-%release
Obsoletes: %name-qt <= %version-%release
%else
Provides: %name-gtk = %version-%release
Obsoletes: %name-gtk <= %version-%release
%endif

Source0: %name-%version.tar.gz
Patch1: pinentry-0.7.2-system-assuan.patch

# Automatically added by buildreq on Tue Apr 06 2004 (-bi)

#BuildRequires: XFree86-devel XFree86-libs fontconfig freetype2 gcc-c++ glib-devel gtk+-devel libalternatives-devel libassuan-devel libcap-devel libncurses-devel libqt3-devel libstdc++-devel libtinfo-devel

#for alternatives macros

BuildPreReq: libalternatives-devel
BuildRequires: XFree86-devel XFree86-libs fontconfig
BuildRequires: freetype2 gcc-c++
BuildRequires: libassuan-devel libcap-devel libncurses-devel
BuildRequires: libqt3-devel libstdc++-devel libtinfo-devel
%if %build_all
#
BuildRequires: glib2-devel libgtk+2-devel
BuildRequires: libqt3-devel-cxx = %__gcc_version_base
# hack for apt in hasher
BuildRequires: libqt3 > 1 libqt3-devel > 1
#
%else
#
%if %single_is_qt
BuildRequires: libqt3-devel libqt3-devel-cxx = %__gcc_version_base
%else
BuildRequires: glib2-devel libgtk+2-devel
%endif
#
%endif


%description
This is simple PIN or passphrase entry dialog which
utilize the Assuan protocol as described by the aegypten project.

%package common
Group: %group
Summary: %summary
Conflicts: pinentry < 0.7.2 pinentry-curses < 0.7.2
Conflicts: pinentry-qt < 0.7.2 pinentry-gtk < 0.7.2

%package curses
Group: %group
Summary: %summary
Provides: %name = %version-%release
Provides: %_bindir/%name
PreReq: alternatives >= 0.2 info-install
Requires: %name-common = %version-%release

%package gtk
Group: %group
Summary: %summary
Provides: %name = %version-%release
Provides: %_bindir/%name
PreReq: alternatives >= 0.2 info-install
Requires: %name-common = %version-%release

%package qt
Group: %group
Summary: %summary
Provides: %name = %version-%release
Provides: %_bindir/%name
Obsoletes: %name <= %version-%release
PreReq: alternatives >= 0.2 info-install
Requires: %{get_dep libqt3}
Requires: %name-common = %version-%release

%description curses
This is simple PIN or passphrase entry dialog which
utilize the Assuan protocol as described by the aegypten project.

%description gtk
This is simple PIN or passphrase entry dialog which
utilize the Assuan protocol as described by the aegypten project.

%description qt
This is simple PIN or passphrase entry dialog which
utilize the Assuan protocol as described by the aegypten project.

%description common
Common files and documentation for %name

%prep
%setup -q
%patch1 -p1
rm -f doc/*.info

%__libtoolize --copy --force
#%__aclocal
#%__automake
#%__autoconf
./autogen.sh

%build
export QTDIR=%qtdir

%if %build_all

%configure \
   --with-x \
   --disable-rpath \
   --with-gnu-ld \
   --disable-pinentry-gtk \
   --enable-pinentry-gtk-2 \
   --enable-pinentry-curses \
   --enable-pinentry-qt \
   --enable-fallback-curses

%else

%if %single_is_qt
%configure \
   --with-x \
   --disable-rpath \
   --disable-pinentry-gtk \
   --disable-pinentry-gtk-2 \
   --disable-pinentry-curses \
   --enable-pinentry-qt \
   --enable-fallback-curses
%else
%configure \
   --with-x \
   --disable-rpath \
   --enable-pinentry-gtk-2 \
   --disable-pinentry-gtk \
   --disable-pinentry-curses \
   --disable-pinentry-qt \
   --enable-fallback-curses
%endif

%endif


%make

%install
mkdir -p %buildroot/%_bindir
%make install DESTDIR=%buildroot
if [ -f %buildroot/%_bindir/%{name}-gtk-2 ]
then
   %__rm -f %buildroot/%_bindir/%{name}-gtk
   %__mv -f %buildroot/%_bindir/%{name}-gtk-2 %buildroot/%_bindir/%{name}-gtk
fi

#made three alternatives entries

%__install -d %buildroot/%_altdir
WEIGHT=10
for i in curses gtk qt
do
cat >%buildroot/%_altdir/%name-$i<<EOF
%_bindir/%name %_bindir/%name-$i $WEIGHT
EOF
((WEIGHT+=10))
done

%__mkdir_p alt/
cat >alt/README <<__EOF__
see the documentation of %{name}-common package
__EOF__

%post curses
%post_register_alternatives %name-curses -- %name-curses
%update_alternatives
%preun curses
%preun_unregister_alternatives %name-curses
%triggerpostun curses -- %name
%post_register_alternatives %name-curses

%post gtk
%post_register_alternatives %name-gtk -- %name-gtk
%update_alternatives
%preun gtk
%preun_unregister_alternatives %name-gtk
%triggerpostun gtk -- %name
%post_register_alternatives %name-gtk

%post qt
%post_register_alternatives %name-qt -- %name-qt
%update_alternatives
%preun qt
%preun_unregister_alternatives %name-qt
%uninstall_info %name.info
%triggerpostun qt -- %name
%post_register_alternatives %name-qt

%post common
%install_info %name.info
%preun common
%uninstall_info %name.info

%post
%post_register_alternatives  %name-curses %name-qt %name-gtk -- %name
%if %single_is_qt
/usr/sbin/alternatives-update --ignore %_bindir/%name-gtk
%else
/usr/sbin/alternatives-update --ignore %_bindir/%name-qt
%endif
%install_info %name.info
%preun
%preun_unregister_alternatives  %name-curses %name-qt %name-gtk
%uninstall_info %name.info
#
%triggerpostun -- %name-curses
%post_register_alternatives %name-curses -- %name
%triggerpostun -- %name-gtk
%post_register_alternatives %name-gtk -- %name
%triggerpostun -- %name-qt
%post_register_alternatives %name-qt -- %name
%triggerpostun  -- %name < 0.6.6-alt2
%register_alternatives  %name-curses %name-qt %name-gtk -- %name

%if %build_all

%files curses
#%doc alt/README
%_altdir/%name-curses
%_bindir/%name-curses
%files gtk
#%doc alt/README
%_altdir/%name-gtk
%_bindir/%name-gtk
%files qt
#%doc alt/README
%_altdir/%name-qt
%_bindir/%name-qt

%else

%files
%config %_altdir/%{name}*
%_bindir/%{name}-*

%endif

%files common
%doc README TODO ChangeLog NEWS AUTHORS THANKS
%_infodir/*.info*
%ghost %_bindir/%name

%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