s3-smbldap: make smbldap public library and maintain its ABI
[Samba.git] / source3 / script / mksyms.sh
blob7fb4031e2bf8db7a8e2a813e63ea7fd67777e370
1 #! /bin/sh
4 # mksyms.sh
6 # Extract symbols to export from C-header files.
7 # output in version-script format for linking shared libraries.
9 # This is the shell wrapper for the mksyms.awk core script.
11 # Copyright (C) 2008 Michael Adam <obnox@samba.org>
14 LANG=C; export LANG
15 LC_ALL=C; export LC_ALL
16 LC_COLLATE=C; export LC_COLLATE
18 if [ $# -lt 2 ]
19 then
20 echo "Usage: $0 awk output_file header_files"
21 exit 1
24 awk="$1"
25 shift
27 symsfile="$1"
28 shift
29 symsfile_tmp="$symsfile.$$.tmp~"
31 proto_src="`echo $@ | tr ' ' '\n' | sort | uniq `"
33 echo creating $symsfile
35 mkdir -p `dirname $symsfile`
37 ${awk} -f `dirname $0`/mksyms.awk $proto_src > $symsfile_tmp
39 if cmp -s $symsfile $symsfile_tmp 2>/dev/null
40 then
41 echo "$symsfile unchanged"
42 rm $symsfile_tmp
43 else
44 mv $symsfile_tmp $symsfile