Index: gyp/microhttpd.gyp |
diff --git a/gyp/microhttpd.gyp b/gyp/microhttpd.gyp |
index 49c67ab9a25dd0f608408dc3fcb9d25892e2c830..4e990cd728fcbc2ec13648503b37f2cd2e03034a 100644 |
--- a/gyp/microhttpd.gyp |
+++ b/gyp/microhttpd.gyp |
@@ -2,44 +2,184 @@ |
# |
# Use of this source code is governed by a BSD-style license that can be |
# found in the LICENSE file. |
-# A simple gyp file to generate microhttpd for internal purposes |
-# most of the work(configure and make) is performed in a python script |
{ |
- 'targets': [ |
- { |
- 'target_name': 'microhttpd', |
- 'type': 'none', |
- 'variables': { |
- 'base_dir%': '../third_party/libmicrohttpd', |
- 'out_dir%': '<(INTERMEDIATE_DIR)/build', |
- 'src_dir%': '../third_party/externals/microhttpd', |
- }, |
- 'direct_dependent_settings': { |
- 'include_dirs': [ |
- '<(src_dir)/src/include', |
- ], |
- # Link the built library to dependents. |
+ 'variables': { |
+ 'skia_warnings_as_errors': 0, |
+ }, |
+ 'targets': [{ |
+ 'target_name': 'microhttpd', |
+ 'type': 'static_library', |
+ |
+ 'direct_dependent_settings': { |
+ 'include_dirs': [ '../third_party/externals/microhttpd/src/include' ] |
+ }, |
+ 'include_dirs': [ |
+ '../third_party/externals/microhttpd/src/include', |
+ '../third_party/libmicrohttpd', |
+ ], |
+ 'sources': [ |
+ '../third_party/externals/microhttpd/src/microhttpd/base64.c', |
+ '../third_party/externals/microhttpd/src/microhttpd/basicauth.c', |
+ '../third_party/externals/microhttpd/src/microhttpd/connection.c', |
+ '../third_party/externals/microhttpd/src/microhttpd/daemon.c', |
+ '../third_party/externals/microhttpd/src/microhttpd/digestauth.c', |
+ '../third_party/externals/microhttpd/src/microhttpd/internal.c', |
+ '../third_party/externals/microhttpd/src/microhttpd/md5.c', |
+ '../third_party/externals/microhttpd/src/microhttpd/memorypool.c', |
+ '../third_party/externals/microhttpd/src/microhttpd/postprocessor.c', |
+ '../third_party/externals/microhttpd/src/microhttpd/reason_phrase.c', |
+ '../third_party/externals/microhttpd/src/microhttpd/response.c', |
+ '../third_party/externals/microhttpd/src/microhttpd/tsearch.c', |
+ ], |
+ 'conditions': [ |
+ # For each platform, run configure and scrape the generated MHD_config.h |
+ # to get a list of platform specific defines |
+ # the options to use for configure are: |
+ # --disable-doc --disable-exapmles --enable-https=no --disable-curl |
+ # --enable-spdy=no --enable-shared=no |
+ ['skia_os == "linux"', { |
+ 'cflags': [ '-w' ], |
'libraries': [ |
- '<(PRODUCT_DIR)/libmicrohttpd.a', |
+ '-lpthread', |
], |
- }, |
- 'actions': [ |
- { |
- 'action_name': 'configure_and_build', |
- 'inputs': [ |
- '<(base_dir)/build.py', |
- '<(src_dir)/.git/HEAD', # This does not support local changes, but does support DEPS. |
- ], |
- 'outputs': [ '<(PRODUCT_DIR)/libmicrohttpd.a' ], |
- 'action': [ |
- 'python', |
- '<(base_dir)/build.py', |
- '--src', '<(src_dir)', |
- '--out', '<(out_dir)', |
- '--dst', '<(PRODUCT_DIR)', |
- ], |
+ 'direct_dependent_settings': { |
+ 'libraries': [ '-lpthread' ], |
}, |
- ], |
- }, |
- ], |
+ 'defines=': [ # equals sign throws away most Skia defines (just noise) |
+ "_GNU_SOURCE=1", |
+ "BAUTH_SUPPORT=1", |
+ "DAUTH_SUPPORT=1", |
+ "EPOLL_SUPPORT=1", |
+ "HAVE_ACCEPT4=1", |
+ "HAVE_ARPA_INET_H=1", |
+ "HAVE_CLOCK_GETTIME=1", |
+ "HAVE_DECL_SOCK_NONBLOCK=1", |
+ "HAVE_DECL_TCP_CORK=1", |
+ "HAVE_DECL_TCP_NOPUSH=0", |
+ "HAVE_DLFCN_H=1", |
+ "HAVE_EPOLL_CREATE1=1", |
+ "HAVE_ERRNO_H=1", |
+ "HAVE_FCNTL_H=1", |
+ "HAVE_FSEEKO=1", |
+ "HAVE_GCRYPT_H=1", |
+ "HAVE_INET6=1", |
+ "HAVE_INTTYPES_H=1", |
+ "HAVE_LIMITS_H=1", |
+ "HAVE_LISTEN_SHUTDOWN=1", |
+ "HAVE_LOCALE_H=1", |
+ "HAVE_MATH_H=1", |
+ "HAVE_MEMMEM=1", |
+ "HAVE_MEMORY_H=1", |
+ "HAVE_MESSAGES=1", |
+ "HAVE_NETDB_H=1", |
+ "HAVE_NETINET_IN_H=1", |
+ "HAVE_NETINET_TCP_H=1", |
+ "HAVE_POLL=1", |
+ "HAVE_POLL_H=1", |
+ "HAVE_POSTPROCESSOR=1", |
+ "HAVE_PTHREAD_H=1", |
+ "HAVE_PTHREAD_PRIO_INHERIT=1", |
+ "HAVE_PTHREAD_SETNAME_NP=1", |
+ "HAVE_SEARCH_H=1", |
+ "HAVE_SOCK_NONBLOCK=1", |
+ "HAVE_STDINT_H=1", |
+ "HAVE_STDIO_H=1", |
+ "HAVE_STDLIB_H=1", |
+ "HAVE_STRINGS_H=1", |
+ "HAVE_STRING_H=1", |
+ "HAVE_SYS_MMAN_H=1", |
+ "HAVE_SYS_MSG_H=1", |
+ "HAVE_SYS_SELECT_H=1", |
+ "HAVE_SYS_SOCKET_H=1", |
+ "HAVE_SYS_STAT_H=1", |
+ "HAVE_SYS_TIME_H=1", |
+ "HAVE_SYS_TYPES_H=1", |
+ "HAVE_TIME_H=1", |
+ "HAVE_UNISTD_H=1", |
+ "HTTPS_SUPPORT=0", |
+ "LINUX=1", |
+ 'LT_OBJDIR=".libs/"', |
+ "MHD_USE_POSIX_THREADS=1", |
+ 'PACKAGE="libmicrohttpd"', |
+ 'PACKAGE_BUGREPORT="libmicrohttpd@gnu.org"', |
+ 'PACKAGE_NAME="libmicrohttp"', |
+ 'PACKAGE_STRING="libmicrohttpd 0.9.42"', |
+ 'PACKAGE_TARNAME="libmicrohttpd"', |
+ 'PACKAGE_URL=""', |
+ 'PACKAGE_VERSION="0.9.42"', |
+ "SPDY_SUPPORT=0", |
+ "STDC_HEADERS=1", |
+ 'VERSION="0.9.42"', |
+ '_MHD_EXTERN=__attribute__((visibility("default"))) extern', |
+ ], |
+ }], |
+ ['skia_os == "mac"', { |
+ 'cflags': [ '-w' ], |
+ 'libraries': [ |
+ '-lpthread', |
+ ], |
+ 'defines=': [ # equals sign throws away most Skia defines (just noise) |
+ "_GNU_SOURCE=1", |
+ "BAUTH_SUPPORT=1", |
+ "DAUTH_SUPPORT=1", |
+ "EPOLL_SUPPORT=0", |
+ "HAVE_ARPA_INET_H=1", |
+ "HAVE_CLOCK_GETTIME=1", |
+ "HAVE_DECL_SOCK_NONBLOCK=0", |
+ "HAVE_DECL_TCP_CORK=0", |
+ "HAVE_DECL_TCP_NOPUSH=1", |
+ "HAVE_DLFCN_H=1", |
+ "HAVE_ERRNO_H=1", |
+ "HAVE_FCNTL_H=1", |
+ "HAVE_FSEEKO=1", |
+ "HAVE_INET6=1", |
+ "HAVE_INTTYPES_H=1", |
+ "HAVE_LIMITS_H=1", |
+ "HAVE_LOCALE_H=1", |
+ "HAVE_MATH_H=1", |
+ "HAVE_MEMMEM=1", |
+ "HAVE_MEMORY_H=1", |
+ "HAVE_MESSAGES=1", |
+ "HAVE_NETDB_H=1", |
+ "HAVE_NETINET_IN_H=1", |
+ "HAVE_NETINET_TCP_H=1", |
+ "HAVE_POLL=1", |
+ "HAVE_POLL_H=1", |
+ "HAVE_POSTPROCESSOR=1", |
+ "HAVE_PTHREAD_H=1", |
+ "HAVE_PTHREAD_PRIO_INHERIT=1", |
+ "HAVE_SEARCH_H=1", |
+ "HAVE_STDINT_H=1", |
+ "HAVE_STDIO_H=1", |
+ "HAVE_STDLIB_H=1", |
+ "HAVE_STRINGS_H=1", |
+ "HAVE_STRING_H=1", |
+ "HAVE_SYS_MMAN_H=1", |
+ "HAVE_SYS_MSG_H=1", |
+ "HAVE_SYS_SELECT_H=1", |
+ "HAVE_SYS_SOCKET_H=1", |
+ "HAVE_SYS_STAT_H=1", |
+ "HAVE_SYS_TIME_H=1", |
+ "HAVE_SYS_TYPES_H=1", |
+ "HAVE_TIME_H=1", |
+ "HAVE_UNISTD_H=1", |
+ "HTTPS_SUPPORT=0", |
+ "OSX=1", |
+ 'LT_OBJDIR=".libs/"', |
+ "MHD_USE_POSIX_THREADS=1", |
+ 'PACKAGE="libmicrohttpd"', |
+ 'PACKAGE_BUGREPORT="libmicrohttpd@gnu.org"', |
+ 'PACKAGE_NAME="libmicrohttp"', |
+ 'PACKAGE_STRING="libmicrohttpd 0.9.42"', |
+ 'PACKAGE_TARNAME="libmicrohttpd"', |
+ 'PACKAGE_URL=""', |
+ 'PACKAGE_VERSION="0.9.42"', |
+ "SPDY_SUPPORT=0", |
+ "STDC_HEADERS=1", |
+ 'VERSION="0.9.42"', |
+ '_MHD_EXTERN=__attribute__((visibility("default"))) extern', |
+ ], |
+ }], |
+ ] |
+ }] |
} |