Actual source code: arch.c

      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: }