Add shared library mode to Travis CI. (#24)

diff --git a/.travis.yml b/.travis.yml
index 9ed1fb1..e5923cb 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -14,10 +14,12 @@
   - osx
 
 env:
-  - GLOG=1 BUILD_TYPE=Debug
-  - GLOG=1 BUILD_TYPE=RelWithDebInfo
-  - GLOG=0 BUILD_TYPE=Debug
-  - GLOG=0 BUILD_TYPE=RelWithDebInfo
+  - GLOG=1 SHARED_LIB=0 BUILD_TYPE=Debug
+  - GLOG=1 SHARED_LIB=0 BUILD_TYPE=RelWithDebInfo
+  - GLOG=0 SHARED_LIB=0 BUILD_TYPE=Debug
+  - GLOG=0 SHARED_LIB=0 BUILD_TYPE=RelWithDebInfo
+  - GLOG=0 SHARED_LIB=1 BUILD_TYPE=Debug
+  - GLOG=0 SHARED_LIB=1 BUILD_TYPE=RelWithDebInfo
 
 matrix:
   exclude:
@@ -58,6 +60,7 @@
 before_script:
 - mkdir -p build && cd build
 - cmake .. -DCRC32C_USE_GLOG=$GLOG -DCMAKE_BUILD_TYPE=$BUILD_TYPE
+           -DBUILD_SHARED_LIBS=$SHARED_LIB
 - cmake --build .
 - cd ..
 
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 23bfdf4..80b7d17 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -229,8 +229,8 @@
   endif(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
 endif(HAVE_ARM64_CRC32C)
 # CMake only enables PIC by default in SHARED and MODULE targets.
-set_property(TARGET crc32c_arm64 PROPERTY POSITION_INDEPENDENT_CODE
-  "${BUILD_SHARED_LIBS}")
+set_property(TARGET crc32c_arm64
+    PROPERTY POSITION_INDEPENDENT_CODE "${BUILD_SHARED_LIBS}")
 
 # SSE4.2 code is built separately, so we don't accidentally compile unsupported
 # instructions into code that gets run without SSE4.2 support.
@@ -249,8 +249,8 @@
   endif(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
 endif(HAVE_SSE42)
 # CMake only enables PIC by default in SHARED and MODULE targets.
-set_property(TARGET crc32c_sse42 PROPERTY POSITION_INDEPENDENT_CODE
-  "${BUILD_SHARED_LIBS}")
+set_property(TARGET crc32c_sse42
+    PROPERTY POSITION_INDEPENDENT_CODE "${BUILD_SHARED_LIBS}")
 
 add_library(crc32c ""
   # TODO(pwnall): Move the TARGET_OBJECTS generator expressions to the PRIVATE
diff --git a/third_party/benchmark b/third_party/benchmark
index c6193af..b171791 160000
--- a/third_party/benchmark
+++ b/third_party/benchmark
@@ -1 +1 @@
-Subproject commit c6193afe7eb1eb7802e34833e55e1528cb65c533
+Subproject commit b1717916d1acafbd0753c145f30f76b06f2933e5
diff --git a/third_party/glog b/third_party/glog
index e364e75..c44e3bb 160000
--- a/third_party/glog
+++ b/third_party/glog
@@ -1 +1 @@
-Subproject commit e364e754a60af6f0eadd9902c4e76ecc060fee9c
+Subproject commit c44e3bbb8fc5ca6b56e72bad77a6c00376f6e864
diff --git a/third_party/googletest b/third_party/googletest
index 20eaf6e..d593250 160000
--- a/third_party/googletest
+++ b/third_party/googletest
@@ -1 +1 @@
-Subproject commit 20eaf6e3a9dbefcb1fb91b9a438aaef70cd999cf
+Subproject commit d5932506d6eed73ac80b9bcc47ed723c8c74eb1e