The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
#!/bin/bash

libyaml=../../libyaml
source=$libyaml/src
include=$libyaml/include
need_branch=perl-yaml-xs

if [ ! -d $source ]; then
    echo "'$source' does not exist"
    exit 1
fi

get_branch() {
    (
        cd $libyaml
        echo $(git rev-parse --abbrev-ref HEAD)
    )
}

libyaml_branch=$(get_branch)

if [ "$libyaml_branch" != "$need_branch" ]; then
    echo "libyaml must be set to branch '$need_branch'"
    exit 1
fi

diff=$(diff -q $source .| grep -v '^Only';diff -q $include .| grep -v '^Only')

if [ -n "$diff" ]; then
    echo "*** Updating from libyaml repository ***"
    diff -q $source .| grep -v '^Only'
    cp $source/*.{c,h} .
    diff -q $include .| grep -v '^Only'
    cp $include/*.h .
fi