#!/usr/bin/env bash home=`pwd` # library Make.inc cd $home/Grid HFILES=`find . -type f -name '*.h' -not -name '*Hdf5*' -not -path '*/gamma-gen/*' -not -path '*/Old/*' -not -path '*/Eigen/*'` HFILES="$HFILES" CCFILES=`find . -name '*.cc' -not -path '*/instantiation/*/*' -not -path '*/gamma-gen/*' -not -name '*Communicator*.cc' -not -name '*SharedMemory*.cc' -not -name '*Hdf5*'` ZWILS_FERMION_FILES=` find . -name '*.cc' -path '*/instantiation/*' -path '*/instantiation/ZWilsonImpl*' ` WILS_FERMION_FILES=` find . -name '*.cc' -path '*/instantiation/*' -path '*/instantiation/WilsonImpl*' ` STAG_FERMION_FILES=` find . -name '*.cc' -path '*/instantiation/*' -path '*/instantiation/Staggered*' ` GP_FERMION_FILES=` find . -name '*.cc' -path '*/instantiation/*' -path '*/instantiation/Gparity*' ` ADJ_FERMION_FILES=` find . -name '*.cc' -path '*/instantiation/*' -path '*/instantiation/WilsonAdj*' ` TWOIND_FERMION_FILES=`find . -name '*.cc' -path '*/instantiation/*' -path '*/instantiation/WilsonTwoIndex*'` HPPFILES=`find . -type f -name '*.hpp'` echo HFILES=$HFILES $HPPFILES > Make.inc echo >> Make.inc echo CCFILES=$CCFILES >> Make.inc echo ZWILS_FERMION_FILES=$ZWILS_FERMION_FILES >> Make.inc echo WILS_FERMION_FILES=$WILS_FERMION_FILES >> Make.inc echo STAG_FERMION_FILES=$STAG_FERMION_FILES >> Make.inc echo GP_FERMION_FILES=$GP_FERMION_FILES >> Make.inc echo ADJ_FERMION_FILES=$ADJ_FERMION_FILES >> Make.inc echo TWOIND_FERMION_FILES=$TWOIND_FERMION_FILES >> Make.inc # tests Make.inc cd $home/tests dirs=`find . -type d -not -path '*/\.*'` for subdir in $dirs; do cd $home/tests/$subdir pwd TESTS=`ls T*.cc` TESTLIST=`echo ${TESTS} | sed s/.cc//g ` PREF=`[ $subdir = '.' ] && echo noinst || echo EXTRA` echo "tests-local: ${TESTLIST} " > Make.inc echo ${PREF}_PROGRAMS = ${TESTLIST} >> Make.inc echo >> Make.inc for f in $TESTS; do BNAME=`basename $f .cc` echo ${BNAME}_SOURCES=$f >> Make.inc echo ${BNAME}_LDADD='$(top_builddir)/Grid/libGrid.a' >> Make.inc echo >> Make.inc done if [ $subdir != '.' ]; then echo CLEANFILES = ${TESTLIST} >> Make.inc echo >> Make.inc fi done # benchmarks Make.inc cd $home/benchmarks echo> Make.inc TESTS=`ls B*.cc` TESTLIST=`echo ${TESTS} | sed s/.cc//g ` echo bin_PROGRAMS = ${TESTLIST} > Make.inc echo >> Make.inc for f in $TESTS; do BNAME=`basename $f .cc` echo ${BNAME}_SOURCES=$f >> Make.inc echo ${BNAME}_LDADD='$(top_builddir)/Grid/libGrid.a' >> Make.inc echo >> Make.inc done cd .. # HMC Make.inc cd $home/HMC echo> Make.inc TESTS=`ls *.cc` TESTLIST=`echo ${TESTS} | sed s/.cc//g ` echo bin_PROGRAMS = ${TESTLIST} > Make.inc echo >> Make.inc for f in $TESTS; do BNAME=`basename $f .cc` echo ${BNAME}_SOURCES=$f >> Make.inc echo ${BNAME}_LDADD='$(top_builddir)/Grid/libGrid.a'>> Make.inc echo >> Make.inc done cd .. # examples Make.inc cd $home/examples/ echo> Make.inc TESTS=`ls *.cc` TESTLIST=`echo ${TESTS} | sed s/.cc//g ` echo bin_PROGRAMS = ${TESTLIST} > Make.inc echo >> Make.inc for f in $TESTS; do BNAME=`basename $f .cc` echo ${BNAME}_SOURCES=$f >> Make.inc echo ${BNAME}_LDADD='$(top_builddir)/Grid/libGrid.a'>> Make.inc echo >> Make.inc done cd ..