You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by am...@apache.org on 2018/09/19 14:32:29 UTC

[trafficserver] branch master updated: CMakeLists.txt: Change to be generic and not need updates after every that changes the set of files.

This is an automated email from the ASF dual-hosted git repository.

amc pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/trafficserver.git


The following commit(s) were added to refs/heads/master by this push:
     new 6ce5cb0  CMakeLists.txt: Change to be generic and not need updates after every that changes the set of files.
6ce5cb0 is described below

commit 6ce5cb0cd9c811cc99a3557c1c3f683e11b7efa8
Author: Alan M. Carroll <am...@apache.org>
AuthorDate: Tue Sep 18 21:02:35 2018 -0500

    CMakeLists.txt: Change to be generic and not need updates after every that changes the set of files.
---
 CMakeLists.txt | 1245 ++++----------------------------------------------------
 1 file changed, 80 insertions(+), 1165 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 72db98f..3aead43 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -3,45 +3,40 @@
 ##
 ## !!!-> IT WILL NOT BUILD TRAFFIC SERVER <-!!!
 ##
-## This file can be tweaked to keep editors happy. In general all projects
-## should be defined here so there is only one instance of this file, not one
-## per directory. This has been done only to the extent that someone using
-## such an editor needed it, so much work is left to be done.
+## This file can be tweaked to keep editors happy. In general all projects should be defined here so
+## there is only one instance of this file, not one per directory. This has been done only to the
+## extent that someone using such an editor needed it, so much work is left to be done.
 #######################
 #
-#  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
+#  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.
+#  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.
 #
 #######################
 
 cmake_minimum_required(VERSION 3.7)
 project(ats)
 
-set(CMAKE_CXX_STANDARD 11)
+set(CMAKE_CXX_STANDARD 17)
 
