1#! /bin/sh
2
3#
4# mksyms.sh
5#
6# Extract symbols to export from C-header files.
7# output in version-script format for linking shared libraries.
8#
9# This is the shell wrapper for the mksyms.awk core script.
10#
11# Copyright (C) 2008 Michael Adam <obnox@samba.org>
12#
13
14LANG=C; export LANG
15LC_ALL=C; export LC_ALL
16LC_COLLATE=C; export LC_COLLATE
17
18if [ $# -lt 2 ]
19then
20  echo "Usage: $0 awk output_file header_files"
21  exit 1
22fi
23
24awk="$1"
25shift
26
27symsfile="$1"
28shift
29symsfile_tmp="$symsfile.$$.tmp~"
30
31proto_src="`echo $@ | tr ' ' '\n' | sort | uniq `"
32
33echo creating $symsfile
34
35mkdir -p `dirname $symsfile`
36
37${awk} -f `dirname $0`/mksyms.awk $proto_src > $symsfile_tmp
38
39if cmp -s $symsfile $symsfile_tmp 2>/dev/null
40then
41  echo "$symsfile unchanged"
42  rm $symsfile_tmp
43else
44  mv $symsfile_tmp $symsfile
45fi
46