script to query PETSc makefile variables?

Barry Smith bsmith at mcs.anl.gov
Thu Jan 22 17:43:10 CST 2009


On Jan 22, 2009, at 5:34 PM, Boyana Norris wrote:

>
>
> Barry Smith wrote:
>>
>>    The danger is that the PETSc conf/variables makefile defines its  
>> own variables based on various variables that
>> are defined in PETSC_ARCH/conf/petscvariables hence the "raw"  
>> variable values from running config/configure.py may not
>> always be what you need.
>
> Actually that is exactly the reason I wanted the script. I don't  
> want *all* the variables, just a couple. If I just include the  
> petscvariables file in my makefile, all hell breaks lose since there  
> are lots of conflicts in variable names (the curse of everybody  
> being "good" and following the gnu model).

    I understand this and yes we need to make it painless to get just  
a few variables. I am not advocating that you include all of the  
petscvariables.
  My concern is that the python script may not be able to give you the  
variables that you actually need (like complete link library  
listings), since they
are not figured out until after the python config/configure.py system  
is done.

    Barry

>
>>
>>   Yes, this situation has to be fixed. There are too many levels of  
>> complexity and how can anyone keep track of things, what a mess.
>> Satish doesn't agree but I think the logic and defines in conf/ 
>> variables needs to be removed into the config/configure.py system
>>
>
> Having both would make everyone happy, if it can be done without  
> duplicating information.
>
> Boyana
>>
>>   Barry
>>
>>
>> On Jan 22, 2009, at 5:15 PM, Boyana Norris wrote:
>>
>>> Thank you both -- I'd prefer to use configVars.py, but it seems to  
>>> depend on the script module, which is not standard in at least  
>>> Python 2.5. Googling for "python script module" is a joke, as you  
>>> can imagine. Is this a PETSc thing or a general module I can get  
>>> somewhere?
>>>
>>> Thanks!
>>> Boyana
>>>
>>> Matthew Knepley wrote:
>>>> Check out $PETSC_DIR/bin/configVars.py
>>>>
>>>> Matt
>>>>
>>>> On Thu, Jan 22, 2009 at 4:38 PM, Satish Balay <balay at mcs.anl.gov>  
>>>> wrote:
>>>>
>>>>> On Thu, 22 Jan 2009, Boyana Norris wrote:
>>>>>
>>>>>
>>>>>> Is there a script that can be used to query the values of  
>>>>>> various variables
>>>>>> defined in petscvariables makefile snippets (similar to lots of  
>>>>>> linux tools'
>>>>>> pkg-config scripts)?
>>>>>>
>>>>> [don't have canned code for this but] I've previously recommended
>>>>> doing the following in the packages configure.. [facets now has  
>>>>> this
>>>>> in their configure to detect petsc]
>>>>>
>>>>>
>>>>> - petsc_arch and petsc_dir are inputs to configure
>>>>> - Create a dummy makefile on the fly
>>>>> - run this makefile to echo relavent stuff..
>>>>>
>>>>>
>>>>> For eg:
>>>>> asterix:/home/balay/download-pine>cat configpetsc.sh
>>>>> #!/bin/sh
>>>>>
>>>>> PETSC_ARCH=asterix64
>>>>> PETSC_DIR=/home/balay/spetsc
>>>>>
>>>>> cat <<EOF > petscmake
>>>>> PETSC_ARCH = ${PETSC_ARCH}
>>>>> PETSC_DIR  = ${PETSC_DIR}
>>>>> include ${PETSC_DIR}/conf/base
>>>>> EOF
>>>>>
>>>>> PETSC_INC=`make -f petscmake getincludedirs`
>>>>> PETSC_LIB=`make -f petscmake getlinklibs`
>>>>>
>>>>> echo '**** PETSC_INC ***'
>>>>> echo ${PETSC_INC}
>>>>> echo '**** PETSC_LIB ***'
>>>>> echo ${PETSC_LIB}
>>>>>
>>>>>
>>>>> Satish
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>> -- 
>>> Boyana Norris, Computer Scientist    |   Email: norris at mcs.anl.gov
>>> Argonne National Laboratory          |   Phone: +1 (630) 252 7908
>>> http://www.mcs.anl.gov/~norris/      |   Fax:   +1 (630) 252 5986
>>
>
> -- 
> Boyana Norris, Computer Scientist    |   Email: norris at mcs.anl.gov
> Argonne National Laboratory          |   Phone: +1 (630) 252 7908
> http://www.mcs.anl.gov/~norris/      |   Fax:   +1 (630) 252 5986




More information about the petsc-dev mailing list