I already tested pcsc-lite-libs+OpenCT+OpenSC

Why do you need pcsc-lite-libs?
Spotters badge!

Executing "rpm -qRp" on the newly-built package gives me "pcsc-lite-libs(x86-64)" so, naturally, I assumed that was needed (the package contains two .so files, so not much of a difference really). However, after reading your post I decided to write a little shell script (see attached) doing just that - making sure the dependencies listed as "required" by rpm are checked. As it turns out libpcsclite is NOT needed - at least ldd can't find any such dependency. All other dependencies check out successfully:

========================================
[z...@test1 ~]$ ./test-deps.sh ~/rpms/smartcard/
Processing openct (/home/zeek/rpms/smartcard/openct-0.6.19-3.fc13.x86_64.rpm) and searching for dependencies...
...checking libc...passed
...checking libltdl...passed
...checking libusb...passed
Processing opensc (/home/zeek/rpms/smartcard/opensc-0.11.13-5.fc13.x86_64.rpm) and searching for dependencies...
...checking libc...passed
...checking libltdl...passed
...checking libpcsclite...FAILED
...checking libopenct...passed
...checking libreadline...passed
...checking libpthread...passed
========================================
#!/bin/bash

# Syntax is "test-deps.sh [rpmpath]"

# Assuming x86_64 architecture and fc13 distribution
arch=x86_64
fedora=fc13

#packages to test
name=( openct opensc )
version=( "0.6.19-3" "0.11.13-5" )
bindirs=( "/usr/bin/ /lib/udev/ /usr/sbin/" "/usr/bin/" )

#dependency libraries to search for
searchdep=( "libc libltdl libusb" "libc libltdl libpcsclite libopenct 
libreadline libpthread" )

# get number of packages to test
count=${#na...@]}
rpmpath=$1

for (( i=0; i < $count; i++)); do
  _deps=""
  _rpmfile=$rpmpath${name[${i}]}-${version[${i}]}.$fedora.$arch.rpm
  if [ $# != 0 ]; then
    if [ ! -r $_rpmfile ]; then
      echo "File $_rpmfile does not exist, skipping..."
      continue
    else
      _name=" ($_rpmfile)"
    fi
  else
    _name=""
  fi
  echo "Processing ${name[${i}]}$_name and searching for dependencies..."
  for c in ${bindirs[${i}]}; do
     if [ $# != 0 ]; then
       _deps=$_deps" "`rpm --nosignature -qlp $_rpmfile | grep $c`
     else
       _deps=$_deps" "`rpm --nosignature -ql ${name[${i}]} | grep $c`
     fi
  done
   if [ $# != 0 ]; then
    _deps=$_deps" "`rpm --nosignature -qlp $_rpmfile | grep "\.so"`
  else
    _deps=$_deps" "`rpm --nosignature -ql ${name[${i}]} | grep "\.so"`
  fi
#  echo $_deps
  for s in ${searchdep[${i}]}; do
    echo -n "...checking $s..."
    _dep=""
    for p in $_deps; do
       _dep=$_dep`ldd $p | grep $s`    
    done
    if [ "$_dep"x == x ]; then
      echo "FAILED"
    else
      echo "passed"
    fi
  done
done 

_______________________________________________
opensc-devel mailing list
opensc-devel@lists.opensc-project.org
http://www.opensc-project.org/mailman/listinfo/opensc-devel

Reply via email to