Changes between Version 10 and Version 11 of ropp_repository


Ignore:
Timestamp:
2008-11-24T16:38:54Z (15 years ago)
Author:
Huw Lewis
Comment:

Update instructions to developers adding new routines

Legend:

Unmodified
Added
Removed
Modified
  • ropp_repository

    v10 v11  
    5555}}}
    5656These commands need to be repeated in each of the {{{ropp_tools}}}, {{{ropp_io}}} etc modules. Thereafter, if any changes are made to the low-level configure.ac or Makefile.am template files, an {{{autoreconf}}} should be sufficient. The whole sequence needs to be re-run if any .m4 (macro) file is changed.
     57
     58=== Developing new code ===
     59
     60In order to add a new sub-directory to the ROPP build system within a module it is necessary to edit the {{{AC_CONFIG_FILES}}} list of sub-directory Makefiles in the top-level {{{configure.ac}}} file. It is also necessary to update the {{{SUBDIRS}}} list of subdirectories in the top-level {{{Makefile.am}}} file. 
     61
     62To add any new subroutine files to the build system it is necessary to update the {{{build/Makefile.am}}} file by defining a list of subroutines with a suitable collection name and then adding the collection name to the {{{libropp_<modname>_a_SOURCES}}} list. If any new F90 modules are to be built, the module names should be added to the {{{MODULES}}} listing.
     63
     64All '.f90' and 'Makefile' files are built as part of the ROPP distribution as default. In order to include other files (e.g. data files) within the ROPP distribution, it is necessary to explicitly define these as {{{EXTRA_DIST}}} within the {{{Makefile.am}}} file in the appropriate subdirectory.
     65
     66Having edited {{{configure.ac}}} and or {{{Makefile.am}}} files, type {{{autorconf}}} to generate the corresponding {{{configure}}} or {{{Makefile.in}}} scripts. In order to generate the updated {{{Makefile}}} script it is necessary to run {{{configure}}}, usually from a compiler-specific configuration file with the appropriate compiler flag settings and library paths.
     67
     68{{{
     69autoreconf
     70ropp_configure_<compiler>_<architecture>
     71}}}