📄 aclocal.m4
字号:
dnl -*- sh -*-dnl Here are some global variables that need initialized.#AC_DEFUN(JD_PREFIX_DEFAULT,#[AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)dnl#$1#AC_DIVERT_POP()])AC_DEFUN(JD_INIT,[#These variable are initialized by JD init functionCONFIG_DIR=`pwd`cd $srcdirif test "`pwd`" != "$CONFIG_DIR"then AC_MSG_ERROR("This software does not support configuring from another directory. See the INSTALL file")fidnl# if test "X$PWD" != "X"dnl# thendnl# CONFIG_DIR="$PWD"dnl# fiAC_SUBST(CONFIG_DIR)dnl# Note: these will differ if one is a symbolic linkif test -f /usr/bin/dirname; then JD_Above_Dir=`dirname $CONFIG_DIR`else# system is a loser JD_Above_Dir=`cd ..;pwd`fiJD_Above_Dir2=`cd ..;pwd`])dnl-------------------------------------------------------------------------AC_DEFUN(JD_SET_OBJ_SRC_DIR,[#---------------------------------------------------------------------------# Set the source directory and object directory. The makefile assumes an# abcolute path name. This is because src/Makefile cds to OBJDIR and compiles# the src file which is in SRCDIR#---------------------------------------------------------------------------SRCDIR=$CONFIG_DIRif test "$1" != "."then if test -z "$1" then SRCDIR=$SRCDIR/src else SRCDIR=$SRCDIR/$1 fifiOBJDIR=$SRCDIR/"$ARCH"objsELFDIR=$SRCDIR/elf"$ARCH"objsAC_SUBST(SRCDIR)dnlAC_SUBST(OBJDIR)dnlAC_SUBST(ELFDIR)dnl])dnl#-------------------------------------------------------------------------dnl# Rpath handlingdnl#-------------------------------------------------------------------------RPATH=""AC_SUBST(RPATH)dnldnl# determine whether or not -R or -rpath can be usedAC_DEFUN(JD_INIT_RPATH,[case "$host_os" in *linux*|*solaris* ) if test "X$GCC" = Xyes then if test "X$ac_R_nospace" = "Xno" then RPATH="-Wl,-R," else RPATH="-Wl,-R" fi else if test "X$ac_R_nospace" = "Xno" then RPATH="-R " else RPATH="-R" fi fi ;; *osf*) if test "X$GCC" = Xyes then RPATH="-Wl,-rpath," else RPATH="-rpath " fi ;;esac])AC_DEFUN(JD_SET_RPATH,[if test "X$1" != "X"then if test "X$RPATH" = "X" then JD_INIT_RPATH if test "X$RPATH" != "X" then RPATH="$RPATH$1" fi else RPATH="$RPATH:$1" fifi])dnl-------------------------------------------------------------------------AC_DEFUN(JD_SIMPLE_LIB_DIR,[changequote(<<, >>)dnldefine(<<JD_UP_NAME>>, translit($1, [a-z], [A-Z]))dnlchangequote([, ])dnlJD_UP_NAME[]_LIB_DIR=$JD_Above_Dir/$1/libsrc/"$ARCH"objsJD_UP_NAME[]_INCLUDE=$JD_Above_Dir/$1/libsrcif test ! -d "[$]JD_UP_NAME[]_INCLUDE"then JD_UP_NAME[]_LIB_DIR=$JD_Above_Dir/$1/src/"$ARCH"objs JD_UP_NAME[]_INCLUDE=$JD_Above_Dir/$1/src if test ! -d "[$]JD_UP_NAME[]_INCLUDE" then echo "" echo WARNING------Unable to find the JD_UP_NAME directory echo You may have to edit $CONFIG_DIR/src/Makefile. echo "" fifiAC_SUBST(JD_UP_NAME[]_LIB_DIR)dnlAC_SUBST(JD_UP_NAME[]_INCLUDE)dnlundefine([JD_UP_NAME])dnl])dnl-------------------------------------------------------------------------AC_DEFUN(JD_FIND_GENERIC,[changequote(<<, >>)dnldefine(<<JD_UP_NAME>>, translit($1, [a-z], [A-Z]))dnlchangequote([, ])dnl# Look for the JD_UP_NAME package#JD_UP_NAME[]_INCLUDE=""#JD_UP_NAME[]_LIB_DIR=""# This list consists of "include,lib include,lib ..."JD_Search_Dirs="$JD_Above_Dir2/$1/libsrc,$JD_Above_Dir2/$1/libsrc/"$ARCH"objs \ $JD_Above_Dir/$1/libsrc,$JD_Above_Dir/$1/libsrc/"$ARCH"objs \ $JD_Above_Dir2/$1/src,$JD_Above_Dir2/$1/src/"$ARCH"objs \ $JD_Above_Dir/$1/src,$JD_Above_Dir/$1/src/"$ARCH"objs"test "x$exec" = "xNONE" && exec="$ac_default_prefix"test "x$exec_prefix" = "xNONE" && exec_prefix="$prefix"JD_Search_Dirs="$JD_Search_Dirs \ $includedir,$libdir \ $prefix/include,$exec_prefix/lib \ $HOME/include,$HOME/lib"if test -n "$ARCH"then JD_Search_Dirs="$JD_Search_Dirs $HOME/include,$HOME/$ARCH/lib" JD_Search_Dirs="$JD_Search_Dirs $HOME/include,$HOME/sys/$ARCH/lib"fi# Now add the standard system includes. The reason for doing this is that # the other directories may have a better chance of containing a more recent# version.test "x$exec" = "xNONE" && exec="$ac_default_prefix"test "x$exec_prefix" = "xNONE" && exec_prefix="$prefix"JD_Search_Dirs="$JD_Search_Dirs \ /usr/local/include,/usr/local/lib \ /usr/include,/usr/lib \ /usr/include/$1,/usr/lib \ /usr/include/$1,/usr/lib/$1"echo looking for the JD_UP_NAME libraryfor include_and_lib in $JD_Search_Dirsdo # Yuk. Is there a better way to set these variables?? generic_include=`echo $include_and_lib | tr ',' ' ' | awk '{print [$]1}'` generic_lib=`echo $include_and_lib | tr ',' ' ' | awk '{print [$]2}'` echo Looking for $1.h in $generic_include echo and lib$1.a in $generic_lib if test -r $generic_include/$1.h && test -r $generic_lib/lib$1.a then echo Found it. JD_UP_NAME[]_LIB_DIR="$generic_lib" JD_UP_NAME[]_INCLUDE="$generic_include" break else if test -r $generic_include/$1.h && test -r $generic_lib/lib$1.so then echo Found it. JD_UP_NAME[]_LIB_DIR="$generic_lib" JD_UP_NAME[]_INCLUDE="$generic_include" break fi fidoneif test -n "[$]JD_UP_NAME[]_LIB_DIR"then jd_have_$1="yes"else echo Unable to find the $JD_UP_NAME library. echo You may have to edit $CONFIG_DIR/src/Makefile. JD_UP_NAME[]_INCLUDE=$JD_Above_Dir/$1/src JD_UP_NAME[]_LIB_DIR=$JD_Above_Dir/$1/src/"$ARCH"objs jd_have_$1="no"fiJD_UP_NAME[]_INC="-I[$]JD_UP_NAME[]_INCLUDE"JD_UP_NAME[]_LIB="-L[$]JD_UP_NAME[]_LIB_DIR"JD_SET_RPATH([$]JD_UP_NAME[]_LIB_DIR)dnl if test "X$GCC" = Xyesdnl thendnl RPATH_[]JD_UP_NAME="-Wl,-R[$]JD_UP_NAME[]_LIB_DIR"dnl elsednl RPATH_[]JD_UP_NAME="-R[$]JD_UP_NAME[]_LIB_DIR"dnl fi# gcc under solaris is often not installed correctly. Avoid specifying# -I/usr/include.if test "[$]JD_UP_NAME[]_INC" = "-I/usr/include"then JD_UP_NAME[]_INC=""fiif test "[$]JD_UP_NAME[]_LIB" = "-L/usr/lib"then JD_UP_NAME[]_LIB="" RPATH_[]JD_UP_NAME=""fiAC_SUBST(JD_UP_NAME[]_LIB)dnlAC_SUBST(JD_UP_NAME[]_INC)dnlAC_SUBST(JD_UP_NAME[]_LIB_DIR)dnlAC_SUBST(JD_UP_NAME[]_INCLUDE)dnldnl AC_SUBST(RPATH_[]JD_UP_NAME)dnlundefine([JD_UP_NAME])dnl])dnl-------------------------------------------------------------------------AC_DEFUN(JD_FIND_SLANG,[JD_FIND_GENERIC(slang)])dnl-------------------------------------------------------------------------AC_DEFUN(JD_GCC_WARNINGS,[AC_ARG_ENABLE(warnings, [ --enable-warnings turn on GCC compiler warnings], [gcc_warnings=$enableval])if test -n "$GCC"then CFLAGS="$CFLAGS -fno-strength-reduce" if test -n "$gcc_warnings" then CFLAGS="$CFLAGS -Wall -W -pedantic -Winline -Wmissing-prototypes \ -Wnested-externs -Wpointer-arith -Wcast-align -Wshadow -Wstrict-prototypes" # Now trim excess whitespace CFLAGS=`echo $CFLAGS` fifi])IEEE_CFLAGS=""dnl-------------------------------------------------------------------------AC_DEFUN(JD_IEEE_CFLAGS,[case "$host_cpu" in *alpha* ) if test "$GCC" = yes then IEEE_CFLAGS="-mieee" else IEEE_CFLAGS="-ieee_with_no_inexact" fi ;; * ) IEEE_CFLAGS=""esac])dnl-------------------------------------------------------------------------AC_DEFUN(JD_CREATE_ORULE,[PROGRAM_OBJECT_RULES="$PROGRAM_OBJECT_RULES\$(OBJDIR)/$1.o : \$(SRCDIR)/$1.c \$(DOT_O_DEPS) \$("$1"_O_DEP) cd \$(OBJDIR); \$(COMPILE_CMD) \$("$1"_C_FLAGS) \$(SRCDIR)/$1.c"])dnl-------------------------------------------------------------------------AC_DEFUN(JD_CREATE_ELFORULE,[PROGRAM_ELF_ORULES="$PROGRAM_ELF_ORULES\$(ELFDIR)/$1.o : \$(SRCDIR)/$1.c \$(DOT_O_DEPS) \$("$1"_O_DEP)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -