diff -Naur tiny-dnn-1.0.0a3-orig/tiny_dnn/io/caffe/caffe.proto tiny-dnn-1.0.0a3/tiny_dnn/io/caffe/caffe.proto
--- tiny-dnn-1.0.0a3-orig/tiny_dnn/io/caffe/caffe.proto	2017-09-06 07:50:17.461345300 +0300
+++ tiny-dnn-1.0.0a3/tiny_dnn/io/caffe/caffe.proto	2017-09-06 07:50:41.323710100 +0300
@@ -290,8 +290,8 @@
   // count -- defaults to STRICT if unspecified.
   optional DimCheckMode share_mode = 2;
   enum DimCheckMode {
-    // STRICT (default) requires that num, channels, height, width each match.
-    STRICT = 0;
+    // STRICTS (default) requires that num, channels, height, width each match.
+    STRICTS = 0;
     // PERMISSIVE requires only the count (num*channels*height*width) to match.
     PERMISSIVE = 1;
   }
@@ -1235,7 +1235,7 @@
   repeated string param = 1001;
   repeated DimCheckMode blob_share_mode = 1002;
   enum DimCheckMode {
-    STRICT = 0;
+    STRICTS = 0;
     PERMISSIVE = 1;
   }
   repeated float blobs_lr = 7;
diff -Naur tiny-dnn-1.0.0a3-orig/CMakeLists.txt tiny-dnn-1.0.0a3/CMakeLists.txt
--- tiny-dnn-1.0.0a3-orig/CMakeLists.txt	2017-09-16 23:05:43.942939500 +0300
+++ tiny-dnn-1.0.0a3/CMakeLists.txt	2017-09-16 23:04:20.022139500 +0300
@@ -276,14 +276,14 @@
 
 # Set up install directories. INCLUDE_INSTALL_DIR and
 # CMAKECONFIG_INSTALL_DIR must not be absolute paths.
-if(WIN32)
+if(MSVC)
     set(include_install_dir Include)
     set(include_install_dir_full Include)
     set(config_install_dir CMake)
-elseif(UNIX)
-    set(include_install_dir include)
+elseif(UNIX OR MINGW)
+    set(include_install_dir include/${project_library_target_name})
     set(include_install_dir_postfix "${project_library_target_name}")
-    set(include_install_dir_full    "${include_install_dir}/${include_install_dir_postfix}")
+    set(include_install_dir_full    "${include_install_dir}/${project_library_target_name}/${include_install_dir_postfix}")
 
     set(config_install_dir share/${PACKAGE_NAME})
 else()
@@ -342,6 +342,10 @@
 install(DIRECTORY   ${PROJECT_SOURCE_DIR}/${project_library_target_name}
         DESTINATION ${include_install_dir})
 
+# Install third party headers
+install(DIRECTORY   ${PROJECT_SOURCE_DIR}/third_party
+        DESTINATION ${include_install_dir})
+
 # Check if protobuf available
 include(cmake/protoc.cmake)
 
