blob: 97e3e9537586c7d45687eab969f5880eb014fad0 [file] [log] [blame]
# Makefile.am for Http
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
include $(top_srcdir)/build/tidy.mk
AM_CPPFLAGS += \
$(iocore_include_dirs) \
-I$(abs_top_srcdir)/include \
-I$(abs_top_srcdir)/lib \
-I$(abs_top_srcdir)/lib/records \
-I$(abs_top_srcdir)/proxy \
-I$(abs_top_srcdir)/mgmt \
-I$(abs_top_srcdir)/mgmt/utils \
-I$(abs_top_srcdir)/proxy/hdrs \
-I$(abs_top_srcdir)/proxy/shared \
-I$(abs_top_srcdir)/proxy/http \
$(TS_INCLUDES) \
@YAMLCPP_INCLUDES@
noinst_LIBRARIES = libhttp_remap.a
libhttp_remap_a_SOURCES = \
AclFiltering.cc \
AclFiltering.h \
NextHopSelectionStrategy.h \
NextHopSelectionStrategy.cc \
NextHopConsistentHash.h \
NextHopConsistentHash.cc \
NextHopHealthStatus.cc \
NextHopRoundRobin.h \
NextHopRoundRobin.cc \
NextHopStrategyFactory.h \
NextHopStrategyFactory.cc \
RemapConfig.cc \
RemapConfig.h \
RemapPluginInfo.cc \
RemapPluginInfo.h \
PluginDso.cc \
PluginFactory.cc \
PluginFactory.h \
RemapPlugins.cc \
RemapPlugins.h \
RemapProcessor.cc \
RemapProcessor.h \
UrlMapping.cc \
UrlMapping.h \
UrlMappingPathIndex.cc \
UrlMappingPathIndex.h \
UrlRewrite.cc \
UrlRewrite.h
COMMON_PLUGINDSO_LDADDS = \
$(OPENSSL_LIBS) \
$(top_builddir)/iocore/eventsystem/libinkevent.a \
$(top_builddir)/lib/records/librecords_p.a \
$(top_builddir)/iocore/eventsystem/libinkevent.a \
$(top_builddir)/src/tscore/libtscore.la \
$(top_builddir)/mgmt/libmgmt_p.la \
$(top_builddir)/proxy/shared/libUglyLogStubs.a \
@HWLOC_LIBS@
clang-tidy-local: $(libhttp_remap_a_SOURCES)
$(CXX_Clang_Tidy)
TESTS = $(check_PROGRAMS)
check_PROGRAMS = test_PluginDso test_PluginFactory test_RemapPluginInfo test_NextHopStrategyFactory test_NextHopRoundRobin test_NextHopConsistentHash
test_PluginDso_CPPFLAGS = $(AM_CPPFLAGS) -I$(abs_top_srcdir)/tests/include -DPLUGIN_DSO_TESTS
test_PluginDso_LIBTOOLFLAGS = --preserve-dup-deps
EXTRA_test_PluginDso_DEPENDENCIES = unit-tests/plugin_v1.la
test_PluginDso_LDADD = $(COMMON_PLUGINDSO_LDADDS)
test_PluginDso_LDFLAGS = $(AM_LDFLAGS)
test_PluginDso_SOURCES = \
unit-tests/test_PluginDso.cc \
unit-tests/plugin_testing_common.cc \
PluginDso.cc
test_PluginFactory_CPPFLAGS = $(AM_CPPFLAGS) -I$(abs_top_srcdir)/tests/include -DPLUGIN_DSO_TESTS
test_PluginFactory_LIBTOOLFLAGS = --preserve-dup-deps
EXTRA_test_PluginFactory_DEPENDENCIES = \
unit-tests/plugin_v1.la \
unit-tests/plugin_init_fail.la \
unit-tests/plugin_instinit_fail.la
test_PluginFactory_LDADD = $(COMMON_PLUGINDSO_LDADDS)
test_PluginFactory_LDFLAGS = $(AM_LDFLAGS)
test_PluginFactory_SOURCES = \
unit-tests/test_PluginFactory.cc \
unit-tests/plugin_testing_common.cc \
PluginFactory.cc \
PluginDso.cc \
RemapPluginInfo.cc
test_RemapPluginInfo_CPPFLAGS = $(AM_CPPFLAGS) -I$(abs_top_srcdir)/tests/include -DPLUGIN_DSO_TESTS
test_RemapPluginInfo_LIBTOOLFLAGS = --preserve-dup-deps
EXTRA_test_RemapPluginInfo_DEPENDENCIES = \
unit-tests/plugin_missing_init.la \
unit-tests/plugin_missing_doremap.la \
unit-tests/plugin_missing_deleteinstance.la \
unit-tests/plugin_required_cb.la \
unit-tests/plugin_missing_newinstance.la \
unit-tests/plugin_testing_calls.la
test_RemapPluginInfo_LDADD = $(COMMON_PLUGINDSO_LDADDS)
test_RemapPluginInfo_LDFLAGS = $(AM_LDFLAGS)
test_RemapPluginInfo_SOURCES = \
unit-tests/plugin_testing_common.cc \
unit-tests/test_RemapPlugin.cc \
PluginDso.cc \
RemapPluginInfo.cc
test_NextHopStrategyFactory_CPPFLAGS = \
$(AM_CPPFLAGS) \
-D_NH_UNIT_TESTS_ \
-DTS_SRC_DIR=\"$(abs_top_srcdir)/proxy/http/remap/\" \
-I$(abs_top_srcdir)/tests/include \
$(TS_INCLUDES) \
@YAMLCPP_INCLUDES@
test_NextHopStrategyFactory_LDADD = \
$(top_builddir)/src/tscpp/util/libtscpputil.la \
$(top_builddir)/src/tscore/libtscore.la \
$(top_builddir)/proxy/hdrs/libhdrs.a \
$(top_builddir)/iocore/eventsystem/libinkevent.a \
$(top_builddir)/lib/records/librecords_p.a \
$(top_builddir)/proxy/logging/liblogging.a \
$(top_builddir)/mgmt/libmgmt_p.la \
$(top_builddir)/iocore/utils/libinkutils.a \
@YAMLCPP_LIBS@ \
@HWLOC_LIBS@
test_NextHopStrategyFactory_LDFLAGS = $(AM_LDFLAGS) -L$(top_builddir)/src/tscore/.libs -ltscore
test_NextHopStrategyFactory_SOURCES = \
NextHopSelectionStrategy.cc \
NextHopStrategyFactory.cc \
NextHopRoundRobin.cc \
NextHopConsistentHash.cc \
NextHopHealthStatus.cc \
unit-tests/test_NextHopStrategyFactory.cc \
unit-tests/nexthop_test_stubs.cc
test_NextHopRoundRobin_CPPFLAGS = \
$(AM_CPPFLAGS) \
-D_NH_UNIT_TESTS_ \
-DTS_SRC_DIR=\"$(abs_top_srcdir)/proxy/http/remap/\" \
-I$(abs_top_srcdir)/tests/include \
$(TS_INCLUDES) \
@YAMLCPP_INCLUDES@
test_NextHopRoundRobin_LDADD = \
$(top_builddir)/src/tscpp/util/libtscpputil.la \
$(top_builddir)/src/tscore/libtscore.la \
$(top_builddir)/proxy/hdrs/libhdrs.a \
$(top_builddir)/iocore/eventsystem/libinkevent.a \
$(top_builddir)/lib/records/librecords_p.a \
$(top_builddir)/proxy/logging/liblogging.a \
$(top_builddir)/mgmt/libmgmt_p.la \
$(top_builddir)/iocore/utils/libinkutils.a \
@YAMLCPP_LIBS@ \
@HWLOC_LIBS@
test_NextHopRoundRobin_LDFLAGS = $(AM_LDFLAGS) -L$(top_builddir)/src/tscore/.libs -ltscore
test_NextHopRoundRobin_SOURCES = \
NextHopSelectionStrategy.cc \
NextHopStrategyFactory.cc \
NextHopRoundRobin.cc \
NextHopConsistentHash.cc \
NextHopHealthStatus.cc \
unit-tests/test_NextHopRoundRobin.cc \
unit-tests/nexthop_test_stubs.cc
test_NextHopConsistentHash_CPPFLAGS = \
$(AM_CPPFLAGS) \
-D_NH_UNIT_TESTS_ \
-DTS_SRC_DIR=\"$(abs_top_srcdir)/proxy/http/remap/\" \
-I$(abs_top_srcdir)/tests/include \
$(TS_INCLUDES) \
@YAMLCPP_INCLUDES@
test_NextHopConsistentHash_LDADD = \
$(top_builddir)/src/tscpp/util/libtscpputil.la \
$(top_builddir)/src/tscore/libtscore.la \
$(top_builddir)/proxy/hdrs/libhdrs.a \
$(top_builddir)/iocore/eventsystem/libinkevent.a \
$(top_builddir)/lib/records/librecords_p.a \
$(top_builddir)/proxy/logging/liblogging.a \
$(top_builddir)/mgmt/libmgmt_p.la \
$(top_builddir)/iocore/utils/libinkutils.a \
@YAMLCPP_LIBS@ \
@HWLOC_LIBS@
test_NextHopConsistentHash_LDFLAGS = $(AM_LDFLAGS) -L$(top_builddir)/src/tscore/.libs -ltscore
test_NextHopConsistentHash_SOURCES = \
NextHopSelectionStrategy.cc \
NextHopStrategyFactory.cc \
NextHopConsistentHash.cc \
NextHopHealthStatus.cc \
NextHopRoundRobin.cc \
unit-tests/test_NextHopConsistentHash.cc \
unit-tests/nexthop_test_stubs.cc
DSO_LDFLAGS = \
-module \
-shared \
-avoid-version \
-export-symbols-regex '^(TSRemapInit|TSRemapDone|TSRemapDoRemap|TSRemapNewInstance|TSRemapDeleteInstance|TSRemapOSResponse|TSRemapPreConfigReload|TSRemapPostConfigReload|TSPluginInit|pluginDsoVersionTest|getPluginDebugObjectTest)$$'
# Build plugins for unit testing the plugin (re)load.
pkglib_LTLIBRARIES = \
unit-tests/plugin_v1.la \
unit-tests/plugin_v2.la \
unit-tests/plugin_init_fail.la \
unit-tests/plugin_instinit_fail.la \
unit-tests/plugin_required_cb.la \
unit-tests/plugin_missing_deleteinstance.la \
unit-tests/plugin_missing_doremap.la \
unit-tests/plugin_missing_init.la \
unit-tests/plugin_missing_newinstance.la \
unit-tests/plugin_testing_calls.la
unit_tests_plugin_v1_la_SOURCES = unit-tests/plugin_misc_cb.cc
unit_tests_plugin_v1_la_LDFLAGS = $(DSO_LDFLAGS)
unit_tests_plugin_v1_la_CPPFLAGS = -DPLUGINDSOVER=1 $(AM_CPPFLAGS)
unit_tests_plugin_v2_la_SOURCES = unit-tests/plugin_misc_cb.cc
unit_tests_plugin_v2_la_LDFLAGS = $(DSO_LDFLAGS)
unit_tests_plugin_v2_la_CPPFLAGS = -DPLUGINDSOVER=2 $(AM_CPPFLAGS)
unit_tests_plugin_init_fail_la_SOURCES = unit-tests/plugin_init_fail.cc
unit_tests_plugin_init_fail_la_LDFLAGS = $(DSO_LDFLAGS)
unit_tests_plugin_init_fail_la_CPPFLAGS = $(AM_CPPFLAGS)
unit_tests_plugin_instinit_fail_la_SOURCES = unit-tests/plugin_instinit_fail.cc
unit_tests_plugin_instinit_fail_la_LDFLAGS = $(DSO_LDFLAGS)
unit_tests_plugin_instinit_fail_la_CPPFLAGS = $(AM_CPPFLAGS)
unit_tests_plugin_required_cb_la_SOURCES = unit-tests/plugin_required_cb.cc
unit_tests_plugin_required_cb_la_LDFLAGS = $(DSO_LDFLAGS)
unit_tests_plugin_required_cb_la_CPPFLAGS = -DPLUGINDSOVER=1 $(AM_CPPFLAGS)
unit_tests_plugin_missing_deleteinstance_la_SOURCES = unit-tests/plugin_missing_deleteinstance.cc
unit_tests_plugin_missing_deleteinstance_la_LDFLAGS = $(DSO_LDFLAGS)
unit_tests_plugin_missing_deleteinstance_la_CPPFLAGS = -DPLUGINDSOVER=1 $(AM_CPPFLAGS)
unit_tests_plugin_missing_doremap_la_SOURCES = unit-tests/plugin_missing_doremap.cc
unit_tests_plugin_missing_doremap_la_LDFLAGS = $(DSO_LDFLAGS)
unit_tests_plugin_missing_doremap_la_CPPFLAGS = -DPLUGINDSOVER=1 $(AM_CPPFLAGS)
unit_tests_plugin_missing_init_la_SOURCES = unit-tests/plugin_missing_init.cc
unit_tests_plugin_missing_init_la_LDFLAGS = $(DSO_LDFLAGS)
unit_tests_plugin_missing_init_la_CPPFLAGS = -DPLUGINDSOVER=1 $(AM_CPPFLAGS)
unit_tests_plugin_missing_newinstance_la_SOURCES = unit-tests/plugin_missing_newinstance.cc
unit_tests_plugin_missing_newinstance_la_LDFLAGS = $(DSO_LDFLAGS)
unit_tests_plugin_missing_newinstance_la_CPPFLAGS = -DPLUGINDSOVER=1 $(AM_CPPFLAGS)
unit_tests_plugin_testing_calls_la_SOURCES = unit-tests/plugin_testing_calls.cc unit-tests/plugin_testing_common.cc
unit_tests_plugin_testing_calls_la_LDFLAGS = $(DSO_LDFLAGS)
unit_tests_plugin_testing_calls_la_CPPFLAGS = -DPLUGINDSOVER=1 $(AM_CPPFLAGS)