source: osc_snovis/trunk/obuild/sh/build_sys @ 278

Last change on this file since 278 was 278, checked in by barrand, 17 years ago
  • Property svn:executable set to *
File size: 1.5 KB
Line 
1#!/bin/sh -f
2
3#set -x
4
5if [  $# != 1 ] ; then
6  echo "build_sys_so : one argument expected."
7  exit
8fi
9
10if [ `uname` != Linux ] ; then
11  exit
12fi
13
14#obuild_pwd=`pwd`
15
16obuild_dir=$1
17if [ ! -d "${obuild_dir}" ] ; then
18  echo "build_sys_so : directory ${obuild_dir} not found."
19  exit
20fi
21if [ ! -d "${obuild_dir}/lib" ] ; then
22  echo "build_sys_so : directory ${obuild_dir}/lib not found."
23  exit
24fi
25if [ ! -d "${obuild_dir}/bin" ] ; then
26  echo "build_sys_so : directory ${obuild_dir}/bin not found."
27  exit
28fi
29
30/bin/rm -R -f "${obuild_dir}/sys"
31/bin/mkdir "${obuild_dir}/sys"
32
33obuild_dir_sys="${obuild_dir}/sys"
34
35# Analyse .so to find extra dependancies :
36LD_LIBRARY_PATH=
37export LD_LIBRARY_PATH
38/bin/rm -f obuild_tmp
39/bin/rm -f obuild_tmp_0
40find "${obuild_dir}/lib" -name '*.so' -print >> obuild_tmp_0
41find "${obuild_dir}/bin" -type f -name '*' -print >> obuild_tmp_0
42grep -v '.save' obuild_tmp_0 > obuild_tmp_1
43while read f ; do
44  ldd $f >> obuild_tmp
45done < obuild_tmp_1
46#sort -u obuild_tmp | grep found
47grep -v 'statically linked' obuild_tmp | grep -v 'not a dynamic executable'   > obuild_tmp0
48awk '{print $3;}' obuild_tmp0 > obuild_tmp1
49grep -v '\./' obuild_tmp1 | grep -v 'not' > obuild_tmp2
50sort -u obuild_tmp2 > obuild_tmp3
51awk '{print "cp " $1 " xxx/.";}' obuild_tmp3 > obuild_tmp4
52sed -e "s:xxx:\"${obuild_dir_sys}\":g" obuild_tmp4 > obuild_tmp.sh
53chmod a+x obuild_tmp.sh
54./obuild_tmp.sh
55/bin/rm -f obuild_tmp_0 obuild_tmp_1
56/bin/rm -f obuild_tmp obuild_tmp0 obuild_tmp1
57/bin/rm -f obuild_tmp2 obuild_tmp3 obuild_tmp4
58/bin/rm -f obuild_tmp.sh
59
60
Note: See TracBrowser for help on using the repository browser.