#!/bin/sh -e

version=`cat conf-version`
test -f flag-allstatic && trydyn=false || trydyn=true

listcmd=
listinc=
listlib=
listdyn=

echo 'it: command include library library.so'

echo
if test -f Makefile.header ; then
  cat Makefile.header
fi

for file in `ls -1 deps-obj` ; do
  $trydyn && test -x "deps-obj/$file" && dodyn=fordynlib || dodyn=
  echo
  echo -n "$file.o: compile$dodyn $file.c"
  while read dep ; do
    echo -n " $dep"
  done < "deps-obj/$file"
  echo
  echo "	exec ./compile$dodyn $file.c"
done

for file in `ls -1 deps-lib` ; do
  listlib="$listlib lib$file.a"
  echo
  echo -n "lib$file.a: makelib"
  grep -v ^-l < "deps-lib/$file" | grep -v ^\` | \
  while read dep ; do
    echo -n " $dep"
  done || true
  echo
  echo -n "	exec ./makelib lib$file.a"
  grep -v ^-l < "deps-lib/$file" | grep -v ^\` | \
  while read dep ; do
    echo -n " $dep"
  done || true
  echo
  if $trydyn && test -x "deps-lib/$file" ; then
    listdyn="$listdyn lib$file.so.$version"
    echo
    echo -n "lib$file.so.$version: makedynlib"
    grep -v ^-l < "deps-lib/$file" | grep -v ^\` | \
    while read dep ; do
      echo -n " $dep"
    done || true
    echo
    echo -n "	exec ./makedynlib lib$file.so $version"
    while read dep ; do
      echo -n " $dep"
    done < "deps-lib/$file"
    echo
  fi
done

for file in `ls -1 deps-exe` ; do
  listcmd="$listcmd $file"
  echo
  echo -n "$file: load $file.o"
  grep -v ^-l < "deps-exe/$file" | grep -v ^\` | \
  while read dep ; do
    echo -n " $dep"
  done || true
  echo
  echo -n "	exec ./load $file"
  while read dep ; do
    echo -n " $dep"
  done < "deps-exe/$file"
  echo
done

echo
echo "command:$listcmd"
echo
echo "library:$listlib"
echo
echo "library.so:$listdyn"
echo

if test -f Makefile.footer ; then
  cat Makefile.footer
else
  echo "include:"
  echo
fi
