blob: 477b25d7915808ad3cad489413d3d7fbe9c39776 [file] [log] [blame]
LOCAL_PATH := $(call my-dir)
CONNTRACK_HAVE_CTHELPER ?= yes
CONNTRACK_HAVE_CTTIMEOUT ?= no
CONNTRACK_VERSION := "1.4.4"
CONNTRACK_LIB_DIR := "/system/lib"
ifeq ($(CONNTRACK_HAVE_CTHELPER), yes)
CT_HELPER_LIBS := amanda dhcpv6 ftp mdns sane ssdp tftp tns
endif # CONNTRACK_HAVE_CTHELPER == yes
# nfct
include $(CLEAR_VARS)
LOCAL_MODULE := nfct
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES := src/nfct.c
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include
LOCAL_CFLAGS := -O2 -g -Wno-unused-parameter -Wno-implicit-function-declaration
LOCAL_CFLAGS += -DVERSION=\"$(CONNTRACK_VERSION)\" -DCONNTRACKD_LIB_DIR=\"$(CONNTRACK_LIB_DIR)\"
LOCAL_LDFLAGS := -Wl,--export-dynamic -Wl,--as-needed
LOCAL_SHARED_LIBRARIES := libmnl libnfnetlink libnetfilter_conntrack
ifeq ($(CONNTRACK_HAVE_CTHELPER), yes)
LOCAL_SRC_FILES += src/helpers.c \
src/expect.c \
src/nfct-extensions/helper.c
LOCAL_SHARED_LIBRARIES += libnetfilter_cthelper
$(foreach helper_lib, $(CT_HELPER_LIBS), $(eval LOCAL_REQUIRED_MODULES += ct_helper_$(strip $(helper_lib))))
endif # CONNTRACK_HAVE_CTHELPER == yes
ifeq ($(CONNTRACK_HAVE_CTTIMEOUT), yes)
LOCAL_SRC_FILES += src/nfct-extensions/timeout.c
LOCAL_SHARED_LIBRARIES += libnetfilter_cttimeout
endif # CONNTRACK_HAVE_CTTIMEOUT == yes
include $(BUILD_EXECUTABLE)
# conntrack
include $(CLEAR_VARS)
LOCAL_MODULE := conntrack
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES := src/conntrack.c \
extensions/libct_proto_dccp.c \
extensions/libct_proto_gre.c \
extensions/libct_proto_icmp.c \
extensions/libct_proto_icmpv6.c \
extensions/libct_proto_sctp.c \
extensions/libct_proto_tcp.c \
extensions/libct_proto_udp.c \
extensions/libct_proto_udplite.c \
extensions/libct_proto_unknown.c
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include
LOCAL_SHARED_LIBRARIES := libmnl libnfnetlink libnetfilter_conntrack
LOCAL_CFLAGS := -O2 -g -Wno-unused-parameter -Wno-implicit-function-declaration
LOCAL_CFLAGS += -DVERSION=\"$(CONNTRACK_VERSION)\"
include $(BUILD_EXECUTABLE)
# conntrackd
include $(CLEAR_VARS)
LOCAL_MODULE := conntrackd
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES := src/alarm.c \
src/main.c \
src/run.c \
src/hash.c \
src/queue.c \
src/rbtree.c \
src/local.c \
src/log.c \
src/mcast.c \
src/udp.c \
src/netlink.c \
src/vector.c \
src/filter.c \
src/fds.c \
src/event.c \
src/process.c \
src/origin.c \
src/date.c \
src/cache.c \
src/cache-ct.c \
src/cache-exp.c \
src/cache_timer.c \
src/ctnl.c \
src/sync-mode.c \
src/sync-alarm.c \
src/sync-ftfw.c \
src/sync-notrack.c \
src/traffic_stats.c \
src/stats-mode.c \
src/network.c \
src/cidr.c \
src/build.c \
src/parse.c \
src/channel.c \
src/multichannel.c \
src/channel_mcast.c \
src/channel_udp.c \
src/tcp.c \
src/channel_tcp.c \
src/external_cache.c \
src/external_inject.c \
src/internal_cache.c \
src/internal_bypass.c \
src/read_config_yy.c \
src/read_config_lex.c \
src/stack.c
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include
LOCAL_SHARED_LIBRARIES := libmnl libnfnetlink libnetfilter_conntrack
LOCAL_CFLAGS := -O2 -g -Wno-unused-parameter -Wno-missing-prototypes -Wno-missing-declarations \
-Wno-implicit-function-declaration -Wno-nested-externs -Wno-undef -Wno-redundant-decls
LOCAL_CFLAGS += -DVERSION=\"$(CONNTRACK_VERSION)\" -DPACKAGE=\"conntrackd\"
LOCAL_LDFLAGS := -Wl,--export-dynamic -Wl,--as-needed
LOCAL_REQUIRED_MODULES := conntrackd.conf
ifeq ($(CONNTRACK_HAVE_CTHELPER), yes)
LOCAL_SRC_FILES += src/cthelper.c \
src/expect.c \
src/helpers.c \
src/utils.c
LOCAL_CFLAGS += -DBUILD_CTHELPER -DCONNTRACKD_LIB_DIR=\"$(CONNTRACK_LIB_DIR)\"
LOCAL_SHARED_LIBRARIES += libnetfilter_cthelper libnetfilter_queue
$(foreach helper_lib, $(CT_HELPER_LIBS), $(eval LOCAL_REQUIRED_MODULES += ct_helper_$(strip $(helper_lib))))
endif # CONNTRACK_HAVE_CTHELPER == yes
include $(BUILD_EXECUTABLE)
# ct_helper libraries
define ct_helper_lib_build
include $(CLEAR_VARS)
LOCAL_MODULE := ct_helper_$(strip $1)
LOCAL_MODULE_TAG := optional
LOCAL_SRC_FILES := src/helpers/$(strip $1).c
LOCAL_C_INCLUDES := $$(LOCAL_PATH)/include
LOCAL_CFLAGS := -O2 -g -Wno-unused-parameter
LOCAL_SHARED_LIBRARIES := libmnl libnfnetlink libnetfilter_conntrack libnetfilter_queue
LOCAL_ALLOW_UNDEFINED_SYMBOLS := true
include $$(BUILD_SHARED_LIBRARY)
endef
$(foreach helper_lib, $(CT_HELPER_LIBS), $(eval $(call ct_helper_lib_build, $(helper_lib))))
# conntrackd.conf
include $(CLEAR_VARS)
LOCAL_MODULE := conntrackd.conf
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := ETC
LOCAL_MODULE_PATH := $(TARGET_OUT)/etc/conntrackd
LOCAL_SRC_FILES := $(LOCAL_MODULE)
include $(BUILD_PREBUILT)