-
miller86 authored
command-line to CMake? By 'override', I mean change from what the default (config-site file says) is? Do you specify -DFOO_DIR:PATH=<path> or -DVISIT_FOO_DIR:PATH=<path>? Neither worked. Is the ':PATH' really necessary? Don't know but I am not taking any chances. I could not get VisIt's CMake behavior to accept overrides of 3rd party libs directory locations using on the command line to CMake. There is some stuff going on in CMake where VISIT_3RDPARTY_VAR/DEP macros are concerned that I just don't understand. For a lib named FOO, here are actions that occured... The VISIT_3RDPARTY_VAR/DEP macro summarily called SET(VISIT_FOO_DIR VISIT_FOO_DIR-NOTFOUND CACHE PATH "this is foo") However, that SET() call would silently fail (e.g. value of VISIT_FOO_DIR would NOT change) if VISIT_FOO_DIR had been previously defined, typicaly by a config-site file's VISIT_OPTION_DEFAULT(VISIT_FOO_DIR...) line. On the other hand, if VISIT_FOO_DIR had NOT been previously defined then, the SET() call would succeed ensuring an entry for FOO was in the cache for SetUpThirdParty.cmake to later find. Immediately after the above SET() command, the macro would test to see if VISIT_FOO_DIR had the value "VISIT_FOO_DIR-NOTFOUND" (in other words, did the above SET() operation actually do anything) and if NOT, then copy the value of VISIT_FOO_DIR into FOO_DIR. Ultimately, it is FOO_DIR that SetUpThirdParty.cmake uses to test/ensure a lib is setup correctly. And, the previous logic did take whatever the value of VISIT_FOO_DIR was and put it into FOO_DIR. So, I reasoned that -DFOO_DIR:PATH=<path> is the correct format for 3rd party lib override options on command line to CMake. I adjusted logic in VISIT_3RDPARTY_VAR/DEP macros to make that work. I also removed redundant argument to these macros (e.g. VISIT_FOO_DIR and FOO_DIR were replaced with just FOO_DIR) so the macros generate the 'VISIT_FOO_DIR' symbol given the 'FOO_DIR' symbol. I also ensured that when a lib is so overrided, the value cached for VISIT_FOO_DIR (is forced to match) matches VISIT_FOO specified on CL. git-svn-id: http://visit.ilight.com/svn/visit/trunk/src@14460 18c085ea-50e0-402c-830e-de6fd14e8384
4dd3f0b0