1 2 #include <petscsys.h> /*I "petscsys.h" I*/ 3 4 /*@C 5 PetscGetArchType - Returns the $PETSC_ARCH that was used for this configuration of PETSc 6 7 Not Collective 8 9 Input Parameter: 10 . slen - length of string buffer 11 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. 15 16 Level: developer 17 18 Note: 19 This name is arbitrary and need not correspond to the physical hardware or the software running on the system. 20 21 Fortran Note: 22 In Fortran this routine has the format 23 24 $ character*(10) str 25 $ call PetscGetArchType(str,ierr) 26 27 .seealso: `PetscGetUserName()`, `PetscGetHostName()` 28 @*/ 29 PetscErrorCode PetscGetArchType(char str[], size_t slen) 30 { 31 PetscFunctionBegin; 32 #if defined(PETSC_ARCH) 33 PetscCall(PetscStrncpy(str, PETSC_ARCH, slen - 1)); 34 #else 35 #error "$PETSC_ARCH/include/petscconf.h is missing PETSC_ARCH" 36 #endif 37 PetscFunctionReturn(PETSC_SUCCESS); 38 } 39