diff --git a/cmake/FindLibxc.cmake b/cmake/FindLibxc.cmake
index 011a36b77..226f38051 100644
--- a/cmake/FindLibxc.cmake
+++ b/cmake/FindLibxc.cmake
@@ -1,45 +1,50 @@
-include(FindPackageHandleStandardArgs)
-find_package(PkgConfig REQUIRED)
-
 pkg_search_module(_LIBXC libxc>=${Libxc_FIND_VERSION})

-find_library(LIBXC_LIBRARIES NAMES libxc.a
+find_library(LIBXC_LIBRARIES NAMES xc
   PATH_SUFFIXES lib
   HINTS
-  ${LIBXC_ROOT}
   ENV EBROOTLIBXC
   ENV LIBXCROOT
   ${_LIBXC_LIBRARY_DIRS}
   DOC "libxc libraries list")

-find_library(LIBXC_LIBRARIES_F03 NAMES libxcf03.a
+find_library(LIBXC_LIBRARIES_F90 NAMES xcf90
   PATH_SUFFIXES lib
   HINTS
-  ${LIBXC_ROOT}
   ENV EBROOTLIBXC
   ENV LIBXCROOT
   ${_LIBXC_LIBRARY_DIRS}
   DOC "libxc libraries list")

+find_library(LIBXC_LIBRARIES_F03 NAMES xcf03
+  PATH_SUFFIXES lib
+  HINTS
+  ENV EBROOTLIBXC
+  ENV LIBXCROOT
+  ${_LIBXC_LIBRARY_DIRS})
 find_path(LIBXC_INCLUDE_DIR NAMES xc.h
   PATH_SUFFIXES inc include
   HINTS
-  ${LIBXC_ROOT}
   ${_LIBXC_INCLUDE_DIRS}
   ENV EBROOTLIBXC
   ENV LIBXCROOT)

+find_path(LIBXC_INCLUDE_DIR_F90 NAMES xc_f90_lib_m.mod
+  PATH_SUFFIXES inc include
+  HINTS
+  ${_LIBXC_INCLUDE_DIRS}
+  ENV EBROOTLIBXC
+  ENV LIBXCROOT)
 find_path(LIBXC_INCLUDE_DIR_F03 NAMES xc_f03_lib_m.mod
   PATH_SUFFIXES inc include
   HINTS
-  ${LIBXC_ROOT}
   ${_LIBXC_INCLUDE_DIRS}
   ENV EBROOTLIBXC
   ENV LIBXCROOT)

 find_package_handle_standard_args(Libxc DEFAULT_MSG LIBXC_LIBRARIES LIBXC_INCLUDE_DIR)

-if (${Libxc_FOUND} AND LIBXC_LIBRARIES_F03 AND LIBXC_INCLUDE_DIR_F03)
+if (${Libxc_FOUND} AND LIBXC_LIBRARIES_F90 AND LIBXC_LIBRARIES_F03 AND LIBXC_INCLUDE_DIR_F90 AND LIBXC_INCLUDE_DIR_F03)
   if(_LIBXC_VERSION)
     set(Libxc_VERSION ${_LIBXC_VERSION})
   else()
@@ -53,4 +58,3 @@ if (${Libxc_FOUND} AND LIBXC_LIBRARIES_F03 AND LIBXC_INCLUDE_DIR_F03)
 else()
   unset(Libxc_FOUND)
 endif()
-
