1c6db04a5SJed Brown #include <petscsys.h> /*I "petscsys.h" I*/ 2e5c89e4eSSatish Balay 3e5c89e4eSSatish Balay /*@C 4342bf38eSBarry Smith PetscGetArchType - Returns the $PETSC_ARCH that was used for this configuration of PETSc 5e5c89e4eSSatish Balay 6e5c89e4eSSatish Balay Not Collective 7e5c89e4eSSatish Balay 8e5c89e4eSSatish Balay Input Parameter: 9e5c89e4eSSatish Balay . slen - length of string buffer 10e5c89e4eSSatish Balay 11e5c89e4eSSatish Balay Output Parameter: 12*ce78bad3SBarry Smith . str - string area to contain architecture name, should be at least 10 characters long. Name is truncated if string is not long enough. 13e5c89e4eSSatish Balay 14e5c89e4eSSatish Balay Level: developer 15e5c89e4eSSatish Balay 16811af0c4SBarry Smith Note: 17811af0c4SBarry Smith This name is arbitrary and need not correspond to the physical hardware or the software running on the system. 18811af0c4SBarry Smith 19*ce78bad3SBarry Smith Fortran Note: 20667f096bSBarry Smith .vb 21*ce78bad3SBarry Smith character*(128) str 22667f096bSBarry Smith call PetscGetArchType(str,ierr) 23667f096bSBarry Smith .ve 248058be67SSatish Balay 25c2e3fba1SPatrick Sanan .seealso: `PetscGetUserName()`, `PetscGetHostName()` 26e5c89e4eSSatish Balay @*/ PetscGetArchType(char str[],size_t slen)27d71ae5a4SJacob FaibussowitschPetscErrorCode PetscGetArchType(char str[], size_t slen) 28d71ae5a4SJacob Faibussowitsch { 29e5c89e4eSSatish Balay PetscFunctionBegin; 3046bc77b6SBarry Smith #if defined(PETSC_ARCH) 319566063dSJacob Faibussowitsch PetscCall(PetscStrncpy(str, PETSC_ARCH, slen - 1)); 32e5c89e4eSSatish Balay #else 3346bc77b6SBarry Smith #error "$PETSC_ARCH/include/petscconf.h is missing PETSC_ARCH" 34e5c89e4eSSatish Balay #endif 353ba16761SJacob Faibussowitsch PetscFunctionReturn(PETSC_SUCCESS); 36e5c89e4eSSatish Balay } 37