checkbadSource: enforce proper style in makefiles
Change use of void (*)(void) and void (**)(void) in the PETSc API to PetscVoidFn * and PetscVoidFn ** or PetscErrorCodeFn * or PetscErrorCodeFn **
Convert some SETERRQ() to PetscCheck()
Remove use of preconditioning or preconditioner matrix when it should be phrased as matrix used to construct preconditioner
Fortran 90: fully embrace After 34 years!- deprecate use of 'F90' in Fortran function names- use Fortran pointers when appropriate- the new Fortran API is not backward compatible with previous ve
Fortran 90: fully embrace After 34 years!- deprecate use of 'F90' in Fortran function names- use Fortran pointers when appropriate- the new Fortran API is not backward compatible with previous versions!- also clean up inconsistent PETSc code detected by new Fortran generation tools- drop use of bfort- automatically generate all the Fortran PETSc objects, enums etc from the include files- generate most of the Fortran interface definitions and functions from the source code- simplify the number and organization of Fortran modulesCo-authored-by: Jose E. Roman <jroman@dsic.upv.es>
show more ...
Use NULL or nullptr instead of casted 0
Fix usage of deprecated PETSC_DEFAULT
Deprecate PETSC_DEFAULT for Tao parameters with PETSC_CURRENT and add support for PETSC_DETEREMINE to use default
Remove multiple parentheses and extra semicolongit grep -l -E "\(\([a-zA-Z0-9_]+\)\(\*[a-zA-Z0-9_]+\)[, )]" | xargs sed -r -i'' 's#\(\(([a-zA-Z0-9_]+)\)\(\*([a-zA-Z0-9_]+)\)([, )])#\(\(\1\)\*\2\3#g
Remove multiple parentheses and extra semicolongit grep -l -E "\(\([a-zA-Z0-9_]+\)\(\*[a-zA-Z0-9_]+\)[, )]" | xargs sed -r -i'' 's#\(\(([a-zA-Z0-9_]+)\)\(\*([a-zA-Z0-9_]+)\)([, )])#\(\(\1\)\*\2\3#g'git grep -l -E "Petsc(.)*\(\(\*[a-zA-Z0-9_]*\)," | xargs sed -r -i'' 's#Petsc([a-zA-Z0-9_]*)\(\(\*([a-zA-Z0-9_]*)\), #Petsc\1(*\2, #g'git grep -l -E "([\!\&\~\*\(]|\)\)|\([^,\*\(]+\**\))\(([a-zA-Z0-9_]+((\.|->)[a-zA-Z0-9_]+|\[[a-zA-Z0-9_ \%\+\*\-]+\])+)\)" | xargs sed -r -i'' 's#([\!\&\~\*\(]|\)\)|\([^,\*\(]+\**\))\(([a-zA-Z0-9_]+((\.|->)[a-zA-Z0-9_]+|\[[a-zA-Z0-9_ \%\+\*\-]+\])+)\)#\1\2#g'
checkbadSource: rules for PetscFunctionBegin and derivatives
Some Tao monitor options are incorrectly called viewers, yikes and more yikesCorrect ``-tao_view_gradient``, ``-tao_view_ls_residual``, ``-tao_view_solution``, and ``-tao_view_stepdirection`
Merge branch 'barry/2023-12-22/rm-libbase' into 'main'LIBBASE is no longer used in make so remove itSee merge request petsc/petsc!7139
LIBBASE is no longer used in make so remove it
Remove MANSEC from makefiles it is not needed in, tutorials and tests
Rename rules.doc and rules.utils because GitLab treats the former as a MS Word document.Thanks-to: Jed Brown
Remove DIRS variable and unneeded tabs from all makefiles since no longer neededCommit-type: housekeeping
Convert all header guards to pragma once
Add static to internal functions
Profiling: Improve !defined(PETSC_USE_LOG) #defines- If we cast macro arguments to void, we can avoid unused errors that have forced lots of conditionally included code like this:```c #if def
Profiling: Improve !defined(PETSC_USE_LOG) #defines- If we cast macro arguments to void, we can avoid unused errors that have forced lots of conditionally included code like this:```c #if defined(PETSC_USE_LOG) PetscLogEvent event; #endif```- Having global counters like petsc_TotalFlops externed event if !PetscDefined(USE_LOG) helps to remove a lot of needless `#ifdef`s around code that can instead be placed in `if (PetscDefined(USE_LOG)) {}` blocks.
Allow generatefortranstubs.py to generate the stubs and module files in the PETSC_ARCH directory
Remove need for seperate lib/petsc/conf/test file by merging with rules fileCommit-type: maintainability
non-test and tutorial makefiles only need rules.doc not the full rulesCommit-type: documentation
Only makefiles in the test and tutorial directories need lib/petsc/conf/testCommit-type: housekeeping
Remove now unneeded SOURCE* variables from makefilesCommit-type: configure, housekeeping
Remove unneeded SOURCEH from makefilesNo longer used by docs or build
12345678