diff --git a/cmake/FindMySQL.cmake b/cmake/FindMySQL.cmake
index aba75c7157126a1491e06aafb379e8b4f738d1c4..c10757d675122b4157291d0919eb6d0b1fcec1f6 100644
--- a/cmake/FindMySQL.cmake
+++ b/cmake/FindMySQL.cmake
@@ -15,6 +15,7 @@ if(MYSQL_FOUND)
         message(STATUS "Found MySQL includes: ${MYSQL_INCLUDE_DIR}/mysql.h")
         message(STATUS "Found MySQL library: ${MYSQL_LIBRARIES}")
     endif (NOT MYSQL_FIND_QUIETLY)
+    set(MYSQL_INCLUDE_DIRS ${MYSQL_INCLUDE_DIR})
 else(MYSQL_FOUND)
     if (MYSQL_FIND_REQUIRED)
         message(FATAL_ERROR "Could not find mysql development files")
diff --git a/src/plugins/mysql/CMakeLists.txt b/src/plugins/mysql/CMakeLists.txt
index 6dd3c7fdc25e26a5478d578adbb0e68743fa06ce..31965eeefc56fd24581dfb013a609a68ec34096e 100644
--- a/src/plugins/mysql/CMakeLists.txt
+++ b/src/plugins/mysql/CMakeLists.txt
@@ -1,12 +1,11 @@
 include(FindMySQL)
 if (MYSQL_FOUND)
-	message(STATUS "box.net.sql(mysql) INC=${MYSQL_INCLUDE_DIR}")
-	message(STATUS "box.net.sql(mysql) LIBS=mysqlclient_r")
+	message(STATUS "box.net.sql(mysql) INC=${MYSQL_INCLUDE_DIRS}")
+	message(STATUS "box.net.sql(mysql) LIBS=${MYSQL_LIBRARIES}")
 	
-	add_compile_flags("C;CXX" "-I${MYSQL_INCLUDE_DIR}")
-	add_compile_flags("C;CXX" "-lmysqlclient_r")
-	add_compile_flags("C;CXX" "-shared")
+	include_directories(${MYSQL_INCLUDE_DIRS})
 	add_library(mysql SHARED mysql.cc)
+	target_link_libraries(mysql ${MYSQL_LIBRARIES})
 	install(TARGETS mysql LIBRARY DESTINATION ${PLUGIN_DIR})
 else()
 	message(STATUS "MySQL client not found")
diff --git a/src/plugins/pg/CMakeLists.txt b/src/plugins/pg/CMakeLists.txt
index f4cfc461d3c7ad8f7d2c8bab898832d45f79be4a..84714c7f3e26f537c453226a5c508793ebb7723e 100644
--- a/src/plugins/pg/CMakeLists.txt
+++ b/src/plugins/pg/CMakeLists.txt
@@ -1,13 +1,11 @@
 include(FindPostgreSQL)
 if (PostgreSQL_FOUND)
-	message(STATUS "box.net.sql(pg): INC=${PostgreSQL_INCLUDE_DIR}")
-	message(STATUS "box.net.sql(pg): LIBDIR=${PostgreSQL_LIBRARY_DIR}")
+	message(STATUS "box.net.sql(pg): INC=${PostgreSQL_INCLUDE_DIRS}")
 	message(STATUS "box.net.sql(pg): LIBS=${PostgreSQL_LIBRARIES}")
 
-	add_compile_flags("C;CXX" "-I${PostgreSQL_INCLUDE_DIR}")
-	add_compile_flags("C;CXX" "-L${PostgreSQL_LIBRARY_DIR}")
-	add_compile_flags("C;CXX" "-l${PostgreSQL_LIBRARIES}")
+	include_directories(${PostgreSQL_INCLUDE_DIRS})
 	add_library(pg SHARED pg.cc)
+	target_link_libraries(pg ${PostgreSQL_LIBRARIES})
 	install(TARGETS pg LIBRARY DESTINATION ${PLUGIN_DIR})
 
 else()