E3SM-Project / scorpio

A high-level Parallel I/O Library for structured grid applications
19 stars 16 forks source link

Fix build errors with ADIOS2 2.9.0 by removing deprecated debug mode flag #515

Closed dqwu closed 1 year ago

dqwu commented 1 year ago

This PR addresses build errors that occur when using ADIOS2 2.9.0 with SCORPIO. Specifically, the deprecated debug mode flag has been removed to enable successful builds with the latest version of ADIOS2. This PR ensures that SCORPIO can still be built with ADIOS2 2.8 as well.

dqwu commented 1 year ago

Build errors with ADIOS2 2.9.0 (without this fix):

scorpio/tools/adios2pio-nm/adios2pio-nm-lib.cxx:2147:41: error: ‘DebugON’ is not a member of ‘adios2’
     adios2::ADIOS adios(w_comm, adios2::DebugON);
                                         ^~~~~~~
scorpio/tools/adios2pio-nm/adios2pio-nm-lib.cxx:2233:47: error: ‘DebugON’ is not a member of ‘adios2’
         adios2::ADIOS adios_new(comm, adios2::DebugON);
                                               ^~~~~~~
...
scorpio/src/clib/pioc.c: In function ‘PIOc_Init_Intracomm’:
scorpio/src/clib/pioc.c:1308:72: error: macro "adios2_init" passed 2 arguments, but takes just 1
         ios->adiosH = adios2_init(ios->adios_comm, adios2_debug_mode_on);
                                                                        ^
scorpio/src/clib/pioc.c:1308:23: error: ‘adios2_init’ undeclared (first use in this function); did you mean ‘adios2_get’?
         ios->adiosH = adios2_init(ios->adios_comm, adios2_debug_mode_on);
                       ^~~~~~~~~~~
                       adios2_get