diff --git a/.travis.yml b/.travis.yml
index 69634765..3eeb1682 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -6,6 +6,11 @@ compiler:
   - gcc
   - clang
 
+env:
+  - BUILD_TYPE=Release
+  - BUILD_TYPE=Debug
+  - BUILD_TYPE=ASAN
+
 arch:
   packages:
     - cmake
@@ -19,7 +24,7 @@ arch:
     - wlc-git
     - libcap
   script:
-    - "cmake ."
+    - "cmake -DCMAKE_BUILD_TYPE=$BUILD_TYPE ."
     - "make"
 
 script:
diff --git a/CMakeLists.txt b/CMakeLists.txt
index bf37d9df..bf373280 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -9,6 +9,17 @@ set(CMAKE_POSITION_INDEPENDENT_CODE ON)
 set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/bin)
 add_compile_options(-Wall -Wextra -Wno-unused-parameter -Wno-unused-result -Werror)
 
+# Add Address Sanitiezed build type
+set(CMAKE_C_FLAGS_ASAN
+    "${CMAKE_C_FLAGS_DEBUG} -fsanitize=address -fno-omit-frame-pointer"
+    CACHE STRING "Flags used by the C compiler during address sanitizer builds."
+    FORCE )
+mark_as_advanced(
+    CMAKE_C_FLAGS_ASAN
+    CMAKE_EXE_LINKER_FLAGS_DEBUG
+    CMAKE_SHARED_LINKER_FLAGS_DEBUG
+    )
+
 list(INSERT CMAKE_MODULE_PATH 0
 	${CMAKE_CURRENT_SOURCE_DIR}/CMake
 	)