ROSE Compiler Framework/Software Dependencies

From Wikibooks, open books for an open world
Jump to navigation Jump to search


Goal of this page is to collect input about the external software dependencies of ROSE: what are they? What to do with them?

The outcome is a good balance among functionality, productivity and maintainability.

We sort the dependent software packages based on the degree of impact they have on ROSE


EDG is used to support C and C++. But it is proprietary so we have to maintain and release binaries instead.

We are actively developing Clang to ROSE connection to reduce the dependence on EDG.

TODO: prompt Fortran users that EDG is not required.

Boost C++ Library[edit]


JAVA JDK[edit]

Why do we need this?

Can we make it optional?


Why do we need this?

  • gfortran acts as the backend compiler to support Fortran source to source translation

Can we make it optional?

  • if you are not using java via the --without-java flag, FORTRAN support is disabled
  • the configuration should prompt users to
    • disable Fortran support if gfortran is not available
    • install gfortran if Fortran support is desired.


TODO: Jenkins should have a few nodes with minimum software packages installed to test ROSE.