sandialabs / seacas

The Sandia Engineering Analysis Code Access System (SEACAS) is a suite of preprocessing, postprocessing, translation, and utility applications supporting finite element analysis software using the Exodus database file format.
Other
134 stars 79 forks source link

how to enable all packages? #18

Closed nschloe closed 8 years ago

nschloe commented 8 years ago

Perhaps @bartlettroscoe can help out here: I'm trying to enable all SEACAS packages, I tried

  -DSEACASProj_ENABLE_ALL_PACKAGES:BOOL=ON \
  -DSEACASProj_ENABLE_ALL_OPTIONAL_PACKAGES:BOOL=ON \
  -DSEACASProj_ENABLE_SECONDARY_TESTED_CODE:BOOL=ON \

With this, however, I'm still getting

Final set of non-enabled SE packages:  SEACASSVDI SEACASPLT SEACASBlot SEACASFastq 4

I'm not even sure if I need all of the parameters above.

bartlettroscoe commented 8 years ago

@nschloe, can you please attach your configure script and the full cmake STDOUT? I think GitHub issues allows you to attach files now to Issues. I should be able to see what is happening from that.

nschloe commented 8 years ago
cmake  \
  -DBUILD_SHARED_LIBS:BOOL=ON \
  -DSEACASProj_ENABLE_ALL_PACKAGES:BOOL=ON \
  -DSEACASProj_ENABLE_ALL_OPTIONAL_PACKAGES:BOOL=ON \
  -DSEACASProj_ENABLE_SECONDARY_TESTED_CODE:BOOL=ON \
  -DSEACASProj_ENABLE_TESTS:BOOL=ON \
  -DSEACASProj_USE_GNUINSTALLDIRS:BOOL=ON \
  -DHDF5_ROOT:PATH=/usr \
  \
  -DTPL_ENABLE_CGNS:BOOL=ON \
  -DTPL_ENABLE_Matio:BOOL=ON \
  -DTPL_ENABLE_METIS:BOOL=ON \
  -DTPL_ENABLE_ParMETIS:BOOL=ON \
  -DTPL_ENABLE_Netcdf:BOOL=ON \
  -DTPL_ENABLE_MPI:BOOL=OFF \
  -DTPL_ENABLE_Pamgen:BOOL=OFF \
  -DTPL_ENABLE_X11:BOOL=OFF \
  -DTPL_ENABLE_Zlib:BOOL=ON \
  \
  ../source-upstream/

and my full config out.

bartlettroscoe commented 8 years ago

@nschloe, looks like the disabled X11 TPL is taking out these SEACAS subpackages shown in the configure output in these lines:

Disabling all packages that have a required dependency on disabled TPLs and optional package TPL support based on TPL_ENABLE_<TPL>=OFF ...

-- Setting SEACASProj_ENABLE_SEACASSVDI=OFF because SEACASSVDI has a required library dependence on disabled TPL X11

Disabling subpackages for hard disables of parent packages due to SEACASProj_ENABLE_<PARENT_PACKAGE>=OFF ...

Disabling forward required SE packages and optional intra-package support that have a dependancy on disabled SE packages SEACASProj_ENABLE_<TRIBITS_PACKAGE>=OFF ...

-- Setting SEACASProj_ENABLE_SEACASPLT=OFF because SEACASPLT has a required library dependence on disabled package SEACASSVDI
-- Setting SEACASProj_ENABLE_SEACASBlot=OFF because SEACASBlot has a required library dependence on disabled package SEACASPLT
-- Setting SEACASProj_ENABLE_SEACASFastq=OFF because SEACASFastq has a required library dependence on disabled package SEACASPLT

See the disable behaviors documented here. Specifically, you are seeing TPL disable triggers auto-disables of downstream dependencies and SE package disable triggers auto-disables of downstream dependencies.

Let me know if you have questions about this.

-Ross

gsjaardema commented 8 years ago

The listed packages (blot, plt, fastq, svdi) definitely require X11, so that makes sense.

nschloe commented 8 years ago

Makes sense, thanks. The final config for enabling (almost) everything is then

cmake  \
  -D CMAKE_INSTALL_PREFIX:PATH=/opt/seacas \
  -D SEACASProj_ENABLE_ALL_PACKAGES:BOOL=ON \
  -D SEACASProj_ENABLE_SECONDARY_TESTED_CODE:BOOL=ON \
  -D SEACASProj_ENABLE_TESTS:BOOL=ON \
  -D BUILD_SHARED_LIBS:BOOL=ON \
  -D SEACASProj_USE_GNUINSTALLDIRS:BOOL=ON \
  \
  -D TPL_ENABLE_CGNS:BOOL=ON \
  -D TPL_ENABLE_Matio:BOOL=ON \
  -D TPL_ENABLE_METIS:BOOL=ON \
  -D TPL_ENABLE_ParMETIS:BOOL=ON \
  -D TPL_ENABLE_Netcdf:BOOL=ON \
  -D TPL_ENABLE_MPI:BOOL=ON \
  -D TPL_ENABLE_Pamgen:BOOL=ON \
  -D TPL_ENABLE_X11:BOOL=ON \
  -D TPL_ENABLE_Zlib:BOOL=ON \
  \
  ../source-upstream/