| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157 | #!/bin/bashROOT_DIR=$(dirname $0)cat > ./mic-config.log << EOFThis file was created by StarPU mic-configure $ $0 $*EOFprefix="/usr/local"coi_dir="/opt/intel/mic/coi"scif_dir="/opt/intel/mic/scif"mic_host="x86_64-k1om-linux"native_mic=0for arg in $*do	case $arg in		--prefix=*)			prefix="${arg#--prefix=}"			;;		--with-coi-dir=*)			coi_dir="${arg#--with-coi-dir=}"			;;		--with-scif-dir=*)			scif_dir="${arg#--with-scif-dir=}"			;;		--mic-host=*)			mic_host="${arg#--mic-host=}"			;;	        --enable-native-mic)		        native_mic=1		        ;;	esacdone# Test gcc compilerx=$(type -t ${mic_host}-gcc)if [ -z "$x" ]then    # Test icc compiler    echo "int main(int argc, char **argv) { return 0; }" > /tmp/icc_$USER_$$.c    icc -mmic /tmp/icc_$USER_$$.c > /dev/null 2>/tmp/icc_$USER_$$.err    l=$(grep -c "invalid argument" /tmp/icc_$USER_$$.err)    if [ "$l" != "0" ]    then        echo "[error] no compiler found. please add path to either ${mic_host}-gcc or to an enabled mic icc compiler in your PATH"	exit 1    else	compiler="icc"    fielse    compiler="gcc"fidev_list="host mic"if [ "$native_mic" -eq "1" ]then    dev_list="mic"fifor arch in $dev_list #host micdo	# We call the configure script from a build directory further in the	# arborescence	case $ROOT_DIR in		/*) command="${ROOT_DIR}/configure";;		*) command="../${ROOT_DIR}/configure";;	esac	if [ $compiler = "icc" -a "$arch" = "mic" ] ; then	    export CC="icc -mmic"	    export CXX="icc -mmic"	fi	params="--with-coi-dir=$coi_dir --with-scif-dir=$scif_dir --prefix=$prefix/$arch"	if test x$arch = xmic ; then	    if [ "$native_mic" -eq "1" ]	    then		params="$params --disable-build-doc --with-coi-lib-dir=$coi_dir/device-linux-release/lib --with-scif-lib-dir=$scif_dir/device-linux-release/lib --host=$mic_host --enable-maxcpus=250"	    else		# TODO: fix hwloc detection to look for another pkg-config place, and not just believe in the host version of hwloc.pc...		params="$params --enable-mic --disable-build-doc -without-hwloc --with-coi-lib-dir=$coi_dir/device-linux-release/lib --with-scif-lib-dir=$scif_dir/device-linux-release/lib --host=$mic_host"	    fi	else		params="$params --with-coi-lib-dir=$coi_dir/host-linux-release/lib --with-scif-lib-dir=$scif_dir/host-linux-release/lib"	fi	# If the build directory doesn't exist yet, create it	if [ ! -d "build_${arch}" ] ; then		mkdir "build_${arch}"	fi	cd "build_${arch}"	if test x$arch = xmic ; then		LDFLAGS=-export-dynamic $command $* $params	else		$command $* $params	fi	if [ "$?" != 0 ]	then		exit $?	fi	cd ..doneif [ "$native_mic" -eq "1" ]thencat > Makefile << EOFall:	\$(MAKE) -C build_micclean:	\$(MAKE) -C build_mic cleandistclean: clean	rm -f Makefilecheck:	\$(MAKE) -C build_mic checkshowcheck:	\$(MAKE) -C build_mic showcheckinstall:	\$(MAKE) -C build_mic install	ln -sf "${prefix}/mic/lib/pkgconfig/starpu-1.2.pc" "${prefix}/mic/lib/pkgconfig/starpu-1.2-mic.pc"EOFelsecat > Makefile << EOFall:	\$(MAKE) -C build_host	\$(MAKE) -C build_micclean:	\$(MAKE) -C build_host clean	\$(MAKE) -C build_mic cleandistclean: clean	rm -f Makefilecheck:	\$(MAKE) -C build_host check	\$(MAKE) -C build_mic checkshowcheck:	\$(MAKE) -C build_host showcheck	\$(MAKE) -C build_mic showcheckinstall:	\$(MAKE) -C build_host install	\$(MAKE) -C build_mic install	ln -sf "${prefix}/mic/lib/pkgconfig/starpu-1.2.pc" "${prefix}/mic/lib/pkgconfig/starpu-1.2-mic.pc"EOFfi
 |