-include_directories(lib
+include_directories(
         include
+        tests/include
+        lib
         proxy
         proxy/hdrs
         proxy/http
         proxy/http/remap
         proxy/shared
-        lib/records
-        include/wccp
-        lib/yamlcpp/include
         iocore/eventsystem
         iocore/net
         iocore/dns
@@ -55,1149 +50,69 @@ include_directories(lib
         mgmt/api/include
         proxy/api)
 
-add_executable(traffic_crashlog
-        src/traffic_crashlog/procinfo.cc
-        src/traffic_crashlog/traffic_crashlog.cc
-        src/traffic_crashlog/traffic_crashlog.h
-)
-
-add_executable(traffic_ctl
-        src/traffic_ctl/alarm.cc
-        src/traffic_ctl/config.cc
-        src/traffic_ctl/plugin.cc
-        src/traffic_ctl/server.cc
-        src/traffic_ctl/storage.cc
-        src/traffic_ctl/traffic_ctl.cc
-        src/traffic_ctl/traffic_ctl.h
-        src/traffic_layout/engine.cc
-)
-
-add_executable(traffic_layout
-        src/traffic_layout/engine.h
-        src/traffic_layout/file_system.cc
-        src/traffic_layout/file_system.h
-        src/traffic_layout/info.cc
-        src/traffic_layout/info.h
-        src/traffic_layout/traffic_layout.cc
-)
-
-add_executable(traffic_logcat
-        src/traffic_logcat/logcat.cc
-)
-
-add_executable(traffic_logstats
-        src/traffic_logstats/logstats.cc
-)
-
-add_executable(traffic_manager
-        src/traffic_manager/AddConfigFilesHere.cc
-        src/traffic_manager/traffic_manager.cc
-)
-
-add_executable(traffic_server
-        src/traffic_server/CoreUtils.cc
-        src/traffic_server/CoreUtils.h
-        src/traffic_server/Crash.cc
-        src/traffic_server/EventName.cc
-        src/traffic_server/EventName.h
-        src/traffic_server/FetchSM.cc
-        src/traffic_server/FetchSM.h
-        src/traffic_server/HostStatus.cc
-        src/traffic_server/InkAPI.cc
-        src/traffic_server/InkAPITest.cc
-        src/traffic_server/InkIOCoreAPI.cc
-        src/traffic_server/SocksProxy.cc
-        src/traffic_server/traffic_server.cc
-)
-
-add_executable(ats
-        src/traffic_via/traffic_via.cc
-        src/traffic_wccp/wccp_client.cc
-        example/add_header/add_header.c
-        example/append_transform/append_transform.c
-        example/basic_auth/basic_auth.c
-        example/blacklist_0/blacklist_0.c
-        example/blacklist_1/blacklist_1.c
-        example/bnull_transform/bnull_transform.c
-        example/cache_scan/cache_scan.cc
-        example/cppapi/async_http_fetch/AsyncHttpFetch.cc
-        example/cppapi/async_http_fetch_streaming/AsyncHttpFetchStreaming.cc
-        example/cppapi/async_timer/AsyncTimer.cc
-        example/cppapi/boom/boom.cc
-        example/cppapi/clientredirect/ClientRedirect.cc
-        example/cppapi/clientrequest/ClientRequest.cc
-        example/cppapi/custom_error_remap_plugin/CustomErrorRemapPlugin.cc
-        example/cppapi/customresponse/CustomResponse.cc
-        example/cppapi/delay_transformation_plugin/DelayTransformationPlugin.cc
-        example/cppapi/globalhook/GlobalHookPlugin.cc
-        example/cppapi/gzip_transformation/GzipTransformationPlugin.cc
-        example/cppapi/helloworld/HelloWorldPlugin.cc
-        example/cppapi/intercept/intercept.cc
-        example/cppapi/internal_transaction_handling/InternalTransactionHandling.cc
-        example/cppapi/logger_example/LoggerExample.cc
-        example/cppapi/multiple_transaction_hooks/MultipleTransactionHookPlugins.cc
-        example/cppapi/null_transformation_plugin/NullTransformationPlugin.cc
-        example/cppapi/post_buffer/PostBuffer.cc
-        example/cppapi/remap_plugin/RemapPlugin.cc
-        example/cppapi/serverresponse/ServerResponse.cc
-        example/cppapi/stat_example/StatExample.cc
-        example/cppapi/timeout_example/TimeoutExamplePlugin.cc
-        example/cppapi/transactionhook/TransactionHookPlugin.cc
-        example/cppapi/websocket/WebSocket.cc
-        example/cppapi/websocket/WebSocket.h
-        example/cppapi/websocket/WSBuffer.cc
-        example/cppapi/websocket/WSBuffer.h
-        example/disable_http2/disable_http2.cc
-        example/file_1/file_1.c
-        example/hello/hello.c
-        example/intercept/intercept.cc
-        example/lifecycle_plugin/lifecycle_plugin.c
-        example/null_transform/null_transform.c
-        example/output_header/output_header.c
-        example/passthru/passthru.cc
-        example/protocol/Protocol.c
-        example/protocol/Protocol.h
-        example/protocol/TxnSM.c
-        example/protocol/TxnSM.h
-        example/protocol_stack/protocol_stack.cc
-        example/query_remap/query_remap.c
-        example/redirect_1/redirect_1.c
-        example/remap/remap.cc
-        example/remap_header_add/remap_header_add.cc
-        example/replace_header/replace_header.c
-        example/response_header_1/response_header_1.c
-        example/secure_link/secure_link.c
-        example/server_push/server_push.c
-        example/server_transform/server_transform.c
-        example/session_hooks/session_hooks.c
-        example/ssl_preaccept/ssl_preaccept.cc
-        example/ssl_sni/ssl_sni.cc
-        example/ssl_sni_whitelist/ssl_sni_whitelist.cc
-        example/statistic/statistic.cc
-        example/thread_1/thread_1.c
-        example/thread_pool/include/gen.c
-        example/thread_pool/psi.c
-        example/thread_pool/thread.c
-        example/thread_pool/thread.h
-        example/txn_data_sink/txn_data_sink.c
-        example/version/version.c
-        iocore/aio/AIO.cc
-        iocore/aio/I_AIO.h
-        iocore/aio/Inline.cc
-        iocore/aio/P_AIO.h
-        iocore/aio/test_AIO.cc
-        iocore/dns/DNS.cc
-        iocore/dns/DNSConnection.cc
-        iocore/dns/I_DNS.h
-        iocore/dns/I_DNSProcessor.h
-        iocore/dns/I_SplitDNS.h
-        iocore/dns/I_SplitDNSProcessor.h
-        iocore/dns/Inline.cc
-        iocore/dns/P_DNS.h
-        iocore/dns/P_DNSConnection.h
-        iocore/dns/P_DNSProcessor.h
-        iocore/dns/P_SplitDNS.h
-        iocore/dns/P_SplitDNSProcessor.h
-        iocore/dns/SplitDNS.cc
-        iocore/dns/SRV.h
-        iocore/dns/test_I_DNS.cc
-        iocore/dns/test_P_DNS.cc
-        iocore/eventsystem/unit_tests/test_MIOBufferWriter.cc
-        iocore/eventsystem/EventSystem.cc
-        iocore/eventsystem/I_Action.h
-        iocore/eventsystem/I_Continuation.h
-        iocore/eventsystem/I_EThread.h
-        iocore/eventsystem/I_Event.h
-        iocore/eventsystem/I_EventProcessor.h
-        iocore/eventsystem/I_EventSystem.h
-        iocore/eventsystem/I_IOBuffer.h
-        iocore/eventsystem/I_Lock.h
-        iocore/eventsystem/I_MIOBufferWriter.h
-        iocore/eventsystem/I_PriorityEventQueue.h
-        iocore/eventsystem/I_Processor.h
-        iocore/eventsystem/I_ProtectedQueue.h
-        iocore/eventsystem/I_ProxyAllocator.h
-        iocore/eventsystem/I_SocketManager.h
-        iocore/eventsystem/I_Tasks.h
-        iocore/eventsystem/I_Thread.h
-        iocore/eventsystem/I_VConnection.h
-        iocore/eventsystem/I_VIO.h
-        iocore/eventsystem/Inline.cc
-        iocore/eventsystem/IOBuffer.cc
-        iocore/eventsystem/Lock.cc
-        iocore/eventsystem/P_EventSystem.h
-        iocore/eventsystem/P_Freer.h
-        iocore/eventsystem/P_IOBuffer.h
-        iocore/eventsystem/P_ProtectedQueue.h
-        iocore/eventsystem/P_Thread.h
-        iocore/eventsystem/P_UnixEThread.h
-        iocore/eventsystem/P_UnixEvent.h
-        iocore/eventsystem/P_UnixEventProcessor.h
-        iocore/eventsystem/P_UnixSocketManager.h
-        iocore/eventsystem/P_VConnection.h
-        iocore/eventsystem/P_VIO.h
-        iocore/eventsystem/PQ-List.cc
-        iocore/eventsystem/Processor.cc
-        iocore/eventsystem/ProtectedQueue.cc
-        iocore/eventsystem/ProxyAllocator.cc
-        iocore/eventsystem/SocketManager.cc
-        iocore/eventsystem/Tasks.cc
-        iocore/eventsystem/test_Buffer.cc
-        iocore/eventsystem/test_Event.cc
-        iocore/eventsystem/test_I_Buffer.cc
-        iocore/eventsystem/test_I_Event.cc
-        iocore/eventsystem/test_P_Buffer.cc
-        iocore/eventsystem/test_P_Event.cc
-        iocore/eventsystem/Thread.cc
-        iocore/eventsystem/UnixEThread.cc
-        iocore/eventsystem/UnixEvent.cc
-        iocore/eventsystem/UnixEventProcessor.cc
-        iocore/hostdb/HostDB.cc
-        iocore/hostdb/I_HostDB.h
-        iocore/hostdb/I_HostDBProcessor.h
-        iocore/hostdb/Inline.cc
-        iocore/hostdb/P_HostDB.h
-        iocore/hostdb/P_HostDBProcessor.h
-        iocore/hostdb/P_RefCountCache.h
-        iocore/hostdb/P_RefCountCacheSerializer.h
-        iocore/hostdb/RefCountCache.cc
-        iocore/hostdb/test_I_HostDB.cc
-        iocore/hostdb/test_P_HostDB.cc
-        iocore/hostdb/test_RefCountCache.cc
-        iocore/net/BIO_fastopen.cc
-        iocore/net/BIO_fastopen.h
-        iocore/net/Connection.cc
-        iocore/net/I_Net.h
-        iocore/net/I_NetProcessor.h
-        iocore/net/I_NetVConnection.h
-        iocore/net/I_SessionAccept.h
-        iocore/net/I_Socks.h
-        iocore/net/I_UDPConnection.h
-        iocore/net/I_UDPNet.h
-        iocore/net/I_UDPPacket.h
-        iocore/net/Inline.cc
-        iocore/net/YamlSNIConfig.cc
-        iocore/net/YamlSNIConfig.h
-        iocore/net/Net.cc
-        iocore/net/NetVConnection.cc
-        iocore/net/NetVCTest.cc
-        iocore/net/OCSPStapling.cc
-        iocore/net/P_CompletionUtil.h
-        iocore/net/P_Connection.h
-        iocore/net/P_InkBulkIO.h
-        iocore/net/P_LibBulkIO.h
-        iocore/net/P_Net.h
-        iocore/net/P_NetAccept.h
-        iocore/net/P_NetVConnection.h
-        iocore/net/P_NetVCTest.h
-        iocore/net/P_OCSPStapling.h
-        iocore/net/P_SNIActionPerformer.h
-        iocore/net/P_Socks.h
-        iocore/net/P_SSLCertLookup.h
-        iocore/net/P_SSLClientUtils.h
-        iocore/net/P_SSLConfig.h
-        iocore/net/P_SSLNetAccept.h
-        iocore/net/P_SSLNetProcessor.h
-        iocore/net/P_SSLNetVConnection.h
-        iocore/net/P_SSLNextProtocolAccept.h
-        iocore/net/P_SSLNextProtocolSet.h
-        iocore/net/P_SSLSNI.h
-        iocore/net/P_SSLUtils.h
-        iocore/net/P_UDPConnection.h
-        iocore/net/P_UDPIOEvent.h
-        iocore/net/P_UDPNet.h
-        iocore/net/P_UDPPacket.h
-        iocore/net/P_UnixCompletionUtil.h
-        iocore/net/P_UnixNet.h
-        iocore/net/P_UnixNetProcessor.h
-        iocore/net/P_UnixNetState.h
-        iocore/net/P_UnixNetVConnection.h
-        iocore/net/P_UnixPollDescriptor.h
-        iocore/net/P_UnixUDPConnection.h
-        iocore/net/SNIActionPerformer.cc
-        iocore/net/Socks.cc
-        iocore/net/SSLCertLookup.cc
-        iocore/net/SSLClientUtils.cc
-        iocore/net/SSLConfig.cc
-        iocore/net/SSLDynlock.cc
-        iocore/net/SSLDynlock.h
-        iocore/net/SSLInternal.cc
-        iocore/net/SSLNetAccept.cc
-        iocore/net/SSLNetProcessor.cc
-        iocore/net/SSLNetVConnection.cc
-        iocore/net/SSLNextProtocolAccept.cc
-        iocore/net/SSLNextProtocolSet.cc
-        iocore/net/SSLSessionCache.cc
-        iocore/net/SSLSessionCache.h
-        iocore/net/SSLSNIConfig.cc
-        iocore/net/SSLUtils.cc
-        iocore/net/test_certlookup.cc
-        iocore/net/test_I_Net.cc
-        iocore/net/test_I_UDPNet.cc
-        iocore/net/test_P_Net.cc
-        iocore/net/UDPIOEvent.cc
-        iocore/net/UnixConnection.cc
-        iocore/net/UnixNet.cc
-        iocore/net/UnixNetAccept.cc
-        iocore/net/UnixNetPages.cc
-        iocore/net/UnixNetProcessor.cc
-        iocore/net/UnixNetVConnection.cc
-        iocore/net/UnixUDPConnection.cc
-        iocore/net/UnixUDPNet.cc
-        iocore/utils/diags.i
-        iocore/utils/I_Machine.h
-        iocore/utils/I_OneWayMultiTunnel.h
-        iocore/utils/I_OneWayTunnel.h
-        iocore/utils/Machine.cc
-        iocore/utils/OneWayMultiTunnel.cc
-        iocore/utils/OneWayTunnel.cc
-        lib/records/I_RecAlarms.h
-        lib/records/I_RecCore.h
-        lib/records/I_RecDefs.h
-        lib/records/I_RecEvents.h
-        lib/records/I_RecHttp.h
-        lib/records/I_RecLocal.h
-        lib/records/I_RecMutex.h
-        lib/records/I_RecProcess.h
-        lib/records/I_RecSignals.h
-        lib/records/P_RecCore.cc
-        lib/records/P_RecCore.h
-        lib/records/P_RecDefs.h
-        lib/records/P_RecFile.h
-        lib/records/P_RecLocal.h
-        lib/records/P_RecMessage.h
-        lib/records/P_RecProcess.h
-        lib/records/P_RecUtils.h
-        lib/records/RecConfigParse.cc
-        lib/records/RecCore.cc
-        lib/records/RecDebug.cc
-        lib/records/RecFile.cc
-        lib/records/RecHttp.cc
-        lib/records/RecLocal.cc
-        lib/records/RecMessage.cc
-        lib/records/RecMutex.cc
-        lib/records/RecProcess.cc
-        lib/records/RecRawStats.cc
-        lib/records/RecUtils.cc
-        lib/records/test_I_RecLocal.cc
-        lib/records/test_I_RecProcess.cc
-        lib/records/test_P_RecProcess.cc
-        lib/records/test_RecordsConfig.cc
-        lib/records/test_RecordsConfig.h
-        lib/records/test_RecProcess.i
-        lib/records/test_RecTree.cc
-        src/wccp/wccp-test-router.cc
-        include/wccp/Wccp.h
-        src/wccp/WccpConfig.cc
-        src/wccp/WccpEndPoint.cc
-        src/wccp/WccpLocal.h
-        src/wccp/WccpMeta.h
-        src/wccp/WccpMsg.cc
-        src/wccp/WccpStatic.cc
-        src/wccp/WccpUtil.h
-        lib/ink_autoconf.h
-        mgmt/api/include/mgmtapi.h
-        mgmt/api/APITestCliRemote.cc
-        mgmt/api/CoreAPI.cc
-        mgmt/api/CoreAPI.h
-        mgmt/api/CoreAPIRemote.cc
-        mgmt/api/CoreAPIShared.cc
-        mgmt/api/CoreAPIShared.h
-        mgmt/api/EventCallback.cc
-        mgmt/api/EventCallback.h
-        mgmt/api/EventControlMain.cc
-        mgmt/api/EventControlMain.h
-        mgmt/api/INKMgmtAPI.cc
-        mgmt/api/NetworkMessage.cc
-        mgmt/api/NetworkMessage.h
-        mgmt/api/NetworkUtilsLocal.cc
-        mgmt/api/NetworkUtilsLocal.h
-        mgmt/api/NetworkUtilsRemote.cc
-        mgmt/api/NetworkUtilsRemote.h
-        mgmt/api/TSControlMain.cc
-        mgmt/api/TSControlMain.h
-        mgmt/utils/ExpandingArray.cc
-        mgmt/utils/ExpandingArray.h
-        mgmt/utils/MgmtHashTable.h
-        mgmt/utils/MgmtLocalCleanup.cc
-        mgmt/utils/MgmtMarshall.cc
-        mgmt/utils/MgmtMarshall.h
-        mgmt/utils/MgmtProcessCleanup.cc
-        mgmt/utils/MgmtSocket.cc
-        mgmt/utils/MgmtSocket.h
-        mgmt/utils/MgmtUtils.cc
-        mgmt/utils/MgmtUtils.h
-        mgmt/utils/test_marshall.cc
-        mgmt/Alarms.cc
-        mgmt/Alarms.h
-        mgmt/BaseManager.cc
-        mgmt/BaseManager.h
-        mgmt/FileManager.cc
-        mgmt/FileManager.h
-        mgmt/LocalManager.cc
-        mgmt/LocalManager.h
-        mgmt/MgmtDefs.h
-        mgmt/ProcessManager.cc
-        mgmt/ProcessManager.h
-        mgmt/ProxyConfig.cc
-        mgmt/ProxyConfig.h
-        mgmt/RecordsConfig.cc
-        mgmt/RecordsConfig.h
-        mgmt/RecordsConfigUtils.cc
-        mgmt/Rollback.cc
-        mgmt/Rollback.h
-        mgmt/WebMgmtUtils.cc
-        mgmt/WebMgmtUtils.h
-        plugins/authproxy/authproxy.cc
-        plugins/authproxy/utils.cc
-        plugins/authproxy/utils.h
-        plugins/background_fetch/background_fetch.cc
-        plugins/background_fetch/configs.cc
-        plugins/background_fetch/configs.h
-        plugins/background_fetch/headers.cc
-        plugins/background_fetch/headers.h
-        plugins/background_fetch/rules.cc
-        plugins/background_fetch/rules.h
-        plugins/cache_promote/cache_promote.cc
-        plugins/conf_remap/conf_remap.cc
-        plugins/esi/fetcher/FetchedDataProcessor.h
-        plugins/esi/fetcher/HttpDataFetcher.h
-        plugins/esi/fetcher/HttpDataFetcherImpl.cc
-        plugins/esi/fetcher/HttpDataFetcherImpl.h
-        plugins/esi/lib/Attribute.h
-        plugins/esi/lib/ComponentBase.h
-        plugins/esi/lib/DocNode.cc
-        plugins/esi/lib/DocNode.h
-        plugins/esi/lib/EsiGunzip.cc
-        plugins/esi/lib/EsiGunzip.h
-        plugins/esi/lib/EsiGzip.cc
-        plugins/esi/lib/EsiGzip.h
-        plugins/esi/lib/EsiParser.cc
-        plugins/esi/lib/EsiParser.h
-        plugins/esi/lib/EsiProcessor.cc
-        plugins/esi/lib/EsiProcessor.h
-        plugins/esi/lib/Expression.cc
-        plugins/esi/lib/Expression.h
-        plugins/esi/lib/FailureInfo.cc
-        plugins/esi/lib/FailureInfo.h
-        plugins/esi/lib/gzip.cc
-        plugins/esi/lib/gzip.h
-        plugins/esi/lib/HandlerManager.cc
-        plugins/esi/lib/HandlerManager.h
-        plugins/esi/lib/HttpHeader.h
-        plugins/esi/lib/IncludeHandlerFactory.h
-        plugins/esi/lib/SpecialIncludeHandler.h
-        plugins/esi/lib/Stats.cc
-        plugins/esi/lib/Stats.h
-        plugins/esi/lib/StringHash.h
-        plugins/esi/lib/Utils.cc
-        plugins/esi/lib/Utils.h
-        plugins/esi/lib/Variables.cc
-        plugins/esi/lib/Variables.h
-        plugins/esi/test/docnode_test.cc
-        plugins/esi/test/gzip_test.cc
-        plugins/esi/test/HandlerMap.cc
-        plugins/esi/test/HandlerMap.h
-        plugins/esi/test/parser_test.cc
-        plugins/esi/test/print_funcs.cc
-        plugins/esi/test/print_funcs.h
-        plugins/esi/test/processor_test.cc
-        plugins/esi/test/sampleProb.cc
-        plugins/esi/test/StubIncludeHandler.cc
-        plugins/esi/test/StubIncludeHandler.h
-        plugins/esi/test/TestHandlerManager.cc
-        plugins/esi/test/TestHttpDataFetcher.h
-        plugins/esi/test/utils_test.cc
-        plugins/esi/test/vars_test.cc
-        plugins/esi/combo_handler.cc
-        plugins/esi/esi.cc
-        plugins/esi/serverIntercept.cc
-        plugins/esi/serverIntercept.h
-        plugins/experimental/acme/acme.c
-        plugins/experimental/balancer/balancer.cc
-        plugins/experimental/balancer/balancer.h
-        plugins/experimental/balancer/hash.cc
-        plugins/experimental/balancer/roundrobin.cc
-        plugins/experimental/buffer_upload/buffer_upload.cc
-        plugins/experimental/cache_key_genid/cache_key_genid.c
-        plugins/experimental/cache_range_requests/cache_range_requests.cc
-        plugins/experimental/collapsed_forwarding/collapsed_forwarding.cc
-        plugins/experimental/custom_redirect/custom_redirect.cc
-        plugins/experimental/geoip_acl/acl.cc
-        plugins/experimental/geoip_acl/acl.h
-        plugins/experimental/geoip_acl/geoip_acl.cc
-        plugins/experimental/geoip_acl/lulu.h
-        plugins/experimental/header_freq/header_freq.cc
-        plugins/experimental/header_normalize/header_normalize.cc
-        plugins/experimental/hipes/gen_escape.c
-        plugins/experimental/hipes/hipes.cc
-        plugins/experimental/hook-trace/hook-trace.cc
-        plugins/experimental/inliner/ats-inliner.cc
-        plugins/experimental/inliner/cache-handler.h
-        plugins/experimental/inliner/cache.cc
-        plugins/experimental/inliner/cache.h
-        plugins/experimental/inliner/chunk-decoder.cc
-        plugins/experimental/inliner/chunk-decoder.h
-        plugins/experimental/inliner/fetcher.cc
-        plugins/experimental/inliner/fetcher.h
-        plugins/experimental/inliner/gif.h
-        plugins/experimental/inliner/html-parser.cc
-        plugins/experimental/inliner/html-parser.h
-        plugins/experimental/inliner/inliner-handler.cc
-        plugins/experimental/inliner/inliner-handler.h
-        plugins/experimental/inliner/jpeg.h
-        plugins/experimental/inliner/png.h
-        plugins/experimental/inliner/ts.cc
-        plugins/experimental/inliner/ts.h
-        plugins/experimental/inliner/util.h
-        plugins/experimental/inliner/vconnection.h
-        plugins/experimental/memcache/protocol_binary.h
-        plugins/experimental/memcache/tsmemcache.cc
-        plugins/experimental/memcache/tsmemcache.h
-        plugins/experimental/memcached_remap/memcached_remap.cc
-        plugins/experimental/metalink/metalink.cc
-        plugins/experimental/money_trace/money_trace.cc
-        plugins/experimental/money_trace/money_trace.h
-        plugins/experimental/mp4/mp4.cc
-        plugins/experimental/mp4/mp4_common.h
-        plugins/experimental/mp4/mp4_meta.cc
-        plugins/experimental/mp4/mp4_meta.h
-        plugins/experimental/multiplexer/ats-multiplexer.cc
-        plugins/experimental/multiplexer/chunk-decoder.cc
-        plugins/experimental/multiplexer/chunk-decoder.h
-        plugins/experimental/multiplexer/dispatch.cc
-        plugins/experimental/multiplexer/dispatch.h
-        plugins/experimental/multiplexer/fetcher.cc
-        plugins/experimental/multiplexer/fetcher.h
-        plugins/experimental/multiplexer/original-request.cc
-        plugins/experimental/multiplexer/original-request.h
-        plugins/experimental/multiplexer/post.cc
-        plugins/experimental/multiplexer/post.h
-        plugins/experimental/multiplexer/ts.cc
-        plugins/experimental/multiplexer/ts.h
-        plugins/experimental/mysql_remap/lib/dictionary.c
-        plugins/experimental/mysql_remap/lib/dictionary.h
-        plugins/experimental/mysql_remap/lib/iniparser.c
-        plugins/experimental/mysql_remap/lib/iniparser.h
-        plugins/experimental/mysql_remap/default.h
-        plugins/experimental/mysql_remap/mysql_remap.cc
-        plugins/experimental/remap_purge/remap_purge.c
-        plugins/experimental/remap_stats/remap_stats.c
-        plugins/experimental/server_push_preload/server_push_preload.cc
-        plugins/experimental/sslheaders/expand.cc
-        plugins/experimental/sslheaders/sslheaders.cc
-        plugins/experimental/sslheaders/sslheaders.h
-        plugins/experimental/sslheaders/test_sslheaders.cc
-        plugins/experimental/sslheaders/util.cc
-        plugins/experimental/stale_while_revalidate/stale_while_revalidate.c
-        plugins/experimental/stream_editor/stream_editor.cc
-        plugins/experimental/system_stats/system_stats.c
-        plugins/experimental/tls_bridge/regex.cc
-        plugins/experimental/tls_bridge/regex.h
-        plugins/experimental/tls_bridge/tls_bridge.cc
-        plugins/experimental/uri_signing/config.c
-        plugins/experimental/uri_signing/config.h
-        plugins/experimental/uri_signing/cookie.c
-        plugins/experimental/uri_signing/cookie.h
-        plugins/experimental/uri_signing/jwt.c
-        plugins/experimental/uri_signing/jwt.h
-        plugins/experimental/uri_signing/match.c
-        plugins/experimental/uri_signing/match.h
-        plugins/experimental/uri_signing/parse.c
-        plugins/experimental/uri_signing/parse.h
-        plugins/experimental/uri_signing/timing.c
-        plugins/experimental/uri_signing/timing.h
-        plugins/experimental/uri_signing/uri_signing.c
-        plugins/experimental/uri_signing/uri_signing.h
-        plugins/experimental/url_sig/url_sig.c
-        plugins/experimental/url_sig/url_sig.h
-        plugins/experimental/webp_transform/ImageTransform.cc
-        plugins/generator/generator.cc
-        plugins/header_rewrite/condition.cc
-        plugins/header_rewrite/condition.h
-        plugins/header_rewrite/conditions.cc
-        plugins/header_rewrite/conditions.h
-        plugins/header_rewrite/expander.cc
-        plugins/header_rewrite/expander.h
-        plugins/header_rewrite/factory.cc
-        plugins/header_rewrite/factory.h
-        plugins/header_rewrite/header_rewrite.cc
-        plugins/header_rewrite/header_rewrite_test.cc
-        plugins/header_rewrite/lulu.cc
-        plugins/header_rewrite/lulu.h
-        plugins/header_rewrite/matcher.h
-        plugins/header_rewrite/operator.cc
-        plugins/header_rewrite/operator.h
-        plugins/header_rewrite/operators.cc
-        plugins/header_rewrite/operators.h
-        plugins/header_rewrite/parser.cc
-        plugins/header_rewrite/parser.h
-        plugins/header_rewrite/regex_helper.cc
-        plugins/header_rewrite/regex_helper.h
-        plugins/header_rewrite/resources.cc
-        plugins/header_rewrite/resources.h
-        plugins/header_rewrite/ruleset.cc
-        plugins/header_rewrite/ruleset.h
-        plugins/header_rewrite/statement.cc
-        plugins/header_rewrite/statement.h
-        plugins/header_rewrite/value.h
-        plugins/healthchecks/healthchecks.c
-        plugins/libloader/libloader.c
-        plugins/lua/ts_lua.c
-        plugins/lua/ts_lua_cached_response.c
-        plugins/lua/ts_lua_cached_response.h
-        plugins/lua/ts_lua_client_request.c
-        plugins/lua/ts_lua_client_request.h
-        plugins/lua/ts_lua_client_response.c
-        plugins/lua/ts_lua_client_response.h
-        plugins/lua/ts_lua_common.h
-        plugins/lua/ts_lua_constant.c
-        plugins/lua/ts_lua_constant.h
-        plugins/lua/ts_lua_context.c
-        plugins/lua/ts_lua_context.h
-        plugins/lua/ts_lua_coroutine.c
-        plugins/lua/ts_lua_coroutine.h
-        plugins/lua/ts_lua_crypto.c
-        plugins/lua/ts_lua_crypto.h
-        plugins/lua/ts_lua_fetch.c
-        plugins/lua/ts_lua_fetch.h
-        plugins/lua/ts_lua_hook.c
-        plugins/lua/ts_lua_hook.h
-        plugins/lua/ts_lua_http.c
-        plugins/lua/ts_lua_http.h
-        plugins/lua/ts_lua_http_cntl.c
-        plugins/lua/ts_lua_http_cntl.h
-        plugins/lua/ts_lua_http_config.c
-        plugins/lua/ts_lua_http_config.h
-        plugins/lua/ts_lua_http_intercept.c
-        plugins/lua/ts_lua_http_intercept.h
-        plugins/lua/ts_lua_http_milestone.c
-        plugins/lua/ts_lua_http_milestone.h
-        plugins/lua/ts_lua_io.c
-        plugins/lua/ts_lua_io.h
-        plugins/lua/ts_lua_log.c
-        plugins/lua/ts_lua_log.h
-        plugins/lua/ts_lua_mgmt.c
-        plugins/lua/ts_lua_mgmt.h
-        plugins/lua/ts_lua_misc.c
-        plugins/lua/ts_lua_misc.h
-        plugins/lua/ts_lua_package.c
-        plugins/lua/ts_lua_package.h
-        plugins/lua/ts_lua_remap.c
-        plugins/lua/ts_lua_remap.h
-        plugins/lua/ts_lua_server_request.c
-        plugins/lua/ts_lua_server_request.h
-        plugins/lua/ts_lua_server_response.c
-        plugins/lua/ts_lua_server_response.h
-        plugins/lua/ts_lua_stat.c
-        plugins/lua/ts_lua_stat.h
-        plugins/lua/ts_lua_string.c
-        plugins/lua/ts_lua_string.h
-        plugins/lua/ts_lua_transform.c
-        plugins/lua/ts_lua_transform.h
-        plugins/lua/ts_lua_util.c
-        plugins/lua/ts_lua_util.h
-        plugins/regex_remap/regex_remap.cc
-        plugins/regex_revalidate/regex_revalidate.c
-        plugins/s3_auth/unit_tests/test_aws_auth_v4.cc
-        plugins/s3_auth/unit_tests/test_aws_auth_v4.h
-        plugins/s3_auth/aws_auth_v4.cc
-        plugins/s3_auth/aws_auth_v4.h
-        plugins/s3_auth/aws_auth_v4_wrap.h
-        plugins/s3_auth/s3_auth.cc
-        plugins/stats_over_http/stats_over_http.c
-        plugins/tcpinfo/tcpinfo.cc
-        plugins/xdebug/xdebug.cc
-        include/ts/experimental.h
-        include/ts/InkAPIPrivateIOCore.h
-        include/ts/remap.h
-        include/ts/ts.h
-        include/ts/TsException.h
-        proxy/hdrs/HdrHeap.cc
-        proxy/hdrs/HdrHeap.h
-        proxy/hdrs/HdrTest.cc
-        proxy/hdrs/HdrTest.h
-        proxy/hdrs/HdrToken.cc
-        proxy/hdrs/HdrToken.h
-        proxy/hdrs/HdrTSOnly.cc
-        proxy/hdrs/HdrUtils.cc
-        proxy/hdrs/HdrUtils.h
-        proxy/hdrs/HTTP.cc
-        proxy/hdrs/HTTP.h
-        proxy/hdrs/HttpCompat.cc
-        proxy/hdrs/HttpCompat.h
-        proxy/hdrs/load_http_hdr.cc
-        proxy/hdrs/MIME.cc
-        proxy/hdrs/MIME.h
-        proxy/hdrs/test_mime.cc
-        proxy/hdrs/test_urlhash.cc
-        proxy/hdrs/URL.cc
-        proxy/hdrs/URL.h
-        proxy/http/remap/AclFiltering.cc
-        proxy/http/remap/AclFiltering.h
-        proxy/http/remap/RemapConfig.cc
-        proxy/http/remap/RemapConfig.h
-        proxy/http/remap/RemapPluginInfo.cc
-        proxy/http/remap/RemapPluginInfo.h
-        proxy/http/remap/RemapPlugins.cc
-        proxy/http/remap/RemapPlugins.h
-        proxy/http/remap/RemapProcessor.cc
-        proxy/http/remap/RemapProcessor.h
-        proxy/http/remap/UrlMapping.cc
-        proxy/http/remap/UrlMapping.h
-        proxy/http/remap/UrlMappingPathIndex.cc
-        proxy/http/remap/UrlMappingPathIndex.h
-        proxy/http/remap/UrlRewrite.cc
-        proxy/http/remap/UrlRewrite.h
-        proxy/http/unit_tests/test_ForwardedConfig.cc
-        proxy/http/unit_tests/test_ForwardedConfig_mocks.cc
-        proxy/http/ForwardedConfig.cc
-        proxy/http/Http1ClientSession.cc
-        proxy/http/Http1ClientSession.h
-        proxy/http/Http1ClientTransaction.cc
-        proxy/http/Http1ClientTransaction.h
-        proxy/http/HttpBodyFactory.cc
-        proxy/http/HttpBodyFactory.h
-        proxy/http/HttpCacheSM.cc
-        proxy/http/HttpCacheSM.h
-        proxy/http/HttpConfig.cc
-        proxy/http/HttpConfig.h
-        proxy/http/HttpConnectionCount.cc
-        proxy/http/HttpConnectionCount.h
-        proxy/http/HttpDebugNames.cc
-        proxy/http/HttpDebugNames.h
-        proxy/http/HttpPages.cc
-        proxy/http/HttpPages.h
-        proxy/http/HttpProxyAPIEnums.h
-        proxy/http/HttpProxyServerMain.cc
-        proxy/http/HttpProxyServerMain.h
-        proxy/http/HttpServerSession.cc
-        proxy/http/HttpServerSession.h
-        proxy/http/HttpSessionAccept.cc
-        proxy/http/HttpSessionAccept.h
-        proxy/http/HttpSessionManager.cc
-        proxy/http/HttpSessionManager.h
-        proxy/http/HttpSM.cc
-        proxy/http/HttpSM.h
-        proxy/http/HttpTransact.cc
-        proxy/http/HttpTransact.h
-        proxy/http/HttpTransactCache.cc
-        proxy/http/HttpTransactCache.h
-        proxy/http/HttpTransactHeaders.cc
-        proxy/http/HttpTransactHeaders.h
-        proxy/http/HttpTunnel.cc
-        proxy/http/HttpTunnel.h
-        proxy/http/HttpUpdateSM.cc
-        proxy/http/HttpUpdateSM.h
-        proxy/http/HttpUpdateTester.cc
-        proxy/http/RegressionHttpTransact.cc
-        proxy/http/test_socket_close.cc
-        proxy/http/testheaders.cc
-        proxy/http/TestUrl.cc
-        proxy/http2/HPACK.cc
-        proxy/http2/HPACK.h
-        proxy/http2/HTTP2.cc
-        proxy/http2/HTTP2.h
-        proxy/http2/Http2ClientSession.cc
-        proxy/http2/Http2ClientSession.h
-        proxy/http2/Http2ConnectionState.cc
-        proxy/http2/Http2ConnectionState.h
-        proxy/http2/Http2DebugNames.cc
-        proxy/http2/Http2DebugNames.h
-        proxy/http2/Http2DependencyTree.h
-        proxy/http2/Http2SessionAccept.cc
-        proxy/http2/Http2SessionAccept.h
-        proxy/http2/Http2Stream.cc
-        proxy/http2/Http2Stream.h
-        proxy/http2/HuffmanCodec.cc
-        proxy/http2/HuffmanCodec.h
-        proxy/http2/RegressionHPACK.cc
-        proxy/http2/test_HPACK.cc
-        proxy/http2/test_Http2DependencyTree.cc
-        proxy/http2/test_Huffmancode.cc
-        proxy/logging/Log.cc
-        proxy/logging/Log.h
-        proxy/logging/LogAccess.cc
-        proxy/logging/LogAccess.h
-        proxy/logging/LogAccessTest.cc
-        proxy/logging/LogAccessTest.h
-        proxy/logging/LogBuffer.cc
-        proxy/logging/LogBuffer.h
-        proxy/logging/LogBufferSink.h
-        proxy/logging/LogCollationAccept.cc
-        proxy/logging/LogCollationAccept.h
-        proxy/logging/LogCollationBase.h
-        proxy/logging/LogCollationClientSM.cc
-        proxy/logging/LogCollationClientSM.h
-        proxy/logging/LogCollationHostSM.cc
-        proxy/logging/LogCollationHostSM.h
-        proxy/logging/LogConfig.cc
-        proxy/logging/LogConfig.h
-        proxy/logging/LogField.cc
-        proxy/logging/LogField.h
-        proxy/logging/LogFieldAliasMap.cc
-        proxy/logging/LogFieldAliasMap.h
-        proxy/logging/LogFile.cc
-        proxy/logging/LogFile.h
-        proxy/logging/LogFilter.cc
-        proxy/logging/LogFilter.h
-        proxy/logging/LogFormat.cc
-        proxy/logging/LogFormat.h
-        proxy/logging/LogHost.cc
-        proxy/logging/LogHost.h
-        proxy/logging/LogLimits.h
-        proxy/logging/LogObject.cc
-        proxy/logging/LogObject.h
-        proxy/logging/LogSock.cc
-        proxy/logging/LogSock.h
-        proxy/logging/LogStandalone.cc
-        proxy/logging/LogUtils.cc
-        proxy/logging/LogUtils.h
-        proxy/logging/test_LogUtils.cc
-        proxy/shared/DiagsConfig.cc
-        proxy/shared/DiagsConfig.h
-        proxy/shared/UglyLogStubs.cc
-        proxy/CacheControl.cc
-        proxy/CacheControl.h
-        proxy/ControlBase.cc
-        proxy/ControlBase.h
-        proxy/ControlMatcher.cc
-        proxy/ControlMatcher.h
-        proxy/InkAPIInternal.h
-        proxy/IPAllow.cc
-        proxy/IPAllow.h
-        proxy/Main.h
-        proxy/Milestones.h
-        proxy/ParentConsistentHash.cc
-        proxy/ParentConsistentHash.h
-        proxy/ParentRoundRobin.cc
-        proxy/ParentRoundRobin.h
-        proxy/ParentSelection.cc
-        proxy/ParentSelection.h
-        proxy/ParentSelectionStrategy.cc
-        proxy/Plugin.cc
-        proxy/Plugin.h
-        proxy/PluginVC.cc
-        proxy/PluginVC.h
-        proxy/ProtocolProbeSessionAccept.cc
-        proxy/ProtocolProbeSessionAccept.h
-        proxy/ProxyClientSession.cc
-        proxy/ProxyClientSession.h
-        proxy/ProxyClientTransaction.cc
-        proxy/ProxyClientTransaction.h
-        proxy/RegressionSM.cc
-        proxy/RegressionSM.h
-        proxy/ReverseProxy.cc
-        proxy/ReverseProxy.h
-        proxy/Show.h
-        proxy/StatPages.cc
-        proxy/StatPages.h
-        proxy/TimeTrace.h
-        proxy/Transform.cc
-        proxy/Transform.h
-        proxy/TransformInternal.h
-        tests/gold_tests/tls/ssl-post.c
-        tests/include/catch.hpp
-        tests/tools/plugins/continuations_verify.cc
-        tests/tools/plugins/custom204plugin.cc
-        tests/tools/plugins/null_transform.c
-        tests/tools/plugins/ssl_hook_test.cc
-        tests/tools/plugins/ssntxnorder_verify.cc
-        tools/http_load/http_load.c
-        tools/http_load/port.h
-        tools/http_load/timers.c
-        tools/http_load/timers.h
-        tools/jtest/jtest.cc)
-
-add_library(libtscore SHARED
-        include/tscore/Allocator.h
-        src/tscore/Arena.cc
-        include/tscore/Arena.h
-        src/tscore/BaseLogFile.cc
-        include/tscore/BaseLogFile.h
-        src/tscore/Bitops.cc
-        include/tscore/Bitops.h
-        include/tscore/bwf_std_format.h
-        include/tscore/BufferWriter.h
-        include/tscore/BufferWriterForward.h
-        src/tscore/BufferWriterFormat.cc
-        src/tscore/CompileParseRules.cc
-        src/tscore/ConsistentHash.cc
-        include/tscore/ConsistentHash.h
-        src/tscore/ContFlags.cc
-        include/tscore/ContFlags.h
-        src/tscore/CryptoHash.cc
-        include/tscore/CryptoHash.h
-        include/tscore/defalloc.h
-        src/tscore/Diags.cc
-        include/tscore/Diags.h
-        include/tscore/DynArray.h
-        src/tscore/EventNotify.cc
-        include/tscore/EventNotify.h
-        src/tscore/fastlz.c
-        include/tscore/fastlz.h
-        src/tscore/Hash.cc
-        include/tscore/Hash.h
-        src/tscore/HashFNV.cc
-        include/tscore/HashFNV.h
-        src/tscore/HashMD5.cc
-        include/tscore/HashMD5.h
-        src/tscore/HashSip.cc
-        include/tscore/HashSip.h
-        include/tscore/History.h
-        src/tscore/HostLookup.cc
-        include/tscore/HostLookup.h
-        src/tscore/hugepages.cc
-        include/tscore/hugepages.h
-        include/tscore/I_Layout.h
-        include/tscore/I_Version.h
-        include/tscore/ink_aiocb.h
-        include/tscore/ink_align.h
-        src/tscore/ink_args.cc
-        include/tscore/ink_args.h
-        src/tscore/ink_assert.cc
-        include/tscore/ink_assert.h
-        include/tscore/ink_atomic.h
-        src/tscore/ink_base64.cc
-        include/tscore/ink_base64.h
-        src/tscore/ink_cap.cc
-        include/tscore/ink_cap.h
-        src/tscore/ink_code.cc
-        include/tscore/ink_code.h
-        include/tscore/ink_config.h
-        src/tscore/ink_defs.cc
-        include/tscore/ink_defs.h
-        src/tscore/ink_error.cc
-        include/tscore/ink_error.h
-        include/tscore/ink_exception.h
-        src/tscore/ink_file.cc
-        include/tscore/ink_file.h
-        src/tscore/ink_hash_table.cc
-        include/tscore/ink_hash_table.h
-        src/tscore/ink_hrtime.cc
-        include/tscore/ink_hrtime.h
-        src/tscore/ink_inet.cc
-        include/tscore/ink_inet.h
-        include/tscore/ink_inout.h
-        include/tscore/ink_llqueue.h
-        include/tscore/ink_lockfile.h
-        include/tscore/INK_MD5.h
-        src/tscore/ink_memory.cc
-        include/tscore/ink_memory.h
-        src/tscore/ink_mutex.cc
-        include/tscore/ink_mutex.h
-        include/tscore/ink_platform.h
-        src/tscore/ink_queue.cc
-        include/tscore/ink_queue.h
-        src/tscore/ink_queue_utils.cc
-        src/tscore/ink_rand.cc
-        include/tscore/ink_rand.h
-        src/tscore/ink_res_init.cc
-        src/tscore/ink_res_mkquery.cc
-        include/tscore/ink_resolver.h
-        src/tscore/ink_resource.cc
-        include/tscore/ink_resource.h
-        src/tscore/ink_rwlock.cc
-        include/tscore/ink_rwlock.h
-        src/tscore/ink_sock.cc
-        include/tscore/ink_sock.h
-        src/tscore/ink_sprintf.cc
-        include/tscore/ink_sprintf.h
-        src/tscore/ink_stack_trace.cc
-        include/tscore/ink_stack_trace.h
-        src/tscore/ink_string++.cc
-        include/tscore/ink_string++.h
-        src/tscore/ink_string.cc
-        include/tscore/ink_string.h
-        src/tscore/ink_sys_control.cc
-        include/tscore/ink_sys_control.h
-        src/tscore/ink_syslog.cc
-        include/tscore/ink_syslog.h
-        src/tscore/ink_thread.cc
-        include/tscore/ink_thread.h
-        src/tscore/ink_time.cc
-        include/tscore/ink_time.h
-        src/tscore/ink_uuid.cc
-        include/tscore/ink_uuid.h
-        src/tscore/InkErrno.cc
-        include/tscore/InkErrno.h
-        include/tscore/IntrusiveDList.h
-	include/tscore/IntrusiveHashMap.h
-        src/tscore/IntrusivePtrTest.cc
-        src/tscore/IpMap.cc
-        include/tscore/IpMap.h
-        src/tscore/IpMapConf.cc
-        include/tscore/IpMapConf.h
-        src/tscore/Layout.cc
-        include/tscore/List.h
-        src/tscore/llqueue.cc
-        src/tscore/load_http_hdr.cc
-        src/tscore/lockfile.cc
-        include/tscore/Map.h
-        src/tscore/MatcherUtils.cc
-        include/tscore/MatcherUtils.h
-        include/tscore/MemArena.h
-        src/tscore/MemArena.cc
-        include/tscore/MemSpan.h
-        src/tscore/mkdfa.c
-        src/tscore/MMH.cc
-        include/tscore/MMH.h
-        include/tscore/MT_hashtable.h
-        src/tscore/ParseRules.cc
-        include/tscore/ParseRules.h
-        include/tscore/PriorityQueue.h
-        include/tscore/Ptr.h
-        src/tscore/RawHashTable.cc
-        include/tscore/RawHashTable.h
-        src/tscore/RbTree.cc
-        include/tscore/RbTree.h
-        src/tscore/Regex.cc
-        include/tscore/Regex.h
-        src/tscore/Regression.cc
-        include/tscore/Regression.h
-        include/tscore/Result.h
-        src/tscore/runroot.cc
-        include/tscore/runroot.h
-        include/tscore/Scalar.h
-        include/tscore/SHA256.h
-        src/tscore/signals.cc
-        include/tscore/signals.h
-        include/tscore/SimpleTokenizer.h
-        src/tscore/SourceLocation.cc
-        include/tscore/SourceLocation.h
-        src/tscore/test_arena.cc
-        src/tscore/test_atomic.cc
-        src/tscore/test_freelist.cc
-        src/tscore/test_geometry.cc
-        src/tscore/test_List.cc
-        src/tscore/test_Map.cc
-        src/tscore/test_Vec.cc
-        src/tscore/test_X509HostnameValidator.cc
-        include/tscore/TestBox.h
-        src/tscore/TestHttpHeader.cc
-        src/tscore/tests.cc
-        src/tscore/TextBuffer.cc
-        include/tscore/TextBuffer.h
-        include/tscpp/util/TextView.h
-        src/tscore/Tokenizer.cc
-        include/tscore/Tokenizer.h
-        include/tscore/Trie.h
-        include/tscore/TsBuffer.h
-        src/tscore/Version.cc
-        src/tscore/X509HostnameValidator.cc
-        include/tscore/X509HostnameValidator.h
-)
-
-add_executable(test_tscore
-	src/tscore/unit_tests/unit_test_main.cc
-	src/tscore/unit_tests/test_BufferWriter.cc
-	src/tscore/unit_tests/test_BufferWriterFormat.cc
-	src/tscore/unit_tests/test_History.cc
-	src/tscore/unit_tests/test_ink_inet.cc
-	src/tscore/unit_tests/test_IntrusiveDList.cc
-	src/tscore/unit_tests/test_IntrusiveHashMap.cc
-	src/tscore/unit_tests/test_IntrusivePtr.cc
-	src/tscore/unit_tests/test_IpMap.cc
-	src/tscore/unit_tests/test_layout.cc
-	src/tscore/unit_tests/test_MemArena.cc
-	src/tscore/unit_tests/test_MemSpan.cc
-	src/tscore/unit_tests/test_MT_hashtable.cc
-	src/tscore/unit_tests/test_PriorityQueue.cc
-	src/tscore/unit_tests/test_Ptr.cc
-	src/tscore/unit_tests/test_Regex.cc
-	src/tscore/unit_tests/test_Scalar.cc
-	src/tscore/unit_tests/test_scoped_resource.cc
-)
-
-# iocore/cache
-add_library(libcache SHARED
-        iocore/cache/Cache.cc
-        iocore/cache/CacheDir.cc
-        iocore/cache/CacheDisk.cc
-        iocore/cache/CacheHosting.cc
-        iocore/cache/CacheHttp.cc
-        iocore/cache/CacheLink.cc
-        iocore/cache/CachePages.cc
-        iocore/cache/CachePagesInternal.cc
-        iocore/cache/CacheRead.cc
-        iocore/cache/CacheTest.cc
-        iocore/cache/CacheVol.cc
-        iocore/cache/CacheWrite.cc
-        iocore/cache/I_Cache.h
-        iocore/cache/I_CacheDefs.h
-        iocore/cache/I_Store.h
-        iocore/cache/Inline.cc
-        iocore/cache/P_Cache.h
-        iocore/cache/P_CacheArray.h
-        iocore/cache/P_CacheBC.h
-        iocore/cache/P_CacheDir.h
-        iocore/cache/P_CacheDisk.h
-        iocore/cache/P_CacheHosting.h
-        iocore/cache/P_CacheHttp.h
-        iocore/cache/P_CacheInternal.h
-        iocore/cache/P_CacheTest.h
-        iocore/cache/P_CacheVol.h
-        iocore/cache/P_RamCache.h
-        iocore/cache/RamCacheCLFUS.cc
-        iocore/cache/RamCacheLRU.cc
-        iocore/cache/Store.cc
-)
-
-add_library(libtsconfig SHARED
-        lib/tsconfig/Errata.cc
-        lib/tsconfig/Errata.h
-        lib/tsconfig/IntrusivePtr.h
-        lib/tsconfig/NumericType.h
-        lib/tsconfig/test-tsconfig.cc
-        lib/tsconfig/TsBuilder.cc
-        lib/tsconfig/TsBuilder.h
-        lib/tsconfig/TsConfigGrammar.c
-        lib/tsconfig/TsConfigGrammar.h
-        lib/tsconfig/TsConfigLexer.h
-        lib/tsconfig/TsConfigParseEvents.h
-        lib/tsconfig/TsConfigSyntax.c
-        lib/tsconfig/TsConfigTypes.h
-        lib/tsconfig/TsErrataUtil.cc
-        lib/tsconfig/TsErrataUtil.h
-        lib/tsconfig/TsValue.cc
-        lib/tsconfig/TsValue.h
-)
-
-# Plugins
-add_library(plugin_compress SHARED
-        plugins/compress/configuration.cc
-        plugins/compress/configuration.h
-        plugins/compress/debug_macros.h
-        plugins/compress/compress.cc
-        plugins/compress/misc.cc
-        plugins/compress/misc.h
-)
-
-add_library(plugin_cachekey SHARED
-        plugins/cachekey/tests/pattern_test.cc
-        plugins/cachekey/cachekey.cc
-        plugins/cachekey/cachekey.h
-        plugins/cachekey/common.cc
-        plugins/cachekey/common.h
-        plugins/cachekey/configs.cc
-        plugins/cachekey/configs.h
-        plugins/cachekey/pattern.cc
-        plugins/cachekey/pattern.h
-        plugins/cachekey/plugin.cc
-        )
-
-add_library(plugin_escalate SHARED
-        plugins/escalate/escalate.cc
+macro(CC_EXEC exec path)
+    file(GLOB cc_exec_files ${path}/*.cc ${path}/*.h)
+    add_executable(${exec} ${cc_exec_files})
+endmacro(CC_EXEC)
+
+macro(CPP_LIB name src_path inc_path)
+    file(GLOB cc_lib_files ${inc_path}/*.h ${src_path}/*.cc ${src_path}/*.h ${src_path}/unit_tests/*.cc)
+    add_library(${name} SHARED ${cc_lib_files})
+endmacro(CPP_LIB)
+
+macro(CPP_ADD_SOURCES target path)
+    file(GLOB cpp_add_src_files ${path}/*.h ${path}/*.cc)
+    target_sources(${target} PUBLIC ${cpp_add_src_files})
+endmacro(CPP_ADD_SOURCES)
+
+CC_EXEC(traffic_cache_tool src/traffic_cache_tool)
+CC_EXEC(traffic_crashlog src/traffic_crashlog)
+CC_EXEC(traffic_ctl src/traffic_ctl)
+CC_EXEC(traffic_layout src/traffic_layout)
+CC_EXEC(traffic_logcat src/traffic_logcat)
+CC_EXEC(traffic_logstats src/traffic_logstats)
+CC_EXEC(traffic_manager src/traffic_manager)
+CC_EXEC(traffic_server src/traffic_server)
+CC_EXEC(traffic_top src/traffic_top)
+CC_EXEC(traffic_via src/traffic_via)
+CC_EXEC(traffic_wccp src/traffic_wccp)
+
+CPP_LIB(tscore src/tscore include/tscore)
+CPP_LIB(tscpputil src/tscpp/util include/tscpp/util)
+CPP_LIB(tscppapi src/tscpp/api include/tscpp/api)
+
+CPP_LIB(proxy proxy proxy)
+CPP_ADD_SOURCES(proxy proxy/http)
+CPP_ADD_SOURCES(proxy proxy/http2)
+CPP_ADD_SOURCES(proxy proxy/http/remap)
+CPP_ADD_SOURCES(proxy proxy/hdrs)
+
+CPP_LIB(iocore iocore iocore)
+CPP_ADD_SOURCES(iocore iocore/eventsystem)
+CPP_ADD_SOURCES(iocore iocore/net)
+CPP_ADD_SOURCES(iocore iocore/cache)
+CPP_ADD_SOURCES(iocore iocore/aio)
+CPP_ADD_SOURCES(iocore iocore/dns)
+CPP_ADD_SOURCES(iocore iocore/hostdb)
+CPP_ADD_SOURCES(iocore iocore/utils)
+
+CPP_LIB(mgmt mgmt mgmt)
+CPP_ADD_SOURCES(mgmt mgmt/api)
+CPP_ADD_SOURCES(mgmt mgmt/utils)
+
+CPP_LIB(tsconfig lib/tsconfig lib/tsconfig)
+CPP_LIB(wccp src/wccp include/wccp)
+
+file(GLOB plugin_files
+        plugins/*/*.h
+        plugins/*/*.c
+        plugins/*/*.cc
+        plugins/experimental/*/*.h
+        plugins/experimental/*/*.c
+        plugins/experimental/*/*.cc
+        example/*/*.h
+        example/*/*.c
+        example/*/*.cc
         )
+add_library(plugins SHARED ${plugin_files})
 
-# CacheTool
-add_executable(traffic_cache_tool
-	src/traffic_cache_tool/CacheStore.h
-	src/traffic_cache_tool/CacheDefs.h
-	src/traffic_cache_tool/CacheDefs.cc
-	src/traffic_cache_tool/CacheTool.cc
-	src/traffic_cache_tool/Command.h
-	src/traffic_cache_tool/Command.cc
-	src/traffic_cache_tool/File.h
-	src/traffic_cache_tool/File.cc
-)