# CMake script for finding libngspice # (C) CERN 2016 # Author: Maciej Suminski find_path( NGSPICE_INCLUDE_DIR ngspice/sharedspice.h PATHS ${NGSPICE_ROOT_DIR} $ENV{NGSPICE_ROOT_DIR} ${NGSPICE_INCLUDE_PATH} PATH_SUFFIXES src/include share/ngspice/include share/ngspice/include/ngspice ) find_library( NGSPICE_LIBRARY ngspice PATHS ${NGSPICE_ROOT_DIR} $ENV{NGSPICE_ROOT_DIR} ${NGSPICE_LIBRARY_PATH} PATH_SUFFIXES src/.libs lib ) if( WIN32 AND MSYS ) # NGSPICE_LIBRARY points to libngspice.dll.a on Windows, # but the goal is to find out the DLL name. find_library( NGSPICE_DLL NAMES libngspice-0.dll libngspice-1.dll ) else() set( NGSPICE_DLL "${NGSPICE_LIBRARY}" ) endif() include( FindPackageHandleStandardArgs ) if( ${NGSPICE_INCLUDE_DIR} STREQUAL "NGSPICE_INCLUDE_DIR-NOTFOUND" OR ${NGSPICE_LIBRARY} STREQUAL "NGSPICE_LIBRARY-NOTFOUND" ) message( "" ) message( "*** NGSPICE library missing ***" ) message( "Most of ngspice packages do not provide the required libngspice library." ) message( "You can either compile ngspice configured with --with-ngshared parameter" ) message( "or run a script that does the job for you:" ) message( " cd ./scripts" ) message( " chmod +x get_libngspice_so.sh" ) message( " ./get_libngspice_so.sh" ) message( " sudo ./get_libngspice_so.sh install" ) message( "" ) endif() find_package_handle_standard_args( ngspice REQUIRED_VARS NGSPICE_INCLUDE_DIR NGSPICE_LIBRARY NGSPICE_DLL ) mark_as_advanced( NGSPICE_INCLUDE_DIR NGSPICE_LIBRARY NGSPICE_DLL )