Actual source code: arch.c


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