[nss/f19] Install man pages for nss-tools and the nss-config and setup-nsssysinit scripts
Elio Maldonado
emaldonado at fedoraproject.org
Thu Jun 20 04:39:34 UTC 2013
commit fd6098c24050870dbaff5ea3dd81770c533468bb
Author: Elio Maldonado <emaldona at redhat.com>
Date: Wed Jun 19 20:32:27 2013 -0700
Install man pages for nss-tools and the nss-config and setup-nsssysinit scripts
- Resolves: rhbz#606020 - nss security tools lack man pages
nss-config.xml | 132 ++++++++++++++++++++++++++++++++++++++++++++++++++
nss.spec | 57 +++++++++++++++++++++-
setup-nsssysinit.xml | 110 +++++++++++++++++++++++++++++++++++++++++
3 files changed, 298 insertions(+), 1 deletions(-)
---
diff --git a/nss-config.xml b/nss-config.xml
new file mode 100644
index 0000000..f9518c9
--- /dev/null
+++ b/nss-config.xml
@@ -0,0 +1,132 @@
+<?xml version='1.0' encoding='utf-8'?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
+<!ENTITY date SYSTEM "date.xml">
+<!ENTITY version SYSTEM "version.xml">
+]>
+
+<refentry id="nss-config">
+
+ <refentryinfo>
+ <date>&date;</date>
+ <title>Network Security Services</title>
+ <productname>nss</productname>
+ <productnumber>&version;</productnumber>
+ </refentryinfo>
+
+ <refmeta>
+ <refentrytitle>nss-config</refentrytitle>
+ <manvolnum>1</manvolnum>
+ </refmeta>
+
+ <refnamediv>
+ <refname>nss-config</refname>
+ <refpurpose>Return meta information about nss libraries</refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <cmdsynopsis>
+ <command>nss-config</command>
+ <arg><option>--prefix</option></arg>
+ <arg><option>--exec-prefix</option></arg>
+ <arg><option>--includedir</option></arg>
+ <arg><option>--libs</option></arg>
+ <arg><option>--cflags</option></arg>
+ <arg><option>--libdir</option></arg>
+ <arg><option>--version</option></arg>
+ </cmdsynopsis>
+ </refsynopsisdiv>
+
+<refsection id="description">
+ <title>Description</title>
+
+ <para><command>nss-config</command> is a shell scrip
+ tool which can be used to obtain gcc options for building client pacakges of nspt. </para>
+
+ </refsection>
+
+ <refsection>
+ <title>Options</title>
+
+ <variablelist>
+ <varlistentry>
+ <term><option>--prefix</option></term>
+ <listitem><simpara>Returns the top level system directory under which the nss libraries are installed.</simpara></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--exec-prefix</option></term>
+ <listitem><simpara>returns the top level system directory under which any nss binaries would be installed.</simpara></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--includedir</option> <replaceable>count</replaceable></term>
+ <listitem><simpara>returns the path to the directory were the nss libraries are installed.</simpara></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--version</option></term>
+ <listitem><simpara>returns the upstream version of nss in the form major_version-minor_version-patch_version.</simpara></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--libs</option></term>
+ <listitem><simpara>returns the compiler linking flags.</simpara></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--cflags</option></term>
+ <listitem><simpara>returns the compiler include flags.</simpara></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--libdir</option></term>
+ <listitem><simpara>returns the path to the directory were the nss libraries are installed.</simpara></listitem>
+ </varlistentry>
+
+ </variablelist>
+ </refsection>
+
+ <refsection>
+ <title>Examples</title>
+
+ <para>The following example will query for both include path and linkage flags:
+
+ <programlisting>
+ /usr/bin/nss-config --cflags --libs
+ </programlisting>
+
+ </para>
+
+
+ </refsection>
+
+ <refsection>
+ <title>Files</title>
+
+ <para><filename>/usr/bin/nss-config</filename></para>
+
+ </refsection>
+
+ <refsection>
+ <title>See also</title>
+ <para>pkg-config(1)</para>
+ </refsection>
+
+ <refsection id="authors">
+ <title>Authors</title>
+ <para>The nss liraries were written and maintained by developers with Netscape, Red Hat, Sun, Oracle, Mozilla, and Google.</para>
+ <para>
+ Authors: Elio Maldonado <emaldona at redhat.com>.
+ </para>
+ </refsection>
+
+<!-- don't change -->
+ <refsection id="license">
+ <title>LICENSE</title>
+ <para>Licensed under the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ </para>
+ </refsection>
+
+</refentry>
+
diff --git a/nss.spec b/nss.spec
index cf6ede0..4dcc672 100644
--- a/nss.spec
+++ b/nss.spec
@@ -3,6 +3,7 @@
%global nss_softokn_fips_version 3.12.9
%global nss_softokn_version 3.15
%global unsupported_tools_directory %{_libdir}/nss/unsupported-tools
+%global allTools "certutil cmsutil crlutil derdump modutil pk12util pp signtool signver ssltap vfychain vfyserv"
# solution taken from icedtea-web.spec
%define multilib_arches ppc64 sparc64 x86_64
@@ -19,7 +20,7 @@
Summary: Network Security Services
Name: nss
Version: 3.15
-Release: 4%{?dist}
+Release: 5%{?dist}
License: MPLv2.0
URL: http://www.mozilla.org/projects/security/pki/nss/
Group: System Environment/Libraries
@@ -74,6 +75,8 @@ Source12: %{name}-pem-20130405.tar.bz2
Source17: TestCA.ca.cert
Source18: TestUser50.cert
Source19: TestUser51.cert
+Source20: nss-config.xml
+Source21: setup-nsssysinit.xml
Patch2: add-relro-linker-option.patch
Patch3: renegotiate-transitional.patch
@@ -148,6 +151,7 @@ Requires: nss-util-devel
Requires: nss-softokn-devel
Requires: nspr-devel >= %{nspr_version}
Requires: pkgconfig
+BuildRequires: xmlto
%description devel
Header and Library files for doing development with Network Security Services.
@@ -299,6 +303,16 @@ export NSS_BLTEST_NOT_AVAILABLE=1
%{__make} -C ./nss
unset NSS_BLTEST_NOT_AVAILABLE
+# build the man pages clean
+pushd ./nss
+%{__make} clean_docs build_docs
+popd
+
+# and copy them here
+for m in "%{allTools}"; do
+ cp ./nss/doc/nroff/${m}.1 .
+done
+
# Set up our package file
# The nspr_version and nss_{util|softokn}_version globals used
# here match the ones nss has for its Requires.
@@ -338,6 +352,16 @@ chmod 755 ./dist/pkgconfig/setup-nsssysinit.sh
%{__cp} ./nss/lib/ckfw/nssck.api ./dist/private/nss/
+date +"%e %B %Y" | tr -d '\n' > date.xml
+echo -n %{version} > version.xml
+
+for m in %{SOURCE20} %{SOURCE21}; do
+ cp ${m} .
+done
+for m in nss-config.xml setup-nsssysinit.xml; do
+ xmlto man ${m}
+done
+
%check
if [ $DISABLETEST -eq 1 ]; then
echo "testing disabled"
@@ -442,6 +466,8 @@ echo "test suite completed"
%{__mkdir_p} $RPM_BUILD_ROOT/%{unsupported_tools_directory}
%{__mkdir_p} $RPM_BUILD_ROOT/%{_libdir}/pkgconfig
+mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1
+
touch $RPM_BUILD_ROOT%{_libdir}/libnssckbi.so
%{__install} -p -m 755 dist/*.OBJ/lib/libnssckbi.so $RPM_BUILD_ROOT/%{_libdir}/nss/libnssckbi.so
@@ -497,6 +523,14 @@ done
%{__install} -p -m 755 ./dist/pkgconfig/nss-config $RPM_BUILD_ROOT/%{_bindir}/nss-config
# Copy the pkcs #11 configuration script
%{__install} -p -m 755 ./dist/pkgconfig/setup-nsssysinit.sh $RPM_BUILD_ROOT/%{_bindir}/setup-nsssysinit.sh
+# Copy the man pages for scripts
+for f in nss-config setup-nsssysinit; do
+ install -c -m 644 ${f}.1 $RPM_BUILD_ROOT%{_mandir}/man1/${f}.1
+done
+# Copy the man pages the nss tools
+for f in "%{allTools}"; do
+ install -c -m 644 ${f}.1 $RPM_BUILD_ROOT%{_mandir}/man1/${f}.1
+done
%clean
%{__rm} -rf $RPM_BUILD_ROOT
@@ -575,6 +609,7 @@ fi
%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/pki/nssdb/key4.db
%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/pki/nssdb/pkcs11.txt
%{_bindir}/setup-nsssysinit.sh
+%attr(0644,root,root) %doc /usr/share/man/man1/setup-nsssysinit.1.gz
%files tools
%defattr(-,root,root)
@@ -597,12 +632,28 @@ fi
%{unsupported_tools_directory}/tstclnt
%{unsupported_tools_directory}/vfyserv
%{unsupported_tools_directory}/vfychain
+# instead of %{_mandir}/man*/* let's list them explicitely
+# supported tools
+%attr(0644,root,root) %doc /usr/share/man/man1/certutil.1.gz
+%attr(0644,root,root) %doc /usr/share/man/man1/cmsutil.1.gz
+%attr(0644,root,root) %doc /usr/share/man/man1/crlutil.1.gz
+%attr(0644,root,root) %doc /usr/share/man/man1/modutil.1.gz
+%attr(0644,root,root) %doc /usr/share/man/man1/pk12util.1.gz
+%attr(0644,root,root) %doc /usr/share/man/man1/signtool.1.gz
+%attr(0644,root,root) %doc /usr/share/man/man1/signver.1.gz
+# unsupported tools
+%attr(0644,root,root) %doc /usr/share/man/man1/derdump.1.gz
+%attr(0644,root,root) %doc /usr/share/man/man1/pp.1.gz
+%attr(0644,root,root) %doc /usr/share/man/man1/ssltap.1.gz
+%attr(0644,root,root) %doc /usr/share/man/man1/vfychain.1.gz
+%attr(0644,root,root) %doc /usr/share/man/man1/vfyserv.1.gz
%files devel
%defattr(-,root,root)
%{_libdir}/libcrmf.a
%{_libdir}/pkgconfig/nss.pc
%{_bindir}/nss-config
+%attr(0644,root,root) %doc /usr/share/man/man1/nss-config.1.gz
%dir %{_includedir}/nss3
%{_includedir}/nss3/cert.h
@@ -672,6 +723,10 @@ fi
%changelog
+* Wed Jun 19 2013 Elio Maldonado <emaldona at redhat.com> - 3.15-5
+- Install man pages for nss-tools and the nss-config and setup-nsssysinit scripts
+- Resolves: rhbz#606020 - nss security tools lack man pages
+
* Tue Jun 18 2013 emaldona <emaldona at redhat.com> - 3.15-4
- Build nss without softoken or util sources in the tree
- Resolves: rhbz#689918
diff --git a/setup-nsssysinit.xml b/setup-nsssysinit.xml
new file mode 100644
index 0000000..4335d85
--- /dev/null
+++ b/setup-nsssysinit.xml
@@ -0,0 +1,110 @@
+<?xml version='1.0' encoding='utf-8'?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
+<!ENTITY date SYSTEM "date.xml">
+<!ENTITY version SYSTEM "version.xml">
+]>
+
+<refentry id="setup-nsssysinit">
+
+ <refentryinfo>
+ <date>&date;</date>
+ <title>Network Security Services</title>
+ <productname>nss</productname>
+ <productnumber>&version;</productnumber>
+ </refentryinfo>
+
+ <refmeta>
+ <refentrytitle>setup-nsssysinit</refentrytitle>
+ <manvolnum>1</manvolnum>
+ </refmeta>
+
+ <refnamediv>
+ <refname>setup-nsssysinit</refname>
+ <refpurpose>Query or enable the nss-sysinit module</refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <cmdsynopsis>
+ <command>setup-nsssysinit</command>
+ <arg><option>--prefix</option></arg>
+ <arg><option>--exec-prefix</option></arg>
+ <arg><option>--includedir</option></arg>
+ <arg><option>--libs</option></arg>
+ <arg><option>--cflags</option></arg>
+ <arg><option>--libdir</option></arg>
+ <arg><option>--version</option></arg>
+ </cmdsynopsis>
+ </refsynopsisdiv>
+
+<refsection id="description">
+ <title>Description</title>
+ <para><command>setup-nsssysinit</command> is a shell script to query the status of the nss-sysinit module and when run with root priviledge it can enable or disable it. </para>
+ <para>Turns on or off the nss-sysinit module db by editing the global PKCS #11 configuration file. Displays the status. This script can be invoked by the user as super user. It is invoked at nss-sysinit post install time with argument on.
+ </para>
+ </refsection>
+
+ <refsection>
+ <title>Options</title>
+
+ <variablelist>
+ <varlistentry>
+ <term><option>--on</option></term>
+ <listitem><simpara>Turn on nss-sysinit.</simpara></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--off</option></term>
+ <listitem><simpara>Turn on nss-sysinit.</simpara></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--status</option> <replaceable>count</replaceable></term>
+ <listitem><simpara>returns whether nss-syinit is enabled or not.</simpara></listitem>
+ </varlistentry>
+
+ </variablelist>
+ </refsection>
+
+ <refsection>
+ <title>Examples</title>
+
+ <para>The following example will query for the status of nss-sysinit:
+ <programlisting>
+ /usr/bin/setup-nsssysinit --status
+ </programlisting>
+ </para>
+
+ <para>The following example, when run as superuser, will turn on nss-sysinit:
+ <programlisting>
+ /usr/bin/setup-nsssysinit --on
+ </programlisting>
+ </para>
+
+ </refsection>
+
+ <refsection>
+ <title>Files</title>
+ <para><filename>/usr/sbin/setup-nsssysinit</filename></para>
+ </refsection>
+
+ <refsection>
+ <title>See also</title>
+ <para>pkg-config(1)</para>
+ </refsection>
+
+ <refsection id="authors">
+ <title>Authors</title>
+ <para>The nss liraries were written and maintained by developers with Netscape, Red Hat, Sun, Oracle, Mozilla, and Google.</para>
+ <para>Authors: Elio Maldonado <emaldona at redhat.com>.</para>
+ </refsection>
+
+<!-- don't change -->
+ <refsection id="license">
+ <title>LICENSE</title>
+ <para>Licensed under the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ </para>
+ </refsection>
+
+</refentry>
+
More information about the scm-commits
mailing list