1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-14 19:24:43 +03:00
Michael Adam b09b3ac8f8 Create symbols to export in libtdb dynamically from tdb.h.
This adds a general mechanism to create version-scripts for
linking shared libraries from one or several header files,
similar to mkproto.sh/awk.

Michael
(This used to be commit 65817703c49a7410f4f0c8b46494ede6169d9fa6)
2008-02-14 14:17:57 +01:00

46 lines
788 B
Bash
Executable File

#! /bin/sh
#
# mksyms.sh
#
# Extract symbols to export from C-header files.
# output in version-script format for linking shared libraries.
#
# This is the shell warpper for the mksyms.awk core script.
#
# Copyright (C) 2008 Micheal Adam <obnox@samba.org>
#
LANG=C; export LANG
LC_ALL=C; export LC_ALL
LC_COLLATE=C; export LC_COLLATE
if [ $# -lt 2 ]
then
echo "Usage: $0 awk output_file header_files"
exit 1
fi
awk="$1"
shift
symsfile="$1"
shift
symsfile_tmp="$symsfile.$$.tmp~"
proto_src="`echo $@ | tr ' ' '\n' | sort | uniq `"
echo creating $symsfile
mkdir -p `dirname $symsfile`
${awk} -f script/mksyms.awk $proto_src > $symsfile_tmp
if cmp -s $symsfile $symsfile_tmp 2>/dev/null
then
echo "$symsfile unchanged"
rm $symsfile_tmp
else
mv $symsfile_tmp $symsfile
fi