File pam_passwdqc.spec of Package pam_passwdqc

#
# spec file for package pam_passwdqc (Version 1.0.5)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#

# norootforbuild


Name:           pam_passwdqc
Url:            http://www.openwall.com/passwdqc/
BuildRequires:  pam-devel
License:        BSD 3-Clause; Other uncritical OpenSource License; Public Domain, Freeware
Group:          System/Libraries
Requires:       pam
Provides:       pam-modules:/%_lib/security/pam_passwdqc.so
AutoReqProv:    on
Version:        1.0.5
Release:        4
Summary:        Simple Password Strength Checking Module
Source0:        pam_passwdqc-1.0.5.tar.bz2
Source50:       dlopen.sh
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
PAM (Pluggable Authentication Modules) is a system security tool that
allows system administrators to set authentication policies without
having to recompile programs that do authentication.

pam_passwdqc is a simple password strength checking module forPAM-aware
password changing programs. In addition to checking regular passwords,
it offers support for passphrases and can provide randomly generated
ones.



%prep
%setup  

%build
EXTRA_CFLAGS="-fno-strict-aliasing"
# ia64 is noexecstack by default
%ifnarch ia64
    EXTRA_CFLAGS="$EXTRA_CFLAGS -Wa,--noexecstack"
%endif
    make CFLAGS="$RPM_OPT_FLAGS $EXTRA_CFLAGS -fPIC -DHAVE_SHADOW -DLINUX_PAM"

%install
mkdir -p $RPM_BUILD_ROOT/%{_lib}/security/
make DESTDIR=$RPM_BUILD_ROOT install
#
# Remove stuff we don't wish to have now:
#
rm -rf $RPM_BUILD_ROOT/usr/{include,lib}
rm -rf $RPM_BUILD_ROOT/%{_lib}/security/*.la
#
# On 64bit archs, we need to move same libraries ourself:
#
if [ %_lib = lib64 ]; then
  mv $RPM_BUILD_ROOT/lib/security/* $RPM_BUILD_ROOT/%{_lib}/security/
fi
# Check for module problems.  Specifically, check that every module we just
# installed can actually be loaded by a minimal PAM-aware application.
for module in $RPM_BUILD_ROOT/%{_lib}/security/pam*.so ; do
   if ! sh $RPM_SOURCE_DIR/dlopen.sh -lpam -ldl ${module} ; then
      exit 1
   fi
done

%clean
rm -rf $RPM_BUILD_ROOT

%files 
%defattr(-,root,root,755)
%doc INTERNALS LICENSE PLATFORMS README 
%attr(755,root,root) /%{_lib}/security/pam_*.so
%attr(644,root,root) %doc %{_mandir}/man8/pam_*.8.gz

%changelog
* Thu Apr 10 2008 ro@suse.de
- added baselibs.conf file to build xxbit packages
  for multilib support
* Thu Apr 03 2008 mc@suse.de
- update to version 1.0.5
  - Replaced the separator characters with some of those defined by RFC 3986
  as being safe within "userinfo" part of URLs without encoding.
  - Reduced the default value for the N2 parameter to min=... (the minimum
  length for passphrases) from 12 to 11.
  - Corrected the potentially misleading description of N2 (Debian bug #310595).
  - Applied minor grammar and style corrections to the documentation, a
  pam_passwdqc message, and source code comments.
  - Changed Makefile to pass list of libraries to linker after regular
  object files, to fix build with -Wl,--as-needed.
  - Fixed potential memory leak in conversation wrapper.
  - Restricted list of global symbols exported by the PAM module
  to standard set of six pam_sm_* functions.
* Thu Aug 10 2006 mc@suse.de
- version 1.0.2 branched from pam-modules
openSUSE Build Service is sponsored by