Sisyphus repository
Last update: 1 october 2023 | SRPMs: 18631 | Visits: 37858405
en ru br
ALT Linux repos
4.0: 0.3.14-alt11
3.0: 0.3.14-alt2

Group :: Publishing
RPM: scrollkeeper

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs and FR  Repocop 

%define ver_major 0.3
%def_disable static

Name: scrollkeeper
Version: %ver_major.14
Release: alt11

Summary: ScrollKeeper is a cataloging system for documentation
License: LGPL/FDL
Group: Publishing
Url: http://%name.sourceforge.net

Source: %gnome_ftp/%name/%ver_major/%name-%version.tar.bz2
Source1: %name-manpages-ru.tar.bz2
Source2: %name-rpmmacros.spec
Patch: %name-0.3.13-alt-paths.patch
Patch1: %name-0.3.13-alt-no-rebuilddb.patch
Patch2: %name-0.3.14-fix-overflows.patch
Patch3: %name-0.3.14-clean-xml-validation-context.patch
Patch4: %name-0.3.14-empty-url-string.patch
Patch5: %name-0.3.14-language-fix.patch
Patch6: %name-0.3.14-rw-offset-fix.patch

%define libxml2_ver 2.5.6
%define intltool_ver 0.31.3

PreReq: lib%name = %version-%release, xml-common, xml-utils, docbook-dtds

BuildPreReq: rpm-build-spec2macro
BuildPreReq: rpm-build-gnome
BuildPreReq: libxml2-devel >= %libxml2_ver
BuildPreReq: intltool >= %intltool_ver

BuildRequires: docbook-dtds libxslt-devel perl-XML-Parser perl-i18n xml-common xml-utils zlib-devel

%description
ScrollKeeper is a cataloging system for documentation. It manages
documentation metadata (as specified by the Open Source Metadata
Framework (OMF)) and provides a simple API to allow help browsers to
find, sort, and search the document catalog. It will also be able to
communicate with catalog servers on the Net to search for documents
which are not on the local system.

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

%description -n lib%name
These are the libraries for Scrollkeeper.

%package -n lib%name-devel
Summary: Includes and more to develop scrollkeeper applications
Group: Development/C
Requires: %name = %version-%release
Requires: lib%name = %version-%release

%description -n lib%name-devel
Libraries, include files and other resources you can use to develop
Scrollkeeper applications.

%package -n lib%name-devel-static
Summary: Static libraries to develop scrollkeeper applications
Group: Development/C
Requires: lib%name = %version-%release

%description -n lib%name-devel-static
Static libraries you can use to develop Scrollkeeper applications.

%define xmlbase %_datadir/xml
%define xmlconfdir %_sysconfdir/xml
%define xmlcatalog %xmlconfdir/catalog

%include %SOURCE2

%prep
%setup -q
%patch -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1

# fix #1434

%__subst 's|регест|регист|g' po/ru.po

%build
%configure \
%{subst_enable static} \
--with-omfdirs=%_omfdir \
--with-partial-db-dir=%name

%make_build

%install
%makeinstall

# Convert the spec fragment to a rpmmacros file.

mkdir -p %buildroot%_sysconfdir/rpm/macros.d
%spec2macro %SOURCE2 %buildroot%_sysconfdir/rpm/macros.d/%name

# log file

install -pD -m600 /dev/null %buildroot%_logdir/%name.log

# logrotate config

cat <<__EOF__ >%name.logrotate
%_logdir/%name.log {
   monthly
   notifempty
   missingok
}
__EOF__

install -pD -m640 %name.logrotate %buildroot%_sysconfdir/logrotate.d/%name

# russian manpages

tar -jxf %SOURCE1 -C %buildroot%_mandir

%define mans scrollkeeper-config scrollkeeper-gen-seriesid scrollkeeper.conf scrollkeeper-preinstall scrollkeeper-rebuilddb scrollkeeper-update

%find_lang --output=%name.lang --with-man %name %mans

%post
%_bindir/xmlcatalog --noout --add "public" \
       "-//OMF//DTD Scrollkeeper OMF Variant V1.0//EN" \
       "%_datadir/xml/%name/dtds/%name-omf.dtd" %xmlcatalog ||:
%_bindir/xmlcatalog --noout --add "public" \
       "-//Scrollkeeper//DTD Contents List V1.0//EN" \
       "%_datadir/xml/%name/dtds/%name-cl.dtd" %xmlcatalog ||:

scrollkeeper-rebuilddb -q

%preun
[ $1 = 0 ] || exit 0
%_bindir/xmlcatalog --noout --del \
"%_datadir/xml/%name/dtds/%name-omf.dtd" %xmlcatalog ||:
%_bindir/xmlcatalog --noout --del \
"%_datadir/xml/%name/dtds/%name-cl.dtd" %xmlcatalog ||:

%triggerpostun -- %name < 0.3.11
[ $2 != 0 ] || exit 0
%_bindir/xmlcatalog --noout --add "public" \
       "-//OMF//DTD Scrollkeeper OMF Variant V1.0//EN" \
       "%_datadir/xml/%name/dtds/%name-omf.dtd" %xmlcatalog ||:
%_bindir/xmlcatalog --noout --add "public" \
       "-//Scrollkeeper//DTD Contents List V1.0//EN" \
       "%_datadir/xml/%name/dtds/%name-cl.dtd" %xmlcatalog ||:

scrollkeeper-rebuilddb -q

%if 0
%triggerun -- %name < 0.3.14-alt2
%_bindir/xmlcatalog --noout --del \
"%_datadir/xml/%name/dtds/%name-omf.dtd" %xmlcatalog ||:
%endif

%post -n lib%name -p %post_ldconfig
%postun -n lib%name -p %postun_ldconfig

%files -f %name.lang
%_bindir/*
%dir %_omfdir/
%dir %_omfdir/%name
%_omfdir/%name/*.omf
%_datadir/%name
%_datadir/xml/*
%config(noreplace) %_sysconfdir/%name.conf
%config(noreplace) %_sysconfdir/logrotate.d/%name
%config %_sysconfdir/rpm/macros.d/%name
%doc AUTHORS README ChangeLog NEWS INSTALL
%ghost %_logdir/%name.log

%files -n lib%name
%_libdir/*.so.*

%files -n lib%name-devel
%_libdir/*.so

%if_enabled static
%files -n lib%name-devel-static
%_libdir/*.a
%endif

%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