diff --git a/CMakeLists.txt b/CMakeLists.txt
index cd1ee0a6c65e50572c6e1cdcecd03775d8f17c86..fe414d9e0db197997293c07d63b9992368cc04ab 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -19,7 +19,7 @@ dune_symlink_to_source_files(FILES resources)
 
 set(programs "")
 if(HAVE_AMIRAMESH AND HAVE_IPOPT)
-  list(APPEND programs 1badaptmeasure 1bcontact het2bcontact 2bnonlincontact 2bmgnonlincontact)
+  list(APPEND programs 1badaptmeasure 1bcontact het2bcontact 2bnonlincontact 2bmgnonlincontact pridualcontact)
 endif()
 
 #nbcontact nbnonlincontact nonlincontact adaptmeasure 1badaptmeasure nladaptmeasure)
@@ -49,6 +49,13 @@ endif()
 
 if (HAVE_AMIRAMESH AND HAVE_IPOPT AND HAVE_SUITESPARSE_UMFPACK)
   add_dune_suitesparse_flags(2bmgnonlincontact)
+  add_dune_suitesparse_flags(pridualcontact)
+endif()
+
+if (HAVE_ADOLC)
+  add_dune_adolc_flags(2bmgnonlincontact)
+  add_dune_adolc_flags(2bnonlincontact)
+  add_dune_adolc_flags(pridualcontact)
 endif()
 
 finalize_dune_project(GENERATE_CONFIG_H_CMAKE)