You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
167 rivejä
5.1 KiB
167 rivejä
5.1 KiB
## |
|
## pam.spec -- OpenPKG RPM Specification |
|
## Copyright (c) 2000-2002 Cable & Wireless Deutschland GmbH |
|
## Copyright (c) 2000-2002 The OpenPKG Project <http://www.openpkg.org/> |
|
## Copyright (c) 2000-2002 Ralf S. Engelschall <rse@engelschall.com> |
|
## |
|
## Permission to use, copy, modify, and distribute this software for |
|
## any purpose with or without fee is hereby granted, provided that |
|
## the above copyright notice and this permission notice appear in all |
|
## copies. |
|
## |
|
## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED |
|
## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF |
|
## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
|
## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR |
|
## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
|
## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF |
|
## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND |
|
## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, |
|
## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT |
|
## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
|
## SUCH DAMAGE. |
|
## |
|
|
|
# package information |
|
Name: pam |
|
Summary: Information Resource for PAM |
|
URL: - |
|
Vendor: The OpenPKG Project |
|
Packager: The OpenPKG Project |
|
Distribution: OpenPKG [EXP] |
|
Group: Meta |
|
License: PD |
|
Version: 20020311 |
|
Release: 20020311 |
|
|
|
# list of sources |
|
Source0: pamtool |
|
Source1: rc.pam |
|
|
|
# build information |
|
Prefix: %{l_prefix} |
|
BuildRoot: %{l_buildroot} |
|
BuildPreReq: OpenPKG, openpkg >= 20020206 |
|
PreReq: OpenPKG, openpkg >= 20020206 |
|
AutoReq: no |
|
AutoReqProv: no |
|
Provides: PAM |
|
|
|
%description |
|
This is the information resource package for PAM. |
|
|
|
%prep |
|
|
|
%build |
|
|
|
%install |
|
rm -rf $RPM_BUILD_ROOT |
|
|
|
pam_cfgloc="" |
|
pam_modpfx="" |
|
pam_incdir="" |
|
pam_libdir="" |
|
|
|
# search for configuration location |
|
for cfgloc in \ |
|
/etc/pam.d \ |
|
/etc/pam.conf \ |
|
; do |
|
if [ -f $cfgloc -o -d $cfgloc ]; then |
|
pam_cfgloc="$cfgloc" |
|
break |
|
fi |
|
done |
|
|
|
# search for module prefix |
|
if [ -d $pam_cfgloc ]; then |
|
mod=`cat $pam_cfgloc/* 2>/dev/null | grep '^#*[ ]*other' | head -1 | awk '{ print $3; }'` |
|
elif [ -f $pam_cfgloc ]; then |
|
mod=`cat $pam_cfgloc 2>/dev/null | grep '^#*[ ]*other' | head -1 | awk '{ print $4; }'` |
|
else |
|
mod="" |
|
fi |
|
case $mod in |
|
pam_* ) pam_modpfx="" ;; |
|
/*/pam_* ) pam_modpfx=`echo $mod | sed 's;^\(/.*/\)pam_[^/]*$;\1;'` ;; |
|
esac |
|
|
|
# search for include directory |
|
for incdir in \ |
|
/usr/include \ |
|
/usr/local/include \ |
|
/opt/include \ |
|
; do |
|
if [ -f "$incdir/security/pam_appl.h" ]; then |
|
pam_incdir="$incdir" |
|
break |
|
fi |
|
done |
|
|
|
# search for library directory |
|
for libdir in \ |
|
/lib \ |
|
/usr/lib \ |
|
/usr/local/lib \ |
|
/opt/lib \ |
|
; do |
|
for ext in a so sl; do |
|
if [ -f "$libdir/libpam.$ext" ]; then |
|
pam_libdir="$libdir" |
|
break |
|
fi |
|
done |
|
if [ ".$pam_libdir" != . ]; then |
|
break |
|
fi |
|
done |
|
|
|
# make sure everything was found |
|
if [ ".$pam_cfgloc" = . ] ||\ |
|
[ ".$pam_incdir" = . ] ||\ |
|
[ ".$pam_libdir" = . ]; then |
|
echo "************************************************************" |
|
echo "** ERROR: SOME PAM INFORMATION COULD NOT BE DETERMINED!!" |
|
echo "** ERROR: SOME PAM INFORMATION COULD NOT BE DETERMINED!!" |
|
echo "**" |
|
echo "** We found out:" |
|
echo "** PAM Config Location: \"${pam_cfgloc}\"" |
|
echo "** PAM Module Prefix: \"${pam_modpfx}\"" |
|
echo "** PAM Include Directory: \"${pam_incdir}\"" |
|
echo "** PAM Library Directory: \"${pam_libdir}\"" |
|
echo "**" |
|
echo "** Unfortunately, some information is missing here." |
|
echo "**" |
|
echo "** ERROR: SOME PAM INFORMATION COULD NOT BE DETERMINED!!" |
|
echo "** ERROR: SOME PAM INFORMATION COULD NOT BE DETERMINED!!" |
|
echo "************************************************************" |
|
exit 1 |
|
fi |
|
|
|
# install PAM tool |
|
%{l_shtool} mkdir -f -p -m 755 \ |
|
$RPM_BUILD_ROOT%{l_prefix}/sbin |
|
%{l_shtool} install -c -m 755 \ |
|
-e 's;@l_prefix@;%{l_prefix};g' \ |
|
-e 's;@l_target@;%{l_target};g' \ |
|
%{SOURCE pamtool} $RPM_BUILD_ROOT%{l_prefix}/sbin/ |
|
|
|
# install rc file |
|
%{l_shtool} mkdir -f -p -m 755 \ |
|
$RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/ |
|
%{l_shtool} install -c -m 755 \ |
|
-e 's;@l_prefix@;%{l_prefix};g' \ |
|
-e "s;@pam_cfgloc@;${pam_cfgloc};g" \ |
|
-e "s;@pam_modpfx@;${pam_modpfx};g" \ |
|
-e "s;@pam_incdir@;${pam_incdir};g" \ |
|
-e "s;@pam_libdir@;${pam_libdir};g" \ |
|
%{SOURCE rc.pam} $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/ |
|
|
|
%{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std} |
|
|
|
%files -f files |
|
|
|
%clean |
|
rm -rf $RPM_BUILD_ROOT |
|
|
|
|