diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5b18c9ea7a07a6e7de4eb2cfdfa24eb6c4acf962..c9165c3c3770bd9f2cb32b30e3aba01f3cf53ce0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -67,16 +67,22 @@ set(spm_sources
   spm_dof_extend.c
   spm_read_driver.c
   spm_gen_fake_values.c
-  drivers/skitf.f
   drivers/iohb.c
   drivers/mmio.c
   drivers/laplacian.c
   drivers/readhb.c
   drivers/readijv.c
   drivers/readmm.c
-  drivers/readrsa.c
   )
 
+if (PASTIX_WITH_FORTRAN)
+  set(spm_sources
+    ${spm_sources}
+    drivers/skitf.f
+    drivers/readrsa.c
+    )
+endif()
+
 add_library(pastix_spm
   ${spm_sources}
   )
diff --git a/spm_read_driver.c b/spm_read_driver.c
index 6ca1cb6d0a5682773e227449cd840310c6d446f1..a0817089909e665d576001cbe2d42b8c0019e8cd 100644
--- a/spm_read_driver.c
+++ b/spm_read_driver.c
@@ -82,10 +82,11 @@ spmReadDriver( pastix_driver_t  driver,
     {
         switch(driver)
         {
+#if defined(PASTIX_WITH_FORTRAN)
         case PastixDriverRSA:
             readRSA( filename, spm );
             break;
-
+#endif
         case PastixDriverHB:
             /* TODO: Possible to read the RHS, the solution or a guess of the solution */
             readHB( filename, spm );