- Added CMake makefiles as alternative to regular Makefiles.
 - Added preliminary Code Coverage tests for AES, ARC4, Base64, MPI, SHA-family, MD-family and  HMAC-SHA-family.

diff --git a/programs/CMakeLists.txt b/programs/CMakeLists.txt
new file mode 100644
index 0000000..a11929a
--- /dev/null
+++ b/programs/CMakeLists.txt
@@ -0,0 +1,5 @@
+add_subdirectory(aes)
+add_subdirectory(hash)
+add_subdirectory(pkey)
+add_subdirectory(ssl)
+add_subdirectory(test)
diff --git a/programs/aes/CMakeLists.txt b/programs/aes/CMakeLists.txt
new file mode 100644
index 0000000..1daad58
--- /dev/null
+++ b/programs/aes/CMakeLists.txt
@@ -0,0 +1,2 @@
+add_executable(aescrypt2 aescrypt2.c)
+target_link_libraries(aescrypt2 polarssl)
diff --git a/programs/hash/CMakeLists.txt b/programs/hash/CMakeLists.txt
new file mode 100644
index 0000000..e9af522
--- /dev/null
+++ b/programs/hash/CMakeLists.txt
@@ -0,0 +1,11 @@
+add_executable(hello hello.c)
+target_link_libraries(hello polarssl)
+
+add_executable(md5sum md5sum.c)
+target_link_libraries(md5sum polarssl)
+
+add_executable(sha1sum sha1sum.c)
+target_link_libraries(sha1sum polarssl)
+
+add_executable(sha2sum sha2sum.c)
+target_link_libraries(sha2sum polarssl)
diff --git a/programs/pkey/CMakeLists.txt b/programs/pkey/CMakeLists.txt
new file mode 100644
index 0000000..7190ee4
--- /dev/null
+++ b/programs/pkey/CMakeLists.txt
@@ -0,0 +1,20 @@
+add_executable(dh_client dh_client.c)
+target_link_libraries(dh_client polarssl)
+
+add_executable(dh_genprime dh_genprime.c)
+target_link_libraries(dh_genprime polarssl)
+
+add_executable(dh_server dh_server.c)
+target_link_libraries(dh_server polarssl)
+
+add_executable(mpi_demo mpi_demo.c)
+target_link_libraries(mpi_demo polarssl)
+
+add_executable(rsa_genkey rsa_genkey.c)
+target_link_libraries(rsa_genkey polarssl)
+
+add_executable(rsa_sign rsa_sign.c)
+target_link_libraries(rsa_sign polarssl)
+
+add_executable(rsa_verify rsa_verify.c)
+target_link_libraries(rsa_verify polarssl)
diff --git a/programs/ssl/CMakeLists.txt b/programs/ssl/CMakeLists.txt
new file mode 100644
index 0000000..8eb6d3c
--- /dev/null
+++ b/programs/ssl/CMakeLists.txt
@@ -0,0 +1,8 @@
+add_executable(ssl_client1 ssl_client1.c)
+target_link_libraries(ssl_client1 polarssl)
+
+add_executable(ssl_client2 ssl_client2.c)
+target_link_libraries(ssl_client2 polarssl)
+
+add_executable(ssl_server ssl_server.c)
+target_link_libraries(ssl_server polarssl)
diff --git a/programs/test/CMakeLists.txt b/programs/test/CMakeLists.txt
new file mode 100644
index 0000000..95c01b4
--- /dev/null
+++ b/programs/test/CMakeLists.txt
@@ -0,0 +1,12 @@
+add_executable(selftest selftest.c)
+target_link_libraries(selftest polarssl)
+
+add_executable(benchmark benchmark.c)
+target_link_libraries(benchmark polarssl)
+
+add_executable(ssl_test ssl_test.c)
+target_link_libraries(ssl_test polarssl)
+
+add_executable(ssl_cert_test ssl_cert_test.c)
+target_link_libraries(ssl_cert_test polarssl)
+