2: #include <petscsys.h> 4: /*@C 5: PetscGetArchType - Returns the $PETSC_ARCH that was used for this configuration of PETSc 7: Not Collective 9: Input Parameter: 10: . slen - length of string buffer 12: Output Parameter: 13: . str - string area to contain architecture name, should be at least 14: 10 characters long. Name is truncated if string is not long enough. 16: Level: developer 18: Note: 19: This name is arbitrary and need not correspond to the physical hardware or the software running on the system. 21: Fortran Note: 22: This routine has the format 23: .vb 24: character*(10) str 25: call PetscGetArchType(str,ierr) 26: .ve 28: .seealso: `PetscGetUserName()`, `PetscGetHostName()` 29: @*/ 30: PetscErrorCode PetscGetArchType(char str[], size_t slen) 31: { 32: PetscFunctionBegin; 33: #if defined(PETSC_ARCH) 34: PetscCall(PetscStrncpy(str, PETSC_ARCH, slen - 1)); 35: #else 36: #error "$PETSC_ARCH/include/petscconf.h is missing PETSC_ARCH" 37: #endif 38: PetscFunctionReturn(PETSC_SUCCESS); 39: }