Website: https://www.dealii.org/
Policy | Support | Notes |
---|---|---|
M1. Support portable installation through Spack. | Full | There is a spack recipe to build deal.II M1 details |
M2. Provide a comprehensive test suite for correctness of installation verification. | Full | Extensive testsuite for deal.II, including its interfaces to other packages M2 details |
M3. Employ user-provided MPI communicator (no MPI_COMM_WORLD). Don't assume a full MPI 3 implementation without checking. Provide an option to prevent any changes to MPI error-handling if it is changed by default. | Full | None. |
M4. Give best effort at portability to key architectures (standard Linux distributions, GNU, Clang, vendor compilers, and target machines at ALCF, NERSC, OLCF). | Full | None. |
M5. Provide a documented, reliable way to contact the development team. | Full | See https://groups.google.com/g/dealii |
M6. Respect system resources and settings made by other previously called packages (e.g. signal handling). | Full | None. |
M7. Come with an open source (BSD style) license. | Full | deal.II uses the LGPL license. |
M8. Provide a runtime API to return the current version number of the software. | Full | None. |
M9. Use a limited and well-defined symbol, macro, library, and include file name space. | Full | None. |
M10. Provide an xSDK team accessible repository (not necessarily publicly available). | Full | Public repository is at https://github.com/dealii/dealii |
M11. Have no hardwired print or IO statements that cannot be turned off. | Full | None. |
M12. For external dependencies, allow installing, building, and linking against an outside copy of external software. | Full | None. |
M13. Install headers and libraries under deal.II/include and deal.II/lib . |
Full | None. |
M14. Be buildable using 64 bit pointers. 32 bit is optional. | Full | Pointers use the default width of a system ABI. |
M15. All xSDK compatibility changes should be sustainable. | Full | None. |
M16. Any xSDK-compatible package that compiles code should have a configuration option to build in Debug mode. | Full | None. |
M1 details : See https://github.com/spack/spack/tree/develop/var/spack/repos/builtin/packages/dealii
M2 details : See https://www.dealii.org/developer/developers/testsuite.html
Policy | Support | Notes |
---|---|---|
R1. Have a public repository. | Full | Repo is public. |
R2. Possible to run test suite under valgrind in order to test for memory corruption issues. | Full | See https://www.dealii.org/developer/developers/testsuite.html#memcheck . |
R3. Adopt and document consistent system for error conditions/exceptions. | Full | None. |
R4. Free all system resources acquired as soon as they are no longer needed. | Full | None. |
R5. Provide a mechanism to export ordered list of library dependencies. | Full | Via cmake. |
R6. Document versions of packages that it works with or depends upon, preferably in machine-readable form. | Partial | In the readme file. |
R7. Have README, SUPPORT, LICENSE, and CHANGELOG files in top directory. | Partial | README, SUPPORT, and LICENSE yes. The CHANGELOG is autogenerated as an HTML file from other information |
R8. Each xSDK member package should have sufficient documentation to support use and further development. | Full | Extensive documentation of all aspects. |