core icon indicating copy to clipboard operation
core copied to clipboard

Standardize macro names as part of next major release

Open bobpaw opened this issue 9 months ago • 8 comments

I am proposing that we standardize macro names as part of the next major release.

Specifically: should everything be PUMI_ or SCOREC_ (in this case, the actual pumi library could still have PUMI_).

e.g. PUMI_HAS_ZOLTAN, PUMI_PYTHON_INTERFACE, SCOREC_USE_CGNS, SCOREC_NO_MPI, SCOREC_CXX_WARNINGS all seem inconsistent.

Personally I do not have a strong preference but I would like more consistency. Once a decision is made, we should update STYLE.md.

bobpaw avatar Mar 28 '25 17:03 bobpaw

I agree. We should replace all uses of the SCOREC prefix with PUMI.

cwsmith avatar Mar 28 '25 17:03 cwsmith

Ok, cool. I will use the PUMI prefix in my support for PT-Scotch and at some point later go in and replace other instances.

bobpaw avatar Mar 28 '25 17:03 bobpaw

Note, I haven't created a 4.0 tag yet (or created the associated release) so we could still include that change with 4.0.

cwsmith avatar Mar 28 '25 17:03 cwsmith

Ok, that would be good. It would be best to tell the Capstone guys how to build once and not have to change the instructions super quick after.

bobpaw avatar Mar 28 '25 17:03 bobpaw

Should we should also consider updating the CMake variable names for external configration. In this case, we would want to print some deprecation message when old names are used.

jacobmerson avatar Mar 28 '25 17:03 jacobmerson

I think that sounds like the best method. Accept old names in CMake configuration, but convert to the new names (and use new names in CMake logic). Then old config files should still work.

bobpaw avatar Mar 28 '25 17:03 bobpaw

I think the main thing to do is change the CMake project name:

https://github.com/SCOREC/core/blob/7e8072d58e77a1a2279beb6f9fb2180fe59f11d5/CMakeLists.txt#L9

Then Dan's bob.cmake will change a good chunk of the options. But there would certainly be downstream effects. I'm not sure there's any way to not break a lot of builds.

bobpaw avatar Jul 01 '25 02:07 bobpaw

Yeah, I agree. We'll have to include in the 5.0 release notes that this is a breaking change for downstream projects that use our cmake config files.

cwsmith avatar Jul 01 '25 13:07 cwsmith