Files
hpe-ltfs/ltfs/messages/make_message_src.sh

78 lines
1.5 KiB
Bash
Executable File

#!/bin/sh
set -e
KERNEL_NAME=`uname -s`
if [ "$KERNEL_NAME" = "Darwin" ]; then
ICU_FRAMEWORK=/Library/Frameworks/ICU.framework
export PATH=${PATH}:${ICU_FRAMEWORK}/Versions/Current/usr/bin
export DYLD_LIBRARY_PATH=${ICU_FRAMEWORK}/Versions/Current/usr/lib
GENRB=${ICU_FRAMEWORK}/Versions/Current/usr/bin/genrb
PKGDATA=${ICU_FRAMEWORK}/Versions/Current/usr/bin/pkgdata
else
GENRB=genrb
PKGDATA=pkgdata
fi
if [ "$#" -ne "1" ]; then
echo "Usage: $0 object_file"
exit 1
fi
BASENAME=`echo $1 | sed -e 's/_dat\.o$//'`
cd ${BASENAME}
make_obj() {
# Create a fresh work directory
if [ -d work ]; then
rm -rf work
fi
mkdir work
# Generate files
${GENRB} -d work -q *.txt
cd work
ls *.res >packagelist.txt
${PKGDATA} -p ${BASENAME} -m static -q packagelist.txt >/dev/null
case $KERNEL_NAME in
MINGW32_NT*)
#
# HPE_mingw_BUILD
#
# We use dynamic libraries for the package data, so use the
# -m dll switch
#
${PKGDATA} -p ${BASENAME} -m dll -q packagelist.txt >/dev/null
# Copy the resulting DLL as both a link library
# (lib*.a) and the DLL with the package data
# (*.dll). Libtool will happily use the copy of
# the DLL to link
#
cp ${BASENAME}.dll ../../lib${BASENAME}.a
cp ${BASENAME}.dll ../../${BASENAME}.dll
;;
*)
mv ${BASENAME}_dat.o ../../
;;
esac
# Clean up
cd ..
rm -rf work
}
# Check whether we need to do anything
if [ -f "../$1" ]; then
for file in *; do
if [ "$file" -nt "../$1" ]; then
make_obj
exit 0
fi
done
else
make_obj
fi