diff --git a/modules/find/FindFABULOUS.cmake b/modules/find/FindFABULOUS.cmake index 321ab43d01c662a915b8910f7f911ddbf9656241..9d353ca70908818349457faa8b987f6d69df04e4 100644 --- a/modules/find/FindFABULOUS.cmake +++ b/modules/find/FindFABULOUS.cmake @@ -7,9 +7,10 @@ # Once done this will define # FABULOUS_FOUND - System has fabulous # FABULOUS_INCLUDE_DIRS - The fabulous include directories +# FABULOUS_MODULE_DIRS - The fabulous module directories for Fortran API # FABULOUS_LIBRARIES - The libraries needed to use fabulous # FABULOUS_DEFINITIONS - Compiler switches required for using fabulous - +# include(FindPackageHandleStandardArgs) macro(FABULOUS_FIND_LIBRARIES_FROM_PKGCONFIG_RESULTS _prefix _pc_xprefix) @@ -115,6 +116,8 @@ if ((NOT FABULOUS_FOUND) AND (FABULOUS_GIVEN_BY_USER OR (NOT PKG_CONFIG_FOUND))) endif() find_path(FABULOUS_INCLUDE_DIRS NAMES fabulous.h HINTS ${FABULOUS_INCDIR}) + find_path(FABULOUS_MODULE_DIRS NAMES fabulous_mod.mod HINTS ${FABULOUS_INCDIR} + PATH_SUFFIXES fabulous) find_library(FABULOUS_STATIC_LIBRARY NAMES libfabulous.a HINTS ${FABULOUS_LIBDIR}) find_library(FABULOUS_SHARED_LIBRARY NAMES libfabulous.so HINTS ${FABULOUS_LIBDIR}) else() @@ -127,6 +130,9 @@ if ((NOT FABULOUS_FOUND) AND (FABULOUS_GIVEN_BY_USER OR (NOT PKG_CONFIG_FOUND))) find_path(FABULOUS_INCLUDE_DIRS NAMES fabulous.h HINTS ${FABULOUS_DIR} PATH_SUFFIXES include include/fabulous) + find_path(FABULOUS_MODULE_DIRS NAMES fabulous_mod.mod + HINTS ${FABULOUS_DIR} + PATH_SUFFIXES include include/fabulous) find_library(FABULOUS_STATIC_LIBRARY NAMES libfabulous.a HINTS ${FABULOUS_DIR} PATH_SUFFIXES lib lib32 lib64 lib/fabulous lib32/fabulous lib64/fabulous) @@ -139,17 +145,18 @@ if ((NOT FABULOUS_FOUND) AND (FABULOUS_GIVEN_BY_USER OR (NOT PKG_CONFIG_FOUND))) find_package_handle_standard_args(FABULOUS_SHARED DEFAULT_MSG FABULOUS_SHARED_LIBRARY) mark_as_advanced(FABULOUS_STATIC_LIBRARY FABULOUS_SHARED_LIBRARY) + if (FABULOUS_FIND_REQUIRED) + find_package(CBLAS REQUIRED) + find_package(LAPACKE REQUIRED) + else() + find_package(CBLAS) + find_package(LAPACKE) + endif() + if (FABULOUS_STATIC_FOUND AND NOT FABULOUS_SHARED_FOUND) - if (FABULOUS_FIND_REQUIRED) - find_package(CBLAS REQUIRED) - find_package(LAPACKE REQUIRED) - else() - find_package(CBLAS) - find_package(LAPACKE) - endif() - set(FABULOUS_LIBRARIES ${FABULOUS_STATIC_LIBRARY} ${CBLAS_LIBRARIES} ${LAPACKE_LIBRARIES}) + set(FABULOUS_LIBRARIES ${FABULOUS_STATIC_LIBRARY} ${CBLAS_LIBRARIES} ${LAPACKE_LIBRARIES} "-lstdc++" "-lm") elseif(FABULOUS_SHARED_FOUND) - set(FABULOUS_LIBRARIES ${FABULOUS_SHARED_LIBRARY}) + set(FABULOUS_LIBRARIES ${FABULOUS_SHARED_LIBRARY} ${CBLAS_LIBRARIES} ${LAPACKE_LIBRARIES}) endif() fabulous_check_function_exists(FABULOUS fabulous_create) find_package_handle_standard_args(