source: trunk/m4/ax_ll.m4 @ 26

Revision 26, 2.6 KB checked in by mmamonski, 13 years ago (diff)

SupMUC on site fixes: 1. Polling mode 2. Handling missing jobs 3. monitor -> drmaa_monitor 4. force stderr file creation

  • Property svn:keywords set to Id Revision
RevLine 
[20]1# $Id$
[1]2#
3# SYNOPSIS
4#
5#   AX_LL([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
6#
7# DESCRIPTION
8#
9#   Check for LL libraries and headers.
10#
11#   This macro calls::
12#
13#     AC_SUBST(LL_INCLUDES)
14#     AC_SUBST(LL_LDFLAGS)
15#     AC_SUBST(LL_LIBS)
16#
17# LAST MODIFICATION
18#
19#   2010-04-08
20#
21# LICENSE
22#
23#   Written by:
24#     Mariusz Mamoński <mamonski@man.poznan.pl>
25#   Based on macro for LSF written by
26#     Lukasz Ciesnik <lukasz.ciesnik@gmail.com>
27#   Placed under Public Domain.
28#
29
30AC_DEFUN([AX_LL],[
31AC_ARG_WITH([ll-inc], [AC_HELP_STRING([--with-ll-inc=<include-dir>],
32                [Path to LoadLeveler headers directory (containing llapi.h)])])
33AC_ARG_WITH([ll-lib], [AC_HELP_STRING([--with-ll-lib=<lib-dir>],
34                [Path to directory with LoadLevler libraries (containing libllapi.a)])])
35
36AC_SUBST(LL_INCLUDES)
37AC_SUBST(LL_LDFLAGS)
38AC_SUBST(LL_LIBS)
39
40AC_MSG_NOTICE([checking for LoadLeveler])
41
42AC_MSG_CHECKING([for LoadLeveler compile flags])
43ax_ll_msg=""
44if test x$with_ll_inc != x; then
45        LL_INCLUDES="-I${with_ll_inc}"
46else
[26]47        LLSUBMIT_PATH=`readlink -f $(which llsubmit)`
[1]48        if test x"$LLSUBMIT_PATH" != x; then
49                LLSUBMIT_DIR=`dirname $LLSUBMIT_PATH`
50                LL_HOME=`dirname $LLSUBMIT_DIR`
51                LL_INCLUDES="-I$LL_HOME/include"
[26]52                AC_MSG_NOTICE([no --with-ll-inc given. Using llsubmit path based guess: $LL_INCLUDES])
[1]53        else
54                ax_ll_msg="no llsubmit in PATH"
55        fi
56fi
57
58AC_MSG_RESULT([$LL_INCLUDES$ax_ll_msg])
59
60AC_MSG_CHECKING([for LoadLeveler library dir])
61ax_ll_msg=""
62if test x$with_ll_lib == x; then
63       
[26]64        LLSUBMIT_PATH=`readlink -f $(which llsubmit)`
[1]65       
66        if test x"$LLSUBMIT_PATH" != x; then
67                LLSUBMIT_DIR=`dirname $LLSUBMIT_PATH`
68                LL_HOME=`dirname $LLSUBMIT_DIR`
69                with_ll_lib=$LL_HOME/lib
[26]70                AC_MSG_NOTICE([no --with-ll-lib given. Using llsubmit path based guess: $with_ll_lib])
[1]71        else
72                ax_ll_msg="no llsubmit in PATH"
73        fi
74fi
75AC_MSG_RESULT([$with_ll_lib$ax_ll_msg])
76
77
78LL_LIBS="-lllapi "
79LL_LDFLAGS="-L${with_ll_lib}"
80
81
82CPPFLAGS_save="$CPPFLAGS"
83LDFLAGS_save="$LDFLAGS"
84LIBS_save="$LIBS"
85CPPFLAGS="$CPPFLAGS $LL_INCLUDES"
86LDFLAGS="$LDFLAGS $LL_LDFLAGS"
87LIBS="$LIBS $LL_LIBS"
88
89ax_ll_ok="no"
90
91AC_MSG_CHECKING([for usable LL libraries/headers])
92AC_RUN_IFELSE([AC_LANG_PROGRAM([[ #include "llapi.h" ]],
93                [[ LL_job job_info; /*at least check for declared structs */
94                   return 0;
95                 ]])],
96        [ ax_ll_ok="yes"],
97        [ echo "*** The LoadLeveler test program failed to link or run. See the file config.log"
98          echo "*** for the exact error that occured."],
99        [
100                ax_ll_ok=yes
101                echo $ac_n "cross compiling; assumed OK... $ac_c"
102        ])
103CPPFLAGS="$CPPFLAGS_save"
104LDFLAGS="$LDFLAGS_save"
105LIBS="$LIBS_save"
106AC_MSG_RESULT([$ax_ll_ok])
107
108if test x"$ax_ll_ok" = xyes; then
109        ifelse([$1], , :, [$1])
110else
111        ifelse([$2], , :, [$2])
112fi
113])
Note: See TracBrowser for help on using the repository browser.