📄 configure.in
字号:
AC_PREREQ(2.59)AC_INIT(configure.in)dnldnl Set the directory that contains support scripts such as install-sh anddnl config.guessdnlAC_CONFIG_AUX_DIR(../../../confdb)dnldnl Definitions will be placed in this file rather than in the DEFS variablednlAC_CONFIG_HEADER(include/mpidi_ch3_conf.h)echo "RUNNING CONFIGURE FOR CH3 DEVICE"# First check that we have a clean build if we are doing a VPATH buildif test "`cd $srcdir && pwd`" != "`pwd`" && \ test -f $srcdir/config.status ; then AC_MSG_ERROR([You cannot do a VPATH build if the source directory has been configured. Run "make distclean" in $srcdir first.])fi# Extract the device and channel namefile=${master_top_srcdir}/src/mpid/${device_name}/setup_device.argsif test -f ${file} ; then . ${file}else echo "ERROR: ${file} not found" exit 1fiexport channel_nameexport channel_argsAC_SUBST(device_name)AC_SUBST(channel_name)if test ! -d $srcdir/channels/${channel_name} ; then AC_MSG_ERROR([Channel ${channel_name} is unknown])elif test ! -x $srcdir/channels/${channel_name}/configure ; then AC_MSG_ERROR([Channel ${channel_name} has no configure])fiPAC_PROG_MAKE# Some channels will make use of common utility routines (in ch3/src/util)# For modularity, the channel can specify these here# FIXME: Some utility routines are specified at the top level (devsubsystem)# even though their scope is really ch3 in practice. We haven't resolved# the best way to handle these systemsif test -s $srcdir/channels/$channel_name/setup_$channel_name ; then # Typically, this will set ch3subsystems. For now, # we use this configure to create the configuration file # for those subsystems. Eventually, they may have their # own configure . $srcdir/channels/$channel_name/setup_$channel_namefiAC_SUBST(ch3subsystems)AC_CHECK_HEADERS(assert.h limits.h string.h sys/types.h sys/uio.h uuid/uuid.h \ time.h ctype.h unistd.h arpa/inet.h sys/socket.h)AC_CHECK_FUNCS(inet_pton)AC_CHECK_FUNCS(gethostname)if test "$ac_cv_func_gethostname" = "yes" ; then # Do we need to declare gethostname? PAC_FUNC_NEEDS_DECL([#include <unistd.h>],gethostname)fiAC_CHECK_FUNCS(CFUUIDCreate uuid_generate time)AC_SEARCH_LIBS(uuid_generate, uuid)AC_CACHE_CHECK([whether CPP accepts variable length argument lists],pac_cv_have_cpp_varargs,[AC_TRY_COMPILE([#include <stdio.h>#define MY_PRINTF(rank, fmt, args...) printf("%d: " fmt, rank, ## args)],[MY_PRINTF(0, "hello");MY_PRINTF(1, "world %d", 3);], pac_cv_have_cpp_varargs=yes, pac_cv_have_cpp_varargs=no)])if test $pac_cv_have_cpp_varargs = "yes" ; then AC_DEFINE(HAVE_CPP_VARARGS,,[Define if CPP supports macros with a variable number arguments])fi## bring in the default implementation of the MPID_Thread package#MPID_THREAD_SRCDIR="../common/thread"builtin(include,../common/thread/mpid_thread.m4)AC_SUBST(AR)AC_SUBST(RANLIB)AC_SUBST(MPILIBNAME)AC_SUBST(CC)AC_SUBST(DEFS)AC_SUBST(CFLAGS)AC_SUBST(CPPFLAGS)PAC_CC_SUBDIR_SHLIBSAC_SUBST(master_top_srcdir)# Master_top_builddir is imported from the top; use it for the "top"AC_SUBST(master_top_builddir)export master_top_builddirdnl Dependency handlingAC_SUBST(MAKE_DEPEND_C)dnl EtagsAC_CHECK_PROGS(ETAGS,etags,true)AC_SUBST(ETAGS)AC_SUBST(ETAGSADD)export ETAGSexport ETAGSADDAC_SUBST(EXTRA_LIBS)PAC_SUBDIR_CACHEAC_CONFIG_SUBDIRS(channels/${channel_name})AC_OUTPUT(Makefile src/Makefile util/Makefile util/sock/Makefile util/shm/Makefile channels/Makefile localdefs $MPID_THREAD_OUTPUT_FILES)PAC_SUBDIR_CACHE_CLEANUP
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -