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