⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 atlas-check.m4

📁 IML package provides efficient routines to solve nonsingular systems of linear equations, certifie
💻 M4
字号:
# Check for ATLAS# Zhuliang Chen, 2004-07# Pascal Giorgi , 2003-03-04# Inspired by gnome-bonobo-check.m4 by Miguel de Icaza, 99-04-12# Stolen from Chris Lahey       99-2-5# stolen from Manish Singh again# stolen back from Frank Belew# stolen from Manish Singh# Shamelessly stolen from Owen Taylordnl IML_CHECK_ATLAS ([MINIMUM-VERSION [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])dnldnl Test for ATLAS and define ATLAS_CFLAGS and ATLAS_LIBSAC_DEFUN([IML_CHECK_ATLAS],[AC_ARG_WITH(atlas-include,	     [  --with-atlas-include=<path>		Specify the path of ATLAS header cblas.h		If argument is <empty> that means the header is reachable             	with the default search path: /usr/include or /usr/local/include 		or other path you add as default path using --with-default.		Otherwise you give the <path> to the directory which contains		the ATLAS header cblas.h. 	      ],	      [ 		ATLAS_INPUT_HEADER=$withval		ATLAS_HEADER_PATH="${ATLAS_INPUT_HEADER}"		for ATLAS_HOME in ${DEFAULT_CHECKING_PATH} 		do			ATLAS_HEADER_PATH="${ATLAS_HEADER_PATH} ${ATLAS_HOME}/include"		done	      ],	      [ 		for ATLAS_HOME in ${DEFAULT_CHECKING_PATH} 		do			ATLAS_HEADER_PATH="${ATLAS_HEADER_PATH} ${ATLAS_HOME}/include"		done	    ])AC_ARG_WITH(atlas-lib,	    [  --with-atlas-lib=<path>		Specify the path of ATLAS library.	        If argument is <empty> that means the header is reachable                 with the default search path: /usr/include or /usr/local/include		or path you add as default path using --with-default.		Otherwise you give the <path> to the directory which contains 		the ATLAS library.	     ],	     [  		ATLAS_INPUT_LIB=$withval		ATLAS_LIBRARY_PATH="${ATLAS_INPUT_LIB}"		for ATLAS_HOME in ${DEFAULT_CHECKING_PATH} 		do			ATLAS_LIBRARY_PATH="${ATLAS_LIBRARY_PATH} ${ATLAS_HOME}/lib"		done	     ],	     [  		for ATLAS_HOME in ${DEFAULT_CHECKING_PATH} 		do			ATLAS_LIBRARY_PATH="${ATLAS_LIBRARY_PATH} ${ATLAS_HOME}/lib"		done	    ])dnl input data checkif test  "x${ATLAS_INPUT_HEADER}" != x; then	if test -z "${ATLAS_INPUT_LIB}"; then		echo 'error: since you have specified the ATLAS header path, you must specify the'		echo 'ATLAS library path using --with-atlas-lib.'		exit 1	fifiif test "x${ATLAS_INPUT_LIB}" != x; then	if test -z "${ATLAS_INPUT_HEADER}"; then		echo 'error: since you have specified the ATLAS library path, you must specify the'		echo 'ATLAS header path using --with-atlas-include.'		exit 1	fifimin_atlas_version=ifelse([$1], ,3.0,$1)dnl Check for existenceBACKUP_CFLAGS=${CFLAGS}BACKUP_LIBS=${LIBS}AC_MSG_CHECKING(for ATLAS >= ${min_atlas_version})atlas_found="no"for ATLAS_HEADER in ${ATLAS_HEADER_PATH} do	if test -r "${ATLAS_HEADER}/cblas.h"; then		if test "x${ATLAS_HEADER}" != "x/usr/include" -a "x${ATLAS_HEADER}" != "x/usr/local/include"; then			for ATLAS_LIBRARY in ${ATLAS_LIBRARY_PATH} 			do				if test "x${ATLAS_LIBRARY}" != "x/usr/lib" -a "x${ATLAS_LIBRARY}" != "x/usr/local/lib"; then					ATLAS_CFLAGS="-I${ATLAS_HEADER}"					ATLAS_LIBS="${ATLAS_LIBS} -L${ATLAS_LIBRARY} -lcblas -latlas" 				fi			done		else			ATLAS_CFLAGS=			ATLAS_LIBS="-lcblas -latlas" 		fi		CFLAGS="${BACKUP_CFLAGS} ${ATLAS_CFLAGS} ${GMP_CFLAGS}" 		LIBS="${BACKUP_LIBS} ${ATLAS_LIBS} ${GMP_LIBS}"		AC_TRY_LINK(		[#include <cblas.h>],		[double a;],		[			   atlas_found="yes"				   break		],		[		   unset ATLAS_CFLAGS		   unset ATLAS_LIBS		   ifelse([$3], , :, [$3])		])	fidoneif test "x$atlas_found" = "xyes" ; then			AC_SUBST(ATLAS_CFLAGS)	AC_SUBST(ATLAS_LIBS)	AC_DEFINE(HAVE_ATLAS,1,[Define if ATLAS is installed])	AC_DEFINE(BLAS_AVAILABLE,,[Define if BLAS routines are available])	HAVE_ATLAS=yes	if test "x$atlas_cross" != "xyes"; then		AC_MSG_RESULT(found)	else		AC_MSG_RESULT(unknown)		echo 'WARNING: You appear to be cross compiling, so there is' 		echo 'no way to determine whether your ATLAS version is new' 		echo 'enough. I am assuming it is.'	fi	ifelse([$2], , :, [$2])elif test -n "$atlas_problem"; then	AC_MSG_RESULT(problem, your ATLAS version is too old. Disabling.)	ifelse([$3], , :, [$3])elif test "x$atlas_found" = "xno" ; then		AC_MSG_RESULT(not found)	ifelse([$3], , :, [$3])fi	CFLAGS=${BACKUP_CFLAGS}LIBS=${BACKUP_LIBS}#unset LD_LIBRARY_PATH])

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -