Brian Barrett wrote:
On Apr 12, 2007, at 3:45 AM, Bas van der Vlies wrote:

Jeff Squyres wrote:
On Apr 11, 2007, at 8:08 AM, Bas van der Vlies wrote:
The OMPI_CHECK_PACKAGE macro is a rather nasty macro that tries to reduce the replication of checking for a header then a library, then setting CFLAGS, LDFLAGS, LIBS, and all that. There are two components that use the TM libraries, so we have a centralized macro that sets the configuration data for the two components. The -I, -L, -ls are set in OMPI_CHECK_PACKAGE. In the OMPI_CHECK_TM macro, you probably want to check for pbs- config, then if that fails, run the OMPI_CHECK_PACKAGE stuff. Of course, you might want to run the OMPI_CHECK_PACKAGE code with CFLAGS and LDFLAGS set to what you get from pbs-config, to make sure the libraries actually work. The way we set flags is a bit weird -- you need to set the environment variables:
   $1_CPPFLAGS
   $1_CFLAGS
   $1_LDFLAGS
   $1_LIBS
I have made a crude version that uses 'pbs-config' and check uses the OMPI_CHECK_PACKAGE macro but in the OMPI_CHECK_PACKAGE_HEADER macro /include is appended if it not /usr or /usr/include. So there must option to prevent this (pbs-config give the right value). Then i do not have to set the CPPFLAGS variable.

OMPI_CHECK_PACKAGE_LIB:
For the library name there is also -l prepended so i can not use the name form 'pbs-config --libs' and it as the same problem as with checking the header if it is not standard then /lib is appended.
What about assigning $1_<foo> directly and then passing flags that will be ignored to OMPI_CHECK_PACKAGE (e.g., "/usr")? I have not tried this at all -- just hacked this in emacs. So it may not even compile -- you'll need to test it. See new attachment. :-)
--Jeff Squyres
Cisco Systems
Jeff,

Maybe is was not clear enough ;-). The $1_<FLAGS> do not work i had to use CPPFLAGS instead of $1_CPPFLAGS else the test fails. On our site the torque library is found in /usr/lib so that can be found else we also
must set the LDFLAGS flag.

I have the right values of include/library directory but they are handled as directory prefix by the OMPI_CHECK_PACKAGE macro and not as directory.

What i tried to accomplish was that the library name was set by a variable. So if torque decided to use another name for the library we do not have to change the macro again.

Sorry not to respond yesterday -- I was frantically writing a couple of papers that desperately needed finishing. Anyway, yeah, I forgot that OMPI_CHECK_PACKAGE did all that stuff (I don't know why I forgot -- that's the whole point of OMPI_CHECK_PACKAGE). Anyway, I'd just figure out what the CFLAGS, LDFLAGS, and LIBS required for TM are (using pbs-config, of course), then call an AC_CHECK_HEADER and AC_CHECK_LIB to make sure the headers and libs are ok. Then set $1_ {CFLAGS, LDFLAGS, LIBS} as needed and return. Just remember that if you set something in CFLAGS or friends during the macro, that you should remove it before the macro returns so that all the other configure tests don't have those values.


Oke thanks for the explanation.
--
********************************************************************
*                                                                  *
*  Bas van der Vlies                     e-mail: b...@sara.nl      *
*  SARA - Academic Computing Services    phone:  +31 20 592 8012   *
*  Kruislaan 415                         fax:    +31 20 6683167    *
*  1098 SJ Amsterdam                                               *
*                                                                  *
********************************************************************

Reply via email to