Merge pull request #404

Changes to support CMake FetchContent
diff --git a/.gitignore b/.gitignore
index 8530cff..e4803fd 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
+/build/
 */Debug
 Debug
 */Release
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d2cb4c0..a309d7b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -3,6 +3,12 @@
 
 PROJECT(picotls)
 
+IF (CMAKE_VERSION VERSION_LESS 3.13.0)
+  MACRO (TARGET_LINK_DIRECTORIES target scope)
+    link_directories(${ARGN})
+  ENDMACRO ()
+ENDIF ()
+
 FIND_PACKAGE(PkgConfig REQUIRED)
 INCLUDE(cmake/dtrace-utils.cmake)
 
@@ -68,15 +74,16 @@
 PKG_CHECK_MODULES(BROTLI_ENC libbrotlienc)
 IF (BROTLI_DEC_FOUND AND BROTLI_ENC_FOUND)
     INCLUDE_DIRECTORIES(${BROTLI_DEC_INCLUDE_DIRS} ${BROTLI_ENC_INCLUDE_DIRS})
-    LINK_DIRECTORIES(${BROTLI_DEC_LIBRARY_DIRS} ${BROTLI_ENC_LIBRARY_DIRS})
     SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DPICOTLS_USE_BROTLI=1")
     LIST(APPEND CORE_FILES
         lib/certificate_compression.c)
     LIST(APPEND CORE_EXTRA_LIBS ${BROTLI_DEC_LIBRARIES} ${BROTLI_ENC_LIBRARIES})
+    LIST(APPEND CORE_EXTRA_LIBS_DIRS (${BROTLI_DEC_LIBRARY_DIRS} ${BROTLI_ENC_LIBRARY_DIRS}))
 ENDIF ()
 
 ADD_LIBRARY(picotls-core ${CORE_FILES})
 TARGET_LINK_LIBRARIES(picotls-core ${CORE_EXTRA_LIBS})
+TARGET_LINK_DIRECTORIES(picotls-core PUBLIC ${CORE_EXTRA_LIBS_DIRS})
 
 ADD_LIBRARY(picotls-minicrypto
     ${MINICRYPTO_LIBRARY_FILES}