Merge remote-tracking branch 'origin/barry/add-petscarrayxxx-ops' [PR #1771]
Merged in barry/rm-cmake-legacy (pull request #1714)Remove legacy and cmake compile systemsApproved-by: BarryFSmith <bsmith@mcs.anl.gov>
Add PetscArraycmp(), PetscArraycpy(), PetscArrayzero(), PetscArraymove(), update code to use new formsReplace a couple multi-mallocs with a single mallocReplace backwards loops in MatSetValues_*()
Add PetscArraycmp(), PetscArraycpy(), PetscArrayzero(), PetscArraymove(), update code to use new formsReplace a couple multi-mallocs with a single mallocReplace backwards loops in MatSetValues_*() with PetscArraymove()Commit-type: style-fix, feature
show more ...
Update the use of Collective on in the manual pages to reflect the new styleCommit-type: style-fix, documentationThanks-to: Patrick Sanan <patrick.sanan@gmail.com>
Remove legacy and cmake compile systems- Remove legacy and cmake compile systems from makefiles and config- Clean out various dead code from makefile and lib/petsc/conf/rules- Update lib/petsc/co
Remove legacy and cmake compile systems- Remove legacy and cmake compile systems from makefiles and config- Clean out various dead code from makefile and lib/petsc/conf/rules- Update lib/petsc/conf/test to build all examples, not just those beginning with ex, update examples makefiles to remove now unneeded rules- Deprecated make gnumake, replaced with make libsNote: retained clean-legacy since it is used by clean in rulesCommit-type: style-fix, featureThanks-to: Jed Brown <jed@jedbrown.org> and Satish Balay <balay@mcs.anl.gov>
Man pages: remove .keywords: fieldsThis field is recognized by doctext from Sowing (http://wgropp.cs.illinois.edu/projects/software/sowing/doctext/node20.htm#Node20),but it doesn't seem to be unif
Man pages: remove .keywords: fieldsThis field is recognized by doctext from Sowing (http://wgropp.cs.illinois.edu/projects/software/sowing/doctext/node20.htm#Node20),but it doesn't seem to be uniformly used or maintained.Thus, remove all .keywords: fields, and a following blank line, if present.This is accomplished with GNU sed (gsed on OS X), with the following commands.*Warning* that this type of command can corrupt a .git directory,so be cautious in reusing or modifying these commands. They first lookfor and delete matching lines with a following line consisting of only whitespace,and then delete any remaining matching lines. find src/ -type f -exec gsed -i '/keywords:/ {N; /\n\s*$/d}' {} + find src/ -type f -exec gsed -i '/keywords:/d' {} + find include/ -type f -exec gsed -i '/keywords:/ {N; /\n\s*$/d}' {} + find include/ -type f -exec gsed -i '/keywords:/d' {} +Hints on the sed command obtained from: https://unix.stackexchange.com/questions/100754/how-to-delete-a-specific-line-and-the-following-blank-line-using-gnu-sed
Fixes for begining of users manual and a variety of webpages including manual pagesCommit-type: bug-fix, documentation
Sys: Fix 'extern' declarations
Update tester of mathematica link to handle errors the modern wayCommit-type: testing-fix,style-fix
Remove the use and definition of __FUNCT__ throughout the codeSince all modern C/C++ compilers provide this functionality we no longer need to provide it manually in PETScTime: 1.5 hoursThanks-t
Remove the use and definition of __FUNCT__ throughout the codeSince all modern C/C++ compilers provide this functionality we no longer need to provide it manually in PETScTime: 1.5 hoursThanks-to: Andreas Mang <andreas@ices.utexas.edu>
Updated and simplified Fortran interfaceReduced from 4 distinct approaches to using PETSc from Fortran to 1No more .h90 files (Fortran 90 functionality is now always available)Parameters and func
Updated and simplified Fortran interfaceReduced from 4 distinct approaches to using PETSc from Fortran to 1No more .h90 files (Fortran 90 functionality is now always available)Parameters and function prototypes are now provide through Fortran modules, not includes;only #define are provided in the petscXXXdef.h filesPETSc objects can be declared as either type(tXXX) or XXX. For example type(tVec) or VecMoved now private Fortran include files out of public include directory since uses don't use them;they are only used to generate the Fortran modulesEasier to support and test; we can now easily add more function prototypesAlso had to rework generation of manual pages to consistently use MANSEC and SUBMANSECsince these variables also handle how the Fortran modules are generated.Time: 57 hours
updated PETSc directory layout to match standard packaging strategiesinclude/petsc finclude,private,mpiunilib/petsc confbin/petsc*
manual merge of conflict
fix formatting of some manual pagesspecifically remove use of $ from the middle of parameter or options lists
Sys: drop explicit type arguments from PetscNew() and PetscNewLog()git grep -l 'PetscNew\(Log\)\?(' -- $1 | xargs perl -pi -e 's@PetscNew\([^,;()]+ *, *@PetscNew(@;s@PetscNewLog\(([^,;()]+) *,[^,
Sys: drop explicit type arguments from PetscNew() and PetscNewLog()git grep -l 'PetscNew\(Log\)\?(' -- $1 | xargs perl -pi -e 's@PetscNew\([^,;()]+ *, *@PetscNew(@;s@PetscNewLog\(([^,;()]+) *,[^,;()]+, *@PetscNewLog($1,@'
Sys: add PetscMalloc1 macro, array allocation without redundant typesThe type is inferred from the pointer return type. This patch isautomated via the following script:git grep -l 'PetscMalloc(
Sys: add PetscMalloc1 macro, array allocation without redundant typesThe type is inferred from the pointer return type. This patch isautomated via the following script:git grep -l 'PetscMalloc(.*sizeof' src | xargs perl -pi -e 's@PetscMalloc\(([^,;]*[^,; ]) *\* *sizeof\([^,;()]+\),@PetscMalloc1($1,@'This commit contains an additional bug-fix in csrperm.c, fixing pointerarity. The code was introduced in 2006, but the allocation could nothave been correct at any time. This probably means thatMatDuplicate_SeqAIJPERM has never been tested. a54129beb540034ba105796c682d589e7e1111f2 Richard Tran Mills <rmills@ornl.gov> Added MATSEQCSRPERM support for MatDuplicate() and conversion to/from MATSEQAIJ. Note that these changes are not quite debugged.
Remove --with-dynamic-loading / PETSC_USE_DYNAMIC_LIBRARIESThis option was mostly redundant because normal shared libraries satisfyall the same needs. This commit adds the run-time option-dynami
Remove --with-dynamic-loading / PETSC_USE_DYNAMIC_LIBRARIESThis option was mostly redundant because normal shared libraries satisfyall the same needs. This commit adds the run-time option-dynamic_library_preload that can be used to load/initialize all thepackages in advance, as used to be done when --with-dynamic-loading.The PetscDLLibraryRegister_petscxxx functions have been kept, but arenot called unless -dynamic_library_preload is used. The petsc-devdiscussion, "Why --with-dynamic-loading?" did not reach consensus aboutwhether this was ever useful, so it may also be removable.
removed path argument to XXXInitializePackage() and XXXRegister()
Change all PETSC_EXTERN_C to PETSC_EXTERNHg-commit: 8d2ebbb193fb583bccc64015e35640c4e08c3426
updated from EXTERN_C_BEGIN/END through sys directoryHg-commit: ee6b7ef2f48ce66402e7e807302de19506ce15df
added PetscObjectComm() and used it to replace (((PetscObject)obj)->comm)Hg-commit: 3da37c458124ad48ae939f4e9823e4430ee0b8be
removed PETSC_NULL from C and Fortran (except declaration in C for backward compatibility). Kept PETSC_NULL_xxx for FortranFixed a few bugs where PETSC_NULL had been used incorrectly.Hg-commit: 05
removed PETSC_NULL from C and Fortran (except declaration in C for backward compatibility). Kept PETSC_NULL_xxx for FortranFixed a few bugs where PETSC_NULL had been used incorrectly.Hg-commit: 054705a517d7f4388a8a084415d7478cbe95dff4
Uncrustified src/sys/*Hg-commit: 9f71677807bad7b55428a6cc0f5ccc5052e91805
Reformatted: "Do not put a blank line immediately before PetscFunctionReturn;"Hg-commit: c8a41c455986e732d0ea0513d7162a54daffaece
generally SETERRQXX does not belong on its own linealso fixed formatting issues in dgmres.c (ugh)Hg-commit: e3fffdf67cd55655a36785a0abc7c197e98ca7cd
1234