#!/bin/bash

# Script to compile a resource file for a DLL in the same way that
# libtool would, if it knew about .rc files.

# This kinda sucks, but the alternative would be to teach autoconf,
# automake, and libtool about compiling .rc files.  That would be
# doable, but waiting for those changes to propagate to official
# versions of those tools would take some time.

# The command line arguments are:
# $1: the name of the .rc file to compile if it exists
# $2: the name of the resource libtool object file to produce

# Check if we have a resource file for this DLL.
rcfile=$1
lo=$2
case "$lo" in
*.lo) 
    resfile=.libs/`basename $lo .lo`.o
    ;;
*)
    echo libtool object name should end with .lo
    exit 1
    ;;
esac
d=`dirname $0`

# Create .libs if not there already
[ ! -d .libs ] && mkdir .libs

# Try to compile resource file
$d/compile-resource $rcfile $resfile && {
    # Handcraft a libtool object
    # libtool checks for a second line matching "Generated by .* libtool"!
    (echo "# $lo"
    echo "# Generated by lt-compile-resource, compatible with libtool"
    echo "pic_object=$resfile"
    echo "non_pic_object=none") >$lo

    # Success
    exit 0
}

# If unsuccessful (no .rc file, or some error in it) return failure

exit 1
