CMake: add option to avoid GISPIPE IGN for Android 7+
authorAndy Green <andy@warmcat.com>
Tue, 21 Mar 2017 03:34:49 +0000 (11:34 +0800)
committerAndy Green <andy@warmcat.com>
Tue, 21 Mar 2017 03:34:49 +0000 (11:34 +0800)
CMakeLists.txt
lib/lws-plat-unix.c
lws_config.h.in

index 9f3ddda..4a5d3d5 100644 (file)
@@ -115,6 +115,7 @@ option(LWS_STATIC_PIC "Build the static version of the library with position-ind
 option(LWS_WITH_RANGES "Support http ranges (RFC7233)" ON)
 option(LWS_FALLBACK_GETHOSTBYNAME "Also try to do dns resolution using gethostbyname if getaddrinfo fails" OFF)
 option(LWS_WITH_ZIP_FOPS "Support serving pre-zipped files" ON)
+option(LWS_AVOID_SIGPIPE_IGN "Android 7+ seems to need this" OFF)
 
 if (LWS_WITH_LWSWS)
  message(STATUS "LWS_WITH_LWSWS --> Enabling LWS_WITH_PLUGINS and LWS_WITH_LIBUV")
@@ -1715,6 +1716,7 @@ message(" LWS_WITH_RANGES = ${LWS_WITH_RANGES}")
 message(" LWS_PLAT_OPTEE = ${LWS_PLAT_OPTEE}")
 message(" LWS_WITH_ESP32 = ${LWS_WITH_ESP32}")
 message(" LWS_WITH_ZIP_FOPS = ${LWS_WITH_ZIP_FOPS}")
+message(" LWS_AVOID_SIGPIPE_IGN = ${LWS_AVOID_SIGPIPE_IGN}")
 
 message("---------------------------------------------------------------------")
 
index 3349079..3566e62 100644 (file)
@@ -454,7 +454,9 @@ sigabrt_handler(int x)
 LWS_VISIBLE int
 lws_plat_context_early_init(void)
 {
+#if !defined(LWS_AVOID_SIGPIPE_IGN)
        signal(SIGPIPE, SIG_IGN);
+#endif
 
 //     signal(SIGABRT, sigabrt_handler);
 
index b51c21c..d7b5279 100644 (file)
 #cmakedefine LWS_WITH_ZIP_FOPS
 #cmakedefine LWS_HAVE_STDINT_H
 
+#cmakedefine LWS_AVOID_SIGPIPE_IGN
+
 #cmakedefine LWS_FALLBACK_GETHOSTBYNAME
 ${LWS_SIZEOFPTR_CODE}