summaryrefslogtreecommitdiff
path: root/deps/cares/build.mk
diff options
context:
space:
mode:
authorBen Noordhuis <info@bnoordhuis.nl>2013-05-14 01:54:58 +0200
committerBen Noordhuis <info@bnoordhuis.nl>2013-05-14 02:07:35 +0200
commit9498fd15c70c2daf386dda13c43d7a2d984f0892 (patch)
tree77972dbe7fd421211d894ef5b112b2cfabebe22e /deps/cares/build.mk
parent458c8bb9f86f1666cbbbe1f2951e7ca86756c48f (diff)
downloadandroid-node-v8-9498fd15c70c2daf386dda13c43d7a2d984f0892.tar.gz
android-node-v8-9498fd15c70c2daf386dda13c43d7a2d984f0892.tar.bz2
android-node-v8-9498fd15c70c2daf386dda13c43d7a2d984f0892.zip
deps: upgrade c-ares to 1.10.0
Diffstat (limited to 'deps/cares/build.mk')
-rw-r--r--deps/cares/build.mk143
1 files changed, 143 insertions, 0 deletions
diff --git a/deps/cares/build.mk b/deps/cares/build.mk
new file mode 100644
index 0000000000..ea239eba3b
--- /dev/null
+++ b/deps/cares/build.mk
@@ -0,0 +1,143 @@
+# Copyright Joyent, Inc. and other Node contributors. All rights reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to
+# deal in the Software without restriction, including without limitation the
+# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+# sell copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+# IN THE SOFTWARE.
+
+OS ?= $(shell sh -c 'uname -s | tr "[A-Z]" "[a-z]"')
+
+OBJS= \
+ src/ares_cancel.o \
+ src/ares__close_sockets.o \
+ src/ares_create_query.o \
+ src/ares_data.o \
+ src/ares_destroy.o \
+ src/ares_expand_name.o \
+ src/ares_expand_string.o \
+ src/ares_fds.o \
+ src/ares_free_hostent.o \
+ src/ares_free_string.o \
+ src/ares_gethostbyaddr.o \
+ src/ares_gethostbyname.o \
+ src/ares__get_hostent.o \
+ src/ares_getnameinfo.o \
+ src/ares_getopt.o \
+ src/ares_getsock.o \
+ src/ares_init.o \
+ src/ares_library_init.o \
+ src/ares_llist.o \
+ src/ares_mkquery.o \
+ src/ares_nowarn.o \
+ src/ares_options.o \
+ src/ares_parse_aaaa_reply.o \
+ src/ares_parse_a_reply.o \
+ src/ares_parse_mx_reply.o \
+ src/ares_parse_naptr_reply.o \
+ src/ares_parse_ns_reply.o \
+ src/ares_parse_ptr_reply.o \
+ src/ares_parse_soa_reply.o \
+ src/ares_parse_srv_reply.o \
+ src/ares_parse_txt_reply.o \
+ src/ares_process.o \
+ src/ares_query.o \
+ src/ares__read_line.o \
+ src/ares_search.o \
+ src/ares_send.o \
+ src/ares_strcasecmp.o \
+ src/ares_strdup.o \
+ src/ares_strerror.o \
+ src/ares_timeout.o \
+ src/ares__timeval.o \
+ src/ares_version.o \
+ src/ares_writev.o \
+ src/bitncmp.o \
+ src/inet_net_pton.o \
+ src/inet_ntop.o \
+
+CFLAGS += -I. -I$(SRCDIR)/include -DHAVE_CONFIG_H
+
+ARES_CONFIG_OS = $(OS)
+SOEXT = so
+
+# if on windows
+ifneq (,$(findstring mingw,$(OS)))
+ARES_CONFIG_OS = win32
+OBJS += src/windows_port.o
+OBJS += src/ares_getenv.o
+OBJS += src/ares_platform.o
+
+LDFLAGS += -lws2_32.lib -liphlpapi.lib
+else # else a posix system
+CFLAGS += -g --std=gnu89 -pedantic
+CFLAGS += -Wall -Wextra -Wno-unused-parameter
+CFLAGS += -D_LARGEFILE_SOURCE
+CFLAGS += -D_FILE_OFFSET_BITS=64
+endif
+
+ifneq (,$(findstring cygwin,$(OS)))
+ARES_CONFIG_OS = cygwin
+CFLAGS += -D_GNU_SOURCE
+endif
+
+ifeq (dragonflybsd,$(OS))
+ARES_CONFIG_OS = freebsd
+endif
+
+ifeq (darwin,$(OS))
+CFLAGS += -D_DARWIN_USE_64_BIT_INODE=1
+LDFLAGS += -dynamiclib -install_name "@rpath/libcares.dylib"
+SOEXT = dylib
+endif
+
+ifeq (linux,$(OS))
+CFLAGS += -D_GNU_SOURCE
+endif
+
+ifeq (sunos,$(OS))
+LDFLAGS += -lsocket -lnsl
+CFLAGS += -D__EXTENSIONS__ -D_XOPEN_SOURCE=500
+endif
+
+CFLAGS += -I$(SRCDIR)/config/$(ARES_CONFIG_OS)
+
+ifneq (,$(findstring libcares.$(SOEXT),$(MAKECMDGOALS)))
+CFLAGS += -DCARES_BUILDING_LIBRARY
+else
+CFLAGS += -DCARES_STATICLIB
+endif
+
+all: libcares.a
+
+src/.buildstamp:
+ mkdir -p $(dir $@)
+ touch $@
+
+libcares.a: $(OBJS)
+ $(AR) rcs $@ $^
+
+libcares.$(SOEXT): override CFLAGS += -fPIC
+libcares.$(SOEXT): $(OBJS:%.o=%.pic.o)
+ $(CC) -shared -o $@ $^ $(LDFLAGS)
+
+src/%.o src/%.pic.o: src/%.c include/ares.h include/ares_version.h \
+ include/nameser.h src/.buildstamp \
+ $(SRCDIR)/config/$(ARES_CONFIG_OS)/ares_config.h
+ $(CC) $(CFLAGS) -c $< -o $@
+
+.PHONY: clean
+clean:
+ $(RM) -f libcares.a libcares.$(SOEXT) src/*.o src/.buildstamp