mkldexport.sh
上传用户:blenddy
上传日期:2007-01-07
资源大小:6495k
文件大小:1k
源码类别:

数据库系统

开发平台:

Unix_Linux

  1. #!/bin/sh
  2. #
  3. # mkldexport
  4. # create an AIX exports file from an object file
  5. #
  6. # Usage:
  7. # mkldexport objectfile [location]
  8. # where
  9. # objectfile is the current location of the object file.
  10. # location is the eventual (installed) location of the 
  11. # object file (if different from the current
  12. # working directory).
  13. #
  14. # [This file comes from the Postgres 4.2 distribution. - ay 7/95]
  15. #
  16. # Header: /usr/local/devel/postgres/src/tools/mkldexport/RCS/mkldexport.sh,v 1.2 1994/03/13 04:59:12 aoki Exp 
  17. #
  18. # setting this to nm -B might be better
  19. # ... due to changes in AIX 4.x ...
  20. # ... let us search in different directories - Gerhard Reithofer
  21. if [ -x /usr/ucb/nm ]
  22. then NM=/usr/ucb/nm
  23. elif [ -x /usr/bin/nm ]
  24. then NM=/usr/bin/nm
  25. elif [ -x /usr/ccs/bin/nm ]
  26. then NM=/usr/ccs/bin/nm
  27. elif [ -x /usr/usg/bin/nm ]
  28. then NM=/usr/usg/bin/nm
  29. else echo "Fatal error: cannot find `nm' ... please check your installation."
  30.      exit 1
  31. fi
  32. CMDNAME=`basename $0`
  33. if [ -z "$1" ]; then
  34. echo "Usage: $CMDNAME object [location]"
  35. exit 1
  36. fi
  37. OBJNAME=`basename $1`
  38. if [ "`basename $OBJNAME`" != "`basename $OBJNAME .o`" ]; then
  39. OBJNAME=`basename $OBJNAME .o`.so
  40. fi
  41. if [ -z "$2" ]; then
  42. echo '#!'
  43. else
  44. echo '#!' $2/$OBJNAME
  45. fi
  46. $NM -Bg $1 | 
  47. egrep ' [TDB] ' | 
  48. sed -e 's/.* //' | 
  49. egrep -v '$' | 
  50. sed -e 's/^[.]//' | 
  51. sort | 
  52. uniq