You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by cm...@apache.org on 2023/11/16 17:46:03 UTC
(trafficserver) branch master updated: remove autotools (#10794)
This is an automated email from the ASF dual-hosted git repository.
cmcfarlen 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 332fe3c75b remove autotools (#10794)
332fe3c75b is described below
commit 332fe3c75be6688f158fa4450eb07446edded7ee
Author: Chris McFarlen <ch...@mcfarlen.us>
AuthorDate: Thu Nov 16 11:45:56 2023 -0600
remove autotools (#10794)
* remove autotools
* update docs
* More updates
* Update autest docs
---------
Co-authored-by: Chris McFarlen <cm...@apple.com>
---
CMakeLists.txt | 9 -
INSTALL | 18 +-
Makefile.am | 203 --
README.md | 77 +-
config.layout | 297 ---
configs/Makefile.am | 50 -
configs/body_factory/Makefile.am | 20 -
configs/body_factory/default/Makefile.am | 50 -
configure.ac | 2442 --------------------
doc/Makefile.am | 144 --
doc/admin-guide/installation/index.en.rst | 77 +-
doc/getting-started/index.en.rst | 22 +-
doc/uml/Makefile.am | 61 -
example/Makefile.am | 19 -
example/plugins/Makefile.am | 19 -
example/plugins/c-api/Makefile.am | 114 -
.../plugins/c-api/thread_pool/include/Makefile.am | 23 -
include/Makefile.am | 19 -
include/ts/Makefile.am | 31 -
include/tscore/ink_config.h.in | 130 --
include/tscpp/api/Makefile.am | 48 -
include/tscpp/util/Makefile.am | 32 -
lib/Makefile.am | 48 -
lib/fastlz/Makefile.am | 28 -
lib/swoc/Makefile.am | 64 -
lib/yamlcpp/Makefile.am | 66 -
m4/atomic.m4 | 38 -
m4/ax_cc_for_build.m4 | 76 -
m4/ax_check_openssl.m4 | 136 --
m4/ax_compare_version.m4 | 176 --
m4/ax_compiler_vendor.m4 | 84 -
m4/ax_lib_curl.m4 | 38 -
m4/ax_path_generic.m4 | 164 --
m4/ax_perl_modules.m4 | 51 -
m4/ax_require_defined.m4 | 37 -
m4/ax_with_curses.m4 | 582 -----
m4/brotli.m4 | 98 -
m4/cjose.m4 | 47 -
m4/common.m4 | 606 -----
m4/crypto.m4 | 422 ----
m4/fmt.m4 | 77 -
m4/hiredis.m4 | 79 -
m4/jansson.m4 | 47 -
m4/jemalloc.m4 | 89 -
m4/libswoc.m4 | 110 -
m4/luajit.m4 | 179 --
m4/lzma.m4 | 98 -
m4/mimalloc.m4 | 97 -
m4/network.m4 | 38 -
m4/nuraft.m4 | 85 -
m4/pcre.m4 | 110 -
m4/pcre2.m4 | 77 -
m4/pkg.m4 | 199 --
m4/quiche.m4 | 85 -
m4/yaml-cpp.m4 | 98 -
m4/zlib.m4 | 92 -
mk/plugins.mk | 38 -
mk/tidy.mk | 34 -
plugins/Makefile.am | 134 --
plugins/authproxy/Makefile.inc | 25 -
plugins/background_fetch/Makefile.inc | 25 -
plugins/cache_promote/Makefile.inc | 24 -
plugins/cache_range_requests/Makefile.inc | 20 -
plugins/cachekey/Makefile.inc | 23 -
plugins/certifier/Makefile.inc | 19 -
plugins/compress/Makefile.inc | 23 -
plugins/conf_remap/Makefile.inc | 18 -
plugins/escalate/Makefile.inc | 20 -
plugins/esi/Makefile.inc | 143 --
plugins/experimental/access_control/Makefile.inc | 38 -
plugins/experimental/block_errors/Makefile.inc | 20 -
plugins/experimental/cache_fill/Makefile.inc | 21 -
.../experimental/cert_reporting_tool/Makefile.inc | 19 -
plugins/experimental/cookie_remap/Makefile.inc | 40 -
plugins/experimental/custom_redirect/Makefile.inc | 20 -
plugins/experimental/fq_pacing/Makefile.inc | 20 -
plugins/experimental/geoip_acl/Makefile.inc | 23 -
plugins/experimental/header_freq/Makefile.inc | 19 -
plugins/experimental/hook-trace/Makefile.inc | 20 -
plugins/experimental/http_stats/Makefile.inc | 20 -
plugins/experimental/icap/Makefile.inc | 20 -
plugins/experimental/inliner/Makefile.inc | 29 -
plugins/experimental/magick/Makefile.inc | 32 -
plugins/experimental/maxmind_acl/Makefile.inc | 28 -
plugins/experimental/memcache/Makefile.inc | 31 -
plugins/experimental/memory_profile/Makefile.inc | 23 -
plugins/experimental/money_trace/Makefile.inc | 23 -
plugins/experimental/mp4/Makefile.inc | 23 -
plugins/experimental/otel_tracer/Makefile.inc | 26 -
plugins/experimental/rate_limit/Makefile.inc | 31 -
.../experimental/redo_cache_lookup/Makefile.inc | 26 -
.../experimental/ssl_session_reuse/Makefile.inc | 34 -
plugins/experimental/sslheaders/Makefile.inc | 60 -
plugins/experimental/stek_share/Makefile.inc | 36 -
plugins/experimental/stream_editor/Makefile.inc | 20 -
plugins/experimental/system_stats/Makefile.inc | 22 -
plugins/experimental/tls_bridge/Makefile.inc | 22 -
plugins/experimental/uri_signing/Makefile.inc | 49 -
plugins/experimental/url_sig/Makefile.inc | 20 -
plugins/experimental/wasm/Makefile.inc | 104 -
plugins/generator/Makefile.inc | 18 -
plugins/header_rewrite/Makefile.inc | 81 -
plugins/healthchecks/Makefile.inc | 18 -
plugins/ja3_fingerprint/Makefile.inc | 19 -
plugins/libloader/Makefile.inc | 21 -
plugins/lua/Makefile.inc | 51 -
plugins/multiplexer/Makefile.inc | 28 -
plugins/prefetch/Makefile.inc | 33 -
plugins/regex_remap/Makefile.inc | 18 -
plugins/regex_revalidate/Makefile.inc | 18 -
plugins/remap_purge/Makefile.inc | 20 -
plugins/remap_stats/Makefile.inc | 20 -
plugins/s3_auth/Makefile.inc | 26 -
plugins/server_push_preload/Makefile.inc | 26 -
plugins/slice/Makefile.inc | 72 -
plugins/statichit/Makefile.inc | 20 -
plugins/stats_over_http/Makefile.inc | 23 -
plugins/tcpinfo/Makefile.inc | 18 -
plugins/traffic_dump/Makefile.inc | 45 -
plugins/webp_transform/Makefile.inc | 32 -
plugins/xdebug/Makefile.inc | 19 -
rc/Makefile.am | 20 -
src/Makefile.am | 43 -
src/api/Makefile.am | 88 -
src/cripts/Makefile.am | 50 -
src/iocore/Makefile.am | 22 -
src/iocore/aio/Makefile.am | 69 -
src/iocore/cache/Makefile.am | 408 ----
src/iocore/dns/Makefile.am | 55 -
src/iocore/eventsystem/Makefile.am | 124 -
src/iocore/hostdb/Makefile.am | 96 -
src/iocore/io_uring/Makefile.am | 55 -
src/iocore/net/Makefile.am | 280 ---
src/iocore/net/quic/Makefile.am | 79 -
src/iocore/utils/Makefile.am | 38 -
src/mgmt/Makefile.am | 36 -
src/mgmt/config/Makefile.am | 48 -
src/mgmt/rpc/Makefile.am | 178 --
src/proxy/Makefile.am | 178 --
src/proxy/hdrs/Makefile.am | 137 --
src/proxy/http/Makefile.am | 182 --
src/proxy/http/remap/Makefile.am | 284 ---
src/proxy/http2/Makefile.am | 144 --
src/proxy/http3/Makefile.am | 115 -
src/proxy/logging/Makefile.am | 107 -
src/proxy/private/Makefile.inc | 22 -
src/proxy/shared/Makefile.am | 40 -
src/records/Makefile.am | 93 -
src/traffic_cache_tool/Makefile.inc | 40 -
src/traffic_crashlog/Makefile.inc | 44 -
src/traffic_ctl/Makefile.inc | 44 -
src/traffic_layout/Makefile.inc | 50 -
src/traffic_logcat/Makefile.inc | 52 -
src/traffic_logstats/Makefile.inc | 61 -
src/traffic_quic/Makefile.inc | 64 -
src/traffic_server/Makefile.inc | 120 -
src/traffic_top/Makefile.inc | 52 -
src/traffic_via/Makefile.inc | 42 -
src/tscore/Makefile.am | 195 --
src/tscpp/api/Makefile.am | 53 -
src/tscpp/util/Makefile.am | 55 -
tests/Makefile.am | 49 -
tests/README.md | 61 +-
tests/gold_tests/bigobj/Makefile.inc | 20 -
tests/gold_tests/chunked_encoding/Makefile.inc | 19 -
.../gold_tests/continuations/plugins/Makefile.inc | 18 -
tests/gold_tests/jsonrpc/plugins/Makefile.inc | 28 -
tests/gold_tests/pluginTest/TSVConnFd/Makefile.inc | 18 -
.../pluginTest/polite_hook_wait/Makefile.inc | 18 -
tests/gold_tests/pluginTest/tsapi/Makefile.inc | 22 -
tests/gold_tests/timeout/Makefile.inc | 19 -
tests/gold_tests/tls/Makefile.inc | 19 -
tests/tools/plugins/Makefile.inc | 96 -
tools/Makefile.am | 69 -
tools/benchmark/Makefile.am | 77 -
175 files changed, 90 insertions(+), 14623 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3cbf52220b..dc8f7e8370 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -568,15 +568,6 @@ endif()
set(rel_cachedir var/trafficserver)
-if(EXISTS "${PROJECT_SOURCE_DIR}/include/ink_autoconf.h")
- message(STATUS "Autoconf build detected in source tree. Removing autoconf headers.")
-endif()
-
-# In-tree autoconf configuration causes duplicate definitions of some symbols
-# in generated headers. If the files don't exist, no error is emitted.
-file(REMOVE "${PROJECT_SOURCE_DIR}/include/tscore/ink_config.h")
-file(REMOVE "${PROJECT_SOURCE_DIR}/include/ink_autoconf.h")
-
configure_file(configs/storage.config.default.in configs/storage.config.default)
configure_file(configs/records.yaml.default.in configs/records.yaml.default)
configure_file(include/tscore/ink_config.h.cmake.in include/tscore/ink_config.h)
diff --git a/INSTALL b/INSTALL
index 42ebd8f059..167b36b792 100644
--- a/INSTALL
+++ b/INSTALL
@@ -15,15 +15,12 @@ online, at
BUILD AND INSTALLATION
----------------------
-Configure & Build from Git source tree:
- $ autoreconf -if # generate the configure script and Makefile.in files
-
On Linux, macOS and FreeBSD:
- $ ./configure [--prefix=PREFIX]
- $ make
+ $ cmake -B build [-DCMAKE_INSTALL_PREFIX=PREFIX]
+ $ cmake --build build
To install:
- $ sudo make install
+ $ sudo cmake --install build
* Building on FreeBSD requires GNU make. This is the preferred make
on all platforms.
@@ -38,18 +35,17 @@ To install:
the layout name you have created.
* The easiest way to find all of the configuration flags
- for Traffic Server is to run ./configure --help.
+ for Traffic Server is to run `ccmake build`
By default the build will use the highest level of compiler
-optimization. To alter this, specify your own optimizer flags at
-configuration time:
+optimization. To alter this, specify the Release build type:
- $ ./configure CXXFLAGS=-Os CFLAGS=-Os
+ $ cmake -B build -DCMAKE_BUILD_TYPE=Release
To compile with an alternate set of compilers, e.g. LLVM/Clang
- $ ./configure CC=clang CXX=clang++
+ $ cmake -B build CC=clang CXX=clang++
To start the Traffic Server process stack (TC, TM, TS):
diff --git a/Makefile.am b/Makefile.am
deleted file mode 100644
index c1d31dd1da..0000000000
--- a/Makefile.am
+++ /dev/null
@@ -1,203 +0,0 @@
-#
-# Top-level Makefile.am for Traffic Server.
-#
-# 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.
-
-# Local Macros
-# http://www.gnu.org/software/automake/manual/automake.html#Local-Macros
-ACLOCAL_AMFLAGS = -I m4
-
-export CCACHE_BASEDIR
-
-# TODO: There's still some weirdness in the dependencies between proxy
-# and mgmt, hence we have to build proxy/hdrs first.
-
-# depends on the generates ts/ts.h include file.
-SUBDIRS = include lib src/tscpp/util src/tscore src/records iocore proxy mgmt src plugins tools example rc configs tests
-
-if BUILD_DOCS
-SUBDIRS += doc include
-endif
-
-DIST_BUILD_USER=`id -nu`
-DIST_BUILD_USER_GROUP=`id -ng`
-DISTCHECK_CONFIGURE_FLAGS=--with-user=${DIST_BUILD_USER} --with-group=${DIST_BUILD_USER_GROUP}
-
-EXTRA_DIST=CHANGES INSTALL STATUS NOTICE LAYOUT LICENSE example contrib README-EC2 REVIEWERS
-
-# Default value when creating release candidates
-RC = 0
-
-# Make sure the git pre-commit hook gets installed on build time
-all-local: $(abs_top_srcdir)/.git/hooks/pre-commit
-
-# igalic can't remember if this is make check or make test and neither should you.
-test: check
-
-installcheck-local:
- $(DESTDIR)$(bindir)/traffic_server -R 1
-
-distclean-local:
- -rm -f config.nice
-
-doxygen:
- @cd doc && $(MAKE) $(AM_MAKEFLAGS) $@
-
-changelog:
- ./tools/git/changelog.pl -o apache -r trafficserver -m $(VERSION) -a $(AUTHTOKEN) > CHANGELOG-$(VERSION)
-
-asf-dist: asf-distdir
- tardir=$(distdir) && $(am__tar) --mtime=./configure.ac | bzip2 -9 -c >$(distdir).tar.bz2
- @$(am__remove_distdir)
-
-asf-dist-rc: asf-distdir
- tardir=$(distdir) && $(am__tar) --mtime=./configure.ac | bzip2 -9 -c >$(distdir)-rc$(RC).tar.bz2
- @$(am__remove_distdir)
-
-asf-distdir:
- @$(am__remove_distdir)
- test -d .git && git clone . $(distdir)
- cd $(distdir) && autoreconf -i
- $(RM) -r -- $(distdir)/autom4te.cache $(distdir)/ci `find $(distdir) -name .git -o -name .gitignore -o -name .gitmodules`
- grep -v 'img.shields.io' $(distdir)/README.md > $(distdir)/README.md.clean
- mv $(distdir)/README.md.clean $(distdir)/README.md
-
-asf-dist-sign: asf-dist
- sha512sum -b $(distdir).tar.bz2 >$(distdir).tar.bz2.sha512
- gpg --armor --output $(distdir).tar.bz2.asc --detach-sig $(distdir).tar.bz2
-
-asf-dist-sign-rc: asf-dist-rc
- sha512sum -b $(distdir)-rc$(RC).tar.bz2 >$(distdir)-rc$(RC).tar.bz2.sha512
- gpg --armor --output $(distdir)-rc$(RC).tar.bz2.asc --detach-sig $(distdir)-rc$(RC).tar.bz2
-
-release: asf-dist-sign
- git tag -fs -m "Release $(VERSION)" $(VERSION)
-
-rel-candidate: asf-dist-sign-rc
- git tag -fs -m "Release Candidate $(VERSION)-rc$(RC)" $(VERSION)-rc$(RC)
-
-examples: all
- @cd example && $(MAKE) $(AM_MAKEFLAGS)
-
-install-examples: examples
- @cd example && $(MAKE) $(AM_MAKEFLAGS) install pkglibdir=$(pkglibexecdir)
-
-$(abs_top_srcdir)/.git/hooks/pre-commit: $(abs_top_srcdir)/tools/git/pre-commit
- @if [ -d $(abs_top_srcdir)/.git/hooks ]; then \
- cp $(abs_top_srcdir)/tools/git/pre-commit $(abs_top_srcdir)/.git/hooks/pre-commit; \
- fi
-
-install-data-hook:
-if BUILD_DOCS
- @cd doc && $(MAKE) $(AM_MAKEFLAGS) install-man
-endif
-
-if OS_LINUX
- TESTS = tools/check-unused-dependencies
-endif
-
-rat:
- java -jar $(top_srcdir)/ci/apache-rat-0.13-SNAPSHOT.jar -E $(top_srcdir)/ci/rat-regex.txt -d $(top_srcdir)
-
-.PHONY: autopep8
-autopep8:
- @$(top_srcdir)/tools/autopep8.sh $(top_srcdir)
-
-#
-# These are rules to make clang-format easy and fast to run. Run it with e.g.
-# make -j clang-format
-#
-# If you make changes to directory structures, you must update this as well.
-#
-CLANG_FORMAT_DIR_TARGETS = \
- clang-format-src \
- clang-format-example \
- clang-format-iocore \
- clang-format-include \
- clang-format-mgmt \
- clang-format-plugins \
- clang-format-proxy \
- clang-format-tools \
- clang-format-tests
-
-.PHONY: $(CLANG_FORMAT_DIR_TARGETS)
-
-CLANG_FORMAT_SENTINEL = $(top_srcdir)/.git/fmt/.clang-format-installed
-$(CLANG_FORMAT_SENTINEL):
- @$(top_srcdir)/tools/clang-format.sh --install
-
-.PHONY: clang-format
-clang-format: $(CLANG_FORMAT_SENTINEL)
- $(MAKE) $(CLANG_FORMAT_DIR_TARGETS)
-
-clang-format-src:
- @$(top_srcdir)/tools/clang-format.sh $(top_srcdir)/src
-
-clang-format-example:
- @$(top_srcdir)/tools/clang-format.sh $(top_srcdir)/example
-
-clang-format-iocore:
- @$(top_srcdir)/tools/clang-format.sh $(top_srcdir)/iocore
-
-clang-format-include:
- @$(top_srcdir)/tools/clang-format.sh $(top_srcdir)/include
-
-clang-format-mgmt:
- @$(top_srcdir)/tools/clang-format.sh $(top_srcdir)/mgmt
-
-clang-format-plugins:
- @$(top_srcdir)/tools/clang-format.sh $(top_srcdir)/plugins
-
-clang-format-proxy:
- @$(top_srcdir)/tools/clang-format.sh $(top_srcdir)/proxy
-
-clang-format-tools:
- @$(top_srcdir)/tools/clang-format.sh $(top_srcdir)/tools
-
-clang-format-tests:
- @$(top_srcdir)/tools/clang-format.sh $(top_srcdir)/tests
-
-# Run the various format targets. perltidy is not included because the user may
-# not have it installed.
-.PHONY: format
-format: clang-format autopep8
-
-.PHONY: perltidy
-perltidy:
- perltidy -q -b -bext='/' `find . -name \*.pm -o -name \*.pl`
-
-help:
- @echo 'all default target for building the package'
- @echo 'asf-dist recreate source package'
- @echo 'asf-dist-sign recreate source package, with checksums and signature'
- @echo 'check run the test suite, if any'
- @echo 'clang-format run clang-format over most C and C++ files (not git subtrees)'
- @echo 'clang-tidy run clang-tidy in fix-it mode'
- @echo 'clean remove whatever make created'
- @echo 'dist DEPRECATED: recreate source package'
- @echo 'distcheck verify dist by performing VPATH build and then distclean'
- @echo 'distclean remove whatever configure created'
- @echo 'doxygen generate doxygen docs in doc/html dir'
- @echo 'examples make examples'
- @echo 'help display this list of make targets'
- @echo 'install install by copying the built files to system-wide dirs'
- @echo 'install-examples install examples by copying the built files to system-wide dirs'
- @echo 'install-strip same as install but then strips debugging symbols'
- @echo 'rat produce a RAT licence compliance report of the source'
- @echo 'rel-candidate recreate a signed relelease candidate source package and a signed git tag'
- @echo 'release recreate a signed release source package and a signed git tag'
- @echo 'autopep8 run autopep8 over python files'
diff --git a/README.md b/README.md
index 47c8f6c77e..2f92efcfe1 100644
--- a/README.md
+++ b/README.md
@@ -199,9 +199,8 @@ trafficserver ............. Top src dir
### Fedora / CentOS / RHEL:
```
-autoconf
-automake
-libtool
+cmake
+ninja
pkgconfig
gcc/g++ or clang/clang++
openssl-devel
@@ -213,9 +212,8 @@ hwloc-devel (optional, highly recommended)
### Ubuntu / Debian
```
-autoconf
-automake
-libtool
+cmake
+ninja
pkg-config
gcc/g++ or clang/clang++
zlib1g-dev
@@ -233,46 +231,32 @@ build-base
libexecinfo-dev
pcre-dev
libressl-dev
-autoconf
-automake
-libtool
+cmake
+ninja
linux-headers
```
### macOS (we recommend HomeBrew):
```
-autoconf
-automake
+cmake
+ninja
pkg-config
-libtool
openssl
pcre
```
### FreeBSD
```
+cmake
+ninja
devel/gmake
-devel/autoconf
-devel/automake
devel/pkgconf
-devel/libtool
security/openssl
devel/pcre
textproc/flex (optional, install newer version from ports, fix PATH)
devel/hwloc (optional, highly recommended)
```
-### OmniOS:
-```
-developer/gcc46
-developer/build/gnu-make
-developer/build/autoconf
-developer/build/automake-111
-developer/build/libtool
-library/security/openssl
-library/pcre
-```
-
## Building from distribution
You can download the latest source code from the official Apache Traffic
@@ -286,15 +270,15 @@ follow the instructions:
```
tar jxvf trafficserver-9.1.3.tar.bz2
cd trafficserver-9.1.3
-./configure # configure the build environment to create Makefiles
-make # execute the compile
+cmake -B build
+cmake --build build
```
This will build with a destination prefix of /usr/local. You can finish
the installation with
```
-sudo make install
+sudo cmake --install build
```
@@ -303,9 +287,10 @@ sudo make install
```
git clone https://github.com/apache/trafficserver.git # get the source code from ASF Git repository
cd trafficserver # enter the checkout directory
-autoreconf -if # generate the configure script and Makefile.in files
-./configure # configure the build environment to create Makefiles
-make # execute the compile
+cmake --preset default # configure the build
+cmake --build build-default # execute the compile
+cmake --build build-default -t test # run tests (optional)
+cmake --install build-default # install
```
## Instructions for building on EC2
@@ -317,28 +302,22 @@ mkdir -p /mnt #EC2 Storage Mount, where storage is located
cd /mnt
git clone ... # get the source code from ASF Git repo
cd trafficserver # enter the checkout dir
-autoreconf -i --force # generate the configure script and Makefile.in files
-./configure
-make
+cmake --preset default # configure the build
+cmake --build build-default # execute the compile
+cmake --build build-default -t test
+cmake --install build-default
```
### As root do the following when using Fedora Core 8 kernel
```
-mkdir -p /mnt #EC2 Storage Mount, where storage is located
+mkdir -p /mnt #EC2 Storage Mount, where storage is located
cd /mnt
-git clone ... # get the source code from ASF Git repo
-cd trafficserver # enter the checkout dir
-autoreconf -i --force # generate the configure script and Makefile.in files
-./configure --disable-eventfd
-make
-```
-
-### Instructions for building on FreeBSD
-
-The only difference is how to run configure and make:
-```
-MAKE=gmake ./configure # make sure that gmake is the make we use
-gmake
+git clone ... # get the source code from ASF Git repo
+cd trafficserver # enter the checkout dir
+cmake --preset default # configure the build
+cmake --build build-default # execute the compile
+cmake --build build-default -t test # run tests (optional)
+cmake --install build-default # install
```
## INSTALLATION
diff --git a/config.layout b/config.layout
deleted file mode 100644
index bbce894daa..0000000000
--- a/config.layout
+++ /dev/null
@@ -1,297 +0,0 @@
-##
-## config.layout -- Pre-defined Installation Path Layouts
-##
-## 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.
-##
-## Hints:
-## - layouts can be loaded with configure's --enable-layout=ID option
-## - when no --enable-layout option is given, the default layout is
-## `Trafficserver'
-## - a trailing plus character (`+') on paths is replaced with a
-## `/<target>' suffix where <target> is currently hardcoded to
-## 'trafficserver'.
-## (This may become a configurable parameter at some point.)
-##
-
-# Classical TrafficServer path layout.
-<Layout TrafficServer>
- prefix: /usr/local
- exec_prefix: ${prefix}
- bindir: ${exec_prefix}/bin
- sbindir: ${exec_prefix}/bin
- libdir: ${exec_prefix}/lib
- libexecdir: ${exec_prefix}/libexec+
- infodir: ${prefix}/info
- mandir: ${prefix}/share/man
- sysconfdir: ${prefix}/etc+
- datadir: ${prefix}/share+
- docdir: ${prefix}/share/doc+
- installbuilddir: ${datadir}/build
- includedir: ${prefix}/include
- localstatedir: ${prefix}/var
- runtimedir: ${localstatedir}+
- logdir: ${localstatedir}/log+
- cachedir: ${localstatedir}+
-</Layout>
-
-# Classical Apache path layout.
-<Layout Apache>
- prefix: /usr/local/trafficserver
- exec_prefix: ${prefix}
- bindir: ${exec_prefix}/bin
- sbindir: ${exec_prefix}/bin
- libdir: ${exec_prefix}/lib
- libexecdir: ${exec_prefix}/modules
- infodir: ${prefix}/info
- mandir: ${prefix}/share/man
- sysconfdir: ${prefix}/conf
- datadir: ${prefix}/share
- docdir: ${prefix}/share/doc+
- installbuilddir: ${datadir}/build
- includedir: ${prefix}/include
- localstatedir: ${prefix}
- runtimedir: ${localstatedir}/logs
- logdir: ${localstatedir}/logs
- cachedir: ${localstatedir}/cache
-</Layout>
-
-# GNU standards conforming path layout.
-# See FSF's GNU project `make-stds' document for details.
-<Layout GNU>
- prefix: /usr/local
- exec_prefix: ${prefix}
- bindir: ${exec_prefix}/bin
- sbindir: ${exec_prefix}/sbin
- libdir: ${exec_prefix}/lib
- libexecdir: ${exec_prefix}/libexec+
- infodir: ${prefix}/info
- mandir: ${prefix}/share/man
- sysconfdir: ${prefix}/etc+
- datadir: ${prefix}/share+
- docdir: ${prefix}/share/doc+
- installbuilddir: ${datadir}/build
- includedir: ${prefix}/include+
- localstatedir: ${prefix}/var+
- runtimedir: ${localstatedir}/run
- logdir: ${localstatedir}/log
- cachedir: ${localstatedir}/cache
-</Layout>
-
-# Mac OS X Server (Rhapsody)
-<Layout Mac OS X Server>
- prefix: /Local/Library/TrafficServer
- exec_prefix: /usr
- bindir: ${exec_prefix}/bin
- sbindir: ${exec_prefix}/sbin
- libdir: ${exec_prefix}/lib
- libexecdir: /System/Library/TrafficServer/Modules
- infodir: ${exec_prefix}/share/info
- mandir: ${exec_prefix}/share/man
- sysconfdir: ${prefix}/Configuration
- datadir: ${prefix}/Share
- docdir: ${prefix}/Share/doc+
- installbuilddir: /System/Library/TrafficServer/Build
- includedir: /System/Library/Frameworks/TrafficServer.framework/Versions/2.0/Headers
- localstatedir: /var
- runtimedir: ${prefix}/Logs
- logdir: ${prefix}/Logs
- cachedir: ${prefix}/TrafficServerCache
-</Layout>
-
-# Darwin/Mac OS Layout
-<Layout Darwin>
- prefix: /usr
- exec_prefix: ${prefix}
- bindir: ${exec_prefix}/bin
- sbindir: ${exec_prefix}/sbin
- libdir: ${exec_prefix}/lib
- libexecdir: ${exec_prefix}/libexec+
- infodir: ${prefix}/share/info
- mandir: ${prefix}/share/man
- datadir: /Library/TrafficServer
- docdir: ${prefix}/share/doc+
- sysconfdir: /etc+
- installbuilddir: ${prefix}/share/trafficserver/build
- includedir: ${prefix}/include+
- localstatedir: /var+
- runtimedir: ${localstatedir}/run
- logdir: ${localstatedir}/log
- cachedir: ${localstatedir}/cache
-</Layout>
-
-# According to the /opt filesystem conventions
-<Layout opt>
- prefix: /opt/trafficserver
- exec_prefix: ${prefix}
- bindir: ${exec_prefix}/bin
- sbindir: ${exec_prefix}/sbin
- libdir: ${exec_prefix}/lib
- libexecdir: ${exec_prefix}/libexec
- infodir: ${prefix}/info
- mandir: ${prefix}/share/man
- sysconfdir: /etc${prefix}
- datadir: ${prefix}/share
- docdir: ${prefix}/share/doc+
- installbuilddir: ${datadir}/build
- includedir: ${prefix}/include
- localstatedir: /var${prefix}
- runtimedir: ${localstatedir}/run
- logdir: ${localstatedir}/logs
- cachedir: ${localstatedir}/cache
-</Layout>
-
-# Debian layout
-<Layout Debian>
- prefix: /usr
- exec_prefix: ${prefix}
- bindir: ${exec_prefix}/bin
- sbindir: ${exec_prefix}/sbin
- libdir: ${exec_prefix}/lib+
- libexecdir: ${libdir}/modules
- infodir: ${prefix}/share/info
- mandir: ${prefix}/share/man
- sysconfdir: /etc+
- datadir: /var/cache+
- docdir: ${prefix}/share/doc+
- installbuilddir: ${prefix}/share/trafficserver/build
- includedir: ${prefix}/include
- localstatedir: /run
- runtimedir: /run+
- logdir: /var/log+
- cachedir: /var/cache+
-</Layout>
-
-# Gentoo Linux TrafficServer path layout.
-<Layout Gentoo>
- prefix: /usr
- exec_prefix: ${prefix}
- bindir: ${exec_prefix}/bin
- sbindir: ${exec_prefix}/sbin
- libdir: ${exec_prefix}/lib+
- libexecdir: ${libdir}/plugins
- infodir: ${prefix}/share/info
- mandir: ${prefix}/share/man
- sysconfdir: /etc+
- datadir: ${prefix}/share+
- docdir: ${prefix}/share/doc+
- installbuilddir: ${datadir}/build
- includedir: ${prefix}/include+
- localstatedir: /var+
- runtimedir: /run+
- logdir: /var/log+
- cachedir: /var/cache+
-</Layout>
-
-# Fedora/CentOS/RHEL TrafficServer path layout.
-<Layout RedHat>
- prefix: /usr
- exec_prefix: ${prefix}
- bindir: ${exec_prefix}/bin
- sbindir: ${exec_prefix}/sbin
- libdir: ${exec_prefix}/lib64+
- libexecdir: ${libdir}/plugins
- infodir: ${prefix}/share/info
- mandir: ${prefix}/share/man
- sysconfdir: /etc+
- datadir: ${prefix}/share+
- docdir: ${prefix}/share/doc+
- installbuilddir: ${datadir}/build
- includedir: ${prefix}/include+
- localstatedir: /var+
- runtimedir: /run+
- logdir: /var/log+
- cachedir: /var/cache+
-</Layout>
-
-# OpenBSD path layout.
-<Layout OpenBSD>
- prefix: /usr/local
- exec_prefix: ${prefix}
- bindir: ${exec_prefix}/bin
- sbindir: ${exec_prefix}/sbin
- libdir: ${exec_prefix}/lib
- libexecdir: ${exec_prefix}/libexec+
- infodir: ${prefix}/info
- mandir: ${prefix}/man
- sysconfdir: /etc+
- datadir: ${prefix}/share+
- docdir: ${prefix}/share/doc+
- installbuilddir: ${datadir}/build
- includedir: ${prefix}/include
- localstatedir: /var+
- runtimedir: /var/run+
- logdir: /var/log+
- cachedir: ${localstatedir}/cache
-</Layout>
-
-<Layout Yahoo>
- exec_prefix: ${prefix}
- bindir: ${exec_prefix}/bin64
- sbindir: ${exec_prefix}/sbin
- libdir: ${exec_prefix}/lib
- libexecdir: ${exec_prefix}/libexec64+
- infodir: ${prefix}/info
- mandir: ${prefix}/man
- sysconfdir: ${prefix}/conf+
- datadir: ${prefix}/share+
- installbuilddir: ${libdir}/trafficserver/build
- includedir: ${prefix}/include+
- localstatedir: ${prefix}/var+
- runtimedir: ${prefix}/var/run+
- logdir: ${prefix}/logs+
- cachedir: ${datadir}
-</Layout>
-
-<Layout Arch>
- prefix: /usr
- exec_prefix: ${prefix}
- bindir: ${exec_prefix}/bin
- sbindir: ${exec_prefix}/sbin
- libdir: ${exec_prefix}/lib
- libexecdir: ${libdir}+
- infodir: ${prefix}/share/info
- mandir: ${prefix}/share/man
- sysconfdir: /etc+
- datadir: ${prefix}/share+
- docdir: ${prefix}/share/doc+
- installbuilddir: ${datadir}/build
- includedir: ${prefix}/include
- localstatedir: /run
- runtimedir: /run+
- logdir: /var/log+
- cachedir: /var/lib+
-</Layout>
-
-<Layout NixOS>
- prefix: /opt/trafficserver
- exec_prefix: ${prefix}
- bindir: ${exec_prefix}/bin
- sbindir: ${exec_prefix}/sbin
- libdir: ${exec_prefix}/lib
- libexecdir: ${exec_prefix}/libexec
- infodir: ${prefix}/share/info
- mandir: ${prefix}/share/man
- sysconfdir: /etc+
- datadir: ${prefix}/share+
- docdir: ${prefix}/share/doc+
- installbuilddir: ${datadir}/build
- includedir: ${prefix}/include
- localstatedir: /var/lib+
- runtimedir: /run+
- logdir: /var/log+
- cachedir: /var/cache+
-</Layout>
diff --git a/configs/Makefile.am b/configs/Makefile.am
deleted file mode 100644
index e3f302db6a..0000000000
--- a/configs/Makefile.am
+++ /dev/null
@@ -1,50 +0,0 @@
-# Makefile.am for config
-#
-# 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.
-
-SUBDIRS = body_factory
-EXTRA_DIST = \
- records.yaml.default.in \
- storage.config.default.in
-
-sysconfdir = $(pkgsysconfdir)
-nodist_sysconf_DATA = \
- records.yaml.default \
- storage.config.default
-
-dist_sysconf_DATA = \
- cache.config.default \
- hosting.config.default \
- ip_allow.yaml.default \
- logging.yaml.default \
- parent.config.default \
- plugin.config.default \
- remap.config.default \
- sni.yaml.default \
- socks.config.default \
- splitdns.config.default \
- ssl_multicert.config.default \
- strategies.yaml.default \
- volume.config.default \
- jsonrpc.yaml.default
-
-install-exec-hook:
- for dfltcfgfile in $(dist_sysconf_DATA) $(nodist_sysconf_DATA) ; \
- do \
- cfgfile=`echo $$dfltcfgfile | sed 's/\.default$$//'` ; \
- test -f $(DESTDIR)/$(sysconfdir)/$$cfgfile || mv $(DESTDIR)/$(sysconfdir)/$$dfltcfgfile $(DESTDIR)/$(sysconfdir)/$$cfgfile ; \
- done
diff --git a/configs/body_factory/Makefile.am b/configs/body_factory/Makefile.am
deleted file mode 100644
index 4101fb6c5e..0000000000
--- a/configs/body_factory/Makefile.am
+++ /dev/null
@@ -1,20 +0,0 @@
-#
-# Makefile.am for config/body_factory.
-#
-# 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.
-
-SUBDIRS = default
diff --git a/configs/body_factory/default/Makefile.am b/configs/body_factory/default/Makefile.am
deleted file mode 100644
index e1125d0b3b..0000000000
--- a/configs/body_factory/default/Makefile.am
+++ /dev/null
@@ -1,50 +0,0 @@
-# Makefile.am for config/body_factory/default
-#
-# 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.
-
-bodyfactorydir = $(pkgsysconfdir)/body_factory/default
-
-dist_bodyfactory_DATA = \
- access\#denied \
- access\#proxy_auth_required \
- access\#ssl_forbidden \
- .body_factory_info \
- cache\#not_in_cache \
- cache\#read_error \
- connect\#dns_failed \
- connect\#failed_connect \
- connect\#hangup \
- connect\#all_down \
- default \
- interception\#no_host \
- README \
- redirect\#moved_temporarily \
- redirect\#moved_permanently \
- request\#cycle_detected \
- request\#no_content_length \
- request\#invalid_content_length \
- request\#no_host \
- request\#scheme_unsupported \
- request\#syntax_error \
- response\#bad_response \
- response\#bad_version \
- timeout\#activity \
- timeout\#inactivity \
- transcoding\#unsupported \
- urlrouting\#no_mapping \
- request\#uri_len_too_long
-
diff --git a/configure.ac b/configure.ac
deleted file mode 100644
index 77f0b726cc..0000000000
--- a/configure.ac
+++ /dev/null
@@ -1,2442 +0,0 @@
-# Process this file with `autoreconf -i` to create a 'configure' file.
-
-# 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.
-
-# Table of Contents
-# 1. INITIALIZATION
-# 2. SITE CONFIGURATION
-# 3. CHECK FOR PROGRAMS
-# 4. CHECK FOR LIBRARIES
-# 5. CHECK FOR HEADERS
-# 6. OUTPUT FILES
-# 7. autoheader TEMPLATES
-
-# -----------------------------------------------------------------------------
-# 1. INITIALIZATION
-
-# These first two version numbers are updated automatically on each release.
-# Version number is calculated as MAJOR * 1000000 + MINOR * 1000 + MICRO
-# Version string is in the form of MAJOR.MINOR.MICRO[sufix]
-#
-m4_define([TS_VERSION_S],[10.0.0])
-m4_define([TS_VERSION_N],[10000000])
-
-AC_INIT([Apache Traffic Server],[TS_VERSION_S()],[dev@trafficserver.apache.org],[trafficserver],[https://trafficserver.apache.org])
-AC_PREREQ([2.69])
-AC_CONFIG_AUX_DIR([m4/_aux])
-AC_CONFIG_SRCDIR([src/traffic_server/traffic_server.cc])
-AC_CONFIG_MACRO_DIR([m4])
-
-# NOTE: we turn off portability warnings because the clang-tidy targets use
-# GNU make extensions to filter the sources list.
-AM_INIT_AUTOMAKE([-Wall -Werror -Wno-portability tar-ustar foreign no-installinfo no-installman subdir-objects 1.9.2])
-
-# See discussion at https://autotools.io/automake/maintainer.html.
-AM_MAINTAINER_MODE([enable])
-
-# Enable a recursive "tidy" rule for clang-tidy.
-m4_ifdef([AM_EXTRA_RECURSIVE_TARGETS], [AM_EXTRA_RECURSIVE_TARGETS([clang-tidy])])
-
-AC_CONFIG_HEADERS([include/ink_autoconf.h])
-
-# Configure with --disable-silent-rules to get verbose output. For more info, see
-# http://www.gnu.org/software/automake/manual/html_node/Automake-silent_002drules-Option.html
-m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
-
-# Libtool versioning uses different conventions on different
-# platforms. At least on FreeBSD, libtool uses an overly complex
-# convention that attempts to solve problems that most people just
-# don't have and which just causes confusion for most end users.
-#
-TS_VERSION_MAJOR=$((TS_VERSION_N() / 1000000 ))
-TS_VERSION_MINOR=$(((TS_VERSION_N() / 1000) % 1000 ))
-TS_VERSION_MICRO=$((TS_VERSION_N() % 1000 ))
-TS_LIBTOOL_MAJOR=`echo $((${TS_VERSION_MAJOR} + ${TS_VERSION_MINOR}))`
-TS_LIBTOOL_VERSION=$TS_LIBTOOL_MAJOR:$TS_VERSION_MICRO:$TS_VERSION_MINOR
-TS_VERSION_STRING=TS_VERSION_S()
-TS_VERSION_NUMBER=TS_VERSION_N()
-
-#
-# Substitute the above version numbers into the various files below.
-#
-AC_SUBST(TS_LIBTOOL_VERSION)
-AC_SUBST(TS_VERSION_STRING)
-AC_SUBST(TS_VERSION_NUMBER)
-AC_SUBST(TS_VERSION_MAJOR)
-AC_SUBST(TS_VERSION_MINOR)
-AC_SUBST(TS_VERSION_MICRO)
-
-dnl Hard-coded top of ink_autoconf.h:
-AH_TOP([
-#pragma once
-])
-
-#
-# Generate ./config.nice for reproducing runs of configure
-#
-TS_CONFIG_NICE([config.nice])
-
-# XXX we can't just use AC_PREFIX_DEFAULT because that isn't subbed in
-# by configure until it is too late. Is that how it should be or not?
-# Something seems broken here.
-AC_PREFIX_DEFAULT([/usr/local/trafficserver])
-
-# Get the layout here, so we can pass the required variables to Trafficserver
-TS_ENABLE_LAYOUT(TrafficServer, [cachedir docdir])
-
-# Reparse the configure arguments so we can override the layout.
-TS_PARSE_ARGUMENTS
-
-AC_PATH_PROG(PKG_CONFIG, pkg-config)
-
-#
-# Host detection
-#
-AC_CANONICAL_HOST
-HOST_GUESS="$host"
-AC_SUBST(HOST_GUESS)
-
-AC_ARG_WITH([user],
- [AS_HELP_STRING([--with-user],[specify the system user [default=nobody]])],
- [
- with_user="$withval"
- ],[
- with_user="nobody"
- ]
-)
-
-default_group="`id -ng $with_user`"
-AC_ARG_WITH([group],
- [AS_HELP_STRING([--with-group],[specify the system group [default=nobody]])],
- [
- with_group="$withval"
- ],[
- with_group=${default_group:-nobody}
- ]
-)
-AC_SUBST([pkgsysuser],[$with_user])
-AC_SUBST([pkgsysgroup],[$with_group])
-
-AC_ARG_WITH([build-number],
- [AS_HELP_STRING([--with-build-number],[specify a version string for this build])],
- [ build_number="$withval" ]
-)
-
-#
-# Build environment
-#
-build_person="`id -nu | sed -e 's/\\\\/\\\\\\\\/g'`"
-build_group="`id -ng | sed -e 's/\\\\/\\\\\\\\/g'`"
-build_machine="`uname -n | sed -e 's/\\\\/\\\\\\\\/g'`"
-AC_SUBST([build_machine])
-AC_SUBST([build_person])
-AC_SUBST([build_group])
-AC_SUBST([build_number])
-
-# -----------------------------------------------------------------------------
-# 2. SITE CONFIGURATION
-
-#
-# Debug
-#
-AC_MSG_CHECKING([whether to enable debugging])
-AC_ARG_ENABLE([debug],
- [AS_HELP_STRING([--enable-debug],[turn on debugging])],
- [],
- [enable_debug=no]
-)
-AC_MSG_RESULT([$enable_debug])
-
-AC_MSG_CHECKING([whether to enable mime sanity check])
-AC_ARG_ENABLE([mime-sanity-check],
- [AS_HELP_STRING([--enable-mime-sanity-check],[turn on mime sanity check])],
- [],
- [enable_mime_sanity_check=no]
-)
-AC_MSG_RESULT([$enable_mime_sanity_check])
-
-AC_MSG_CHECKING([whether to enable all asserts, a cheaper debug])
-AC_ARG_ENABLE([all-asserts],
- [AS_HELP_STRING([--enable-all-asserts],[turn on all code asserts, both debug and release])],
- [],
- [enable_all_asserts=no]
-)
-AC_MSG_RESULT([$enable_all_asserts])
-
-AC_MSG_CHECKING([whether to enable event tracker])
-AC_ARG_ENABLE([event-tracker],
- [AS_HELP_STRING([--enable-event-tracker],[turn on event tracker])],
- [],
- [enable_event_tracker=no]
-)
-AC_MSG_RESULT([$enable_event_tracker])
-
-# Enable code coverage instrumentation only if requested by the user.
-AC_MSG_CHECKING([whether to code coverage])
-AC_ARG_ENABLE([coverage],
- [AS_HELP_STRING([--enable-coverage],[generate code coverage instrumentation])],
- [],
- [enable_coverage=no]
-)
-AC_MSG_RESULT([$enable_coverage])
-
-#
-# Enable -Werror. We want this enabled by default for developers, but disabled by default
-# for end users (because we don't want released versions to suffer from compiler warning hell).
-#
-AC_MSG_CHECKING([whether to enable -Werror])
-AC_ARG_ENABLE([werror],
- [AS_HELP_STRING([--enable-werror],[turn compiler warnings into errors])],
- [],
- [enable_werror=no]
-)
-AC_MSG_RESULT([$enable_werror])
-
-# Enable ASAN for the builds
-AC_MSG_CHECKING([whether to enable asan])
-AC_ARG_ENABLE([asan],
- [AS_HELP_STRING([--enable-asan],[enable Address Sanitizer])],
- [],
- [enable_asan=no]
-)
-AC_MSG_RESULT([$enable_asan])
-
-# Enable LSAN in stand-alone mode for the builds
-AC_MSG_CHECKING([whether to enable lsan])
-AC_ARG_ENABLE([lsan],
- [AS_HELP_STRING([--enable-lsan],[enable stand-alone Leak Sanitizer])],
- [],
- [enable_lsan=no]
-)
-AC_MSG_RESULT([$enable_lsan])
-
-# Enable TSAN for the builds
-AC_MSG_CHECKING([whether to enable tsan])
-AC_ARG_ENABLE([tsan],
- [AS_HELP_STRING([--enable-tsan],[turn on Thread Sanitizer])],
- [],
- [enable_tsan=no]
-)
-AC_MSG_RESULT([$enable_tsan])
-
-#
-# Enable Link Time Optimization. This may need different settings per compiler?
-#
-AC_MSG_CHECKING([whether to enable LTO])
-AC_ARG_ENABLE([lto],
- [AS_HELP_STRING([--enable-lto],[turn on Link Time Optimization])],
- [],
- [enable_lto=no]
-)
-AC_MSG_RESULT([$enable_lto])
-
-#
-# Fast SDK APIs, this disables the parameter checks (assert)
-# on all APIs.
-#
-
-AC_MSG_CHECKING([whether to enable fast SDK APIs])
-AC_ARG_ENABLE([fast-sdk],
- [AS_HELP_STRING([--enable-fast-sdk],[enable fast SDK APIs (no input parameter sanity checks)])],
- [],
- [enable_fast_sdk=no]
-)
-AC_MSG_RESULT([$enable_fast_sdk])
-TS_ARG_ENABLE_VAR([use], [fast-sdk])
-
-# Curl support for traffic_top
-AC_MSG_CHECKING([whether to enable CURL])
-AC_ARG_ENABLE([curl],
- [AS_HELP_STRING([--disable-curl],[turn off CURL support for traffic_top])],
- [],
- [enable_curl=yes]
-)
-AC_MSG_RESULT([$enable_curl])
-
-if test "x${enable_curl}" = "xyes"; then
-AX_LIB_CURL([7.19], [AC_DEFINE([HAS_CURL], [1], [Define if libcurl >= 7.19.])])
-fi
-
-#
-# Diags
-#
-
-AC_MSG_CHECKING([whether to enable diags])
-AC_ARG_ENABLE([diags],
- [AS_HELP_STRING([--disable-diags],[turn off diags])],
- [],
- [enable_diags=yes]
-)
-AC_MSG_RESULT([$enable_diags])
-TS_ARG_ENABLE_VAR([use], [diags])
-
-#
-# FIPS
-#
-
-AC_MSG_CHECKING([whether to enable fips])
-AC_ARG_ENABLE([fips],
- [AS_HELP_STRING([--enable-fips],[turn on FIPS compliance])],
- [],
- [enable_fips=no]
-)
-AC_MSG_RESULT([$enable_fips])
-TS_ARG_ENABLE_VAR([enable], [fips])
-
-#
-# Build regression tests?
-#
-
-AC_MSG_CHECKING([whether to enable regression tests])
-AC_ARG_ENABLE([tests],
- [AS_HELP_STRING([--disable-tests],[turn off regression tests])],
- [],
- [enable_tests=yes]
-)
-AC_MSG_RESULT([$enable_tests])
-TS_ARG_ENABLE_VAR([has], [tests])
-AM_CONDITIONAL([BUILD_TESTS], [test 0 -ne $has_tests])
-
-#
-# Build expensive unit tests ?
-#
-
-AC_MSG_CHECKING([whether to enable expensive unit tests])
-AC_ARG_ENABLE([expensive-tests],
- [AS_HELP_STRING([--enable-expensive-tests],[turn on expensive unit tests])],
- [],
- [enable_expensive_tests=no]
-)
-AC_MSG_RESULT([$enable_expensive_tests])
-TS_ARG_ENABLE_VAR([has], [expensive_tests])
-AM_CONDITIONAL([EXPENSIVE_TESTS], [test 0 -ne $has_expensive_tests])
-
-#
-# Build documentation?
-#
-
-# Java needed only for documentation building, but making it conditional
-# makes the diagnostic output ugly and hard to follow.
-AC_ARG_VAR(JAVA, [path to java executor])
-AC_CHECK_PROG(JAVA, java, java)
-AC_MSG_RESULT([Checking whether to build documentation:])
-AC_ARG_ENABLE([docs],
- [AS_HELP_STRING([--enable-docs],[enable documentation building])],
- [
- enable_doc_build=yes
- AM_PATH_PYTHON([3.4], [
- TS_MAN1_MANPAGES=`cd $srcdir/doc && $PYTHON manpages.py --section=1 | $AWK '{print "$(BUILDDIR)/man/" $0 }' | tr '\n' ' '`
- TS_MAN3_MANPAGES=`cd $srcdir/doc && $PYTHON manpages.py --section=3 | $AWK '{print "$(BUILDDIR)/man/" $0 }' | tr '\n' ' '`
- TS_MAN5_MANPAGES=`cd $srcdir/doc && $PYTHON manpages.py --section=5 | $AWK '{print "$(BUILDDIR)/man/" $0 }' | tr '\n' ' '`
- TS_MAN8_MANPAGES=`cd $srcdir/doc && $PYTHON manpages.py --section=8 | $AWK '{print "$(BUILDDIR)/man/" $0 }' | tr '\n' ' '`
- ], [
- enable_doc_build=no
- AC_MSG_ERROR([Doc building disabled, Python 3.4 or better required])
- ])
-
- AS_IF([test -z "$JAVA"],
- [
- enable_doc_build=no
- AC_MSG_ERROR([Doc building disabled, Java required but not found])
- ])
- AC_ARG_VAR(SPHINXBUILD, [the sphinx-build documentation generator])
- AC_ARG_VAR(SPHINXOPTS, [additional sphinx-build options])
- AC_PATH_PROG([SPHINXBUILD], [$SPHINXBUILD], [$PYTHON -m sphinx])
- AS_IF(["$PYTHON" "$srcdir/doc/checkvers.py" --check-version],
- [
- sphinx_version_check=yes
- ],[
- sphinx_version_check=no
- enable_doc_build=no
- AC_MSG_ERROR([Doc building disabled, check Sphinx installation])
- ])
-
-
- AC_SUBST(TS_MAN1_MANPAGES)
- AC_SUBST(TS_MAN3_MANPAGES)
- AC_SUBST(TS_MAN5_MANPAGES)
- AC_SUBST(TS_MAN8_MANPAGES)
-
- AC_MSG_CHECKING([whether to build man pages])
- AS_IF([test "x$sphinx_version_check" = "xyes" -a "x$SPHINXBUILD" != "xfalse"], [
- build_manpages=true
- AC_MSG_RESULT([yes])
- ], [
- build_manpages=false
- AC_MSG_RESULT([no])
- ])
-
- ],
- [enable_doc_build=no]
-)
-AC_MSG_RESULT([Will build documentation: $enable_doc_build])
-AM_CONDITIONAL([BUILD_DOCS], [test "xyes" = "x$enable_doc_build"])
-AM_CONDITIONAL([BUILD_MANPAGES], [test "xtrue" = "x$build_manpages"])
-
-#
-# Cripts
-#
-AC_MSG_CHECKING([whether to enable Cripts support])
-AC_ARG_ENABLE([cripts],
- [AS_HELP_STRING([--enable-cripts],[enable Cripts])],
- [],
- [enable_cripts=no]
-)
-AC_MSG_RESULT([$enable_cripts])
-TS_ARG_ENABLE_VAR([has],[cripts])
-AM_CONDITIONAL([BUILD_CRIPTS], [test 0 -ne $has_cripts])
-
-# Google profiler
-AC_MSG_CHECKING([whether to enable profiler])
-AC_ARG_WITH([profiler],
- [AS_HELP_STRING([--with-profiler],[enable support for profiler [default=no]])],
- [with_profiler=$withval],
- [with_profiler=no]
-)
-AC_MSG_RESULT([$with_profiler])
-
-# Disable all static library builds
-AC_DISABLE_STATIC
-
-#
-# use eventfd() or pipes
-# Found that ec2 is using an older kernel causing eventfd errors.
-# Disable eventfd when using ATS on EC2 Fedora.
-#
-AC_MSG_CHECKING([whether to enable eventfd()])
-AC_ARG_ENABLE([eventfd],
- [AS_HELP_STRING([--disable-eventfd],[turn off eventfd and use pipes])],
- [],
- [enable_eventfd="yes"]
-)
-AC_MSG_RESULT([$enable_eventfd])
-
-#
-# use POSIX capabilities instead of user ID switching.
-#
-AC_MSG_CHECKING([whether to use POSIX capabilities])
-AC_ARG_ENABLE([posix-cap],
- [AS_HELP_STRING([--disable-posix-cap],[Use user id switching instead of POSIX capabilities])],
- [],
- [enable_posix_cap="auto"]
-)
-AC_MSG_RESULT([$enable_posix_cap])
-
-#
-# use hwloc library when possible (can be disabled)
-#
-AC_MSG_CHECKING([whether to use hwloc library])
-AC_ARG_ENABLE([hwloc],
- [AS_HELP_STRING([--disable-hwloc],[Don't use the hwloc library])],
- [],
- [enable_hwloc="yes"]
-)
-AC_MSG_RESULT([$enable_hwloc])
-
-#
-# Enable ccache explicitly (it's disabled by default, because of build problems in some cases)
-#
-AC_MSG_CHECKING([whether to enable ccache])
-AC_ARG_ENABLE([ccache],
- [AS_HELP_STRING([--enable-ccache],[Enable ccache (for developers)])],
- [],
- [enable_ccache="no"]
-)
-AC_MSG_RESULT([$enable_ccache])
-
-#
-# Enable hardening of the executables
-#
-AC_MSG_CHECKING([whether to enable hardening of the executables])
-AC_ARG_ENABLE([hardening],
- [AS_HELP_STRING([--enable-hardening],[Enable hardening of executables])],
- [],
- [enable_hardening="no"]
-)
-AC_MSG_RESULT([$enable_hardening])
-
-#
-# Use TPROXY for connection transparency.
-#
-AC_MSG_CHECKING([whether to enable TPROXY based transparency])
-AC_ARG_ENABLE([tproxy],
- [AS_HELP_STRING([--enable-tproxy[[=ARG]]],
- [Use TPROXY to enable connection transparency.
- 'auto' or omitted for local system default,
- 'no' to disable,
- 'force' to use built in default,
- number to use as IP_TRANSPARENT sockopt.
- [default=auto]
- ])
- ],
- [],
- [enable_tproxy="auto"]
-)
-AC_MSG_RESULT([$enable_tproxy])
-
-#
-# Max host name length that we deal with in URLs.
-#
-AC_ARG_WITH([max-host-name-len],
- [AS_HELP_STRING([--with-max-host-name-len],[max host name length [default=256]])],
- [max_host_name_len=$withval],
- [max_host_name_len=256]
-)
-AC_SUBST(max_host_name_len)
-
-#
-# EventProcessor thread configurations
-#
-
-AC_ARG_WITH([max-event-threads],
- [AS_HELP_STRING([--with-max-event-threads],[max number of event threads [default=4096]])],
- [max_event_threads=$withval],
- [max_event_threads=4096]
-)
-AC_SUBST(max_event_threads)
-
-AC_ARG_WITH([max-threads-per-type],
- [AS_HELP_STRING([--with-max-threads-per-type],[max number of threads per event type [default=3072]])],
- [max_threads_per_type=$withval],
- [max_threads_per_type=3072]
-)
-AC_SUBST(max_threads_per_type)
-
-#
-# Experimental plugins
-#
-
-AC_MSG_CHECKING([whether to enable experimental plugins])
-AC_ARG_ENABLE([experimental-plugins],
- [AS_HELP_STRING([--enable-experimental-plugins],[build experimental plugins])],
- [],
- [enable_experimental_plugins=no]
-)
-AC_MSG_RESULT([$enable_experimental_plugins])
-AM_CONDITIONAL([BUILD_EXPERIMENTAL_PLUGINS], [ test "x${enable_experimental_plugins}" = "xyes" ])
-
-#
-# Check Magick++ is available. Enable experimental/webp_transform plugin
-#
-PKG_CHECK_MODULES([LIBMAGICKCPP],[Magick++ >= 7], [
- TS_ADDTO(LIBMAGICKCPP_CFLAGS, [-DMAGICK_VERSION=7])
- have_libmagickcpp=yes
- AS_IF([test "x$enable_experimental_plugins" = "xyes"], [
- enable_image_magick_plugins=yes
- ])
-],
-[
- PKG_CHECK_MODULES([LIBMAGICKCPP],[Magick++ < 7], [
- TS_ADDTO(LIBMAGICKCPP_CFLAGS, [-DMAGICK_VERSION=6])
- have_libmagickcpp=yes
- AS_IF([test "x$enable_experimental_plugins" = "xyes"], [
- enable_image_magick_plugins=yes
- ])
- ],
- [
- have_libmagickcpp=no
- ])])
-
-AM_CONDITIONAL([BUILD_IMAGE_MAGICK_PLUGINS], [test "x${enable_image_magick_plugins}" = "xyes"])
-
-#
-# Example plugins. The example plugins are only built and installed if this is enabled. Installing
-# them is useful for QA, but not useful for most users, so we default this to disabled.
-#
-
-AC_MSG_CHECKING([whether to install example plugins])
-AC_ARG_ENABLE([example-plugins],
- [AS_HELP_STRING([--enable-example-plugins],[Build and install example plugins])],
- [],
- [enable_example_plugins=no]
-)
-AC_MSG_RESULT([$enable_example_plugins])
-AM_CONDITIONAL([BUILD_EXAMPLE_PLUGINS], [ test "x${enable_example_plugins}" = "xyes" ])
-
-#
-# Test tools. The test tools are always built, but not always installed. Installing
-# them is useful for QA, but not useful for most users, so we default this to disabled.
-#
-
-AC_MSG_CHECKING([whether to install testing tools])
-AC_ARG_ENABLE([test-tools],
- [AS_HELP_STRING([--enable-test-tools],[install testing tools])],
- [],
- [enable_test_tools=no]
-)
-AC_MSG_RESULT([$enable_test_tools])
-AM_CONDITIONAL([BUILD_TEST_TOOLS], [ test "x${enable_test_tools}" = "xyes" ])
-
-#
-# Check if we should allow builds on 32-bit platforms
-#
-AC_MSG_CHECKING([whether to allow 32-bit builds])
-AC_ARG_ENABLE([32bit-build],
- [AS_HELP_STRING([--enable-32bit-build],[allow 32bit builds])],
- [],
- [enable_32bit=no]
-)
-AC_MSG_RESULT([$enable_32bit])
-
-#
-# Check if disk failure handling tests should be built.
-# This means compiling disk failure simulation code into ATS.
-#
-AC_MSG_CHECKING([whether to build disk failure handling tests])
-AC_ARG_ENABLE([disk-failure-tests],
- [AS_HELP_STRING([--enable-disk-failure-tests],[Build disk failure tests])],
- [],
- [enable_disk_failure_tests=no]
-)
-AC_MSG_RESULT([$enable_disk_failure_tests])
-AM_CONDITIONAL([ENABLE_DISK_FAILURE_TESTS], [ test "x${enable_disk_failure_tests}" = "xyes" ])
-
-
-#
-# Installation directories
-# For each var the following is evaluated
-# foo Standard variable eg. ${prefix}/foo
-# rel_foo Relative to prefix eg. foo
-#
-TS_SUBST_LAYOUT_PATH([prefix])
-TS_SUBST_LAYOUT_PATH([exec_prefix])
-TS_SUBST_LAYOUT_PATH([bindir])
-TS_SUBST_LAYOUT_PATH([sbindir])
-TS_SUBST_LAYOUT_PATH([libdir])
-TS_SUBST_LAYOUT_PATH([libexecdir])
-TS_SUBST_LAYOUT_PATH([infodir])
-TS_SUBST_LAYOUT_PATH([mandir])
-TS_SUBST_LAYOUT_PATH([sysconfdir])
-TS_SUBST_LAYOUT_PATH([datadir])
-TS_SUBST_LAYOUT_PATH([installbuilddir])
-TS_SUBST_LAYOUT_PATH([includedir])
-TS_SUBST_LAYOUT_PATH([localstatedir])
-TS_SUBST_LAYOUT_PATH([runtimedir])
-TS_SUBST_LAYOUT_PATH([logdir])
-TS_SUBST_LAYOUT_PATH([cachedir])
-TS_SUBST_LAYOUT_PATH([docdir])
-
-TS_SUBST([pkgbindir])
-TS_SUBST([pkgsbindir])
-TS_SUBST([pkglibdir])
-TS_SUBST([pkglibexecdir])
-TS_SUBST([pkgsysconfdir])
-TS_SUBST([pkgdatadir])
-TS_SUBST([pkglocalstatedir])
-TS_SUBST([pkgruntimedir])
-TS_SUBST([pkglogdir])
-TS_SUBST([pkgcachedir])
-TS_SUBST([pkgdocdir])
-
-
-# -----------------------------------------------------------------------------
-# 3. CHECK FOR PROGRAMS
-
-# Compiler selection:
-#
-# Implementation note (toc)
-# 1) Get default compiler settings (case statement.)
-# 2) Check for over-rides of default compiler.
-# 3) (in first kludge mode block...) obtain any further CFLAG-type additions.
-# 4) Test compilers with all flags set.
-
-# AC_PROG can sometimes mangle CFLAGS etc.
-# in particular, on Linux they insert -g -O2, here we preserve any user CFLAGS
-_ts_saved_CFLAGS="${CFLAGS}"
-_ts_saved_CXXFLAGS="${CXXFLAGS}"
-
-# We force the compiler search list because the default GCC on Darwin cannot build
-# Traffic Server. On most (all?) platforms, cc and c++ should be the preferred default
-# compiler.
-AC_PROG_CC([cc gcc clang icc])
-AC_PROG_CXX([c++ g++ clang++ icpc])
-
-AM_PROG_CC_C_O
-AC_PROG_CPP
-AC_PROG_CXXCPP
-AM_PROG_AS
-
-AX_COMPILER_VENDOR
-
-AX_CC_FOR_BUILD
-
-CFLAGS="${_ts_saved_CFLAGS}"
-CXXFLAGS="${_ts_saved_CXXFLAGS}"
-
-# All compilers we support have 'gnu99' as an available C standard
-TS_ADDTO(AM_CFLAGS, [-std=gnu99])
-
-AC_ARG_VAR(CXXSTD, [C++ standard version])
-if test "x${CXXSTD}" = "x"; then
- CXXSTD="17"
-fi
-case $CXXSTD in
- 17)
- cxxver="201703L"
- ;;
- 20)
- AC_MSG_NOTICE([Unsupported standard version $CXXSTD])
- cxxver="202002L"
- ;;
- 23)
- AC_MSG_NOTICE([Unsupported standard version $CXXSTD])
- cxxver="202100L"
- ;;
- *)
- AC_MSG_WARN([Unrecognized standard version $CXXSTD])
- CXXSTD="17"
- cxxver="201703L"
- ;;
-esac
-
-ac_save_CXX="$CXX"
-CXX="$CXX -std=c++$CXXSTD"
-AC_LANG_PUSH(C++)
-AC_MSG_CHECKING([whether $CXX supports -std=c++$CXXSTD])
-AC_COMPILE_IFELSE([
- AC_LANG_PROGRAM([
-#if __cplusplus < $cxxver
-#error "This is not C++$CXXSTD"
-#endif
- ], []
- )], [
- AC_MSG_RESULT(yes)
- ], [
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([A compiler with support for -std=c++$CXXSTD is required])
-])
-AC_LANG_POP
-CXX="$ac_save_CXX"
-
-TS_ADDTO(AM_CXXFLAGS, [-std=c++$CXXSTD])
-
-dnl AC_PROG_SED is only available from version 2.6 (released in 2003). CentosOS
-dnl 5.9 still has an ancient version, but we have macros that require
-dnl AC_PROG_SED. The actual AC_PROG_SED macro does functional checks, but here
-dnl we define a trivial local version for times when we are running on
-dnl obsoldete autoconf.
-ifdef([AC_PROG_SED], [], [
- AC_DEFUN([AC_PROG_SED], [
- AC_CHECK_PROG(SED, sed, sed)
- ])
-])
-
-
-# Various OS specific setup.
-# This also sets up a "normalized" variable and define $host_os_def.
-case $host_os in
- linux*)
- host_os_def="linux"
- AM_LDFLAGS="-rdynamic"
- ;;
- darwin*)
- host_os_def="darwin"
- ;;
- freebsd*)
- host_os_def="freebsd"
- AM_LDFLAGS="-rdynamic"
- TS_ADDTO(TS_INCLUDES, [-I/usr/local/include])
- TS_ADDTO(AM_CPPFLAGS, [-D_GLIBCXX_USE_C99])
- TS_ADDTO(AM_CPPFLAGS, [-D_GLIBCXX_USE_C99_MATH])
- TS_ADDTO(AM_CPPFLAGS, [-D_GLIBCXX_USE_C99_MATH_TR1])
- ;;
- kfreebsd*)
- host_os_def="freebsd"
- AM_LDFLAGS="-rdynamic"
- TS_ADDTO(TS_INCLUDES, [-I/usr/local/include])
- TS_ADDTO(AM_CPPFLAGS, [-Dkfreebsd])
- ;;
- openbsd*)
- host_os_def="openbsd"
- ;;
- *)
- AM_LDFLAGS="-rdynamic"
- host_os_def=unknown
- ;;
-esac
-
-TS_ADDTO(AM_CPPFLAGS, [-D$host_os_def])
-AM_CONDITIONAL([OS_LINUX], [test "x$host_os_def" = "xlinux"])
-AM_CONDITIONAL([OS_NON_MACOS], [test "x$host_os_def" != "xdarwin"])
-
-dnl AM_PROG_AR is not always available, but it doesn't seem to be needed in older versions.
-ifdef([AM_PROG_AR],
- [AM_PROG_AR])
-
-AC_PROG_AWK
-AC_PROG_SED
-AC_PROG_LN_S
-AC_PROG_INSTALL
-LT_INIT
-AC_CHECK_PROG(RM, rm, rm)
-AC_CHECK_PROG(ASCPP, cpp, cpp)
-AC_CHECK_TOOL(AR, ar, ar)
-AC_SEARCH_LIBS([strerror],[cposix])
-
-AC_ARG_VAR(RPATH, [path to be added to rpath])
-
-AC_ARG_VAR([CLANG_TIDY], [clang-tidy command])
-
-# Default CLANG_TIDY to "clang-tidy", or "false" if it is not present.
-AC_PATH_PROG([CLANG_TIDY], [clang-tidy],[false])
-
-# Do bison check by hand because we must do a version check.
-# Use YACC because it makes autotools shut up.
-BISON_MAJOR=2
-BISON_MINOR=4
-BISON_POINT=1
-AC_CHECK_PROG([YACC],[bison],[bison])
-AS_IF([test -n "$YACC"],
- [ bison_version_check=`$YACC --version 2>&1 | \
- $SED -n '/bison/s/^[[^0-9]]*\([[0-9]][[0-9.]]*\).*$/\1/p' | \
- $AWK "{ if (\\$1 > $BISON_MAJOR || (\\$1 == $BISON_MAJOR && (\\$2 > $BISON_MINOR || (\\$2 == $BISON_MINOR && (NR == 2 || \\$3 >= $BISON_POINT))))) print \"yes\"; else printf(\"version %d.%d.%d\",\\$1,\\$2,\\$3); }" FS=. \
- `
- AS_IF([test "x$bison_version_check" != "xyes"],
- [ YACC=''
- AS_IF([test -z "$bison_version_check"],
- [bison_version_check='no version data']
- )
- ]
- )
- ],
- [ YACC=''
- bison_version_check="nothing"
- ]
-)
-# Check lex/flex by hand because we need flex of a sufficient version.
-FLEX_MAJOR=2
-FLEX_MINOR=5
-FLEX_POINT=33
-dnl ylwrap requires the lexer executable to be an absolute path or in the srcdir.
-dnl but we need various other LEX values.
-AC_PROG_LEX([noyywrap])
-AS_IF([test -n "$LEX"],
- [ flex_version_check=`$LEX --version 2>&1 | \
- $SED -n '/flex/s/^[[^0-9]]*\([[0-9]][[0-9.]]*\)[[^0-9]]*.*$/\1/p' | \
- $AWK "{ if (\\$1 > $FLEX_MAJOR || (\\$1 == $FLEX_MAJOR && (\\$2 > $FLEX_MINOR || (\\$2 == $FLEX_MINOR && (NR == 2 || \\$3 >= $FLEX_POINT))))) print \"yes\"; else printf(\"version %d.%d.%d\",\\$1,\\$2,\\$3); }" FS=. \
- `
- AS_IF([test "x$flex_version_check" != "xyes"],
- [ LEX=''
- AS_IF([test -z "$flex_version_check"],
- [flex_version_check='no version data']
- )
- ]
- )
- ],
- [ LEX=''
- flex_version_check="nothing"
- ]
-)
-
-# Generated files checked in, only build them if the local OS has the necessary support.
-# Otherwise just use the checked in version.
-AM_CONDITIONAL([BUILD_TSCONFIG_GRAMMAR], [ test -n "$LEX" && test -n "$YACC" ])
-
-# Check for Doxygen
-AC_PATH_PROG([DOXYGEN], [doxygen]) # needed for Doxygen
-AC_ARG_VAR([DOXYGEN], [full path of Doxygen executable])
-
-# Check for GNU-style -On optimization flags
-AC_MSG_CHECKING([whether to auto-set compiler optimization flags])
-has_optimizer_flags=`echo "$CFLAGS $CXXFLAGS" | ${AWK} '$0 !~ /-O.?/{print "no"}'`
-AS_IF([test "x${has_optimizer_flags}" = "xno"],
- [
- optimizing_flags='-O3'
- AC_MSG_RESULT([yes ${optimizing_flags}])
- ],
- [
- has_optimizer_flags='yes'
- optimizing_flags=''
- AC_MSG_RESULT([no])
- ]
-)
-
-case $host_os_def in
- linux)
- AS_IF([test "x$ax_cv_c_compiler_vendor" = "xintel"], [
- # -Wall is overzealous for us, so need to turn this off for now:
- #
- # #873 is "has no corresponding operator delete"
- # #279 is "controlling expression is constant" (which is e.g. TSReleaseAssert(!"Unexpected Event");
- common_opt="-pipe -Wall -wd873 -wd279"
- debug_opt="-g $common_opt"
- release_opt="-g $common_opt $optimizing_flags -axsse4.2 -fno-strict-aliasing"
- cxx_opt="-Wno-invalid-offsetof"
- ])
-
- AS_IF([test "x$ax_cv_c_compiler_vendor" = "xclang"], [
- common_opt="-pipe -Wall -Wno-deprecated-declarations -Qunused-arguments -Wextra -Wno-ignored-qualifiers -Wno-unused-parameter"
- debug_opt="-ggdb3 $common_opt -Qunused-arguments"
- release_opt="-g $common_opt $optimizing_flags -fno-strict-aliasing -Qunused-arguments"
- cxx_opt="-Wno-invalid-offsetof"
- ])
-
- AS_IF([test "x$ax_cv_c_compiler_vendor" = "xgnu"], [
- # This is useful for finding odd conversions
- # common_opt="-pipe -Wall -Wconversion -Wno-sign-conversion -Wno-format-truncation"
- common_opt="-pipe -Wall -Wextra -Wno-ignored-qualifiers -Wno-unused-parameter -Wno-format-truncation -Wno-cast-function-type -Wno-stringop-overflow"
- debug_opt="-ggdb3 $common_opt"
- release_opt="-g $common_opt $optimizing_flags -feliminate-unused-debug-symbols -fno-strict-aliasing"
- cxx_opt="-Wno-invalid-offsetof -Wno-noexcept-type -Wsuggest-override"
- # Special options for flex generated .c files
- flex_cflags="-Wno-unused-parameter"
- ])
-
- TS_ADDTO([AM_LDFLAGS], [-Wl,--as-needed])
-
- ;; # linux)
-
- darwin)
- AS_IF([test "x$ax_cv_c_compiler_vendor" = "xclang"], [
- common_opt="-pipe -Wall -Qunused-arguments -Wextra -Wno-unused-parameter"
- debug_opt="-g $common_opt"
- release_opt="-g $common_opt $optimizing_flags -fno-strict-aliasing"
- cxx_opt="-Wno-invalid-offsetof"
- ], [
- AC_MSG_WARN([clang is the only supported compiler on Darwin])
- ])
-
- # NOTE: This seems semi-kludgy, but useful for MacPorts I think.
- AS_IF([test -d /opt/local/include], [
- TS_ADDTO(TS_INCLUDES, [-I/opt/local/include])
- ])
- AS_IF([test -d /opt/local/lib], [
- TS_ADDTO(AM_LDFLAGS, [-L/opt/local/lib])
- ])
-
- ;; # darwin)
-
- freebsd|kfreebsd)
- AS_IF([test "x$ax_cv_c_compiler_vendor" = "xclang"], [
- common_opt="-pipe -Wall -Wno-deprecated-declarations -Qunused-arguments -Wextra -Wno-ignored-qualifiers -Wno-unused-parameter"
- debug_opt="-ggdb3 $common_opt"
- release_opt="-g $common_opt $optimizing_flags -fno-strict-aliasing"
- cxx_opt="-Wno-invalid-offsetof"
- ])
-
- AS_IF([test "x$ax_cv_c_compiler_vendor" = "xgnu"], [
- common_opt="-pipe -Wall -Wextra -Wno-ignored-qualifiers -Wno-unused-parameter"
- debug_opt="-ggdb3 $common_opt"
- release_opt="-g $common_opt $optimizing_flags -feliminate-unused-debug-symbols -fno-strict-aliasing"
- cxx_opt="-Wno-invalid-offsetof -Wsuggest-override"
- ])
-
- AS_IF([test -d /usr/local/lib], [
- TS_ADDTO(AM_LDFLAGS, [-L/usr/local/lib])
- ])
-
- ;; # freebsd|kfreebsd)
-
- *)
- # Not sure what platform this is, but take a stab at some general GCC options ...
- AS_IF([test "x$ax_cv_c_compiler_vendor" = "xgnu"], [
- common_opt="-pipe -Wall -Wextra -Wno-ignored-qualifiers -Wno-unused-parameter"
- debug_opt="-ggdb3 $common_opt"
- release_opt="-g $common_opt $optimizing_flags -feliminate-unused-debug-symbols -fno-strict-aliasing"
- cxx_opt="-Wno-invalid-offsetof"
- ])
-esac
-
-AS_IF([test x"$enable_coverage" = "xyes"], [
- # Map per-compiler code coverage instrumentation flags. Note that
- # we don't test whether the compiler actually support these options
- # (we don't do that in general). The user is expected to use a modern,
- # supported compiler to test coverage.
- AS_CASE("$ax_cv_c_compiler_vendor",
- [clang], [
- TS_ADDTO(AM_CXXFLAGS, "-fprofile-instr-generate")
- TS_ADDTO(AM_CXXFLAGS, "-fcoverage-mapping")
- TS_ADDTO(AM_CFLAGS, "-fprofile-instr-generate")
- TS_ADDTO(AM_CFLAGS, "-fcoverage-mapping")
- ], [gnu], [
- TS_ADDTO(AM_CXXFLAGS, "--coverage")
- TS_ADDTO(AM_CFLAGS, "--coverage")
- TS_ADDTO(LIBS, "-lgcov")
- ])
-])
-
-# Only add -Werror if the user has requested it. We enable this by default for
-# development, disable it by default for release.
-AS_IF([test x"$enable_werror" = "xyes"], [
- TS_ADDTO(release_opt, -Werror)
- TS_ADDTO(debug_opt, -Werror)
-])
-
-# Add the necessary flags for LTO
-AS_IF([test x"$enable_lto" = "xyes"], [
- AS_IF([test "x$ax_cv_c_compiler_vendor" = "xclang"], [
- TS_ADDTO(AM_CXXFLAGS, [-flto=thin -fuse-ld=lld])
- TS_ADDTO(AM_CFLAGS, [-flto=thin -fuse-ld=lld])
- TS_ADDTO(AM_LDFLAGS, [-flto=thin -fuse-ld=lld])
- ], [
- TS_ADDTO(AM_CXXFLAGS, [-flto])
- TS_ADDTO(AM_CFLAGS, [-flto])
- TS_ADDTO(AM_LDFLAGS, [-flto])
- ])
-])
-
-cc_oflag_opt=$release_opt
-cc_oflag_dbg=$debug_opt
-cxx_oflag_opt="$release_opt $cxx_opt $cxx_rel"
-cxx_oflag_dbg="$debug_opt $cxx_opt $cxx_dbg"
-
-# Special compiler flag hacks for various pieces of the code
-AC_SUBST([FLEX_CFLAGS], $flex_cflags)
-
-#
-# _Here_ is where we go ahead and add the _optimizations_ to already
-# existing CFLAGS/CXXFLAGS if some special values had been set.
-#
-if test "x${enable_debug}" = "xyes"; then
- TS_ADDTO(AM_CFLAGS, [${cc_oflag_dbg}])
- TS_ADDTO(AM_CXXFLAGS, [${cxx_oflag_dbg}])
- TS_ADDTO(AM_CPPFLAGS, [-DDEBUG -D_DEBUG])
-else
- TS_ADDTO(AM_CFLAGS, [${cc_oflag_opt}])
- TS_ADDTO(AM_CXXFLAGS, [${cxx_oflag_opt}])
-fi
-
-if test "x${enable_mime_sanity_check}" = "xyes"; then
- TS_ADDTO(AM_CPPFLAGS, [-DENABLE_MIME_SANITY_CHECK])
-fi
-
-if test "x${enable_all_asserts}" = "xyes"; then
- TS_ADDTO(AM_CPPFLAGS, [-DENABLE_ALL_ASSERTS])
-fi
-
-if test "x${enable_event_tracker}" = "xyes"; then
- TS_ADDTO(AM_CPPFLAGS, [-DENABLE_EVENT_TRACKER])
-fi
-
-# Flags for ASAN
-if test "x${enable_asan}" = "xyes"; then
- if test "x${enable_tsan}" = "xyes" -o "x${enable_tsan}" = "xstatic"; then
- AC_MSG_ERROR([Cannot have ASAN and TSAN options at the same time, pick one])
- fi
- TS_ADDTO(AM_CFLAGS, [-fno-omit-frame-pointer -fsanitize=address])
- TS_ADDTO(AM_CXXFLAGS, [-fno-omit-frame-pointer -fsanitize=address])
-elif test "x${enable_asan}" = "xstatic"; then
- if test "x${enable_tsan}" = "xyes" -o "x${enable_tsan}" = "xstatic"; then
- AC_MSG_ERROR([Cannot have ASAN and TSAN options at the same time, pick one])
- fi
- asan_CXXFLAGS="$CXXFLAGS"
- CXXFLAGS="$CXXFLAGS -fno-omit-frame-pointer -fsanitize=address -static-libasan"
- AC_LANG_PUSH(C++)
- AC_MSG_CHECKING([static ASAN library is available])
- AC_LINK_IFELSE(
- [AC_LANG_PROGRAM([#include <stdlib.h>], [])],
- [AC_MSG_RESULT([yes])],
- [
- AC_MSG_RESULT([no])
- AC_MSG_ERROR([Cannot find static ASAN library])
- ]
- )
- AC_LANG_POP
- CXXFLAGS="$asan_CXXFLAGS"
- TS_ADDTO(AM_CFLAGS, [-fno-omit-frame-pointer -fsanitize=address -static-libasan])
- TS_ADDTO(AM_CXXFLAGS, [-fno-omit-frame-pointer -fsanitize=address -static-libasan])
-fi
-
-# Flags for LSAN stand-alone mode
-if test "x${enable_lsan}" = "xyes"; then
- if test "x${enable_asan}" = "xyes" -o "x${enable_asan}" = "xstatic"; then
- AC_MSG_ERROR([ASAN already specified, --enable-lsan is meant only for LSAN stand-alone mode])
- fi
- if test "x${enable_tsan}" = "xyes" -o "x${enable_tsan}" = "xstatic"; then
- AC_MSG_ERROR([Cannot have LSAN and TSAN options at the same time, pick one])
- fi
- TS_ADDTO(AM_CFLAGS, [-fno-omit-frame-pointer -fsanitize=leak])
- TS_ADDTO(AM_CXXFLAGS, [-fno-omit-frame-pointer -fsanitize=leak])
-elif test "x${enable_lsan}" = "xstatic"; then
- if test "x${enable_asan}" = "xyes" -o "x${enable_asan}" = "xstatic"; then
- AC_MSG_ERROR([ASAN already specified, --enable-lsan is meant only for LSAN stand-alone mode])
- fi
- if test "x${enable_tsan}" = "xyes" -o "x${enable_tsan}" = "xstatic"; then
- AC_MSG_ERROR([Cannot have LSAN and TSAN options at the same time, pick one])
- fi
- AC_CHECK_LIB(lsan, _init, [lsan_have_libs=yes], [lsan_have_libs=no])
- if test "x${lsan_have_libs}" == "xno"; then
- AC_MSG_ERROR([Cannot find LSAN static library])
- fi
- lsan_CXXFLAGS="$CXXFLAGS"
- CXXFLAGS="$CXXFLAGS -fno-omit-frame-pointer -fsanitize=leak -static-liblsan"
- AC_LANG_PUSH(C++)
- AC_MSG_CHECKING([static LSAN library is available])
- AC_LINK_IFELSE(
- [AC_LANG_PROGRAM([#include <stdlib.h>], [])],
- [AC_MSG_RESULT([yes])],
- [
- AC_MSG_RESULT([no])
- AC_MSG_ERROR([Cannot find static LSAN library])
- ]
- )
- AC_LANG_POP
- CXXFLAGS="$lsan_CXXFLAGS"
- TS_ADDTO(AM_CFLAGS, [-fno-omit-frame-pointer -fsanitize=leak -static-liblsan])
- TS_ADDTO(AM_CXXFLAGS, [-fno-omit-frame-pointer -fsanitize=leak -static-liblsan])
-fi
-
-# Flags for TSAN
-if test "x${enable_tsan}" = "xyes"; then
- TS_ADDTO(AM_CFLAGS, [-fsanitize=thread])
- TS_ADDTO(AM_CXXFLAGS, [-fsanitize=thread])
-elif test "x${enable_tsan}" = "xstatic"; then
- AC_CHECK_LIB(tsan, _init, [tsan_have_libs=yes], [tsan_have_libs=no])
- if test "x${tsan_have_libs}" == "xno"; then
- AC_MSG_ERROR([Cannot find TSAN static library])
- fi
- tsan_CXXFLAGS="$CXXFLAGS"
- CXXFLAGS="$CXXFLAGS -fsanitize=thread -static-libtsan"
- AC_LANG_PUSH(C++)
- AC_MSG_CHECKING([static TSAN library is available])
- AC_LINK_IFELSE(
- [AC_LANG_PROGRAM([#include <stdlib.h>], [])],
- [AC_MSG_RESULT([yes])],
- [
- AC_MSG_RESULT([no])
- AC_MSG_ERROR([Cannot find static TSAN library])
- ]
- )
- AC_LANG_POP
- CXXFLAGS="$tsan_CXXFLAGS"
- TS_ADDTO(AM_CFLAGS, [-fsanitize=thread -static-libtsan])
- TS_ADDTO(AM_CXXFLAGS, [-fsanitize=thread -static-libtsan])
-fi
-
-# Build for disk failure simulation
-if test "x${enable_disk_failure_tests}" = "xyes"; then
- TS_ADDTO(AM_CFLAGS, [-DAIO_FAULT_INJECTION])
- TS_ADDTO(AM_CXXFLAGS, [-DAIO_FAULT_INJECTION])
-fi
-
-# Checks for pointer size.
-# TODO: Later this is irrelevant, and we should just bail on 32-bit platforms always
-AC_CHECK_SIZEOF([void*])
-if test "x$ac_cv_sizeof_voidp" == "x"; then
- AC_MSG_ERROR([Cannot determine size of void*])
-fi
-
-# Right now, 32-bit platform is a build error, unless we've forced it with --enable-32bit-build
-if test "${ac_cv_sizeof_voidp}" = "4"; then
- AS_IF([test x"$enable_32bit_build" = "xyes"], [
- AC_MSG_NOTICE([Explicitly building on a 32-bit platform, this might be unsupported soon!])
- ], [
- AC_MSG_ERROR([You are trying to build on a 32-bit platform, which is unsupported])
- ])
-fi
-
-
-#
-# Here are all the extra linux-specific C(XX)FLAGS additions and
-# so forth.
-# TODO cpu architecture settings separate from operating system settings
-#
-cpu_architecture=""
-# GCC: add a default march if there is not one set
-if test "x${GCC}" = "xyes"; then
- if test "${ac_cv_sizeof_voidp}" = "4"; then
- case "$host_cpu" in
- i?86* | k[5-8]* | pentium* | athlon)
- cpu_architecture="-march=i586"
- ;;
- esac
- else
- case "$host_cpu" in
- x86_64 | amd64)
- # XXX: Any need for 64-bit arch flags?
- # cpu_architecture="-march=native"
- ;;
- esac
- fi
-fi
-
-# Override detected architecture with the user supplied one
-#
-AC_ARG_WITH(architecture, [AS_HELP_STRING([--with-architecture=ARCH],[use a specific CPU architecture])],
-[
- if test "x$withval" != "xyes" && test "x$withval" != "xno"; then
- case "$withval" in
- -*)
- # TODO: In case we are cross compiling some of the provided flags
- # should be added to the LDFLAGS
- cpu_architecture="$withval"
- ;;
- *)
- cpu_architecture="-march=$withval"
- ;;
- esac
- elif test "x$withval" = "x"; then
- AC_MSG_ERROR([--with-architecture requires a parameter])
- fi
-])
-
-if test "x$cpu_architecture" != "x"; then
- TS_ADDTO(AM_CFLAGS, [$cpu_architecture])
- TS_ADDTO(AM_CXXFLAGS, [$cpu_architecture])
-fi
-
-# 64-bit LFS support
-#
-TS_ADDTO(AM_CPPFLAGS, [-D_LARGEFILE64_SOURCE=1])
-if test "${ac_cv_sizeof_voidp}" = "8"; then
- TS_ADDTO(AM_CPPFLAGS, [-D_COMPILE64BIT_SOURCE=1])
-else
- TS_ADDTO(AM_CPPFLAGS, [-D_FILE_OFFSET_BITS=64])
-fi
-TS_ADDTO(CPPFLAGS, [-D_GNU_SOURCE])
-TS_ADDTO(AM_CPPFLAGS, [-D_REENTRANT])
-TS_ADDTO(AM_CPPFLAGS, [-D__STDC_LIMIT_MACROS=1])
-TS_ADDTO(AM_CPPFLAGS, [-D__STDC_FORMAT_MACROS=1])
-
-AC_MSG_NOTICE([Build for host OS: $host_os, arch: $host_cpu, optimization: $host_os_def])
-
-# Add hardening options to flags
-AS_IF([test "x${enable_hardening}" = "xyes"], [
- TS_ADDTO(AM_CPPFLAGS, [-D_FORTIFY_SOURCE=2])
- TS_ADDTO(AM_CXXFLAGS, [-fPIE -fstack-protector])
- TS_ADDTO(AM_CFLAGS, [-fPIE -fstack-protector])
- AS_CASE("$host_os_def",
- [linux], [TS_ADDTO(AM_LDFLAGS, [-pie -Wl,-z,relro -Wl,-z,now])]
- )
-])
-
-#
-# Note: These are site-specific macro's that do various tests
-# on the selected compilers. There was some tuning
-# associated with our not wanting to use GNU for _everything_.
-# Note: This macro may set certain parameters when run.
-#
-
-# Check for ccache (if explicitly enabled)
-if test "x$enable_ccache" = "xyes"; then
- AC_CHECK_PROG([CCACHE],[ccache],[ccache],[])
- if test "x${CCACHE}" = "xccache"; then
- CC="$CCACHE $CC"
- CXX="$CCACHE $CXX"
- fi
-fi
-
-# -----------------------------------------------------------------------------
-# 4. CHECK FOR LIBRARIES
-
-AC_SEARCH_LIBS([socket], [socket], [], [])
-AC_SEARCH_LIBS([gethostbyname], [nsl], [], [])
-AC_SEARCH_LIBS([clock_gettime], [rt posix4], [], [])
-
-dnl We check for dlsym here instead of e.g. dlopen() because ASAN hijacks the latter.
-AC_SEARCH_LIBS([dlsym], [dl], [], [])
-
-dnl Linux has pthread symbol stubss in both libc and libpthread, so it's important to test
-dnl specifically for pthread_yield() here. In addition, ASAN hijacks pthread_create() so
-dnl we can't use that anymore.
-AC_SEARCH_LIBS([pthread_yield], [pthread], [], [])
-AC_CHECK_FUNCS([pthread_mutexattr_settype])
-
-dnl XXX The following check incorrectly causes the build to succeed
-dnl on Darwin. We should be using AC_SEARCH_LIBS, but rest_init is
-dnl actually present in libsystem. We are searching for the library
-dnl that contains the full Bind 9 API (which is actually libresolv).
-dnl However, the resolv API uses macros to rename it's APIs to per-version
-dnl symbols, so standard autoconf macros cannot reasonably be used to
-dnl check for it. We need to write custom macros to detect it properly.
-AC_CHECK_LIB([resolv],[res_init],[AC_SUBST([LIBRESOLV],["-lresolv"])])
-AC_CHECK_LIB([resolv],[__putlong],[AC_SUBST([LIBRESOLV],["-lresolv"])])
-
-# Test for ncurses. We need to turn off -Werror because the C code in the
-# ncurses compile tests does not generate unused variable warnings.
-__saved_CFLAGS="$CFLAGS"
-TS_REMOVEFROM(CFLAGS, -Werror)
-
-dnl Red Hat 6 requires special flags for curses to work.
-if test -r /etc/system-release ; then
- case `cat /etc/system-release` in
- Red\ Hat*release\ 6.*)
- TS_ADDTO(CFLAGS, [-Wl,--add-needed])
- curses_ldflags="-Wl,--add-needed"
- ;;
- esac
-fi
-
-AX_WITH_CURSES
-CFLAGS="$__saved_CFLAGS"
-AC_SUBST([CURSES_LDFLAGS],[$curses_ldflags])
-
-#
-# Check for -latomic need (at least for mips arch)
-TS_CHECK_ATOMIC
-TS_ADDTO([LDFLAGS], [$ATOMIC_LIBS])
-
-#
-# Check for SSL presence and usability
-#
-TS_CHECK_CRYPTO
-
-# Check for OpenSSL Version
-TS_CHECK_CRYPTO_VERSION
-
-# Check for OpenSSL Version 3 and add compatibility define if needed
-TS_CHECK_OPENSSL3
-AM_CONDITIONAL([OPENSSL_IS_OPENSSL3], [test -n "$openssl_is_openssl3"])
-
-# Check for openssl ASYNC jobs
-TS_CHECK_CRYPTO_ASYNC
-
-# Check for the client hello callback
-TS_CHECK_CRYPTO_HELLO_CB
-
-# Check for SSL_set0_rbio call
-TS_CHECK_CRYPTO_SET_RBIO
-
-# Check for DH_get_2048_256
-TS_CHECK_CRYPTO_DH_GET_2048_256
-
-# Check for HKDF support
-TS_CHECK_CRYPTO_HKDF
-AM_CONDITIONAL([HAS_HKDF], [test "x$enable_hkdf" = "xyes"])
-
-# Check for TLS 1.3 support
-TS_CHECK_CRYPTO_TLS13
-
-# Check for OCSP
-TS_CHECK_CRYPTO_OCSP
-
-# Check for SSL_CTX_set_ciphersuites call
-TS_CHECK_CRYPTO_SET_CIPHERSUITES
-
-# Check for TOLS keylogging support.
-TS_CHECK_CRYPTO_KEYLOGGING
-
-# Check for openssl early data support
-TS_CHECK_EARLY_DATA
-
-# Check for openssl session ticket support
-TS_CHECK_SESSION_TICKET
-
-# Check for openssl verify cert store support
-TS_CHECK_VERIFY_CERT_STORE
-
-saved_LIBS="$LIBS"
-TS_ADDTO([LIBS], ["$OPENSSL_LIBS"])
-
-AC_CHECK_FUNCS([ \
- BIO_meth_new \
- BIO_set_data \
- BIO_get_data \
- BIO_get_shutdown \
- BIO_meth_get_ctrl \
- BIO_meth_get_create \
- BIO_meth_get_destroy \
- BIO_sock_non_fatal_error \
- CRYPTO_set_mem_functions \
- HMAC_CTX_new \
- X509_get0_signature \
- ERR_get_error_all \
- SHA1 \
- SHA256_Init \
- MD5_Init \
- SSL_SESSION_dup \
-])
-
-AC_CHECK_FUNC([ASN1_STRING_get0_data], [],
- [AC_DEFINE([ASN1_STRING_get0_data], [ASN1_STRING_data], [Added in OpenSSL 1.1])])
-
-AC_CHECK_FUNC([EVP_MD_CTX_new], [],
- [AC_DEFINE([EVP_MD_CTX_new], [EVP_MD_CTX_create], [Renamed in OpenSSL 1.1])])
-AC_CHECK_FUNC([EVP_MD_CTX_reset], [],
- [AC_DEFINE([EVP_MD_CTX_reset], [EVP_MD_CTX_cleanup], [Renamed in OpenSSL 1.1])])
-AC_CHECK_FUNC([EVP_MD_CTX_free], [],
- [AC_DEFINE([EVP_MD_CTX_free], [EVP_MD_CTX_destroy], [Renamed in OpenSSL 1.1])])
-
-AC_MSG_CHECKING([for OpenSSL is BoringSSL])
-AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <openssl/base.h>]],
- [[
- #ifndef OPENSSL_IS_BORINGSSL
- # error not boringssl
- #endif
- ]])
- ],
- [AC_MSG_RESULT([yes]); openssl_is_boringssl=1],
- [AC_MSG_RESULT([no])])
-AM_CONDITIONAL([OPENSSL_IS_BORINGSSL], [test -n "$openssl_is_boringssl"])
-
-LIBS="$saved_LIBS"
-
-#
-# Check OpenSSL version for JA3 Fingerprint
-#
-AC_MSG_CHECKING([for JA3 compatible OpenSSL version])
-AC_EGREP_CPP(yes, [
- #include <openssl/opensslv.h>
- #if (OPENSSL_VERSION_NUMBER < 0x010100000L)
- yes
- #elif (OPENSSL_VERSION_NUMBER >= 0x010101000L)
- yes
- #endif
- ], [
- AC_MSG_RESULT(yes)
- AS_IF([test "x${enable_experimental_plugins}" = "xyes" && test -z "$openssl_is_boringssl"], [
- enable_ja3_plugin=yes
- ])
- ], [AC_MSG_RESULT(no)])
-
-AM_CONDITIONAL([BUILD_JA3_PLUGIN], [test "x${enable_ja3_plugin}" = "xyes"])
-
-#
-# Check for zlib presence and usability
-TS_CHECK_ZLIB
-if test "x${enable_zlib}" != "xyes"; then
- AC_MSG_ERROR([Cannot find zlib library, configure --with-zlib=DIR])
-fi
-
-#
-# Check for lzma presence and usability
-TS_CHECK_LZMA
-
-AC_CHECK_FUNCS([clock_gettime kqueue epoll_ctl posix_fadvise posix_madvise posix_fallocate inotify_init])
-AC_CHECK_FUNCS([port_create strlcpy strlcat sysconf sysctlbyname getpagesize])
-AC_CHECK_FUNCS([getreuid getresuid getresgid setreuid setresuid getpeereid getpeerucred])
-AC_CHECK_FUNCS([strsignal psignal psiginfo accept4])
-AC_CHECK_FUNCS([sendmmsg recvmmsg])
-
-# Check for eventfd() and sys/eventfd.h (both must exist ...)
-AC_CHECK_HEADERS([sys/eventfd.h], [
- AS_IF([test "x$enable_eventfd" = "xyes"], [
- AC_CHECK_FUNCS([eventfd])
- ]
-)])
-
-AC_CHECK_FUNCS(eventfd)
-
-#
-# Check for mcheck_pedantic(3)
-#
-AC_CHECK_HEADERS(mcheck.h)
-AC_CHECK_FUNCS(mcheck_pedantic)
-
-#
-# Check for malloc_usable_size()
-#
-AC_CHECK_FUNCS(malloc_usable_size)
-
-#
-# Check for pcre library
-#
-TS_CHECK_PCRE
-if test "x${enable_pcre}" != "xyes"; then
- AC_MSG_ERROR([Cannot find pcre library, configure --with-pcre=DIR])
-fi
-
-TS_CHECK_PCRE2
-
-# Check for optional brotli library
-TS_CHECK_BROTLI
-
-# Check for optional fmt library
-TS_CHECK_FMT
-
-# Check for optional luajit library
-TS_CHECK_LUAJIT
-
-# Check for optional quiche library
-enable_quic=no
-TS_CHECK_QUICHE
-if test "${has_quiche}" = "1"; then
-if test "$openssl_is_boringssl" = "1" ; then
-enable_quic=yes
-else
- AC_MSG_ERROR([Use of BoringSSL is required if Quiche is used])
-fi
-fi
-TS_ARG_ENABLE_VAR([use], [quic])
-AC_SUBST(use_quic)
-AC_SUBST(has_quiche)
-AM_CONDITIONAL([ENABLE_QUIC], [test "x$enable_quic" = "xyes"])
-
-#
-# Enable experimental/uri_signing plugin
-# This is here, instead of above, because it needs to know if PCRE is available.
-#
-
-#### Check for optional jansson library (uri_signing)
-TS_CHECK_JANSSON
-
-AC_CHECK_LIB([crypto],[HMAC],[has_libcrypto=1],[has_libcrypto=0])
-
-#### Check for optional cjose library (uri_signing)
-TS_CHECK_CJOSE
-
-AM_CONDITIONAL([BUILD_URI_SIGNING_PLUGIN], [test ! -z "${LIBCJOSE}" -a ! -z "${LIBJANSSON}" -a "x${enable_pcre}" = "xyes" -a "x${has_libcrypto}" = "x1"])
-AC_SUBST([LIBCJOSE])
-AC_SUBST([LIBJANSSON])
-
-# Check for yaml-cpp library
-#
-TS_CHECK_YAML_CPP
-AM_CONDITIONAL([BUILD_YAML_CPP], [test x"$has_yaml_cpp" = x"no"])
-
-TS_CHECK_YAML_HEADERS_EXPORT
-AM_CONDITIONAL([EXPORT_YAML_HEADERS], [test x"$enable_yaml_headers" = x"yes"])
-
-TS_CHECK_LIBSWOC
-AM_CONDITIONAL([BUILD_SWOC], [test "$has_libswoc" = "no"])
-
-TS_CHECK_SWOC_HEADERS_EXPORT
-AM_CONDITIONAL([EXPORT_SWOC_HEADERS], [test ! x"$enable_swoc_headers" = x"no"])
-
-# Check for optional hiredis library
-TS_CHECK_HIREDIS
-AM_CONDITIONAL([BUILD_SSL_SESSION_REUSE_PLUGIN], [test ! -z "${LIB_HIREDIS}" -a "x${has_hiredis}" = "x1" ])
-
-# Check for optional nuraft library
-TS_CHECK_NURAFT
-AM_CONDITIONAL([BUILD_STEK_SHARE_PLUGIN], [test x"$has_nuraft" = x"yes"])
-
-# Check for backtrace() support
-has_backtrace=0
-AC_CHECK_HEADERS([execinfo.h], [has_backtrace=1],[])
-if test "${has_backtrace}" = "1"; then
- # FreeBSD requires '/usr/ports/devel/libexecinfo' for gdb style backtrace() support
- AC_SEARCH_LIBS([backtrace], [execinfo], [have_backtrace_lib=yes])
-else
- AC_MSG_WARN([No backtrace() support found])
-fi
-AC_SUBST(has_backtrace)
-
-#
-# use unwind library when possible (can be disabled)
-#
-AC_MSG_CHECKING([whether to use unwind library])
-AC_ARG_ENABLE([unwind],
- AS_HELP_STRING([--disable-unwind],[Don't use the unwind library]), [
- ], [
- enable_unwind="yes"
- enable_unwind_default="yes"
-])
-AC_MSG_RESULT([$enable_unwind])
-
-AS_IF([test "x$enable_unwind" = "xyes"], [
- # Remote process unwinding is only implemented on Linux because it depends on various Linux-specific
- # features such as /proc filesystem nodes, ptrace(2) and waitpid(2) extensions.
- AS_IF([test "$host_os_def" = "linux"], [
- PKG_CHECK_MODULES([LIBUNWIND], [libunwind-ptrace], [
- enable_remote_unwinding=yes
- ], [
- AS_IF([test "x$enable_unwind_default" = "xyes"], [
- AC_MSG_WARN([unwind not found, try disabling it --disable-unwind])
- ], [
- AC_MSG_ERROR([unwind not found, try disabling it --disable-unwind])
- ])
- ])], [
- AS_IF([test "x$enable_unwind_default" = "xyes"], [
- AC_MSG_WARN([unwind only available on Linux, try disabling it --disable-unwind])
- ], [
- AC_MSG_ERROR([unwind only available on Linux, try disabling it --disable-unwind])
- ])
- ])
-])
-TS_ARG_ENABLE_VAR([use], [remote_unwinding])
-
-# Find the appropriate event handling interface. This can be forced on
-# platforms that support 2 or more of our supported interfaces. It
-# could also (in the future?) be used to enable other event systems
-# such as libev.
-AC_ARG_WITH([event-interface],
- [AS_HELP_STRING([--with-event-interface=epoll|kqueue|port],[event interface to use [default=auto]])],
- [event_interface=$withval],
- [event_interface="auto"]
-)
-
-use_epoll=0
-use_kqueue=0
-
-AS_IF([test "x$event_interface" = "xauto"], [
- if test "$ac_cv_func_epoll_ctl" = "yes"; then
- use_epoll=1
- have_good_poller=1
- AC_MSG_NOTICE([Using epoll event interface])
- elif test "$ac_cv_func_kqueue" = "yes"; then
- use_kqueue=1
- have_good_poller=1
- AC_MSG_NOTICE([Using kqueue event interface])
- else
- AC_MSG_FAILURE([No suitable polling interface found])
- fi
-],[
- case "x$event_interface" in
- xepoll)
- use_epoll=1
- AC_MSG_RESULT([forced to epoll])
- ;;
- xkqueue)
- use_kqueue=1
- AC_MSG_RESULT([forced to kqueue])
- ;;
- *)
- AC_MSG_RESULT([failed])
- AC_MSG_FAILURE([unknown event system])
- esac
-])
-
-AC_SUBST(use_epoll)
-AC_SUBST(use_kqueue)
-
-# Profiler support
-has_profiler=0
-if test "x${with_profiler}" = "xyes"; then
- AC_CHECK_LIB([profiler], [ProfilerStart],
- [AC_SUBST([LIBPROFILER], ["-lprofiler"])
- has_profiler=1
- ],
- [AC_MSG_FAILURE([check for profiler failed. Have you installed google-perftools-devel?])],
- )
-fi
-AC_SUBST(has_profiler)
-
-AC_MSG_CHECKING(for 128bit CAS support)
-AC_LANG_PUSH([C++])
-
-# We need to save and restore compiler flags around this whole block.
-# TS_TRY_COMPILE_NO_WARNING will save and restore flags, so if we do that in the
-# middle, then we can accidentally restore modified flags.
-__saved_CXXFLAGS="${CXXFLAGS}"
-__saved_CFLAGS="${CFLAGS}"
-
-has_128bit_cas=0
-# Don't add the -mcx16 flag unless needed and it compiles cleanly.
-needs_mcx16_for_cas=0
-
-TS_TRY_COMPILE_NO_WARNING([],[
- __int128_t x = 0;
- __sync_bool_compare_and_swap(&x,0,10);
- ], [
- AC_MSG_RESULT(yes)
- has_128bit_cas=1
- ], [
- dnl If 128bit CAS fails, try again with the -mcx16 option. GCC needs this;
- dnl clang doesn't; icc does not support -mcx16 (but gives a non-fatal warning).
- TS_ADDTO(CXXFLAGS, [-mcx16])
- TS_ADDTO(CFLAGS, [-mcx16])
- TS_TRY_COMPILE_NO_WARNING([],[
- __int128_t x = 0;
- __sync_bool_compare_and_swap(&x,0,10);
- ], [
- AC_MSG_RESULT(yes)
- has_128bit_cas=1
- needs_mcx16_for_cas=1
- ], [
- AC_MSG_RESULT(no)
- ])
-])
-
-CXXFLAGS="${__saved_CXXFLAGS}"
-CFLAGS="${__saved_CFLAGS}"
-AC_LANG_POP
-AC_SUBST(has_128bit_cas)
-
-AS_IF([test "x$needs_mcx16_for_cas" = "x1"], [
- TS_ADDTO(AM_CFLAGS, [-mcx16])
- TS_ADDTO(AM_CXXFLAGS, [-mcx16])
-])
-
-# Check for POSIX capabilities library.
-# If we don't find it, disable checking for header.
-use_posix_cap=0
-AS_IF([test "x$enable_posix_cap" != "xno"],
- AC_CHECK_LIB([cap], [cap_set_proc],
- [AC_SUBST([LIBCAP], ["-lcap"])
- use_posix_cap=1
- ],[
- AS_IF([test "x$enable_posix_cap" == "xyes"], [
- AC_MSG_FAILURE([POSIX capabilities enabled but system library not found.])
- ],[
- [enable_posix_cap=no]
- ] )
- ]
- )
-)
-AC_SUBST(use_posix_cap)
-
-# Check for enabling io_uring on linux
-
-AC_MSG_CHECKING([whether to enable Linux io_uring])
-AC_ARG_ENABLE([experimental-linux-io-uring],
- [AS_HELP_STRING([--enable-experimental-linux-io-uring], [WARNING this is experimental: enable Linux io_uring support @<:@default=no@:>@])],
- [enable_linux_io_uring="${enableval}"],
- [enable_linux_io_uring=no]
-)
-AM_CONDITIONAL([ENABLE_IO_URING], [ test "x${enable_linux_io_uring}" = "xyes" ])
-
-AS_IF([test "x$enable_linux_io_uring" = "xyes"], [
- URING_LIBS="-luring"
- if test $host_os_def != "linux"; then
- AC_MSG_ERROR([Linux io_uring can only be enabled on Linux systems])
- fi
-
- AC_CHECK_HEADERS([liburing.h], [],
- [AC_MSG_ERROR([Linux io_uring requires liburing.h (install liburing)])]
- )
-
- AC_SEARCH_LIBS([io_uring_queue_init], [uring], [AC_SUBST([URING_LIBS])],
- [AC_MSG_ERROR([Linux io_uring require uring])]
- )
-])
-
-AC_MSG_RESULT([$enable_linux_io_uring])
-TS_ARG_ENABLE_VAR([use], [linux_io_uring])
-
-
-# Check for hwloc library.
-# If we don't find it, disable checking for header.
-use_hwloc=0
-AS_IF([test "x$enable_hwloc" = "xyes"], [
- # Use pkg-config, because some distros (*cough* Ubuntu) put hwloc in unusual places.
- PKG_CHECK_MODULES([HWLOC], [hwloc], [
- SAVE_CXXFLAGS="$CXXFLAGS"
- CXXFLAGS="${HWLOC_CFLAGS}"
-
- SAVE_LIBS="$LIBS"
- LIBS="${HWLOC_LIBS}"
-
- AC_LANG_PUSH([C++])
- AC_MSG_CHECKING([for hwloc C++ linking])
- AC_LINK_IFELSE([
- AC_LANG_PROGRAM([#include <hwloc.h>],[hwloc_topology_t t; hwloc_topology_init(&t); hwloc_get_type_depth(t, HWLOC_OBJ_SOCKET);])],
- [
- use_hwloc=1
- AC_SUBST([HWLOC_INCLUDES], "$HWLOC_CFLAGS")
- AC_SUBST([HWLOC_LIBS])
- AC_MSG_RESULT([yes])
- # Old versions of libhwloc don't have HWLOC_OBJ_PU.
- AC_CHECK_DECL(HWLOC_OBJ_PU,
- [AC_DEFINE(HAVE_HWLOC_OBJ_PU, 1, [Whether HWLOC_OBJ_PU is available])], [],
- [#include <hwloc.h>]
- )
- ], [
- AC_MSG_RESULT([no])
- AC_MSG_WARN([hwloc not linkable, try --disable-hwloc])
- AC_SUBST([HWLOC_INCLUDES],[""])
- AC_SUBST([HWLOC_LIBS],[""])
- ])
- AC_LANG_POP()
- LIBS="$SAVE_LIBS"
- CXXFLAGS="$SAVE_CXXFLAGS"
- ], [
- AC_MSG_WARN([hwloc not found, try --disable-hwloc])
- AC_SUBST([HWLOC_INCLUDES],[""])
- AC_SUBST([HWLOC_LIBS],[""])
- ])
-])
-
-AC_SUBST(use_hwloc)
-
-#
-# Check for Maxmind APIs / includes. TODO: Long term, it might make sense to support
-# GeoIP as a "helper" plugin, which other plugins can then use. Such a plugin could
-# then manage which libraries to use via explicit dlopen()'s.
-#
-AC_CHECK_HEADERS([GeoIP.h], [
- AC_CHECK_LIB([GeoIP], [GeoIP_new], [
- AC_SUBST([GEOIP_LIBS], ["-lGeoIP"])
- AC_SUBST(has_geoip, 1)
- ], [
- AC_SUBST([GEOIP_LIBS], [""])
- AC_SUBST(has_geoip, 0)
- ])
-])
-
-AM_CONDITIONAL([HAS_GEOIP], [test "x${has_geoip}" = "x1" ])
-
-#
-# Check for libmaxmind. This is the maxmind v2 API where GeoIP is the legacy
-# v1 dat file based API
-#
-AC_CHECK_HEADERS([maxminddb.h], [
- AC_CHECK_LIB([maxminddb], [MMDB_open], [
- AC_SUBST([MAXMINDDB_LIBS], ["-lmaxminddb"])
- AC_SUBST(has_maxminddb, 1)
- ], [
- AC_SUBST([MAXMINDDB_LIBS], [""])
- AC_SUBST(has_maxminddb, 0)
- ])
-])
-
-AM_CONDITIONAL([HAS_MAXMINDDB], [test "x${has_maxminddb}" = "x1" ])
-
-AC_ARG_WITH([hrw-geo-provider],
- [AS_HELP_STRING([--with-hrw-geo-provider=geoip|maxminddb],[geo provider to use with header_rewrite [default=auto] ])],
- [geo_provider=$withval],
- [geo_provider="auto"]
-)
-use_hrw_geoip=0
-use_hrw_maxminddb=0
-
-AS_IF([test "x$geo_provider" = "xauto"], [
- if test "x$has_geoip" = "x1"; then
- use_hrw_geoip=1
- AC_MSG_NOTICE([Using GeoIP interface for header_rewrite])
- elif test "x$has_maxminddb" = "x1"; then
- use_hrw_maxminddb=1
- AC_MSG_NOTICE([Using MaxMindDB interface for header_rewrite])
- fi
-],[
- case "x$geo_provider" in
- xgeoip)
- use_hrw_geoip=1
- AC_MSG_RESULT([forced to GeoIP])
- ;;
- xmaxminddb)
- use_hrw_maxminddb=1
- AC_MSG_RESULT([forced to MaxMindDB])
- ;;
- *)
- AC_MSG_RESULT([failed])
- AC_MSG_FAILURE([unknown geo interface $geo_provider])
- esac
-])
-
-AC_SUBST(use_hrw_geoip)
-AC_SUBST(use_hrw_maxminddb)
-
-# Checking if opentelemetry OTLP is available
-AC_LANG_PUSH([C++])
-AC_CHECK_HEADERS([opentelemetry/trace/provider.h], [
- AC_CHECK_LIB([curl], [curl_version], [
- AC_CHECK_LIB([protobuf], [main], [
- AC_CHECK_LIB([opentelemetry_exporter_otlp_http], [main], [
- AC_SUBST([OTEL_LIBS], [" -lopentelemetry_exporter_otlp_http -lopentelemetry_exporter_otlp_http_client -lopentelemetry_otlp_recordable -lopentelemetry_proto -lopentelemetry_trace -lopentelemetry_resources -lopentelemetry_version -lopentelemetry_common -lopentelemetry_http_client_curl -lcurl -lprotobuf "])
- AC_SUBST(has_otel, 1)
- ], [
- AC_SUBST([OTEL_LIBS], [""])
- AC_SUBST(has_otel, 0)
- ])
- ], [
- AC_SUBST([OTEL_LIBS], [""])
- AC_SUBST(has_otel, 0)
- ])
- ], [
- AC_SUBST([OTEL_LIBS], [""])
- AC_SUBST(has_otel, 0)
- ])
-])
-
-AM_CONDITIONAL([HAS_OTEL], [test "x${has_otel}" = "x1" ])
-AC_LANG_POP([C++])
-
-# check for wasm
-has_wasm=0
-# Checking if wamr is available
-AC_LANG_PUSH([C++])
-AC_CHECK_HEADERS([wasm_c_api.h], [
- AC_CHECK_LIB([iwasm], [main], [
- AC_SUBST([WAMR_LIBS], [" -liwasm "])
- AC_SUBST(has_wamr, 1)
- has_wasm=1
- ], [
- AC_SUBST([WAMR_LIBS], [""])
- AC_SUBST(has_wamr, 0)
- ])
-])
-
-AM_CONDITIONAL([HAS_WAMR], [test "x${has_wamr}" = "x1" ])
-AC_LANG_POP([C++])
-
-# Checking if wasmedge is available
-AC_LANG_PUSH([C++])
-AC_CHECK_HEADERS([wasmedge/wasmedge.h], [
- AC_CHECK_LIB([wasmedge], [main], [
- AC_SUBST([WASMEDGE_LIBS], [" -lwasmedge "])
- AC_SUBST(has_wasmedge, 1)
- has_wasm=1
- ], [
- AC_SUBST([WASMEDGE_LIBS], [""])
- AC_SUBST(has_wasmedge, 0)
- ])
-])
-
-AM_CONDITIONAL([HAS_WASMEDGE], [test "x${has_wasmedge}" = "x1" ])
-AC_LANG_POP([C++])
-
-# Checking if wasmtime is available
-AC_LANG_PUSH([C++])
-AC_CHECK_HEADERS([include/wasm.h], [
- AC_CHECK_LIB([wasmtime], [main], [
- AC_SUBST([WASMTIME_LIBS], [" -lwasmtime "])
- AC_SUBST(has_wasmtime, 1)
- has_wasm=1
- ], [
- AC_SUBST([WASMTIME_LIBS], [""])
- AC_SUBST(has_wasmtime, 0)
- ])
-])
-
-AM_CONDITIONAL([HAS_WASMTIME], [test "x${has_wasmtime}" = "x1" ])
-AC_LANG_POP([C++])
-
-# check for wasm
-AC_SUBST(has_wasm)
-AM_CONDITIONAL([HAS_WASM], [test "x${has_wasm}" = "x1" ])
-
-# Right now, the healthcheck plugins requires inotify_init (and friends)
-AM_CONDITIONAL([BUILD_HEALTHCHECK_PLUGIN], [ test "$ac_cv_func_inotify_init" = "yes" ])
-
-#
-# Check for jemalloc and mimalloc
-TS_CHECK_JEMALLOC
-TS_CHECK_MIMALLOC
-
-#
-# Check whether to use malloc or freelist allocator
-AC_MSG_CHECKING([Use malloc allocator])
-AC_ARG_ENABLE([malloc-allocator],
- [AS_HELP_STRING([--enable-malloc-allocator],[Allocator uses malloc])],
- [enable_malloc_allocator=1],
- [enable_malloc_allocator=0]
-)
-AC_MSG_RESULT([$enable_malloc_allocator])
-AC_SUBST(enable_malloc_allocator)
-
-# We should be able to build http_load if epoll(2) is available.
-AM_CONDITIONAL([BUILD_HTTP_LOAD], [test x"$ac_cv_func_epoll_ctl" = x"yes"])
-
-# We should only build traffic_top if we have curses
-AM_CONDITIONAL([BUILD_TRAFFIC_TOP], [test "x$ax_cv_curses" = "xyes"])
-
-# -----------------------------------------------------------------------------
-# 5. CHECK FOR HEADER FILES
-
-AC_CHECK_HEADERS([sys/types.h \
- sys/uio.h \
- sys/mman.h \
- sys/epoll.h \
- sys/event.h \
- sys/param.h \
- sys/pset.h \
- sched.h \
- pthread.h \
- sys/endian.h \
- machine/endian.h \
- endian.h \
- sys/sysinfo.h \
- sys/systeminfo.h \
- netinet/in.h \
- netinet/in_systm.h \
- netinet/tcp.h \
- sys/ioctl.h \
- sys/byteorder.h \
- sys/sockio.h \
- sys/prctl.h \
- arpa/nameser.h \
- arpa/nameser_compat.h \
- execinfo.h \
- netdb.h \
- ctype.h \
- siginfo.h \
- malloc.h \
- float.h \
- libgen.h \
- values.h \
- alloca.h \
- cpio.h \
- stropts.h \
- sys/param.h \
- sys/sysmacros.h \
- stdint.h \
- stdbool.h \
- sysexits.h \
- net/ppp_defs.h \
- ifaddrs.h\
- ucred.h ])
-
-# On OpenBSD, pthread.h must be included before pthread_np.h
-AC_CHECK_HEADERS([pthread_np.h], [], [], [#include <pthread.h>])
-AC_CHECK_HEADERS([sys/statfs.h sys/statvfs.h sys/disk.h sys/disklabel.h])
-AC_CHECK_HEADERS([linux/major.h])
-
-AC_CHECK_HEADERS([sys/sysctl.h], [], [],
- [[#ifdef HAVE_SYS_PARAM_H
- #include <sys/param.h>
- #endif
- ]])
-
-AC_CHECK_HEADERS([sys/cpuset.h], [], [],
- [[#ifdef HAVE_SYS_PARAM_H
- #include <sys/param.h>
- #endif
- ]])
-
-AC_CHECK_HEADERS([sys/mount.h], [], [],
- [[#ifdef HAVE_SYS_PARAM_H
- #include <sys/param.h>
- #endif
- ]])
-
-AC_CHECK_HEADERS([arpa/inet.h], [], [],
- [[#ifdef HAVE_SYS_TYPES_H
- #include <sys/types.h>
- #endif
- #ifdef HAVE_NETINET_IN_H
- #include <netinet/in.h>
- #endif
- ]])
-
-AC_CHECK_HEADERS([netinet/ip.h], [], [],
- [[#ifdef HAVE_SYS_TYPES_H
- #include <sys/types.h>
- #endif
- #ifdef HAVE_NETINET_IN_H
- #include <netinet/in.h>
- #endif
- #ifdef HAVE_NETINET_IN_SYSTM_H
- #include <netinet/in_systm.h>
- #endif
- ]])
-
-AC_CHECK_HEADERS([netinet/ip_icmp.h], [], [],
- [[#ifdef HAVE_SYS_TYPES_H
- #include <sys/types.h>
- #endif
- #ifdef HAVE_NETINET_IN_H
- #include <netinet/in.h>
- #endif
- #ifdef HAVE_NETINET_IP_H
- #include <netinet/ip.h>
- #endif
- #ifdef HAVE_NETINET_IN_SYSTM_H
- #include <netinet/in_systm.h>
- #endif
- ]])
-
-
-# Test for additional pthread interfaces.
-
-# Darwin pthread_setname_np:
-AC_MSG_CHECKING([for 1-parameter version of pthread_setname_np()])
-AC_LINK_IFELSE([
- AC_LANG_PROGRAM([
-#if HAVE_PTHREAD_H
-#include <pthread.h>
-#endif
-#if PTHREAD_NP_H
-#include <pthread_np.h>
-#endif
- ], [
- pthread_setname_np("conftest");
- ])
- ], [
- AC_DEFINE(HAVE_PTHREAD_SETNAME_NP_1, 1, [Whether the 1 parameter version of pthread_setname_np() is available])
- AC_MSG_RESULT([yes])
- ], [
- AC_MSG_RESULT([no])
-])
-
-# Linux pthread_setname_np:
-AC_MSG_CHECKING([for 2-parameter version of pthread_setname_np()])
-AC_LINK_IFELSE([
- AC_LANG_PROGRAM([
-#if HAVE_PTHREAD_H
-#include <pthread.h>
-#endif
-#if PTHREAD_NP_H
-#include <pthread_np.h>
-#endif
- ], [
- pthread_setname_np(pthread_self(), "conftest");
- ])
- ], [
- AC_DEFINE(HAVE_PTHREAD_SETNAME_NP_2, 1, [Whether the 2 parameter version of pthread_setname_np() is available])
- AC_MSG_RESULT([yes])
- ], [
- AC_MSG_RESULT([no])
-])
-
-# BSD pthread_set_name_np:
-AC_MSG_CHECKING([for 2-parameter version of pthread_set_name_np()])
-AC_LINK_IFELSE([
- AC_LANG_PROGRAM([
-#if HAVE_PTHREAD_H
-#include <pthread.h>
-#endif
-#if PTHREAD_NP_H
-#include <pthread_np.h>
-#endif
- ], [
- pthread_set_name_np(pthread_self(), "conftest");
- ])
- ], [
- AC_DEFINE(HAVE_PTHREAD_SET_NAME_NP_2, 1, [Whether the 2 parameter version of pthread_set_name_np() is available])
- AC_MSG_RESULT([yes])
- ], [
- AC_MSG_RESULT([no])
-])
-
-# pthread_getname_np / pthread_get_name_np:
-AC_MSG_CHECKING([pthread_getname_np()])
-AC_LINK_IFELSE([
- AC_LANG_PROGRAM([
-#if HAVE_PTHREAD_H
-#include <pthread.h>
-#endif
-#if PTHREAD_NP_H
-#include <pthread_np.h>
-#endif
- ], [
- char name[[32]];
- pthread_getname_np(pthread_self(), name, sizeof(name));
- ])
- ], [
- AC_DEFINE(HAVE_PTHREAD_GETNAME_NP, 1, [Whether pthread_getname_np() is available])
- AC_MSG_RESULT([yes])
- ], [
- AC_MSG_RESULT([no])
- AC_MSG_CHECKING([pthread_get_name_np()])
- AC_LINK_IFELSE([
- AC_LANG_PROGRAM([
- #if HAVE_PTHREAD_H
- #include <pthread.h>
- #endif
- #if PTHREAD_NP_H
- #include <pthread_np.h>
- #endif
- ], [
- char name[[32]];
- pthread_get_name_np(pthread_self(), name, sizeof(name));
- ])
- ], [
- AC_DEFINE(HAVE_PTHREAD_GET_NAME_NP, 1, [Whether pthread_get_name_np() is available])
- AC_MSG_RESULT([yes])
- ], [
- AC_MSG_RESULT([no])
- ])
-])
-
-# BSD-derived systems populate the socket length in the structure itself. It's
-# redundant to check all of these, but hey, I need the typing practice. Also, we
-# check for the linux updated version of tcp.h, in linux/tcp.h
-AC_CHECK_MEMBER([struct sockaddr.sa_len], [], [], [#include <netinet/in.h>])
-AC_CHECK_MEMBER([struct sockaddr_in.sin_len], [], [], [#include <netinet/in.h>])
-AC_CHECK_MEMBER([struct sockaddr_in6.sin6_len], [], [], [#include <netinet/in.h>])
-AC_CHECK_MEMBER([struct tcp_info.tcpi_data_segs_out], [], [], [#include <linux/tcp.h>])
-
-if test "x${ac_cv_member_struct_sockaddr_sa_len}" = "xyes"; then
- AC_DEFINE(HAVE_STRUCT_SOCKADDR_SA_LEN, 1,
- [Whether struct sockaddr_in has the sa_len member])
-fi
-
-if test "x${ac_cv_member_struct_sockaddr_in_sin_len}" = "xyes"; then
-AC_DEFINE(HAVE_STRUCT_SOCKADDR_IN_SIN_LEN, 1,
- [Whether struct sockaddr_in has the sin_len member])
-fi
-
-if test "x${ac_cv_member_struct_sockaddr_in6_sin6_len}" = "xyes"; then
- AC_DEFINE(HAVE_STRUCT_SOCKADDR_IN6_SIN6_LEN, 1,
- [Whether struct sockaddr_in6 has the sin6_len member])
-fi
-
-if test "x${ac_cv_member_struct_tcp_info_tcpi_data_segs_out}" = "xyes"; then
- AC_DEFINE(HAVE_STRUCT_LINUX_TCP_INFO, 1,
- [Whether struct tcp_info have the tcpi_data_segs_{in,out} member])
-fi
-
-if test "x${with_profiler}" = "xyes"; then
-AC_CHECK_HEADERS([gperftools/profiler.h \
- ], [], [])
-fi
-
-if test "x${enable_posix_cap}" != "xno"; then
- AC_CHECK_HEADERS([sys/capability.h],
- [],
- [AC_MSG_FAILURE([Found POSIX capabilities library but not the header sys/capability.h. POSIX capabilities are not a required feature, you can disable then with --disable-posix-cap])],
- []
- )
-fi
-
-# Check for high-resolution timestamps in struct stat
-AC_CHECK_MEMBERS([struct stat.st_mtimespec.tv_nsec])
-AC_CHECK_MEMBERS([struct stat.st_mtim.tv_nsec])
-
-
-#
-# Configure sockopt value for TPROXY. Look at the enable flag.
-# Value 'no' means user forced disable, don't check anything else.
-# 'auto' means user didn't say, so silently enable/disable
-# based on success.
-# A numeric value means enable, don't check, use that value.
-# Anything else means user forced, fail if value not found
-# in header file.
-# We can't just include linux/in.h because it's incompatible with
-# netinet/in.h.
-# Verify the file exists (is readable), scan for the value we need,
-# if found export the value and enable use of the value.
-#
-ip_transparent=0
-use_tproxy=0
-tproxy_header=/usr/include/linux/in.h
-tproxy_usage_enable="
- --enable-tproxy Enable the feature and validate."
-tproxy_usage_default="
- --enable-tproxy=force Enable using default sockopt value, no validation."
-tproxy_usage_numeric="
- --enable-tproxy=X where X is numeric
- Enable, use X for sockopt value, no validation."
-tproxy_usage_disable="
- --disable-tproxy Disable feature, no validation."
-proxy_usage="$tproxy_usage_enable$tproxy_usage_default$tproxy_usage_numeric$tproxy_usage_disable"
-
-AC_MSG_CHECKING([whether to enable transparent proxy])
-AS_IF([test "x$enable_tproxy" != "xno"], [
- AS_IF([test "$use_posix_cap" -eq 0], [
- AS_IF([test "x$enable_tproxy" = xauto], [
- AC_MSG_RESULT([no])
- ],[
- AC_MSG_FAILURE([TPROXY feature requires POSIX capabilities.])
- ])
- ],[
- AC_MSG_CHECKING([for TPROXY sockopt IP_TRANSPARENT])
- case "$enable_tproxy" in
- [[0-9][0-9]*])
- ip_transparent=$enable_tproxy
- use_tproxy=1
- AC_MSG_RESULT([forced to $ip_transparent])
- ;;
- force)
- ip_transparent=19
- use_tproxy=1
- AC_MSG_RESULT([forced to $ip_transparent])
- ;;
- yes|auto)
- AS_IF([test -r $tproxy_header], [
- ip_transparent=`$AWK "/^#define[ \t]+IP_TRANSPARENT[ \t]+[0-9]+/{print \\$3}" $tproxy_header`
- AS_IF([test "x$ip_transparent" != "x"], [
- use_tproxy=1
- AC_MSG_RESULT([set to $ip_transparent])
- ],[
- ip_transparent=0
- AS_IF([test "x$enable_tproxy" = xauto], [
- AC_MSG_RESULT([no])
- ],[
- AC_MSG_RESULT([failed])
- AC_MSG_FAILURE([tproxy feature enabled but the sockopt value was not found in $tproxy_header. Try one of$tproxy_usage_default$tproxy_usage_numeric$tproxy_usage_disable])
- ])
- ])
- ],[
- AS_IF([test "x$enable_tproxy" = xauto], [
- AC_MSG_RESULT([no])
- ],[
- AC_MSG_RESULT([failed])
- AC_MSG_FAILURE([tproxy feature enabled but the header file $tproxy_header was not readable. Try one of$tproxy_usage_default$tproxy_usage_numeric$tproxy_usage_disable])
- ])
- ])
- ;;
- *)
- AC_MSG_RESULT([failed])
- AC_MSG_FAILURE([Invalid argument to feature tproxy.$tproxy_usage])
- ;;
- esac
- ])
-])
-
-AC_SUBST(use_tproxy)
-AC_SUBST(ip_transparent)
-
-TS_CHECK_SOCKOPT(SO_PEERCRED, [has_so_peercred=1], [has_so_peercred=0])
-TS_CHECK_SOCKOPT(SO_MARK, [has_so_mark=1], [has_so_mark=0])
-TS_CHECK_SOCKOPT(IP_TOS, [has_ip_tos=1], [has_ip_tos=0])
-
-AC_SUBST(has_so_mark)
-AC_SUBST(has_ip_tos)
-AC_SUBST(has_so_peercred)
-
-TS_CHECK_MACRO_IN6_IS_ADDR_UNSPECIFIED
-
-AC_CHECK_TYPE([struct tcp_info],
- [AC_DEFINE(HAVE_STRUCT_TCP_INFO, 1, [whether struct tcp_info is available])],
- [],
- [[
- #include <netinet/in.h>
- #include <netinet/tcp.h>
- ]]
-)
-
-AC_MSG_CHECKING([whether to include systemtap tracing support])
-AC_ARG_ENABLE([systemtap],
- [AS_HELP_STRING([--enable-systemtap],
- [Enable inclusion of systemtap trace support])],
- [ENABLE_SYSTEMTAP="${enableval}"], [ENABLE_SYSTEMTAP='no'])
-AM_CONDITIONAL([ENABLE_SYSTEMTAP], [test x$ENABLE_SYSTEMTAP = xyes])
-AC_MSG_RESULT(${ENABLE_SYSTEMTAP})
-
-if test "x${ENABLE_SYSTEMTAP}" = xyes; then
- AC_CHECK_PROGS(DTRACE, dtrace)
- if test -z "$DTRACE"; then
- AC_MSG_ERROR([dtrace not found])
- fi
- AC_CHECK_HEADER([sys/sdt.h], [SDT_H_FOUND='yes'],
- [SDT_H_FOUND='no';
- AC_MSG_ERROR([systemtap support needs sys/sdt.h header])])
- AC_DEFINE([HAVE_SYSTEMTAP], [1], [Define to 1 if using probes.])
-fi
-
-# See if we can build the remap_stats plugin
-AS_IF([test "x$enable_experimental_plugins" = "xyes"],
- [
- AC_CHECK_HEADERS([search.h])
- AS_IF([test "x$ac_cv_header_search_h" = "xyes"],
- [
- AC_CHECK_TYPE([struct hsearch_data],[],[],[[#include <search.h>]])
- AC_CHECK_FUNCS([hcreate_r hsearch_r])
- ])
- ])
-
-AC_ARG_WITH([default-stack-size],
- [AS_HELP_STRING([--with-default-stack-size],[specify the default stack size in bytes [default=1048576]])],
- [
- with_default_stack_size="$withval"
- ],[
- with_default_stack_size="1048576"
- ]
-)
-
-AC_SUBST([default_stack_size], [$with_default_stack_size])
-
-#
-# use modular IOCORE
-#
-iocore_include_dirs="\
--I\$(abs_top_srcdir)/iocore/eventsystem \
--I\$(abs_top_srcdir)/iocore/io_uring \
--I\$(abs_top_srcdir)/iocore/net \
--I\$(abs_top_srcdir)/iocore/net/quic \
--I\$(abs_top_srcdir)/iocore/aio \
--I\$(abs_top_srcdir)/iocore/hostdb \
--I\$(abs_top_srcdir)/iocore/cache \
--I\$(abs_top_srcdir)/iocore/utils \
--I\$(abs_top_srcdir)/iocore/dns"
-
-AC_SUBST([AM_CPPFLAGS])
-AC_SUBST([AM_CFLAGS])
-AC_SUBST([AM_CXXFLAGS])
-AC_SUBST([AM_LDFLAGS])
-AC_SUBST([iocore_include_dirs])
-
-# NOTE: All additions to the default include path must be added to
-# TS_INCLUDES *not* to AM_CPPFLAGS. If you add then to AM_CPPFLAGS
-# then they are always prepended to the local AM_CPPFLAGS which risks
-# name collisions with in-tree files. We always want the in-tree files
-# to have precedence.
-AC_SUBST([TS_INCLUDES])
-
-AS_IF([test "x$RPATH" != "x"], [
- TS_ADDTO_RPATH([$RPATH])
-])
-
-# -----------------------------------------------------------------------------
-# 6. OUTPUT FILES
-
-AC_CONFIG_FILES([
- Makefile
- src/Makefile
- configs/Makefile
- configs/body_factory/Makefile
- configs/body_factory/default/Makefile
- configs/records.yaml.default
- configs/storage.config.default
- doc/Makefile
- doc/ext/local-config.py
- doc/uml/Makefile
- example/Makefile
- example/plugins/Makefile
- example/plugins/c-api/Makefile
- include/Makefile
- include/ts/Makefile
- include/tscpp/api/Makefile
- include/tscpp/util/Makefile
- include/ts/apidefs.h
- include/tscore/ink_config.h
- iocore/Makefile
- iocore/aio/Makefile
- iocore/io_uring/Makefile
- iocore/cache/Makefile
- iocore/dns/Makefile
- iocore/eventsystem/Makefile
- iocore/hostdb/Makefile
- iocore/net/Makefile
- iocore/net/quic/Makefile
- iocore/utils/Makefile
- lib/Makefile
- src/tscpp/api/Makefile
- src/cripts/Makefile
- lib/fastlz/Makefile
- lib/swoc/Makefile
- lib/yamlcpp/Makefile
- mgmt/Makefile
- mgmt/rpc/Makefile
- mgmt/config/Makefile
- plugins/Makefile
- proxy/Makefile
- proxy/hdrs/Makefile
- proxy/http/Makefile
- proxy/http/remap/Makefile
- proxy/http2/Makefile
- proxy/http3/Makefile
- proxy/logging/Makefile
- proxy/shared/Makefile
- rc/Makefile
- rc/trafficserver
- rc/trafficserver.conf
- rc/trafficserver.service
- src/tscpp/util/Makefile
- src/tscore/Makefile
- src/records/Makefile
- src/api/Makefile
- tools/Makefile
- tools/trafficserver.pc
- tools/tsxs
- tools/benchmark/Makefile
- tests/Makefile
-])
-
-# -----------------------------------------------------------------------------
-# 7. autoheader TEMPLATES
-
-AC_OUTPUT
-
-AC_MSG_NOTICE([Build option summary:
- CC: $CC
- CXX: $CXX
- CPP: $CPP
- LD: $LD
- AR: $AR
- RANLIB: $RANLIB
- NM: $NM
- CFLAGS: $CFLAGS
- CXXFLAGS: $CXXFLAGS
- CPPFLAGS: $CPPFLAGS
- LDFLAGS: $LDFLAGS
- AM@&t@_CFLAGS: $AM_CFLAGS
- AM@&t@_CXXFLAGS: $AM_CXXFLAGS
- AM@&t@_CPPFLAGS: $AM_CPPFLAGS
- AM@&t@_LDFLAGS: $AM_LDFLAGS
- TS_INCLUDES: $TS_INCLUDES
- OPENSSL_LDFLAGS: $OPENSSL_LDFLAGS
- OPENSSL_INCLUDES: $OPENSSL_INCLUDES
- YAMLCPP_LDFLAGS: $YAMLCPP_LDFLAGS
- YAMLCPP_INCLUDES: $YAMLCPP_INCLUDES
- SWOC_LDFLAGS: $SWOC_LDFLAGS
- SWOC_INCLUDES: $SWOC_INCLUDES
- NURAFT_LDFLAGS: $NURAFT_LDFLAGS
- NURAFT_INCLUDES: $NURAFT_INCLUDES
-])
diff --git a/doc/Makefile.am b/doc/Makefile.am
deleted file mode 100644
index 10e6f2f81f..0000000000
--- a/doc/Makefile.am
+++ /dev/null
@@ -1,144 +0,0 @@
-# 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.
-
-.PHONY: help dirhtml singlehtml epub latex man changes linkcheck doxygen
-
-# You can set these variables from the command line.
-PAPER = letter
-BUILDDIR = docbuild
-
-if BUILD_DOCS
-
-SUBDIRS = uml
-
-if BUILD_MANPAGES
-
-man1_MANS = $(TS_MAN1_MANPAGES)
-man3_MANS = $(TS_MAN3_MANPAGES)
-man5_MANS = $(TS_MAN5_MANPAGES)
-man8_MANS = $(TS_MAN8_MANPAGES)
-
-$(man1_MANS) $(man3_MANS) $(man5_MANS) $(man8_MANS): man
-
-# Hook the 'all' target so that the man pages get generated in the "all" target, prior
-# to "make install". If we leave it to "make install" time, then the man pages are likely
-# to me generated as root.
-all-am: $(man1_MANS) $(man3_MANS) $(man5_MANS) $(man8_MANS)
-
-endif # BUILD_MANPAGES
-
-# [amc] LaTex apparently doesn't work as of Sphinx 1.6.1
-# see https://media.readthedocs.org/pdf/sphinx/1.6.3/sphinx.pdf
-# section 24.3.2 around page 247, third item for 'NotImplementedError', so this is kind of useless.
-
-# Building with errors as warnings is fragile. What works for English may not
-# when translated into Japanese, for example. To address this, we have the
-# default configuration be to treat warnings as errors, but give up if the user
-# passes SPHINXOPTS on the command line.
-ALLSPHINXOPTS = $(or $(SPHINXOPTS),-W)
-# the i18n builder cannot share the environment and doctrees with the others
-I18NSPHINXOPTS = $(SPHINXOPTS)
-
-# The PAPER setting variables requires recursive make variable expansion, which automake
-# detects as non-portable. We bounce this through a shell script and do the expansion there.
-SBUILD = PAPEROPT_a4="$(PAPEROPT_a4)" PAPEROPT_letter="$(PAPEROPT_letter)" PAPER="$(PAPER)" \
- PLANTUML_JAR="$(shell $(srcdir)/ext/plantuml_fetch.sh | tail -1)" \
- $(srcdir)/sbuild "$(SPHINXBUILD)" \
- -c $(srcdir) \
- $(ALLSPHINXOPTS)
-
-html-local:
- $(SBUILD) -d $(BUILDDIR)/doctrees -b html $(srcdir) $(BUILDDIR)/html
- @echo
- @echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
-
-dirhtml:
- $(SBUILD) -d $(BUILDDIR)/doctrees -b dirhtml $(srcdir) $(BUILDDIR)/html
- @echo
- @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
-
-singlehtml:
- $(SBUILD) -d $(BUILDDIR)/doctrees -b singlehtml $(srcdir) $(BUILDDIR)/singlehtml
- @echo
- @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
-
-epub:
- $(SBUILD) -d $(BUILDDIR)/doctrees -b epub $(srcdir) $(BUILDDIR)/epub
- @echo
- @echo "Build finished. The epub file is in $(BUILDDIR)/epub."
-
-latex:
- $(SBUILD) -d $(BUILDDIR)/doctrees -b latex $(srcdir) $(BUILDDIR)/latex
- @echo
- @echo "Build finished. The epub file is in $(BUILDDIR)/latex."
-
-man:
- $(SBUILD) -d $(BUILDDIR)/doctrees -b man $(srcdir) $(BUILDDIR)/man
- @echo
- @echo "Build finished. The man pages are in $(BUILDDIR)/man."
-
-changes:
- @echo FIXME
-
-linkcheck:
- @echo FIXME
-
-else # NOT BUILD_DOCS
-
-html-local:
- @echo "Documentation not enabled. See configure --enable-docs."
-
-dirhtml:
- @echo "Documentation not enabled. See configure --enable-docs."
-
-singlehtml:
- @echo "Documentation not enabled. See configure --enable-docs."
-
-epub:
- @echo "Documentation not enabled. See configure --enable-docs."
-
-latex:
- @echo "Documentation not enabled. See configure --enable-docs."
-
-man:
- @echo "Documentation not enabled. See configure --enable-docs."
-
-changes:
- @echo "Documentation not enabled. See configure --enable-docs."
-
-linkcheck:
- @echo "Documentation not enabled. See configure --enable-docs."
-
-endif # BUILD_DOCS
-
-clean-local:
- -rm -rf $(BUILDDIR)/* _build/html/* xml
-
-doxygen: Doxyfile
- $(DOXYGEN)
-
-help:
- @echo "Please use \`make <target>' where <target> is one of"
- @echo " html to make standalone HTML files"
- @echo " dirhtml to make HTML files named index.html in directories"
- @echo " singlehtml to make a single large HTML file"
- @echo " epub to make an epub"
- @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
- @echo " latexpdf to make LaTeX files and run them through pdflatex"
- @echo " man to make manual pages"
- @echo " changes to make an overview of all changed/added/deprecated items"
- @echo " linkcheck to check all external links for integrity"
-
diff --git a/doc/admin-guide/installation/index.en.rst b/doc/admin-guide/installation/index.en.rst
index b3fa4e843d..d94f996025 100644
--- a/doc/admin-guide/installation/index.en.rst
+++ b/doc/admin-guide/installation/index.en.rst
@@ -100,10 +100,10 @@ Build Dependencies
In order to build Traffic Server from source you will need the following
development tools and libraries installed:
+- cmake
+- ninja
- pkgconfig
-- libtool
- gcc (>= 4.3 or clang > 3.0)
-- GNU make
- openssl (libssl-dev for Ubuntu 16.04)
- pcre (libpcre3-dev for Ubuntu 16.04)
- libcap
@@ -116,78 +116,67 @@ development tools and libraries installed:
If you're building from a git clone, you'll also need:
- git
-- autoconf
-- automake
+- cmake
+- ninja
- build-essential (for Ubuntu)
-- libtool (for Ubuntu)
-
-.. _admin-layouts:
-
-Layouts
--------
-
-.. _admin-preparing-the-source-tree:
-
-Preparing the Source Tree
--------------------------
-
-If you are building from a checkout of the Git repository, you will need to
-prepare the source tree by regenerating the configuration scripts. This is
-performed by running::
-
- autoreconf -if
-
-At the base directory of your local clone.
.. _admin-configuration-options:
Configuration Options
---------------------
-|TS| uses the standard ``configure`` script method of configuring the source
-tree for building. A full list of available options may always be obtained by
-running the following in the base directory of your unpackaged archive or Git
-working copy::
+|TS| uses ``cmake`` for building from source. You must specify a build
+directory to get started.
- ./configure --help
+ cmake -B build
-#. A ``configure`` script will be generated from ``configure.ac`` which may now
- be used to configure the source tree for your build. ::
+#. You can configure the build interactively by running ``ccmake``
- ./configure --prefix=/opt/ats
+ ccmake build
By default, Traffic Server will be built to use the ``nobody`` user and group.
- You may change this with the ``--with-user`` argument to ``configure``::
+ You may change this by setting the ``WITH_USER`` variable::
- ./configure --prefix=/opt/ats --with-user=tserver
+ cmake -B build -DWITH_USER=tserver
If dependencies are not in standard paths (``/usr/local`` or ``/usr``),
- you may need to pass options to ``configure`` to account for that::
+ you may need to pass options to ``cmake`` to account for that::
- ./configure --prefix=/opt/ats --with-lua=/opt/csw
+ cmake -B build -DCMAKE_INSTALL_PREFIX=/opt/ats luajit_ROOT=/opt/csw
- Most ``configure`` path-options accept a format of "*INCLUDE_PATH*:*LIBRARY_PATH*"::
+ If you build |TS| with LLVM toolchain installed in optional path, you need to specify
+ all of them explicitly in some cases.
- ./configure --prefix=/opt/ats --with-pcre=/opt/csw/include:/opt/csw/lib/amd64
+ cmake -B build -DCMAKE_INSTALL_PREFIX=/opt/ats CC=/opt/bin/clang CXX=/opt/bin/clang++ LDFLAGS=-fuse-ld=lld
- If you build |TS| with LLVM toolchain installed in optional path, you need to specify
- all of them explicitly in some cases. - e.g. ThinLTO by ``--enable-lto``::
+ To enable LTO builds, you can set the variable ``CMAKE_INTERPROCEDURAL_OPTIMIZATION`` to ``ON``
+
+ You might be interested in using cmake presets to configure your build.
+ Using presets allows you to save various configurations by name. Look at the
+ ``CMakePresets.json`` file for examples. You can add local presets by
+ creating a ``CMakeUserPresets.json`` file. Here is an example of building
+ |TS| using a preset ::
+
+ cmake --preset default
+ cmake --build build-default
+ cmake --install build-default
- ./configure --prefix=/opt/ats --enable-lto CC=/opt/bin/clang CXX=/opt/bin/clang++ LD=/opt/bin/ld.lld AR=/opt/bin/llvm-ar NM=/opt/bin/llvm-nm RANLIB=/opt/bin/llvm-ranlib
+ For more information on presets and building with cmake, please see `CMake
+ Reference Documentation <https://cmake.org/cmake/help/latest/>`_
#. Once the source tree has been configured, you may proceed on to building with
- the generated Makefiles. The ``make check`` command may be used to perform
+ the generated Makefiles. The ``test`` target may be used to perform
sanity checks on the resulting build, prior to installation, and it is
recommended that you use this. ::
- make
- make check
+ cmake --build build
+ cmake --build -t test
#. With the source built and checked, you may now install all of the binaries,
header files, documentation, and other artifacts to their final locations on
your system. ::
- sudo make install
+ sudo cmake --install build
#. Finally, it is recommended that you run the regression test suite. Please note
that the regression tests will only be successful with the default layout. ::
diff --git a/doc/getting-started/index.en.rst b/doc/getting-started/index.en.rst
index 95dcb58a50..db2d4922fc 100644
--- a/doc/getting-started/index.en.rst
+++ b/doc/getting-started/index.en.rst
@@ -167,14 +167,13 @@ To build |TS| from a Git clone (the method we will be using in this guide), you
will also need the following:
- git
-- autoconf
-- automake
+- cmake
+- ninja
In this guide, |TS| will be built to use the default ``nobody`` user and group
and will be installed to ``/opt/ts``. It is assumed that all of the dependencies
are located in standard paths. If this is not the case, you may need to use the
-appropriate ``--with-<package>`` options as detailed in the output of
-``./configure --help``.
+appropriate ``-D<package>_ROOT`` variables.
#. Clone the repository (you may skip this if you have downloaded an archive of
the source code to build a specific official release of |TS| instead of the
@@ -186,23 +185,18 @@ appropriate ``--with-<package>`` options as detailed in the output of
cd trafficserver/
-#. If you have cloned the repository from Git, you will need to generate the
- ``configure`` script before proceeding::
-
- autoreconf -if
-
#. Configure the source tree::
- ./configure --prefix=/opt/ts
+ cmake -B build -DCMAKE_INSTALL_PREFIX=/opt/ts
-#. Build |TS| with the generated Makefiles, and test the results::
+#. Build |TS| with the generated build, and test the results::
- make
- make check
+ cmake --build build
+ cmake --build build -t test
#. Install |TS| to the configured location::
- sudo make install
+ sudo cmake --install build
#. Optionally, you may find it prudent to run the regression tests on your newly
installed |TS|::
diff --git a/doc/uml/Makefile.am b/doc/uml/Makefile.am
deleted file mode 100644
index bd0b872817..0000000000
--- a/doc/uml/Makefile.am
+++ /dev/null
@@ -1,61 +0,0 @@
-# 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.
-
-.PHONY: jar-check
-
-if BUILD_DOCS
-images := $(patsubst %.uml,images/%.svg,$(wildcard *.uml))
-images += $(patsubst %.plantuml,images/%.svg,$(wildcard *.plantuml))
-PLANTUML_JAR := $(shell $(srcdir)/../ext/plantuml_fetch.sh | tail -1)
-
-all-am: jar-check $(images)
-endif
-
-# These are handle when the make target comes from the base doc makefile.
-# In cases the .SVG files are built.
-
-html-local: all-am
-
-dirhtml: all-am
-
-singlehtml: all-am
-
-epub: all-am
-
-latex: all-am
-
-man: all-am
-
-images/%.svg : %.uml
- $(JAVA) -jar $(PLANTUML_JAR) -o images -tsvg $<
-
-images/%.svg : %.plantuml
- $(JAVA) -jar $(PLANTUML_JAR) -o images -tsvg $<
-
-clean-local:
- rm -f images/*.svg
-
-jar-check:
- @if [ -z "$(PLANTUML_JAR)" ] ; then \
- echo plantuml jar file variable not set.; \
- exit 1; \
- elif [ ! -r "$(PLANTUML_JAR)" ] ; then \
- echo plantuml jar \'${PLANTUML_JAR}\' not readable.; \
- exit 1; \
- elif [ -d "${PLANTUML_JAR}" ] ; then \
- echo plantuml jar not downloaded to \'${PLANTUML_JAR}\'.; \
- exit 1; \
- fi
diff --git a/example/Makefile.am b/example/Makefile.am
deleted file mode 100644
index 2975563464..0000000000
--- a/example/Makefile.am
+++ /dev/null
@@ -1,19 +0,0 @@
-# example Makefile.am
-#
-# 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.
-
-SUBDIRS = plugins
diff --git a/example/plugins/Makefile.am b/example/plugins/Makefile.am
deleted file mode 100644
index d97e7824ff..0000000000
--- a/example/plugins/Makefile.am
+++ /dev/null
@@ -1,19 +0,0 @@
-# example/plugins Makefile.am
-#
-# 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.
-
-SUBDIRS = c-api
diff --git a/example/plugins/c-api/Makefile.am b/example/plugins/c-api/Makefile.am
deleted file mode 100644
index 43e56e8c84..0000000000
--- a/example/plugins/c-api/Makefile.am
+++ /dev/null
@@ -1,114 +0,0 @@
-# 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)/mk/plugins.mk
-include $(top_srcdir)/mk/tidy.mk
-
-AM_CXXFLAGS += -Wno-unused-variable
-AM_LDFLAGS = $(TS_PLUGIN_LD_FLAGS)
-
-if BUILD_EXAMPLE_PLUGINS
-
-example_Plugins = \
- add_header.la \
- append_transform.la \
- basic_auth.la \
- bnull_transform.la \
- cert_update.la \
- request_buffer.la \
- cache_scan.la \
- client_context_dump.la \
- denylist_0.la \
- denylist_1.la \
- file_1.la \
- hello.la \
- intercept.la \
- lifecycle_plugin.la \
- null_transform.la \
- output_header.la \
- passthru.la \
- protocol_stack.la \
- protocol.la \
- psi.la \
- query_remap.la \
- redirect_1.la \
- remap.la \
- remap_header_add.la \
- replace_header.la \
- response_header_1.la \
- secure_link.la \
- server_push.la \
- server_transform.la \
- session_hooks.la \
- ssl_preaccept.la \
- ssl_sni_allowlist.la \
- ssl_sni.la \
- statistic.la \
- thread_1.la \
- txn_data_sink.la \
- version.la \
- disable_http2.la \
- verify_cert.la \
- vconn_args.la
-
-pkglib_LTLIBRARIES = $(example_Plugins)
-
-endif
-
-add_header_la_SOURCES = add_header/add_header.cc
-append_transform_la_SOURCES = append_transform/append_transform.cc
-basic_auth_la_SOURCES = basic_auth/basic_auth.cc
-denylist_0_la_SOURCES = denylist_0/denylist_0.cc
-denylist_1_la_SOURCES = denylist_1/denylist_1.cc
-bnull_transform_la_SOURCES = bnull_transform/bnull_transform.cc
-cert_update_la_SOURCES = cert_update/cert_update.cc
-request_buffer_la_SOURCES = request_buffer/request_buffer.cc
-cache_scan_la_SOURCES = cache_scan/cache_scan.cc
-client_context_dump_la_SOURCES = client_context_dump/client_context_dump.cc
-file_1_la_SOURCES = file_1/file_1.cc
-hello_la_SOURCES = hello/hello.cc
-intercept_la_SOURCES = intercept/intercept.cc
-lifecycle_plugin_la_SOURCES = lifecycle_plugin/lifecycle_plugin.cc
-null_transform_la_SOURCES = null_transform/null_transform.cc
-output_header_la_SOURCES = output_header/output_header.cc
-passthru_la_SOURCES = passthru/passthru.cc
-protocol_la_SOURCES = protocol/Protocol.cc protocol/TxnSM.cc
-protocol_stack_la_SOURCES = protocol_stack/protocol_stack.cc
-psi_la_SOURCES = thread_pool/psi.cc thread_pool/thread.cc
-query_remap_la_SOURCES = query_remap/query_remap.cc
-remap_header_add_la_SOURCES = remap_header_add/remap_header_add.cc
-remap_la_SOURCES = remap/remap.cc
-replace_header_la_SOURCES = replace_header/replace_header.cc
-response_header_1_la_SOURCES = response_header_1/response_header_1.cc
-secure_link_la_SOURCES = secure_link/secure_link.cc
-server_push_la_SOURCES = server_push/server_push.cc
-server_transform_la_SOURCES = server_transform/server_transform.cc
-ssl_preaccept_la_SOURCES = ssl_preaccept/ssl_preaccept.cc
-ssl_sni_la_SOURCES = ssl_sni/ssl_sni.cc
-ssl_sni_allowlist_la_SOURCES = ssl_sni_allowlist/ssl_sni_allowlist.cc
-disable_http2_la_SOURCES = disable_http2/disable_http2.cc
-verify_cert_la_SOURCES = verify_cert/verify_cert.cc
-statistic_la_SOURCES = statistic/statistic.cc
-thread_1_la_SOURCES = thread_1/thread_1.cc
-txn_data_sink_la_SOURCES = txn_data_sink/txn_data_sink.cc
-version_la_SOURCES = version/version.cc
-redirect_1_la_SOURCES = redirect_1/redirect_1.cc
-session_hooks_la_SOURCES = session_hooks/session_hooks.cc
-vconn_args_la_SOURCES = vconn_args/vconn_args.cc
-
-clang-tidy-local: $(DIST_SOURCES)
- $(CXX_Clang_Tidy)
- $(CC_Clang_Tidy)
diff --git a/example/plugins/c-api/thread_pool/include/Makefile.am b/example/plugins/c-api/thread_pool/include/Makefile.am
deleted file mode 100644
index f177fec482..0000000000
--- a/example/plugins/c-api/thread_pool/include/Makefile.am
+++ /dev/null
@@ -1,23 +0,0 @@
-# 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.
-
-all: gen
-
-gen: gen.cc
- $(CC) -o gen gen.cc
-
-clean-local:
- rm -f gen gen.o
diff --git a/include/Makefile.am b/include/Makefile.am
deleted file mode 100644
index a7f7eeb456..0000000000
--- a/include/Makefile.am
+++ /dev/null
@@ -1,19 +0,0 @@
-# include Makefile.am
-#
-# 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.
-
-SUBDIRS = ts tscpp/api tscpp/util
diff --git a/include/ts/Makefile.am b/include/ts/Makefile.am
deleted file mode 100644
index d3e8b2896a..0000000000
--- a/include/ts/Makefile.am
+++ /dev/null
@@ -1,31 +0,0 @@
-# include/ts Makefile.am
-#
-# 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.
-
-library_includedir=$(includedir)/ts
-
-library_include_HEADERS = \
- apidefs.h \
- DbgCtl.h \
- ts.h \
- remap.h \
- experimental.h \
- parentselectdefs.h
-
-noinst_HEADERS = \
- InkAPIPrivateIOCore.h \
- remap_version.h
diff --git a/include/tscore/ink_config.h.in b/include/tscore/ink_config.h.in
deleted file mode 100644
index 0d9bd2e1bd..0000000000
--- a/include/tscore/ink_config.h.in
+++ /dev/null
@@ -1,130 +0,0 @@
-/** @file
-
- Some small general interest definitions. The general standard is to
- prefix these defines with TS_.
-
- @section license License
-
- 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.
- */
-
-#pragma once
-
-// Note: All "defines" should be prefixed with TS_ when appropriate, please
-// don't use ATS_ any more.
-
-// Note 2: If you make changes here, please update the traffic_layout.cc file as well.
-
-/* GENERATED FILE WARNING! DO NOT EDIT ink_config.h
- *
- * You must modify ink_config.h.in instead.
- *
- */
-
-/* Include automake generated defines
- */
-#include "ink_autoconf.h"
-
-// Helper macro to convert integer defines into string literals
-#define _TS_STR(x) #x
-#define TS_STR(x) _TS_STR(x)
-
-/* clang-format off */
-#define BUILD_MACHINE "@build_machine@"
-#define BUILD_PERSON "@build_person@"
-#define BUILD_GROUP "@build_group@"
-#define BUILD_NUMBER "@build_number@"
-
-/* Libraries */
-#define TS_HAS_JEMALLOC @jemalloch@
-#define TS_HAS_MIMALLOC @mimalloch@
-
-#define TS_USE_MALLOC_ALLOCATOR @enable_malloc_allocator@
-
-/* Features */
-#define TS_HAS_IN6_IS_ADDR_UNSPECIFIED @has_in6_is_addr_unspecified@
-#define TS_HAS_BACKTRACE @has_backtrace@
-#define TS_HAS_PROFILER @has_profiler@
-#define TS_USE_FAST_SDK @use_fast_sdk@
-#define TS_ENABLE_FIPS @enable_fips@
-#define TS_USE_DIAGS @use_diags@
-#define TS_USE_EPOLL @use_epoll@
-#define TS_USE_KQUEUE @use_kqueue@
-#define TS_USE_POSIX_CAP @use_posix_cap@
-#define TS_USE_TPROXY @use_tproxy@
-#define TS_HAS_SO_MARK @has_so_mark@
-#define TS_HAS_IP_TOS @has_ip_tos@
-#define TS_USE_HWLOC @use_hwloc@
-#define TS_USE_TLS_ASYNC @use_tls_async@
-#define TS_USE_HELLO_CB @use_hello_cb@
-#define TS_USE_SET_RBIO @use_set_rbio@
-#define TS_USE_GET_DH_2048_256 @use_dh_get_2048_256@
-#define TS_USE_TLS13 @use_tls13@
-#define TS_USE_QUIC @use_quic@
-#define TS_HAS_QUICHE @has_quiche@
-#define TS_USE_TLS_SET_CIPHERSUITES @use_tls_set_ciphersuites@
-#define TS_HAS_TLS_KEYLOGGING @has_tls_keylogging@
-#define TS_USE_LINUX_IO_URING @use_linux_io_uring@
-#define TS_USE_REMOTE_UNWINDING @use_remote_unwinding@
-#define TS_HAS_TLS_EARLY_DATA @has_tls_early_data@
-#define TS_HAS_TLS_SESSION_TICKET @has_tls_session_ticket@
-#define TS_HAS_VERIFY_CERT_STORE @has_verify_cert_store@
-
-#define TS_USE_HRW_GEOIP @use_hrw_geoip@
-#define TS_USE_HRW_MAXMINDDB @use_hrw_maxminddb@
-
-#define TS_HAS_SO_PEERCRED @has_so_peercred@
-
-/* OS API definitions */
-#define TS_IP_TRANSPARENT @ip_transparent@
-#define TS_HAS_128BIT_CAS @has_128bit_cas@
-
-/* API */
-#define TS_HAS_TESTS @has_tests@
-
-#define TS_MAX_THREADS_IN_EACH_THREAD_TYPE @max_threads_per_type@
-#define TS_MAX_NUMBER_EVENT_THREADS @max_event_threads@
-
-#define TS_MAX_HOST_NAME_LEN @max_host_name_len@
-
-/* Defaults for user / group */
-#define TS_PKGSYSUSER "@pkgsysuser@"
-#define TS_PKGSYSGROUP "@pkgsysgroup@"
-
-/* Various "build" defines */
-#define TS_BUILD_PREFIX "@prefix@"
-#define TS_BUILD_EXEC_PREFIX "@rel_exec_prefix@"
-#define TS_BUILD_BINDIR "@rel_bindir@"
-#define TS_BUILD_SBINDIR "@rel_sbindir@"
-#define TS_BUILD_SYSCONFDIR "@rel_sysconfdir@"
-#define TS_BUILD_DATADIR "@rel_datadir@"
-#define TS_BUILD_INCLUDEDIR "@rel_includedir@"
-#define TS_BUILD_LIBDIR "@rel_libdir@"
-#define TS_BUILD_LIBEXECDIR "@rel_libexecdir@"
-#define TS_BUILD_LOCALSTATEDIR "@rel_localstatedir@"
-#define TS_BUILD_RUNTIMEDIR "@rel_runtimedir@"
-#define TS_BUILD_LOGDIR "@rel_logdir@"
-#define TS_BUILD_MANDIR "@rel_mandir@"
-#define TS_BUILD_CACHEDIR "@rel_cachedir@"
-#define TS_BUILD_INFODIR "@rel_infodir@"
-
-#define TS_ABS_TOP_SRCDIR "@abs_top_srcdir@"
-
-#define TS_BUILD_CANONICAL_HOST "@host@"
-
-static const int DEFAULT_STACKSIZE = @default_stack_size@;
-/* clang-format on */
diff --git a/include/tscpp/api/Makefile.am b/include/tscpp/api/Makefile.am
deleted file mode 100644
index 556e0a9b69..0000000000
--- a/include/tscpp/api/Makefile.am
+++ /dev/null
@@ -1,48 +0,0 @@
-#
-# 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.
-
-library_includedir = $(includedir)/tscpp/api
-
-library_include_HEADERS = \
- Async.h \
- AsyncHttpFetch.h \
- AsyncTimer.h \
- CaseInsensitiveStringComparator.h \
- Cleanup.h \
- ClientRequest.h \
- Continuation.h \
- GlobalPlugin.h \
- GzipDeflateTransformation.h \
- GzipInflateTransformation.h \
- Headers.h \
- HttpMethod.h \
- HttpStatus.h \
- HttpVersion.h \
- InterceptPlugin.h \
- Logger.h \
- Plugin.h \
- PluginInit.h \
- RemapPlugin.h \
- Request.h \
- Response.h \
- Stat.h \
- Transaction.h \
- TransactionPlugin.h \
- TransformationPlugin.h \
- Url.h \
- noncopyable.h \
- utils.h
diff --git a/include/tscpp/util/Makefile.am b/include/tscpp/util/Makefile.am
deleted file mode 100644
index cdecb3ac6f..0000000000
--- a/include/tscpp/util/Makefile.am
+++ /dev/null
@@ -1,32 +0,0 @@
-# include/tscpp/util Makefile.am
-#
-# 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.
-
-library_includedir=$(includedir)/tscpp/util
-
-library_include_HEADERS = \
- ts_bw.h \
- ts_bw_format.h \
- ts_diag_levels.h \
- ts_ip.h \
- LocalBuffer.h \
- PostScript.h \
- Strerror.h \
- TsSharedMutex.h \
- ts_unit_parser.h \
- ts_time_parser.h \
- YamlCfg.h
diff --git a/lib/Makefile.am b/lib/Makefile.am
deleted file mode 100644
index d9a3f7cb79..0000000000
--- a/lib/Makefile.am
+++ /dev/null
@@ -1,48 +0,0 @@
-# lib Makefile.am
-#
-# 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.
-
-SUBDIRS = . fastlz
-
-# These are broken out because the build and header export are separate actions.
-# Also clang analyzer requires the `all-local` target, which is annoying.
-
-if BUILD_YAML_CPP
-all-local:: yamlcpp
- $(MAKE) -C yamlcpp
-
-clean-local::
- $(MAKE) -C yamlcpp clean
-endif
-
-if EXPORT_YAML_HEADERS
-install-data-local::
- $(MAKE) -C yamlcpp install
-endif
-
-if BUILD_SWOC
-all-local:: swoc
- $(MAKE) -C swoc
-
-clean-local::
- $(MAKE) -C swoc clean
-
-install-data-local::
- $(MAKE) -C swoc install
-
-endif
-
diff --git a/lib/fastlz/Makefile.am b/lib/fastlz/Makefile.am
deleted file mode 100644
index e738b8f81c..0000000000
--- a/lib/fastlz/Makefile.am
+++ /dev/null
@@ -1,28 +0,0 @@
-#
-# Makefile.am for fastlz
-#
-# 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)/mk/tidy.mk
-
-AM_CPPFLAGS += -I$(abs_top_srcdir)/lib/fastlz
-
-noinst_LIBRARIES = libfastlz.a
-
-libfastlz_a_SOURCES = \
- fastlz.h \
- fastlz.cc
diff --git a/lib/swoc/Makefile.am b/lib/swoc/Makefile.am
deleted file mode 100644
index 118e09c835..0000000000
--- a/lib/swoc/Makefile.am
+++ /dev/null
@@ -1,64 +0,0 @@
-# swoc Makefile.am
-#
-# 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.
-
-lib_LTLIBRARIES = libtsswoc.la
-
-library_includedir=$(includedir)/swoc
-
-AM_CPPFLAGS += @SWOC_INCLUDES@
-
-libtsswoc_la_LDFLAGS = @AM_LDFLAGS@ -no-undefined -release 1.5.5
-libtsswoc_la_SOURCES = \
- src/ArenaWriter.cc src/bw_format.cc src/bw_ip_format.cc src/Errata.cc src/MemArena.cc src/RBTree.cc src/swoc_file.cc src/swoc_ip.cc src/TextView.cc src/string_view_util.cc
-
-if EXPORT_SWOC_HEADERS
-library_include_HEADERS = \
- include/swoc/ArenaWriter.h \
- include/swoc/BufferWriter.h \
- include/swoc/bwf_base.h \
- include/swoc/bwf_ex.h \
- include/swoc/bwf_fwd.h \
- include/swoc/bwf_ip.h \
- include/swoc/bwf_std.h \
- include/swoc/DiscreteRange.h \
- include/swoc/Errata.h \
- include/swoc/IntrusiveDList.h \
- include/swoc/IntrusiveHashMap.h \
- include/swoc/IPAddr.h \
- include/swoc/IPEndpoint.h \
- include/swoc/IPRange.h \
- include/swoc/IPSrv.h \
- include/swoc/Lexicon.h \
- include/swoc/MemArena.h \
- include/swoc/MemSpan.h \
- include/swoc/RBTree.h \
- include/swoc/Scalar.h \
- include/swoc/swoc_file.h \
- include/swoc/swoc_ip.h \
- include/swoc/swoc_meta.h \
- include/swoc/swoc_version.h\
- include/swoc/string_view_util.h \
- include/swoc/TextView.h \
- include/swoc/Vectray.h \
- include/swoc/HashFNV.h
-endif
-
-clean-local:
-
-clang-tidy-local: $(DIST_SOURCES)
- $(CXX_Clang_Tidy)
diff --git a/lib/yamlcpp/Makefile.am b/lib/yamlcpp/Makefile.am
deleted file mode 100644
index 655e3dff38..0000000000
--- a/lib/yamlcpp/Makefile.am
+++ /dev/null
@@ -1,66 +0,0 @@
-#
-# Makefile.am for yaml-cpp library
-#
-# 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.
-
-AM_CPPFLAGS += -I$(abs_top_srcdir)/lib/yamlcpp/include
-
-noinst_LTLIBRARIES = libyamlcpp.la
-
-libyamlcpp_la_SOURCES = src/binary.cpp \
-src/convert.cpp \
-src/depthguard.cpp \
-src/directives.cpp \
-src/emit.cpp \
-src/emitfromevents.cpp \
-src/emitter.cpp \
-src/emitterstate.cpp \
-src/emitterutils.cpp \
-src/exceptions.cpp \
-src/exp.cpp \
-src/memory.cpp \
-src/node.cpp \
-src/node_data.cpp \
-src/nodebuilder.cpp \
-src/nodeevents.cpp \
-src/null.cpp \
-src/ostream_wrapper.cpp \
-src/parse.cpp \
-src/parser.cpp \
-src/regex_yaml.cpp \
-src/scanner.cpp \
-src/scanscalar.cpp \
-src/scantag.cpp \
-src/scantoken.cpp \
-src/simplekey.cpp \
-src/singledocparser.cpp \
-src/stream.cpp \
-src/tag.cpp
-
-
-yamlcpp_includedir=$(includedir)/yaml-cpp
-yamlcpp_include_HEADERS = \
- $(srcdir)/include/yaml-cpp/*.h
-
-yamlcpp_node_includedir=$(includedir)/yaml-cpp/node
-yamlcpp_node_include_HEADERS = \
- $(srcdir)/include/yaml-cpp/node/*.h
-
-yamlcpp_node_detail_includedir=$(includedir)/yaml-cpp/node/detail
-yamlcpp_node_detail_include_HEADERS = \
- $(srcdir)/include/yaml-cpp/node/detail/*.h
-
diff --git a/m4/atomic.m4 b/m4/atomic.m4
deleted file mode 100644
index 266eb29d4a..0000000000
--- a/m4/atomic.m4
+++ /dev/null
@@ -1,38 +0,0 @@
-dnl -------------------------------------------------------- -*- autoconf -*-
-dnl Licensed to the Apache Software Foundation (ASF) under one or more
-dnl contributor license agreements. See the NOTICE file distributed with
-dnl this work for additional information regarding copyright ownership.
-dnl The ASF licenses this file to You under the Apache License, Version 2.0
-dnl (the "License"); you may not use this file except in compliance with
-dnl the License. You may obtain a copy of the License at
-dnl
-dnl http://www.apache.org/licenses/LICENSE-2.0
-dnl
-dnl Unless required by applicable law or agreed to in writing, software
-dnl distributed under the License is distributed on an "AS IS" BASIS,
-dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-dnl See the License for the specific language governing permissions and
-dnl limitations under the License.
-
-dnl -----------------------------------------------------------------
-dnl atomic.m4: Trafficserver's autoconf macros for testing atomic support
-dnl
-
-dnl
-dnl TS_CHECK_ATOMIC: try to figure out the need for -latomic
-dnl
-AC_DEFUN([TS_CHECK_ATOMIC], [
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([[#include <stdint.h>]],
- [[uint64_t val = 0; __atomic_add_fetch(&val, 1, __ATOMIC_RELAXED);]])],
- [AC_DEFINE(HAVE_ATOMIC, 1, [Define to 1 if you have '__atomic' functions.])
- AC_LINK_IFELSE(
- [AC_LANG_PROGRAM([[#include <stdint.h>]],
- [[uint64_t val = 0; __atomic_add_fetch(&val, 1, __ATOMIC_RELAXED);]])],
- [ATOMIC_LIBS=""],
- [ATOMIC_LIBS="-latomic"]
- )],
- [ATOMIC_LIBS=""]
- )
- AC_SUBST([ATOMIC_LIBS])
-])
diff --git a/m4/ax_cc_for_build.m4 b/m4/ax_cc_for_build.m4
deleted file mode 100644
index 42b0629de9..0000000000
--- a/m4/ax_cc_for_build.m4
+++ /dev/null
@@ -1,76 +0,0 @@
-# ===========================================================================
-# https://www.gnu.org/software/autoconf-archive/ax_cc_for_build.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_CC_FOR_BUILD
-#
-# DESCRIPTION
-#
-# Find a build-time compiler. Sets CC_FOR_BUILD and EXEEXT_FOR_BUILD.
-#
-# LICENSE
-#
-# Copyright (c) 2010 Reuben Thomas <rr...@sc3d.org>
-# Copyright (c) 1999 Richard Henderson <rt...@redhat.com>
-#
-# This program is free software: you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by the
-# Free Software Foundation, either version 3 of the License, or (at your
-# option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
-# Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program. If not, see <https://www.gnu.org/licenses/>.
-#
-# As a special exception, the respective Autoconf Macro's copyright owner
-# gives unlimited permission to copy, distribute and modify the configure
-# scripts that are the output of Autoconf when processing the Macro. You
-# need not follow the terms of the GNU General Public License when using
-# or distributing such scripts, even though portions of the text of the
-# Macro appear in them. The GNU General Public License (GPL) does govern
-# all other use of the material that constitutes the Autoconf Macro.
-#
-# This special exception to the GPL applies to versions of the Autoconf
-# Macro released by the Autoconf Archive. When you make and distribute a
-# modified version of the Autoconf Macro, you may extend this special
-# exception to the GPL to apply to your modified version as well.
-
-#serial 3
-
-dnl Get a default for CC_FOR_BUILD to put into Makefile.
-AC_DEFUN([AX_CC_FOR_BUILD],
-[# Put a plausible default for CC_FOR_BUILD in Makefile.
-if test -z "$CC_FOR_BUILD"; then
- CC_FOR_BUILD='$(CC)'
- CXX_FOR_BUILD='$(CXX)'
-fi
-AC_SUBST(CC_FOR_BUILD)
-AC_SUBST(CXX_FOR_BUILD)
-
-# Also set EXEEXT_FOR_BUILD.
-if test "x$cross_compiling" = "xno"; then
- EXEEXT_FOR_BUILD='$(EXEEXT)'
-else
- AC_CACHE_CHECK([for build system executable suffix], bfd_cv_build_exeext,
- [rm -f conftest*
- echo 'int main () { return 0; }' > conftest.c
- bfd_cv_build_exeext=
- ${CC_FOR_BUILD} -o conftest conftest.c 1>&5 2>&5
- for file in conftest.*; do
- case $file in
- *.c | *.o | *.obj | *.ilk | *.pdb) ;;
- *) bfd_cv_build_exeext=`echo $file | sed -e s/conftest//` ;;
- esac
- done
- rm -f conftest*
- test x"${bfd_cv_build_exeext}" = x && bfd_cv_build_exeext=no])
- EXEEXT_FOR_BUILD=""
- test x"${bfd_cv_build_exeext}" != xno && EXEEXT_FOR_BUILD=${bfd_cv_build_exeext}
-fi
-AC_SUBST(EXEEXT_FOR_BUILD)])dnl
diff --git a/m4/ax_check_openssl.m4 b/m4/ax_check_openssl.m4
deleted file mode 100644
index d891407663..0000000000
--- a/m4/ax_check_openssl.m4
+++ /dev/null
@@ -1,136 +0,0 @@
-# ===========================================================================
-# http://www.gnu.org/software/autoconf-archive/ax_check_openssl.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_CHECK_OPENSSL([action-if-found[, action-if-not-found]])
-#
-# DESCRIPTION
-#
-# Look for OpenSSL in a number of default spots, or in a user-selected
-# spot (via --with-openssl). Sets
-#
-# OPENSSL_INCLUDES to the include directives required
-# OPENSSL_LIBS to the -l directives required
-# OPENSSL_LDFLAGS to the -L or -R flags required
-#
-# and calls ACTION-IF-FOUND or ACTION-IF-NOT-FOUND appropriately
-#
-# This macro sets OPENSSL_INCLUDES such that source files should use the
-# openssl/ directory in include directives:
-#
-# #include <openssl/hmac.h>
-#
-# LICENSE
-#
-# Copyright (c) 2009,2010 Zmanda Inc. <http://www.zmanda.com/>
-# Copyright (c) 2009,2010 Dustin J. Mitchell <du...@zmanda.com>
-#
-# Copying and distribution of this file, with or without modification, are
-# permitted in any medium without royalty provided the copyright notice
-# and this notice are preserved. This file is offered as-is, without any
-# warranty.
-
-#serial 8
-
-AU_ALIAS([AX_CHECK_OPENSSL], [AX_CHECK_OPENSSL])
-AC_DEFUN([AX_CHECK_OPENSSL], [
- found=false
- overriden_with_ssl=false
- AC_ARG_WITH([openssl],
- [AS_HELP_STRING([--with-openssl=DIR],
- [root of the OpenSSL directory])],
- [
- case "$withval" in
- "" | y | ye | yes | n | no)
- AC_MSG_ERROR([Invalid --with-openssl value])
- ;;
- *) ssldirs="$withval"
- overriden_with_ssl=true
- ;;
- esac
- ], [
- # if pkg-config is installed and openssl has installed a .pc file,
- # then use that information and don't search ssldirs
- AC_PATH_PROG([PKG_CONFIG], [pkg-config])
- if test x"$PKG_CONFIG" != x""; then
- OPENSSL_LDFLAGS=`$PKG_CONFIG openssl --libs-only-L 2>/dev/null`
- if test $? = 0; then
- OPENSSL_LIBS=`$PKG_CONFIG openssl --libs-only-l 2>/dev/null`
- OPENSSL_INCLUDES=`$PKG_CONFIG openssl --cflags-only-I 2>/dev/null`
- found=true
- fi
- fi
-
- # no such luck; use some default ssldirs
- if ! $found; then
- ssldirs="/usr/local/ssl /usr/lib/ssl /usr/ssl /usr/pkg /usr/sfw /usr/local /opt/local /usr"
- fi
- ]
- )
-
-
- # note that we #include <openssl/foo.h>, so the OpenSSL headers have to be in
- # an 'openssl' subdirectory
-
- if ! $found; then
- OPENSSL_INCLUDES=
- for ssldir in $ssldirs; do
- AC_MSG_CHECKING([for openssl/ssl.h in $ssldir])
- if test -f "$ssldir/include/openssl/ssl.h"; then
- AC_MSG_RESULT([yes])
- OPENSSL_INCLUDES="-I$ssldir/include"
- if test -d "$ssldir/lib64"; then
- OPENSSL_LDFLAGS="-L$ssldir/lib64"
- if test "$overriden_with_ssl"; then
- TS_ADDTO_RPATH(${ssldir}/lib64)
- fi
- else
- OPENSSL_LDFLAGS="-L$ssldir/lib"
- if test "$overriden_with_ssl"; then
- TS_ADDTO_RPATH(${ssldir}/lib)
- fi
- fi
- OPENSSL_LIBS="-lssl -lcrypto"
- found=true
- break
- else
- AC_MSG_RESULT([no])
- fi
- done
-
- # if the file wasn't found, well, go ahead and try the link anyway -- maybe
- # it will just work!
- fi
-
- # try the preprocessor and linker with our new flags,
- # being careful not to pollute the global LIBS, LDFLAGS, and CPPFLAGS
-
- AC_MSG_CHECKING([whether compiling and linking against OpenSSL works])
- echo "Trying link with OPENSSL_LDFLAGS=$OPENSSL_LDFLAGS;" \
- "OPENSSL_LIBS=$OPENSSL_LIBS; OPENSSL_INCLUDES=$OPENSSL_INCLUDES" >&AS_MESSAGE_LOG_FD
-
- save_LIBS="$LIBS"
- save_LDFLAGS="$LDFLAGS"
- save_CPPFLAGS="$CPPFLAGS"
- LDFLAGS="$LDFLAGS $OPENSSL_LDFLAGS"
- LIBS="$OPENSSL_LIBS $LIBS"
- CPPFLAGS="$OPENSSL_INCLUDES $CPPFLAGS"
- AC_LINK_IFELSE(
- [AC_LANG_PROGRAM([#include <openssl/ssl.h>], [SSL_new(NULL)])],
- [
- AC_MSG_RESULT([yes])
- $1
- ], [
- AC_MSG_RESULT([no])
- $2
- ])
- CPPFLAGS="$save_CPPFLAGS"
- LDFLAGS="$save_LDFLAGS"
- LIBS="$save_LIBS"
-
- AC_SUBST([OPENSSL_INCLUDES])
- AC_SUBST([OPENSSL_LIBS])
- AC_SUBST([OPENSSL_LDFLAGS])
-])
diff --git a/m4/ax_compare_version.m4 b/m4/ax_compare_version.m4
deleted file mode 100644
index 9f8c50550d..0000000000
--- a/m4/ax_compare_version.m4
+++ /dev/null
@@ -1,176 +0,0 @@
-# ===========================================================================
-# http://www.gnu.org/software/autoconf-archive/ax_compare_version.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_COMPARE_VERSION(VERSION_A, OP, VERSION_B, [ACTION-IF-TRUE], [ACTION-IF-FALSE])
-#
-# DESCRIPTION
-#
-# This macro compares two version strings. Due to the various number of
-# minor-version numbers that can exist, and the fact that string
-# comparisons are not compatible with numeric comparisons, this is not
-# necessarily trivial to do in a autoconf script. This macro makes doing
-# these comparisons easy.
-#
-# The six basic comparisons are available, as well as checking equality
-# limited to a certain number of minor-version levels.
-#
-# The operator OP determines what type of comparison to do, and can be one
-# of:
-#
-# eq - equal (test A == B)
-# ne - not equal (test A != B)
-# le - less than or equal (test A <= B)
-# ge - greater than or equal (test A >= B)
-# lt - less than (test A < B)
-# gt - greater than (test A > B)
-#
-# Additionally, the eq and ne operator can have a number after it to limit
-# the test to that number of minor versions.
-#
-# eq0 - equal up to the length of the shorter version
-# ne0 - not equal up to the length of the shorter version
-# eqN - equal up to N sub-version levels
-# neN - not equal up to N sub-version levels
-#
-# When the condition is true, shell commands ACTION-IF-TRUE are run,
-# otherwise shell commands ACTION-IF-FALSE are run. The environment
-# variable 'ax_compare_version' is always set to either 'true' or 'false'
-# as well.
-#
-# Examples:
-#
-# AX_COMPARE_VERSION([3.15.7],[lt],[3.15.8])
-# AX_COMPARE_VERSION([3.15],[lt],[3.15.8])
-#
-# would both be true.
-#
-# AX_COMPARE_VERSION([3.15.7],[eq],[3.15.8])
-# AX_COMPARE_VERSION([3.15],[gt],[3.15.8])
-#
-# would both be false.
-#
-# AX_COMPARE_VERSION([3.15.7],[eq2],[3.15.8])
-#
-# would be true because it is only comparing two minor versions.
-#
-# AX_COMPARE_VERSION([3.15.7],[eq0],[3.15])
-#
-# would be true because it is only comparing the lesser number of minor
-# versions of the two values.
-#
-# Note: The characters that separate the version numbers do not matter. An
-# empty string is the same as version 0. OP is evaluated by autoconf, not
-# configure, so must be a string, not a variable.
-#
-# The author would like to acknowledge Guido Draheim whose advice about
-# the m4_case and m4_ifvaln functions make this macro only include the
-# portions necessary to perform the specific comparison specified by the
-# OP argument in the final configure script.
-#
-# LICENSE
-#
-# Copyright (c) 2008 Tim Toolan <to...@ele.uri.edu>
-#
-# Copying and distribution of this file, with or without modification, are
-# permitted in any medium without royalty provided the copyright notice
-# and this notice are preserved. This file is offered as-is, without any
-# warranty.
-
-#serial 11
-
-dnl #########################################################################
-AC_DEFUN([AX_COMPARE_VERSION], [
- AC_REQUIRE([AC_PROG_AWK])
-
- # Used to indicate true or false condition
- ax_compare_version=false
-
- # Convert the two version strings to be compared into a format that
- # allows a simple string comparison. The end result is that a version
- # string of the form 1.12.5-r617 will be converted to the form
- # 0001001200050617. In other words, each number is zero padded to four
- # digits, and non digits are removed.
- AS_VAR_PUSHDEF([A],[ax_compare_version_A])
- A=`echo "$1" | sed -e 's/\([[0-9]]*\)/Z\1Z/g' \
- -e 's/Z\([[0-9]]\)Z/Z0\1Z/g' \
- -e 's/Z\([[0-9]][[0-9]]\)Z/Z0\1Z/g' \
- -e 's/Z\([[0-9]][[0-9]][[0-9]]\)Z/Z0\1Z/g' \
- -e 's/[[^0-9]]//g'`
-
- AS_VAR_PUSHDEF([B],[ax_compare_version_B])
- B=`echo "$3" | sed -e 's/\([[0-9]]*\)/Z\1Z/g' \
- -e 's/Z\([[0-9]]\)Z/Z0\1Z/g' \
- -e 's/Z\([[0-9]][[0-9]]\)Z/Z0\1Z/g' \
- -e 's/Z\([[0-9]][[0-9]][[0-9]]\)Z/Z0\1Z/g' \
- -e 's/[[^0-9]]//g'`
-
- dnl # In the case of le, ge, lt, and gt, the strings are sorted as necessary
- dnl # then the first line is used to determine if the condition is true.
- dnl # The sed right after the echo is to remove any indented white space.
- m4_case(m4_tolower($2),
- [lt],[
- ax_compare_version=`echo "x$A
-x$B" | sed 's/^ *//' | sort -r | sed "s/x${A}/false/;s/x${B}/true/;1q"`
- ],
- [gt],[
- ax_compare_version=`echo "x$A
-x$B" | sed 's/^ *//' | sort | sed "s/x${A}/false/;s/x${B}/true/;1q"`
- ],
- [le],[
- ax_compare_version=`echo "x$A
-x$B" | sed 's/^ *//' | sort | sed "s/x${A}/true/;s/x${B}/false/;1q"`
- ],
- [ge],[
- ax_compare_version=`echo "x$A
-x$B" | sed 's/^ *//' | sort -r | sed "s/x${A}/true/;s/x${B}/false/;1q"`
- ],[
- dnl Split the operator from the subversion count if present.
- m4_bmatch(m4_substr($2,2),
- [0],[
- # A count of zero means use the length of the shorter version.
- # Determine the number of characters in A and B.
- ax_compare_version_len_A=`echo "$A" | $AWK '{print(length)}'`
- ax_compare_version_len_B=`echo "$B" | $AWK '{print(length)}'`
-
- # Set A to no more than B's length and B to no more than A's length.
- A=`echo "$A" | sed "s/\(.\{$ax_compare_version_len_B\}\).*/\1/"`
- B=`echo "$B" | sed "s/\(.\{$ax_compare_version_len_A\}\).*/\1/"`
- ],
- [[0-9]+],[
- # A count greater than zero means use only that many subversions
- A=`echo "$A" | sed "s/\(\([[0-9]]\{4\}\)\{m4_substr($2,2)\}\).*/\1/"`
- B=`echo "$B" | sed "s/\(\([[0-9]]\{4\}\)\{m4_substr($2,2)\}\).*/\1/"`
- ],
- [.+],[
- m4_warn([syntax], [illegal OP numeric parameter: $2])
- ],[])
-
- # Pad zeros at end of numbers to make same length.
- ax_compare_version_tmp_A="$A`echo $B | sed 's/./0/g'`"
- B="$B`echo $A | sed 's/./0/g'`"
- A="$ax_compare_version_tmp_A"
-
- # Check for equality or inequality as necessary.
- m4_case(m4_tolower(m4_substr($2,0,2)),
- [eq],[
- test "x$A" = "x$B" && ax_compare_version=true
- ],
- [ne],[
- test "x$A" != "x$B" && ax_compare_version=true
- ],[
- m4_warn([syntax], [illegal OP parameter: $2])
- ])
- ])
-
- AS_VAR_POPDEF([A])dnl
- AS_VAR_POPDEF([B])dnl
-
- dnl # Execute ACTION-IF-TRUE / ACTION-IF-FALSE.
- if test "$ax_compare_version" = "true" ; then
- m4_ifvaln([$4],[$4],[:])dnl
- m4_ifvaln([$5],[else $5])dnl
- fi
-]) dnl AX_COMPARE_VERSION
diff --git a/m4/ax_compiler_vendor.m4 b/m4/ax_compiler_vendor.m4
deleted file mode 100644
index 73e32ea9ef..0000000000
--- a/m4/ax_compiler_vendor.m4
+++ /dev/null
@@ -1,84 +0,0 @@
-# ===========================================================================
-# http://www.gnu.org/software/autoconf-archive/ax_compiler_vendor.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_COMPILER_VENDOR
-#
-# DESCRIPTION
-#
-# Determine the vendor of the C/C++ compiler, e.g., gnu, intel, ibm, sun,
-# hp, borland, comeau, dec, cray, kai, lcc, metrowerks, sgi, microsoft,
-# watcom, etc. The vendor is returned in the cache variable
-# $ax_cv_c_compiler_vendor for C and $ax_cv_cxx_compiler_vendor for C++.
-#
-# LICENSE
-#
-# Copyright (c) 2008 Steven G. Johnson <st...@alum.mit.edu>
-# Copyright (c) 2008 Matteo Frigo
-#
-# This program is free software: you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by the
-# Free Software Foundation, either version 3 of the License, or (at your
-# option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
-# Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program. If not, see <http://www.gnu.org/licenses/>.
-#
-# As a special exception, the respective Autoconf Macro's copyright owner
-# gives unlimited permission to copy, distribute and modify the configure
-# scripts that are the output of Autoconf when processing the Macro. You
-# need not follow the terms of the GNU General Public License when using
-# or distributing such scripts, even though portions of the text of the
-# Macro appear in them. The GNU General Public License (GPL) does govern
-# all other use of the material that constitutes the Autoconf Macro.
-#
-# This special exception to the GPL applies to versions of the Autoconf
-# Macro released by the Autoconf Archive. When you make and distribute a
-# modified version of the Autoconf Macro, you may extend this special
-# exception to the GPL to apply to your modified version as well.
-
-#serial 11
-
-AC_DEFUN([AX_COMPILER_VENDOR],
-[AC_CACHE_CHECK([for _AC_LANG compiler vendor], ax_cv_[]_AC_LANG_ABBREV[]_compiler_vendor,
- [# note: don't check for gcc first since some other compilers define __GNUC__
- vendors="intel: __ICC,__ECC,__INTEL_COMPILER
- ibm: __xlc__,__xlC__,__IBMC__,__IBMCPP__
- pathscale: __PATHCC__,__PATHSCALE__
- clang: __clang__
- gnu: __GNUC__
- sun: __SUNPRO_C,__SUNPRO_CC
- hp: __HP_cc,__HP_aCC
- dec: __DECC,__DECCXX,__DECC_VER,__DECCXX_VER
- borland: __BORLANDC__,__TURBOC__
- comeau: __COMO__
- cray: _CRAYC
- kai: __KCC
- lcc: __LCC__
- sgi: __sgi,sgi
- microsoft: _MSC_VER
- metrowerks: __MWERKS__
- watcom: __WATCOMC__
- portland: __PGI
- unknown: UNKNOWN"
- for ventest in $vendors; do
- case $ventest in
- *:) vendor=$ventest; continue ;;
- *) vencpp="defined("`echo $ventest | sed 's/,/) || defined(/g'`")" ;;
- esac
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[
- #if !($vencpp)
- thisisanerror;
- #endif
- ])], [break])
- done
- ax_cv_[]_AC_LANG_ABBREV[]_compiler_vendor=`echo $vendor | cut -d: -f1`
- ])
-])
diff --git a/m4/ax_lib_curl.m4 b/m4/ax_lib_curl.m4
deleted file mode 100644
index e7427d3d41..0000000000
--- a/m4/ax_lib_curl.m4
+++ /dev/null
@@ -1,38 +0,0 @@
-# ===========================================================================
-# http://www.gnu.org/software/autoconf-archive/ax_lib_curl.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_LIB_CURL([VERSION],[ACTION-IF-SUCCESS],[ACTION-IF-FAILURE])
-#
-# DESCRIPTION
-#
-# Checks for minimum curl library version VERSION. If successful executes
-# ACTION-IF-SUCCESS otherwise ACTION-IF-FAILURE.
-#
-# Defines CURL_LIBS and CURL_CFLAGS.
-#
-# A simple example:
-#
-# AX_LIB_CURL([7.19.4],,[
-# AC_MSG_ERROR([Your system lacks of libcurl >= 7.19.4])
-# ])
-#
-# This macro is a rearranged version of AC_LIB_CURL from Akos Maroy.
-#
-# LICENSE
-#
-# Copyright (c) 2009 Francesco Salvestrini <sa...@users.sourceforge.net>
-#
-# Copying and distribution of this file, with or without modification, are
-# permitted in any medium without royalty provided the copyright notice
-# and this notice are preserved. This file is offered as-is, without any
-# warranty.
-
-#serial 7
-
-AU_ALIAS([AX_LIB_CURL], [AX_LIB_CURL])
-AC_DEFUN([AX_LIB_CURL], [
- AX_PATH_GENERIC([curl],[$1],['s/^libcurl\ \+//'],[$2],[$3])
-])
diff --git a/m4/ax_path_generic.m4 b/m4/ax_path_generic.m4
deleted file mode 100644
index 6f0a1b1551..0000000000
--- a/m4/ax_path_generic.m4
+++ /dev/null
@@ -1,164 +0,0 @@
-# ===========================================================================
-# http://www.gnu.org/software/autoconf-archive/ax_path_generic.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_PATH_GENERIC(LIBRARY,[MINIMUM-VERSION,[SED-EXPR-EXTRACTOR]],[ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND],[CONFIG-SCRIPTS],[CFLAGS-ARG],[LIBS-ARG])
-#
-# DESCRIPTION
-#
-# Runs the LIBRARY-config script and defines LIBRARY_CFLAGS and
-# LIBRARY_LIBS unless the user had predefined them in the environment.
-#
-# The script must support `--cflags' and `--libs' args. If MINIMUM-VERSION
-# is specified, the script must also support the `--version' arg. If the
-# `--with-library-[exec-]prefix' arguments to ./configure are given, it
-# must also support `--prefix' and `--exec-prefix'. Prefereable use
-# CONFIG-SCRIPTS as config script, CFLAGS-ARG instead of `--cflags` and
-# LIBS-ARG instead of `--libs`, if given.
-#
-# The SED-EXPR-EXTRACTOR parameter representes the expression used in sed
-# to extract the version number. Use it if your 'foo-config --version'
-# dumps something like 'Foo library v1.0.0 (alfa)' instead of '1.0.0'.
-#
-# The macro respects LIBRARY_CONFIG, LIBRARY_CFLAGS and LIBRARY_LIBS
-# variables. If the first one is defined, it specifies the name of the
-# config script to use. If the latter two are defined, the script is not
-# ran at all and their values are used instead (if only one of them is
-# defined, the empty value of the remaining one is still used).
-#
-# Example:
-#
-# AX_PATH_GENERIC(Foo, 1.0.0)
-#
-# would run `foo-config --version' and check that it is at least 1.0.0, if
-# successful the following variables would be defined and substituted:
-#
-# FOO_CFLAGS to `foo-config --cflags`
-# FOO_LIBS to `foo-config --libs`
-#
-# Example:
-#
-# AX_PATH_GENERIC([Bar],,,[
-# AC_MSG_ERROR([Cannot find Bar library])
-# ])
-#
-# would check for bar-config program, defining and substituting the
-# following variables:
-#
-# BAR_CFLAGS to `bar-config --cflags`
-# BAR_LIBS to `bar-config --libs`
-#
-# Example:
-#
-# ./configure BAZ_LIBS=/usr/lib/libbaz.a
-#
-# would link with a static version of baz library even if `baz-config
-# --libs` returns just "-lbaz" that would normally result in using the
-# shared library.
-#
-# This macro is a rearranged version of AX_PATH_GENERIC from Angus Lees.
-#
-# LICENSE
-#
-# Copyright (c) 2009 Francesco Salvestrini <sa...@users.sourceforge.net>
-#
-# Copying and distribution of this file, with or without modification, are
-# permitted in any medium without royalty provided the copyright notice
-# and this notice are preserved. This file is offered as-is, without any
-# warranty.
-
-#serial 11
-
-AU_ALIAS([AX_PATH_GENERIC], [AX_PATH_GENERIC])
-AC_DEFUN([AX_PATH_GENERIC],[
- AC_REQUIRE([AC_PROG_SED])
-
- dnl we're going to need uppercase and lowercase versions of the
- dnl string `LIBRARY'
- pushdef([UP], translit([$1], [a-z], [A-Z]))dnl
- pushdef([DOWN], translit([$1], [A-Z], [a-z]))dnl
-
- AC_ARG_WITH(DOWN-prefix,[AS_HELP_STRING([--with-]DOWN[-prefix=PREFIX], [Prefix where $1 is installed (optional)])],
- DOWN[]_config_prefix="$withval", DOWN[]_config_prefix="")
- AC_ARG_WITH(DOWN-exec-prefix,[AS_HELP_STRING([--with-]DOWN[-exec-prefix=EPREFIX], [Exec prefix where $1 is installed (optional)])],
- DOWN[]_config_exec_prefix="$withval", DOWN[]_config_exec_prefix="")
-
- AC_ARG_VAR(UP[]_CONFIG, [config script used for $1])
- AC_ARG_VAR(UP[]_CFLAGS, [CFLAGS used for $1])
- AC_ARG_VAR(UP[]_LIBS, [LIBS used for $1])
-
- AS_IF([test x$UP[]_CFLAGS != x -o x$UP[]_LIBS != x],[
- dnl Don't run config script at all, use user-provided values instead.
- AC_SUBST(UP[]_CFLAGS)
- AC_SUBST(UP[]_LIBS)
- :
- $4
- ],[
- AS_IF([test x$DOWN[]_config_exec_prefix != x],[
- DOWN[]_config_args="$DOWN[]_config_args --exec-prefix=$DOWN[]_config_exec_prefix"
- AS_IF([test x${UP[]_CONFIG+set} != xset],[
- UP[]_CONFIG=$DOWN[]_config_exec_prefix/bin/DOWN-config
- ])
- ])
- AS_IF([test x$DOWN[]_config_prefix != x],[
- DOWN[]_config_args="$DOWN[]_config_args --prefix=$DOWN[]_config_prefix"
- AS_IF([test x${UP[]_CONFIG+set} != xset],[
- UP[]_CONFIG=$DOWN[]_config_prefix/bin/DOWN-config
- ])
- ])
-
- AC_PATH_PROGS(UP[]_CONFIG,[$6 DOWN-config],[no])
- AS_IF([test "$UP[]_CONFIG" == "no"],[
- :
- $5
- ],[
- dnl Get the CFLAGS from LIBRARY-config script
- AS_IF([test x"$7" == x],[
- UP[]_CFLAGS="`$UP[]_CONFIG $DOWN[]_config_args --cflags`"
- ],[
- UP[]_CFLAGS="`$UP[]_CONFIG $DOWN[]_config_args $7`"
- ])
-
- dnl Get the LIBS from LIBRARY-config script
- AS_IF([test x"$8" == x],[
- UP[]_LIBS="`$UP[]_CONFIG $DOWN[]_config_args --libs`"
- ],[
- UP[]_LIBS="`$UP[]_CONFIG $DOWN[]_config_args $8`"
- ])
-
- AS_IF([test x"$2" != x],[
- dnl Check for provided library version
- AS_IF([test x"$3" != x],[
- dnl Use provided sed expression
- DOWN[]_version="`$UP[]_CONFIG $DOWN[]_config_args --version | $SED -e $3`"
- ],[
- DOWN[]_version="`$UP[]_CONFIG $DOWN[]_config_args --version | $SED -e 's/^\ *\(.*\)\ *$/\1/'`"
- ])
-
- AC_MSG_CHECKING([for $1 ($DOWN[]_version) >= $2])
- AX_COMPARE_VERSION($DOWN[]_version,[ge],[$2],[
- AC_MSG_RESULT([yes])
-
- AC_SUBST(UP[]_CFLAGS)
- AC_SUBST(UP[]_LIBS)
- :
- $4
- ],[
- AC_MSG_RESULT([no])
- :
- $5
- ])
- ],[
- AC_SUBST(UP[]_CFLAGS)
- AC_SUBST(UP[]_LIBS)
- :
- $4
- ])
- ])
- ])
-
- popdef([UP])
- popdef([DOWN])
-])
diff --git a/m4/ax_perl_modules.m4 b/m4/ax_perl_modules.m4
deleted file mode 100644
index 2bdd8655fb..0000000000
--- a/m4/ax_perl_modules.m4
+++ /dev/null
@@ -1,51 +0,0 @@
-# LICENSE
-#
-# Copyright (c) 2009 Dean Povey <po...@wedgetail.com>
-#
-# Copying and distribution of this file, with or without modification, are
-# permitted in any medium without royalty provided the copyright notice
-# and this notice are preserved. This file is offered as-is, without any
-# warranty.
-#
-# Use: AX_PROG_PERL_MODULES([modules ...], true, false )
-#
-# This should only be used after the test for the Perl module in configure.ac.
-#
-#serial 7
-
-AU_ALIAS([AX_PROG_PERL_MODULES], [AX_PROG_PERL_MODULES])
-AC_DEFUN([AX_PROG_PERL_MODULES],[dnl
-
-m4_define([ax_perl_modules])
-m4_foreach([ax_perl_module], m4_split(m4_normalize([$1])),
- [
- m4_append([ax_perl_modules],
- [']m4_bpatsubst(ax_perl_module,=,[ ])[' ])
- ])
-
-if test "x$PERL" != x; then
- ax_perl_modules_failed=0
- for ax_perl_module in ax_perl_modules; do
- AC_MSG_CHECKING(for perl module $ax_perl_module)
-
- # Would be nice to log result here, but can't rely on autoconf internals
- $PERL -e "use $ax_perl_module; exit" > /dev/null 2>&1
- if test $? -ne 0; then
- AC_MSG_RESULT(no);
- ax_perl_modules_failed=1
- else
- AC_MSG_RESULT(ok);
- fi
- done
-
- # Run optional shell commands
- if test "$ax_perl_modules_failed" = 0; then
- :
- $2
- else
- :
- $3
- fi
-else
- AC_MSG_WARN(could not find perl)
-fi])
diff --git a/m4/ax_require_defined.m4 b/m4/ax_require_defined.m4
deleted file mode 100644
index cae11112d9..0000000000
--- a/m4/ax_require_defined.m4
+++ /dev/null
@@ -1,37 +0,0 @@
-# ===========================================================================
-# http://www.gnu.org/software/autoconf-archive/ax_require_defined.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_REQUIRE_DEFINED(MACRO)
-#
-# DESCRIPTION
-#
-# AX_REQUIRE_DEFINED is a simple helper for making sure other macros have
-# been defined and thus are available for use. This avoids random issues
-# where a macro isn't expanded. Instead the configure script emits a
-# non-fatal:
-#
-# ./configure: line 1673: AX_CFLAGS_WARN_ALL: command not found
-#
-# It's like AC_REQUIRE except it doesn't expand the required macro.
-#
-# Here's an example:
-#
-# AX_REQUIRE_DEFINED([AX_CHECK_LINK_FLAG])
-#
-# LICENSE
-#
-# Copyright (c) 2014 Mike Frysinger <va...@gentoo.org>
-#
-# Copying and distribution of this file, with or without modification, are
-# permitted in any medium without royalty provided the copyright notice
-# and this notice are preserved. This file is offered as-is, without any
-# warranty.
-
-#serial 1
-
-AC_DEFUN([AX_REQUIRE_DEFINED], [dnl
- m4_ifndef([$1], [m4_fatal([macro ]$1[ is not defined; is a m4 file missing?])])
-])dnl AX_REQUIRE_DEFINED
diff --git a/m4/ax_with_curses.m4 b/m4/ax_with_curses.m4
deleted file mode 100644
index e6e63f7e0f..0000000000
--- a/m4/ax_with_curses.m4
+++ /dev/null
@@ -1,582 +0,0 @@
-# ===========================================================================
-# http://www.gnu.org/software/autoconf-archive/ax_with_curses.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_WITH_CURSES
-#
-# DESCRIPTION
-#
-# This macro checks whether a SysV or X/Open-compatible Curses library is
-# present, along with the associated header file. The NcursesW
-# (wide-character) library is searched for first, followed by Ncurses,
-# then the system-default plain Curses. The first library found is the
-# one returned. Finding libraries will first be attempted by using
-# pkg-config, and should the pkg-config files not be available, will
-# fallback to combinations of known flags itself.
-#
-# The following options are understood: --with-ncursesw, --with-ncurses,
-# --without-ncursesw, --without-ncurses. The "--with" options force the
-# macro to use that particular library, terminating with an error if not
-# found. The "--without" options simply skip the check for that library.
-# The effect on the search pattern is:
-#
-# (no options) - NcursesW, Ncurses, Curses
-# --with-ncurses --with-ncursesw - NcursesW only [*]
-# --without-ncurses --with-ncursesw - NcursesW only [*]
-# --with-ncursesw - NcursesW only [*]
-# --with-ncurses --without-ncursesw - Ncurses only [*]
-# --with-ncurses - NcursesW, Ncurses [**]
-# --without-ncurses --without-ncursesw - Curses only
-# --without-ncursesw - Ncurses, Curses
-# --without-ncurses - NcursesW, Curses
-#
-# [*] If the library is not found, abort the configure script.
-#
-# [**] If the second library (Ncurses) is not found, abort configure.
-#
-# The following preprocessor symbols may be defined by this macro if the
-# appropriate conditions are met:
-#
-# HAVE_CURSES - if any SysV or X/Open Curses library found
-# HAVE_CURSES_ENHANCED - if library supports X/Open Enhanced functions
-# HAVE_CURSES_COLOR - if library supports color (enhanced functions)
-# HAVE_CURSES_OBSOLETE - if library supports certain obsolete features
-# HAVE_NCURSESW - if NcursesW (wide char) library is to be used
-# HAVE_NCURSES - if the Ncurses library is to be used
-#
-# HAVE_CURSES_H - if <curses.h> is present and should be used
-# HAVE_NCURSESW_H - if <ncursesw.h> should be used
-# HAVE_NCURSES_H - if <ncurses.h> should be used
-# HAVE_NCURSESW_CURSES_H - if <ncursesw/curses.h> should be used
-# HAVE_NCURSES_CURSES_H - if <ncurses/curses.h> should be used
-#
-# (These preprocessor symbols are discussed later in this document.)
-#
-# The following output variables are defined by this macro; they are
-# precious and may be overridden on the ./configure command line:
-#
-# CURSES_LIBS - library to add to xxx_LDADD
-# CURSES_CFLAGS - include paths to add to xxx_CPPFLAGS
-#
-# In previous versions of this macro, the flags CURSES_LIB and
-# CURSES_CPPFLAGS were defined. These have been renamed, in keeping with
-# AX_WITH_CURSES's close bigger brother, PKG_CHECK_MODULES, which should
-# eventually supersede the use of AX_WITH_CURSES. Neither the library
-# listed in CURSES_LIBS, nor the flags in CURSES_CFLAGS are added to LIBS,
-# respectively CPPFLAGS, by default. You need to add both to the
-# appropriate xxx_LDADD/xxx_CPPFLAGS line in your Makefile.am. For
-# example:
-#
-# prog_LDADD = @CURSES_LIBS@
-# prog_CPPFLAGS = @CURSES_CFLAGS@
-#
-# If CURSES_LIBS is set on the configure command line (such as by running
-# "./configure CURSES_LIBS=-lmycurses"), then the only header searched for
-# is <curses.h>. If the user needs to specify an alternative path for a
-# library (such as for a non-standard NcurseW), the user should use the
-# LDFLAGS variable.
-#
-# The following shell variables may be defined by this macro:
-#
-# ax_cv_curses - set to "yes" if any Curses library found
-# ax_cv_curses_enhanced - set to "yes" if Enhanced functions present
-# ax_cv_curses_color - set to "yes" if color functions present
-# ax_cv_curses_obsolete - set to "yes" if obsolete features present
-#
-# ax_cv_ncursesw - set to "yes" if NcursesW library found
-# ax_cv_ncurses - set to "yes" if Ncurses library found
-# ax_cv_plaincurses - set to "yes" if plain Curses library found
-# ax_cv_curses_which - set to "ncursesw", "ncurses", "plaincurses" or "no"
-#
-# These variables can be used in your configure.ac to determine the level
-# of support you need from the Curses library. For example, if you must
-# have either Ncurses or NcursesW, you could include:
-#
-# AX_WITH_CURSES
-# if test "x$ax_cv_ncursesw" != xyes && test "x$ax_cv_ncurses" != xyes; then
-# AC_MSG_ERROR([requires either NcursesW or Ncurses library])
-# fi
-#
-# If any Curses library will do (but one must be present and must support
-# color), you could use:
-#
-# AX_WITH_CURSES
-# if test "x$ax_cv_curses" != xyes || test "x$ax_cv_curses_color" != xyes; then
-# AC_MSG_ERROR([requires an X/Open-compatible Curses library with color])
-# fi
-#
-# Certain preprocessor symbols and shell variables defined by this macro
-# can be used to determine various features of the Curses library. In
-# particular, HAVE_CURSES and ax_cv_curses are defined if the Curses
-# library found conforms to the traditional SysV and/or X/Open Base Curses
-# definition. Any working Curses library conforms to this level.
-#
-# HAVE_CURSES_ENHANCED and ax_cv_curses_enhanced are defined if the
-# library supports the X/Open Enhanced Curses definition. In particular,
-# the wide-character types attr_t, cchar_t and wint_t, the functions
-# wattr_set() and wget_wch() and the macros WA_NORMAL and _XOPEN_CURSES
-# are checked. The Ncurses library does NOT conform to this definition,
-# although NcursesW does.
-#
-# HAVE_CURSES_COLOR and ax_cv_curses_color are defined if the library
-# supports color functions and macros such as COLOR_PAIR, A_COLOR,
-# COLOR_WHITE, COLOR_RED and init_pair(). These are NOT part of the
-# X/Open Base Curses definition, but are part of the Enhanced set of
-# functions. The Ncurses library DOES support these functions, as does
-# NcursesW.
-#
-# HAVE_CURSES_OBSOLETE and ax_cv_curses_obsolete are defined if the
-# library supports certain features present in SysV and BSD Curses but not
-# defined in the X/Open definition. In particular, the functions
-# getattrs(), getcurx() and getmaxx() are checked.
-#
-# To use the HAVE_xxx_H preprocessor symbols, insert the following into
-# your system.h (or equivalent) header file:
-#
-# #if defined HAVE_NCURSESW_CURSES_H
-# # include <ncursesw/curses.h>
-# #elif defined HAVE_NCURSESW_H
-# # include <ncursesw.h>
-# #elif defined HAVE_NCURSES_CURSES_H
-# # include <ncurses/curses.h>
-# #elif defined HAVE_NCURSES_H
-# # include <ncurses.h>
-# #elif defined HAVE_CURSES_H
-# # include <curses.h>
-# #else
-# # error "SysV or X/Open-compatible Curses header file required"
-# #endif
-#
-# For previous users of this macro: you should not need to change anything
-# in your configure.ac or Makefile.am, as the previous (serial 10)
-# semantics are still valid. However, you should update your system.h (or
-# equivalent) header file to the fragment shown above. You are encouraged
-# also to make use of the extended functionality provided by this version
-# of AX_WITH_CURSES, as well as in the additional macros
-# AX_WITH_CURSES_PANEL, AX_WITH_CURSES_MENU and AX_WITH_CURSES_FORM.
-#
-# LICENSE
-#
-# Copyright (c) 2009 Mark Pulford <ma...@kyne.com.au>
-# Copyright (c) 2009 Damian Pietras <da...@daper.net>
-# Copyright (c) 2012 Reuben Thomas <rr...@sc3d.org>
-# Copyright (c) 2011 John Zaitseff <J....@zap.org.au>
-#
-# This program is free software: you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by the
-# Free Software Foundation, either version 3 of the License, or (at your
-# option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
-# Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program. If not, see <http://www.gnu.org/licenses/>.
-#
-# As a special exception, the respective Autoconf Macro's copyright owner
-# gives unlimited permission to copy, distribute and modify the configure
-# scripts that are the output of Autoconf when processing the Macro. You
-# need not follow the terms of the GNU General Public License when using
-# or distributing such scripts, even though portions of the text of the
-# Macro appear in them. The GNU General Public License (GPL) does govern
-# all other use of the material that constitutes the Autoconf Macro.
-#
-# This special exception to the GPL applies to versions of the Autoconf
-# Macro released by the Autoconf Archive. When you make and distribute a
-# modified version of the Autoconf Macro, you may extend this special
-# exception to the GPL to apply to your modified version as well.
-
-#serial 17
-
-# internal function to factorize common code that is used by both ncurses
-# and ncursesw
-AC_DEFUN([_FIND_CURSES_FLAGS], [
- AC_MSG_CHECKING([for $1 via pkg-config])
-
- AX_REQUIRE_DEFINED([PKG_CHECK_EXISTS])
- _PKG_CONFIG([_ax_cv_$1_libs], [libs], [$1])
- _PKG_CONFIG([_ax_cv_$1_cppflags], [cflags], [$1])
-
- AS_IF([test "x$pkg_failed" = "xyes" || test "x$pkg_failed" = "xuntried"],[
- AC_MSG_RESULT([no])
- # No suitable .pc file found, have to find flags via fallback
- AC_CACHE_CHECK([for $1 via fallback], [ax_cv_$1], [
- AS_ECHO()
- pkg_cv__ax_cv_$1_libs="-l$1"
- pkg_cv__ax_cv_$1_cppflags="-D_GNU_SOURCE $CURSES_CFLAGS"
- LIBS="$ax_saved_LIBS $pkg_cv__ax_cv_$1_libs"
- CPPFLAGS="$ax_saved_CPPFLAGS $pkg_cv__ax_cv_$1_cppflags"
-
- AC_MSG_CHECKING([for initscr() with $pkg_cv__ax_cv_$1_libs])
- AC_LINK_IFELSE([AC_LANG_CALL([], [initscr])],
- [
- AC_MSG_RESULT([yes])
- AC_MSG_CHECKING([for nodelay() with $pkg_cv__ax_cv_$1_libs])
- AC_LINK_IFELSE([AC_LANG_CALL([], [nodelay])],[
- ax_cv_$1=yes
- ],[
- AC_MSG_RESULT([no])
- m4_if(
- [$1],[ncursesw],[pkg_cv__ax_cv_$1_libs="$pkg_cv__ax_cv_$1_libs -ltinfow"],
- [$1],[ncurses],[pkg_cv__ax_cv_$1_libs="$pkg_cv__ax_cv_$1_libs -ltinfo"]
- )
- LIBS="$ax_saved_LIBS $pkg_cv__ax_cv_$1_libs"
-
- AC_MSG_CHECKING([for nodelay() with $pkg_cv__ax_cv_$1_libs])
- AC_LINK_IFELSE([AC_LANG_CALL([], [nodelay])],[
- ax_cv_$1=yes
- ],[
- ax_cv_$1=no
- ])
- ])
- ],[
- ax_cv_$1=no
- ])
- ])
- ],[
- AC_MSG_RESULT([yes])
- # Found .pc file, using its information
- LIBS="$ax_saved_LIBS $pkg_cv__ax_cv_$1_libs"
- CPPFLAGS="$ax_saved_CPPFLAGS $pkg_cv__ax_cv_$1_cppflags"
- ax_cv_$1=yes
- ])
-])
-
-AU_ALIAS([AX_WITH_CURSES], [AX_WITH_CURSES])
-AC_DEFUN([AX_WITH_CURSES], [
- AC_ARG_VAR([CURSES_LIBS], [linker library for Curses, e.g. -lcurses])
- AC_ARG_VAR([CURSES_CFLAGS], [preprocessor flags for Curses, e.g. -I/usr/include/ncursesw])
- AC_ARG_WITH([ncurses], [AS_HELP_STRING([--with-ncurses],
- [force the use of Ncurses or NcursesW])],
- [], [with_ncurses=check])
- AC_ARG_WITH([ncursesw], [AS_HELP_STRING([--without-ncursesw],
- [do not use NcursesW (wide character support)])],
- [], [with_ncursesw=check])
-
- ax_saved_LIBS=$LIBS
- ax_saved_CPPFLAGS=$CPPFLAGS
-
- AS_IF([test "x$with_ncurses" = xyes || test "x$with_ncursesw" = xyes],
- [ax_with_plaincurses=no], [ax_with_plaincurses=check])
-
- ax_cv_curses_which=no
-
- # Test for NcursesW
- AS_IF([test "x$CURSES_LIBS" = x && test "x$with_ncursesw" != xno], [
- _FIND_CURSES_FLAGS([ncursesw])
-
- AS_IF([test "x$ax_cv_ncursesw" = xno && test "x$with_ncursesw" = xyes], [
- AC_MSG_ERROR([--with-ncursesw specified but could not find NcursesW library])
- ])
-
- AS_IF([test "x$ax_cv_ncursesw" = xyes], [
- ax_cv_curses=yes
- ax_cv_curses_which=ncursesw
- CURSES_LIBS="$pkg_cv__ax_cv_ncursesw_libs"
- CURSES_CFLAGS="$pkg_cv__ax_cv_ncursesw_cppflags"
- AC_DEFINE([HAVE_NCURSESW], [1], [Define to 1 if the NcursesW library is present])
- AC_DEFINE([HAVE_CURSES], [1], [Define to 1 if a SysV or X/Open compatible Curses library is present])
-
- AC_CACHE_CHECK([for working ncursesw/curses.h], [ax_cv_header_ncursesw_curses_h], [
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[
- @%:@define _XOPEN_SOURCE_EXTENDED 1
- @%:@include <ncursesw/curses.h>
- ]], [[
- chtype a = A_BOLD;
- int b = KEY_LEFT;
- chtype c = COLOR_PAIR(1) & A_COLOR;
- attr_t d = WA_NORMAL;
- cchar_t e;
- wint_t f;
- int g = getattrs(stdscr);
- int h = getcurx(stdscr) + getmaxx(stdscr);
- initscr();
- init_pair(1, COLOR_WHITE, COLOR_RED);
- wattr_set(stdscr, d, 0, NULL);
- wget_wch(stdscr, &f);
- ]])],
- [ax_cv_header_ncursesw_curses_h=yes],
- [ax_cv_header_ncursesw_curses_h=no])
- ])
- AS_IF([test "x$ax_cv_header_ncursesw_curses_h" = xyes], [
- ax_cv_curses_enhanced=yes
- ax_cv_curses_color=yes
- ax_cv_curses_obsolete=yes
- AC_DEFINE([HAVE_CURSES_ENHANCED], [1], [Define to 1 if library supports X/Open Enhanced functions])
- AC_DEFINE([HAVE_CURSES_COLOR], [1], [Define to 1 if library supports color (enhanced functions)])
- AC_DEFINE([HAVE_CURSES_OBSOLETE], [1], [Define to 1 if library supports certain obsolete features])
- AC_DEFINE([HAVE_NCURSESW_CURSES_H], [1], [Define to 1 if <ncursesw/curses.h> is present])
- ])
-
- AC_CACHE_CHECK([for working ncursesw.h], [ax_cv_header_ncursesw_h], [
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[
- @%:@define _XOPEN_SOURCE_EXTENDED 1
- @%:@include <ncursesw.h>
- ]], [[
- chtype a = A_BOLD;
- int b = KEY_LEFT;
- chtype c = COLOR_PAIR(1) & A_COLOR;
- attr_t d = WA_NORMAL;
- cchar_t e;
- wint_t f;
- int g = getattrs(stdscr);
- int h = getcurx(stdscr) + getmaxx(stdscr);
- initscr();
- init_pair(1, COLOR_WHITE, COLOR_RED);
- wattr_set(stdscr, d, 0, NULL);
- wget_wch(stdscr, &f);
- ]])],
- [ax_cv_header_ncursesw_h=yes],
- [ax_cv_header_ncursesw_h=no])
- ])
- AS_IF([test "x$ax_cv_header_ncursesw_h" = xyes], [
- ax_cv_curses_enhanced=yes
- ax_cv_curses_color=yes
- ax_cv_curses_obsolete=yes
- AC_DEFINE([HAVE_CURSES_ENHANCED], [1], [Define to 1 if library supports X/Open Enhanced functions])
- AC_DEFINE([HAVE_CURSES_COLOR], [1], [Define to 1 if library supports color (enhanced functions)])
- AC_DEFINE([HAVE_CURSES_OBSOLETE], [1], [Define to 1 if library supports certain obsolete features])
- AC_DEFINE([HAVE_NCURSESW_H], [1], [Define to 1 if <ncursesw.h> is present])
- ])
-
- AC_CACHE_CHECK([for working ncurses.h], [ax_cv_header_ncurses_h_with_ncursesw], [
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[
- @%:@define _XOPEN_SOURCE_EXTENDED 1
- @%:@include <ncurses.h>
- ]], [[
- chtype a = A_BOLD;
- int b = KEY_LEFT;
- chtype c = COLOR_PAIR(1) & A_COLOR;
- attr_t d = WA_NORMAL;
- cchar_t e;
- wint_t f;
- int g = getattrs(stdscr);
- int h = getcurx(stdscr) + getmaxx(stdscr);
- initscr();
- init_pair(1, COLOR_WHITE, COLOR_RED);
- wattr_set(stdscr, d, 0, NULL);
- wget_wch(stdscr, &f);
- ]])],
- [ax_cv_header_ncurses_h_with_ncursesw=yes],
- [ax_cv_header_ncurses_h_with_ncursesw=no])
- ])
- AS_IF([test "x$ax_cv_header_ncurses_h_with_ncursesw" = xyes], [
- ax_cv_curses_enhanced=yes
- ax_cv_curses_color=yes
- ax_cv_curses_obsolete=yes
- AC_DEFINE([HAVE_CURSES_ENHANCED], [1], [Define to 1 if library supports X/Open Enhanced functions])
- AC_DEFINE([HAVE_CURSES_COLOR], [1], [Define to 1 if library supports color (enhanced functions)])
- AC_DEFINE([HAVE_CURSES_OBSOLETE], [1], [Define to 1 if library supports certain obsolete features])
- AC_DEFINE([HAVE_NCURSES_H], [1], [Define to 1 if <ncurses.h> is present])
- ])
-
- AS_IF([test "x$ax_cv_header_ncursesw_curses_h" = xno && test "x$ax_cv_header_ncursesw_h" = xno && test "x$ax_cv_header_ncurses_h_with_ncursesw" = xno], [
- AC_MSG_WARN([could not find a working ncursesw/curses.h, ncursesw.h or ncurses.h])
- ])
- ])
- ])
- unset pkg_cv__ax_cv_ncursesw_libs
- unset pkg_cv__ax_cv_ncursesw_cppflags
-
- # Test for Ncurses
- AS_IF([test "x$CURSES_LIBS" = x && test "x$with_ncurses" != xno && test "x$ax_cv_curses_which" = xno], [
- _FIND_CURSES_FLAGS([ncurses])
-
- AS_IF([test "x$ax_cv_ncurses" = xno && test "x$with_ncurses" = xyes], [
- AC_MSG_ERROR([--with-ncurses specified but could not find Ncurses library])
- ])
-
- AS_IF([test "x$ax_cv_ncurses" = xyes], [
- ax_cv_curses=yes
- ax_cv_curses_which=ncurses
- CURSES_LIBS="$pkg_cv__ax_cv_ncurses_libs"
- CURSES_CFLAGS="$pkg_cv__ax_cv_ncurses_cppflags"
- AC_DEFINE([HAVE_NCURSES], [1], [Define to 1 if the Ncurses library is present])
- AC_DEFINE([HAVE_CURSES], [1], [Define to 1 if a SysV or X/Open compatible Curses library is present])
-
- AC_CACHE_CHECK([for working ncurses/curses.h], [ax_cv_header_ncurses_curses_h], [
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[
- @%:@include <ncurses/curses.h>
- ]], [[
- chtype a = A_BOLD;
- int b = KEY_LEFT;
- chtype c = COLOR_PAIR(1) & A_COLOR;
- int g = getattrs(stdscr);
- int h = getcurx(stdscr) + getmaxx(stdscr);
- initscr();
- init_pair(1, COLOR_WHITE, COLOR_RED);
- ]])],
- [ax_cv_header_ncurses_curses_h=yes],
- [ax_cv_header_ncurses_curses_h=no])
- ])
- AS_IF([test "x$ax_cv_header_ncurses_curses_h" = xyes], [
- ax_cv_curses_color=yes
- ax_cv_curses_obsolete=yes
- AC_DEFINE([HAVE_CURSES_COLOR], [1], [Define to 1 if library supports color (enhanced functions)])
- AC_DEFINE([HAVE_CURSES_OBSOLETE], [1], [Define to 1 if library supports certain obsolete features])
- AC_DEFINE([HAVE_NCURSES_CURSES_H], [1], [Define to 1 if <ncurses/curses.h> is present])
- ])
-
- AC_CACHE_CHECK([for working ncurses.h], [ax_cv_header_ncurses_h], [
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[
- @%:@include <ncurses.h>
- ]], [[
- chtype a = A_BOLD;
- int b = KEY_LEFT;
- chtype c = COLOR_PAIR(1) & A_COLOR;
- int g = getattrs(stdscr);
- int h = getcurx(stdscr) + getmaxx(stdscr);
- initscr();
- init_pair(1, COLOR_WHITE, COLOR_RED);
- ]])],
- [ax_cv_header_ncurses_h=yes],
- [ax_cv_header_ncurses_h=no])
- ])
- AS_IF([test "x$ax_cv_header_ncurses_h" = xyes], [
- ax_cv_curses_color=yes
- ax_cv_curses_obsolete=yes
- AC_DEFINE([HAVE_CURSES_COLOR], [1], [Define to 1 if library supports color (enhanced functions)])
- AC_DEFINE([HAVE_CURSES_OBSOLETE], [1], [Define to 1 if library supports certain obsolete features])
- AC_DEFINE([HAVE_NCURSES_H], [1], [Define to 1 if <ncurses.h> is present])
- ])
-
- AS_IF([test "x$ax_cv_header_ncurses_curses_h" = xno && test "x$ax_cv_header_ncurses_h" = xno], [
- AC_MSG_WARN([could not find a working ncurses/curses.h or ncurses.h])
- ])
- ])
- ])
- unset pkg_cv__ax_cv_ncurses_libs
- unset pkg_cv__ax_cv_ncurses_cppflags
-
- # Test for plain Curses (or if CURSES_LIBS was set by user)
- AS_IF([test "x$with_plaincurses" != xno && test "x$ax_cv_curses_which" = xno], [
- AS_IF([test "x$CURSES_LIBS" != x], [
- LIBS="$ax_saved_LIBS $CURSES_LIBS"
- ], [
- LIBS="$ax_saved_LIBS -lcurses"
- ])
-
- AC_CACHE_CHECK([for Curses library], [ax_cv_plaincurses], [
- AC_LINK_IFELSE([AC_LANG_CALL([], [initscr])],
- [ax_cv_plaincurses=yes], [ax_cv_plaincurses=no])
- ])
-
- AS_IF([test "x$ax_cv_plaincurses" = xyes], [
- ax_cv_curses=yes
- ax_cv_curses_which=plaincurses
- AS_IF([test "x$CURSES_LIBS" = x], [
- CURSES_LIBS="-lcurses"
- ])
- AC_DEFINE([HAVE_CURSES], [1], [Define to 1 if a SysV or X/Open compatible Curses library is present])
-
- # Check for base conformance (and header file)
-
- AC_CACHE_CHECK([for working curses.h], [ax_cv_header_curses_h], [
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[
- @%:@include <curses.h>
- ]], [[
- chtype a = A_BOLD;
- int b = KEY_LEFT;
- initscr();
- ]])],
- [ax_cv_header_curses_h=yes],
- [ax_cv_header_curses_h=no])
- ])
- AS_IF([test "x$ax_cv_header_curses_h" = xyes], [
- AC_DEFINE([HAVE_CURSES_H], [1], [Define to 1 if <curses.h> is present])
-
- # Check for X/Open Enhanced conformance
-
- AC_CACHE_CHECK([for X/Open Enhanced Curses conformance], [ax_cv_plaincurses_enhanced], [
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[
- @%:@define _XOPEN_SOURCE_EXTENDED 1
- @%:@include <curses.h>
- @%:@ifndef _XOPEN_CURSES
- @%:@error "this Curses library is not enhanced"
- "this Curses library is not enhanced"
- @%:@endif
- ]], [[
- chtype a = A_BOLD;
- int b = KEY_LEFT;
- chtype c = COLOR_PAIR(1) & A_COLOR;
- attr_t d = WA_NORMAL;
- cchar_t e;
- wint_t f;
- initscr();
- init_pair(1, COLOR_WHITE, COLOR_RED);
- wattr_set(stdscr, d, 0, NULL);
- wget_wch(stdscr, &f);
- ]])],
- [ax_cv_plaincurses_enhanced=yes],
- [ax_cv_plaincurses_enhanced=no])
- ])
- AS_IF([test "x$ax_cv_plaincurses_enhanced" = xyes], [
- ax_cv_curses_enhanced=yes
- ax_cv_curses_color=yes
- AC_DEFINE([HAVE_CURSES_ENHANCED], [1], [Define to 1 if library supports X/Open Enhanced functions])
- AC_DEFINE([HAVE_CURSES_COLOR], [1], [Define to 1 if library supports color (enhanced functions)])
- ])
-
- # Check for color functions
-
- AC_CACHE_CHECK([for Curses color functions], [ax_cv_plaincurses_color], [
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[
- @%:@define _XOPEN_SOURCE_EXTENDED 1
- @%:@include <curses.h>
- ]], [[
- chtype a = A_BOLD;
- int b = KEY_LEFT;
- chtype c = COLOR_PAIR(1) & A_COLOR;
- initscr();
- init_pair(1, COLOR_WHITE, COLOR_RED);
- ]])],
- [ax_cv_plaincurses_color=yes],
- [ax_cv_plaincurses_color=no])
- ])
- AS_IF([test "x$ax_cv_plaincurses_color" = xyes], [
- ax_cv_curses_color=yes
- AC_DEFINE([HAVE_CURSES_COLOR], [1], [Define to 1 if library supports color (enhanced functions)])
- ])
-
- # Check for obsolete functions
-
- AC_CACHE_CHECK([for obsolete Curses functions], [ax_cv_plaincurses_obsolete], [
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[
- @%:@include <curses.h>
- ]], [[
- chtype a = A_BOLD;
- int b = KEY_LEFT;
- int g = getattrs(stdscr);
- int h = getcurx(stdscr) + getmaxx(stdscr);
- initscr();
- ]])],
- [ax_cv_plaincurses_obsolete=yes],
- [ax_cv_plaincurses_obsolete=no])
- ])
- AS_IF([test "x$ax_cv_plaincurses_obsolete" = xyes], [
- ax_cv_curses_obsolete=yes
- AC_DEFINE([HAVE_CURSES_OBSOLETE], [1], [Define to 1 if library supports certain obsolete features])
- ])
- ])
-
- AS_IF([test "x$ax_cv_header_curses_h" = xno], [
- AC_MSG_WARN([could not find a working curses.h])
- ])
- ])
- ])
-
- AS_IF([test "x$ax_cv_curses" != xyes], [ax_cv_curses=no])
- AS_IF([test "x$ax_cv_curses_enhanced" != xyes], [ax_cv_curses_enhanced=no])
- AS_IF([test "x$ax_cv_curses_color" != xyes], [ax_cv_curses_color=no])
- AS_IF([test "x$ax_cv_curses_obsolete" != xyes], [ax_cv_curses_obsolete=no])
-
- LIBS=$ax_saved_LIBS
- CPPFLAGS=$ax_saved_CPPFLAGS
-
- unset ax_saved_LIBS
- unset ax_saved_CPPFLAGS
-])dnl
diff --git a/m4/brotli.m4 b/m4/brotli.m4
deleted file mode 100644
index de532a4819..0000000000
--- a/m4/brotli.m4
+++ /dev/null
@@ -1,98 +0,0 @@
-dnl -------------------------------------------------------- -*- autoconf -*-
-dnl Licensed to the Apache Software Foundation (ASF) under one or more
-dnl contributor license agreements. See the NOTICE file distributed with
-dnl this work for additional information regarding copyright ownership.
-dnl The ASF licenses this file to You under the Apache License, Version 2.0
-dnl (the "License"); you may not use this file except in compliance with
-dnl the License. You may obtain a copy of the License at
-dnl
-dnl http://www.apache.org/licenses/LICENSE-2.0
-dnl
-dnl Unless required by applicable law or agreed to in writing, software
-dnl distributed under the License is distributed on an "AS IS" BASIS,
-dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-dnl See the License for the specific language governing permissions and
-dnl limitations under the License.
-
-dnl
-dnl brotli.m4: Trafficserver's brotli autoconf macros
-dnl
-
-dnl
-dnl TS_CHECK_BROTLI: look for brotli libraries and headers
-dnl
-AC_DEFUN([TS_CHECK_BROTLI], [
-has_brotli=0
-AC_ARG_WITH(brotli, [AS_HELP_STRING([--with-brotli=DIR],[use a specific brotli library])],
-[
- if test "x$withval" != "xyes" && test "x$withval" != "x"; then
- brotli_base_dir="$withval"
- if test "$withval" != "no"; then
- has_brotli=1
- case "$withval" in
- *":"*)
- brotli_include="`echo $withval | sed -e 's/:.*$//'`"
- brotli_ldflags="`echo $withval | sed -e 's/^.*://'`"
- AC_MSG_CHECKING(checking for brotli includes in $brotli_include libs in $brotli_ldflags )
- ;;
- *)
- brotli_include="$withval/include"
- brotli_ldflags="$withval/lib"
- AC_MSG_CHECKING(checking for brotli includes in $withval)
- ;;
- esac
- fi
- fi
-
- if test -d $brotli_include && test -d $brotli_ldflags && test -f $brotli_include/brotli/encode.h; then
- AC_MSG_RESULT([ok])
- else
- AC_MSG_RESULT([not found])
- fi
-
-if test "$has_brotli" != "0"; then
- saved_ldflags=$LDFLAGS
- saved_cppflags=$CPPFLAGS
- brotli_have_headers=0
- brotli_have_libs=0
- if test "$brotli_base_dir" != "/usr"; then
- TS_ADDTO(CPPFLAGS, [-I${brotli_include}])
- TS_ADDTO(LDFLAGS, [-L${brotli_ldflags}])
- TS_ADDTO_RPATH(${brotli_ldflags})
- fi
-
- AC_CHECK_LIB([brotlienc], BrotliEncoderCreateInstance, [brotli_have_libs=1])
- if test "$brotli_have_libs" != "0"; then
- AC_CHECK_HEADERS(brotli/encode.h, [brotli_have_headers=1])
- fi
- if test "$brotli_have_headers" != "0"; then
- AC_SUBST([BROTLIENC_LIB], [-lbrotlienc])
- AC_SUBST([BROTLIENC_CFLAGS], [-I${brotli_include}])
- else
- has_brotli=0
- CPPFLAGS=$saved_cppflags
- LDFLAGS=$saved_ldflags
- fi
-fi
-],
-[
-AC_CHECK_HEADER([brotli/encode.h], [], [has_brotli=0])
-AC_CHECK_LIB([brotlienc], BrotliEncoderCreateInstance, [:], [has_brotli=0])
-
-if test "x$has_brotli" == "x0"; then
- PKG_CHECK_EXISTS([libbrotlienc],
- [
- PKG_CHECK_MODULES([LIBBROTLIENC], [libbrotlienc >= 0.6.0], [
- AC_CHECK_HEADERS(brotli/encode.h, [brotli_have_headers=1])
- if test "$brotli_have_headers" != "0"; then
- AC_SUBST([BROTLIENC_LIB], [$LIBBROTLIENC_LIBS])
- AC_SUBST([BROTLIENC_CFLAGS], [$LIBBROTLIENC_CFLAGS])
- fi
- ], [])
- ], [])
-else
- AC_SUBST([BROTLIENC_LIB], [-lbrotlienc])
-fi
-])
-
-])
diff --git a/m4/cjose.m4 b/m4/cjose.m4
deleted file mode 100644
index 6bead14cd3..0000000000
--- a/m4/cjose.m4
+++ /dev/null
@@ -1,47 +0,0 @@
-dnl -------------------------------------------------------- -*- autoconf -*-
-dnl Licensed to the Apache Software Foundation (ASF) under one or more
-dnl contributor license agreements. See the NOTICE file distributed with
-dnl this work for additional information regarding copyright ownership.
-dnl The ASF licenses this file to You under the Apache License, Version 2.0
-dnl (the "License"); you may not use this file except in compliance with
-dnl the License. You may obtain a copy of the License at
-dnl
-dnl http://www.apache.org/licenses/LICENSE-2.0
-dnl
-dnl Unless required by applicable law or agreed to in writing, software
-dnl distributed under the License is distributed on an "AS IS" BASIS,
-dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-dnl See the License for the specific language governing permissions and
-dnl limitations under the License.
-
-dnl
-dnl cjose.m4: Trafficserver's cjose autoconf macros
-dnl
-
-dnl
-dnl TS_CHECK_CJOSE: look for cjose libraries and headers
-dnl
-
-AC_DEFUN([TS_CHECK_CJOSE], [
-AC_MSG_CHECKING([for --with-cjose])
- AC_ARG_WITH(
- [cjose],
- [AS_HELP_STRING([--with-cjose=DIR], [use a specific cjose library])],
- [ LDFLAGS="$LDFLAGS -L$with_cjose/lib";
- CFLAGS="$CFLAGS -I$with_cjose/include/";
- CPPFLAGS="$CPPFLAGS -I$with_cjose/include/";
- AC_MSG_RESULT([$with_cjose])
- ],
- [ AC_MSG_RESULT([no])]
- )
-
- AC_CHECK_HEADERS([cjose/cjose.h], [
- AC_MSG_CHECKING([whether cjose is dynamic])
- TS_LINK_WITH_FLAGS_IFELSE([-fPIC -lcjose -ljansson -lcrypto],[AC_LANG_PROGRAM(
- [#include <cjose/cjose.h>],
- [(void) cjose_jws_import("", 0, NULL);])],
- [AC_MSG_RESULT([yes]); LIBCJOSE=-lcjose],
- [AC_MSG_RESULT([no]); LIBCJOSE=-l:libcjose.a])
- ],
- [LIBCJOSE=])
-])
diff --git a/m4/common.m4 b/m4/common.m4
deleted file mode 100644
index c471b223b0..0000000000
--- a/m4/common.m4
+++ /dev/null
@@ -1,606 +0,0 @@
-dnl -------------------------------------------------------- -*- autoconf -*-
-dnl Licensed to the Apache Software Foundation (ASF) under one or more
-dnl contributor license agreements. See the NOTICE file distributed with
-dnl this work for additional information regarding copyright ownership.
-dnl The ASF licenses this file to You under the Apache License, Version 2.0
-dnl (the "License"); you may not use this file except in compliance with
-dnl the License. You may obtain a copy of the License at
-dnl
-dnl http://www.apache.org/licenses/LICENSE-2.0
-dnl
-dnl Unless required by applicable law or agreed to in writing, software
-dnl distributed under the License is distributed on an "AS IS" BASIS,
-dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-dnl See the License for the specific language governing permissions and
-dnl limitations under the License.
-
-dnl
-dnl common.m4: Trafficserver's general-purpose autoconf macros
-dnl
-
-dnl
-dnl TS_CONFIG_NICE(filename)
-dnl
-dnl Saves a snapshot of the configure command-line for later reuse
-dnl
-AC_DEFUN([TS_CONFIG_NICE], [
- rm -f $1
- cat >$1<<EOF
-#! /bin/sh
-#
-# Created by configure
-
-EOF
- if test -n "$CC"; then
- echo "CC=\"$CC\"; export CC" >> $1
- fi
- if test -n "$CXX"; then
- echo "CXX=\"$CXX\"; export CXX" >> $1
- fi
- if test -n "$LD"; then
- echo "LD=\"$LD\"; export LD" >> $1
- fi
- if test -n "$AR"; then
- echo "AR=\"$AR\"; export AR" >> $1
- fi
- if test -n "$RANLIB"; then
- echo "RANLIB=\"$RANLIB\"; export RANLIB" >> $1
- fi
- if test -n "NM"; then
- echo "NM=\"$NM\"; export NM" >> $1
- fi
- if test -n "$CFLAGS"; then
- echo "CFLAGS=\"$CFLAGS\"; export CFLAGS" >> $1
- fi
- if test -n "$CXXFLAGS"; then
- echo "CXXFLAGS=\"$CXXFLAGS\"; export CXXFLAGS" >> $1
- fi
- if test -n "$CPPFLAGS"; then
- echo "CPPFLAGS=\"$CPPFLAGS\"; export CPPFLAGS" >> $1
- fi
- if test -n "$LDFLAGS"; then
- echo "LDFLAGS=\"$LDFLAGS\"; export LDFLAGS" >> $1
- fi
- if test -n "$LTFLAGS"; then
- echo "LTFLAGS=\"$LTFLAGS\"; export LTFLAGS" >> $1
- fi
- if test -n "$LIBS"; then
- echo "LIBS=\"$LIBS\"; export LIBS" >> $1
- fi
- if test -n "$INCLUDES"; then
- echo "INCLUDES=\"$INCLUDES\"; export INCLUDES" >> $1
- fi
- if test -n "$NOTEST_CFLAGS"; then
- echo "NOTEST_CFLAGS=\"$NOTEST_CFLAGS\"; export NOTEST_CFLAGS" >> $1
- fi
- if test -n "$NOTEST_CXXFLAGS"; then
- echo "NOTEST_CXXFLAGS=\"$NOTEST_CXXFLAGS\"; export NOTEST_CXXFLAGS" >> $1
- fi
- if test -n "$NOTEST_CPPFLAGS"; then
- echo "NOTEST_CPPFLAGS=\"$NOTEST_CPPFLAGS\"; export NOTEST_CPPFLAGS" >> $1
- fi
- if test -n "$NOTEST_LDFLAGS"; then
- echo "NOTEST_LDFLAGS=\"$NOTEST_LDFLAGS\"; export NOTEST_LDFLAGS" >> $1
- fi
- if test -n "$NOTEST_LIBS"; then
- echo "NOTEST_LIBS=\"$NOTEST_LIBS\"; export NOTEST_LIBS" >> $1
- fi
-
- # Retrieve command-line arguments.
- eval "set x $[0] $ac_configure_args"
- shift
-
- for arg
- do
- TS_EXPAND_VAR(arg, $arg)
- echo "\"[$]arg\" \\" >> $1
- done
- echo '"[$]@"' >> $1
- chmod +x $1
-])dnl
-
-dnl
-dnl TS_SETIFNULL(variable, value)
-dnl
-dnl Set variable iff it's currently null
-dnl
-AC_DEFUN([TS_SETIFNULL], [
- if test -z "$$1"; then
- test "x$verbose" = "xyes" && echo " setting $1 to \"$2\""
- $1="$2"
- fi
-])dnl
-
-dnl
-dnl TS_SETVAR(variable, value)
-dnl
-dnl Set variable no matter what
-dnl
-AC_DEFUN([TS_SETVAR], [
- test "x$verbose" = "xyes" && echo " forcing $1 to \"$2\""
- $1="$2"
-])dnl
-
-dnl
-dnl TS_ADDTO(variable, value)
-dnl
-dnl Add value to variable
-dnl
-AC_DEFUN([TS_ADDTO], [
- if test "x$$1" = "x"; then
- test "x$verbose" = "xyes" && echo " setting $1 to \"$2\""
- $1="$2"
- else
- ats_addto_bugger="$2"
- for i in $ats_addto_bugger; do
- ats_addto_duplicate="0"
- for j in $$1; do
- if test "x$i" = "x$j"; then
- ats_addto_duplicate="1"
- break
- fi
- done
- if test $ats_addto_duplicate = "0"; then
- test "x$verbose" = "xyes" && echo " adding \"$i\" to $1"
- $1="$$1 $i"
- fi
- done
- fi
-])dnl
-
-dnl
-dnl TS_ADDTO_RPATH(path)
-dnl
-dnl Adds path to variable with the '-rpath' directive.
-dnl
-AC_DEFUN([TS_ADDTO_RPATH], [
- AC_MSG_NOTICE([adding $1 to RPATH])
- TS_ADDTO(AM_LDFLAGS, [-Wl,-rpath,$1])
-])dnl
-
-dnl
-dnl TS_REMOVEFROM(variable, value)
-dnl
-dnl Remove a value from a variable
-dnl
-AC_DEFUN([TS_REMOVEFROM], [
- if test "x$$1" = "x$2"; then
- test "x$verbose" = "xyes" && echo " nulling $1"
- $1=""
- else
- ats_new_bugger=""
- ats_removed=0
- for i in $$1; do
- if test "x$i" != "x$2"; then
- ats_new_bugger="$ats_new_bugger $i"
- else
- ats_removed=1
- fi
- done
- if test $ats_removed = "1"; then
- test "x$verbose" = "xyes" && echo " removed \"$2\" from $1"
- $1=$ats_new_bugger
- fi
- fi
-]) dnl
-
-dnl
-dnl TS_TRY_COMPILE_NO_WARNING(INCLUDES, FUNCTION-BODY,
-dnl [ACTIONS-IF-NO-WARNINGS], [ACTIONS-IF-WARNINGS])
-dnl
-dnl Tries a compile test with warnings activated so that the result
-dnl is false if the code doesn't compile cleanly. For compilers
-dnl where it is not known how to activate a "fail-on-error" mode,
-dnl it is undefined which of the sets of actions will be run.
-dnl
-dnl We actually always try to link the resulting program, since gcc has
-dnl a nasty habit of compiling code that cannot subsequently be linked.
-dnl
-AC_DEFUN([TS_TRY_COMPILE_NO_WARNING],
-[ats_save_CFLAGS=$CFLAGS
- CFLAGS="$CFLAGS $CFLAGS_WARN"
- if test "$ac_cv_c_compiler_gnu" = "yes"; then
- CFLAGS="$CFLAGS -Werror"
- fi
- CFLAGS=$(echo $CFLAGS | sed -e 's/^-w$//' -e 's/^-w //' -e 's/ -w$//' -e 's/ -w / /')
- AC_LINK_IFELSE([AC_LANG_PROGRAM([$1], [$2])], [$3], [$4])
- CFLAGS=$ats_save_CFLAGS
-])
-
-dnl
-dnl TS_LINK_WITH_FLAGS_IFELSE(LIBS, FUNCTION-BODY,
-dnl [ACTIONS-IF-LINKS], [ACTIONS-IF-LINK-FAILS])
-dnl
-dnl Tries a link test with the provided flags.
-dnl
-
-AC_DEFUN([TS_LINK_WITH_FLAGS_IFELSE],
-[ats_save_LIBS=$LIBS
- LIBS="$LIBS $1"
- AC_LINK_IFELSE([$2],[$3],[$4])
- LIBS=$ats_save_LIBS
-])
-
-
-
-dnl Iteratively interpolate the contents of the second argument
-dnl until interpolation offers no new result. Then assign the
-dnl final result to $1.
-dnl
-dnl Example:
-dnl
-dnl foo=1
-dnl bar='${foo}/2'
-dnl baz='${bar}/3'
-dnl TS_EXPAND_VAR(fraz, $baz)
-dnl $fraz is now "1/2/3"
-dnl
-AC_DEFUN([TS_EXPAND_VAR], [
-ats_last=
-ats_cur="$2"
-while test "x${ats_cur}" != "x${ats_last}";
-do
- ats_last="${ats_cur}"
- ats_cur=`eval "echo ${ats_cur}"`
-done
-$1="${ats_cur}"
-])
-
-
-dnl
-dnl Removes the value of $3 from the string in $2, strips of any leading
-dnl slashes, and returns the value in $1.
-dnl
-dnl Example:
-dnl orig_path="${prefix}/bar"
-dnl TS_PATH_RELATIVE(final_path, $orig_path, $prefix)
-dnl $final_path now contains "bar"
-AC_DEFUN([TS_PATH_RELATIVE], [
-ats_stripped=`echo $2 | sed -e "s#^$3##"`
-# check if the stripping was successful
-if test "x$2" != "x${ats_stripped}"; then
-# it was, so strip of any leading slashes
- $1="`echo ${ats_stripped} | sed -e 's#^/*##'`"
-else
-# it wasn't so return the original
- $1="$2"
-fi
-])
-
-
-dnl TS_SUBST(VARIABLE)
-dnl Makes VARIABLE available in generated files
-dnl (do not use @variable@ in Makefiles, but $(variable))
-AC_DEFUN([TS_SUBST], [
- TS_VAR_SUBST="$TS_VAR_SUBST $1"
- AC_SUBST($1)
-])
-
-dnl
-dnl TS_SUBST_LAYOUT_PATH
-dnl Export (via TS_SUBST) the various path-related variables that
-dnl trafficserver will use while generating scripts and
-dnl the default config file.
-AC_DEFUN([TS_SUBST_LAYOUT_PATH], [
- TS_EXPAND_VAR(exp_$1, [$]$1)
- TS_PATH_RELATIVE(rel_$1, [$]exp_$1, ${prefix})
- TS_SUBST(exp_$1)
- TS_SUBST(rel_$1)
- TS_SUBST($1)
-])
-
-dnl TS_HELP_STRING(LHS, RHS)
-dnl Autoconf 2.50 can not handle substr correctly. It does have
-dnl AS_HELP_STRING, so let's try to call it if we can.
-dnl Note: this define must be on one line so that it can be properly returned
-dnl as the help string. When using this macro with a multi-line RHS, ensure
-dnl that you surround the macro invocation with []s
-AC_DEFUN([TS_HELP_STRING], [ifelse(regexp(AC_ACVERSION, 2\.1), -1, AS_HELP_STRING([$1],[$2]),[ ][$1] substr([ ],len($1))[$2])])
-
-dnl
-dnl TS_LAYOUT(configlayout, layoutname [, extravars])
-dnl
-AC_DEFUN([TS_LAYOUT], [
- if test ! -f $srcdir/config.layout; then
- echo "** Error: Layout file $srcdir/config.layout not found"
- echo "** Error: Cannot use undefined layout '$LAYOUT'"
- exit 1
- fi
- # Catch layout names including a slash which will otherwise
- # confuse the heck out of the sed script.
- case $2 in
- */*)
- echo "** Error: $2 is not a valid layout name"
- exit 1 ;;
- esac
- pldconf=./config.pld
- changequote({,})
- sed -e "1s/[ ]*<[lL]ayout[ ]*$2[ ]*>[ ]*//;1t" \
- -e "1,/[ ]*<[lL]ayout[ ]*$2[ ]*>[ ]*/d" \
- -e '/[ ]*<\/Layout>[ ]*/,$d' \
- -e "s/^[ ]*//g" \
- -e "s/:[ ]*/=\'/g" \
- -e "s/[ ]*$/'/g" \
- $1 > $pldconf
- layout_name=$2
- if test ! -s $pldconf; then
- echo "** Error: unable to find layout $layout_name"
- exit 1
- fi
- . $pldconf
- rm $pldconf
- for var in prefix exec_prefix bindir sbindir libexecdir mandir infodir \
- sysconfdir datadir includedir localstatedir runtimedir \
- logdir libdir installbuilddir libsuffix $3; do
- eval "val=\"\$$var\""
- case $val in
- *+)
- val=`echo $val | sed -e 's;[\+]$;;'`
- eval "$var=\"\$val\""
- autosuffix=yes
- ;;
- *)
- autosuffix=no
- ;;
- esac
- val=`echo $val | sed -e 's:\(.\)/*$:\1:'`
- val=`echo $val | sed -e 's:[\$]\([a-z_]*\):${\1}:g'`
- if test "$autosuffix" = "yes"; then
- if echo $val | grep -i '/trafficserver$' >/dev/null; then
- addtarget=no
- else
- addtarget=yes
- fi
- if test "$addtarget" = "yes"; then
- val="$val/trafficserver"
- fi
- fi
- eval "$var='$val'"
- done
- for var in bindir sbindir libexecdir mandir infodir sysconfdir \
- datadir localstatedir runtimedir logdir libdir $3; do
- eval "val=\"\$$var\""
- case $val in
- *+)
- val=`echo $val | sed -e 's;[\+]$;;'`
- eval "$var=\"\$val\""
- autosuffix=yes
- ;;
- *)
- autosuffix=no
- ;;
- esac
- org_val=
- exp_val="$val"
- while test "x${exp_val}" != "x${org_val}";
- do
- org_val="${exp_val}"
- exp_val="`eval \"echo ${exp_val}\"`"
- done
- if echo $exp_val | grep -i '/trafficserver$' >/dev/null; then
- addtarget=no
- else
- addtarget=yes
- fi
- if test "$addsuffix" = "yes" -a "$addtarget" = "yes"; then
- val="$val/trafficserver"
- fi
- var="pkg${var}"
- eval "$var='$val'"
- done
- changequote([,])
-])dnl
-
-dnl
-dnl TS_ENABLE_LAYOUT(default layout name [, extra vars])
-dnl
-AC_DEFUN([TS_ENABLE_LAYOUT], [
-AC_ARG_ENABLE(layout,
- [TS_HELP_STRING([--enable-layout=LAYOUT],[Enable LAYOUT specified inside config.layout file (defaults to TrafficServer)])],[
- LAYOUT=$enableval
-])
-
-if test -z "$LAYOUT"; then
- LAYOUT="$1"
-fi
-TS_LAYOUT($srcdir/config.layout, $LAYOUT, $2)
-
-AC_MSG_CHECKING(for chosen layout)
-AC_MSG_RESULT($layout_name)
-])
-
-
-dnl
-dnl TS_PARSE_ARGUMENTS
-dnl a reimplementation of autoconf's argument parser,
-dnl used here to allow us to co-exist layouts and argument based
-dnl set ups.
-AC_DEFUN([TS_PARSE_ARGUMENTS], [
-ac_prev=
-# Retrieve the command-line arguments. The eval is needed because
-# the arguments are quoted to preserve accuracy.
-eval "set x $ac_configure_args"
-shift
-for ac_option
-do
-# If the previous option needs an argument, assign it.
- if test -n "$ac_prev"; then
- eval "$ac_prev=\$ac_option"
- ac_prev=
- continue
- fi
-
- ac_optarg=`expr "x$ac_option" : 'x[[^=]]*=\(.*\)'`
-
- case $ac_option in
-
- -bindir | --bindir | --bindi | --bind | --bin | --bi)
- ac_prev=bindir ;;
- -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
- bindir="$ac_optarg"
- pkgbindir="$ac_optarg" ;;
-
- -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
- ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
- | --da=*)
- datadir="$ac_optarg"
- pkgdatadir="$ac_optarg" ;;
-
- -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
- | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
- | --exec | --exe | --ex)
- ac_prev=exec_prefix ;;
- -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
- | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
- | --exec=* | --exe=* | --ex=*)
- exec_prefix="$ac_optarg" ;;
-
- -includedir | --includedir | --includedi | --included | --include \
- | --includ | --inclu | --incl | --inc)
- ac_prev=includedir ;;
- -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
- | --includ=* | --inclu=* | --incl=* | --inc=*)
- includedir="$ac_optarg" ;;
-
- -infodir | --infodir | --infodi | --infod | --info | --inf)
- ac_prev=infodir ;;
- -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
- infodir="$ac_optarg" ;;
-
- -libdir | --libdir | --libdi | --libd)
- ac_prev=libdir ;;
- -libdir=* | --libdir=* | --libdi=* | --libd=*)
- libdir="$ac_optarg"
- pkglibdir="$ac_optarg" ;;
-
- -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
- | --libexe | --libex | --libe)
- ac_prev=libexecdir ;;
- -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
- | --libexe=* | --libex=* | --libe=*)
- libexecdir="$ac_optarg"
- pkglibexecdir="$ac_optarg" ;;
-
- -localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst \
- | --locals | --local | --loca | --loc | --lo)
- ac_prev=localstatedir ;;
- -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* \
- | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
- localstatedir="$ac_optarg"
- pkglocalstatedir="$ac_optarg" ;;
-
- -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
- ac_prev=mandir ;;
- -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
- mandir="$ac_optarg" ;;
-
- -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
- ac_prev=prefix ;;
- -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
- prefix="$ac_optarg" ;;
-
- -runtimedir | --runtimedir | --runtimedi | --runtimed | --runtime | --runtim \
- | --runti | --runt | --run | --ru | --r)
- ac_prev=runtimedir ;;
- -runtimedir=* | --runtimedir=* | --runtimedi=* | --runtimed=* | --runtime=* \
- | --runtim=* | --runti=* | --runt=* | --run=* | --ru=* | --r=*)
- ac_prev=runtimedir ;;
-
- -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
- ac_prev=sbindir ;;
- -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
- | --sbi=* | --sb=*)
- sbindir="$ac_optarg"
- pkgsbindir="$ac_optarg" ;;
-
- -sharedstatedir | --sharedstatedir | --sharedstatedi \
- | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
- | --sharedst | --shareds | --shared | --share | --shar \
- | --sha | --sh)
- ac_prev=sharedstatedir ;;
- -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
- | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
- | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
- | --sha=* | --sh=*)
- sharedstatedir="$ac_optarg" ;;
-
- -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
- | --syscon | --sysco | --sysc | --sys | --sy)
- ac_prev=sysconfdir ;;
- -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
- | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
- sysconfdir="$ac_optarg"
- pkgsysconfdir="$ac_optarg" ;;
-
- esac
-done
-
-# Be sure to have absolute paths.
-for ac_var in exec_prefix prefix
-do
- eval ac_val=$`echo $ac_var`
- case $ac_val in
- [[\\/$]]* | ?:[[\\/]]* | NONE | '' ) ;;
- *) AC_MSG_ERROR([expected an absolute path for --$ac_var: $ac_val]);;
- esac
-done
-
-])dnl
-
-dnl
-dnl Support macro for AC_ARG_ENABLE
-dnl Arguments:
-dnl 1: Variable prefix
-dnl 2: Variable stem
-dnl The prefix is prepended with separating underscore to the stem
-dnl to create the boolean variable to be set. The stem is also used
-dnl to create the name of the AC_ARG_ENABLE variable and therefore
-dnl must be the same as passed to AC_ARG_ENABLE. The prefix should
-dnl be one of "use", "has", or "is", as is appropriate for the
-dnl argument type. The target variable will be set to '1' if the
-dnl enable argument is 'yes', and '0' otherwise.
-dnl
-dnl For instance, if the prefix is "has" and stem is "bob",
-dnl then AC_ARG_ENABLE will set $enable_bob and this macro will set
-dnl $has_bob based on the value in $enable_bob. See the examples
-dnl in configure.ac.
-dnl
-dnl Note: As with AC_ARG_ENABLE, non-alphanumeric characters are
-dnl transformed to underscores.
-dnl
-dnl This macro also AC_SUBST's the constructed variable name.
-AC_DEFUN([TS_ARG_ENABLE_VAR],[
- tsl_prefix="AS_TR_SH($1)"
- tsl_stem="AS_TR_SH($2)"
- eval "tsl_enable=\$enable_${tsl_stem}"
- AS_IF([test "x$tsl_enable" = "xyes"],
- [eval "${tsl_prefix}_${tsl_stem}=1"],
- [eval "${tsl_prefix}_${tsl_stem}=0"]
- )
- AC_SUBST(m4_join([_], $1, AS_TR_SH($2)))
-])
-
-dnl TS_CHECK_SOCKOPT(socket-option, [action-if-found], [action-if-not-found]
-AC_DEFUN([TS_CHECK_SOCKOPT], [
- AC_MSG_CHECKING([for $1 socket option])
- AC_COMPILE_IFELSE([
- AC_LANG_PROGRAM([
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <sys/un.h>
-#include <netinet/in.h>
-#include <netinet/ip.h>
-#include <netinet/tcp.h>
- ], [
- setsockopt(0, SOL_SOCKET, $1, (void*)0, 0);
- ])], [
- AC_MSG_RESULT(yes)
- $2
- ], [
- AC_MSG_RESULT(no)
- $3
- ])
-])
diff --git a/m4/crypto.m4 b/m4/crypto.m4
deleted file mode 100644
index a292d18820..0000000000
--- a/m4/crypto.m4
+++ /dev/null
@@ -1,422 +0,0 @@
-dnl -------------------------------------------------------- -*- autoconf -*-
-dnl Licensed to the Apache Software Foundation (ASF) under one or more
-dnl contributor license agreements. See the NOTICE file distributed with
-dnl this work for additional information regarding copyright ownership.
-dnl The ASF licenses this file to You under the Apache License, Version 2.0
-dnl (the "License"); you may not use this file except in compliance with
-dnl the License. You may obtain a copy of the License at
-dnl
-dnl http://www.apache.org/licenses/LICENSE-2.0
-dnl
-dnl Unless required by applicable law or agreed to in writing, software
-dnl distributed under the License is distributed on an "AS IS" BASIS,
-dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-dnl See the License for the specific language governing permissions and
-dnl limitations under the License.
-
-dnl
-dnl crypto.m4 Trafficserver's Crypto autoconf macros
-dnl
-
-dnl
-dnl TS_CHECK_CRYPTO: look for crypto libraries and headers
-dnl
-AC_DEFUN([TS_CHECK_CRYPTO], [
- AC_CHECK_LIB([crypt], [crypt], [AC_SUBST([LIBCRYPT],["-lcrypt"])])
-
- AX_CHECK_OPENSSL([
- enable_crypto=yes
- ], [
- AC_MSG_ERROR(failed to find OpenSSL)
- enable_crypto=no
- ])
-
- if test "x${enable_crypto}" = "xyes"; then
- TS_ADDTO(LDFLAGS, [$OPENSSL_LDFLAGS])
- TS_ADDTO(CPPFLAGS, [$OPENSSL_INCLUDES])
- TS_ADDTO(CPPFLAGS, [-DOPENSSL_NO_SSL_INTERN])
- fi
-
- dnl add checks for other varieties of ssl here
-])
-
-dnl
-dnl Check OpenSSL Version
-dnl
-AC_DEFUN([TS_CHECK_CRYPTO_VERSION], [
- AC_MSG_CHECKING([OpenSSL version])
- AC_RUN_IFELSE([AC_LANG_SOURCE(
- [
-#include <openssl/opensslv.h>
-int main() {
- if (OPENSSL_VERSION_NUMBER < 0x1000200fL) {
- return 1;
- }
- return 0;
-}
- ])],
- [AC_MSG_RESULT([ok])], [AC_MSG_FAILURE([requires OpenSSL version 1.0.2 or greater])], [AC_MSG_RESULT([assuming ok])]
- )
-])
-
-dnl
-dnl Check OpenSSL Version 3
-dnl
-AC_DEFUN([TS_CHECK_OPENSSL3], [
- AC_MSG_CHECKING([for OpenSSL version 3])
- AC_RUN_IFELSE([AC_LANG_SOURCE(
- [
-#include <openssl/opensslv.h>
-int main() {
- if (OPENSSL_VERSION_NUMBER > 0x3000000fL) {
- return 0;
- }
- return 1;
-}
- ])],
- [AC_MSG_RESULT(yes) TS_ADDTO(CPPFLAGS, -DOPENSSL_API_COMPAT=10002 -DOPENSSL_IS_OPENSSL3) openssl_is_openssl3=1], [AC_MSG_RESULT(no)]
- )
-])
-
-dnl
-dnl Since OpenSSL 1.1.0
-dnl
-AC_DEFUN([TS_CHECK_CRYPTO_ASYNC], [
- enable_tls_async=yes
- _async_saved_LIBS=$LIBS
-
- TS_ADDTO(LIBS, [$OPENSSL_LIBS])
- AC_CHECK_FUNCS(SSL_get_all_async_fds ASYNC_init_thread,
- [], [enable_tls_async=no]
- )
- LIBS=$_async_saved_LIBS
-
- AC_MSG_CHECKING(whether to enable ASYNC job openssl support)
- AC_MSG_RESULT([$enable_tls_async])
- TS_ARG_ENABLE_VAR([use], [tls-async])
- AC_SUBST(use_tls_async)
-])
-
-dnl
-dnl Since OpenSSL 1.1.1
-dnl
-AC_DEFUN([TS_CHECK_CRYPTO_HELLO_CB], [
- _hello_saved_LIBS=$LIBS
- enable_hello_cb=yes
-
- TS_ADDTO(LIBS, [$OPENSSL_LIBS])
- AC_CHECK_HEADERS(openssl/ssl.h openssl/ts.h)
- AC_CHECK_HEADERS(openssl/tls1.h, [], [],
-[ #if HAVE_OPENSSL_SSL_H
-#include <openssl/ssl.h>
-#include <openssl/tls1.h>
-#endif ])
-
- AC_MSG_CHECKING([for SSL_CTX_set_client_hello_cb])
- AC_LINK_IFELSE(
- [
- AC_LANG_PROGRAM([[
-#if HAVE_OPENSSL_SSL_H
-#include <openssl/ssl.h>
-#endif
-#if HAVE_OPENSSL_TLS1_H
-#include <openssl/tls1.h>
-#endif
- ]],
- [[SSL_CTX_set_client_hello_cb(NULL, NULL, NULL);]])
- ],
- [
- AC_MSG_RESULT([yes])
- ],
- [
- AC_MSG_RESULT([no])
- enable_hello_cb=no
- ])
-
- LIBS=$_hello_saved_LIBS
-
- AC_MSG_CHECKING(whether to enable TLS client hello callback support)
- AC_MSG_RESULT([$enable_hello_cb])
- TS_ARG_ENABLE_VAR([use], [hello-cb])
- AC_SUBST(use_hello_cb)
-])
-
-dnl
-dnl Since OpenSSL 1.1.0
-dnl
-AC_DEFUN([TS_CHECK_CRYPTO_SET_RBIO], [
- _rbio_saved_LIBS=$LIBS
- enable_set_rbio=yes
-
- TS_ADDTO(LIBS, [$OPENSSL_LIBS])
- AC_MSG_CHECKING([for SSL_set0_rbio])
- AC_LINK_IFELSE(
- [
- AC_LANG_PROGRAM([[
-#if HAVE_OPENSSL_SSL_H
-#include <openssl/ssl.h>
-#endif
-#if HAVE_OPENSSL_TLS1_H
-#include <openssl/tls1.h>
-#endif
- ]],
- [[SSL_set0_rbio(NULL, NULL);]])
- ],
- [
- AC_MSG_RESULT([yes])
- ],
- [
- AC_MSG_RESULT([no])
- enable_set_rbio=no
- ])
-
- LIBS=$_rbio_saved_LIBS
-
- AC_MSG_CHECKING(whether to enable set rbio)
- AC_MSG_RESULT([$enable_set_rbio])
- TS_ARG_ENABLE_VAR([use], [set-rbio])
- AC_SUBST(use_set_rbio)
-])
-
-dnl
-dnl Since OpenSSL 1.1.0
-dnl
-AC_DEFUN([TS_CHECK_CRYPTO_DH_GET_2048_256], [
- _dh_saved_LIBS=$LIBS
- enable_dh_get_2048_256=yes
-
- TS_ADDTO(LIBS, [$OPENSSL_LIBS])
- AC_MSG_CHECKING([for DH_get_2048_256])
- AC_LINK_IFELSE(
- [
- AC_LANG_PROGRAM([[
-#include<openssl/dh.h>
- ]],
- [[DH_get_2048_256();]])
- ],
- [
- AC_MSG_RESULT([yes])
- ],
- [
- AC_MSG_RESULT([no])
- enable_dh_get_2048_256=no
- ])
-
- LIBS=$_dh_saved_LIBS
-
- AC_MSG_CHECKING(whether to enable DH_get_2048_256)
- AC_MSG_RESULT([$enable_dh_get_2048_256])
- TS_ARG_ENABLE_VAR([use], [dh_get_2048_256])
- AC_SUBST(use_dh_get_2048_256)
-])
-
-AC_DEFUN([TS_CHECK_CRYPTO_HKDF], [
- enable_hkdf=no
- _hkdf_saved_LIBS=$LIBS
- TS_ADDTO(LIBS, [$OPENSSL_LIBS])
- AC_MSG_CHECKING([for EVP_PKEY_CTX_hkdf_mode])
- AC_LINK_IFELSE(
- [
- AC_LANG_PROGRAM([[
-#include <openssl/kdf.h>
- ]],
- [[
-#ifndef EVP_PKEY_CTX_hkdf_mode
-# error no EVP_PKEY_CTX_hkdf_mode support
-#endif
- ]])
- ],
- [
- AC_MSG_RESULT([yes])
- enable_hkdf=yes
- ],
- [
- AC_MSG_RESULT([no])
- ])
- AC_CHECK_FUNC(HKDF_extract, [
- enable_hkdf=yes
- ], [])
- LIBS=$_hkdf_saved_LIBS
- TS_ARG_ENABLE_VAR([use], [hkdf])
- AC_SUBST(use_hkdf)
-])
-
-AC_DEFUN([TS_CHECK_CRYPTO_TLS13], [
- enable_tls13=yes
- _tls13_saved_LIBS=$LIBS
- TS_ADDTO(LIBS, [$OPENSSL_LIBS])
- AC_MSG_CHECKING([whether TLS 1.3 is supported])
- AC_LINK_IFELSE(
- [
- AC_LANG_PROGRAM([[
-#include <openssl/ssl.h>
- ]],
- [[
-#ifndef TLS1_3_VERSION
-# error no TLS1_3 support
-#endif
-#ifdef OPENSSL_NO_TLS1_3
-# error no TLS1_3 support
-#endif
- ]])
- ],
- [
- AC_MSG_RESULT([yes])
- ],
- [
- AC_MSG_RESULT([no])
- enable_tls13=no
- ])
- LIBS=$_tls13_saved_LIBS
- TS_ARG_ENABLE_VAR([use], [tls13])
- AC_SUBST(use_tls13)
-])
-
-dnl
-dnl Since OpenSSL 1.1.1
-dnl
-AC_DEFUN([TS_CHECK_CRYPTO_KEYLOGGING], [
- _keylogging_saved_LIBS=$LIBS
- TS_ADDTO(LIBS, [$OPENSSL_LIBS])
- AC_CHECK_FUNCS(SSL_CTX_set_keylog_callback, [enable_tls_keylogging=yes], [enable_tls_keylogging=no])
- LIBS=$_keylogging_saved_LIBS
-
- AC_MSG_CHECKING(whether to enable TLS keylogging support)
- AC_MSG_RESULT([$enable_tls_keylogging])
- TS_ARG_ENABLE_VAR([has], [tls-keylogging])
- AC_SUBST(has_tls_keylogging)
-])
-
-dnl
-dnl Since OpenSSL 1.1.1
-dnl
-AC_DEFUN([TS_CHECK_CRYPTO_SET_CIPHERSUITES], [
- _set_ciphersuites_saved_LIBS=$LIBS
-
- TS_ADDTO(LIBS, [$OPENSSL_LIBS])
- AC_CHECK_HEADERS(openssl/ssl.h)
- AC_CHECK_FUNCS(SSL_CTX_set_ciphersuites, [enable_tls_set_ciphersuites=yes], [enable_tls_set_ciphersuites=no])
-
- LIBS=$_set_ciphersuites_saved_LIBS
-
- AC_MSG_CHECKING(whether to enable TLSv1.3 ciphersuites configuration is supported)
- AC_MSG_RESULT([$enable_tls_set_ciphersuites])
- TS_ARG_ENABLE_VAR([use], [tls-set-ciphersuites])
- AC_SUBST(use_tls_set_ciphersuites)
-])
-
-dnl
-dnl Since OpenSSL 1.1.1
-dnl
-AC_DEFUN([TS_CHECK_EARLY_DATA], [
- _set_ciphersuites_saved_LIBS=$LIBS
-
- has_tls_early_data=0
- early_data_check=no
- TS_ADDTO(LIBS, [$OPENSSL_LIBS])
- AC_CHECK_HEADERS(openssl/ssl.h)
- AC_CHECK_FUNCS(
- SSL_set_max_early_data SSL_read_early_data SSL_write_early_data SSL_in_early_data,
- [
- has_tls_early_data=1
- early_data_check=yes
- ]
- )
-
- LIBS=$_set_ciphersuites_saved_LIBS
-
- AC_MSG_CHECKING([for OpenSSL early data support])
- AC_MSG_RESULT([$early_data_check])
-
- AC_SUBST(has_tls_early_data)
-])
-
-dnl
-dnl Since OpenSSL 1.1.1
-dnl
-dnl SSL_CTX_set_tlsext_ticket_key_evp_cb function is for OpenSSL 3.0
-dnl SSL_CTX_set_tlsext_ticket_key_cb macro is for OpenSSL 1.1.1
-dnl SSL_CTX_set_tlsext_ticket_key_cb function is for BoringSSL
-AC_DEFUN([TS_CHECK_SESSION_TICKET], [
- _set_ssl_ctx_set_tlsext_ticket_key_evp_cb_saved_LIBS=$LIBS
-
- TS_ADDTO(LIBS, [$OPENSSL_LIBS])
- AC_CHECK_HEADERS(openssl/ssl.h)
- session_ticket_check=no
- has_tls_session_ticket=0
- AC_MSG_CHECKING([for SSL_CTX_set_tlsext_ticket_key_cb macro])
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([[#include <openssl/ssl.h>]],
- [[
- #ifndef SSL_CTX_set_tlsext_ticket_key_cb
- #error
- #endif
- ]])
- ],
- [
- AC_DEFINE(HAVE_SSL_CTX_SET_TLSEXT_TICKET_KEY_CB, 1, [Whether SSL_CTX_set_tlsext_ticket_key_cb is available])
- session_ticket_check=yes
- has_tls_session_ticket=1
- ],
- []
- )
- AC_MSG_RESULT([$session_ticket_check])
- AC_CHECK_FUNCS(
- SSL_CTX_set_tlsext_ticket_key_evp_cb SSL_CTX_set_tlsext_ticket_key_cb,
- [
- session_ticket_check=yes
- has_tls_session_ticket=1
- ],
- []
- )
-
- LIBS=$_set_ssl_ctx_set_tlsext_ticket_key_evp_cb_saved_LIBS
-
- AC_MSG_CHECKING([for session ticket support])
- AC_MSG_RESULT([$session_ticket_check])
-
- AC_SUBST(has_tls_session_ticket)
-])
-
-dnl SSL_set1_verify_cert_store macro is for OpenSSL 1.1.1
-dnl SSL_set1_verify_cert_store function is for BoringSSL
-AC_DEFUN([TS_CHECK_VERIFY_CERT_STORE], [
- _saved_LIBS=$LIBS
-
- TS_ADDTO(LIBS, [$OPENSSL_LIBS])
- AC_CHECK_HEADERS(openssl/ssl.h)
- verify_cert_store_check=no
- has_verify_cert_store=0
- AC_MSG_CHECKING([for SSL_set1_verify_cert_store macro])
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([[#include <openssl/ssl.h>]],
- [[
- #ifndef SSL_set1_verify_cert_store
- #error
- #endif
- ]])
- ],
- [
- verify_cert_store_check=yes
- has_verify_cert_store=1
- ],
- []
- )
- AC_MSG_RESULT([$verify_cert_store_check])
-
- AC_CHECK_FUNCS(
- SSL_set1_verify_cert_store,
- [
- verify_cert_store_check=yes
- has_verify_cert_store=1
- ],
- []
- )
-
- LIBS=$_saved_LIBS
-
- AC_MSG_CHECKING([for setting verify cert store APIs])
- AC_MSG_RESULT([$verify_cert_store_check])
-
- AC_SUBST(has_verify_cert_store)
-])
diff --git a/m4/fmt.m4 b/m4/fmt.m4
deleted file mode 100644
index dcd0a1a1cf..0000000000
--- a/m4/fmt.m4
+++ /dev/null
@@ -1,77 +0,0 @@
-dnl -------------------------------------------------------- -*- autoconf -*-
-dnl Licensed to the Apache Software Foundation (ASF) under one or more
-dnl contributor license agreements. See the NOTICE file distributed with
-dnl this work for additional information regarding copyright ownership.
-dnl The ASF licenses this file to You under the Apache License, Version 2.0
-dnl (the "License"); you may not use this file except in compliance with
-dnl the License. You may obtain a copy of the License at
-dnl
-dnl http://www.apache.org/licenses/LICENSE-2.0
-dnl
-dnl Unless required by applicable law or agreed to in writing, software
-dnl distributed under the License is distributed on an "AS IS" BASIS,
-dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-dnl See the License for the specific language governing permissions and
-dnl limitations under the License.
-
-dnl
-dnl fmt.m4: Trafficserver's fmt autoconf macros
-dnl
-
-dnl
-dnl TS_CHECK_FMT: look for fmt libraries and headers
-dnl
-AC_DEFUN([TS_CHECK_FMT], [
-has_fmt=0
-AC_ARG_WITH(fmt, [AS_HELP_STRING([--with-fmt=DIR],[use a specific fmt library])],
-[
- if test "x$withval" != "xyes" && test "x$withval" != "x"; then
- fmt_base_dir="$withval"
- if test "$withval" != "no"; then
- has_fmt=1
- case "$withval" in
- *":"*)
- fmt_include="`echo $withval | sed -e 's/:.*$//'`"
- fmt_ldflags="`echo $withval | sed -e 's/^.*://'`"
- AC_MSG_CHECKING(checking for fmt includes in $fmt_include libs in $fmt_ldflags )
- ;;
- *)
- fmt_include="$withval/include"
- fmt_ldflags="$withval/lib"
- AC_MSG_CHECKING(checking for fmt includes in $withval)
- ;;
- esac
- fi
- fi
-
- if test -d $fmt_include && test -d $fmt_ldflags && test -f $fmt_include/fmt/core.h; then
- AC_MSG_RESULT([ok])
- else
- AC_MSG_RESULT([not found])
- fi
-
-if test "$has_fmt" != "0"; then
- saved_ldflags=$LDFLAGS
- saved_cppflags=$CPPFLAGS
- fmt_have_headers=0
- if test "$fmt_base_dir" != "/usr"; then
- TS_ADDTO(CPPFLAGS, [-I${fmt_include}])
- TS_ADDTO(LDFLAGS, [-L${fmt_ldflags}])
- TS_ADDTO_RPATH(${fmt_ldflags})
- fi
-
- AC_SUBST([FMT_LIB], [-lfmt])
- AC_SUBST([FMT_CFLAGS], [-I${fmt_include}])
-fi
-],
-[
- PKG_CHECK_EXISTS([fmt],
- [
- PKG_CHECK_MODULES([LIBFMT], [fmt >= 0.8.0], [
- AC_SUBST([FMT_LIB], [$LIBFMT_LIBS])
- AC_SUBST([FMT_CFLAGS], [$LIBFMT_CFLAGS])
- ], [])
- ], [])
-])
-
-])
diff --git a/m4/hiredis.m4 b/m4/hiredis.m4
deleted file mode 100644
index b2f09179be..0000000000
--- a/m4/hiredis.m4
+++ /dev/null
@@ -1,79 +0,0 @@
-dnl -------------------------------------------------------- -*- autoconf -*-
-dnl Licensed to the Apache Software Foundation (ASF) under one or more
-dnl contributor license agreements. See the NOTICE file distributed with
-dnl this work for additional information regarding copyright ownership.
-dnl The ASF licenses this file to You under the Apache License, Version 2.0
-dnl (the "License"); you may not use this file except in compliance with
-dnl the License. You may obtain a copy of the License at
-dnl
-dnl http://www.apache.org/licenses/LICENSE-2.0
-dnl
-dnl Unless required by applicable law or agreed to in writing, software
-dnl distributed under the License is distributed on an "AS IS" BASIS,
-dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-dnl See the License for the specific language governing permissions and
-dnl limitations under the License.
-
-dnl
-dnl hiredis.m4: Trafficserver's hiredis autoconf macros
-dnl
-
-dnl
-dnl TS_CHECK_HIREDIS: look for hiredis libraries and headers
-dnl
-
-AC_DEFUN([TS_CHECK_HIREDIS], [
-hiredis_base_dir='/usr'
-has_hiredis=1
-AC_ARG_WITH(hiredis, [AS_HELP_STRING([--with-hiredis=DIR],[use a specific hiredis library])],
-[
- if test "x$withval" != "xyes" && test "x$withval" != "x"; then
- hiredis_base_dir="$withval"
- fi
-],[])
-
-case "$hiredis_base_dir" in
-*":"*)
- hiredis_include="`echo $hiredis_base_dir |sed -e 's/:.*$//'`"
- hiredis_ldflags="`echo $hiredis_base_dir |sed -e 's/^.*://'`"
- AC_MSG_CHECKING(for hiredis includes in $hiredis_include libs in $hiredis_ldflags )
- ;;
-*)
- hiredis_include="$hiredis_base_dir/include"
- hiredis_ldflags="$hiredis_base_dir/lib"
- AC_MSG_CHECKING(for hiredis includes in $hiredis_base_dir)
- ;;
-esac
-
-if test -d $hiredis_include && test -d $hiredis_ldflags && test -f $hiredis_include/hiredis/hiredis.h; then
- AC_MSG_RESULT([yes])
-else
- has_hiredis=0
- AC_MSG_RESULT([no])
-fi
-
-if test "$has_hiredis" != "0"; then
- saved_ldflags=$LDFLAGS
- saved_cppflags=$CPPFLAGS
- hiredis_have_headers=0
- hiredis_have_libs=0
- if test "$hiredis_base_dir" != "/usr"; then
- TS_ADDTO(CPPFLAGS, [-I${hiredis_include}])
- TS_ADDTO(LDFLAGS, [-L${hiredis_ldflags}])
- TS_ADDTO_RPATH(${hiredis_ldflags})
- fi
-
- AC_CHECK_LIB([hiredis], redisConnect, [hiredis_have_libs=1])
- if test "$hiredis_have_libs" != "0"; then
- AC_CHECK_HEADERS(hiredis/hiredis.h, [hiredis_have_headers=1])
- fi
- if test "$hiredis_have_headers" != "0"; then
- AC_SUBST([LIB_HIREDIS], [-lhiredis])
- AC_SUBST([CFLAGS_HIREDIS], [-I${hiredis_include}])
- else
- has_hiredis=0
- CPPFLAGS=$saved_cppflags
- LDFLAGS=$saved_ldflags
- fi
-fi
-])
diff --git a/m4/jansson.m4 b/m4/jansson.m4
deleted file mode 100644
index 07987c5acf..0000000000
--- a/m4/jansson.m4
+++ /dev/null
@@ -1,47 +0,0 @@
-dnl -------------------------------------------------------- -*- autoconf -*-
-dnl Licensed to the Apache Software Foundation (ASF) under one or more
-dnl contributor license agreements. See the NOTICE file distributed with
-dnl this work for additional information regarding copyright ownership.
-dnl The ASF licenses this file to You under the Apache License, Version 2.0
-dnl (the "License"); you may not use this file except in compliance with
-dnl the License. You may obtain a copy of the License at
-dnl
-dnl http://www.apache.org/licenses/LICENSE-2.0
-dnl
-dnl Unless required by applicable law or agreed to in writing, software
-dnl distributed under the License is distributed on an "AS IS" BASIS,
-dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-dnl See the License for the specific language governing permissions and
-dnl limitations under the License.
-
-dnl
-dnl jansson.m4: Trafficserver's jansson autoconf macros
-dnl
-
-dnl
-dnl TS_CHECK_JANSSON: look for jansson libraries and headers
-dnl
-
-AC_DEFUN([TS_CHECK_JANSSON], [
- AC_MSG_CHECKING([for --with-jansson])
- AC_ARG_WITH(
- [jansson],
- [AS_HELP_STRING([--with-jansson], [use a specific jansson library])],
- [ LDFLAGS="$LDFLAGS -L$with_jansson/lib";
- CFLAGS="$CFLAGS -I$with_jansson/include/";
- CPPFLAGS="$CPPFLAGS -I$with_jansson/include/";
- AC_MSG_RESULT([$with_jansson])
- ],
- [ AC_MSG_RESULT([no])]
- )
-
- AC_CHECK_HEADERS([jansson.h], [
- AC_MSG_CHECKING([whether jansson is dynamic])
- TS_LINK_WITH_FLAGS_IFELSE([-fPIC -ljansson],[AC_LANG_PROGRAM(
- [#include <jansson.h>],
- [(void) json_object();])],
- [AC_MSG_RESULT([yes]); LIBJANSSON=-ljansson],
- [AC_MSG_RESULT([no]); LIBJANSSON=-l:libjansson.a])
- ],
- [LIBJANSSON=])
-])
diff --git a/m4/jemalloc.m4 b/m4/jemalloc.m4
deleted file mode 100644
index ca788987ac..0000000000
--- a/m4/jemalloc.m4
+++ /dev/null
@@ -1,89 +0,0 @@
-dnl -------------------------------------------------------- -*- autoconf -*-
-dnl Licensed to the Apache Software Foundation (ASF) under one or more
-dnl contributor license agreements. See the NOTICE file distributed with
-dnl this work for additional information regarding copyright ownership.
-dnl The ASF licenses this file to You under the Apache License, Version 2.0
-dnl (the "License"); you may not use this file except in compliance with
-dnl the License. You may obtain a copy of the License at
-dnl
-dnl http://www.apache.org/licenses/LICENSE-2.0
-dnl
-dnl Unless required by applicable law or agreed to in writing, software
-dnl distributed under the License is distributed on an "AS IS" BASIS,
-dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-dnl See the License for the specific language governing permissions and
-dnl limitations under the License.
-
-dnl
-dnl jemalloc.m4: Trafficserver's jemalloc autoconf macros
-dnl
-
-AC_DEFUN([TS_CHECK_JEMALLOC], [
-has_jemalloc=no
-AC_ARG_WITH([jemalloc], [AS_HELP_STRING([--with-jemalloc=DIR],[use a specific jemalloc library])],
-[
- if test "$withval" != "no"; then
- if test "x${has_mimalloc}" = "xyes"; then
- AC_MSG_ERROR([Cannot compile with both jemalloc and mimalloc])
- fi
- has_jemalloc=yes
- jemalloc_base_dir="$withval"
- case "$withval" in
- yes)
- jemalloc_base_dir="/usr"
- AC_MSG_NOTICE(checking for jemalloc includes and libs in standard directories)
- ;;
- *":"*)
- jemalloc_include="`echo $withval |sed -e 's/:.*$//'`"
- jemalloc_ldflags="`echo $withval |sed -e 's/^.*://'`"
- AC_MSG_NOTICE(checking for jemalloc includes in $jemalloc_include and libs in $jemalloc_ldflags)
- ;;
- *)
- jemalloc_include="$withval/include"
- jemalloc_ldflags="$withval/lib"
- AC_MSG_NOTICE(checking for jemalloc includes in $jemalloc_include and libs in $jemalloc_ldflags)
- ;;
- esac
- fi
-])
-jemalloch=0
-if test "$has_jemalloc" != "no"; then
- saved_ldflags=$LDFLAGS
- saved_cppflags=$CPPFLAGS
- jemalloc_has_headers=0
- jemalloc_has_libs=0
- if test "$jemalloc_base_dir" != "/usr"; then
- TS_ADDTO(CPPFLAGS, [-I${jemalloc_include}])
- TS_ADDTO(LDFLAGS, [-L${jemalloc_ldflags}])
- TS_ADDTO(LDFLAGS, [-Wl,--as-needed -L${jemalloc_ldflags} -Wl,-rpath,${jemalloc_ldflags} -Wl,--no-as-needed])
- TS_ADDTO_RPATH(${jemalloc_ldflags})
- fi
- # On Darwin, jemalloc symbols are prefixed with je_. Search for that first, then fall back
- # to unadorned symbols.
- AC_SEARCH_LIBS([je_malloc_stats_print], [jemalloc], [jemalloc_has_libs=1],
- [AC_SEARCH_LIBS([malloc_stats_print], [jemalloc], [jemalloc_has_libs=1])]
- )
- if test "$jemalloc_has_libs" != "0"; then
- AC_CHECK_HEADERS(jemalloc/jemalloc.h, [jemalloc_has_headers=1])
- fi
- if test "$jemalloc_has_headers" != "0"; then
- AC_RUN_IFELSE([
- AC_LANG_PROGRAM(
- [#include <jemalloc/jemalloc.h>],
- [
- #if (JEMALLOC_VERSION_MAJOR == 0)
- exit(1);
- #endif
- ]
- )],
- [jemalloch=1],
- [AC_MSG_ERROR(jemalloc has bogus version)]
- )
- else
- AC_MSG_WARN([jemalloc not found])
- CPPFLAGS=$saved_cppflags
- LDFLAGS=$saved_ldflags
- fi
-fi
-AC_SUBST(jemalloch)
-])
diff --git a/m4/libswoc.m4 b/m4/libswoc.m4
deleted file mode 100644
index 27c1e1db09..0000000000
--- a/m4/libswoc.m4
+++ /dev/null
@@ -1,110 +0,0 @@
-dnl -------------------------------------------------------- -*- autoconf -*-
-dnl Licensed to the Apache Software Foundation (ASF) under one or more
-dnl contributor license agreements. See the NOTICE file distributed with
-dnl this work for additional information regarding copyright ownership.
-dnl The ASF licenses this file to You under the Apache License, Version 2.0
-dnl (the "License"); you may not use this file except in compliance with
-dnl the License. You may obtain a copy of the License at
-dnl
-dnl http://www.apache.org/licenses/LICENSE-2.0
-dnl
-dnl Unless required by applicable law or agreed to in writing, software
-dnl distributed under the License is distributed on an "AS IS" BASIS,
-dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-dnl See the License for the specific language governing permissions and
-dnl limitations under the License.
-
-dnl
-dnl libswoc.m4: Trafficserver's libswoc autoconf macros
-dnl
-
-dnl
-dnl TS_CHECK_LIBSWOC: look for libswoc libraries and headers
-dnl value
-dnl "yes" libswoc is presumed available already and nothing needs to be done.
-dnl "no" Not allowed, generates an error.
-dnl * Presumed to be a directory containing libswoc.
-dnl
-AC_DEFUN([TS_CHECK_LIBSWOC], [
- # internal defaults.
- has_libswoc=no
- SWOC_INCLUDES=-I\${abs_top_srcdir}/lib/swoc/include
- SWOC_LIBS=-ltsswoc
- SWOC_LDFLAGS=-L\${abs_top_builddir}/lib/swoc
- AC_ARG_WITH(libswoc, [AS_HELP_STRING([--with-libswoc=DIR],[use a specific libswoc library])],
- [
- AC_MSG_CHECKING(checking libswoc)
- # Check for override.
- if test "x$withval" != "x"; then
- has_libswoc=yes # inhibit internal build of libswoc
- if test "$withval" = "no" ; then
- AC_MSG_ERROR([libswoc is required internally, it cannot be disabled])
- elif test "$withval" = "yes" ; then # assume libswoc is installed in a standard place
- SWOC_INCLUDES=
- SWOC_LIBS=-lswoc
- SWOC_LDFLAGS=
- AC_MSG_RESULT([ok])
- else
- swoc_pkg_cfg=""
- # Defaults if pkg config not found.
- SWOC_INCLUDES="-I${withval}/include"
- SWOC_LIBS="-lswoc"
- SWOC_LDFLAGS="-L${withval}/lib"
- if test -n "$PKG_CONFIG" ; then # pkg-config binary was found
- for pk in "lib/pkgconfig" "lib" "." ; do
- if PKG_CONFIG_LIBDIR=${withval}/${pk} $PKG_CONFIG --exists libswoc ; then
- swoc_pkg_cfg=" [pkg-config: ${pk}]"
- SWOC_INCLUDES=$(PKG_CONFIG_LIBDIR=${withval}/${pk} $PKG_CONFIG --cflags libswoc)
- SWOC_LIBS=$(PKG_CONFIG_LIBDIR=${withval}/${pk} $PKG_CONFIG --libs-only-l libswoc)
- SWOC_LDFLAGS=$(PKG_CONFIG_LIBDIR=${withval}/${pk} $PKG_CONFIG --libs-only-L libswoc)
- break
- fi
- done
- fi
-
- # time to see if things work
-
- swoc_CXXFLAGS="$CXXFLAGS"
- swoc_LIBS="${LIBS}"
- CXXFLAGS="$CXXFLAGS ${SWOC_INCLUDES}"
- LIBS="${SWOC_LDFLAGS} ${SWOC_LIBS}"
-
- AC_LANG_PUSH(C++)
- AC_LINK_IFELSE(
- [AC_LANG_PROGRAM([#include <swoc/TextView.h>], [swoc::TextView tv{"Evil Dave Rulz"};])],
- [AC_MSG_RESULT([ok${swoc_pkg_cfg}])],
- [
- AC_MSG_RESULT([failed${swoc_pkg_cfg}])
- AC_MSG_ERROR([${withval} does not contain a valid libswoc.])
- ]
- )
- AC_LANG_POP
-
- CXXFLAGS="${swoc_CXXFLAGS}"
- LIBS="${swoc_LIBS}"
-
- fi # valid override
- fi # override provided
-
- ])
-
- AC_SUBST([SWOC_INCLUDES])
- AC_SUBST([SWOC_LIBS])
- AC_SUBST([SWOC_LDFLAGS])
-
-])
-
-dnl TS_CHECK_SWOC: check if we want to export libswoc headers from trafficserver. default: not exported
-AC_DEFUN([TS_CHECK_SWOC_HEADERS_EXPORT], [
-AC_MSG_CHECKING([whether to export libswoc headers])
-AC_ARG_ENABLE([swoc-headers],
- [AS_HELP_STRING([--disable-swoc-headers],[Do not export ATS libswoc headers])],
- [],
- [
- if test "x$has_libswoc" = "xyes" ; then
- enable_swoc_headers=no
- fi
- ]
-)
-AC_MSG_RESULT([$enable_swoc_headers])
-])
diff --git a/m4/luajit.m4 b/m4/luajit.m4
deleted file mode 100644
index 8992c21b89..0000000000
--- a/m4/luajit.m4
+++ /dev/null
@@ -1,179 +0,0 @@
-dnl -------------------------------------------------------- -*- autoconf -*-
-dnl Licensed to the Apache Software Foundation (ASF) under one or more
-dnl contributor license agreements. See the NOTICE file distributed with
-dnl this work for additional information regarding copyright ownership.
-dnl The ASF licenses this file to You under the Apache License, Version 2.0
-dnl (the "License"); you may not use this file except in compliance with
-dnl the License. You may obtain a copy of the License at
-dnl
-dnl http://www.apache.org/licenses/LICENSE-2.0
-dnl
-dnl Unless required by applicable law or agreed to in writing, software
-dnl distributed under the License is distributed on an "AS IS" BASIS,
-dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-dnl See the License for the specific language governing permissions and
-dnl limitations under the License.
-
-dnl
-dnl luajit.m4: Trafficserver's luajit autoconf macros
-dnl
-
-dnl
-dnl TS_CHECK_LUAJIT: look for luajit libraries and headers
-dnl
-AC_DEFUN([TS_CHECK_LUAJIT], [
-has_luajit=0
-AC_ARG_WITH(luajit, [AS_HELP_STRING([--with-luajit=DIR],[use a specific luajit library])],
-[
- if test "x$withval" != "xyes" && test "x$withval" != "x"; then
- luajit_base_dir="$withval"
- if test "$withval" != "no"; then
- has_luajit=1
-
- case "$withval" in
- *":"*)
- luajit_include="`echo $withval | sed -e 's/:.*$//'`"
- luajit_ldflags="`echo $withval | sed -e 's/^.*://'`"
- AC_MSG_CHECKING(checking for luajit includes in $luajit_include libs in $luajit_ldflags)
- ;;
- *)
- # looking for versioned subdir
- for version in 2.0 2.1 ; do
- dir="$withval/include/luajit-$version"
- AC_MSG_CHECKING(checking for luajit in $dir)
- if test -d $dir; then
- AC_MSG_RESULT([ok])
- luajit_include=$dir
- break
- else
- AC_MSG_RESULT([not found])
- fi
- done
-
- if test "x$luajit_include" = "x"; then
- AC_MSG_ERROR([*** could not find luajit include dir ***])
- fi
-
- luajit_ldflags="$withval/lib"
- ;;
- esac
-
- fi
- fi
-
- if test -d $luajit_include && test -d $luajit_ldflags && test -f $luajit_include/luajit.h; then
- AC_MSG_RESULT([ok])
- else
- AC_MSG_RESULT([not found])
- fi
-
-if test "$has_luajit" != "0"; then
- saved_ldflags=$LDFLAGS
- saved_cppflags=$CPPFLAGS
- luajit_have_headers=0
- luajit_have_libs=0
-
- TS_ADDTO(CPPFLAGS, [-I${luajit_include}])
- if test "$luajit_base_dir" != "/usr"; then
- TS_ADDTO(LDFLAGS, [-L${luajit_ldflags}])
- TS_ADDTO_RPATH(${luajit_ldflags})
- fi
-
- AC_CHECK_LIB([luajit-5.1], luaopen_jit, [luajit_have_libs=1])
- if test "$luajit_have_libs" == "1"; then
- AC_CHECK_HEADERS(luajit.h, [luajit_have_headers=1])
- fi
-
- if test "$luajit_have_headers" == "1"; then
- AC_SUBST([LUAJIT_LDFLAGS], ["-L${luajit_ldflags} -lluajit-5.1"])
- AC_SUBST([LUAJIT_CPPFLAGS], [-I${luajit_include}])
- enable_luajit=yes
- else
- has_luajit=0
- AC_MSG_ERROR([*** luajit requested but either libluajit-5.1 or luajit.h cannot be found ***])
- fi
-
- CPPFLAGS=$saved_cppflags
- LDFLAGS=$saved_ldflags
-fi
-],
-[
-# use pkg-config to search for it
-#
-
-PKG_CHECK_MODULES([LUAJIT], [luajit >= 2.0.4], [
- AC_SUBST([LUAJIT_LDFLAGS], [$LUAJIT_LIBS])
- AC_SUBST([LUAJIT_CPPFLAGS], [$LUAJIT_CFLAGS])
- enable_luajit=yes
-],
-[
-# look in /usr and /usr/local for what we need
-#
-
-AC_MSG_CHECKING([for luajit location])
- # looking for versioned subdir
- for version in 2.0 2.1; do
- for lua_prefix in /usr/local /usr; do
- dir="$lua_prefix/include/luajit-$version"
-
- if test -d $dir; then
- luajit_base_dir=$lua_prefix
- luajit_include=$dir
- luajit_ldflags=$lua_prefix/lib
- break
- fi
- done
- done
-
- if test "x$luajit_base_dir" = "x"; then
- enable_luajit=no
- AC_MSG_RESULT([not found])
- else
- enable_luajit=yes
- AC_MSG_RESULT([$dir])
- fi
-
-if test "$enable_luajit" != "no"; then
- saved_ldflags=$LDFLAGS
- saved_cppflags=$CPPFLAGS
- luajit_have_headers=0
- luajit_have_libs=0
-
- TS_ADDTO(CPPFLAGS, [-I${luajit_include}])
- if test "$luajit_base_dir" != "/usr"; then
- TS_ADDTO(LDFLAGS, [-L${luajit_ldflags}])
- TS_ADDTO_RPATH(${luajit_ldflags})
- fi
-
- AC_CHECK_LIB([luajit-5.1], luaopen_jit, [luajit_have_libs=1])
- if test "$luajit_have_libs" == "1"; then
- AC_CHECK_HEADERS(luajit.h, [luajit_have_headers=1])
- fi
-
- if test "$luajit_have_headers" == "1"; then
- AC_SUBST([LUAJIT_LDFLAGS], ["-L${luajit_ldflags} -lluajit-5.1"])
- AC_SUBST([LUAJIT_CPPFLAGS], [-I${luajit_include}])
- enable_luajit=yes
- else
- has_luajit=0
- fi
-
- CPPFLAGS=$saved_cppflags
- LDFLAGS=$saved_ldflags
-fi
-
-])
-])
-
-TS_ARG_ENABLE_VAR([has],[luajit])
-AM_CONDITIONAL([HAS_LUAJIT], [test 0 -ne $has_luajit])
-
-dnl On Darwin, LuaJIT requires magic link options for a program loading or running with LuaJIT,
-dnl otherwise it will crash in luaL_openlibs() at startup. See http://luajit.org/install.html for more details
-if test "$has_luajit" -ne 0; then
-AC_SUBST([LUAJIT_DARWIN_LDFLAGS], ["-Wl,-pagezero_size,10000 -Wl,-image_base,100000000"])
-fi
-AM_CONDITIONAL([IS_DARWIN], [test x$(uname) = xDarwin])
-AM_CONDITIONAL([IS_DARWIN_ARM64], [test x$(uname -m) = xarm64])
-
-])
diff --git a/m4/lzma.m4 b/m4/lzma.m4
deleted file mode 100644
index 107062a757..0000000000
--- a/m4/lzma.m4
+++ /dev/null
@@ -1,98 +0,0 @@
-dnl -------------------------------------------------------- -*- autoconf -*-
-dnl Licensed to the Apache Software Foundation (ASF) under one or more
-dnl contributor license agreements. See the NOTICE file distributed with
-dnl this work for additional information regarding copyright ownership.
-dnl The ASF licenses this file to You under the Apache License, Version 2.0
-dnl (the "License"); you may not use this file except in compliance with
-dnl the License. You may obtain a copy of the License at
-dnl
-dnl http://www.apache.org/licenses/LICENSE-2.0
-dnl
-dnl Unless required by applicable law or agreed to in writing, software
-dnl distributed under the License is distributed on an "AS IS" BASIS,
-dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-dnl See the License for the specific language governing permissions and
-dnl limitations under the License.
-
-dnl
-dnl lzma.m4: Trafficserver's lzma autoconf macros
-dnl
-
-dnl
-dnl TS_CHECK_LZMA: look for lzma libraries and headers
-dnl
-AC_DEFUN([TS_CHECK_LZMA], [
-enable_lzma=no
-AC_ARG_WITH(lzma, [AS_HELP_STRING([--with-lzma=DIR],[use a specific lzma library])],
-[
- if test "x$withval" != "xyes" && test "x$withval" != "x"; then
- lzma_base_dir="$withval"
- if test "$withval" != "no"; then
- enable_lzma=yes
- case "$withval" in
- *":"*)
- lzma_include="`echo $withval |sed -e 's/:.*$//'`"
- lzma_ldflags="`echo $withval |sed -e 's/^.*://'`"
- AC_MSG_CHECKING(checking for lzma includes in $lzma_include libs in $lzma_ldflags )
- ;;
- *)
- lzma_include="$withval/include"
- lzma_ldflags="$withval/lib"
- AC_MSG_CHECKING(checking for lzma includes in $withval)
- ;;
- esac
- fi
- fi
-])
-
-if test "x$lzma_base_dir" = "x"; then
- AC_MSG_CHECKING([for lzma location])
- AC_CACHE_VAL(ats_cv_lzma_dir,[
- for dir in /usr/local /usr ; do
- if test -d $dir && test -f $dir/include/lzma.h; then
- ats_cv_lzma_dir=$dir
- break
- fi
- done
- ])
- lzma_base_dir=$ats_cv_lzma_dir
- if test "x$lzma_base_dir" = "x"; then
- enable_lzma=no
- AC_MSG_RESULT([not found])
- else
- enable_lzma=yes
- lzma_include="$lzma_base_dir/include"
- lzma_ldflags="$lzma_base_dir/lib"
- AC_MSG_RESULT([$lzma_base_dir])
- fi
-else
- if test -d $lzma_include && test -d $lzma_ldflags && test -f $lzma_include/lzma.h; then
- AC_MSG_RESULT([ok])
- else
- AC_MSG_RESULT([not found])
- fi
-fi
-
-if test "$enable_lzma" != "no"; then
- saved_ldflags=$LDFLAGS
- saved_cppflags=$CPPFLAGS
- lzma_have_headers=0
- lzma_have_libs=0
- if test "$lzma_base_dir" != "/usr"; then
- TS_ADDTO(CPPFLAGS, [-I${lzma_include}])
- TS_ADDTO(LDFLAGS, [-L${lzma_ldflags}])
- TS_ADDTO_RPATH(${lzma_ldflags})
- fi
- AC_CHECK_LIB([lzma], [lzma_code], [lzma_have_libs=1])
- if test "$lzma_have_libs" != "0"; then
- AC_CHECK_HEADERS(lzma.h, [lzma_have_headers=1])
- fi
- if test "$lzma_have_headers" != "0"; then
- AC_SUBST(LIBLZMA, [-llzma])
- else
- enable_lzma=no
- CPPFLAGS=$saved_cppflags
- LDFLAGS=$saved_ldflags
- fi
-fi
-])
diff --git a/m4/mimalloc.m4 b/m4/mimalloc.m4
deleted file mode 100644
index 7d59f0728c..0000000000
--- a/m4/mimalloc.m4
+++ /dev/null
@@ -1,97 +0,0 @@
-dnl -------------------------------------------------------- -*- autoconf -*-
-dnl Licensed to the Apache Software Foundation (ASF) under one or more
-dnl contributor license agreements. See the NOTICE file distributed with
-dnl this work for additional information regarding copyright ownership.
-dnl The ASF licenses this file to You under the Apache License, Version 2.0
-dnl (the "License"); you may not use this file except in compliance with
-dnl the License. You may obtain a copy of the License at
-dnl
-dnl http://www.apache.org/licenses/LICENSE-2.0
-dnl
-dnl Unless required by applicable law or agreed to in writing, software
-dnl distributed under the License is distributed on an "AS IS" BASIS,
-dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-dnl See the License for the specific language governing permissions and
-dnl limitations under the License.
-
-dnl
-dnl mimalloc.m4: Trafficserver's mimalloc autoconf macros
-dnl
-
-AC_DEFUN([TS_CHECK_MIMALLOC], [
-has_mimalloc=no
-AC_ARG_WITH([mimalloc], [AS_HELP_STRING([--with-mimalloc=DIR],[use a specific mimalloc library])],
-[
- if test "$withval" != "no"; then
- if test "x${has_jemalloc}" = "xyes"; then
- AC_MSG_ERROR([Cannot compile with both mimalloc and jemalloc])
- fi
- has_mimalloc=yes
- mimalloc_base_dir="$withval"
- case "$withval" in
- yes)
- mimalloc_base_dir="/usr"
- AC_MSG_NOTICE(checking for mimalloc includes and libs in standard directories)
- ;;
- *":"*)
- mimalloc_include="`echo $withval | sed -e 's/:.*$//'`"
- mimalloc_ldflags="`echo $withval | sed -e 's/^.*://'`"
- AC_MSG_NOTICE(checking for mimalloc includes in $mimalloc_include and libs in $mimalloc_ldflags)
- ;;
- *)
- mimalloc_include="$withval/include"
- mimalloc_ldflags="$withval/lib"
- mimalloc_ldflags64="$withval/lib64"
- AC_MSG_NOTICE(checking for mimalloc includes in $mimalloc_include and libs in $mimalloc_ldflags or $mimalloc_ldflags64)
- ;;
- esac
- fi
-])
-
-mimalloch=0
-mimalloc_libs=""
-if test "$has_mimalloc" != "no"; then
- saved_ldflags=$LDFLAGS
- saved_cppflags=$CPPFLAGS
- mimalloc_has_headers=0
- mimalloc_has_libs=0
- AC_CHECK_FILE([mimalloc_ldflags], [], [mimalloc_ldflags=$mimalloc_ldflags64])
- if test "$mimalloc_base_dir" != "/usr"; then
- TS_ADDTO(CPPFLAGS, [-I${mimalloc_include}])
- TS_ADDTO(LDFLAGS, [-L${mimalloc_ldflags}])
- TS_ADDTO(LDFLAGS, [-Wl,--as-needed -L${mimalloc_ldflags} -Wl,-rpath,${mimalloc_ldflags} -Wl,--no-as-needed])
- TS_ADDTO_RPATH(${mimalloc_ldflags})
- fi
- AC_SEARCH_LIBS([mi_malloc], [mimalloc], [mimalloc_has_libs=1])
- if test "$mimalloc_has_libs" != "0"; then
- AC_CHECK_HEADERS(mimalloc.h, [mimalloc_has_headers=1])
- fi
- if test "$mimalloc_has_headers" != "0"; then
- AC_RUN_IFELSE([
- AC_LANG_PROGRAM(
- [#include <mimalloc.h>],
- [
- #ifndef MI_MALLOC_VERSION
- exit(1);
- #endif
-
- #if (MI_MALLOC_VERSION == 0)
- exit(1);
- #endif
- ]
- )],
- [
- mimalloch=1
- mimalloc_libs="-lmimalloc"
- ],
- [AC_MSG_ERROR(mimalloc has bogus version)]
- )
- else
- AC_MSG_WARN([mimalloc not found])
- CPPFLAGS=$saved_cppflags
- LDFLAGS=$saved_ldflags
- fi
-fi
-AC_SUBST(mimalloch)
-AC_SUBST([mimalloc_libs])
-])
diff --git a/m4/network.m4 b/m4/network.m4
deleted file mode 100644
index 4e35549715..0000000000
--- a/m4/network.m4
+++ /dev/null
@@ -1,38 +0,0 @@
-dnl -------------------------------------------------------- -*- autoconf -*-
-dnl Licensed to the Apache Software Foundation (ASF) under one or more
-dnl contributor license agreements. See the NOTICE file distributed with
-dnl this work for additional information regarding copyright ownership.
-dnl The ASF licenses this file to You under the Apache License, Version 2.0
-dnl (the "License"); you may not use this file except in compliance with
-dnl the License. You may obtain a copy of the License at
-dnl
-dnl http://www.apache.org/licenses/LICENSE-2.0
-dnl
-dnl Unless required by applicable law or agreed to in writing, software
-dnl distributed under the License is distributed on an "AS IS" BASIS,
-dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-dnl See the License for the specific language governing permissions and
-dnl limitations under the License.
-
-dnl -----------------------------------------------------------------
-dnl network.m4: Trafficserver's autoconf macros for testing network support
-dnl
-
-dnl
-dnl Check on IN6_IS_ADDR_UNSPECIFIED. We can't just check if it is defined
-dnl because some releases of FreeBSD define it incorrectly.
-dnl
-AC_DEFUN([TS_CHECK_MACRO_IN6_IS_ADDR_UNSPECIFIED], [
-AC_CACHE_CHECK([IN6_IS_ADDR_UNSPECIFIED macro works], ac_cv_macro_in6_is_addr_unspecified,
-TS_TRY_COMPILE_NO_WARNING([
-#include <netinet/in.h>
-],[
- (void) IN6_IS_ADDR_UNSPECIFIED(0);
-], ac_cv_macro_in6_is_addr_unspecified=yes, ac_cv_macro_in6_is_addr_unspecified=no))
-
-has_in6_is_addr_unspecified=1
-if test "x$ac_cv_macro_in6_is_addr_unspecified" = "xno"; then
- has_in6_is_addr_unspecified=0
-fi
-AC_SUBST(has_in6_is_addr_unspecified)
-])
diff --git a/m4/nuraft.m4 b/m4/nuraft.m4
deleted file mode 100644
index 9f6f17755e..0000000000
--- a/m4/nuraft.m4
+++ /dev/null
@@ -1,85 +0,0 @@
-dnl -------------------------------------------------------- -*- autoconf -*-
-dnl Licensed to the Apache Software Foundation (ASF) under one or more
-dnl contributor license agreements. See the NOTICE file distributed with
-dnl this work for additional information regarding copyright ownership.
-dnl The ASF licenses this file to You under the Apache License, Version 2.0
-dnl (the "License"); you may not use this file except in compliance with
-dnl the License. You may obtain a copy of the License at
-dnl
-dnl http://www.apache.org/licenses/LICENSE-2.0
-dnl
-dnl Unless required by applicable law or agreed to in writing, software
-dnl distributed under the License is distributed on an "AS IS" BASIS,
-dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-dnl See the License for the specific language governing permissions and
-dnl limitations under the License.
-
-dnl
-dnl nuraft.m4: Trafficserver's nuraft autoconf macros
-dnl
-
-dnl
-dnl TS_CHECK_NURAFT: look for nuraft libraries and headers
-dnl
-
-AC_DEFUN([TS_CHECK_NURAFT], [
-has_nuraft=no
-AC_ARG_WITH(nuraft, [AS_HELP_STRING([--with-nuraft=DIR], [use a specific nuraft library])],
-[
- if test "x$withval" != "xyes" && test "x$withval" != "x"; then
- nuraft_base_dir="$withval"
- if test "$withval" != "no"; then
- has_nuraft=yes
- case "$withval" in
- *":"*)
- nuraft_include="`echo $withval | sed -e 's/:.*$//'`"
- nuraft_ldflags="`echo $withval | sed -e 's/^.*://'`"
- AC_MSG_CHECKING(for nuraft includes in $nuraft_include libs in $nuraft_ldflags)
- ;;
- *)
- nuraft_include="$withval/include"
- nuraft_ldflags="$withval/lib"
- nuraft_base_dir="$withval"
- AC_MSG_CHECKING(for nuraft includes in $nuraft_include libs in $nuraft_ldflags)
- ;;
- esac
- fi
- fi
-
- if test -d $nuraft_include && test -d $nuraft_ldflags && test -f $nuraft_include/libnuraft/nuraft.hxx; then
- AC_MSG_RESULT([ok])
- else
- AC_MSG_RESULT([not found])
- fi
-
-if test "$has_nuraft" != "no"; then
- saved_ldflags=$LDFLAGS
- saved_cppflags=$CPPFLAGS
-
- NURAFT_LIBS=-lnuraft
- if test "$nuraft_base_dir" != "/usr"; then
- NURAFT_INCLUDES=-I${nuraft_include}
- NURAFT_LDFLAGS=-L${nuraft_ldflags}
-
- TS_ADDTO(CPPFLAGS, [${NURAFT_INCLUDES}])
- TS_ADDTO(LDFLAGS, [${NURAFT_LDFLAGS}])
- TS_ADDTO_RPATH(${nuraft_ldflags})
- fi
-
- if test "$nuraft_include" != "0"; then
- NURAFT_INCLUDES=-I${nuraft_include}
- else
- has_nuraft=no
- CPPFLAGS=$saved_cppflags
- LDFLAGS=$saved_ldflags
- fi
-fi
-],
-[
- has_nuraft=no
-])
-
-AC_SUBST([NURAFT_INCLUDES])
-AC_SUBST([NURAFT_LIBS])
-AC_SUBST([NURAFT_LDFLAGS])
-])
diff --git a/m4/pcre.m4 b/m4/pcre.m4
deleted file mode 100644
index fcb2737aef..0000000000
--- a/m4/pcre.m4
+++ /dev/null
@@ -1,110 +0,0 @@
-dnl -------------------------------------------------------- -*- autoconf -*-
-dnl Licensed to the Apache Software Foundation (ASF) under one or more
-dnl contributor license agreements. See the NOTICE file distributed with
-dnl this work for additional information regarding copyright ownership.
-dnl The ASF licenses this file to You under the Apache License, Version 2.0
-dnl (the "License"); you may not use this file except in compliance with
-dnl the License. You may obtain a copy of the License at
-dnl
-dnl http://www.apache.org/licenses/LICENSE-2.0
-dnl
-dnl Unless required by applicable law or agreed to in writing, software
-dnl distributed under the License is distributed on an "AS IS" BASIS,
-dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-dnl See the License for the specific language governing permissions and
-dnl limitations under the License.
-
-dnl
-dnl pcre.m4: Trafficserver's pcre autoconf macros
-dnl
-
-dnl
-dnl TS_CHECK_PCRE: look for pcre libraries and headers
-dnl
-AC_DEFUN([TS_CHECK_PCRE], [
-enable_pcre=no
-AC_ARG_WITH(pcre, [AS_HELP_STRING([--with-pcre=DIR],[use a specific pcre library])],
-[
- if test "x$withval" != "xyes" && test "x$withval" != "x"; then
- pcre_base_dir="$withval"
- if test "$withval" != "no"; then
- enable_pcre=yes
- case "$withval" in
- *":"*)
- pcre_include="`echo $withval |sed -e 's/:.*$//'`"
- pcre_ldflags="`echo $withval |sed -e 's/^.*://'`"
- AC_MSG_CHECKING(checking for pcre includes in $pcre_include libs in $pcre_ldflags )
- ;;
- *)
- pcre_include="$withval/include"
- pcre_ldflags="$withval/lib"
- AC_MSG_CHECKING(checking for pcre includes in $withval)
- ;;
- esac
- fi
- fi
-],
-[
- AC_CHECK_PROG(PCRE_CONFIG, pcre-config, pcre-config)
- if test "x$PCRE_CONFIG" != "x"; then
- enable_pcre=yes
- pcre_base_dir="`$PCRE_CONFIG --prefix`"
- pcre_include="`$PCRE_CONFIG --cflags | sed -es/-I//`"
- pcre_ldflags="`$PCRE_CONFIG --libs | sed -es/-lpcre// -es/-L//`"
- fi
-])
-
-if test "x$pcre_base_dir" = "x"; then
- AC_MSG_CHECKING([for pcre location])
- AC_CACHE_VAL(ats_cv_pcre_dir,[
- for dir in /usr/local /usr ; do
- if test -d $dir && ( test -f $dir/include/pcre.h || test -f $dir/include/pcre/pcre.h ); then
- ats_cv_pcre_dir=$dir
- break
- fi
- done
- ])
- pcre_base_dir=$ats_cv_pcre_dir
- if test "x$pcre_base_dir" = "x"; then
- enable_pcre=no
- AC_MSG_RESULT([not found])
- else
- enable_pcre=yes
- pcre_include="$pcre_base_dir/include"
- pcre_ldflags="$pcre_base_dir/lib"
- AC_MSG_RESULT([$pcre_base_dir])
- fi
-else
- AC_MSG_CHECKING(for pcre headers in $pcre_include)
- if test -d $pcre_include && test -d $pcre_ldflags && ( test -f $pcre_include/pcre.h || test -f $pcre_include/pcre/pcre.h ); then
- AC_MSG_RESULT([ok])
- else
- AC_MSG_RESULT([not found])
- fi
-fi
-
-if test "$enable_pcre" != "no"; then
- saved_ldflags=$LDFLAGS
- saved_cppflags=$CPPFLAGS
- pcre_have_headers=0
- pcre_have_libs=0
- if test "$pcre_base_dir" != "/usr"; then
- TS_ADDTO(CPPFLAGS, [-I${pcre_include}])
- TS_ADDTO(LDFLAGS, [-L${pcre_ldflags}])
- TS_ADDTO_RPATH(${pcre_ldflags})
- fi
- AC_CHECK_LIB([pcre], [pcre_exec], [pcre_have_libs=1])
- if test "$pcre_have_libs" != "0"; then
- AC_CHECK_HEADERS(pcre.h, [pcre_have_headers=1])
- AC_CHECK_HEADERS(pcre/pcre.h, [pcre_have_headers=1])
- fi
- if test "$pcre_have_headers" != "0"; then
- AC_DEFINE(HAVE_LIBPCRE,1,[Compiling with pcre support])
- AC_SUBST(LIBPCRE, [-lpcre])
- else
- enable_pcre=no
- CPPFLAGS=$saved_cppflags
- LDFLAGS=$saved_ldflags
- fi
-fi
-])
diff --git a/m4/pcre2.m4 b/m4/pcre2.m4
deleted file mode 100644
index 47a9d5341f..0000000000
--- a/m4/pcre2.m4
+++ /dev/null
@@ -1,77 +0,0 @@
-dnl -------------------------------------------------------- -*- autoconf -*-
-dnl Licensed to the Apache Software Foundation (ASF) under one or more
-dnl contributor license agreements. See the NOTICE file distributed with
-dnl this work for additional information regarding copyright ownership.
-dnl The ASF licenses this file to You under the Apache License, Version 2.0
-dnl (the "License"); you may not use this file except in compliance with
-dnl the License. You may obtain a copy of the License at
-dnl
-dnl http://www.apache.org/licenses/LICENSE-2.0
-dnl
-dnl Unless required by applicable law or agreed to in writing, software
-dnl distributed under the License is distributed on an "AS IS" BASIS,
-dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-dnl See the License for the specific language governing permissions and
-dnl limitations under the License.
-
-dnl
-dnl pcre2.m4: Trafficserver's pcre2 autoconf macros
-dnl
-
-dnl
-dnl TS_CHECK_PCRE2: look for pcre2 libraries and headers
-dnl
-AC_DEFUN([TS_CHECK_PCRE2], [
-has_pcre2=0
-AC_ARG_WITH(pcre2, [AS_HELP_STRING([--with-pcre2=DIR],[use a specific pcre2 library])],
-[
- if test "x$withval" != "xyes" && test "x$withval" != "x"; then
- pcre2_base_dir="$withval"
- if test "$withval" != "no"; then
- has_pcre2=1
- case "$withval" in
- *":"*)
- pcre2_include="`echo $withval | sed -e 's/:.*$//'`"
- pcre2_ldflags="`echo $withval | sed -e 's/^.*://'`"
- AC_MSG_CHECKING(checking for pcre2 includes in $pcre2_include libs in $pcre2_ldflags )
- ;;
- *)
- pcre2_include="$withval/include"
- pcre2_ldflags="$withval/lib"
- AC_MSG_CHECKING(checking for pcre2 includes in $withval)
- ;;
- esac
- fi
- fi
-
- if test -d $pcre2_include && test -d $pcre2_ldflags && test -f $pcre2_include/pcre2.h; then
- AC_MSG_RESULT([ok])
- else
- AC_MSG_RESULT([not found])
- fi
-
-if test "$has_pcre2" != "0"; then
- saved_ldflags=$LDFLAGS
- saved_cppflags=$CPPFLAGS
- pcre2_have_headers=0
- if test "$pcre2_base_dir" != "/usr"; then
- TS_ADDTO(CPPFLAGS, [-I${pcre2_include}])
- TS_ADDTO(LDFLAGS, [-L${pcre2_ldflags}])
- TS_ADDTO_RPATH(${pcre2_ldflags})
- fi
-
- AC_SUBST([PCRE2_LIB], [-lpcre2-8])
- AC_SUBST([PCRE2_CFLAGS], [-I${pcre2_include}])
-fi
-],
-[
- PKG_CHECK_EXISTS([libpcre2-8],
- [
- PKG_CHECK_MODULES([LIBPCRE2], [libpcre2-8 >= 10.0.0], [
- AC_SUBST([PCRE2_LIB], [$LIBPCRE2_LIBS])
- AC_SUBST([PCRE2_CFLAGS], [$LIBPCRE2_CFLAGS])
- ], [])
- ], [])
-])
-
-])
diff --git a/m4/pkg.m4 b/m4/pkg.m4
deleted file mode 100644
index dd5a6313a5..0000000000
--- a/m4/pkg.m4
+++ /dev/null
@@ -1,199 +0,0 @@
-# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
-# serial 1 (pkg-config-0.24)
-#
-# Copyright © 2004 Scott James Remnant <sc...@netsplit.com>.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# PKG_PROG_PKG_CONFIG([MIN-VERSION])
-# ----------------------------------
-AC_DEFUN([PKG_PROG_PKG_CONFIG],
-[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
-m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
-m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
-AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
-AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
-AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
-
-if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
- AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
-fi
-if test -n "$PKG_CONFIG"; then
- _pkg_min_version=m4_default([$1], [0.9.0])
- AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
- if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
- AC_MSG_RESULT([yes])
- else
- AC_MSG_RESULT([no])
- PKG_CONFIG=""
- fi
-fi[]dnl
-])# PKG_PROG_PKG_CONFIG
-
-# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-#
-# Check to see whether a particular set of modules exists. Similar
-# to PKG_CHECK_MODULES(), but does not set variables or print errors.
-#
-# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
-# only at the first occurrence in configure.ac, so if the first place
-# it's called might be skipped (such as if it is within an "if", you
-# have to call PKG_CHECK_EXISTS manually
-# --------------------------------------------------------------
-AC_DEFUN([PKG_CHECK_EXISTS],
-[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
-if test -n "$PKG_CONFIG" && \
- AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
- m4_default([$2], [:])
-m4_ifvaln([$3], [else
- $3])dnl
-fi])
-
-# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
-# ---------------------------------------------
-m4_define([_PKG_CONFIG],
-[if test -n "$$1"; then
- pkg_cv_[]$1="$$1"
- elif test -n "$PKG_CONFIG"; then
- PKG_CHECK_EXISTS([$3],
- [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`
- test "x$?" != "x0" && pkg_failed=yes ],
- [pkg_failed=yes])
- else
- pkg_failed=untried
-fi[]dnl
-])# _PKG_CONFIG
-
-# _PKG_SHORT_ERRORS_SUPPORTED
-# -----------------------------
-AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
-[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
-if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
- _pkg_short_errors_supported=yes
-else
- _pkg_short_errors_supported=no
-fi[]dnl
-])# _PKG_SHORT_ERRORS_SUPPORTED
-
-
-# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
-# [ACTION-IF-NOT-FOUND])
-#
-#
-# Note that if there is a possibility the first call to
-# PKG_CHECK_MODULES might not happen, you should be sure to include an
-# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
-#
-#
-# --------------------------------------------------------------
-AC_DEFUN([PKG_CHECK_MODULES],
-[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
-AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
-AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
-
-pkg_failed=no
-AC_MSG_CHECKING([for $1])
-
-_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
-_PKG_CONFIG([$1][_LIBS], [libs], [$2])
-
-m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
-and $1[]_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.])
-
-if test $pkg_failed = yes; then
- AC_MSG_RESULT([no])
- _PKG_SHORT_ERRORS_SUPPORTED
- if test $_pkg_short_errors_supported = yes; then
- $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1`
- else
- $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1`
- fi
- # Put the nasty error message in config.log where it belongs
- echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
-
- m4_default([$4], [AC_MSG_ERROR(
-[Package requirements ($2) were not met:
-
-$$1_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-_PKG_TEXT])[]dnl
- ])
-elif test $pkg_failed = untried; then
- AC_MSG_RESULT([no])
- m4_default([$4], [AC_MSG_FAILURE(
-[The pkg-config script could not be found or is too old. Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-_PKG_TEXT
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl
- ])
-else
- $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
- $1[]_LIBS=$pkg_cv_[]$1[]_LIBS
- AC_MSG_RESULT([yes])
- $3
-fi[]dnl
-])# PKG_CHECK_MODULES
-
-
-# PKG_INSTALLDIR(DIRECTORY)
-# -------------------------
-# Substitutes the variable pkgconfigdir as the location where a module
-# should install pkg-config .pc files. By default the directory is
-# $libdir/pkgconfig, but the default can be changed by passing
-# DIRECTORY. The user can override through the --with-pkgconfigdir
-# parameter.
-AC_DEFUN([PKG_INSTALLDIR],
-[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
-m4_pushdef([pkg_description],
- [pkg-config installation directory @<:@]pkg_default[@:>@])
-AC_ARG_WITH([pkgconfigdir],
- [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],,
- [with_pkgconfigdir=]pkg_default)
-AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
-m4_popdef([pkg_default])
-m4_popdef([pkg_description])
-]) dnl PKG_INSTALLDIR
-
-
-# PKG_NOARCH_INSTALLDIR(DIRECTORY)
-# -------------------------
-# Substitutes the variable noarch_pkgconfigdir as the location where a
-# module should install arch-independent pkg-config .pc files. By
-# default the directory is $datadir/pkgconfig, but the default can be
-# changed by passing DIRECTORY. The user can override through the
-# --with-noarch-pkgconfigdir parameter.
-AC_DEFUN([PKG_NOARCH_INSTALLDIR],
-[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
-m4_pushdef([pkg_description],
- [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@])
-AC_ARG_WITH([noarch-pkgconfigdir],
- [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],,
- [with_noarch_pkgconfigdir=]pkg_default)
-AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
-m4_popdef([pkg_default])
-m4_popdef([pkg_description])
-]) dnl PKG_NOARCH_INSTALLDIR
diff --git a/m4/quiche.m4 b/m4/quiche.m4
deleted file mode 100644
index 9269a2b8dc..0000000000
--- a/m4/quiche.m4
+++ /dev/null
@@ -1,85 +0,0 @@
-dnl -------------------------------------------------------- -*- autoconf -*-
-dnl Licensed to the Apache Software Foundation (ASF) under one or more
-dnl contributor license agreements. See the NOTICE file distributed with
-dnl this work for additional information regarding copyright ownership.
-dnl The ASF licenses this file to You under the Apache License, Version 2.0
-dnl (the "License"); you may not use this file except in compliance with
-dnl the License. You may obtain a copy of the License at
-dnl
-dnl http://www.apache.org/licenses/LICENSE-2.0
-dnl
-dnl Unless required by applicable law or agreed to in writing, software
-dnl distributed under the License is distributed on an "AS IS" BASIS,
-dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-dnl See the License for the specific language governing permissions and
-dnl limitations under the License.
-
-dnl
-dnl quiche.m4: Trafficserver's quiche autoconf macros
-dnl
-
-dnl
-dnl TS_CHECK_QUICHE: look for quiche libraries and headers
-dnl
-AC_DEFUN([TS_CHECK_QUICHE], [
-has_quiche=0
-AC_ARG_WITH(quiche, [AS_HELP_STRING([--with-quiche=DIR],[use a specific quiche library])],
-[
- if test "x$withval" != "xyes" && test "x$withval" != "x"; then
- quiche_base_dir="$withval"
- if test "$withval" != "no"; then
- has_quiche=1
- case "$withval" in
- *":"*)
- quiche_include="`echo $withval | sed -e 's/:.*$//'`"
- quiche_ldflags="`echo $withval | sed -e 's/^.*://'`"
- AC_MSG_CHECKING(checking for quiche includes in $quiche_include libs in $quiche_ldflags )
- ;;
- *)
- quiche_include="$withval/include"
- quiche_ldflags="$withval/lib"
- AC_MSG_CHECKING(checking for quiche includes in $withval)
- ;;
- esac
- fi
- fi
-
- if test -d $quiche_include && test -d $quiche_ldflags && test -f $quiche_include/quiche.h; then
- AC_MSG_RESULT([ok])
- else
- AC_MSG_RESULT([not found])
- fi
-
-if test "$has_quiche" != "0"; then
- saved_ldflags=$LDFLAGS
- saved_cppflags=$CPPFLAGS
- saved_libs=$LIBS
- quiche_have_headers=0
- quiche_have_libs=0
- if test "$quiche_base_dir" != "/usr"; then
- TS_ADDTO(CPPFLAGS, [-I${quiche_include}])
- TS_ADDTO(LDFLAGS, [-L${quiche_ldflags} -Wl,-rpath,${quiche_ldflags}])
- TS_ADDTO(LIBS, [-lquiche])
- TS_ADDTO_RPATH(${quiche_ldflags})
- fi
-
- AC_CHECK_LIB([quiche], quiche_connect, [quiche_have_libs=1], [], [$OPENSSL_LIBS])
- if test "$quiche_have_libs" != "0"; then
- AC_CHECK_HEADERS(quiche.h, [quiche_have_headers=1])
- fi
- if test "$quiche_have_headers" != "0"; then
- AC_SUBST([QUICHE_LIB], [-lquiche])
- AC_SUBST([QUICHE_CFLAGS], [-I${quiche_include}])
- else
- has_quiche=0
- CPPFLAGS=$saved_cppflags
- LDFLAGS=$saved_ldflags
- LIBS=$saved_libs
- fi
-fi
-],
-[
-AC_CHECK_HEADER([quiche.h], [], [has_quiche=0])
-AC_CHECK_LIB([quiche], quiche_connect, [:], [has_quiche=0], [$OPENSSL_LIBS])
-])
-])
diff --git a/m4/yaml-cpp.m4 b/m4/yaml-cpp.m4
deleted file mode 100644
index baf36fa8fa..0000000000
--- a/m4/yaml-cpp.m4
+++ /dev/null
@@ -1,98 +0,0 @@
-dnl -------------------------------------------------------- -*- autoconf -*-
-dnl Licensed to the Apache Software Foundation (ASF) under one or more
-dnl contributor license agreements. See the NOTICE file distributed with
-dnl this work for additional information regarding copyright ownership.
-dnl The ASF licenses this file to You under the Apache License, Version 2.0
-dnl (the "License"); you may not use this file except in compliance with
-dnl the License. You may obtain a copy of the License at
-dnl
-dnl http://www.apache.org/licenses/LICENSE-2.0
-dnl
-dnl Unless required by applicable law or agreed to in writing, software
-dnl distributed under the License is distributed on an "AS IS" BASIS,
-dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-dnl See the License for the specific language governing permissions and
-dnl limitations under the License.
-
-dnl
-dnl yaml-cpp.m4: Trafficserver's yaml-cpp autoconf macros
-dnl
-
-dnl
-dnl TS_CHECK_YAML_CPP: look for yaml-cpp libraries and headers
-dnl
-AC_DEFUN([TS_CHECK_YAML_CPP], [
-has_yaml_cpp=no
-AC_ARG_WITH(yaml-cpp, [AS_HELP_STRING([--with-yaml-cpp=DIR],[use a specific yaml-cpp library])],
-[
- if test "x$withval" != "xyes" && test "x$withval" != "x"; then
- yaml_cpp_base_dir="$withval"
- if test "$withval" != "no"; then
- has_yaml_cpp=yes
- case "$withval" in
- *":"*)
- yaml_cpp_include="`echo $withval |sed -e 's/:.*$//'`"
- yaml_cpp_ldflags="`echo $withval |sed -e 's/^.*://'`"
- AC_MSG_CHECKING(checking for yaml-cpp includes in $yaml_cpp_include libs in $yaml_cpp_ldflags )
- ;;
- *)
- yaml_cpp_include="$withval/include"
- yaml_cpp_ldflags="$withval/lib"
- yaml_cpp_base_dir="$withval"
- AC_MSG_CHECKING(yaml-cpp includes in $withval libs in $yaml_cpp_ldflags)
- ;;
- esac
- fi
- fi
-
- if test -d $yaml_cpp_include && test -d $yaml_cpp_ldflags && test -f $yaml_cpp_include/yaml-cpp/yaml.h; then
- AC_MSG_RESULT([ok])
- else
- AC_MSG_RESULT([not found])
- fi
-
-if test "$has_yaml_cpp" != "no"; then
- saved_ldflags=$LDFLAGS
- saved_cppflags=$CPPFLAGS
-
- YAMLCPP_LIBS=-lyaml-cpp
- if test "$yaml_cpp_base_dir" != "/usr"; then
- YAMLCPP_INCLUDES=-I${yaml_cpp_include}
- YAMLCPP_LDFLAGS=-L${yaml_cpp_ldflags}
-
- TS_ADDTO_RPATH(${yaml_cpp_ldflags})
- fi
-
- if test "$yaml_cpp_include" != "0"; then
- YAMLCPP_INCLUDES=-I${yaml_cpp_include}
- else
- has_yaml_cpp=no
- CPPFLAGS=$saved_cppflags
- LDFLAGS=$saved_ldflags
- fi
-fi
-],
-[
- has_yaml_cpp=no
- YAMLCPP_INCLUDES=-I\${abs_top_srcdir}/lib/yamlcpp/include
- YAMLCPP_LIBS=-lyamlcpp
- YAMLCPP_LDFLAGS=-L\${abs_top_builddir}/lib/yamlcpp
-])
-
-AC_SUBST([YAMLCPP_INCLUDES])
-AC_SUBST([YAMLCPP_LIBS])
-AC_SUBST([YAMLCPP_LDFLAGS])
-AC_DEFINE([YAMLCPP_LIB_VERSION], ["0.8.0"], [yamlcpp library version])
-
-])
-
-dnl TS_CHECK_YAML_HEADERS_EXPORT: check if we want to export yaml-cpp headers from trafficserver. default: not exported
-AC_DEFUN([TS_CHECK_YAML_HEADERS_EXPORT], [
-AC_MSG_CHECKING([whether to export yaml-cpp headers])
-AC_ARG_ENABLE([yaml-headers],
- [AS_HELP_STRING([--enable-yaml-headers],[Export yaml-cpp headers])],
- [],
- [enable_yaml_headers=no]
-)
-AC_MSG_RESULT([$enable_yaml_headers])
-])
diff --git a/m4/zlib.m4 b/m4/zlib.m4
deleted file mode 100644
index 75efdb333e..0000000000
--- a/m4/zlib.m4
+++ /dev/null
@@ -1,92 +0,0 @@
-dnl -------------------------------------------------------- -*- autoconf -*-
-dnl Licensed to the Apache Software Foundation (ASF) under one or more
-dnl contributor license agreements. See the NOTICE file distributed with
-dnl this work for additional information regarding copyright ownership.
-dnl The ASF licenses this file to You under the Apache License, Version 2.0
-dnl (the "License"); you may not use this file except in compliance with
-dnl the License. You may obtain a copy of the License at
-dnl
-dnl http://www.apache.org/licenses/LICENSE-2.0
-dnl
-dnl Unless required by applicable law or agreed to in writing, software
-dnl distributed under the License is distributed on an "AS IS" BASIS,
-dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-dnl See the License for the specific language governing permissions and
-dnl limitations under the License.
-
-dnl
-dnl zlib.m4: Trafficserver's zlib autoconf macros
-dnl
-
-dnl
-dnl TS_CHECK_ZLIB: look for zlib libraries and headers
-dnl
-AC_DEFUN([TS_CHECK_ZLIB], [
-enable_zlib=yes
-AC_ARG_WITH(zlib, [AS_HELP_STRING([--with-zlib=DIR],[use a specific zlib library])],
-[
- if test "x$withval" != "xyes" && test "x$withval" != "x"; then
- zlib_base_dir="$withval"
- if test "$withval" != "no"; then
- case "$withval" in
- *":"*)
- zlib_include="`echo $withval |sed -e 's/:.*$//'`"
- zlib_ldflags="`echo $withval |sed -e 's/^.*://'`"
- AC_MSG_CHECKING(checking for zlib includes in $zlib_include libs in $zlib_ldflags )
- ;;
- *)
- zlib_include="$withval/include"
- zlib_ldflags="$withval/lib"
- AC_MSG_CHECKING(checking for zlib includes in $withval)
- ;;
- esac
- fi
- fi
-])
-
-if test "x$zlib_base_dir" = "x"; then
- AC_CACHE_VAL(ats_cv_zlib_dir,[
- for dir in /usr/local /usr ; do
- if test -d $dir && test -f $dir/include/zlib.h; then
- ats_cv_zlib_dir=$dir
- break
- fi
- done
- ])
- zlib_base_dir=$ats_cv_zlib_dir
- if test "x$zlib_base_dir" != "x"; then
- zlib_include="$zlib_base_dir/include"
- zlib_ldflags="$zlib_base_dir/lib"
- fi
-else
- if test -d $zlib_include && test -d $zlib_ldflags && test -f $zlib_include/zlib.h; then
- AC_MSG_RESULT([ok])
- else
- enable_zlib=no
- AC_MSG_RESULT([not found])
- fi
-fi
-
-if test "$enable_zlib" != "no"; then
- saved_ldflags=$LDFLAGS
- saved_cppflags=$CPPFLAGS
- zlib_have_headers=0
- zlib_have_libs=0
- if test "$zlib_base_dir" != "/usr" && test "x$zlib_base_dir" != "x"; then
- TS_ADDTO(CPPFLAGS, [-I${zlib_include}])
- TS_ADDTO(LDFLAGS, [-L${zlib_ldflags}])
- TS_ADDTO_RPATH(${zlib_ldflags})
- fi
- AC_CHECK_LIB([z], [compressBound], [zlib_have_libs=1])
- if test "$zlib_have_libs" != "0"; then
- AC_CHECK_HEADERS(zlib.h, [zlib_have_headers=1])
- fi
- if test "$zlib_have_headers" != "0"; then
- AC_SUBST(LIBZ, [-lz])
- else
- enable_zlib=no
- CPPFLAGS=$saved_cppflags
- LDFLAGS=$saved_ldflags
- fi
-fi
-])
diff --git a/mk/plugins.mk b/mk/plugins.mk
deleted file mode 100644
index bc30b621f9..0000000000
--- a/mk/plugins.mk
+++ /dev/null
@@ -1,38 +0,0 @@
-# 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.
-
-# plugins.mk: Common automake build variables for Traffic Server plugins.
-
-# Default plugin LDFLAGS. We don't use TS_PLUGIN_LDFLAGS because
-# that is an automake canonical variable name.
-TS_PLUGIN_LD_FLAGS = \
- -module \
- -shared \
- -avoid-version \
- -export-symbols-regex '^(TSRemapInit|TSRemapDone|TSRemapDoRemap|TSRemapNewInstance|TSRemapDeleteInstance|TSRemapOSResponse|TSPluginInit|TSRemapPreConfigReload|TSRemapPostConfigReload)$$'
-
-TS_PLUGIN_CPPFLAGS = \
- -I$(abs_top_srcdir)/include \
- -I$(abs_top_srcdir)/lib \
- @YAMLCPP_INCLUDES@ \
- @SWOC_INCLUDES@
-
-# Provide a default AM_CPPFLAGS. Automake handles this correctly, but libtool
-# throws an error if we try to do the same with AM_LDFLAGS. Hence, we provide
-# TS_PLUGIN variables that can be used to construct the necessary automake
-# syntax.
-AM_CPPFLAGS += $(TS_PLUGIN_CPPFLAGS)
-pkglibdir = $(pkglibexecdir)
diff --git a/mk/tidy.mk b/mk/tidy.mk
deleted file mode 100644
index 69b4d50843..0000000000
--- a/mk/tidy.mk
+++ /dev/null
@@ -1,34 +0,0 @@
-# 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.
-
-Clang_Tidy_Options = -fix -fix-errors
-
-# Sort the filenames to remove duplicates, then filter to retain
-# just the C and C++ sources so we don't pick up lex and yacc files
-# for example.
-
-Clang_Tidy_CC_Files = $(filter %.c, $(sort $^))
-Clang_Tidy_CXX_Files = $(filter %.cc, $(sort $^))
-
-# clang-tidy rules. We expect these to be actions with something like
-# $(DIST_SOURCES) as the dependencies.rules. Note that $DIST_SOURCES
-# is not an automake API, it is an implementation detail, but it ought
-# to be stable enough.
-#
-# All this clearly requires GNU make.
-
-CXX_Clang_Tidy = $(CLANG_TIDY) $(Clang_Tidy_Options) $(Clang_Tidy_CXX_Files) -- $(CXXCOMPILE) -x c++
-CC_Clang_Tidy = $(CLANG_TIDY) $(Clang_Tidy_Options) $(Clang_Tidy_CC_Files) -- $(COMPILE) -x c
diff --git a/plugins/Makefile.am b/plugins/Makefile.am
deleted file mode 100644
index e31a77d6b1..0000000000
--- a/plugins/Makefile.am
+++ /dev/null
@@ -1,134 +0,0 @@
-# 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.
-
-# Add new plugins in alphabetic order, but keep experimental always at the bottom.
-
-include $(top_srcdir)/mk/plugins.mk
-include $(top_srcdir)/mk/tidy.mk
-
-check_PROGRAMS =
-noinst_LTLIBRARIES =
-pkglib_LTLIBRARIES =
-
-SUBDIRS =
-
-AM_LDFLAGS += $(TS_PLUGIN_LD_FLAGS)
-
-include authproxy/Makefile.inc
-include background_fetch/Makefile.inc
-include cachekey/Makefile.inc
-include cache_promote/Makefile.inc
-include cache_range_requests/Makefile.inc
-include certifier/Makefile.inc
-include conf_remap/Makefile.inc
-include escalate/Makefile.inc
-include esi/Makefile.inc
-include generator/Makefile.inc
-include compress/Makefile.inc
-include header_rewrite/Makefile.inc
-if BUILD_HEALTHCHECK_PLUGIN
-include healthchecks/Makefile.inc
-endif
-if BUILD_JA3_PLUGIN
-include ja3_fingerprint/Makefile.inc
-endif
-include libloader/Makefile.inc
-if HAS_LUAJIT
-include lua/Makefile.inc
-endif
-include multiplexer/Makefile.inc
-include prefetch/Makefile.inc
-include regex_remap/Makefile.inc
-include regex_revalidate/Makefile.inc
-include remap_purge/Makefile.inc
-include remap_stats/Makefile.inc
-include s3_auth/Makefile.inc
-include server_push_preload/Makefile.inc
-include slice/Makefile.inc
-include statichit/Makefile.inc
-include stats_over_http/Makefile.inc
-include tcpinfo/Makefile.inc
-include traffic_dump/Makefile.inc
-if BUILD_IMAGE_MAGICK_PLUGINS
-include webp_transform/Makefile.inc
-endif
-include xdebug/Makefile.inc
-
-if BUILD_EXPERIMENTAL_PLUGINS
-
-include experimental/access_control/Makefile.inc
-include experimental/block_errors/Makefile.inc
-include experimental/cache_fill/Makefile.inc
-include experimental/cert_reporting_tool/Makefile.inc
-include experimental/cookie_remap/Makefile.inc
-include experimental/custom_redirect/Makefile.inc
-include experimental/fq_pacing/Makefile.inc
-include experimental/geoip_acl/Makefile.inc
-include experimental/header_freq/Makefile.inc
-include experimental/hook-trace/Makefile.inc
-include experimental/http_stats/Makefile.inc
-include experimental/icap/Makefile.inc
-include experimental/inliner/Makefile.inc
-
-if HAS_MAXMINDDB
-include experimental/maxmind_acl/Makefile.inc
-endif
-
-if HAS_OTEL
-include experimental/otel_tracer/Makefile.inc
-endif
-
-if HAS_WASM
-include experimental/wasm/Makefile.inc
-endif
-
-include experimental/memcache/Makefile.inc
-include experimental/memory_profile/Makefile.inc
-include experimental/money_trace/Makefile.inc
-include experimental/mp4/Makefile.inc
-include experimental/rate_limit/Makefile.inc
-include experimental/redo_cache_lookup/Makefile.inc
-include experimental/sslheaders/Makefile.inc
-include experimental/stream_editor/Makefile.inc
-include experimental/system_stats/Makefile.inc
-include experimental/tls_bridge/Makefile.inc
-include experimental/url_sig/Makefile.inc
-
-if BUILD_URI_SIGNING_PLUGIN
-include experimental/uri_signing/Makefile.inc
-endif
-
-if BUILD_SSL_SESSION_REUSE_PLUGIN
-include experimental/ssl_session_reuse/Makefile.inc
-endif
-
-if BUILD_STEK_SHARE_PLUGIN
-include experimental/stek_share/Makefile.inc
-endif
-
-if BUILD_IMAGE_MAGICK_PLUGINS
-include experimental/magick/Makefile.inc
-endif
-
-endif
-
-TESTS_ENVIRONMENT = LSAN_OPTIONS=suppressions=$(top_srcdir)/plugins/suppression.txt
-
-TESTS = $(check_PROGRAMS)
-
-clang-tidy-local: $(DIST_SOURCES)
- $(CXX_Clang_Tidy)
- $(CC_Clang_Tidy)
diff --git a/plugins/authproxy/Makefile.inc b/plugins/authproxy/Makefile.inc
deleted file mode 100644
index 9b5e5dfffa..0000000000
--- a/plugins/authproxy/Makefile.inc
+++ /dev/null
@@ -1,25 +0,0 @@
-# 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.
-
-pkglib_LTLIBRARIES += authproxy/authproxy.la
-authproxy_authproxy_la_SOURCES = \
- authproxy/authproxy.cc \
- authproxy/utils.cc \
- authproxy/utils.h
-
-check_PROGRAMS += authproxy/authproxy_test
-authproxy_authproxy_test_CPPFLAGS = $(AM_CPPFLAGS) -I$(abs_top_srcdir)/lib/catch2
-authproxy_authproxy_test_SOURCES = authproxy/tests/authproxy_test.cc
diff --git a/plugins/background_fetch/Makefile.inc b/plugins/background_fetch/Makefile.inc
deleted file mode 100644
index 4175250116..0000000000
--- a/plugins/background_fetch/Makefile.inc
+++ /dev/null
@@ -1,25 +0,0 @@
-# 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.
-
-pkglib_LTLIBRARIES += background_fetch/background_fetch.la
-background_fetch_background_fetch_la_SOURCES = \
- background_fetch/background_fetch.cc \
- background_fetch/configs.cc \
- background_fetch/configs.h \
- background_fetch/headers.cc \
- background_fetch/headers.h \
- background_fetch/rules.cc \
- background_fetch/rules.h
diff --git a/plugins/cache_promote/Makefile.inc b/plugins/cache_promote/Makefile.inc
deleted file mode 100644
index 434dcb3dff..0000000000
--- a/plugins/cache_promote/Makefile.inc
+++ /dev/null
@@ -1,24 +0,0 @@
-# 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.
-
-pkglib_LTLIBRARIES += cache_promote/cache_promote.la
-
-cache_promote_cache_promote_la_SOURCES = \
- cache_promote/cache_promote.cc \
- cache_promote/configs.cc \
- cache_promote/policy.cc \
- cache_promote/lru_policy.cc \
- cache_promote/policy_manager.cc
diff --git a/plugins/cache_range_requests/Makefile.inc b/plugins/cache_range_requests/Makefile.inc
deleted file mode 100644
index be97c02b14..0000000000
--- a/plugins/cache_range_requests/Makefile.inc
+++ /dev/null
@@ -1,20 +0,0 @@
-# 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.
-
-pkglib_LTLIBRARIES += cache_range_requests/cache_range_requests.la
-
-cache_range_requests_cache_range_requests_la_SOURCES = \
- cache_range_requests/cache_range_requests.cc
diff --git a/plugins/cachekey/Makefile.inc b/plugins/cachekey/Makefile.inc
deleted file mode 100644
index 306ad0a88e..0000000000
--- a/plugins/cachekey/Makefile.inc
+++ /dev/null
@@ -1,23 +0,0 @@
-# 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.
-
-pkglib_LTLIBRARIES += cachekey/cachekey.la
-cachekey_cachekey_la_SOURCES = \
- cachekey/cachekey.cc \
- cachekey/common.cc \
- cachekey/configs.cc \
- cachekey/pattern.cc \
- cachekey/plugin.cc
diff --git a/plugins/certifier/Makefile.inc b/plugins/certifier/Makefile.inc
deleted file mode 100644
index 9af0029e78..0000000000
--- a/plugins/certifier/Makefile.inc
+++ /dev/null
@@ -1,19 +0,0 @@
-# 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.
-
-pkglib_LTLIBRARIES += certifier/certifier.la
-
-certifier_certifier_la_SOURCES = certifier/certifier.cc
diff --git a/plugins/compress/Makefile.inc b/plugins/compress/Makefile.inc
deleted file mode 100644
index 1cd1b6100c..0000000000
--- a/plugins/compress/Makefile.inc
+++ /dev/null
@@ -1,23 +0,0 @@
-# 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.
-
-pkglib_LTLIBRARIES += compress/compress.la
-compress_compress_la_SOURCES = compress/compress.cc compress/configuration.cc compress/misc.cc
-
-compress_compress_la_LDFLAGS = \
- $(AM_LDFLAGS) $(BROTLIENC_LIB) $(LIBZ)
-
-compress_compress_la_CXXFLAGS = $(AM_CXXFLAGS) $(BROTLIENC_CFLAGS)
diff --git a/plugins/conf_remap/Makefile.inc b/plugins/conf_remap/Makefile.inc
deleted file mode 100644
index 155b94d1fb..0000000000
--- a/plugins/conf_remap/Makefile.inc
+++ /dev/null
@@ -1,18 +0,0 @@
-# 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.
-
-pkglib_LTLIBRARIES += conf_remap/conf_remap.la
-conf_remap_conf_remap_la_SOURCES = conf_remap/conf_remap.cc
diff --git a/plugins/escalate/Makefile.inc b/plugins/escalate/Makefile.inc
deleted file mode 100644
index d69b64b5fa..0000000000
--- a/plugins/escalate/Makefile.inc
+++ /dev/null
@@ -1,20 +0,0 @@
-# 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.
-
-pkglib_LTLIBRARIES += escalate/escalate.la
-
-escalate_escalate_la_SOURCES = \
- escalate/escalate.cc
diff --git a/plugins/esi/Makefile.inc b/plugins/esi/Makefile.inc
deleted file mode 100644
index c8390394e6..0000000000
--- a/plugins/esi/Makefile.inc
+++ /dev/null
@@ -1,143 +0,0 @@
-# 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.
-
-ESI_CPPFLAGS = \
- -I$(srcdir)/esi \
- -I$(srcdir)/esi/common \
- -I$(srcdir)/esi/lib \
- -I$(srcdir)/esi/fetcher \
- -I$(srcdir)/esi/test \
- $(AM_CPPFLAGS)
-
-ESI_CXXFLAGS = $(AM_CXXFLAGS)
-
-noinst_LTLIBRARIES += \
- esi/libesicore.la \
- esi/libtest.la
-
-pkglib_LTLIBRARIES += \
- esi/esi.la \
- esi/combo_handler.la
-
-check_PROGRAMS += \
- esi/docnode_test \
- esi/parser_test \
- esi/processor_test \
- esi/utils_test \
- esi/vars_test \
- esi/gzip_test
-
-esi_libesicore_la_SOURCES = \
- esi/common/Attribute.h \
- esi/common/ComponentBase.h \
- esi/common/DocNode.cc \
- esi/common/DocNode.h \
- esi/lib/EsiGunzip.cc \
- esi/lib/EsiGunzip.h \
- esi/lib/EsiGzip.cc \
- esi/lib/EsiGzip.h \
- esi/lib/EsiParser.cc \
- esi/lib/EsiParser.h \
- esi/lib/EsiProcessor.cc \
- esi/lib/EsiProcessor.h \
- esi/lib/Expression.cc \
- esi/lib/Expression.h \
- esi/lib/HandlerManager.h \
- esi/common/HttpHeader.h \
- esi/lib/IncludeHandlerFactory.h \
- esi/lib/SpecialIncludeHandler.h \
- esi/lib/Stats.cc \
- esi/lib/Stats.h \
- esi/common/StringHash.h \
- esi/common/Utils.cc \
- esi/common/Utils.h \
- esi/lib/Variables.cc \
- esi/lib/Variables.h \
- esi/common/gzip.cc \
- esi/common/gzip.h
-
-esi_libesicore_la_CPPFLAGS = $(ESI_CPPFLAGS)
-esi_libesicore_la_CXXFLAGS = $(ESI_CXXFLAGS)
-
-# NOTE: HandlerManager::getHandler() is implemented differently in
-# HandlerManager.cc and TestHandlerManager.cc. The unit tests depend
-# on the TestHandlerManager.cc implementation, so don't accidentally
-# link the wrong one into libtest.
-
-esi_libtest_la_SOURCES = \
- esi/test/print_funcs.cc \
- esi/test/HandlerMap.cc \
- esi/test/StubIncludeHandler.cc \
- esi/test/TestHandlerManager.cc
-
-esi_libtest_la_CPPFLAGS = $(ESI_CPPFLAGS)
-esi_libtest_la_CXXFLAGS = $(ESI_CXXFLAGS)
-esi_libtest_la_LIBADD = esi/libesicore.la
-
-esi_esi_la_SOURCES = \
- esi/esi.cc \
- esi/fetcher/HttpDataFetcherImpl.cc \
- esi/lib/HandlerManager.cc \
- esi/serverIntercept.cc
-
-esi_esi_la_CPPFLAGS = $(ESI_CPPFLAGS)
-esi_esi_la_CXXFLAGS = $(ESI_CXXFLAGS)
-esi_esi_la_LIBADD = esi/libesicore.la
-
-esi_combo_handler_la_SOURCES = \
- esi/combo_handler.cc \
- esi/fetcher/HttpDataFetcherImpl.cc \
- esi/lib/HandlerManager.cc
-
-esi_combo_handler_la_CPPFLAGS = $(ESI_CPPFLAGS)
-esi_combo_handler_la_CXXFLAGS = $(ESI_CXXFLAGS)
-esi_combo_handler_la_LIBADD = esi/libesicore.la
-
-esi_docnode_test_CPPFLAGS = $(ESI_CPPFLAGS) \
- -I$(abs_top_srcdir)/lib/catch2
-esi_docnode_test_CXXFLAGS = $(ESI_CXXFLAGS)
-esi_docnode_test_LDADD = esi/libtest.la -lz
-esi_docnode_test_SOURCES = esi/test/docnode_test.cc
-
-esi_parser_test_CPPFLAGS = $(ESI_CPPFLAGS) \
- -I$(abs_top_srcdir)/lib/catch2
-esi_parser_test_CXXFLAGS = $(ESI_CXXFLAGS)
-esi_parser_test_LDADD = esi/libtest.la -lz
-esi_parser_test_SOURCES = esi/test/parser_test.cc
-
-esi_processor_test_CPPFLAGS = $(ESI_CPPFLAGS) \
- -I$(abs_top_srcdir)/lib/catch2
-esi_processor_test_CXXFLAGS = $(ESI_CXXFLAGS)
-esi_processor_test_LDADD = esi/libtest.la -lz
-esi_processor_test_SOURCES = esi/test/processor_test.cc
-
-esi_utils_test_CPPFLAGS = $(ESI_CPPFLAGS) \
- -I$(abs_top_srcdir)/lib/catch2
-esi_utils_test_CXXFLAGS = $(ESI_CXXFLAGS)
-esi_utils_test_LDADD = esi/libtest.la -lz
-esi_utils_test_SOURCES = esi/test/utils_test.cc
-
-esi_vars_test_CPPFLAGS = $(ESI_CPPFLAGS) \
- -I$(abs_top_srcdir)/lib/catch2
-esi_vars_test_CXXFLAGS = $(ESI_CXXFLAGS)
-esi_vars_test_LDADD = esi/libtest.la -lz
-esi_vars_test_SOURCES = esi/test/vars_test.cc
-
-esi_gzip_test_CPPFLAGS = $(ESI_CPPFLAGS) \
- -I$(abs_top_srcdir)/lib/catch2
-esi_gzip_test_CXXFLAGS = $(ESI_CXXFLAGS)
-esi_gzip_test_LDADD = esi/libtest.la -lz
-esi_gzip_test_SOURCES = esi/test/gzip_test.cc
diff --git a/plugins/experimental/access_control/Makefile.inc b/plugins/experimental/access_control/Makefile.inc
deleted file mode 100644
index 1a819fea1f..0000000000
--- a/plugins/experimental/access_control/Makefile.inc
+++ /dev/null
@@ -1,38 +0,0 @@
-# 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.
-
-pkglib_LTLIBRARIES += experimental/access_control/access_control.la
-
-experimental_access_control_access_control_la_SOURCES = \
- experimental/access_control/access_control.cc \
- experimental/access_control/common.cc \
- experimental/access_control/config.cc \
- experimental/access_control/headers.cc \
- experimental/access_control/pattern.cc \
- experimental/access_control/plugin.cc \
- experimental/access_control/utils.cc
-
-check_PROGRAMS += experimental/access_control/test_access_control
-
-experimental_access_control_test_access_control_CPPFLAGS = $(AM_CPPFLAGS) -I$(abs_top_srcdir)/lib/catch2 -DACCESS_CONTROL_UNIT_TEST
-experimental_access_control_test_access_control_LDADD = $(OPENSSL_LIBS) $(top_builddir)/src/tscore/libtscore.a
-
-experimental_access_control_test_access_control_SOURCES = \
- experimental/access_control/unit_tests/test_access_control.cc \
- experimental/access_control/unit_tests/test_utils.cc \
- experimental/access_control/access_control.cc \
- experimental/access_control/common.cc \
- experimental/access_control/utils.cc
diff --git a/plugins/experimental/block_errors/Makefile.inc b/plugins/experimental/block_errors/Makefile.inc
deleted file mode 100644
index 3659b6a1ee..0000000000
--- a/plugins/experimental/block_errors/Makefile.inc
+++ /dev/null
@@ -1,20 +0,0 @@
-# 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.
-
-pkglib_LTLIBRARIES += experimental/block_errors/block_errors.la
-
-experimental_block_errors_block_errors_la_SOURCES = \
- experimental/block_errors/block_errors.cc
diff --git a/plugins/experimental/cache_fill/Makefile.inc b/plugins/experimental/cache_fill/Makefile.inc
deleted file mode 100644
index 6d837d8891..0000000000
--- a/plugins/experimental/cache_fill/Makefile.inc
+++ /dev/null
@@ -1,21 +0,0 @@
-# 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.
-
-pkglib_LTLIBRARIES += experimental/cache_fill/cache_fill.la
-experimental_cache_fill_cache_fill_la_SOURCES = \
- experimental/cache_fill/cache_fill.cc \
- experimental/cache_fill/background_fetch.cc \
- experimental/cache_fill/background_fetch.h
diff --git a/plugins/experimental/cert_reporting_tool/Makefile.inc b/plugins/experimental/cert_reporting_tool/Makefile.inc
deleted file mode 100644
index 73fb18602b..0000000000
--- a/plugins/experimental/cert_reporting_tool/Makefile.inc
+++ /dev/null
@@ -1,19 +0,0 @@
-# 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.
-
-pkglib_LTLIBRARIES += experimental/cert_reporting_tool/cert_reporting_tool.la
-
-experimental_cert_reporting_tool_cert_reporting_tool_la_SOURCES = experimental/cert_reporting_tool/cert_reporting_tool.cc
diff --git a/plugins/experimental/cookie_remap/Makefile.inc b/plugins/experimental/cookie_remap/Makefile.inc
deleted file mode 100644
index ddf84afb6c..0000000000
--- a/plugins/experimental/cookie_remap/Makefile.inc
+++ /dev/null
@@ -1,40 +0,0 @@
-# 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.
-
-pkglib_LTLIBRARIES += experimental/cookie_remap/cookie_remap.la
-
-experimental_cookie_remap_cookie_remap_la_SOURCES = \
- experimental/cookie_remap/cookie_remap.cc \
- experimental/cookie_remap/hash.cc \
- experimental/cookie_remap/strip.cc \
- experimental/cookie_remap/cookiejar.cc
-
-experimental_cookie_remap_cookie_remap_la_LDFLAGS = \
- $(AM_LDFLAGS)
-
-AM_CPPFLAGS += @YAMLCPP_INCLUDES@
-
-check_PROGRAMS += \
- experimental/cookie_remap/test_cookiejar
-
-experimental_cookie_remap_test_cookiejar_CPPFLAGS = $(AM_CPPFLAGS) -Iexperimental/cookie_remap -I$(abs_top_srcdir)/lib/catch2
-experimental_cookie_remap_test_cookiejar_SOURCES = \
- experimental/cookie_remap/test_cookiejar.cc \
- experimental/cookie_remap/strip.cc \
- experimental/cookie_remap/cookiejar.cc \
- experimental/cookie_remap/cookiejar.h
-
-# vim: ft=make ts=8 sw=8 et:
diff --git a/plugins/experimental/custom_redirect/Makefile.inc b/plugins/experimental/custom_redirect/Makefile.inc
deleted file mode 100644
index 294d315e3e..0000000000
--- a/plugins/experimental/custom_redirect/Makefile.inc
+++ /dev/null
@@ -1,20 +0,0 @@
-# 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.
-
-pkglib_LTLIBRARIES += experimental/custom_redirect/custom_redirect.la
-
-experimental_custom_redirect_custom_redirect_la_SOURCES = \
- experimental/custom_redirect/custom_redirect.cc
diff --git a/plugins/experimental/fq_pacing/Makefile.inc b/plugins/experimental/fq_pacing/Makefile.inc
deleted file mode 100644
index 5fda9b6ac3..0000000000
--- a/plugins/experimental/fq_pacing/Makefile.inc
+++ /dev/null
@@ -1,20 +0,0 @@
-# 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.
-
-pkglib_LTLIBRARIES += experimental/fq_pacing/fq_pacing.la
-
-experimental_fq_pacing_fq_pacing_la_SOURCES = \
- experimental/fq_pacing/fq_pacing.cc
diff --git a/plugins/experimental/geoip_acl/Makefile.inc b/plugins/experimental/geoip_acl/Makefile.inc
deleted file mode 100644
index 288c07ad7a..0000000000
--- a/plugins/experimental/geoip_acl/Makefile.inc
+++ /dev/null
@@ -1,23 +0,0 @@
-# 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.
-
-pkglib_LTLIBRARIES += experimental/geoip_acl/geoip_acl.la
-
-experimental_geoip_acl_geoip_acl_la_SOURCES = \
- experimental/geoip_acl/acl.cc \
- experimental/geoip_acl/geoip_acl.cc
-
-experimental_geoip_acl_geoip_acl_la_LIBADD = $(GEOIP_LIBS)
diff --git a/plugins/experimental/header_freq/Makefile.inc b/plugins/experimental/header_freq/Makefile.inc
deleted file mode 100644
index d44c51c976..0000000000
--- a/plugins/experimental/header_freq/Makefile.inc
+++ /dev/null
@@ -1,19 +0,0 @@
-# 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.
-
-pkglib_LTLIBRARIES += experimental/header_freq/header_freq.la
-experimental_header_freq_header_freq_la_SOURCES = \
- experimental/header_freq/header_freq.cc
diff --git a/plugins/experimental/hook-trace/Makefile.inc b/plugins/experimental/hook-trace/Makefile.inc
deleted file mode 100644
index 10a3dea642..0000000000
--- a/plugins/experimental/hook-trace/Makefile.inc
+++ /dev/null
@@ -1,20 +0,0 @@
-# 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.
-
-pkglib_LTLIBRARIES += experimental/hook-trace/hook-trace.la
-
-experimental_hook_trace_hook_trace_la_SOURCES = \
- experimental/hook-trace/hook-trace.cc
diff --git a/plugins/experimental/http_stats/Makefile.inc b/plugins/experimental/http_stats/Makefile.inc
deleted file mode 100644
index 1d788716af..0000000000
--- a/plugins/experimental/http_stats/Makefile.inc
+++ /dev/null
@@ -1,20 +0,0 @@
- # 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.
-
-pkglib_LTLIBRARIES += experimental/http_stats/http_stats.la
-
-experimental_http_stats_http_stats_la_SOURCES = \
- experimental/http_stats/http_stats.cc
diff --git a/plugins/experimental/icap/Makefile.inc b/plugins/experimental/icap/Makefile.inc
deleted file mode 100644
index fa565f8911..0000000000
--- a/plugins/experimental/icap/Makefile.inc
+++ /dev/null
@@ -1,20 +0,0 @@
-# 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.
-
-pkglib_LTLIBRARIES += experimental/icap/icap.la
-
-experimental_icap_icap_la_SOURCES = \
- experimental/icap/icap_plugin.cc
diff --git a/plugins/experimental/inliner/Makefile.inc b/plugins/experimental/inliner/Makefile.inc
deleted file mode 100644
index d85b2b1ef0..0000000000
--- a/plugins/experimental/inliner/Makefile.inc
+++ /dev/null
@@ -1,29 +0,0 @@
-# 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.
-
-
-experimental_inliner_inliner_la_CPPFLAGS = $(AM_CPPFLAGS) -DPLUGIN_TAG=\"inliner\"
-
-pkglib_LTLIBRARIES += experimental/inliner/inliner.la
-
-experimental_inliner_inliner_la_SOURCES = \
- experimental/inliner/ats-inliner.cc \
- experimental/inliner/cache.cc \
- experimental/inliner/chunk-decoder.cc \
- experimental/inliner/fetcher.cc \
- experimental/inliner/html-parser.cc \
- experimental/inliner/inliner-handler.cc \
- experimental/inliner/ts.cc
diff --git a/plugins/experimental/magick/Makefile.inc b/plugins/experimental/magick/Makefile.inc
deleted file mode 100644
index b4381fc0b7..0000000000
--- a/plugins/experimental/magick/Makefile.inc
+++ /dev/null
@@ -1,32 +0,0 @@
-#
-# 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.
-
-experimental_magick_magick_la_CPPFLAGS = $(AM_CPPFLAGS) $(LIBMAGICKCPP_CFLAGS)
-experimental_magick_magick_la_CXXFLAGS = $(AM_CXXFLAGS) -Wno-unused-variable
-
-pkglib_LTLIBRARIES += experimental/magick/magick.la
-
-experimental_magick_magick_la_SOURCES = \
- experimental/magick/magick.cc
-
-experimental_magick_magick_la_LDFLAGS = \
- $(AM_LDFLAGS) \
- -L$(top_builddir)/src/tscpp/api
-
-experimental_magick_magick_la_LIBADD = \
- -ltscppapi \
- $(LIBMAGICKCPP_LIBS)
diff --git a/plugins/experimental/maxmind_acl/Makefile.inc b/plugins/experimental/maxmind_acl/Makefile.inc
deleted file mode 100644
index 25514ff9e0..0000000000
--- a/plugins/experimental/maxmind_acl/Makefile.inc
+++ /dev/null
@@ -1,28 +0,0 @@
-# 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.
-
-pkglib_LTLIBRARIES += experimental/maxmind_acl/maxmind_acl.la
-
-experimental_maxmind_acl_maxmind_acl_la_SOURCES = \
... 6145 lines suppressed ...