Date: 2026-01-20T11:35:20+00:00

Actual source code: dlregisslepc.c

      1: /*
      2:    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      3:    SLEPc - Scalable Library for Eigenvalue Problem Computations
      4:    Copyright (c) 2002-, Universitat Politecnica de Valencia, Spain

      6:    This file is part of SLEPc.
      7:    SLEPc is distributed under a 2-clause BSD license (see LICENSE).
      8:    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      9: */

     11: #include <slepcst.h>
     12: #include <slepcds.h>
     13: #include <slepcfn.h>
     14: #include <slepcbv.h>
     15: #include <slepcrg.h>

     17: #if defined(PETSC_HAVE_DYNAMIC_LIBRARIES)

     19: #if defined(PETSC_USE_SINGLE_LIBRARY)
     20: SLEPC_EXTERN PetscErrorCode PetscDLLibraryRegister_slepceps(void);
     21: SLEPC_EXTERN PetscErrorCode PetscDLLibraryRegister_slepcnep(void);
     22: SLEPC_EXTERN PetscErrorCode PetscDLLibraryRegister_slepcpep(void);
     23: SLEPC_EXTERN PetscErrorCode PetscDLLibraryRegister_slepcsvd(void);
     24: SLEPC_EXTERN PetscErrorCode PetscDLLibraryRegister_slepcmfn(void);
     25: SLEPC_EXTERN PetscErrorCode PetscDLLibraryRegister_slepclme(void);
     26: #endif

     28: /*
     29:   PetscDLLibraryRegister - This function is called when the dynamic library
     30:   it is in is opened.

     32:   This one registers all the basic objects ST, FN, DS, BV, RG.
     33:  */
     34: #if defined(PETSC_USE_SINGLE_LIBRARY)
     35: SLEPC_EXTERN PetscErrorCode PetscDLLibraryRegister_slepc(void)
     36: #else
     37: SLEPC_EXTERN PetscErrorCode PetscDLLibraryRegister_slepcsys(void)
     38: #endif
     39: {
     40:   PetscFunctionBegin;
     41:   PetscCall(STInitializePackage());
     42:   PetscCall(DSInitializePackage());
     43:   PetscCall(FNInitializePackage());
     44:   PetscCall(BVInitializePackage());
     45:   PetscCall(RGInitializePackage());

     47: #if defined(PETSC_USE_SINGLE_LIBRARY)
     48:   PetscCall(PetscDLLibraryRegister_slepceps());
     49:   PetscCall(PetscDLLibraryRegister_slepcnep());
     50:   PetscCall(PetscDLLibraryRegister_slepcpep());
     51:   PetscCall(PetscDLLibraryRegister_slepcsvd());
     52:   PetscCall(PetscDLLibraryRegister_slepcmfn());
     53:   PetscCall(PetscDLLibraryRegister_slepclme());
     54: #endif
     55:   PetscFunctionReturn(PETSC_SUCCESS);
     56: }
     57: #endif /* PETSC_HAVE_DYNAMIC_LIBRARIES */