diff --git a/.github/workflows/otns.yml b/.github/workflows/otns.yml index c9a9d946d..73305928c 100644 --- a/.github/workflows/otns.yml +++ b/.github/workflows/otns.yml @@ -74,7 +74,6 @@ jobs: run: | sudo rm /etc/apt/sources.list.d/* && sudo apt-get update sudo apt-get --no-install-recommends install -y g++-multilib lcov ninja-build - ./bootstrap - name: Run run: | export OT_DIR=$PWD @@ -114,7 +113,6 @@ jobs: run: | sudo rm /etc/apt/sources.list.d/* && sudo apt-get update sudo apt-get --no-install-recommends install -y g++-multilib lcov ninja-build - ./bootstrap - name: Run run: | export OT_DIR=$PWD @@ -177,7 +175,6 @@ jobs: run: | sudo rm /etc/apt/sources.list.d/* && sudo apt-get update sudo apt-get --no-install-recommends install -y g++-multilib lcov ninja-build - ./bootstrap - name: Run run: | export OT_DIR=$PWD diff --git a/.github/workflows/simulation-1.1.yml b/.github/workflows/simulation-1.1.yml index 65030d594..9adebe4e9 100644 --- a/.github/workflows/simulation-1.1.yml +++ b/.github/workflows/simulation-1.1.yml @@ -45,37 +45,6 @@ permissions: jobs: - distcheck: - runs-on: ubuntu-20.04 - env: - CC: clang - CXX: clang++ - REFERENCE_DEVICE: 1 - THREAD_VERSION: 1.1 - VIRTUAL_TIME: 1 - steps: - - name: Harden Runner - uses: step-security/harden-runner@6b3083af2869dc3314a0257a42f4af696cc79ba3 # v2.3.1 - with: - egress-policy: audit # TODO: change to 'egress-policy: block' after couple of runs - - - uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 - with: - submodules: true - - name: Bootstrap - run: | - sudo rm /etc/apt/sources.list.d/* && sudo apt-get update - sudo apt-get --no-install-recommends install -y llvm-runtime python3-setuptools python3-wheel - python3 -m pip install -r tests/scripts/thread-cert/requirements.txt - - name: Run - run: | - export ASAN_SYMBOLIZER_PATH=`which llvm-symbolizer` - export ASAN_OPTIONS=symbolize=1 - export DISTCHECK_CONFIGURE_FLAGS= CPPFLAGS=-DOPENTHREAD_SIMULATION_VIRTUAL_TIME=1 - export DISTCHECK_BUILD=1 - ./bootstrap - VERBOSE=1 make -f examples/Makefile-simulation distcheck - packet-verification: runs-on: ubuntu-20.04 env: diff --git a/Makefile.am b/Makefile.am deleted file mode 100644 index b5373fc25..000000000 --- a/Makefile.am +++ /dev/null @@ -1,189 +0,0 @@ -# -# Copyright (c) 2016, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am - -AM_MAKEFLAGS = --no-print-directory - -AM_DISTCHECK_CONFIGURE_FLAGS = \ - --enable-address-sanitizer \ - --enable-cli \ - --enable-ftd \ - --enable-mtd \ - --enable-ncp \ - --enable-radio-only \ - --enable-radio-cli \ - --with-examples=simulation \ - $(NULL) - -SUBDIRS = \ - include \ - third_party \ - src \ - examples \ - tests \ - tools \ - doc \ - $(NULL) - -EXTRA_DIST = \ - .default-version \ - bootstrap \ - etc \ - README.md \ - NOTICE \ - CONTRIBUTING.md \ - LICENSE \ - $(NULL) - -BUILT_SOURCES = \ - .local-version \ - $(NULL) - -dist_doc_DATA = \ - $(NULL) - -DISTCLEANFILES = \ - .local-version \ - $(NULL) - -# Ignore the pseudo flash files on Posix platform during diskcheck -distcleancheck_listfiles = \ - $(AM_V_at)find . -type f -name "*flash" - -# -# Package version files: -# -# .default-version - The default package version. This file is ALWAYS checked -# in and should always represent the current baseline -# version of the package. -# -# .dist-version - The distributed package version. This file is NEVER -# checked in within the upstream repository, is auto- -# generated, and is only found in the package distribution. -# -# .local-version - The current source code controlled package version. This -# file is NEVER checked in within the upstream repository, -# is auto-generated, and can always be found in both the -# build tree and distribution. -# -# When present, the .local-version file is preferred first, the -# .dist-version second, and the .default-version last. -# - -VERSION_FILE := $(if $(wildcard $(builddir)/.local-version),$(builddir)/.local-version,$(if $(wildcard $(srcdir)/.dist-version),$(srcdir)/.dist-version,$(srcdir)/.default-version)) - -# -# Override autotool's default notion of the package version variables. -# This ensures that when we create a source distribution that the -# version is always the current version, not the version when the -# package was bootstrapped. -# - -OPENTHREAD_VERSION ?= $(shell cat $(VERSION_FILE) 2> /dev/null) - -PACKAGE_VERSION = $(OPENTHREAD_VERSION) -VERSION = $(PACKAGE_VERSION) - -distdir = $(PACKAGE)-$(shell \ -if [ "$(origin OPENTHREAD_VERSION)" != "file" ]; then \ - echo "$(OPENTHREAD_VERSION)" ; \ -else \ - $(abs_top_nlbuild_autotools_dir)/scripts/mkversion \ - -b "$(OPENTHREAD_VERSION)" "$(top_srcdir)"; \ -fi ) - -# -# check-file-.local-version -# -# Speculatively regenerate .local-version and check to see if it needs -# to be updated. -# -# If OPENTHREAD_VERSION has been supplied anywhere other than in this file -# (which is implicitly the contents of .local-version), then use that; -# otherwise, attempt to generate it from the SCM system. -# -# This is called from $(call check-file,.local-version). -# -define check-file-.local-version -if [ "$(origin OPENTHREAD_VERSION)" != "file" ]; then \ - echo "$(OPENTHREAD_VERSION)" > "$(2)"; \ -else \ - $(abs_top_nlbuild_autotools_dir)/scripts/mkversion \ - -b "$(OPENTHREAD_VERSION)" "$(top_srcdir)" \ - > "$(2)"; \ -fi -endef - -# -# check-file-.dist-version -# -# Speculatively regenerate .dist-version and check to see if it needs -# to be updated. -# -# This is called from $(call check-file,.dist-version). -# -define check-file-.dist-version -cat "$(1)" > "$(2)" -endef - -# -# A convenience target to allow package users to easily rerun the -# package configuration according to the current configuration. -# -.PHONY: reconfigure -reconfigure: $(builddir)/config.status - $(AM_V_at)$(<) --recheck - -# -# Version file regeneration rules. -# -.PHONY: force - -$(builddir)/.local-version: $(srcdir)/.default-version force - -$(distdir)/.dist-version: $(builddir)/.local-version force - -$(distdir)/.dist-version $(builddir)/.local-version: - $(call check-file,$(@F)) - -dist distcheck: $(BUILT_SOURCES) - -dist-hook: $(distdir)/.dist-version - -# -# Top-level convenience target for making a documentation-only -# distribution whose results appear at the top level of the build tree -# in the same fashion that the distribution would be for 'make dist'. -# - -.PHONY: docdist -docdist: $(BUILT_SOURCES) - $(MAKE) -C doc docdistdir=$(abs_builddir) $(@) - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/bootstrap b/bootstrap deleted file mode 100755 index 637c45cac..000000000 --- a/bootstrap +++ /dev/null @@ -1,46 +0,0 @@ -#!/bin/bash -# -# Copyright (c) 2016, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# -# Description: -# This file is a trampoline script to the nlbuild-autotools -# bootstrap script and augments it by providing the path to the -# nlbuild-autotools repository for this project. -# - -# Set this to the relative location of nlbuild-autotools to this script - -nlbuild_autotools_stem="third_party/nlbuild-autotools/repo" - -abs_srcdir=$(cd "$(dirname "${0}")" && pwd) - -# filter out knowning information from stderr which is causing GitHub annotation check warnings. -(cd "$abs_srcdir" && exec "$abs_srcdir/$nlbuild_autotools_stem/scripts/bootstrap" -I "$abs_srcdir/$nlbuild_autotools_stem" "${@}") 2> >( - grep -v "installing 'third_party/nlbuild-autotools/repo/third_party/autoconf/missing'" \ - | grep -v "installing 'third_party/nlbuild-autotools/repo/third_party/autoconf/compile'" \ - | grep -v "installing 'third_party/nlbuild-autotools/repo/third_party/autoconf/depcomp'" 1>&2 -) diff --git a/configure.ac b/configure.ac deleted file mode 100644 index dedd85dda..000000000 --- a/configure.ac +++ /dev/null @@ -1,1101 +0,0 @@ -# -*- Autoconf -*- -# Process this file with autoconf to produce a configure script. - -# -# Copyright (c) 2016, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -# -# Declare autoconf version requirements -# -AC_PREREQ([2.68]) - -# -# Initialize autoconf for the package -# -AC_INIT([OPENTHREAD], - m4_esyscmd([third_party/nlbuild-autotools/repo/scripts/mkversion -b `cat .default-version` .]), - [openthread-devel@googlegroups.com], - [openthread], - [http://github.com/openthread/openthread]) - -# Tell the rest of the build system the absolute path where the -# nlbuild-autotools repository is rooted at. - -AC_SUBST(nlbuild_autotools_stem,[third_party/nlbuild-autotools/repo]) -AC_SUBST(abs_top_nlbuild_autotools_dir,[\${abs_top_srcdir}/\${nlbuild_autotools_stem}]) - -# -# OPENTHREAD interface current, revision, and age versions. -# -# Maintainters: Please manage these fields as follows: -# -# Interfaces removed: CURRENT++, AGE = 0, REVISION = 0 -# Interfaces added: CURRENT++, AGE++, REVISION = 0 -# No interfaces changed: REVISION++ -# -# -AC_SUBST(LIBOPENTHREAD_VERSION_CURRENT, [0]) -AC_SUBST(LIBOPENTHREAD_VERSION_AGE, [5]) -AC_SUBST(LIBOPENTHREAD_VERSION_REVISION, [0]) -AC_SUBST(LIBOPENTHREAD_VERSION_INFO, [${LIBOPENTHREAD_VERSION_CURRENT}:${LIBOPENTHREAD_VERSION_REVISION}:${LIBOPENTHREAD_VERSION_AGE}]) - -# -# Check the sanity of the source directory by checking for the -# presence of a key watch file -# -AC_CONFIG_SRCDIR([include/openthread/error.h]) - -# -# Tell autoconf where to find auxilliary build tools (e.g. config.guess, -# install-sh, missing, etc.) -# -AC_CONFIG_AUX_DIR([third_party/nlbuild-autotools/repo/third_party/autoconf]) - -# -# Tell autoconf where to find auxilliary M4 macros -# -AC_CONFIG_MACRO_DIRS([third_party/nlbuild-autotools/repo/third_party/autoconf/m4 third_party/nlbuild-autotools/repo/autoconf/m4]) - -# -# Tell autoconf what file the package is using to aggregate C preprocessor -# defines. -# -AC_CONFIG_HEADERS([include/openthread-config-generic.h]) - -# -# Figure out what the canonical build and host tuples are. -# -AC_CANONICAL_BUILD -AC_CANONICAL_HOST - -# -# Mac OS X / Darwin ends up putting some versioning cruft on the end of its -# tuple that we don't care about in this script. Create "clean" variables -# devoid of it. -# - -NL_FILTERED_CANONICAL_BUILD -NL_FILTERED_CANONICAL_HOST - -# -# Configure automake with the desired options, indicating that this is not -# a native GNU package, that we want "silent" build rules, and that we want -# objects built in the same subdirectory as their source rather than collapsed -# together at the top-level directory. -# -# Disable silent build rules by either passing --disable-silent-rules to -# configure or passing V=1 to make -# -AM_INIT_AUTOMAKE([1.14 foreign silent-rules subdir-objects tar-pax]) - -# -# Silent build rules requires at least automake-1.11. Employ -# techniques for not breaking earlier versions of automake. -# -m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) -AM_SILENT_RULES([yes]) - -# -# Enable maintainer mode to prevent the package from constantly trying -# to rebuild configure, Makefile.in, etc. Rebuilding such files rarely, -# if ever, needs to be done "in the field". -# -# Use the included 'bootstrap' script instead when necessary. -# -AM_MAINTAINER_MODE - -# -# Host-os-specific checks -# - -case ${host_os} in - - *darwin*) - OPENTHREAD_TARGET=darwin - ;; - - *linux*) - OPENTHREAD_TARGET=linux - ;; - -esac - -AM_CONDITIONAL([OPENTHREAD_TARGET_DARWIN], [test "${OPENTHREAD_TARGET}" = "darwin"]) -AM_CONDITIONAL([OPENTHREAD_TARGET_LINUX], [test "${OPENTHREAD_TARGET}" = "linux"]) - -# -# Checks for build host programs -# - -# This is a hack to restore some old broken behavior that was -# removed in pull request #1527. It's use is highly discouraged, -# you should try to fix your build environment instead. -AC_ARG_ENABLE(no-executables-hack, - [AS_HELP_STRING([--enable-no-executables-hack], - [Enable hack that prevents link checks at configure time. Highly discouraged.])]) -AC_MSG_CHECKING([whether to disable executable checking]) -if test "${enable_no_executables_hack}" = "yes" -then - AC_MSG_RESULT([yes]) - AC_NO_EXECUTABLES -else - AC_MSG_RESULT([no]) -fi - -# Passing -Werror to GCC-based or -compatible compilers breaks some -# autoconf tests (see -# http://lists.gnu.org/archive/html/autoconf-patches/2008-09/msg00014.html). -# -# If -Werror has been passed transform it into -Wno-error. We'll -# transform it back later with NL_RESTORE_WERROR. - -NL_SAVE_WERROR - -# Check for compilers. -# -# These should be checked BEFORE we check for and, implicitly, -# initialize libtool such that libtool knows what languages it has to -# work with. - -AC_PROG_CPP -AC_PROG_CPP_WERROR - -AC_PROG_CC -AC_PROG_CC_C_O - -AC_PROG_CXXCPP - -AC_PROG_CXX -AC_PROG_CXX_C_O - -AM_PROG_AS - -AC_C_BIGENDIAN - -# Check for other compiler toolchain tools. - -AC_CHECK_TOOL(AR, ar) -AC_CHECK_TOOL(RANLIB, ranlib) -AC_CHECK_TOOL(OBJCOPY, objcopy) -AC_CHECK_TOOL(STRIP, strip) - -# Check for other host tools. - -AC_PROG_INSTALL -AC_PROG_LN_S - -AC_PATH_PROG(CMP, cmp) - -# Check for and initialize libtool - -LT_INIT -AC_PROG_LIBTOOL - -# -# Checks for specific compiler characteristics -# - -# -# Common compiler flags we would like to have. -# -# -Wall CC, CXX -# - -PROSPECTIVE_CFLAGS="-Wall -Wextra -Wshadow -Wundef -Wcast-align -Werror -Wno-error=undef -std=c99 -pedantic-errors" -PROSPECTIVE_CXXFLAGS="-Wall -Wextra -Wshadow -Wundef -Wcast-align -Werror -Wno-error=undef -std=c++11 -Wno-c++14-compat -fno-exceptions -pedantic-errors" - -AC_CACHE_CHECK([whether $CC is Clang], - [nl_cv_clang], - [nl_cv_clang=no - if test "x${GCC}" = "xyes"; then - AC_EGREP_CPP([NL_CC_IS_CLANG], - [/* Note: Clang 2.7 lacks __clang_[a-z]+__ */ -# if defined(__clang__) && defined(__llvm__) - NL_CC_IS_CLANG -# endif - ], - [nl_cv_clang=yes]) - fi - ]) - -if test "${nl_cv_clang}" = "yes"; then - PROSPECTIVE_CFLAGS="${PROSPECTIVE_CFLAGS} -Wconversion -Wno-gnu-zero-variadic-macro-arguments" - PROSPECTIVE_CXXFLAGS="${PROSPECTIVE_CXXFLAGS} -Wconversion" -fi - -convert_warning_flags_to_positive() { - flags_to_check="" - warning_flag_backup="" - for option in ${1}; do - case "$option" - in - -Wno-*) - flags_to_check="${flags_to_check} -W${option##-Wno-}" - warning_flag_backup="${warning_flag_backup} ${option##-Wno-}";; - *) - flags_to_check="${flags_to_check} ${option}";; - esac - done -} - -restore_negative_form_of_warning_flags() { - final_flags=${1} - for positive_option in ${warning_flag_backup}; do - final_flags=$(echo $ECHO_N $final_flags | $SED "s|-W${positive_option}|-Wno-${positive_option}|g") - done - unset flags_to_check - unset warning_flag_backup -} - -check_prospective_CFLAGS() { - if test "${nl_cv_clang}" = "yes"; then - AX_CHECK_COMPILER_OPTIONS([C], ${PROSPECTIVE_CFLAGS}) - else - convert_warning_flags_to_positive "${PROSPECTIVE_CFLAGS}" - AX_CHECK_COMPILER_OPTIONS([C], ${flags_to_check}) - restore_negative_form_of_warning_flags "${CFLAGS}" - CFLAGS=${final_flags} - unset final_flags - fi -} - -check_prospective_CXXFLAGS() { - if test "${nl_cv_clang}" = "yes"; then - AX_CHECK_COMPILER_OPTIONS([C++], ${PROSPECTIVE_CXXFLAGS}) - else - convert_warning_flags_to_positive "${PROSPECTIVE_CXXFLAGS}" - AX_CHECK_COMPILER_OPTIONS([C++], ${flags_to_check}) - restore_negative_form_of_warning_flags "${CXXFLAGS}" - CXXFLAGS=${final_flags} - unset final_flags - fi -} - -check_prospective_CFLAGS -check_prospective_CXXFLAGS - -# Disable building shared libraries by default (can be enabled with --enable-shared) - -AC_DISABLE_SHARED - -# -# Debug instances -# -AC_MSG_NOTICE([checking whether to build debug instances]) - -# Debug - -NL_ENABLE_DEBUG([no]) - -AM_CONDITIONAL([OPENTHREAD_BUILD_DEBUG], [test "${nl_cv_build_debug}" = "yes"]) - -# -# Code coverage and compiler optimization -# - -# Coverage - -NL_ENABLE_COVERAGE([no]) - -AM_CONDITIONAL([OPENTHREAD_BUILD_COVERAGE], [test "${nl_cv_build_coverage}" = "yes"]) - -NL_ENABLE_COVERAGE_REPORTS([auto]) - -AM_CONDITIONAL([OPENTHREAD_BUILD_COVERAGE_REPORTS], [test "${nl_cv_build_coverage_reports}" = "yes"]) - -# Optimization - -NL_ENABLE_OPTIMIZATION([yes]) - -AM_CONDITIONAL([OPENTHREAD_BUILD_OPTIMIZED], [test "${nl_cv_build_optimized}" = "yes"]) - -# Fuzz Targets - -AC_MSG_CHECKING([whether to build fuzz targets]) -AC_ARG_ENABLE(fuzz-targets, - [AS_HELP_STRING([--enable-fuzz-targets],[Enable building of fuzz targets @<:@default=no@:>@.])], - [ - case "${enableval}" in - - no|yes) - enable_fuzz_targets=${enableval} - ;; - - *) - AC_MSG_ERROR([Invalid value ${enableval} for --enable-fuzz-targets]) - ;; - - esac - ], - [enable_fuzz_targets=no]) -AC_MSG_RESULT(${enable_fuzz_targets}) - -AM_CONDITIONAL([OPENTHREAD_ENABLE_FUZZ_TARGETS], [test "${enable_fuzz_targets}" = "yes"]) - -if test "${enable_fuzz_targets}" = "no" ; then - PROSPECTIVE_CXXFLAGS="-fno-rtti" - check_prospective_CXXFLAGS -fi - -# Address Sanitizer - -AC_MSG_CHECKING([whether to build with Address Sanitizer support]) -AC_ARG_ENABLE(address-sanitizer, - [AS_HELP_STRING([--enable-address-sanitizer],[Enable Address Sanitizer support @<:@default=no@:>@.])], - [ - case "${enableval}" in - - no|yes) - enable_address_sanitizer=${enableval} - ;; - - *) - AC_MSG_ERROR([Invalid value ${enableval} for --enable-address-sanitizer]) - ;; - - esac - ], - [enable_address_sanitizer=no]) -AC_MSG_RESULT(${enable_address_sanitizer}) - -AM_CONDITIONAL([OPENTHREAD_WITH_ADDRESS_SANITIZER], [test "${enable_address_sanitizer}" = "yes"]) - -if test "${enable_address_sanitizer}" = "yes" ; then - - PROSPECTIVE_CFLAGS="-fsanitize=address" - PROSPECTIVE_CXXFLAGS="-fsanitize=address" - - # Check if the compilers support address sanitizer - check_prospective_CFLAGS - check_prospective_CXXFLAGS -fi - -# -# Tests -# -AC_MSG_NOTICE([checking whether to build tests]) - -NL_ENABLE_TESTS([yes]) - -AM_CONDITIONAL([OPENTHREAD_BUILD_TESTS], [test "${nl_cv_build_tests}" = "yes"]) - -# -# Builtin mbedtls -# - -AC_ARG_ENABLE(builtin-mbedtls, - [AS_HELP_STRING([--enable-builtin-mbedtls],[Enable builtin mbedtls @<:@default=yes@:>@.])], - [ - case "${enableval}" in - - no|yes) - enable_builtin_mbedtls=${enableval} - ;; - - *) - AC_MSG_ERROR([Invalid value ${enable_builtin_mbedtls} for --enable-builtin-mbedtls]) - ;; - esac - ], - [enable_builtin_mbedtls=yes]) - -if test "$enable_builtin_mbedtls" = "yes" -a ! "${MBEDTLS_CPPFLAGS}"; then - MBEDTLS_CPPFLAGS="-I\${abs_top_srcdir}/third_party/mbedtls" - MBEDTLS_CPPFLAGS="${MBEDTLS_CPPFLAGS} -I\${abs_top_srcdir}/third_party/mbedtls/repo/include" - MBEDTLS_CPPFLAGS="${MBEDTLS_CPPFLAGS} -DMBEDTLS_CONFIG_FILE=\\\"mbedtls-config.h\\\"" -fi - -if test "$enable_builtin_mbedtls" = "yes"; then - CPPFLAGS="${CPPFLAGS} -DOPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS=1" -else - CPPFLAGS="${CPPFLAGS} -DOPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS=0" -fi - -AC_MSG_CHECKING([whether mbed TLS should be enabled]) -AC_MSG_RESULT(${enable_builtin_mbedtls}) -AM_CONDITIONAL([OPENTHREAD_ENABLE_BUILTIN_MBEDTLS], [test "${enable_builtin_mbedtls}" = "yes"]) - -# -# POSIX Daemon -# - -AC_MSG_CHECKING([whether to build POSIX applicaton in daemon mode]) -AC_ARG_ENABLE(posix-daemon, - [AS_HELP_STRING([--enable-posix-daemon], [Build POSIX application in daemon mode@<:@default=no@:>@.])], - [ - case "${enableval}" in - - no|yes) - enable_posix_daemon=${enableval} - ;; - - *) - AC_MSG_ERROR([Invalid value ${enable_posix} for --enable-posix-daemon]) - ;; - esac - ], - [enable_posix_daemon=no]) - -if test "$enable_posix_daemon" = "yes"; then - CPPFLAGS="${CPPFLAGS} -DOPENTHREAD_POSIX_CONFIG_DAEMON_ENABLE=1" -else - CPPFLAGS="${CPPFLAGS} -DOPENTHREAD_POSIX_CONFIG_DAEMON_ENABLE=0" -fi - -AC_MSG_RESULT(${enable_posix_daemon}) -AM_CONDITIONAL([OPENTHREAD_POSIX_CONFIG_DAEMON_ENABLE], [test "${enable_posix_daemon}" = "yes"]) - -# -# FTD Library -# - -AC_MSG_CHECKING([whether to build FTD library]) -AC_ARG_ENABLE(ftd, - [AS_HELP_STRING([--enable-ftd], [Build FTD library @<:@default=no@:>@.])], - [ - case "${enableval}" in - - no|yes) - enable_ftd=${enableval} - ;; - - *) - AC_MSG_ERROR([Invalid value ${enable_ftd} for --enable-ftd]) - ;; - esac - ], - [enable_ftd=no]) - -AC_MSG_RESULT(${enable_ftd}) -AM_CONDITIONAL([OPENTHREAD_ENABLE_FTD], [test "${enable_ftd}" = "yes"]) - -# -# MTD Library -# - -AC_MSG_CHECKING([whether to build MTD library]) -AC_ARG_ENABLE(mtd, - [AS_HELP_STRING([--enable-mtd], [Build MTD library @<:@default=no@:>@.])], - [ - case "${enableval}" in - - no|yes) - enable_mtd=${enableval} - ;; - - *) - AC_MSG_ERROR([Invalid value ${enable_mtd} for --enable-mtd]) - ;; - esac - ], - [enable_mtd=no]) - -AC_MSG_RESULT(${enable_mtd}) -AM_CONDITIONAL([OPENTHREAD_ENABLE_MTD], [test "${enable_mtd}" = "yes"]) - -# -# Radio Library -# - -AC_MSG_CHECKING([whether to build radio-only library]) -AC_ARG_ENABLE(radio-only, - [AS_HELP_STRING([--enable-radio-only], [Build radio-only library @<:@default=no@:>@.])], - [ - case "${enableval}" in - - no|yes) - enable_radio_only=${enableval} - ;; - - *) - AC_MSG_ERROR([Invalid value ${enable_radio_only} for --enable-radio-only]) - ;; - esac - ], - [enable_radio_only=no]) - -AC_MSG_RESULT(${enable_radio_only}) -AM_CONDITIONAL([OPENTHREAD_ENABLE_RADIO_ONLY], [test "${enable_radio_only}" = "yes"]) - -# -# Radio Cli Library -# - -AC_MSG_CHECKING([whether to build radio-cli library]) -AC_ARG_ENABLE(radio-cli, - [AS_HELP_STRING([--enable-radio-cli], [Build radio-cli library @<:@default=no@:>@.])], - [ - case "${enableval}" in - - no|yes) - enable_radio_cli=${enableval} - ;; - - *) - AC_MSG_ERROR([Invalid value ${enable_radio_cli} for --enable-radio-cli]) - ;; - esac - ], - [enable_radio_cli=no]) - -AC_MSG_RESULT(${enable_radio_cli}) -AM_CONDITIONAL([OPENTHREAD_ENABLE_RADIO_CLI], [test "${enable_radio_cli}" = "yes"]) - -# -# whether to build executables -# - -AC_MSG_CHECKING([whether to build executables]) -AC_ARG_ENABLE(executable, - [AS_HELP_STRING([--enable-executable], [Build executables @<:@default=yes@:>@.])], - [ - case "${enableval}" in - - no|yes) - enable_executable=${enableval} - ;; - - *) - AC_MSG_ERROR([Invalid value ${enable_executable} for --enable-executable]) - ;; - esac - ], - [enable_executable=yes]) - -AC_MSG_RESULT(${enable_executable}) -AM_CONDITIONAL([OPENTHREAD_ENABLE_EXECUTABLE], [test "${enable_executable}" = "yes"]) - -# -# CLI Library -# - -AC_MSG_CHECKING([whether to build CLI library]) -AC_ARG_ENABLE(cli, - [AS_HELP_STRING([--enable-cli], [Build CLI library @<:@default=no@:>@.])], - [ - case "${enableval}" in - - no|yes) - enable_cli=${enableval} - ;; - - *) - AC_MSG_ERROR([Invalid value ${enable_cli} for --enable-cli]) - ;; - esac - ], - [enable_cli=no]) - -AC_MSG_RESULT(${enable_cli}) -AM_CONDITIONAL([OPENTHREAD_ENABLE_CLI], [test "${enable_cli}" = "yes"]) - -# -# NCP Library -# - -AC_MSG_CHECKING([whether to build NCP library]) -AC_ARG_ENABLE(ncp, - [AS_HELP_STRING([--enable-ncp], [Build NCP library @<:@default=no@:>@.])], - [ - case "${enableval}" in - - no|yes) - enable_ncp=${enableval} - ;; - - *) - AC_MSG_ERROR([Invalid value ${enable_ncp} for --enable-ncp]) - ;; - esac - ], - [enable_ncp=no]) - -AC_MSG_RESULT(${enable_ncp}) -AM_CONDITIONAL([OPENTHREAD_ENABLE_NCP], [test "${enable_ncp}" = "yes"]) - -# -# Readline - readline library to use for POSIX CLI -# - -AC_ARG_WITH( - [readline], - [AS_HELP_STRING([--with-readline],[Specify the readline library (no|readline|edit) @<:@default=no@:>@.])], - [], - [with_readline=no]) - -case "${with_readline}" in -"no") - ;; -"readline") - # Prefer GNU readline installed by Homebrew. - if test "${OPENTHREAD_TARGET}" = darwin && brew --prefix readline > /dev/null; then - LDFLAGS="-L$(brew --prefix readline)/lib ${LDFLAGS}" - CPPFLAGS="-I$(brew --prefix readline)/include ${CPPFLAGS}" - PKG_CONFIG_PATH="$(brew --prefix)/lib/pkgconfig:$PKG_CONFIG_PATH" - fi - AC_CHECK_LIB([readline], [rl_callback_handler_install]) - ;; -"edit") - AC_CHECK_LIB([edit], [rl_callback_handler_install]) - ;; -*) - AC_MSG_ERROR([unexpected --with-readline=${with_readline}]) - ;; -esac - -# -# Vendor Extension - Specify a C++ source file which will be built as part of OpenThread core library. -# - -AC_ARG_WITH( - [vendor-extension], - [AS_HELP_STRING([--with-vendor-extension=],[Specify a C++ source file built as part of OpenThread core library. @<:@default=no@:>@.])], - [ - if test "${withval}" = "no" - then OPENTHREAD_ENABLE_VENDOR_EXTENSION=0 - elif test '!' -f "${withval}" - then AC_MSG_ERROR([Can't open ${withval} for --with-vendor-extension]) - else - OPENTHREAD_ENABLE_VENDOR_EXTENSION=1 - - # Get the absolute path. - OPENTHREAD_VENDOR_EXTENSION_SOURCE=$(cd `dirname ${withval}` && pwd)/$(basename ${withval}) - fi - ], - [ - OPENTHREAD_ENABLE_VENDOR_EXTENSION=0 - with_vendor_extension=no - ]) - -CPPFLAGS="${CPPFLAGS} -DOPENTHREAD_ENABLE_VENDOR_EXTENSION=${OPENTHREAD_ENABLE_VENDOR_EXTENSION}" -AC_MSG_CHECKING([for vendor extension]) -AC_MSG_RESULT(${OPENTHREAD_VENDOR_EXTENSION_SOURCE-no}) -AC_SUBST(OPENTHREAD_VENDOR_EXTENSION_SOURCE) -AM_CONDITIONAL([OPENTHREAD_ENABLE_VENDOR_EXTENSION], [test "${OPENTHREAD_ENABLE_VENDOR_EXTENSION}" = "1"]) - -# -# NCP Vendor Hook Source - Specify a C++ file that implements the NCP vendor hook. -# - -AC_ARG_WITH( - [ncp-vendor-hook-source], - [AS_HELP_STRING([--with-ncp-vendor-hook-source=],[Specify a C++ file that implements the NCP vendor hook. @<:@default=no@:>@.])], - [ - if test "${withval}" = "no" - then OPENTHREAD_ENABLE_NCP_VENDOR_HOOK=0 - elif test '!' -f "${withval}" - then AC_MSG_ERROR([Can't open ${withval} for --with-ncp-vendor-hook-source]) - else - OPENTHREAD_ENABLE_NCP_VENDOR_HOOK=1 - CPPFLAGS="${CPPFLAGS} -DOPENTHREAD_ENABLE_NCP_VENDOR_HOOK=1" - - # Get the absolute path. - OPENTHREAD_NCP_VENDOR_HOOK_SOURCE=$(cd `dirname ${withval}` && pwd)/$(basename ${withval}) - fi - ], - [ - OPENTHREAD_ENABLE_NCP_VENDOR_HOOK=0 - with_ncp_vendor_hook_source=no - ]) - -AC_MSG_CHECKING([for NCP vendor hook source]) -AC_MSG_RESULT(${OPENTHREAD_NCP_VENDOR_HOOK_SOURCE-no}) -AC_SUBST(OPENTHREAD_NCP_VENDOR_HOOK_SOURCE) -AM_CONDITIONAL([OPENTHREAD_ENABLE_NCP_VENDOR_HOOK], [test "${OPENTHREAD_ENABLE_NCP_VENDOR_HOOK}" = "1"]) - -# -# NCP Spinel Encrypter -# - -AC_ARG_WITH( - [ncp-spinel-encrypter-libs], - [AS_HELP_STRING([--with-ncp-spinel-encrypter-libs=],[Specify library files (absolute paths) implementing the NCP Spinel Encrypter. @<:@default=no@:>@.])], - [ - if test "${withval}" = "no" - then OPENTHREAD_ENABLE_NCP_SPINEL_ENCRYPTER=0 - else - OPENTHREAD_ENABLE_NCP_SPINEL_ENCRYPTER=1 - OPENTHREAD_NCP_SPINEL_ENCRYPTER_LIBS=${withval} - fi - ], - [ - OPENTHREAD_ENABLE_NCP_SPINEL_ENCRYPTER=0 - with_ncp_spinel_encrypter_libs=no - ]) - -CPPFLAGS="${CPPFLAGS} -DOPENTHREAD_ENABLE_NCP_SPINEL_ENCRYPTER=${OPENTHREAD_ENABLE_NCP_SPINEL_ENCRYPTER}" -AC_MSG_CHECKING([for NCP Spinel Encrypter]) -AC_MSG_RESULT(${OPENTHREAD_NCP_SPINEL_ENCRYPTER_LIBS-no}) -AC_SUBST(OPENTHREAD_NCP_SPINEL_ENCRYPTER_LIBS) -AM_CONDITIONAL([OPENTHREAD_ENABLE_NCP_SPINEL_ENCRYPTER], [test "${OPENTHREAD_ENABLE_NCP_SPINEL_ENCRYPTER}" = "1"]) - -# -# Linker Map Output -# - -AC_ARG_ENABLE(linker-map, - [AS_HELP_STRING([--enable-linker-map],[Enable linker map output @<:@default=no@:>@.])], - [ - case "${enableval}" in - - no|yes) - enable_linker_map=${enableval} - ;; - - *) - AC_MSG_ERROR([Invalid value ${enable_linker_map} for --enable-linker-map]) - ;; - esac - ], - [enable_linker_map=no]) - -AC_MSG_CHECKING([whether to enable linker map output]) -AC_MSG_RESULT(${enable_linker_map}) -AM_CONDITIONAL([OPENTHREAD_ENABLE_LINKER_MAP], [test "${enable_linker_map}" = "yes"]) - -# -# Custom linker file -# - -AC_ARG_WITH( - [custom-linker-file], - [AS_HELP_STRING([--with-custom-linker-file=],[Specify custom linker file (absolute path). @<:@default=no@:>@.])], - [ - with_custom_linker_file=yes - OPENTHREAD_CUSTOM_LINKER_FILE=${withval} - ], - [ - with_custom_linker_file=no - ]) - -AC_SUBST(OPENTHREAD_CUSTOM_LINKER_FILE) -AM_CONDITIONAL([OPENTHREAD_ENABLE_CUSTOM_LINKER_FILE], [test "${with_custom_linker_file}" = "yes"]) - -# -# Examples -# - -AC_MSG_CHECKING([whether to build examples]) - -AC_ARG_WITH(examples, - [AS_HELP_STRING([--with-examples=TARGET], - [Build example applications for one of: simulation @<:@default=no@:>@. - Note that building example applications also builds the associated OpenThread platform libraries - and any third_party libraries needed to support the examples.])], - [ - case "${with_examples}" in - no) - ;; - simulation) - ;; - *) - AC_MSG_RESULT(ERROR) - AC_MSG_ERROR([Invalid value given for --with-examples: ${with_examples}]) - ;; - esac - ], - [with_examples=no]) - -AM_CONDITIONAL([OPENTHREAD_ENABLE_EXAMPLES], [test ${with_examples} != "no"]) - -AM_CONDITIONAL([OPENTHREAD_EXAMPLES_SIMULATION],[test "${with_examples}" = "simulation"]) - -AM_COND_IF([OPENTHREAD_EXAMPLES_SIMULATION], CPPFLAGS="${CPPFLAGS} -DOPENTHREAD_EXAMPLES_SIMULATION=1", CPPFLAGS="${CPPFLAGS} -DOPENTHREAD_EXAMPLES_SIMULATION=0") - -case ${with_examples} in - no) - AC_MSG_RESULT([no]) - ;; - *) - AC_MSG_RESULT([yes (${with_examples})]) - ;; -esac - -# -# Platform -# - -AC_MSG_CHECKING([whether to build platform libraries]) - -AC_ARG_WITH(platform, - [AS_HELP_STRING([--with-platform=TARGET], - [Build OpenThread platform libraries for one of: posix, simulation @<:@default=simulation@:>@.])], - [ - # Make sure the given target is valid. - case "${with_platform}" in - no|posix|simulation) - ;; - *) - AC_MSG_RESULT(ERROR) - AC_MSG_ERROR([Invalid value given for --with-platform: ${with_platform}]) - ;; - esac - - # If both --with-platform and --with-examples are specified, make sure the targets match. - case "${with_examples}" in - no) - ;; - ${with_platform}) - ;; - *) - AC_MSG_RESULT(ERROR) - AC_MSG_ERROR([Invalid value given for --with-platform: The targets for --with-examples and --with-platform must match.]) - ;; - esac - - ], - [ - # If --with-platform is NOT specified, but --with-examples is, automatically build the - # corresponding platform libraries. (Essentially, --with-examples implies --with-platform). - with_platform=${with_examples} - ]) - -AM_CONDITIONAL([OPENTHREAD_ENABLE_PLATFORM], [test ${with_platform} != "no"]) - -OPENTHREAD_ENABLE_PLATFORM=${with_platform} - -AM_CONDITIONAL([OPENTHREAD_PLATFORM_POSIX], [test "${with_platform}" = "posix"]) -AM_CONDITIONAL([OPENTHREAD_PLATFORM_SIMULATION],[test "${with_platform}" = "simulation"]) - -AM_COND_IF([OPENTHREAD_PLATFORM_POSIX], CPPFLAGS="${CPPFLAGS} -DOPENTHREAD_PLATFORM_POSIX=1", CPPFLAGS="${CPPFLAGS} -DOPENTHREAD_PLATFORM_POSIX=0") - -case ${with_platform} in - no) - AC_MSG_RESULT([no]) - ;; - *) - AC_MSG_RESULT([yes (${with_platform})]) - ;; -esac - -# -# Tools -# - -AC_MSG_CHECKING([whether to build tools]) -AC_ARG_ENABLE(tools, - [AS_HELP_STRING([--disable-tools],[Disable building of tools @<:@default=no@:>@.])], - [ - case "${enableval}" in - - no|yes) - build_tools=${enableval} - ;; - - *) - AC_MSG_ERROR([Invalid value ${enableval} for --enable-tools]) - ;; - - esac - ], - [build_tools=yes]) -AC_MSG_RESULT(${build_tools}) -AM_CONDITIONAL([OPENTHREAD_BUILD_TOOLS], [test "${build_tools}" = "yes"]) - -# -# Documentation -# - -# Determine whether or not documentation (via Doxygen) should be built -# or not, with 'auto' as the default and establish a default support -# value for GraphViz 'dot' support. - -NL_ENABLE_DOCS([auto],[NO]) - -AM_CONDITIONAL(OPENTHREAD_BUILD_DOCS, [test "${nl_cv_build_docs}" = "yes"]) - -AM_CONDITIONAL(OPENTHREAD_POSIX, [test "${with_platform}" = "posix" -o "${with_examples}" = "simulation"]) - -AM_CONDITIONAL([OPENTHREAD_ENABLE_SPINEL_RCP], [test OPENTHREAD_PLATFORM_POSIX || test OPENTHREAD_ENABLE_RADIO_ONLY]) - -# -# Checks for libraries and packages. -# -# At minimum, the following packages are optional, depending on -# configuration: -# -# * TBD -# -AC_MSG_NOTICE([checking required package dependencies]) - -# NL_WITH_PACKAGE(...) - -# -# Check for headers -# - -OLD_CFLAGS="${CFLAGS}" -CFLAGS="${CFLAGS} -Wno-error=address" -AC_HEADER_STDBOOL -CFLAGS="${OLD_CFLAGS}" -AC_HEADER_STDC - -AC_CHECK_HEADERS([stdint.h]) -AC_CHECK_HEADERS([string.h]) - -# -# Check for types and structures -# -AC_TYPE_INT8_T -AC_TYPE_INT16_T -AC_TYPE_INT32_T -AC_TYPE_INT64_T -AC_TYPE_UINT8_T -AC_TYPE_UINT16_T -AC_TYPE_UINT32_T -AC_TYPE_UINT64_T - -# -# Checks for library functions -# - -if test "${ac_no_link}" != "yes"; then - AC_CHECK_FUNCS([memcpy]) -fi - -# Add any mbedtls CPPFLAGS - -CPPFLAGS="${CPPFLAGS} ${MBEDTLS_CPPFLAGS}" - -# Add any code coverage CPPFLAGS and LDFLAGS - -CPPFLAGS="${CPPFLAGS} ${NL_COVERAGE_CPPFLAGS}" -LIBS="${LIBS} ${NL_COVERAGE_LIBS}" -LDFLAGS="${LDFLAGS} ${NL_COVERAGE_LDFLAGS}" - -CPPFLAGS="${CPPFLAGS} -DOPENTHREAD_CONFIG_FILE='\"openthread-config-generic.h\"'" -# At this point, we can restore the compiler flags to whatever the -# user passed in, now that we're clear of an -Werror issues by -# transforming -Wno-error back to -Werror. - -NL_RESTORE_WERROR - -# -# Identify the various makefiles and auto-generated files for the package -# -AC_CONFIG_FILES([ -Makefile -include/Makefile -src/Makefile -src/cli/Makefile -src/ncp/Makefile -src/core/Makefile -src/posix/Makefile -src/posix/platform/Makefile -src/lib/Makefile -src/lib/hdlc/Makefile -src/lib/platform/Makefile -src/lib/spinel/Makefile -src/lib/url/Makefile -third_party/Makefile -third_party/jlink/Makefile -third_party/mbedtls/Makefile -third_party/tcplp/Makefile -examples/Makefile -examples/apps/Makefile -examples/apps/cli/Makefile -examples/apps/ncp/Makefile -examples/platforms/Makefile -examples/platforms/simulation/Makefile -examples/platforms/utils/Makefile -tools/Makefile -tools/harness-automation/Makefile -tools/harness-thci/Makefile -tools/spi-hdlc-adapter/Makefile -tests/Makefile -tests/fuzz/Makefile -doc/Makefile -]) - -# -# Generate the auto-generated files for the package -# -AC_OUTPUT - -# -# Summarize the package configuration -# - -AC_MSG_NOTICE([ - - Configuration Summary - --------------------- - Package : ${PACKAGE_NAME} - Version : ${PACKAGE_VERSION} - Interface : $(echo $LIBOPENTHREAD_VERSION_INFO | $SED 's/:/./g') - Build system : ${build} - Host system : ${host} - Host architecture : ${host_cpu} - Host OS : ${host_os} - Cross compiling : ${cross_compiling} - Build shared libraries : ${enable_shared} - Build static libraries : ${enable_static} - Build debug libraries : ${nl_cv_build_debug} - Build optimized libraries : ${nl_cv_build_optimized} - Build coverage libraries : ${nl_cv_build_coverage} - Build coverage reports : ${nl_cv_build_coverage_reports} - Address sanitizer support : ${enable_address_sanitizer} - Lcov : ${LCOV:--} - Genhtml : ${GENHTML:--} - Build tests : ${nl_cv_build_tests} - Build fuzz targets : ${enable_fuzz_targets} - Build tools : ${build_tools} - OpenThread tests : ${with_tests} - Prefix : ${prefix} - Documentation support : ${nl_cv_build_docs} - Doxygen : ${DOXYGEN:--} - GraphViz dot : ${DOT:--} - C Preprocessor : ${CPP} - C Compiler : ${CC} - C++ Preprocessor : ${CXXCPP} - C++ Compiler : ${CXX} - Assembler Compiler : ${CCAS} - Archiver : ${AR} - Archive Indexer : ${RANLIB} - Symbol Stripper : ${STRIP} - Object Copier : ${OBJCOPY} - C Preprocessor flags : ${CPPFLAGS:--} - C Compile flags : ${CFLAGS:--} - C++ Compile flags : ${CXXFLAGS:--} - Assembler flags : ${CCASFLAGS:--} - Link flags : ${LDFLAGS:--} - Link libraries : ${LIBS} - Link maps : ${enable_linker_map} - OpenThread FTD support : ${enable_ftd} - OpenThread MTD support : ${enable_mtd} - OpenThread Radio Only support : ${enable_radio_only} - OpenThread CLI support : ${enable_cli} - OpenThread NCP support : ${enable_ncp} - OpenThread NCP Vendor Hook Source : ${with_ncp_vendor_hook_source} - OpenThread NCP Spinel Encrypter : ${with_ncp_spinel_encrypter_libs} - OpenThread Vendor Extension Source : ${with_vendor_extension} - OpenThread builtin mbedtls support : ${enable_builtin_mbedtls} - OpenThread Examples : ${with_examples} - OpenThread Platform Libraries : ${with_platform} - -]) diff --git a/doc/Makefile.am b/doc/Makefile.am deleted file mode 100644 index b08da75f8..000000000 --- a/doc/Makefile.am +++ /dev/null @@ -1,128 +0,0 @@ -# -# Copyright (c) 2016, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am - -EXTRA_DIST = \ - $(srcdir)/Doxyfile.in \ - $(srcdir)/header.html \ - $(srcdir)/images/Open-Thread-Logo-200x42.png \ - $(srcdir)/images/openthread_logo.png \ - $(srcdir)/images/ot-contrib-arm.png \ - $(srcdir)/images/ot-contrib-cascoda.png \ - $(srcdir)/images/ot-contrib-google.png \ - $(srcdir)/images/ot-contrib-nordic.png \ - $(srcdir)/images/ot-contrib-nxp.png \ - $(srcdir)/images/ot-contrib-qc.png \ - $(srcdir)/images/ot-contrib-qorvo.png \ - $(srcdir)/images/ot-contrib-samsung.png \ - $(srcdir)/images/ot-contrib-silabs.png \ - $(srcdir)/images/ot-contrib-stm.png \ - $(srcdir)/images/ot-contrib-synopsys.png \ - $(srcdir)/images/ot-contrib-ti.png \ - $(srcdir)/images/ot-contrib-zephyr.png \ - $(srcdir)/ot_api_doc.h \ - $(NULL) - -# -# Override autotool's default notion of the package version variables. -# This ensures that when we create a doc distribution that the -# version is always the current version, not the version when the -# package was bootstrapped. -# -PACKAGE_VERSION = $(shell cat $(top_builddir)/.local-version) -VERSION = $(PACKAGE_VERSION) - - -docdistdir ?= . - -openthread_docdist_alias = \ - $(PACKAGE_TARNAME)-docs - -openthread_docdist_name = \ - $(openthread_docdist_alias)-$(VERSION) - -openthread_docdist_archive = \ - $(docdistdir)/$(openthread_docdist_name).tar.gz - -CLEANFILES = \ - Doxyfile \ - $(openthread_docdist_archive) \ - $(NULL) - -if OPENTHREAD_BUILD_DOCS - -openthreaddir = $(includedir)/openthread -dist_openthread_HEADERS = ot_api_doc.h - -all-local: html/index.html - -# -# We choose to manually transform Doxyfile.in into Doxyfile here in -# the makefile rather than in the configure script so that we can take -# advantage of live, at build time (rather than at configure time), -# updating of the package version number. -# - -Doxyfile: $(srcdir)/Doxyfile.in Makefile - $(AM_V_GEN)$(SED) \ - -e "s,\@DOXYGEN_USE_DOT\@,$(DOXYGEN_USE_DOT),g" \ - -e "s,\@PACKAGE_NAME\@,$(PACKAGE_NAME),g" \ - -e "s,\@PACKAGE_VERSION\@,$(PACKAGE_VERSION),g" \ - -e "s,\@PERL\@,$(PERL),g" \ - -e "s,\@abs_builddir\@,$(abs_builddir),g" \ - -e "s,\@abs_srcdir\@,$(abs_srcdir),g" \ - -e "s,\@abs_top_builddir\@,$(abs_top_builddir),g" \ - -e "s,\@abs_top_srcdir\@,$(abs_top_srcdir),g" \ - < "$(srcdir)/Doxyfile.in" > "$(@)" - -html/index.html: Doxyfile - $(AM_V_GEN)$(DOXYGEN) $(<) - -# -# Addition rules and commands to create a documentation-only -# distribution of openthread -# - -$(openthread_docdist_name): html/index.html - $(AM_V_at)rm -f -r $(@) - $(call create-directory) - $(AM_V_at)cp -R html $(@) - -$(openthread_docdist_archive): $(openthread_docdist_name) - $(AM_V_at)echo " TAR $(@)" - $(AM_V_at)tardir="$(<)" && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c > "$(@)" && rm -rf $(<) - -docdist $(openthread_docdist_alias): $(openthread_docdist_archive) - -clean-local: - $(AM_V_at)rm -f -r html - -endif # OPENTHREAD_BUILD_DOCS - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/examples/Makefile-simulation b/examples/Makefile-simulation deleted file mode 100644 index 72894fb47..000000000 --- a/examples/Makefile-simulation +++ /dev/null @@ -1,350 +0,0 @@ -# -# Copyright (c) 2016, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -# Don't allow this top-level makefile's targets to be built in parallel. - -.NOTPARALLEL: - -COVERAGE ?= 0 -DEBUG ?= 0 - -# Enable most features by default to cover most code - -ANYCAST_LOCATOR ?= 1 -BORDER_AGENT ?= 1 -BORDER_ROUTER ?= 1 -COAP ?= 1 -COAP_BLOCK ?= 1 -COAP_OBSERVE ?= 1 -COAPS ?= 1 -COMMISSIONER ?= 1 -CHANNEL_MANAGER ?= 1 -CHANNEL_MONITOR ?= 1 -DATASET_UPDATER ?= 1 -DHCP6_CLIENT ?= 1 -DHCP6_SERVER ?= 1 -DIAGNOSTIC ?= 1 -DNS_CLIENT ?= 1 -DNS_DSO ?= 1 -DNSSD_SERVER ?= 1 -ECDSA ?= 1 -HISTORY_TRACKER ?= 1 -IP6_FRAGM ?= 1 -JAM_DETECTION ?= 1 -JOINER ?= 1 -LINK_RAW ?= 1 -MAC_FILTER ?= 1 -NEIGHBOR_DISCOVERY_AGENT ?= 1 -NETDATA_PUBLISHER ?= 1 -NETDIAG_CLIENT ?= 1 -PING_SENDER ?= 1 -REFERENCE_DEVICE ?= 1 -SERVICE ?= 1 -SNTP_CLIENT ?= 1 -SRP_CLIENT ?= 1 -SRP_SERVER ?= 1 -UDP_FORWARD ?= 1 - -COMMONCFLAGS := \ - -g \ - $(NULL) - -# If the user has asserted COVERAGE, alter the configuration options -# accordingly. - -configure_OPTIONS = \ - --enable-cli \ - --enable-ftd \ - --enable-mtd \ - --enable-ncp \ - --enable-radio-only \ - --with-examples=simulation \ - $(NULL) - -# Platform specific switches - -ifneq ($(DEBUG),1) -COMMONCFLAGS += \ - -O2 \ - $(NULL) -endif - -ifeq ($(NCP_SPI),1) -COMMONCFLAGS += -DOPENTHREAD_CONFIG_NCP_SPI_ENABLE=1 -else -COMMONCFLAGS += -DOPENTHREAD_CONFIG_NCP_HDLC_ENABLE=1 -endif # NCP_SPI == 1 - -ifeq ($(OTNS),1) -VIRTUAL_TIME ?= 1 -endif - -ifeq ($(VIRTUAL_TIME),1) -COMMONCFLAGS += -DOPENTHREAD_SIMULATION_VIRTUAL_TIME=1 -endif - -ifeq ($(VIRTUAL_TIME_UART),1) -COMMONCFLAGS += -DOPENTHREAD_SIMULATION_VIRTUAL_TIME_UART=1 -endif - -ifneq ($(MAX_NETWORK_SIZE),) -COMMONCFLAGS += -DOPENTHREAD_SIMULATION_MAX_NETWORK_SIZE=$(MAX_NETWORK_SIZE) -endif - -include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/common-switches.mk - -TopSourceDir := $(dir $(shell readlink $(firstword $(MAKEFILE_LIST)))).. -AbsTopSourceDir := $(dir $(realpath $(firstword $(MAKEFILE_LIST)))).. - -CONFIG_FILE = OPENTHREAD_PROJECT_CORE_CONFIG_FILE='\"openthread-core-simulation-config.h\"' -CONFIG_FILE_PATH = $(AbsTopSourceDir)/examples/platforms/simulation/ -COMMONCFLAGS += \ - -D$(CONFIG_FILE) \ - -I$(CONFIG_FILE_PATH) \ - -CPPFLAGS += \ - $(COMMONCFLAGS) \ - $(NULL) - -CFLAGS += \ - $(COMMONCFLAGS) \ - $(NULL) - -CXXFLAGS += \ - $(COMMONCFLAGS) \ - $(NULL) - -LDFLAGS += \ - $(COMMONCFLAGS) \ - $(NULL) - -ECHO := @echo -INSTALL := /usr/bin/install -INSTALLFLAGS := -p -LN_S := ln -s -MAKE := make -MKDIR_P := mkdir -p -RM_F := rm -f - -BuildJobs ?= 10 -BuildPath = build -TopBuildDir = $(BuildPath) -AbsTopBuildDir = $(PWD)/$(TopBuildDir) - -ResultPath = output -TopResultDir = $(ResultPath) -AbsTopResultDir = $(PWD)/$(TopResultDir) - -TargetTuple = simulation - -ifndef BuildJobs -BuildJobs := $(shell getconf _NPROCESSORS_ONLN) -endif -JOBSFLAG := -j$(BuildJobs) - -# -# configure-arch -# -# Configure OpenThread for the specified target. -# -# target - The target to configure. -# -define configure-target -$(ECHO) " CONFIG $(1)..." -(cd $(BuildPath)/$(1) && $(AbsTopSourceDir)/configure \ -INSTALL="$(INSTALL) $(INSTALLFLAGS)" \ -CPPFLAGS="$(CPPFLAGS)" CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" LDFLAGS="$(LDFLAGS)" \ ---prefix=/ \ ---exec-prefix=/$(1) \ -$(configure_OPTIONS)) -endef # configure-target - -# -# build-target -# -# Build the OpenThread intermediate build products for the specified -# target. -# -# target - The target to build. -# -define build-target -$(ECHO) " BUILD $(1)" -$(MAKE) $(JOBSFLAG) -C $(BuildPath)/$(1) --no-print-directory \ -all -endef # build-target - -# -# check-target -# -# Check (run unit tests) OpenThread for the specified target. -# -# target - The target to check. -# -define check-target -$(ECHO) " CHECK $(1)" -$(MAKE) $(JOBSFLAG) -C $(BuildPath)/$(1) --no-print-directory \ -check -endef # check-target - -# -# distcheck-target -# -# Check (run unit tests) OpenThread for the specified target. -# -# target - The target to distcheck. -# -define distcheck-target -$(ECHO) " DISTCHECK $(1)" -$(MAKE) $(JOBSFLAG) -C $(BuildPath)/$(1) --no-print-directory \ -distcheck -endef # distcheck-target - -# -# coverage-target -# -# Generate code coverage from unit tests for OpenThread for the -# specified target. -# -# target - The target to generate code coverage for. -# -define coverage-target -$(ECHO) " COVERAGE $(1)" -$(MAKE) $(JOBSFLAG) -C $(BuildPath)/$(1) --no-print-directory \ -coverage -endef # coverage-target - -# -# stage-target -# -# Stage (install) the OpenThread final build products for the specified -# target. -# -# target - The target to stage. -# -define stage-target -$(ECHO) " STAGE $(1)" -$(MAKE) $(JOBSFLAG) -C $(BuildPath)/$(1) --no-print-directory \ -DESTDIR=$(AbsTopResultDir) \ -install -endef # stage-target - -# -# TARGET_template -# -# Define macros, targets and rules to configure, build, and stage -# OpenThread for a single target. -# -# target - The target to instantiate the template for. -# -define TARGET_template -CONFIGURE_TARGETS += configure-$(1) -BUILD_TARGETS += do-build-$(1) -CHECK_TARGETS += check-$(1) -DISTCHECK_TARGETS += distcheck-$(1) -COVERAGE_TARGETS += coverage-$(1) -STAGE_TARGETS += stage-$(1) -BUILD_DIRS += $(BuildPath)/$(1) -DIRECTORIES += $(BuildPath)/$(1) - -configure-$(1): $(BuildPath)/$(1)/config.status - -$(BuildPath)/$(1)/config.status: | $(BuildPath)/$(1) - $$(call configure-target,$(1)) - -do-build-$(1): configure-$(1) - -do-build-$(1): - +$$(call build-target,$(1)) - -check-$(1): do-build-$(1) - -check-$(1): - +$$(call check-target,$(1)) - -distcheck-$(1): do-build-$(1) - -distcheck-$(1): - +$$(call distcheck-target,$(1)) - -coverage-$(1): do-build-$(1) - -coverage-$(1): - +$$(call coverage-target,$(1)) - -stage-$(1): do-build-$(1) - -stage-$(1): | $(TopResultDir) - $$(call stage-target,$(1)) - -$(1): stage-$(1) -endef # TARGET_template - -.DEFAULT_GOAL := all - -all: stage - -# Instantiate an target-specific build template for the target. - -$(eval $(call TARGET_template,$(TargetTuple))) - -# -# Common / Finalization -# - -configure: $(CONFIGURE_TARGETS) - -build: $(BUILD_TARGETS) - -check: $(CHECK_TARGETS) - -distcheck: $(DISTCHECK_TARGETS) - -coverage: $(COVERAGE_TARGETS) - -stage: $(STAGE_TARGETS) - -DIRECTORIES = $(TopResultDir) $(TopResultDir)/$(TargetTuple)/lib $(BUILD_DIRS) - -CLEAN_DIRS = $(TopResultDir) $(BUILD_DIRS) - -all: stage - -$(DIRECTORIES): - $(ECHO) " MKDIR $@" - @$(MKDIR_P) "$@" - -clean: - $(ECHO) " CLEAN" - @$(RM_F) -r $(CLEAN_DIRS) - -help: - $(ECHO) "Simply type 'make -f $(firstword $(MAKEFILE_LIST))' to build OpenThread for the following " - $(ECHO) "target:" - $(ECHO) "" - $(ECHO) " $(TargetTuple)" - $(ECHO) "" diff --git a/examples/Makefile.am b/examples/Makefile.am deleted file mode 100644 index 8d15e20c1..000000000 --- a/examples/Makefile.am +++ /dev/null @@ -1,50 +0,0 @@ -# -# Copyright (c) 2016, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am - -# Always package (e.g. for 'make dist') these subdirectories. - -DIST_SUBDIRS = \ - platforms \ - apps \ - $(NULL) - -# Always build (e.g. for 'make all') these subdirectories. - -SUBDIRS = \ - platforms \ - $(NULL) - -if OPENTHREAD_ENABLE_EXAMPLES -SUBDIRS += \ - apps \ - $(NULL) -endif - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/examples/apps/Makefile.am b/examples/apps/Makefile.am deleted file mode 100644 index 004a98f5f..000000000 --- a/examples/apps/Makefile.am +++ /dev/null @@ -1,57 +0,0 @@ -# -# Copyright (c) 2016, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am - -# Always package (e.g. for 'make dist') these subdirectories. - -DIST_SUBDIRS = \ - cli \ - ncp \ - $(NULL) - -# Always build (e.g. for 'make all') these subdirectories. - -SUBDIRS = \ - $(NULL) - -if OPENTHREAD_ENABLE_EXECUTABLE -if OPENTHREAD_ENABLE_CLI -SUBDIRS += cli -endif - -if OPENTHREAD_ENABLE_NCP -SUBDIRS += ncp -else -if OPENTHREAD_ENABLE_RADIO_ONLY -SUBDIRS += ncp -endif -endif -endif - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/examples/apps/cli/Makefile.am b/examples/apps/cli/Makefile.am deleted file mode 100644 index 426afdb29..000000000 --- a/examples/apps/cli/Makefile.am +++ /dev/null @@ -1,167 +0,0 @@ -# -# Copyright (c) 2016, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am -include $(top_srcdir)/examples/platforms/Makefile.platform.am - -bin_PROGRAMS = \ - $(NULL) - -CPPFLAGS_COMMON += \ - -I$(top_srcdir)/include \ - -I$(top_srcdir)/src \ - -I$(top_srcdir)/src/core \ - -I$(top_srcdir)/examples/platforms \ - $(NULL) - -LDADD_COMMON += \ - $(top_builddir)/third_party/tcplp/libtcplp.a \ - $(NULL) - -LDFLAGS_COMMON += \ - $(NULL) - -LIBTOOLFLAGS_COMMON += \ - $(NULL) - -SOURCES_COMMON += \ - cli_uart.cpp \ - main.c \ - $(NULL) - -if OPENTHREAD_ENABLE_BUILTIN_MBEDTLS -LDADD_COMMON += \ - $(top_builddir)/third_party/mbedtls/libmbedcrypto.a \ - $(NULL) -endif # OPENTHREAD_ENABLE_BUILTIN_MBEDTLS - -if OPENTHREAD_ENABLE_FTD -bin_PROGRAMS += \ - ot-cli-ftd \ - $(NULL) -endif - -ot_cli_ftd_CPPFLAGS = \ - $(CPPFLAGS_COMMON) \ - $(NULL) - -ot_cli_ftd_LDADD = \ - $(top_builddir)/src/cli/libopenthread-cli-ftd.a \ - $(top_builddir)/src/core/libopenthread-ftd.a \ - $(LDADD_COMMON) \ - $(top_builddir)/src/core/libopenthread-ftd.a \ - $(LDADD_COMMON) \ - $(NULL) - -ot_cli_ftd_LDFLAGS = \ - $(LDFLAGS_COMMON) \ - $(NULL) - -ot_cli_ftd_LIBTOOLFLAGS = \ - $(LIBTOOLFLAGS_COMMON) \ - $(NULL) - -ot_cli_ftd_SOURCES = \ - $(SOURCES_COMMON) \ - $(NULL) - -if OPENTHREAD_ENABLE_MTD -bin_PROGRAMS += \ - ot-cli-mtd \ - $(NULL) -endif - -ot_cli_mtd_CPPFLAGS = \ - $(CPPFLAGS_COMMON) \ - $(NULL) - -ot_cli_mtd_LDADD = \ - $(top_builddir)/src/cli/libopenthread-cli-mtd.a \ - $(top_builddir)/src/core/libopenthread-mtd.a \ - $(LDADD_COMMON) \ - $(top_builddir)/src/core/libopenthread-mtd.a \ - $(LDADD_COMMON) \ - $(NULL) - -ot_cli_mtd_LDFLAGS = \ - $(LDFLAGS_COMMON) \ - $(NULL) - -ot_cli_mtd_LIBTOOLFLAGS = \ - $(LIBTOOLFLAGS_COMMON) \ - $(NULL) - -ot_cli_mtd_SOURCES = \ - $(SOURCES_COMMON) \ - $(NULL) - -if OPENTHREAD_ENABLE_RADIO_CLI -bin_PROGRAMS += \ - ot-cli-radio \ - $(NULL) -endif - -ot_cli_radio_CPPFLAGS = \ - $(CPPFLAGS_COMMON) \ - $(NULL) - -ot_cli_radio_LDADD = \ - $(top_builddir)/src/cli/libopenthread-cli-radio.a \ - $(top_builddir)/src/core/libopenthread-radio-cli.a \ - $(LDADD_COMMON) \ - $(top_builddir)/src/core/libopenthread-radio-cli.a \ - $(LDADD_COMMON) \ - $(NULL) - -ot_cli_radio_LDFLAGS = \ - $(LDFLAGS_COMMON) \ - $(NULL) - -ot_cli_radio_LIBTOOLFLAGS = \ - $(LIBTOOLFLAGS_COMMON) \ - $(NULL) - -ot_cli_radio_SOURCES = \ - $(SOURCES_COMMON) \ - $(NULL) - -if OPENTHREAD_ENABLE_LINKER_MAP -ot_cli_ftd_LDFLAGS += -Wl,-Map=ot-cli-ftd.map -ot_cli_mtd_LDFLAGS += -Wl,-Map=ot-cli-mtd.map -ot_cli_radio_LDFLAGS += -Wl,-Map=ot-cli-radio.map -endif - -if OPENTHREAD_BUILD_COVERAGE -CPPFLAGS_COMMON += \ - -DOPENTHREAD_ENABLE_COVERAGE \ - $(NULL) - -CLEANFILES = $(wildcard *.gcda *.gcno) -endif # OPENTHREAD_BUILD_COVERAGE - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/examples/apps/cli/README.md b/examples/apps/cli/README.md index 42b096d8c..687672260 100644 --- a/examples/apps/cli/README.md +++ b/examples/apps/cli/README.md @@ -6,8 +6,7 @@ This example application exposes OpenThread configuration and management APIs vi ```bash $ cd -$ ./bootstrap -$ make -f examples/Makefile-simulation +$ ./script/cmake-build simulation ``` ## 2. Start node 1 @@ -15,7 +14,7 @@ $ make -f examples/Makefile-simulation Spawn the process: ```bash -$ cd /output//bin +$ cd /build/simulation/examples/apps/cli $ ./ot-cli-ftd 1 ``` @@ -78,7 +77,7 @@ Done Spawn the process: ```bash -$ cd /output//bin +$ cd /build/simulation/examples/apps/cli $ ./ot-cli-ftd 2 ``` diff --git a/examples/apps/ncp/Makefile.am b/examples/apps/ncp/Makefile.am deleted file mode 100644 index 3763eefe2..000000000 --- a/examples/apps/ncp/Makefile.am +++ /dev/null @@ -1,200 +0,0 @@ -# -# Copyright (c) 2016, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am -include $(top_srcdir)/examples/platforms/Makefile.platform.am - -bin_PROGRAMS = \ - $(NULL) - -CPPFLAGS_COMMON += \ - -I$(top_srcdir)/include \ - -I$(top_srcdir)/src \ - -I$(top_srcdir)/src/core \ - -I$(top_srcdir)/examples/platforms \ - $(NULL) - -LDADD_COMMON += \ - $(top_builddir)/third_party/tcplp/libtcplp.a \ - $(NULL) - -LDFLAGS_COMMON += \ - $(NULL) - -LIBTOOLFLAGS_COMMON += \ - $(NULL) - -SOURCES_COMMON += \ - main.c \ - ncp.c \ - $(NULL) - -LDADD_MBEDTLS = \ - $(NULL) - -LDADD_MBEDTLS_RADIO = \ - $(NULL) - -LDADD_DIAG = \ - $(NULL) - -if OPENTHREAD_ENABLE_BUILTIN_MBEDTLS -LDADD_MBEDTLS += \ - $(top_builddir)/third_party/mbedtls/libmbedcrypto.a \ - $(NULL) - -LDADD_MBEDTLS_RADIO += \ - $(top_builddir)/third_party/mbedtls/libmbedcrypto-radio.a \ - $(NULL) -endif # OPENTHREAD_ENABLE_BUILTIN_MBEDTLS - -if OPENTHREAD_ENABLE_NCP_SPINEL_ENCRYPTER -LDADD_COMMON += \ - $(OPENTHREAD_NCP_SPINEL_ENCRYPTER_LIBS) \ - $(NULL) -endif # OPENTHREAD_ENABLE_NCP_SPINEL_ENCRYPTER - -if OPENTHREAD_ENABLE_NCP -if OPENTHREAD_ENABLE_FTD -bin_PROGRAMS += \ - ot-ncp-ftd \ - $(NULL) -endif -endif - -ot_ncp_ftd_CPPFLAGS = \ - $(CPPFLAGS_COMMON) \ - $(NULL) - -ot_ncp_ftd_LDADD = \ - $(top_builddir)/src/ncp/libopenthread-ncp-ftd.a \ - $(top_builddir)/src/core/libopenthread-ftd.a \ - $(LDADD_COMMON) \ - $(LDADD_MBEDTLS) \ - $(LDADD_DIAG) \ - $(top_builddir)/src/core/libopenthread-ftd.a \ - $(LDADD_COMMON) \ - $(LDADD_MBEDTLS) \ - $(LDADD_DIAG) \ - $(NULL) - -ot_ncp_ftd_LDFLAGS = \ - $(LDFLAGS_COMMON) \ - $(NULL) - -ot_ncp_ftd_LIBTOOLFLAGS = \ - $(LIBTOOLFLAGS_COMMON) \ - $(NULL) - -ot_ncp_ftd_SOURCES = \ - $(SOURCES_COMMON) \ - $(NULL) - -if OPENTHREAD_ENABLE_NCP -if OPENTHREAD_ENABLE_MTD -bin_PROGRAMS += \ - ot-ncp-mtd \ - $(NULL) -endif -endif - -ot_ncp_mtd_CPPFLAGS = \ - $(CPPFLAGS_COMMON) \ - $(NULL) - -ot_ncp_mtd_LDADD = \ - $(top_builddir)/src/ncp/libopenthread-ncp-mtd.a \ - $(top_builddir)/src/core/libopenthread-mtd.a \ - $(LDADD_COMMON) \ - $(LDADD_MBEDTLS) \ - $(LDADD_DIAG) \ - $(top_builddir)/src/core/libopenthread-mtd.a \ - $(LDADD_COMMON) \ - $(LDADD_MBEDTLS) \ - $(LDADD_DIAG) \ - $(NULL) - -ot_ncp_mtd_LDFLAGS = \ - $(LDFLAGS_COMMON) \ - $(NULL) - -ot_ncp_mtd_LIBTOOLFLAGS = \ - $(LIBTOOLFLAGS_COMMON) \ - $(NULL) - -ot_ncp_mtd_SOURCES = \ - $(SOURCES_COMMON) \ - $(NULL) - -if OPENTHREAD_ENABLE_RADIO_ONLY -bin_PROGRAMS += \ - ot-rcp \ - $(NULL) -endif - -ot_rcp_CPPFLAGS = \ - $(CPPFLAGS_COMMON) \ - $(NULL) - -ot_rcp_LDADD = \ - $(top_builddir)/src/ncp/libopenthread-rcp.a \ - $(top_builddir)/src/core/libopenthread-radio.a \ - $(LDADD_COMMON) \ - $(LDADD_MBEDTLS_RADIO) \ - $(top_builddir)/src/core/libopenthread-radio.a \ - $(LDADD_COMMON) \ - $(LDADD_MBEDTLS_RADIO) \ - $(NULL) - -ot_rcp_LDFLAGS = \ - $(LDFLAGS_COMMON) \ - $(NULL) - -ot_rcp_LIBTOOLFLAGS = \ - $(LIBTOOLFLAGS_COMMON) \ - $(NULL) - -ot_rcp_SOURCES = \ - $(SOURCES_COMMON) \ - $(NULL) - -if OPENTHREAD_ENABLE_LINKER_MAP -ot_ncp_ftd_LDFLAGS += -Wl,-Map=ot-ncp-ftd.map -ot_ncp_mtd_LDFLAGS += -Wl,-Map=ot-ncp-mtd.map -ot_rcp_LDFLAGS += -Wl,-Map=ot-rcp.map -endif - -if OPENTHREAD_BUILD_COVERAGE -CPPFLAGS_COMMON += \ - -DOPENTHREAD_ENABLE_COVERAGE \ - $(NULL) - -CLEANFILES = $(wildcard *.gcda *.gcno) -endif # OPENTHREAD_BUILD_COVERAGE - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/examples/platforms/Makefile.am b/examples/platforms/Makefile.am deleted file mode 100644 index 7f86919d8..000000000 --- a/examples/platforms/Makefile.am +++ /dev/null @@ -1,67 +0,0 @@ -# -# Copyright (c) 2017, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am - -EXTRA_DIST = \ - cc1352 \ - cc2538 \ - cc2652 \ - efr32 \ - gp712 \ - k32w \ - kw41z \ - nrf528xx \ - qpg6095 \ - qpg6100 \ - qpg7015m \ - samr21 \ - $(NULL) - -# Always package (e.g. for 'make dist') these subdirectories. - -DIST_SUBDIRS = \ - simulation \ - utils \ - $(NULL) - -# Always build (e.g. for 'make all') these subdirectories. - -SUBDIRS = \ - utils \ - $(NULL) - -if OPENTHREAD_PLATFORM_SIMULATION -SUBDIRS += simulation -endif - -noinst_HEADERS = \ - openthread-system.h \ - $(NULL) - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/examples/platforms/simulation/Makefile.am b/examples/platforms/simulation/Makefile.am deleted file mode 100644 index 227e2ae27..000000000 --- a/examples/platforms/simulation/Makefile.am +++ /dev/null @@ -1,82 +0,0 @@ -# -# Copyright (c) 2016, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am -include $(top_srcdir)/src/lib/common.am - -lib_LIBRARIES = libopenthread-simulation.a - -libopenthread_simulation_a_CPPFLAGS = \ - -I$(top_srcdir)/include \ - -I$(top_srcdir)/examples/platforms \ - -I$(top_srcdir)/src \ - -I$(top_srcdir)/src/core \ - -D_GNU_SOURCE \ - $(NULL) - -PLATFORM_SOURCES = \ - alarm.c \ - crypto.c \ - diag.c \ - dso_transport.c \ - entropy.c \ - flash.c \ - infra_if.c \ - logging.c \ - misc.c \ - openthread-core-simulation-config.h \ - platform-config.h \ - platform-simulation.h \ - radio.c \ - spi-stubs.c \ - system.c \ - trel.c \ - uart.c \ - virtual_time/alarm-sim.c \ - virtual_time/platform-sim.c \ - $(NULL) - -libopenthread_simulation_a_SOURCES = \ - $(PLATFORM_SOURCES) \ - $(NULL) - -Dash = - -libopenthread_simulation_a_LIBADD = \ - $(call ot_list_objects,$(top_builddir)/examples/platforms/utils/libopenthread-platform-utils.a) \ - $(call ot_list_objects,$(top_builddir)/src/lib/platform/libopenthread-platform.a) \ - $(NULL) - -if OPENTHREAD_BUILD_COVERAGE -libopenthread_simulation_a_CPPFLAGS += \ - -DOPENTHREAD_ENABLE_COVERAGE \ - $(NULL) - -CLEANFILES = $(wildcard *.gcda *.gcno) -endif # OPENTHREAD_BUILD_COVERAGE - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/examples/platforms/simulation/README.md b/examples/platforms/simulation/README.md index a5f1fb3a2..ad6040200 100644 --- a/examples/platforms/simulation/README.md +++ b/examples/platforms/simulation/README.md @@ -4,20 +4,6 @@ This directory contains example platform drivers for simulation on POSIX. ## Build Examples -### Build using autotools - -```bash -$ cd -$ ./bootstrap -$ make -f examples/Makefile-simulation -``` - -After a successful build, the `elf` files are found in: - -- `/output//bin` - -### Build using cmake/ninja - ```bash $ cd $ mkdir build && cd build @@ -35,7 +21,7 @@ After a successful build, the `elf` files are found in: 1. Spawn the process: ```bash -$ cd /output//bin +$ cd /build/simulation/examples/apps/cli $ ./ot-cli-ftd 1 ``` diff --git a/examples/platforms/utils/Makefile.am b/examples/platforms/utils/Makefile.am deleted file mode 100644 index 53cd3db4c..000000000 --- a/examples/platforms/utils/Makefile.am +++ /dev/null @@ -1,74 +0,0 @@ -# -# Copyright (c) 2016, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am - -lib_LIBRARIES = libopenthread-platform-utils.a -noinst_LTLIBRARIES = libutils-link-metrics.la - -COMMON_FLAGS = \ - -I$(top_srcdir)/include \ - -I$(top_srcdir)/examples/platforms \ - -I$(top_srcdir)/src/core \ - -I$(top_srcdir)/third_party/jlink/SEGGER_RTT_V640/RTT \ - $(NULL) - -libutils_link_metrics_la_CPPFLAGS = \ - $(COMMON_FLAGS) \ - -fno-threadsafe-statics \ - $(NULL) - -libutils_link_metrics_la_SOURCES = \ - link_metrics.cpp \ - link_metrics.h \ - $(NULL) - -libopenthread_platform_utils_a_CPPFLAGS = \ - $(COMMON_FLAGS) \ - $(NULL) - -libopenthread_platform_utils_a_SOURCES = \ - code_utils.h \ - debug_uart.c \ - logging_rtt.c \ - logging_rtt.h \ - mac_frame.cpp \ - mac_frame.h \ - otns_utils.cpp \ - settings.h \ - settings_ram.c \ - soft_source_match_table.c \ - soft_source_match_table.h \ - uart.h \ - $(NULL) - -libopenthread_platform_utils_a_LIBADD = \ - libutils-link-metrics.la \ - $(NULL) - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/include/Makefile.am b/include/Makefile.am deleted file mode 100644 index 6f18341b5..000000000 --- a/include/Makefile.am +++ /dev/null @@ -1,137 +0,0 @@ -# -# Copyright (c) 2016, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am - -# Always package (e.g. for 'make dist') these subdirectories. - -EXTRA_DIST = \ - openthread \ - $(NULL) - -openthread_headers = \ - openthread/backbone_router.h \ - openthread/backbone_router_ftd.h \ - openthread/border_agent.h \ - openthread/border_router.h \ - openthread/border_routing.h \ - openthread/channel_manager.h \ - openthread/channel_monitor.h \ - openthread/child_supervision.h \ - openthread/cli.h \ - openthread/coap.h \ - openthread/coap_secure.h \ - openthread/commissioner.h \ - openthread/config.h \ - openthread/crypto.h \ - openthread/dataset.h \ - openthread/dataset_ftd.h \ - openthread/dataset_updater.h \ - openthread/diag.h \ - openthread/dns.h \ - openthread/dns_client.h \ - openthread/dnssd_server.h \ - openthread/error.h \ - openthread/heap.h \ - openthread/history_tracker.h \ - openthread/icmp6.h \ - openthread/instance.h \ - openthread/ip6.h \ - openthread/jam_detection.h \ - openthread/joiner.h \ - openthread/link.h \ - openthread/link_metrics.h \ - openthread/link_raw.h \ - openthread/logging.h \ - openthread/mesh_diag.h \ - openthread/message.h \ - openthread/multi_radio.h \ - openthread/nat64.h \ - openthread/ncp.h \ - openthread/netdata.h \ - openthread/netdata_publisher.h \ - openthread/netdiag.h \ - openthread/network_time.h \ - openthread/ping_sender.h \ - openthread/radio_stats.h \ - openthread/random_crypto.h \ - openthread/random_noncrypto.h \ - openthread/server.h \ - openthread/sntp.h \ - openthread/srp_client.h \ - openthread/srp_client_buffers.h \ - openthread/srp_server.h \ - openthread/tasklet.h \ - openthread/tcp.h \ - openthread/tcp_ext.h \ - openthread/thread.h \ - openthread/thread_ftd.h \ - openthread/trel.h \ - openthread/udp.h \ - $(NULL) - -openthreaddir = $(includedir)/openthread -dist_openthread_HEADERS = $(openthread_headers) - -ot_platform_headers = \ - openthread/platform/alarm-micro.h \ - openthread/platform/alarm-milli.h \ - openthread/platform/border_routing.h \ - openthread/platform/crypto.h \ - openthread/platform/debug_uart.h \ - openthread/platform/diag.h \ - openthread/platform/dns.h \ - openthread/platform/dso_transport.h \ - openthread/platform/entropy.h \ - openthread/platform/flash.h \ - openthread/platform/infra_if.h \ - openthread/platform/logging.h \ - openthread/platform/memory.h \ - openthread/platform/messagepool.h \ - openthread/platform/misc.h \ - openthread/platform/otns.h \ - openthread/platform/radio.h \ - openthread/platform/settings.h \ - openthread/platform/spi-slave.h \ - openthread/platform/time.h \ - openthread/platform/toolchain.h \ - openthread/platform/trel.h \ - openthread/platform/udp.h \ - $(NULL) - -ot_platformdir = $(includedir)/openthread/platform -dist_ot_platform_HEADERS = $(ot_platform_headers) - -noinst_HEADERS = \ - openthread/config.h \ - openthread/platform/debug_uart.h \ - $(NULL) - -install-headers: install-includeHEADERS - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/script/check-posix-build b/script/check-posix-build index 493566e08..5b836f8b3 100755 --- a/script/check-posix-build +++ b/script/check-posix-build @@ -31,7 +31,6 @@ set -euxo pipefail main() { - "$(dirname "$0")"/check-posix-build-autotools "$(dirname "$0")"/check-posix-build-cmake "$(dirname "$0")"/check-posix-build-cmake -DOT_DAEMON=ON } diff --git a/script/check-posix-build-autotools b/script/check-posix-build-autotools deleted file mode 100755 index 17cf4ad11..000000000 --- a/script/check-posix-build-autotools +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/bash -# -# Copyright (c) 2020, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -set -euxo pipefail - -reset_source() -{ - rm -rf build output tmp -} - -build() -{ - reset_source - make -f src/posix/Makefile-posix RCP_RESTORATION_MAX_COUNT=2 - - if [[ $OSTYPE != "darwin"* ]]; then - reset_source - make -f src/posix/Makefile-posix RCP_RESTORATION_MAX_COUNT=2 RCP_BUS=spi - fi -} - -main() -{ - ./bootstrap - - build -} - -main "$@" diff --git a/script/check-posix-build-cmake b/script/check-posix-build-cmake index a8337bdff..253ab2863 100755 --- a/script/check-posix-build-cmake +++ b/script/check-posix-build-cmake @@ -67,9 +67,12 @@ main() reset_source build "$@" + reset_source + build -DOT_RCP_RESTORATION_MAX_COUNT=2 + if [[ $OSTYPE != "darwin"* ]]; then reset_source - build -DOT_POSIX_CONFIG_RCP_BUS=SPI "$@" + build -DOT_RCP_RESTORATION_MAX_COUNT=2 -DOT_POSIX_CONFIG_RCP_BUS=SPI "$@" fi reset_source diff --git a/script/check-simulation-build b/script/check-simulation-build index 4c31fd9f6..93657f168 100755 --- a/script/check-simulation-build +++ b/script/check-simulation-build @@ -31,7 +31,6 @@ set -euxo pipefail main() { - "$(dirname "$0")"/check-simulation-build-autotools "$(dirname "$0")"/check-simulation-build-cmake } diff --git a/script/check-simulation-build-autotools b/script/check-simulation-build-autotools deleted file mode 100755 index 1e3ef250f..000000000 --- a/script/check-simulation-build-autotools +++ /dev/null @@ -1,278 +0,0 @@ -#!/bin/bash -# -# Copyright (c) 2020, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -set -euxo pipefail - -OT_BUILD_JOBS=$(getconf _NPROCESSORS_ONLN) -readonly OT_BUILD_JOBS - -reset_source() -{ - rm -rf build output tmp -} - -build_all_features() -{ - local options=( - "-DOPENTHREAD_CONFIG_ANNOUNCE_SENDER_ENABLE=1" - "-DOPENTHREAD_CONFIG_ANYCAST_LOCATOR=1" - "-DOPENTHREAD_CONFIG_BORDER_AGENT_ENABLE=1" - "-DOPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE=1" - "-DOPENTHREAD_CONFIG_BORDER_ROUTING_ENABLE=1" - "-DOPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE=1" - "-DOPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE=1" - "-DOPENTHREAD_CONFIG_COAP_API_ENABLE=1" - "-DOPENTHREAD_CONFIG_COAP_SECURE_API_ENABLE=1" - "-DOPENTHREAD_CONFIG_COMMISSIONER_ENABLE=1" - "-DOPENTHREAD_CONFIG_DATASET_UPDATER_ENABLE=1" - "-DOPENTHREAD_CONFIG_DHCP6_CLIENT_ENABLE=1" - "-DOPENTHREAD_CONFIG_DHCP6_SERVER_ENABLE=1" - "-DOPENTHREAD_CONFIG_DIAG_ENABLE=1" - "-DOPENTHREAD_CONFIG_DNS_CLIENT_ENABLE=1" - "-DOPENTHREAD_CONFIG_DNS_DSO_ENABLE=1" - "-DOPENTHREAD_CONFIG_ECDSA_ENABLE=1" - "-DOPENTHREAD_CONFIG_HEAP_EXTERNAL_ENABLE=1" - "-DOPENTHREAD_CONFIG_HISTORY_TRACKER_ENABLE=1" - "-DOPENTHREAD_CONFIG_IP6_FRAGMENTATION_ENABLE=1" - "-DOPENTHREAD_CONFIG_IP6_SLAAC_ENABLE=1" - "-DOPENTHREAD_CONFIG_JAM_DETECTION_ENABLE=1" - "-DOPENTHREAD_CONFIG_JOINER_ENABLE=1" - "-DOPENTHREAD_CONFIG_LINK_RAW_ENABLE=1" - "-DOPENTHREAD_CONFIG_LOG_LEVEL_DYNAMIC_ENABLE=1" - "-DOPENTHREAD_CONFIG_MAC_BEACON_RSP_WHEN_JOINABLE_ENABLE=1" - "-DOPENTHREAD_CONFIG_MAC_FILTER_ENABLE=1" - "-DOPENTHREAD_CONFIG_MAC_RETRY_SUCCESS_HISTOGRAM_ENABLE=1" - "-DOPENTHREAD_CONFIG_MAC_SOFTWARE_ACK_TIMEOUT_ENABLE=1" - "-DOPENTHREAD_CONFIG_MAC_SOFTWARE_CSMA_BACKOFF_ENABLE=1" - "-DOPENTHREAD_CONFIG_MAC_SOFTWARE_ENERGY_SCAN_ENABLE=1" - "-DOPENTHREAD_CONFIG_MAC_SOFTWARE_RETRANSMIT_ENABLE=1" - "-DOPENTHREAD_CONFIG_MAC_SOFTWARE_TX_SECURITY_ENABLE=1" - "-DOPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_ENABLE=1" - "-DOPENTHREAD_CONFIG_MLE_STEERING_DATA_SET_OOB_ENABLE=1" - "-DOPENTHREAD_CONFIG_MPL_DYNAMIC_INTERVAL_ENABLE" - "-DOPENTHREAD_CONFIG_NCP_HDLC_ENABLE=1" - "-DOPENTHREAD_CONFIG_NCP_SPI_ENABLE=1" - "-DOPENTHREAD_CONFIG_PING_SENDER_ENABLE=1" - "-DOPENTHREAD_CONFIG_PLATFORM_FLASH_API_ENABLE=1" - "-DOPENTHREAD_CONFIG_PLATFORM_RADIO_COEX_ENABLE=1" - "-DOPENTHREAD_CONFIG_PLATFORM_USEC_TIMER_ENABLE=1" - "-DOPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE=1" - "-DOPENTHREAD_CONFIG_SNTP_CLIENT_ENABLE=1" - "-DOPENTHREAD_CONFIG_SRP_CLIENT_ENABLE=1" - "-DOPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE=1" - "-DOPENTHREAD_CONFIG_TMF_NETDIAG_CLIENT_ENABLE=1" - "-DOPENTHREAD_CONFIG_UDP_FORWARD_ENABLE=1" - "-DOPENTHREAD_CONFIG_MAC_BEACON_PAYLOAD_PARSING_ENABLE=1" - "-DOPENTHREAD_CONFIG_MAC_OUTGOING_BEACON_PAYLOAD_ENABLE=1" - ) - - local options_1_3=( - "-DOPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE=1" - "-DOPENTHREAD_CONFIG_NAT64_BORDER_ROUTING_ENABLE=1" - "-DOPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE=1" - "-DOPENTHREAD_CONFIG_MAC_CSL_RECEIVER_ENABLE=1" - "-DOPENTHREAD_CONFIG_DUA_ENABLE=1" - "-DOPENTHREAD_CONFIG_MLR_ENABLE=1" - ) - - # Build Thread 1.1 with full features and no log - export CPPFLAGS="${options[*]}" - reset_source - make -f examples/Makefile-simulation THREAD_VERSION=1.1 LOG_OUTPUT=NONE - - # Build Thread 1.1 with full features and full logs - export CPPFLAGS="${options[*]}" - reset_source - make -f examples/Makefile-simulation THREAD_VERSION=1.1 FULL_LOGS=1 - - # Build Thread 1.3 with full features and logs - export CPPFLAGS="${options[*]} ${options_1_3[*]}" - reset_source - make -f examples/Makefile-simulation THREAD_VERSION=1.3 LOG_OUTPUT=NONE - - # Build Thread 1.3 with full features and full logs - export CPPFLAGS="${options[*]} ${options_1_3[*]}" - reset_source - make -f examples/Makefile-simulation THREAD_VERSION=1.3 FULL_LOGS=1 - - # Build Thread 1.1 with ASSERT disabled - export CPPFLAGS="${options[*]} -DOPENTHREAD_CONFIG_ASSERT_ENABLE=0" - reset_source - make -f examples/Makefile-simulation THREAD_VERSION=1.1 - - # Build Thread 1.1 OTNS - export CPPFLAGS="${options[*]}" - reset_source - make -f examples/Makefile-simulation THREAD_VERSION=1.1 OTNS=1 - - # Build Thread 1.3 with external heap and msg pool using heap - export CPPFLAGS="${options[*]} ${options_1_3[*]} -DOPENTHREAD_CONFIG_MESSAGE_USE_HEAP_ENABLE=1" - reset_source - make -f examples/Makefile-simulation THREAD_VERSION=1.3 -} - -build_nest_common() -{ - local options=( - "-DOPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE=1" - "-DOPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE=1" - "-DOPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE=1" - "-DOPENTHREAD_CONFIG_DATASET_UPDATER_ENABLE=1" - "-DOPENTHREAD_CONFIG_DIAG_ENABLE=1" - "-DOPENTHREAD_CONFIG_JAM_DETECTION_ENABLE=1" - "-DOPENTHREAD_CONFIG_MAC_FILTER_ENABLE=1" - "-DOPENTHREAD_CONFIG_PING_SENDER_ENABLE=1" - "-DOPENTHREAD_CONFIG_NCP_SPI_ENABLE=1" - "-DOPENTHREAD_CONFIG_PLATFORM_FLASH_API_ENABLE=1" - "-DOPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE=1" - ) - export CPPFLAGS="${options[*]}" - - reset_source - mkdir build && cd build - ../configure \ - --enable-cli \ - --enable-mtd \ - --with-examples=simulation \ - --disable-docs \ - --disable-tests - make -j"${OT_BUILD_JOBS}" - cd .. - - options=( - "-DOPENTHREAD_CONFIG_ANOUNCE_SENDER_ENABLE=1" - "-DOPENTHREAD_CONFIG_PLATFORM_FLASH_API_ENABLE=1" - "-DOPENTHREAD_CONFIG_TIME_SYNC_ENABLE=1" - "-DOPENTHREAD_CONFIG_NCP_HDLC_ENABLE=1" - ) - export CPPFLAGS="${options[*]}" - - reset_source - mkdir build && cd build - ../configure \ - --enable-cli \ - --enable-ftd \ - --enable-mtd \ - --enable-ncp \ - --enable-radio-only \ - --enable-radio-cli \ - --disable-docs \ - --disable-tests \ - --with-examples=simulation - make -j"${OT_BUILD_JOBS}" - cd .. - - options=( - "-DOPENTHREAD_CONFIG_NCP_HDLC_ENABLE=1" - "-DOPENTHREAD_CONFIG_PLATFORM_FLASH_API_ENABLE=1" - ) - export CPPFLAGS="${options[*]}" - - reset_source - mkdir build && cd build - ../configure \ - --enable-ftd \ - --enable-mtd \ - --enable-ncp \ - --with-examples=simulation \ - --disable-docs \ - --disable-tests \ - --with-vendor-extension=../src/core/common/extension_example.cpp \ - --with-ncp-vendor-hook-source=../src/ncp/example_vendor_hook.cpp - make -j"${OT_BUILD_JOBS}" - cd .. -} - -build_multi_radio_links() -{ - # TREL radio link only. - local options=( - "-DOPENTHREAD_CONFIG_NCP_HDLC_ENABLE=1" - "-DOPENTHREAD_CONFIG_PLATFORM_FLASH_API_ENABLE=1" - "-DOPENTHREAD_CONFIG_LOG_LEVEL=OT_LOG_LEVEL_DEBG" - "-DOPENTHREAD_CONFIG_RADIO_LINK_IEEE_802_15_4_ENABLE=0" - "-DOPENTHREAD_CONFIG_RADIO_LINK_TREL_ENABLE=1" - ) - export CPPFLAGS="${options[*]}" - - reset_source - mkdir build && cd build - ../configure \ - --enable-cli \ - --enable-ftd \ - --enable-mtd \ - --enable-ncp \ - --enable-radio-only \ - --enable-radio-cli \ - --with-examples=simulation \ - --disable-docs \ - --disable-tests - make -j"${OT_BUILD_JOBS}" - cd .. - - # Multi radio link - 15.4 and TREL. - options=( - "-DOPENTHREAD_CONFIG_NCP_HDLC_ENABLE=1" - "-DOPENTHREAD_CONFIG_PLATFORM_FLASH_API_ENABLE=1" - "-DOPENTHREAD_CONFIG_DIAG_ENABLE=1" - "-DOPENTHREAD_CONFIG_LINK_RAW_ENABLE=1" - "-DOPENTHREAD_CONFIG_LOG_LEVEL_DYNAMIC_ENABLE=1" - "-DOPENTHREAD_CONFIG_LOG_LEVEL=OT_LOG_LEVEL_DEBG" - "-DOPENTHREAD_CONFIG_MAC_FILTER_ENABLE=1" - "-DOPENTHREAD_CONFIG_RADIO_LINK_IEEE_802_15_4_ENABLE=1" - "-DOPENTHREAD_CONFIG_RADIO_LINK_TREL_ENABLE=1" - ) - export CPPFLAGS="${options[*]}" - - reset_source - mkdir build && cd build - ../configure \ - --enable-cli \ - --enable-ftd \ - --enable-mtd \ - --enable-ncp \ - --enable-radio-only \ - --enable-radio-cli \ - --with-examples=simulation \ - --disable-docs \ - --disable-tests - make -j"${OT_BUILD_JOBS}" - cd .. -} - -main() -{ - ./bootstrap - - build_all_features - build_nest_common - build_multi_radio_links -} - -main "$@" diff --git a/script/check-simulation-build-cmake b/script/check-simulation-build-cmake index b84677a81..fc7af8e05 100755 --- a/script/check-simulation-build-cmake +++ b/script/check-simulation-build-cmake @@ -29,6 +29,9 @@ set -euxo pipefail +: "${CFLAGS:=}" +: "${CXXFLAGS:=}" + OT_BUILDDIR="$(pwd)/build" readonly OT_BUILDDIR @@ -39,9 +42,78 @@ reset_source() build_all_features() { + local cppflags=( + "-DOPENTHREAD_CONFIG_ANNOUNCE_SENDER_ENABLE=1" + "-DOPENTHREAD_CONFIG_ANYCAST_LOCATOR=1" + "-DOPENTHREAD_CONFIG_BORDER_AGENT_ENABLE=1" + "-DOPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE=1" + "-DOPENTHREAD_CONFIG_BORDER_ROUTING_ENABLE=1" + "-DOPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE=1" + "-DOPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE=1" + "-DOPENTHREAD_CONFIG_COAP_API_ENABLE=1" + "-DOPENTHREAD_CONFIG_COAP_SECURE_API_ENABLE=1" + "-DOPENTHREAD_CONFIG_COMMISSIONER_ENABLE=1" + "-DOPENTHREAD_CONFIG_DATASET_UPDATER_ENABLE=1" + "-DOPENTHREAD_CONFIG_DHCP6_CLIENT_ENABLE=1" + "-DOPENTHREAD_CONFIG_DHCP6_SERVER_ENABLE=1" + "-DOPENTHREAD_CONFIG_DIAG_ENABLE=1" + "-DOPENTHREAD_CONFIG_DNS_CLIENT_ENABLE=1" + "-DOPENTHREAD_CONFIG_DNS_DSO_ENABLE=1" + "-DOPENTHREAD_CONFIG_ECDSA_ENABLE=1" + "-DOPENTHREAD_CONFIG_HEAP_EXTERNAL_ENABLE=1" + "-DOPENTHREAD_CONFIG_HISTORY_TRACKER_ENABLE=1" + "-DOPENTHREAD_CONFIG_IP6_FRAGMENTATION_ENABLE=1" + "-DOPENTHREAD_CONFIG_IP6_SLAAC_ENABLE=1" + "-DOPENTHREAD_CONFIG_JAM_DETECTION_ENABLE=1" + "-DOPENTHREAD_CONFIG_JOINER_ENABLE=1" + "-DOPENTHREAD_CONFIG_LINK_RAW_ENABLE=1" + "-DOPENTHREAD_CONFIG_LOG_LEVEL_DYNAMIC_ENABLE=1" + "-DOPENTHREAD_CONFIG_MAC_BEACON_RSP_WHEN_JOINABLE_ENABLE=1" + "-DOPENTHREAD_CONFIG_MAC_FILTER_ENABLE=1" + "-DOPENTHREAD_CONFIG_MAC_RETRY_SUCCESS_HISTOGRAM_ENABLE=1" + "-DOPENTHREAD_CONFIG_MAC_SOFTWARE_ACK_TIMEOUT_ENABLE=1" + "-DOPENTHREAD_CONFIG_MAC_SOFTWARE_CSMA_BACKOFF_ENABLE=1" + "-DOPENTHREAD_CONFIG_MAC_SOFTWARE_ENERGY_SCAN_ENABLE=1" + "-DOPENTHREAD_CONFIG_MAC_SOFTWARE_RETRANSMIT_ENABLE=1" + "-DOPENTHREAD_CONFIG_MAC_SOFTWARE_TX_SECURITY_ENABLE=1" + "-DOPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_ENABLE=1" + "-DOPENTHREAD_CONFIG_MLE_STEERING_DATA_SET_OOB_ENABLE=1" + "-DOPENTHREAD_CONFIG_MPL_DYNAMIC_INTERVAL_ENABLE" + "-DOPENTHREAD_CONFIG_NCP_HDLC_ENABLE=1" + "-DOPENTHREAD_CONFIG_NCP_SPI_ENABLE=1" + "-DOPENTHREAD_CONFIG_PING_SENDER_ENABLE=1" + "-DOPENTHREAD_CONFIG_PLATFORM_FLASH_API_ENABLE=1" + "-DOPENTHREAD_CONFIG_PLATFORM_RADIO_COEX_ENABLE=1" + "-DOPENTHREAD_CONFIG_PLATFORM_USEC_TIMER_ENABLE=1" + "-DOPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE=1" + "-DOPENTHREAD_CONFIG_SNTP_CLIENT_ENABLE=1" + "-DOPENTHREAD_CONFIG_SRP_CLIENT_ENABLE=1" + "-DOPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE=1" + "-DOPENTHREAD_CONFIG_TMF_NETDIAG_CLIENT_ENABLE=1" + "-DOPENTHREAD_CONFIG_UDP_FORWARD_ENABLE=1" + "-DOPENTHREAD_CONFIG_MAC_BEACON_PAYLOAD_PARSING_ENABLE=1" + "-DOPENTHREAD_CONFIG_MAC_OUTGOING_BEACON_PAYLOAD_ENABLE=1" + ) + # Build Thread 1.1 with full features reset_source - "$(dirname "$0")"/cmake-build simulation -DOT_THREAD_VERSION=1.1 + CFLAGS="${cppflags[*]} ${CFLAGS}" CXXFLAGS="${cppflags[*]} ${CXXFLAGS}" \ + "$(dirname "$0")"/cmake-build simulation \ + -DOT_THREAD_VERSION=1.1 + + # Build Thread 1.1 with full features and no log + reset_source + CFLAGS="${cppflags[*]} ${CFLAGS}" CXXFLAGS="${cppflags[*]} ${CXXFLAGS}" \ + "$(dirname "$0")"/cmake-build simulation \ + -DOT_THREAD_VERSION=1.1 \ + -DOT_LOG_OUTPUT=NONE + + # Build Thread 1.1 with full features and full logs + reset_source + CFLAGS="${cppflags[*]} ${CFLAGS}" CXXFLAGS="${cppflags[*]} ${CXXFLAGS}" \ + "$(dirname "$0")"/cmake-build simulation \ + -DOT_THREAD_VERSION=1.1 \ + -DOT_FULL_LOGS=ON # Build Thread 1.1 cli-radio reset_source @@ -54,6 +126,22 @@ build_all_features() -DOT_FTD=OFF \ -DOT_MTD=OFF + # Build Thread 1.1 with ASSERT disabled + reset_source + CFLAGS="${cppflags[*]} ${CFLAGS}" CXXFLAGS="${cppflags[*]} ${CXXFLAGS}" \ + "$(dirname "$0")"/cmake-build simulation \ + -DOT_THREAD_VERSION=1.1 \ + -DOT_SIMULATION_VIRTUAL_TIME=ON \ + -DOT_ASSERT=OFF + + # Build Thread 1.1 OTNS + reset_source + CFLAGS="${cppflags[*]} ${CFLAGS}" CXXFLAGS="${cppflags[*]} ${CXXFLAGS}" \ + "$(dirname "$0")"/cmake-build simulation \ + -DOT_THREAD_VERSION=1.1 \ + -DOT_SIMULATION_VIRTUAL_TIME=ON \ + -DOT_OTNS=ON + # Thread 1.3 options local options=( "-DOT_BACKBONE_ROUTER=ON" @@ -69,7 +157,24 @@ build_all_features() # Build Thread 1.3 with full features reset_source - "$(dirname "$0")"/cmake-build simulation "${options[@]}" -DOT_DUA=ON + CFLAGS="${cppflags[*]} ${CFLAGS}" CXXFLAGS="${cppflags[*]} ${CXXFLAGS}" \ + "$(dirname "$0")"/cmake-build simulation "${options[@]}" -DOT_DUA=ON + + # Build Thread 1.3 with external heap and msg pool using heap + reset_source + CFLAGS="${cppflags[*]} ${CFLAGS} -DOPENTHREAD_CONFIG_MESSAGE_USE_HEAP_ENABLE=1" \ + CXXFLAGS="${cppflags[*]} ${CXXFLAGS} -DOPENTHREAD_CONFIG_MESSAGE_USE_HEAP_ENABLE=1" \ + "$(dirname "$0")"/cmake-build simulation "${options[@]}" -DOT_DUA=ON + + # Build Thread 1.3 with full features and no log + reset_source + CFLAGS="${cppflags[*]} ${CFLAGS}" CXXFLAGS="${cppflags[*]} ${CXXFLAGS}" \ + "$(dirname "$0")"/cmake-build simulation "${options[@]}" -DOT_DUA=ON -DOT_LOG_OUTPUT=NONE + + # Build Thread 1.3 with full features and full logs + reset_source + CFLAGS="${cppflags[*]} ${CFLAGS}" CXXFLAGS="${cppflags[*]} ${CXXFLAGS}" \ + "$(dirname "$0")"/cmake-build simulation "${options[@]}" -DOT_DUA=ON -DOT_FULL_LOGS=ON # Build Thread 1.3 Backbone Router without DUA ND Proxying reset_source @@ -96,23 +201,78 @@ build_all_features() # Build with RAM settings reset_source "$(dirname "$0")"/cmake-build simulation -DOT_SETTINGS_RAM=ON - - # Build with Vendor CLI commands - reset_source - "$(dirname "$0")"/cmake-build simulation \ - -DOT_CLI_VENDOR_EXTENSION=../../src/cli/cli_extension_example.cmake } -build_toranj() +build_nest_common() { + local cppflags=( + "-DOPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE=1" + "-DOPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE=1" + "-DOPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE=1" + "-DOPENTHREAD_CONFIG_DATASET_UPDATER_ENABLE=1" + "-DOPENTHREAD_CONFIG_DIAG_ENABLE=1" + "-DOPENTHREAD_CONFIG_JAM_DETECTION_ENABLE=1" + "-DOPENTHREAD_CONFIG_MAC_FILTER_ENABLE=1" + "-DOPENTHREAD_CONFIG_PING_SENDER_ENABLE=1" + "-DOPENTHREAD_CONFIG_NCP_SPI_ENABLE=1" + "-DOPENTHREAD_CONFIG_PLATFORM_FLASH_API_ENABLE=1" + "-DOPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE=1" + ) + reset_source - top_builddir="$OT_BUILDDIR" ./tests/toranj/build.sh cmake + mkdir build && cd build + CFLAGS="${cppflags[*]} ${CFLAGS}" CXXFLAGS="${cppflags[*]} ${CXXFLAGS}" \ + cmake -GNinja -DOT_PLATFORM=simulation .. + ninja + cd .. + + cppflags=( + "-DOPENTHREAD_CONFIG_ANOUNCE_SENDER_ENABLE=1" + "-DOPENTHREAD_CONFIG_PLATFORM_FLASH_API_ENABLE=1" + "-DOPENTHREAD_CONFIG_TIME_SYNC_ENABLE=1" + "-DOPENTHREAD_CONFIG_NCP_HDLC_ENABLE=1" + ) + + reset_source + mkdir build && cd build + CFLAGS="${cppflags[*]} ${CFLAGS}" CXXFLAGS="${cppflags[*]} ${CXXFLAGS}" \ + cmake -GNinja -DOT_PLATFORM=simulation .. + ninja + cd .. + + cppflags=( + "-DOPENTHREAD_CONFIG_NCP_HDLC_ENABLE=1" + "-DOPENTHREAD_CONFIG_PLATFORM_FLASH_API_ENABLE=1" + ) + + reset_source + mkdir build && cd build + CFLAGS="${cppflags[*]} ${CFLAGS}" CXXFLAGS="${cppflags[*]} ${CXXFLAGS}" \ + cmake -GNinja -DOT_PLATFORM=simulation \ + -DOT_VENDOR_EXTENSION=common/extension_example.cpp \ + -DOT_NCP_VENDOR_HOOK_SOURCE=example_vendor_hook.cpp \ + .. + ninja + cd .. } +build_multi_radio_links() +{ + # TREL radio link only. + reset_source + ./script/cmake-build simulation -DOT_LOG_LEVEL=DEBG \ + -DOT_TREL=OFF -DOT_15_4=ON + + # Multi radio link - 15.4 and TREL. + reset_source + ./script/cmake-build simulation -DOT_LOG_LEVEL=DEBG \ + -DOT_TREL=ON -DOT_15_4=ON +} main() { build_all_features - build_toranj + build_nest_common + build_multi_radio_links } main "$@" diff --git a/script/update-makefiles.py b/script/update-makefiles.py index 3b16e4df1..014badf51 100755 --- a/script/update-makefiles.py +++ b/script/update-makefiles.py @@ -146,34 +146,3 @@ formatted_list = [" \"{}\",\n".format(file_name[19:]) for file_name in includ update_build_file(include_build_gn_file, " public = [\n", " ]\n", formatted_list) print("Updated " + include_build_gn_file) - -#---------------------------------------------------------------------------------------------- -# Update Makefile.am files - -core_makefile_am_file = "./src/core/Makefile.am" - -formatted_list = [" {:<45} \\\n".format(file_name[9:]) for file_name in core_cpp_files] -start_string = "SOURCES_COMMON = \\\n" -end_string = " $(NULL)\n" -update_build_file(core_makefile_am_file, start_string, end_string, formatted_list) - -formatted_list = [" {:<45} \\\n".format(file_name[9:]) for file_name in core_h_hpp_files] -start_string = "HEADERS_COMMON = \\\n" -end_string = " $(NULL)\n" -update_build_file(core_makefile_am_file, start_string, end_string, formatted_list) - -print("Updated " + core_makefile_am_file) - -include_makefile_am_file = "./include/Makefile.am" - -formatted_list = [" {:<37} \\\n".format(file_name) for file_name in include_ot_h_files] -start_string = "openthread_headers = \\\n" -end_string = " $(NULL)\n" -update_build_file(include_makefile_am_file, start_string, end_string, formatted_list) - -formatted_list = [" {:<37} \\\n".format(file_name) for file_name in include_platform_h_files] -start_string = "ot_platform_headers = \\\n" -end_string = " $(NULL)\n" -update_build_file(include_makefile_am_file, start_string, end_string, formatted_list) - -print("Updated " + include_makefile_am_file) diff --git a/src/Makefile.am b/src/Makefile.am deleted file mode 100644 index 97622dc08..000000000 --- a/src/Makefile.am +++ /dev/null @@ -1,64 +0,0 @@ -# -# Copyright (c) 2016, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am - -# Always package (e.g. for 'make dist') these subdirectories. - -DIST_SUBDIRS = \ - core \ - cli \ - lib \ - ncp \ - posix \ - $(NULL) - -# Always build (e.g. for 'make all') these subdirectories. - -SUBDIRS = \ - core \ - lib \ - $(NULL) - -if OPENTHREAD_ENABLE_CLI -SUBDIRS += cli -endif - -if OPENTHREAD_ENABLE_NCP -SUBDIRS += ncp -else -if OPENTHREAD_ENABLE_RADIO_ONLY -SUBDIRS += ncp -endif -endif - -if OPENTHREAD_PLATFORM_POSIX -SUBDIRS += posix -endif - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/src/cli/Makefile.am b/src/cli/Makefile.am deleted file mode 100644 index 4f8f9fb29..000000000 --- a/src/cli/Makefile.am +++ /dev/null @@ -1,213 +0,0 @@ -# -# Copyright (c) 2016, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am - -#---------------------------------------- -# -# This library on the face of it, appears to be identical -# for both the MTD and FTD variants, however ... -# -# The source code here includes numerous OpenThread internal headers. -# Due to the "domino-effect" other internal headers are included. -# -# For example: -# cli.cpp includes: -# src/core/common/instance.hpp -# Which Includes: -# src/core/therad/thread_netif.hpp -# Which Includes: -# src/core/meshcop/dataset_manager.hpp -# Which Includes: -# src/core/threadnetwork_data_leader.hpp -# -# That header (and others) is either an MTD or FTD class flavor. -# -# The FTD flavor has many private components (class variables). -# The MTD flavor has no private components. -# -# Bottom line: The Class(structs) are thus different in the downstream -# libs. At this level (in the CLI, and likewise in the NCP) they are -# functionally identical. -# -# ORIGINALLY (historical note about how things are/where built): -# -# The difference between MTD and FTD was a define.. -DOPENTHREAD_MTD -# There was no "FTD" define, it is/was assumed that FTD is the default. -# -# Historically this library -DOPENTHREAD_MTD was not defined/set. -# (it is set via a commandline define in 'lib-openthread') -# -# Thus, the existing(previous) way *THIS* library was compiled is -# exactly the FTD path. Meaning the "cli" library always sees -# the FTD variants of various headers/classes. -# -# The same is true of the "ncp" library. -# -# HOWEVER there are two variants of the CLI application, CLI-MTD -# and CLI-FTD (and likewise, two variants of the ncp application) -# These applications link against two different OpenThread libraries. -# -# Which flavor, you get depends upon which library: "mtd" or "ftd" is linked. -# -# Which on the surface appear to link fine against the MTD/FTD library. -# -# In this description/example we focus on the "network_data_leader" -# header file. The FTD variant has many private variables, functions -# and other things of "FTD" (ie: full) implementation items. -# -# In contrast the MTD is generally stubbed out with stub-functions -# inlined in the header that return "error not implemented" or similar. -# -# Thus it works... here ... With this file and this example. -# -# The unknown: -# What about the other files? -# What about the other c++ classes? -# Is this true always? Is this robust? -# Or is there a hidden "got-ya" that will snag the next person? -# -# This also fails static analysis, checks. -# Application - with MTD vrs FTD class. -# Library #1 (cli-lib) with FTD selected. -# Library #2 (openthread) with two different class flavors. -# -# The static analysis tools will say: "NOPE" different classes! -# Perhaps this will change if/when nothing is implemented in the 'mtd-header' -# -# Additionally, tools that perform "whole program optimization" will -# throw errors because the data structures differ greatly. -# -# Hence, CLI library (and NCP) must exist in two flavors. -# -# Unless and until these libraries do not "accidentally" suck in -# a "flavored" header file somewhere. - -lib_LIBRARIES = $(NULL) - -if OPENTHREAD_ENABLE_FTD -lib_LIBRARIES += libopenthread-cli-ftd.a -endif - -if OPENTHREAD_ENABLE_MTD -lib_LIBRARIES += libopenthread-cli-mtd.a -endif - -if OPENTHREAD_ENABLE_RADIO_CLI -lib_LIBRARIES += libopenthread-cli-radio.a -endif - -CPPFLAGS_COMMON = \ - -I$(top_srcdir)/include \ - -I$(top_srcdir)/src \ - -I$(top_srcdir)/src/core \ - $(OPENTHREAD_TARGET_DEFINES) \ - $(NULL) - -libopenthread_cli_ftd_a_CPPFLAGS = \ - -DOPENTHREAD_MTD=0 \ - -DOPENTHREAD_FTD=1 \ - -DOPENTHREAD_RADIO=0 \ - $(CPPFLAGS_COMMON) \ - $(NULL) - -libopenthread_cli_mtd_a_CPPFLAGS = \ - -DOPENTHREAD_MTD=1 \ - -DOPENTHREAD_FTD=0 \ - -DOPENTHREAD_RADIO=0 \ - $(CPPFLAGS_COMMON) \ - $(NULL) - -libopenthread_cli_radio_a_CPPFLAGS = \ - -DOPENTHREAD_MTD=0 \ - -DOPENTHREAD_FTD=0 \ - -DOPENTHREAD_RADIO=1 \ - -DOPENTHREAD_RADIO_CLI=1 \ - $(CPPFLAGS_COMMON) \ - $(NULL) - -SOURCES_COMMON = \ - cli.cpp \ - cli_bbr.cpp \ - cli_br.cpp \ - cli_coap.cpp \ - cli_coap_secure.cpp \ - cli_commissioner.cpp \ - cli_dataset.cpp \ - cli_dns.cpp \ - cli_history.cpp \ - cli_joiner.cpp \ - cli_mac_filter.cpp \ - cli_network_data.cpp \ - cli_output.cpp \ - cli_srp_client.cpp \ - cli_srp_server.cpp \ - cli_tcp.cpp \ - cli_udp.cpp \ - $(NULL) - -libopenthread_cli_ftd_a_SOURCES = \ - $(SOURCES_COMMON) \ - $(NULL) - -libopenthread_cli_mtd_a_SOURCES = \ - $(SOURCES_COMMON) \ - $(NULL) - -libopenthread_cli_radio_a_SOURCES = \ - cli.cpp \ - cli_output.cpp \ - $(NULL) - -noinst_HEADERS = \ - cli.hpp \ - cli_bbr.hpp \ - cli_br.hpp \ - cli_coap.hpp \ - cli_coap_secure.hpp \ - cli_commissioner.hpp \ - cli_config.h \ - cli_dataset.hpp \ - cli_dns.hpp \ - cli_history.hpp \ - cli_joiner.hpp \ - cli_mac_filter.hpp \ - cli_network_data.hpp \ - cli_output.hpp \ - cli_srp_client.hpp \ - cli_srp_server.hpp \ - cli_tcp.hpp \ - cli_udp.hpp \ - x509_cert_key.hpp \ - $(NULL) - -if OPENTHREAD_BUILD_COVERAGE -CLEANFILES = $(wildcard *.gcda *.gcno) -endif # OPENTHREAD_BUILD_COVERAGE - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/src/core/Makefile.am b/src/core/Makefile.am deleted file mode 100644 index feeb5221a..000000000 --- a/src/core/Makefile.am +++ /dev/null @@ -1,681 +0,0 @@ -# -# Copyright (c) 2016, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am - -lib_LIBRARIES = $(NULL) - -if OPENTHREAD_ENABLE_FTD -lib_LIBRARIES += libopenthread-ftd.a -endif - -if OPENTHREAD_ENABLE_MTD -lib_LIBRARIES += libopenthread-mtd.a -endif - -if OPENTHREAD_ENABLE_RADIO_ONLY -lib_LIBRARIES += libopenthread-radio.a -endif - -if OPENTHREAD_ENABLE_RADIO_CLI -lib_LIBRARIES += libopenthread-radio-cli.a -endif - -CPPFLAGS_COMMON = \ - -I$(top_srcdir)/include \ - $(OPENTHREAD_TARGET_DEFINES) \ - $(NULL) - -libopenthread_radio_a_CPPFLAGS = \ - $(CPPFLAGS_COMMON) \ - -DOPENTHREAD_MTD=0 \ - -DOPENTHREAD_FTD=0 \ - -DOPENTHREAD_RADIO=1 \ - -DOPENTHREAD_RADIO_CLI=0 \ - $(NULL) - -libopenthread_radio_cli_a_CPPFLAGS = \ - $(CPPFLAGS_COMMON) \ - -DOPENTHREAD_MTD=0 \ - -DOPENTHREAD_FTD=0 \ - -DOPENTHREAD_RADIO=1 \ - -DOPENTHREAD_RADIO_CLI=1 \ - $(NULL) - -libopenthread_ftd_a_CPPFLAGS = \ - $(CPPFLAGS_COMMON) \ - -DOPENTHREAD_MTD=0 \ - -DOPENTHREAD_FTD=1 \ - -DOPENTHREAD_RADIO=0 \ - $(NULL) - -libopenthread_mtd_a_CPPFLAGS = \ - $(CPPFLAGS_COMMON) \ - -DOPENTHREAD_MTD=1 \ - -DOPENTHREAD_FTD=0 \ - -DOPENTHREAD_RADIO=0 \ - $(NULL) - -#------------------------------------------------------ -# Note to maintainer/developers about "SOURCES_COMMON" -# -# The traditional method for GNU style Makefile.am files -# is to have IF statements within the Makefile -# -# These IF statements would add (or not add) certain -# source files from the build/library being built. -# -# In general, IDEs do not easily support this. -# Some do, some do not, those that do support it -# often do so in a very different or complex way. -# Bottom line: It is a very mixed bag of results. -# -# Thus we bend to the IDEs, and impose these rules: -# -# Rule #1 -# All code(files) should be compiled -# Even if it is not used or required -# -# For example: In the MTD build, some features -# are disabled and thus in the traditional scheme -# source files could be excluded SOURCES_COMMON -# via makefile IF/ELSE/ENDIF constructs. -# -# This makes it impossibly hard for IDEs. -# Thus we compile everything. -# -# And then rely upon Rule #2. -# -# Rule #2 -# Files that are not required, in certain -# configurations require appropriate wrappers -# Such as #if/#else/#endif -# -# The net result is sort of an "empty translation -# unit" -# - -SOURCES_COMMON = \ - api/backbone_router_api.cpp \ - api/backbone_router_ftd_api.cpp \ - api/border_agent_api.cpp \ - api/border_router_api.cpp \ - api/border_routing_api.cpp \ - api/channel_manager_api.cpp \ - api/channel_monitor_api.cpp \ - api/child_supervision_api.cpp \ - api/coap_api.cpp \ - api/coap_secure_api.cpp \ - api/commissioner_api.cpp \ - api/crypto_api.cpp \ - api/dataset_api.cpp \ - api/dataset_ftd_api.cpp \ - api/dataset_updater_api.cpp \ - api/diags_api.cpp \ - api/dns_api.cpp \ - api/dns_server_api.cpp \ - api/error_api.cpp \ - api/heap_api.cpp \ - api/history_tracker_api.cpp \ - api/icmp6_api.cpp \ - api/instance_api.cpp \ - api/ip6_api.cpp \ - api/jam_detection_api.cpp \ - api/joiner_api.cpp \ - api/link_api.cpp \ - api/link_metrics_api.cpp \ - api/link_raw_api.cpp \ - api/logging_api.cpp \ - api/mesh_diag_api.cpp \ - api/message_api.cpp \ - api/multi_radio_api.cpp \ - api/nat64_api.cpp \ - api/netdata_api.cpp \ - api/netdata_publisher_api.cpp \ - api/netdiag_api.cpp \ - api/network_time_api.cpp \ - api/ping_sender_api.cpp \ - api/radio_stats_api.cpp \ - api/random_crypto_api.cpp \ - api/random_noncrypto_api.cpp \ - api/server_api.cpp \ - api/sntp_api.cpp \ - api/srp_client_api.cpp \ - api/srp_client_buffers_api.cpp \ - api/srp_server_api.cpp \ - api/tasklet_api.cpp \ - api/tcp_api.cpp \ - api/tcp_ext_api.cpp \ - api/thread_api.cpp \ - api/thread_ftd_api.cpp \ - api/trel_api.cpp \ - api/udp_api.cpp \ - backbone_router/backbone_tmf.cpp \ - backbone_router/bbr_leader.cpp \ - backbone_router/bbr_local.cpp \ - backbone_router/bbr_manager.cpp \ - backbone_router/multicast_listeners_table.cpp \ - backbone_router/ndproxy_table.cpp \ - border_router/infra_if.cpp \ - border_router/routing_manager.cpp \ - coap/coap.cpp \ - coap/coap_message.cpp \ - coap/coap_secure.cpp \ - common/appender.cpp \ - common/binary_search.cpp \ - common/crc16.cpp \ - common/data.cpp \ - common/error.cpp \ - common/frame_builder.cpp \ - common/frame_data.cpp \ - common/heap.cpp \ - common/heap_data.cpp \ - common/heap_string.cpp \ - common/instance.cpp \ - common/log.cpp \ - common/message.cpp \ - common/notifier.cpp \ - common/preference.cpp \ - common/random.cpp \ - common/settings.cpp \ - common/string.cpp \ - common/tasklet.cpp \ - common/time_ticker.cpp \ - common/timer.cpp \ - common/tlvs.cpp \ - common/trickle_timer.cpp \ - common/uptime.cpp \ - crypto/aes_ccm.cpp \ - crypto/aes_ecb.cpp \ - crypto/crypto_platform.cpp \ - crypto/hkdf_sha256.cpp \ - crypto/hmac_sha256.cpp \ - crypto/mbedtls.cpp \ - crypto/sha256.cpp \ - crypto/storage.cpp \ - diags/factory_diags.cpp \ - mac/channel_mask.cpp \ - mac/data_poll_handler.cpp \ - mac/data_poll_sender.cpp \ - mac/link_raw.cpp \ - mac/mac.cpp \ - mac/mac_filter.cpp \ - mac/mac_frame.cpp \ - mac/mac_links.cpp \ - mac/mac_types.cpp \ - mac/sub_mac.cpp \ - mac/sub_mac_callbacks.cpp \ - meshcop/announce_begin_client.cpp \ - meshcop/border_agent.cpp \ - meshcop/commissioner.cpp \ - meshcop/dataset.cpp \ - meshcop/dataset_local.cpp \ - meshcop/dataset_manager.cpp \ - meshcop/dataset_manager_ftd.cpp \ - meshcop/dataset_updater.cpp \ - meshcop/dtls.cpp \ - meshcop/energy_scan_client.cpp \ - meshcop/extended_panid.cpp \ - meshcop/joiner.cpp \ - meshcop/joiner_router.cpp \ - meshcop/meshcop.cpp \ - meshcop/meshcop_leader.cpp \ - meshcop/meshcop_tlvs.cpp \ - meshcop/network_name.cpp \ - meshcop/panid_query_client.cpp \ - meshcop/timestamp.cpp \ - net/checksum.cpp \ - net/dhcp6_client.cpp \ - net/dhcp6_server.cpp \ - net/dns_client.cpp \ - net/dns_dso.cpp \ - net/dns_platform.cpp \ - net/dns_types.cpp \ - net/dnssd_server.cpp \ - net/icmp6.cpp \ - net/ip4_types.cpp \ - net/ip6.cpp \ - net/ip6_address.cpp \ - net/ip6_filter.cpp \ - net/ip6_headers.cpp \ - net/ip6_mpl.cpp \ - net/nat64_translator.cpp \ - net/nd6.cpp \ - net/nd_agent.cpp \ - net/netif.cpp \ - net/sntp_client.cpp \ - net/socket.cpp \ - net/srp_client.cpp \ - net/srp_server.cpp \ - net/tcp6.cpp \ - net/tcp6_ext.cpp \ - net/udp6.cpp \ - radio/radio.cpp \ - radio/radio_callbacks.cpp \ - radio/radio_platform.cpp \ - radio/trel_interface.cpp \ - radio/trel_link.cpp \ - radio/trel_packet.cpp \ - thread/address_resolver.cpp \ - thread/announce_begin_server.cpp \ - thread/announce_sender.cpp \ - thread/anycast_locator.cpp \ - thread/child_supervision.cpp \ - thread/child_table.cpp \ - thread/csl_tx_scheduler.cpp \ - thread/discover_scanner.cpp \ - thread/dua_manager.cpp \ - thread/energy_scan_server.cpp \ - thread/indirect_sender.cpp \ - thread/key_manager.cpp \ - thread/link_metrics.cpp \ - thread/link_metrics_types.cpp \ - thread/link_quality.cpp \ - thread/lowpan.cpp \ - thread/mesh_forwarder.cpp \ - thread/mesh_forwarder_ftd.cpp \ - thread/mesh_forwarder_mtd.cpp \ - thread/mle.cpp \ - thread/mle_router.cpp \ - thread/mle_tlvs.cpp \ - thread/mle_types.cpp \ - thread/mlr_manager.cpp \ - thread/neighbor_table.cpp \ - thread/network_data.cpp \ - thread/network_data_leader.cpp \ - thread/network_data_leader_ftd.cpp \ - thread/network_data_local.cpp \ - thread/network_data_notifier.cpp \ - thread/network_data_publisher.cpp \ - thread/network_data_service.cpp \ - thread/network_data_tlvs.cpp \ - thread/network_data_types.cpp \ - thread/network_diagnostic.cpp \ - thread/panid_query_server.cpp \ - thread/radio_selector.cpp \ - thread/router_table.cpp \ - thread/src_match_controller.cpp \ - thread/thread_netif.cpp \ - thread/time_sync_service.cpp \ - thread/tmf.cpp \ - thread/topology.cpp \ - thread/uri_paths.cpp \ - utils/channel_manager.cpp \ - utils/channel_monitor.cpp \ - utils/flash.cpp \ - utils/heap.cpp \ - utils/history_tracker.cpp \ - utils/jam_detector.cpp \ - utils/mesh_diag.cpp \ - utils/otns.cpp \ - utils/parse_cmdline.cpp \ - utils/ping_sender.cpp \ - utils/power_calibration.cpp \ - utils/slaac_address.cpp \ - utils/srp_client_buffers.cpp \ - $(NULL) - -RADIO_SOURCES_COMMON = \ - api/diags_api.cpp \ - api/error_api.cpp \ - api/instance_api.cpp \ - api/link_raw_api.cpp \ - api/logging_api.cpp \ - api/random_noncrypto_api.cpp \ - api/tasklet_api.cpp \ - common/binary_search.cpp \ - common/error.cpp \ - common/frame_builder.cpp \ - common/instance.cpp \ - common/log.cpp \ - common/random.cpp \ - common/string.cpp \ - common/tasklet.cpp \ - common/timer.cpp \ - common/uptime.cpp \ - crypto/aes_ccm.cpp \ - crypto/aes_ecb.cpp \ - crypto/crypto_platform.cpp \ - crypto/storage.cpp \ - diags/factory_diags.cpp \ - mac/link_raw.cpp \ - mac/mac_frame.cpp \ - mac/mac_types.cpp \ - mac/sub_mac.cpp \ - mac/sub_mac_callbacks.cpp \ - radio/radio.cpp \ - radio/radio_callbacks.cpp \ - radio/radio_platform.cpp \ - thread/link_quality.cpp \ - utils/parse_cmdline.cpp \ - utils/power_calibration.cpp \ - $(NULL) - -EXTRA_DIST = \ - common/extension_example.cpp \ - $(NULL) - -libopenthread_radio_a_SOURCES = \ - $(RADIO_SOURCES_COMMON) \ - $(NULL) - -libopenthread_radio_cli_a_SOURCES = \ - $(RADIO_SOURCES_COMMON) \ - $(NULL) - -libopenthread_mtd_a_SOURCES = \ - $(SOURCES_COMMON) \ - $(NULL) - -libopenthread_ftd_a_SOURCES = \ - $(SOURCES_COMMON) \ - $(NULL) - -if OPENTHREAD_ENABLE_VENDOR_EXTENSION - -.INTERMEDIATE: vendor_extension_temp.cpp -vendor_extension_temp.cpp: ${OPENTHREAD_VENDOR_EXTENSION_SOURCE} - $(AM_V_GEN)cp $< $@ - -# "nodist_" prefix tells automake not to include in 'make dist' - -nodist_libopenthread_ftd_a_SOURCES = \ - vendor_extension_temp.cpp \ - $(NULL) - -nodist_libopenthread_mtd_a_SOURCES = \ - vendor_extension_temp.cpp \ - $(NULL) - -nodist_libopenthread_radio_a_SOURCES = \ - vendor_extension_temp.cpp \ - $(NULL) - -nodist_libopenthread_radio_cli_a_SOURCES = \ - vendor_extension_temp.cpp \ - $(NULL) - -endif # OPENTHREAD_ENABLE_VENDOR_EXTENSION - -HEADERS_COMMON = \ - backbone_router/backbone_tmf.hpp \ - backbone_router/bbr_leader.hpp \ - backbone_router/bbr_local.hpp \ - backbone_router/bbr_manager.hpp \ - backbone_router/multicast_listeners_table.hpp \ - backbone_router/ndproxy_table.hpp \ - border_router/infra_if.hpp \ - border_router/routing_manager.hpp \ - coap/coap.hpp \ - coap/coap_message.hpp \ - coap/coap_secure.hpp \ - common/appender.hpp \ - common/arg_macros.hpp \ - common/array.hpp \ - common/as_core_type.hpp \ - common/binary_search.hpp \ - common/bit_vector.hpp \ - common/callback.hpp \ - common/clearable.hpp \ - common/code_utils.hpp \ - common/const_cast.hpp \ - common/crc16.hpp \ - common/data.hpp \ - common/debug.hpp \ - common/encoding.hpp \ - common/equatable.hpp \ - common/error.hpp \ - common/extension.hpp \ - common/frame_builder.hpp \ - common/frame_data.hpp \ - common/heap.hpp \ - common/heap_allocatable.hpp \ - common/heap_array.hpp \ - common/heap_data.hpp \ - common/heap_string.hpp \ - common/instance.hpp \ - common/iterator_utils.hpp \ - common/linked_list.hpp \ - common/locator.hpp \ - common/locator_getters.hpp \ - common/log.hpp \ - common/logging.hpp \ - common/message.hpp \ - common/new.hpp \ - common/non_copyable.hpp \ - common/notifier.hpp \ - common/num_utils.hpp \ - common/numeric_limits.hpp \ - common/owned_ptr.hpp \ - common/owning_list.hpp \ - common/pool.hpp \ - common/preference.hpp \ - common/ptr_wrapper.hpp \ - common/random.hpp \ - common/retain_ptr.hpp \ - common/serial_number.hpp \ - common/settings.hpp \ - common/settings_driver.hpp \ - common/string.hpp \ - common/tasklet.hpp \ - common/time.hpp \ - common/time_ticker.hpp \ - common/timer.hpp \ - common/tlvs.hpp \ - common/trickle_timer.hpp \ - common/type_traits.hpp \ - common/uptime.hpp \ - config/announce_sender.h \ - config/backbone_router.h \ - config/border_agent.h \ - config/border_router.h \ - config/border_routing.h \ - config/channel_manager.h \ - config/channel_monitor.h \ - config/child_supervision.h \ - config/coap.h \ - config/commissioner.h \ - config/crypto.h \ - config/dataset_updater.h \ - config/dhcp6_client.h \ - config/dhcp6_server.h \ - config/diag.h \ - config/dns_client.h \ - config/dns_dso.h \ - config/dnssd_server.h \ - config/dtls.h \ - config/history_tracker.h \ - config/ip6.h \ - config/joiner.h \ - config/link_quality.h \ - config/link_raw.h \ - config/logging.h \ - config/mac.h \ - config/mesh_diag.h \ - config/mesh_forwarder.h \ - config/misc.h \ - config/mle.h \ - config/nat64.h \ - config/netdata_publisher.h \ - config/network_diagnostic.h \ - config/openthread-core-config-check.h \ - config/parent_search.h \ - config/ping_sender.h \ - config/platform.h \ - config/power_calibration.h \ - config/radio_link.h \ - config/sntp_client.h \ - config/srp_client.h \ - config/srp_server.h \ - config/time_sync.h \ - config/tmf.h \ - crypto/aes_ccm.hpp \ - crypto/aes_ecb.hpp \ - crypto/context_size.hpp \ - crypto/ecdsa.hpp \ - crypto/hkdf_sha256.hpp \ - crypto/hmac_sha256.hpp \ - crypto/mbedtls.hpp \ - crypto/sha256.hpp \ - crypto/storage.hpp \ - diags/factory_diags.hpp \ - mac/channel_mask.hpp \ - mac/data_poll_handler.hpp \ - mac/data_poll_sender.hpp \ - mac/link_raw.hpp \ - mac/mac.hpp \ - mac/mac_filter.hpp \ - mac/mac_frame.hpp \ - mac/mac_links.hpp \ - mac/mac_types.hpp \ - mac/sub_mac.hpp \ - meshcop/announce_begin_client.hpp \ - meshcop/border_agent.hpp \ - meshcop/commissioner.hpp \ - meshcop/dataset.hpp \ - meshcop/dataset_local.hpp \ - meshcop/dataset_manager.hpp \ - meshcop/dataset_updater.hpp \ - meshcop/dtls.hpp \ - meshcop/energy_scan_client.hpp \ - meshcop/extended_panid.hpp \ - meshcop/joiner.hpp \ - meshcop/joiner_router.hpp \ - meshcop/meshcop.hpp \ - meshcop/meshcop_leader.hpp \ - meshcop/meshcop_tlvs.hpp \ - meshcop/network_name.hpp \ - meshcop/panid_query_client.hpp \ - meshcop/timestamp.hpp \ - net/checksum.hpp \ - net/dhcp6.hpp \ - net/dhcp6_client.hpp \ - net/dhcp6_server.hpp \ - net/dns_client.hpp \ - net/dns_dso.hpp \ - net/dns_types.hpp \ - net/dnssd_server.hpp \ - net/icmp6.hpp \ - net/ip4_types.hpp \ - net/ip6.hpp \ - net/ip6_address.hpp \ - net/ip6_filter.hpp \ - net/ip6_headers.hpp \ - net/ip6_mpl.hpp \ - net/ip6_types.hpp \ - net/nat64_translator.hpp \ - net/nd6.hpp \ - net/nd_agent.hpp \ - net/netif.hpp \ - net/sntp_client.hpp \ - net/socket.hpp \ - net/srp_client.hpp \ - net/srp_server.hpp \ - net/tcp6.hpp \ - net/tcp6_ext.hpp \ - net/udp6.hpp \ - openthread-core-config.h \ - radio/max_power_table.hpp \ - radio/radio.hpp \ - radio/trel_interface.hpp \ - radio/trel_link.hpp \ - radio/trel_packet.hpp \ - thread/address_resolver.hpp \ - thread/announce_begin_server.hpp \ - thread/announce_sender.hpp \ - thread/anycast_locator.hpp \ - thread/child_mask.hpp \ - thread/child_supervision.hpp \ - thread/child_table.hpp \ - thread/csl_tx_scheduler.hpp \ - thread/discover_scanner.hpp \ - thread/dua_manager.hpp \ - thread/energy_scan_server.hpp \ - thread/indirect_sender.hpp \ - thread/indirect_sender_frame_context.hpp \ - thread/key_manager.hpp \ - thread/link_metrics.hpp \ - thread/link_metrics_tlvs.hpp \ - thread/link_metrics_types.hpp \ - thread/link_quality.hpp \ - thread/lowpan.hpp \ - thread/mesh_forwarder.hpp \ - thread/mle.hpp \ - thread/mle_router.hpp \ - thread/mle_tlvs.hpp \ - thread/mle_types.hpp \ - thread/mlr_manager.hpp \ - thread/mlr_types.hpp \ - thread/neighbor_table.hpp \ - thread/network_data.hpp \ - thread/network_data_leader.hpp \ - thread/network_data_leader_ftd.hpp \ - thread/network_data_local.hpp \ - thread/network_data_notifier.hpp \ - thread/network_data_publisher.hpp \ - thread/network_data_service.hpp \ - thread/network_data_tlvs.hpp \ - thread/network_data_types.hpp \ - thread/network_diagnostic.hpp \ - thread/network_diagnostic_tlvs.hpp \ - thread/panid_query_server.hpp \ - thread/radio_selector.hpp \ - thread/router_table.hpp \ - thread/src_match_controller.hpp \ - thread/thread_netif.hpp \ - thread/thread_tlvs.hpp \ - thread/time_sync_service.hpp \ - thread/tmf.hpp \ - thread/topology.hpp \ - thread/uri_paths.hpp \ - thread/version.hpp \ - utils/channel_manager.hpp \ - utils/channel_monitor.hpp \ - utils/flash.hpp \ - utils/heap.hpp \ - utils/history_tracker.hpp \ - utils/jam_detector.hpp \ - utils/mesh_diag.hpp \ - utils/otns.hpp \ - utils/parse_cmdline.hpp \ - utils/ping_sender.hpp \ - utils/power_calibration.hpp \ - utils/slaac_address.hpp \ - utils/srp_client_buffers.hpp \ - $(NULL) - -noinst_HEADERS = \ - $(HEADERS_COMMON) \ - $(NULL) - -if OPENTHREAD_BUILD_COVERAGE -Dash = - -CLEANFILES = $(shell find $(top_builddir)/src/core $(Dash)name "*.gcda" $(Dash)o $(Dash)name "*.gcno") -endif - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am deleted file mode 100644 index 112372cda..000000000 --- a/src/lib/Makefile.am +++ /dev/null @@ -1,41 +0,0 @@ -# -# Copyright (c) 2020, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am - -SUBDIRS = \ - hdlc \ - platform \ - spinel \ - $(NULL) - -if OPENTHREAD_PLATFORM_POSIX -SUBDIRS += url -endif - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/src/lib/hdlc/Makefile.am b/src/lib/hdlc/Makefile.am deleted file mode 100644 index b908f591b..000000000 --- a/src/lib/hdlc/Makefile.am +++ /dev/null @@ -1,44 +0,0 @@ -# -# Copyright (c) 2020, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am - -noinst_LIBRARIES = libopenthread-hdlc.a - -libopenthread_hdlc_a_CPPFLAGS = \ - -I$(top_srcdir)/include \ - -I$(top_srcdir)/src \ - -I$(top_srcdir)/src/core \ - $(NULL) - -libopenthread_hdlc_a_SOURCES = \ - hdlc.cpp \ - hdlc.hpp \ - $(NULL) - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/src/lib/platform/Makefile.am b/src/lib/platform/Makefile.am deleted file mode 100644 index eb8d139fa..000000000 --- a/src/lib/platform/Makefile.am +++ /dev/null @@ -1,47 +0,0 @@ -# -# Copyright (c) 2020, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am - -noinst_LIBRARIES = libopenthread-platform.a - -libopenthread_platform_a_CPPFLAGS = \ - -I$(top_srcdir)/include \ - -I$(top_srcdir)/src/core \ - $(NULL) - -libopenthread_platform_a_SOURCES = \ - exit_code.c \ - exit_code.h \ - $(NULL) - -noinst_HEADERS = \ - reset_util.h \ - $(NULL) - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/src/lib/spinel/Makefile.am b/src/lib/spinel/Makefile.am deleted file mode 100644 index b8fe68db5..000000000 --- a/src/lib/spinel/Makefile.am +++ /dev/null @@ -1,111 +0,0 @@ -# -# Copyright (c) 2020, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am - -noinst_LIBRARIES = - -if OPENTHREAD_ENABLE_FTD -noinst_LIBRARIES += libopenthread-spinel-ncp.a -endif - -if OPENTHREAD_ENABLE_MTD -noinst_LIBRARIES += libopenthread-spinel-ncp.a -endif - -if OPENTHREAD_ENABLE_SPINEL_RCP -noinst_LIBRARIES += libopenthread-spinel-rcp.a -endif - -COMMON_CPPFLAGS = \ - -I$(top_srcdir)/include \ - -I$(top_srcdir)/src \ - -I$(top_srcdir)/src/core \ - -I$(top_srcdir)/third_party \ - -D_GNU_SOURCE \ - -DSPINEL_PLATFORM_HEADER=\"spinel_platform.h\" \ - $(OPENTHREAD_TARGET_DEFINES) \ - $(NULL) - -COMMON_SOURCES = \ - spinel.c \ - spinel_buffer.cpp \ - spinel_decoder.cpp \ - spinel_encoder.cpp \ - $(NULL) - -ot_spinel_headers = \ - spinel.h \ - $(NULL) - -ot_spineldir = $(includedir)/spinel -dist_ot_spinel_HEADERS = $(ot_spinel_headers) - -include_HEADERS = \ - $(NULL) - -noinst_HEADERS = \ - multi_frame_buffer.hpp \ - radio_spinel.hpp \ - radio_spinel_impl.hpp \ - spi_frame.hpp \ - spinel_buffer.hpp \ - spinel_decoder.hpp \ - spinel_encoder.hpp \ - spinel_platform.h \ - openthread-spinel-config.h \ - $(NULL) - -libopenthread_spinel_ncp_a_CPPFLAGS = \ - -DOPENTHREAD_SPINEL_CONFIG_OPENTHREAD_MESSAGE_ENABLE=1 \ - $(COMMON_CPPFLAGS) \ - $(NULL) - -libopenthread_spinel_ncp_a_SOURCES = \ - $(COMMON_SOURCES) \ - $(NULL) - -libopenthread_spinel_rcp_a_CPPFLAGS = \ - -DOPENTHREAD_SPINEL_CONFIG_OPENTHREAD_MESSAGE_ENABLE=0 \ - $(COMMON_CPPFLAGS) \ - $(NULL) - -libopenthread_spinel_rcp_a_SOURCES = \ - $(COMMON_SOURCES) \ - $(NULL) - -if OPENTHREAD_BUILD_TESTS - -install-headers: install-includeHEADERS - -if OPENTHREAD_BUILD_COVERAGE -CLEANFILES = $(wildcard *.gcda *.gcno) -endif # OPENTHREAD_BUILD_COVERAGE -endif # OPENTHREAD_BUILD_TESTS - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/src/lib/url/Makefile.am b/src/lib/url/Makefile.am deleted file mode 100644 index d90e96e75..000000000 --- a/src/lib/url/Makefile.am +++ /dev/null @@ -1,44 +0,0 @@ -# -# Copyright (c) 2020, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am - -noinst_LIBRARIES = libopenthread-url.a - -libopenthread_url_a_CPPFLAGS = \ - -I$(top_srcdir)/include \ - -I$(top_srcdir)/src \ - -I$(top_srcdir)/src/core \ - $(NULL) - -libopenthread_url_a_SOURCES = \ - url.cpp \ - url.hpp \ - $(NULL) - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/src/ncp/Makefile.am b/src/ncp/Makefile.am deleted file mode 100644 index 7203906b3..000000000 --- a/src/ncp/Makefile.am +++ /dev/null @@ -1,153 +0,0 @@ -# -# Copyright (c) 2016, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am -include $(top_srcdir)/src/lib/common.am - -EXTRA_DIST = \ - example_vendor_hook.cpp \ - $(NULL) - -# Pull in the sources that comprise the OpenThread NCP library. - -lib_LIBRARIES = $(NULL) - -if OPENTHREAD_ENABLE_NCP -if OPENTHREAD_ENABLE_FTD -lib_LIBRARIES += libopenthread-ncp-ftd.a -endif - -if OPENTHREAD_ENABLE_MTD -lib_LIBRARIES += libopenthread-ncp-mtd.a -endif -endif - -if OPENTHREAD_ENABLE_RADIO_ONLY -lib_LIBRARIES += libopenthread-rcp.a -endif - -COMMON_CPPFLAGS = \ - -I$(top_srcdir)/include \ - -I$(top_srcdir)/src \ - -I$(top_srcdir)/src/core \ - -I$(top_srcdir)/third_party \ - -D_GNU_SOURCE \ - -DSPINEL_PLATFORM_HEADER=\"spinel_platform.h\" \ - $(OPENTHREAD_TARGET_DEFINES) \ - $(NULL) - -libopenthread_ncp_mtd_a_CPPFLAGS = \ - -DOPENTHREAD_RADIO=0 \ - -DOPENTHREAD_FTD=0 \ - -DOPENTHREAD_MTD=1 \ - -DOPENTHREAD_SPINEL_CONFIG_OPENTHREAD_MESSAGE_ENABLE=1 \ - $(COMMON_CPPFLAGS) \ - $(NULL) - -libopenthread_ncp_ftd_a_CPPFLAGS = \ - -DOPENTHREAD_RADIO=0 \ - -DOPENTHREAD_FTD=1 \ - -DOPENTHREAD_MTD=0 \ - -DOPENTHREAD_SPINEL_CONFIG_OPENTHREAD_MESSAGE_ENABLE=1 \ - $(COMMON_CPPFLAGS) \ - $(NULL) - -libopenthread_rcp_a_CPPFLAGS = \ - -DOPENTHREAD_RADIO=1 \ - -DOPENTHREAD_RADIO_CLI=0 \ - -DOPENTHREAD_FTD=0 \ - -DOPENTHREAD_MTD=0 \ - -DOPENTHREAD_SPINEL_CONFIG_OPENTHREAD_MESSAGE_ENABLE=0 \ - $(COMMON_CPPFLAGS) \ - $(NULL) - -libopenthread_ncp_mtd_a_LIBADD = \ - $(call ot_list_objects,$(top_builddir)/src/lib/hdlc/libopenthread-hdlc.a) \ - $(call ot_list_objects,$(top_builddir)/src/lib/spinel/libopenthread-spinel-ncp.a) \ - $(NULL) - -libopenthread_ncp_ftd_a_LIBADD = \ - $(call ot_list_objects,$(top_builddir)/src/lib/hdlc/libopenthread-hdlc.a ) \ - $(call ot_list_objects,$(top_builddir)/src/lib/spinel/libopenthread-spinel-ncp.a) \ - $(NULL) - -libopenthread_rcp_a_LIBADD = \ - $(call ot_list_objects,$(top_builddir)/src/lib/hdlc/libopenthread-hdlc.a) \ - $(call ot_list_objects,$(top_builddir)/src/lib/spinel/libopenthread-spinel-rcp.a) \ - $(NULL) - -COMMON_SOURCES = \ - changed_props_set.cpp \ - changed_props_set.hpp \ - ncp_base.cpp \ - ncp_base.hpp \ - ncp_base_ftd.cpp \ - ncp_base_mtd.cpp \ - ncp_base_radio.cpp \ - ncp_base_dispatcher.cpp \ - ncp_config.h \ - ncp_spi.cpp \ - ncp_spi.hpp \ - ncp_hdlc.cpp \ - ncp_hdlc.hpp \ - $(NULL) - -if OPENTHREAD_ENABLE_NCP_VENDOR_HOOK - -.INTERMEDIATE: ncp_vendor_hook_temp.cpp -ncp_vendor_hook_temp.cpp: ${OPENTHREAD_NCP_VENDOR_HOOK_SOURCE} - $(AM_V_GEN)cp $< $@ - -# "nodist_" prefix tells automake not to include in 'make dist' -nodist_libopenthread_ncp_mtd_a_SOURCES = \ - ncp_vendor_hook_temp.cpp \ - $(NULL) - -# "nodist_" prefix tells automake not to include in 'make dist' -nodist_libopenthread_ncp_ftd_a_SOURCES = \ - ncp_vendor_hook_temp.cpp \ - $(NULL) - -endif # if OPENTHREAD_ENABLE_NCP_VENDOR_HOOK - -libopenthread_ncp_mtd_a_SOURCES = \ - $(COMMON_SOURCES) \ - $(NULL) - -libopenthread_ncp_ftd_a_SOURCES = \ - $(COMMON_SOURCES) \ - $(NULL) - -libopenthread_rcp_a_SOURCES = \ - $(COMMON_SOURCES) \ - $(NULL) - -include_HEADERS = \ - $(NULL) - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/src/posix/Makefile-posix b/src/posix/Makefile-posix deleted file mode 100644 index 7fe9722de..000000000 --- a/src/posix/Makefile-posix +++ /dev/null @@ -1,362 +0,0 @@ -# -# Copyright (c) 2016, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -# Don't allow this top-level makefile's targets to be built in parallel. - -.NOTPARALLEL: - -COVERAGE ?= 0 -DEBUG ?= 0 - -# Enable most features by default to cover most code - -ANYCAST_LOCATOR ?= 1 -BORDER_AGENT ?= 1 -BORDER_ROUTER ?= 1 -COAP ?= 1 -COAP_OBSERVE ?= 1 -COAPS ?= 1 -COMMISSIONER ?= 1 -CHANNEL_MANAGER ?= 1 -CHANNEL_MONITOR ?= 1 -DAEMON ?= 0 -DATASET_UPDATER ?= 1 -DHCP6_CLIENT ?= 1 -DHCP6_SERVER ?= 1 -DIAGNOSTIC ?= 1 -DNS_CLIENT ?= 1 -DNSSD_SERVER ?= 1 -DYNAMIC_LOG_LEVEL ?= 1 -ECDSA ?= 1 -HISTORY_TRACKER ?= 1 -IP6_FRAGM ?= 1 -JAM_DETECTION ?= 1 -JOINER ?= 1 -LINK_RAW ?= 0 -LOG_OUTPUT ?= PLATFORM_DEFINED -MAC_FILTER ?= 1 -MAX_POWER_TABLE ?= 1 -NEIGHBOR_DISCOVERY_AGENT ?= 1 -NETDATA_PUBLISHER ?= 1 -NETDIAG_CLIENT ?= 1 -PING_SENDER ?= 1 -READLINE ?= readline -REFERENCE_DEVICE ?= 1 -SERVICE ?= 1 -SNTP_CLIENT ?= 1 -SRP_CLIENT ?= 1 -SRP_SERVER ?= 1 -ifneq ($(DAEMON),1) -UDP_FORWARD ?= 1 -endif -UPTIME ?= 1 - -COMMONCFLAGS := \ - -g \ - $(NULL) - -# If the user has asserted COVERAGE, alter the configuration options -# accordingly. - -configure_OPTIONS = \ - --enable-cli \ - --enable-ftd \ - --with-platform=posix \ - $(NULL) - -# Platform specific switches - -ifeq ($(DAEMON),1) -configure_OPTIONS += --enable-posix-daemon -endif - -ifneq ($(DEBUG),1) -COMMONCFLAGS += \ - -O2 \ - $(NULL) -endif - -ifneq ($(HOST),) -configure_OPTIONS += --host=$(HOST) -endif - -ifeq ($(MAX_POWER_TABLE),1) -COMMONCFLAGS += -DOPENTHREAD_POSIX_CONFIG_MAX_POWER_TABLE_ENABLE=1 -endif - -ifeq ($(PLATFORM_NETIF),1) -COMMONCFLAGS += -DOPENTHREAD_CONFIG_PLATFORM_NETIF_ENABLE=1 -endif - -ifneq ($(READLINE),) -configure_OPTIONS += --with-readline=$(READLINE) -endif - -ifeq ($(RCP_BUS),spi) -COMMONCFLAGS += -DOPENTHREAD_POSIX_CONFIG_RCP_BUS=OT_POSIX_RCP_BUS_SPI -else -COMMONCFLAGS += -DOPENTHREAD_POSIX_CONFIG_RCP_BUS=OT_POSIX_RCP_BUS_UART -endif - -ifeq ($(VIRTUAL_TIME),1) -COMMONCFLAGS += -DOPENTHREAD_POSIX_VIRTUAL_TIME=1 -endif - -include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/../../examples/common-switches.mk - -CPPFLAGS += \ - $(COMMONCFLAGS) \ - $(NULL) - -CFLAGS += \ - $(COMMONCFLAGS) \ - $(NULL) - -CXXFLAGS += \ - $(COMMONCFLAGS) \ - $(NULL) - -LDFLAGS += \ - $(COMMONCFLAGS) \ - -rdynamic \ - $(NULL) - -TopSourceDir := $(dir $(shell readlink $(firstword $(MAKEFILE_LIST))))../.. -AbsTopSourceDir := $(dir $(realpath $(firstword $(MAKEFILE_LIST))))../.. - -CONFIG_FILE = OPENTHREAD_PROJECT_CORE_CONFIG_FILE='\"openthread-core-posix-config.h\"' -CONFIG_FILE_PATH = $(AbsTopSourceDir)/src/posix/platform -COMMONCFLAGS += \ - -D$(CONFIG_FILE) \ - -I$(CONFIG_FILE_PATH) \ - -ECHO := @echo -INSTALL := /usr/bin/install -INSTALLFLAGS := -p -LN_S := ln -s -MAKE := make -MKDIR_P := mkdir -p -RM_F := rm -f - -BuildJobs ?= 10 -BuildPath = build -TopBuildDir = $(BuildPath) -AbsTopBuildDir = $(PWD)/$(TopBuildDir) - -ResultPath = output -TopResultDir = $(ResultPath) -AbsTopResultDir = $(PWD)/$(TopResultDir) - -TargetTuple = posix - -ifndef BuildJobs -BuildJobs := $(shell getconf _NPROCESSORS_ONLN) -endif -JOBSFLAG := -j$(BuildJobs) - -# -# configure-arch -# -# Configure OpenThread for the specified target. -# -# target - The target to configure. -# -define configure-target -$(ECHO) " CONFIG $(1)..." -(cd $(BuildPath)/$(1) && $(AbsTopSourceDir)/configure \ -INSTALL="$(INSTALL) $(INSTALLFLAGS)" \ -CPPFLAGS="$(CPPFLAGS)" CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" LDFLAGS="$(LDFLAGS)" \ ---prefix=/ \ ---exec-prefix=/$(1) \ -$(configure_OPTIONS)) -endef # configure-target - -# -# build-target -# -# Build the OpenThread intermediate build products for the specified -# target. -# -# target - The target to build. -# -define build-target -$(ECHO) " BUILD $(1)" -$(MAKE) $(JOBSFLAG) -C $(BuildPath)/$(1) --no-print-directory \ -all -endef # build-target - -# -# check-target -# -# Check (run unit tests) OpenThread for the specified target. -# -# target - The target to check. -# -define check-target -$(ECHO) " CHECK $(1)" -$(MAKE) $(JOBSFLAG) -C $(BuildPath)/$(1) --no-print-directory \ -check -endef # check-target - -# -# distcheck-target -# -# Check (run unit tests) OpenThread for the specified target. -# -# target - The target to distcheck. -# -define distcheck-target -$(ECHO) " DISTCHECK $(1)" -$(MAKE) $(JOBSFLAG) -C $(BuildPath)/$(1) --no-print-directory \ -distcheck -endef # distcheck-target - -# -# coverage-target -# -# Generate code coverage from unit tests for OpenThread for the -# specified target. -# -# target - The target to generate code coverage for. -# -define coverage-target -$(ECHO) " COVERAGE $(1)" -$(MAKE) $(JOBSFLAG) -C $(BuildPath)/$(1) --no-print-directory \ -coverage -endef # coverage-target - -# -# stage-target -# -# Stage (install) the OpenThread final build products for the specified -# target. -# -# target - The target to stage. -# -define stage-target -$(ECHO) " STAGE $(1)" -$(MAKE) $(JOBSFLAG) -C $(BuildPath)/$(1) --no-print-directory \ -DESTDIR=$(AbsTopResultDir) \ -install -endef # stage-target - -# -# TARGET_template -# -# Define macros, targets and rules to configure, build, and stage -# OpenThread for a single target. -# -# target - The target to instantiate the template for. -# -define TARGET_template -CONFIGURE_TARGETS += configure-$(1) -BUILD_TARGETS += do-build-$(1) -CHECK_TARGETS += check-$(1) -DISTCHECK_TARGETS += distcheck-$(1) -COVERAGE_TARGETS += coverage-$(1) -STAGE_TARGETS += stage-$(1) -BUILD_DIRS += $(BuildPath)/$(1) -DIRECTORIES += $(BuildPath)/$(1) - -configure-$(1): $(BuildPath)/$(1)/config.status - -$(BuildPath)/$(1)/config.status: | $(BuildPath)/$(1) - $$(call configure-target,$(1)) - -do-build-$(1): configure-$(1) - -do-build-$(1): - +$$(call build-target,$(1)) - -check-$(1): do-build-$(1) - -check-$(1): - +$$(call check-target,$(1)) - -distcheck-$(1): do-build-$(1) - -distcheck-$(1): - +$$(call distcheck-target,$(1)) - -coverage-$(1): do-build-$(1) - -coverage-$(1): - +$$(call coverage-target,$(1)) - -stage-$(1): do-build-$(1) - -stage-$(1): | $(TopResultDir) - $$(call stage-target,$(1)) - -$(1): stage-$(1) -endef # TARGET_template - -.DEFAULT_GOAL := all - -all: stage - -# Instantiate an target-specific build template for the target. - -$(eval $(call TARGET_template,$(TargetTuple))) - -# -# Common / Finalization -# - -configure: $(CONFIGURE_TARGETS) - -build: $(BUILD_TARGETS) - -check: $(CHECK_TARGETS) - -distcheck: $(DISTCHECK_TARGETS) - -coverage: $(COVERAGE_TARGETS) - -stage: $(STAGE_TARGETS) - -DIRECTORIES = $(TopResultDir) $(TopResultDir)/$(TargetTuple)/lib $(BUILD_DIRS) - -CLEAN_DIRS = $(TopResultDir) $(BUILD_DIRS) - -all: stage - -$(DIRECTORIES): - $(ECHO) " MKDIR $@" - @$(MKDIR_P) "$@" - -clean: - $(ECHO) " CLEAN" - @$(RM_F) -r $(CLEAN_DIRS) - -help: - $(ECHO) "Simply type 'make -f $(firstword $(MAKEFILE_LIST))' to build OpenThread for the following " - $(ECHO) "target:" - $(ECHO) "" - $(ECHO) " $(TargetTuple)" - $(ECHO) "" diff --git a/src/posix/Makefile.am b/src/posix/Makefile.am deleted file mode 100644 index c0a076660..000000000 --- a/src/posix/Makefile.am +++ /dev/null @@ -1,170 +0,0 @@ -# -# Copyright (c) 2018, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am - -# Always package (e.g. for 'make dist') these subdirectories. - -DIST_SUBDIRS = \ - platform \ - $(NULL) - -# Always build (e.g. for 'make all') these subdirectories. - -SUBDIRS = \ - platform \ - $(NULL) - -CPPFLAGS_COMMON = \ - -I$(top_srcdir)/include \ - -I$(top_srcdir)/src/ \ - -I$(top_srcdir)/src/core \ - -I$(top_srcdir)/src/posix/platform \ - -I$(top_srcdir)/src/posix/platform/include \ - -D_GNU_SOURCE \ - -DOPENTHREAD_FTD=1 \ - -DOPENTHREAD_MTD=0 \ - -DOPENTHREAD_RADIO=0 \ - $(NULL) - -LIBTOOLFLAGS_COMMON = --preserve-dup-deps - -LDADD_COMMON = \ - $(top_builddir)/src/posix/platform/libopenthread-posix.a \ - -lutil \ - $(top_builddir)/third_party/tcplp/libtcplp.a \ - $(NULL) - -if OPENTHREAD_TARGET_LINUX -LDADD_COMMON += \ - -lanl \ - -lrt \ - $(NULL) -endif - -if OPENTHREAD_ENABLE_BUILTIN_MBEDTLS -LDADD_COMMON += \ - $(top_builddir)/third_party/mbedtls/libmbedcrypto.a \ - $(NULL) -endif # OPENTHREAD_ENABLE_BUILTIN_MBEDTLS - -bin_PROGRAMS = \ - $(NULL) - -if OPENTHREAD_ENABLE_EXECUTABLE -if OPENTHREAD_POSIX_CONFIG_DAEMON_ENABLE -bin_PROGRAMS += \ - ot-ctl \ - ot-daemon \ - $(NULL) -else # OPENTHREAD_POSIX_CONFIG_DAEMON_ENABLE -if OPENTHREAD_ENABLE_CLI -bin_PROGRAMS += \ - ot-cli \ - $(NULL) -endif -endif # OPENTHREAD_POSIX_CONFIG_DAEMON_ENABLE - -ot_ctl_SOURCES = \ - client.cpp \ - $(NULL) - -ot_ctl_CPPFLAGS = \ - $(CPPFLAGS_COMMON) \ - $(NULL) - -ot_daemon_CPPFLAGS = \ - $(CPPFLAGS_COMMON) \ - $(NULL) - -ot_daemon_SOURCES = \ - main.c \ - $(NULL) - -ot_daemon_LDADD = \ - $(top_builddir)/src/cli/libopenthread-cli-ftd.a \ - $(top_builddir)/src/core/libopenthread-ftd.a \ - $(LDADD_COMMON) \ - $(top_builddir)/src/cli/libopenthread-cli-ftd.a \ - $(top_builddir)/src/core/libopenthread-ftd.a \ - $(top_builddir)/src/lib/spinel/libopenthread-spinel-rcp.a \ - $(top_builddir)/src/lib/hdlc/libopenthread-hdlc.a \ - $(LDADD_COMMON) \ - $(NULL) - -ot_daemon_LDFLAGS = \ - $(LDFLAGS_COMMON) \ - $(NULL) - -ot_daemon_LIBTOOLFLAGS = \ - $(LIBTOOLFLAGS_COMMON) \ - $(NULL) - -ot_cli_CPPFLAGS = \ - $(CPPFLAGS_COMMON) \ - $(NULL) - -ot_cli_SOURCES = \ - main.c \ - cli_readline.cpp \ - cli_stdio.cpp \ - $(NULL) - -ot_cli_LDADD = \ - $(top_builddir)/src/cli/libopenthread-cli-ftd.a \ - $(top_builddir)/src/core/libopenthread-ftd.a \ - $(LDADD_COMMON) \ - $(top_builddir)/src/cli/libopenthread-cli-ftd.a \ - $(top_builddir)/src/core/libopenthread-ftd.a \ - $(top_builddir)/src/lib/spinel/libopenthread-spinel-rcp.a \ - $(top_builddir)/src/lib/hdlc/libopenthread-hdlc.a \ - $(LDADD_COMMON) \ - $(NULL) - -ot_cli_LDFLAGS = \ - $(LDFLAGS_COMMON) \ - $(NULL) - -ot_cli_LIBTOOLFLAGS = \ - $(LIBTOOLFLAGS_COMMON) \ - $(NULL) - -if OPENTHREAD_ENABLE_LINKER_MAP -ot_cli_LDFLAGS += -Wl,-Map=ot-cli-mtd.map -endif - -if OPENTHREAD_BUILD_COVERAGE -CPPFLAGS_COMMON += \ - -DOPENTHREAD_ENABLE_COVERAGE \ - $(NULL) - -CLEANFILES = $(wildcard *.gcda *.gcno) -endif # OPENTHREAD_BUILD_COVERAGE -endif # OPENTHREAD_ENABLE_EXECUTABLE - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/src/posix/platform/Makefile.am b/src/posix/platform/Makefile.am deleted file mode 100644 index ae5102306..000000000 --- a/src/posix/platform/Makefile.am +++ /dev/null @@ -1,101 +0,0 @@ -# -# Copyright (c) 2016-2018, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am -include $(top_srcdir)/src/lib/common.am - -lib_LIBRARIES = libopenthread-posix.a - -libopenthread_posix_a_CPPFLAGS = \ - -I$(top_srcdir)/include \ - -I$(top_srcdir)/src \ - -I$(top_srcdir)/src/core \ - -I$(top_srcdir)/src/posix/platform \ - -I$(top_srcdir)/src/posix/platform/include \ - -D_GNU_SOURCE \ - -DOPENTHREAD_FTD=1 \ - -DOPENTHREAD_MTD=0 \ - -DOPENTHREAD_RADIO=0 \ - $(NULL) - -libopenthread_posix_a_SOURCES = \ - alarm.cpp \ - backbone.cpp \ - backtrace.cpp \ - config_file.cpp \ - daemon.cpp \ - entropy.cpp \ - firewall.cpp \ - hdlc_interface.cpp \ - infra_if.cpp \ - logging.cpp \ - mainloop.cpp \ - memory.cpp \ - misc.cpp \ - multicast_routing.cpp \ - netif.cpp \ - power.cpp \ - power_updater.cpp \ - radio.cpp \ - resolver.cpp \ - radio_url.cpp \ - settings.cpp \ - spi_interface.cpp \ - system.cpp \ - trel.cpp \ - udp.cpp \ - utils.cpp \ - virtual_time.cpp \ - $(NULL) - -libopenthread_posix_a_LIBADD = \ - $(call ot_list_objects,$(top_builddir)/src/lib/url/libopenthread-url.a) \ - $(call ot_list_objects,$(top_builddir)/src/lib/platform/libopenthread-platform.a) \ - $(NULL) - -noinst_HEADERS = \ - hdlc_interface.hpp \ - mainloop.hpp \ - multicast_routing.hpp \ - openthread-posix-config.h \ - platform-posix.h \ - radio_url.hpp \ - $(NULL) - -openthread_HEADERS = \ - include/openthread/openthread-system.h \ - $(NULL) - -openthreaddir = $(includedir)/openthread -dist_openthread_HEADERS = $(openthread_headers) - -if OPENTHREAD_BUILD_COVERAGE -CLEANFILES = $(wildcard *.gcda *.gcno) -endif # OPENTHREAD_BUILD_COVERAGE - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/tests/Makefile.am b/tests/Makefile.am deleted file mode 100644 index 462f908b1..000000000 --- a/tests/Makefile.am +++ /dev/null @@ -1,46 +0,0 @@ -# -# Copyright (c) 2016, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am - -# Always package (e.g. for 'make dist') these subdirectories. - -DIST_SUBDIRS = \ - fuzz \ - $(NULL) - -# Always build (e.g. for 'make all') these subdirectories. - -SUBDIRS = \ - $(NULL) - -if OPENTHREAD_ENABLE_FUZZ_TARGETS -SUBDIRS += fuzz -endif - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/tests/fuzz/Makefile.am b/tests/fuzz/Makefile.am deleted file mode 100644 index a0c4384b4..000000000 --- a/tests/fuzz/Makefile.am +++ /dev/null @@ -1,93 +0,0 @@ -# -# Copyright (c) 2017, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am - -bin_PROGRAMS = \ - ot-cli-received-fuzzer \ - ot-ip6-send-fuzzer \ - ot-radio-receive-done-fuzzer \ - ot-ncp-hdlc-received-fuzzer \ - $(NULL) - -AM_CPPFLAGS = \ - -I$(top_srcdir)/include \ - -I$(top_srcdir)/src/core \ - $(NULL) - -COMMON_LDADD = \ - $(top_builddir)/src/core/libopenthread-ftd.a \ - $(top_builddir)/third_party/mbedtls/libmbedcrypto.a \ - $(top_builddir)/third_party/tcplp/libtcplp.a \ - $(LIB_FUZZING_ENGINE) \ - $(NULL) - -COMMON_SOURCES = \ - fuzzer_platform.cpp \ - fuzzer_platform.h \ - $(NULL) - -ot_cli_received_fuzzer_LDADD = \ - $(top_builddir)/src/cli/libopenthread-cli-ftd.a \ - $(COMMON_LDADD) \ - $(NULL) - -ot_cli_received_fuzzer_SOURCES = \ - $(COMMON_SOURCES) \ - cli_received.cpp \ - $(NULL) - -ot_ip6_send_fuzzer_LDADD = \ - $(COMMON_LDADD) \ - $(NULL) - -ot_ip6_send_fuzzer_SOURCES = \ - $(COMMON_SOURCES) \ - ip6_send.cpp \ - $(NULL) - -ot_radio_receive_done_fuzzer_LDADD = \ - $(COMMON_LDADD) \ - $(NULL) - -ot_radio_receive_done_fuzzer_SOURCES = \ - $(COMMON_SOURCES) \ - radio_receive_done.cpp \ - $(NULL) - -ot_ncp_hdlc_received_fuzzer_LDADD = \ - $(top_builddir)/src/ncp/libopenthread-ncp-ftd.a \ - $(COMMON_LDADD) \ - $(NULL) - -ot_ncp_hdlc_received_fuzzer_SOURCES = \ - $(COMMON_SOURCES) \ - ncp_hdlc_received.cpp \ - $(NULL) - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/third_party/Makefile.am b/third_party/Makefile.am deleted file mode 100644 index 825f6e846..000000000 --- a/third_party/Makefile.am +++ /dev/null @@ -1,53 +0,0 @@ -# -# Copyright (c) 2016, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am - -EXTRA_DIST = \ - nlbuild-autotools \ - $(NULL) - -# Always package (e.g. for 'make dist') these subdirectories. - -DIST_SUBDIRS = \ - jlink \ - mbedtls \ - tcplp \ - $(NULL) - -SUBDIRS = \ - tcplp \ - $(NULL) - -if OPENTHREAD_ENABLE_BUILTIN_MBEDTLS -SUBDIRS += \ - mbedtls \ - $(NULL) -endif # OPENTHREAD_ENABLE_BUILTIN_MBEDTLS - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/third_party/jlink/Makefile.am b/third_party/jlink/Makefile.am deleted file mode 100644 index 883eed005..000000000 --- a/third_party/jlink/Makefile.am +++ /dev/null @@ -1,54 +0,0 @@ -# -# Copyright (c) 2018, The OpenThread Authors. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of the copyright holder nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre.am - -# Do not enable -Wundef for jlink library -override CFLAGS := $(filter-out -Wundef,$(CFLAGS)) -override CXXFLAGS := $(filter-out -Wundef,$(CXXFLAGS)) - -# Do not enable -Wcast-align for jlink library -override CFLAGS := $(filter-out -Wcast-align,$(CFLAGS)) -override CXXFLAGS := $(filter-out -Wcast-align,$(CXXFLAGS)) - -lib_LIBRARIES = libjlinkrtt.a - -libjlinkrtt_a_CPPFLAGS = \ - -I$(top_srcdir)/third_party/jlink/SEGGER_RTT_V640/RTT \ - $(NULL) - -libjlinkrtt_a_SOURCES = \ - SEGGER_RTT_V640/RTT/SEGGER_RTT.c \ - $(NULL) - -noinst_HEADERS = \ - SEGGER_RTT_V640/RTT/SEGGER_RTT.h \ - SEGGER_RTT_V640/RTT/SEGGER_RTT_Conf.h \ - $(NULL) - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/third_party/mbedtls/Makefile.am b/third_party/mbedtls/Makefile.am deleted file mode 100644 index 4a6f4f6d7..000000000 --- a/third_party/mbedtls/Makefile.am +++ /dev/null @@ -1,190 +0,0 @@ -# -# Copyright 2016 The OpenThread Authors. All Rights Reserved. -# -# Licensed 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 $(abs_top_nlbuild_autotools_dir)/automake/pre.am - -EXTRA_DIST = \ - mbedtls-config.h \ - repo/include \ - $(NULL) - -lib_LIBRARIES = \ - libmbedcrypto.a \ - libmbedcrypto-radio.a \ - $(NULL) - -# Do not enable -Wconversion for mbedtls -override CFLAGS := $(filter-out -Wconversion,$(CFLAGS)) -override CXXFLAGS := $(filter-out -Wconversion,$(CXXFLAGS)) - -# Do not enable -pedantic-errors for mbedtls -override CFLAGS := $(filter-out -pedantic-errors,$(CFLAGS)) -override CXXFLAGS := $(filter-out -pedantic-errors,$(CXXFLAGS)) - -# Do not enable -Wcast-align for mbedtls -override CFLAGS := $(filter-out -Wcast-align,$(CFLAGS)) -override CXXFLAGS := $(filter-out -Wcast-align,$(CXXFLAGS)) - -MBEDTLS_SRCDIR = $(top_srcdir)/third_party/mbedtls/repo - -libmbedcrypto_a_CPPFLAGS = \ - -I$(top_srcdir)/include \ - -I$(top_srcdir)/src/core \ - -I$(MBEDTLS_SRCDIR)/include \ - $(MBEDTLS_CPPFLAGS) \ - $(NULL) - -libmbedcrypto_a_SOURCES = \ - repo/library/aes.c \ - repo/library/aesni.c \ - repo/library/arc4.c \ - repo/library/aria.c \ - repo/library/asn1parse.c \ - repo/library/asn1write.c \ - repo/library/base64.c \ - repo/library/bignum.c \ - repo/library/blowfish.c \ - repo/library/camellia.c \ - repo/library/ccm.c \ - repo/library/certs.c \ - repo/library/chacha20.c \ - repo/library/chachapoly.c \ - repo/library/check_crypto_config.h \ - repo/library/cipher.c \ - repo/library/cipher_wrap.c \ - repo/library/cmac.c \ - repo/library/common.h \ - repo/library/constant_time.c \ - repo/library/constant_time_internal.h \ - repo/library/constant_time_invasive.h \ - repo/library/ctr_drbg.c \ - repo/library/debug.c \ - repo/library/des.c \ - repo/library/dhm.c \ - repo/library/ecdh.c \ - repo/library/ecdsa.c \ - repo/library/ecjpake.c \ - repo/library/ecp.c \ - repo/library/ecp_curves.c \ - repo/library/ecp_invasive.h \ - repo/library/entropy.c \ - repo/library/entropy_poll.c \ - repo/library/error.c \ - repo/library/gcm.c \ - repo/library/havege.c \ - repo/library/hkdf.c \ - repo/library/hmac_drbg.c \ - repo/library/md.c \ - repo/library/md2.c \ - repo/library/md4.c \ - repo/library/md5.c \ - repo/library/mps_common.h \ - repo/library/mps_error.h \ - repo/library/mps_reader.c \ - repo/library/mps_reader.h \ - repo/library/mps_trace.c \ - repo/library/mps_trace.h \ - repo/library/memory_buffer_alloc.c \ - repo/library/net_sockets.c \ - repo/library/nist_kw.c \ - repo/library/oid.c \ - repo/library/padlock.c \ - repo/library/pem.c \ - repo/library/pk.c \ - repo/library/pk_wrap.c \ - repo/library/pkcs11.c \ - repo/library/pkcs12.c \ - repo/library/pkcs5.c \ - repo/library/pkparse.c \ - repo/library/pkwrite.c \ - repo/library/platform.c \ - repo/library/platform_util.c \ - repo/library/poly1305.c \ - repo/library/psa_crypto.c \ - repo/library/psa_crypto_aead.c \ - repo/library/psa_crypto_aead.h \ - repo/library/psa_crypto_core.h \ - repo/library/psa_crypto_cipher.c \ - repo/library/psa_crypto_cipher.h \ - repo/library/psa_crypto_client.c \ - repo/library/psa_crypto_driver_wrappers.c \ - repo/library/psa_crypto_driver_wrappers.h \ - repo/library/psa_crypto_ecp.c \ - repo/library/psa_crypto_ecp.h \ - repo/library/psa_crypto_hash.c \ - repo/library/psa_crypto_hash.h \ - repo/library/psa_crypto_invasive.h \ - repo/library/psa_crypto_its.h \ - repo/library/psa_crypto_mac.c \ - repo/library/psa_crypto_mac.h \ - repo/library/psa_crypto_random_impl.h \ - repo/library/psa_crypto_rsa.c \ - repo/library/psa_crypto_rsa.h \ - repo/library/psa_crypto_se.c \ - repo/library/psa_crypto_se.h \ - repo/library/psa_crypto_slot_management.c \ - repo/library/psa_crypto_slot_management.h \ - repo/library/psa_crypto_storage.c \ - repo/library/psa_crypto_storage.h \ - repo/library/psa_its_file.c \ - repo/library/ripemd160.c \ - repo/library/rsa.c \ - repo/library/rsa_internal.c \ - repo/library/sha1.c \ - repo/library/sha256.c \ - repo/library/sha512.c \ - repo/library/ssl_cache.c \ - repo/library/ssl_ciphersuites.c \ - repo/library/ssl_cli.c \ - repo/library/ssl_cookie.c \ - repo/library/ssl_msg.c \ - repo/library/ssl_srv.c \ - repo/library/ssl_ticket.c \ - repo/library/ssl_tls.c \ - repo/library/ssl_tls13_keys.c \ - repo/library/ssl_tls13_keys.h \ - repo/library/threading.c \ - repo/library/timing.c \ - repo/library/version.c \ - repo/library/version_features.c \ - repo/library/x509.c \ - repo/library/x509_create.c \ - repo/library/x509_crl.c \ - repo/library/x509_crt.c \ - repo/library/x509_csr.c \ - repo/library/x509write_crt.c \ - repo/library/x509write_csr.c \ - repo/library/xtea.c \ - $(NULL) - -libmbedcrypto_radio_a_CPPFLAGS = \ - -I$(top_srcdir)/include \ - -I$(top_srcdir)/src/core \ - -I$(MBEDTLS_SRCDIR)/include \ - $(MBEDTLS_CPPFLAGS) \ - $(NULL) - -libmbedcrypto_radio_a_SOURCES = \ - repo/library/aes.c \ - repo/library/platform_util.c \ - $(NULL) - -if OPENTHREAD_BUILD_COVERAGE -Dash = - -CLEANFILES = $(shell find $(top_builddir)/third_party/mbedtls $(Dash)name "*.gcda" $(Dash)o $(Dash)name "*.gcno") -endif # OPENTHREAD_BUILD_COVERAGE - -include $(abs_top_nlbuild_autotools_dir)/automake/post.am diff --git a/third_party/nlbuild-autotools/repo/.default-version b/third_party/nlbuild-autotools/repo/.default-version deleted file mode 100644 index 9494224a9..000000000 --- a/third_party/nlbuild-autotools/repo/.default-version +++ /dev/null @@ -1 +0,0 @@ -1.6.16 diff --git a/third_party/nlbuild-autotools/repo/.gitignore b/third_party/nlbuild-autotools/repo/.gitignore deleted file mode 100644 index 33232b3f3..000000000 --- a/third_party/nlbuild-autotools/repo/.gitignore +++ /dev/null @@ -1 +0,0 @@ -.local-version diff --git a/third_party/nlbuild-autotools/repo/.travis.yml b/third_party/nlbuild-autotools/repo/.travis.yml deleted file mode 100644 index f658937cb..000000000 --- a/third_party/nlbuild-autotools/repo/.travis.yml +++ /dev/null @@ -1,36 +0,0 @@ -# -# Copyright 2019 Google LLC. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file is the Travis CI hosted, distributed continuous -# integration configuration file for nlbuild-autotools. -# - -language: generic - -sudo: false - -os: - - linux - - osx - -# At present, simply ensure that several targets can be successfully built. - -script: - - make dist - - make tools - - make toolsdist diff --git a/third_party/nlbuild-autotools/repo/CHANGES b/third_party/nlbuild-autotools/repo/CHANGES deleted file mode 100644 index c15255c5c..000000000 --- a/third_party/nlbuild-autotools/repo/CHANGES +++ /dev/null @@ -1,240 +0,0 @@ -1.6.16 (2020-01-23) - - * Allow absolute paths in PRETTY_FILES. - -1.6.15 (2019-12-06) - - * Remove redundant libtool m4 libraries. - -1.6.14 (2019-07-16) - - * Update MANIFEST to ensure that 'make dist' works correctly. - -1.6.13 (2019-07-16) - - * Update coreutils to a newer version s.t. they build cleanly - on linux systems with GLIBC 2.28 or newer. Remove the strip - from install libraries to allow coreutils to be installed on - Mac OS systems. - -1.6.12 (2019-06-11) - - * install-headers target now depends on BUILT_SOURCES to - enable installation of generated headers - -1.6.11 (2019-05-23) - - * Changed the bootstrap shebang from sh to bash to address a - bashism that arrived at 1.6.10. - -1.6.10 (2019-05-02) - - * Added additional up-front checks to the bootstrap script to - ensure required executables are available. - -1.6.9 (2019-04-30) - - * Now that both automake and pure make headers and footers are - co-mingled, address an issues in which the .DEFAULT_GOAL - specifications in the repos.mak footer were conflicting with - makefiles that wanted a different default goal by moving - those .DEFAULT_GOAL specifications to Makefile-bootstrap. - -1.6.8 (2019-04-29) - - * Downgraded m4 from 1.4.17 to 1.4.5 since 1.4.5 seems to be the - last version of m4 that does not abort on invocation in the m4 - *rintf and friends compatibility and portability library. - - * Leverage both automake and pure make headers and footers by - including the latter in the former. - - * Reworked how verbose progress is handled to simplify - specification of progress macros. - - * Rebased several automake header macros implementations on their - pure make equivalents. - -1.6.7 (2019-04-26) - - * Addressed issues with NL_FILTERED_CANONICAL in which the desired - content to be filtered was not filtering correctly and in which - the desired filtered canonical variables were not emitted in - makefiles. - -1.6.6 (2019-04-09) - - * Added code coverage support for clang, which uses a link flag - --coverage instead of linking to a library(-lgov) as gcc does - for code coverage functions. - -1.6.5 (2018-11-19) - - * Addressed an issue in which the failure to make the 'repos-warning' - target order-only caused dependent repo paths to be repeatedly - and unnecessarily remade which, in turn, caused git operations - and the configuration or build to fail. - -1.6.4 (2018-11-14) - - * Added support for pulling down remote package dependencies using - git clone (default) or git submodule depending on the setting of - pull.method in repos.conf. - -1.6.3 (2018-10-19) - - * Added support for coverage-local and check-local targets. Added - documentation for all coverage-related targets. - -1.6.2 (2018-10-09) - - * Take a different approach to version flapping against 'make - distcheck' by leaving VERSION_FILE as an immediate (:=) variable - and instead creating a two-level _VERSION variable, the - first of which is set from VERSION_FILE by default at make - recursion level zero (0). - -1.6.1 (2018-09-26) - - * Address an issue with VERSION_FILE on clean source code control - clones or unarchived distribution in which 'make dist' or - 'make distcheck' fail. VERSION_FILE should be and is - intentionally a deferred (=) rather than an immediate (:=) - variable to ensure late evaluation AFTER .local-version MAY - be created rather than when the makefile containing it is - parsed. - -1.6.0 (2018-09-19) - - * Added support to repos.conf for a 'commit' key such that a - hash or tag other than HEAD for a given repository and - branch may be synchronized and checked out. - - * Made a minor change to the 'bootstrap' script such that it emits - the actual action commands that will be executed when the verbose - flag is asserted. - -1.5.3 (2018-09-14) - - * Address a number of issues with building the prepackaged GNU - autotools subset included in nlbuild-autotools for Ubuntu - Bionic. - - - Fixed "Unescaped left brace in regex is deprecated" that - was formerly a warning in Perl 5.22 and is now a hard error - in Perl 5.26. - - - Address new glibc glob interface changes by upgrading from - make-3.82 to make-4.1 and applying relevant Ubuntu Bionic - patches. - - * Add support to the package 'build' script to find and apply - patches for the above. - -1.5.2 (2018-04-26) - - * Since the '--name-only' option only appears in git-2.6 and later - and there are production systems using git version as old as - git-1.9, do not use '--name-only' when processing 'repos.conf'. - -1.5.1 (2018-04-20) - - * Addressed a number of typos and grammatical errors in comments - and help output. - -1.5.0 (2018-04-19) - - * Added support for pulling down remote package dependencies - using git submodule. - - * Addressed an issue in which nl_enable_coverage.m4 did not work - correctly on some Linux distributions by specifying coverage - libraries under LIBS rather than LDFLAGS. - -1.4.4 (2018-02-06) - - * Addressed an issue where 'mkskeleton' failed while trying to - generate "third_party/Makefile.am". - -1.4.3 (2018-02-01) - - * Addressed an issue with NL_{SAVE,RESTORE}_WERROR in which - -Werror= was not handled. - -1.4.2 (2017-06-20) - - * Addressed an issue with the 'make coverage' target where certain - make versions may have sensitivites to trailing slashes in order- - only targets. - -1.4.1 (2017-06-19) - - * Refactored m4 and autotools auxilliary files to ensure that - third-party content remains under third_party/.... - * Addressed issues with generating distributions on Mac OS X - where GNU software, including wget, is not available in PATH. - * Addressed issue with missing files in MANIFEST. - -1.4 (2017-06-15) - - * Remove package archives and prebuilt in-package binaries. - * Ensure that GNU tool build process is completely self-sufficient - and has no dependencies on installed host binaries. - * Add support for generating versioned core and prebuilt package binary - distributions. - * Ensure that 'bootstrap' can work with either prebuilt in-package - binaries or with installed host binaries. - -1.3.1 (2017-05-10) - - * Specify the correct m4 URL. - -1.3 (2016-12-05) - - * Added the support for detection of supported C++ version. - -1.2.2 (2016-08-29) - - * Use the arguments passed, as designed and intended, to - NL_PROG_LNDIR rather than hard-coded values for the GNU cp - fallback. - -1.2.1 (2016-07-13) - - * Make the 'pretty' and 'pretty-check' targets dependent on - $(PRETTY_FILES) and then iterate on a filtered version of $(^) so - that make's VPATH engine can be leveraged to find sources and - headers that are not in directly stat-able paths listed in - $(PRETTY_FILES). - -1.2 (2016-06-01) - - * Added support for coding style formatting and checking targets. - -1.1.2 (2016-03-19) - - * Improve the code coverage generation process to cover an entire - project's source. - -1.1.1 (2015-12-10) - - * Properly handle package optionality when using pkg-config to - detect external packages. - -1.1 (2015-11-10) - - * Added support for a recursive 'install-headers' target to allow - packages that wish to leverage it to install their public headers - and only their public headers to DESTDIR on 'make install-headers' - without performing any additional build actions. - -1.0.1 (2015-10-27) - - * Refactored NL_WITH_PACKAGE into NL_WITH_REQUIRED_EXTERNAL_PACKAGE, - NL_WITH_OPTIONAL_EXTERNAL_PACKAGE, NL_WITH_REQUIRED_INTERNAL_PACKAGE, - and NL_WITH_OPTIONAL_INTERNAL_PACKAGE. - -1.0 (2015-03-19) - - * Initial revision with GNU m4 1.4.17, autoconf 2.68, automake 1.14.1, - libtool 2.4.2, make 3.82, and coreutils 8.21. diff --git a/third_party/nlbuild-autotools/repo/CONTRIBUTING.md b/third_party/nlbuild-autotools/repo/CONTRIBUTING.md deleted file mode 100644 index 2827b7d3f..000000000 --- a/third_party/nlbuild-autotools/repo/CONTRIBUTING.md +++ /dev/null @@ -1,27 +0,0 @@ -Want to contribute? Great! First, read this page (including the small print at the end). - -### Before you contribute -Before we can use your code, you must sign the -[Google Individual Contributor License Agreement] -(https://cla.developers.google.com/about/google-individual) -(CLA), which you can do online. The CLA is necessary mainly because you own the -copyright to your changes, even after your contribution becomes part of our -codebase, so we need your permission to use and distribute your code. We also -need to be sure of various other things—for instance that you'll tell us if you -know that your code infringes on other people's patents. You don't have to sign -the CLA until after you've submitted your code for review and a member has -approved it, but you must do it before we can put your code into our codebase. -Before you start working on a larger contribution, you should get in touch with -us first through the issue tracker with your idea so that we can help out and -possibly guide you. Coordinating up front makes it much easier to avoid -frustration later on. - -### Code reviews -All submissions, including submissions by project members, require review. We -use Github pull requests for this purpose. - -### The small print -Contributions made by corporations are covered by a different agreement than -the one above, the -[Software Grant and Corporate Contributor License Agreement] -(https://cla.developers.google.com/about/google-corporate). diff --git a/third_party/nlbuild-autotools/repo/Common.mak b/third_party/nlbuild-autotools/repo/Common.mak deleted file mode 100644 index fdfb29ad7..000000000 --- a/third_party/nlbuild-autotools/repo/Common.mak +++ /dev/null @@ -1,129 +0,0 @@ -# -# Copyright 2017 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This make file header defines common variables, rules, and -# targets for maintaining nlbuild-autotools distributions. -# - -.DEFAULT_GOAL = all - -# -# This package -# -PACKAGE := nlbuild-autotools - -# -# Tools -# -CAT ?= cat -CHMOD ?= chmod -CMP ?= cmp -FIND ?= find -GZIP ?= gzip -MKDIR ?= mkdir -MV ?= mv -RM ?= rm -SED ?= sed -TAR ?= tar -XZ ?= xz - -dist_tar_ARCHIVE = $(TAR) -chof - - -dist_tgz_ARCHIVE = $(dist_tar_ARCHIVE) -dist_tgz_COMPRESS = $(GZIP) --best -c - -dist_txz_ARCHIVE = $(dist_tar_ARCHIVE) -dist_txz_COMPRESS = $(XZ) --extreme -c - -TGZ_EXTENSION := .tar.gz -TXZ_EXTENSION := .tar.xz - -DIST_TARGETS ?= dist-tgz dist-txz -DIST_ARCHIVES = $(dist_tgz_TARGETS) $(dist_txz_TARGETS) - -# -# Verbosity -# - -NL_DEFAULT_VERBOSITY = 0 - -NL_V_AT = $(NL_V_AT_$(V)) -NL_V_AT_ = $(NL_V_AT_$(NL_DEFAULT_VERBOSITY)) -NL_V_AT_0 = @ -NL_V_AT_1 = - -NL_V_MAKE = $(NL_V_MAKE_$(V)) -NL_V_MAKE_ = $(NL_V_MAKE_$(NL_DEFAULT_VERBOSITY)) -NL_V_MAKE_0 = @echo " MAKE $(@)"; -NL_V_MAKE_1 = - -NL_V_MKDIR_P = $(NL_V_MKDIR_P_$(V)) -NL_V_MKDIR_P_ = $(NL_V_MKDIR_P_$(NL_DEFAULT_VERBOSITY)) -NL_V_MKDIR_P_0 = @echo " MKDIR $(1)"; -NL_V_MKDIR_P_1 = - -NL_V_RMDIR = $(NL_V_RMDIR_$(V)) -NL_V_RMDIR_ = $(NL_V_RMDIR_$(NL_DEFAULT_VERBOSITY)) -NL_V_RMDIR_0 = @echo " RMDIR $(1)"; -NL_V_RMDIR_1 = - -NL_V_TGZ = $(NL_V_TGZ_$(V)) -NL_V_TGZ_ = $(NL_V_TGZ_$(NL_DEFAULT_VERBOSITY)) -NL_V_TGZ_0 = @echo " TGZ $(@)"; -NL_V_TGZ_1 = - -NL_V_TXZ = $(NL_V_TXZ_$(V)) -NL_V_TXZ_ = $(NL_V_TXZ_$(NL_DEFAULT_VERBOSITY)) -NL_V_TXZ_0 = @echo " TXZ $(@)"; -NL_V_TXZ_1 = - -# -# nl-create-dir -# -# Create the specified directory, including any parent directories -# that may not exist. -# -define nl-create-dir -$(NL_V_AT)echo " MKDIR $(1)"; \ -$(MKDIR) -p "$(1)" -endef # nl-create-dir - -# -# nl-remove-dir -# -# If the specified directory exists, then ensure all of the -# directories are writable by the current user, and then forcibly -# remove the directory and all of its contents, sleeping for five (5) -# seconds and failure before trying the removal again. -# -define nl-remove-dir -$(NL_V_RMDIR) \ -if [ -d "$(1)" ]; then \ - $(FIND) "$(1)" -type d ! -perm -200 -exec $(CHMOD) u+w {} ';' \ - && $(RM) -rf "$(1)" \ - || { sleep 5 && $(RM) -rf "$(1)"; }; \ -fi -endef # nl-remove-dir - -clean-local: - $(NL_V_AT)$(RM) -f *~ "#"* - -help: - @echo "This make file shold not be needed for end users and system " - @echo "integrators of $(PACKAGE). It should only be needed by " - @echo "maintainers producing distributions of $(PACKAGE)." diff --git a/third_party/nlbuild-autotools/repo/LICENSE b/third_party/nlbuild-autotools/repo/LICENSE deleted file mode 100644 index d64569567..000000000 --- a/third_party/nlbuild-autotools/repo/LICENSE +++ /dev/null @@ -1,202 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed 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. diff --git a/third_party/nlbuild-autotools/repo/MANIFEST b/third_party/nlbuild-autotools/repo/MANIFEST deleted file mode 100644 index eb87e882f..000000000 --- a/third_party/nlbuild-autotools/repo/MANIFEST +++ /dev/null @@ -1,105 +0,0 @@ -.default-version -.gitignore -.travis.yml -CHANGES -Common.mak -CONTRIBUTING.md -LICENSE -MANIFEST -Makefile -README.md -autoconf/m4/ax_check_compiler.m4 -autoconf/m4/ax_check_file.m4 -autoconf/m4/ax_check_preprocessor.m4 -autoconf/m4/nl_enable_coverage.m4 -autoconf/m4/nl_enable_coverage_reporting.m4 -autoconf/m4/nl_enable_debug.m4 -autoconf/m4/nl_enable_docs.m4 -autoconf/m4/nl_enable_optimization.m4 -autoconf/m4/nl_enable_tests.m4 -autoconf/m4/nl_enable_werror.m4 -autoconf/m4/nl_filtered_canonical.m4 -autoconf/m4/nl_prog_lndir.m4 -autoconf/m4/nl_werror.m4 -autoconf/m4/nl_with_package.m4 -automake/post.am -automake/post/rules.am -automake/post/rules/coverage.am -automake/post/rules/headers.am -automake/post/rules/pretty.am -automake/pre.am -automake/pre/macros.am -automake/pre/macros/constants.am -automake/pre/macros/coverage.am -automake/pre/macros/paths.am -automake/pre/macros/pretty.am -automake/pre/macros/subdirs.am -automake/pre/macros/verbosity.am -etc/lcov.config -examples/Doxyfile.in -examples/Makefile-bootstrap -examples/Makefile-doc.am -examples/Makefile-src.am -examples/Makefile-tests.am -examples/Makefile-third_party.am -examples/Makefile-toplevel.am -examples/bootstrap -examples/configure.ac -examples/repos.conf -make/host/tools.mak -make/host/tools/bootstrap.mak -make/host/tools/tools.mak -make/post.mak -make/post/rules.mak -make/post/rules/bootstrap.mak -make/post/rules/help.mak -make/post/rules/repos.mak -make/pre.mak -make/pre/macros.mak -make/pre/macros/git.mak -make/pre/macros/repos.mak -make/pre/macros/verbosity.mak -make/pre/tools.mak -scripts/bootstrap -scripts/bootstrap-configure -scripts/mkskeleton -scripts/mkversion -third_party/autoconf/ar-lib -third_party/autoconf/compile -third_party/autoconf/config.guess -third_party/autoconf/config.sub -third_party/autoconf/depcomp -third_party/autoconf/install-sh -third_party/autoconf/ltmain.sh -third_party/autoconf/m4/ax_compare_version.m4 -third_party/autoconf/m4/ax_cxx_compile_stdcxx.m4 -third_party/autoconf/m4/ax_cxx_compile_stdcxx_0x.m4 -third_party/autoconf/m4/ax_cxx_compile_stdcxx_11.m4 -third_party/autoconf/m4/ax_cxx_compile_stdcxx_14.m4 -third_party/autoconf/m4/ax_jni_include_dir.m4 -third_party/autoconf/m4/ax_prog_doxygen.m4 -third_party/autoconf/m4/ax_pthread.m4 -third_party/autoconf/m4/pkg.m4 -third_party/autoconf/missing -third_party/autoconf/mkinstalldirs -third_party/autoconf/py-compile -third_party/autoconf/test-driver -tools/Makefile -tools/packages/autoconf/autoconf.url -tools/packages/autoconf/autoconf.version -tools/packages/automake/automake.patches/automake-00.description -tools/packages/automake/automake.patches/automake-00.patch -tools/packages/automake/automake.url -tools/packages/automake/automake.version -tools/packages/build -tools/packages/coreutils/coreutils.url -tools/packages/coreutils/coreutils.version -tools/packages/libtool/libtool.url -tools/packages/libtool/libtool.version -tools/packages/m4/m4.url -tools/packages/m4/m4.version -tools/packages/make/make.patches/make-00.patch -tools/packages/make/make.patches/make-00.url -tools/packages/make/make.url -tools/packages/make/make.version -tools/packages/packages diff --git a/third_party/nlbuild-autotools/repo/Makefile b/third_party/nlbuild-autotools/repo/Makefile deleted file mode 100644 index 19ab6c7c9..000000000 --- a/third_party/nlbuild-autotools/repo/Makefile +++ /dev/null @@ -1,241 +0,0 @@ -# -# Copyright (c) 2017-2018 Nest Labs Inc. All Rights Reserved. -# Copyright (c) 2018 Google LLC. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This make file supports generating distributions of -# nlbuild-autotools. -# - -include Common.mak - -# -# Build directories -# - -builddir := . -top_builddir := . -abs_builddir := $(CURDIR) -abs_top_builddir := $(CURDIR) - -# -# Source directories -# - -srcdir := . -top_srcdir := . -abs_srcdir := $(CURDIR) -abs_top_srcdir := $(CURDIR) - -distdir = $(PACKAGE)-$(VERSION) - -dist_tgz_TARGETS = $(distdir)$(TGZ_EXTENSION) -dist_txz_TARGETS = $(distdir)$(TXZ_EXTENSION) - -DISTFILES := $(shell $(CAT) MANIFEST) - -# -# Package version files: -# -# .default-version - The default package version. This file is ALWAYS checked -# in and should always represent the current baseline -# version of the package. -# -# .dist-version - The distributed package version. This file is NEVER -# checked in within the upstream repository, is auto- -# generated, and is only found in the package distribution. -# -# .local-version - The current source code controlled package version. This -# file is NEVER checked in within the upstream repository, -# is auto-generated, and can always be found in both the -# build tree and distribution. -# -# When present, the .local-version file is preferred first, the -# .dist-version second, and the .default-version last. -# - -# VERSION_FILE should be and is intentionally an immediate (:=) rather -# than a deferred (=) variable to ensure the value binds once and only once -# for a given MAKELEVEL even as .local-version and .dist-version are created -# during makefile execution. - -VERSION_FILE := $(if $(wildcard $(builddir)/.local-version),$(builddir)/.local-version,$(if $(wildcard $(srcdir)/.dist-version),$(srcdir)/.dist-version,$(srcdir)/.default-version)) - -# -# The two-level variables and the check against MAKELEVEL ensures that -# not only can the package version be overridden from the command line -# but also when the version is NOT overridden that we bind the version -# once and only once across potential sub-makes to prevent the version -# from flapping as VERSION_FILE changes. -# - -export MAYBE_PACKAGE_VERSION := $(if $(filter 0,$(MAKELEVEL)),$(shell cat $(VERSION_FILE) 2> /dev/null),$(MAYBE_PACKAGE_VERSION)) - -PACKAGE_VERSION ?= $(MAYBE_PACKAGE_VERSION) - -VERSION = $(PACKAGE_VERSION) - -# -# Verbosity -# -_NL_V_COPY = $(_NL_V_COPY_$(V)) -_NL_V_COPY_ = $(_NL_V_COPY_$(NL_DEFAULT_VERBOSITY)) -_NL_V_COPY_0 = @for file in $(DISTFILES); do echo " COPY $${file}"; done; -_NL_V_COPY_1 = - -_NL_V_MAKE = $(_NL_V_MAKE_$(V)) -_NL_V_MAKE_ = $(_NL_V_MAKE_$(NL_DEFAULT_VERBOSITY)) -_NL_V_MAKE_0 = @echo " MAKE dist-hook"; -_NL_V_MAKE_1 = - -# -# check-file -# -# Check whether a file, referenced by the $(@) variable, should be -# updated / regenerated based on its dependencies, referenced by the -# $(<) variable by running the make macro check-file-. -# -# The $(<) is passed as the first argument if the macro wants to process -# it and the prospective new output file, which the macro MUST -# generate, as the second. -# -# This macro will ensure that any required parent directories are created -# prior to invoking check-file-. -# -# This macro is similar to and inspired by that from Linux Kbuild and -# elsewhere. -# -# - The name, suffixed to "check-file-", which indicates -# the make macro to invoke. -# -# -define check-file -$(NL_V_AT)set -e; \ -echo ' CHECK $(@)'; \ -$(MKDIR) -p $(dir $(@)); \ -$(call check-file-$(1),$(<),$(@).N); \ -if [ -r "$(@)" ] && $(CMP) -s "$(@)" "$(@).N"; then \ - $(RM) -f "$(@).N"; \ -else \ - echo ' GEN $(@)'; \ - $(MV) -f "$(@).N" "$(@)"; \ -fi -endef # check-file - -# -# check-file-.local-version -# -# Speculatively regenerate .local-version and check to see if it needs -# to be updated. -# -# If PACKAGE_VERSION has been supplied anywhere other than in this file -# (which is implicitly the contents of .local-version), then use that; -# otherwise, attempt to generate it from the SCM system. -# -# This is called from $(call check-file,.local-version). -# -define check-file-.local-version -if [ "$(origin PACKAGE_VERSION)" != "file" ]; then \ - echo "$(PACKAGE_VERSION)" > "$(2)"; \ -else \ - $(abs_top_srcdir)/scripts/mkversion \ - -b "$(PACKAGE_VERSION)" "$(top_srcdir)" \ - > "$(2)"; \ -fi -endef - -# -# check-file-.dist-version -# -# Speculatively regenerate .dist-version and check to see if it needs -# to be updated. -# -# This is called from $(call check-file,.dist-version). -# -define check-file-.dist-version -$(CAT) "$(1)" > "$(2)" -endef - -# -# Version file regeneration rules. -# -.PHONY: force - -$(builddir)/.local-version: $(srcdir)/.default-version force - -$(distdir)/.dist-version: $(builddir)/.local-version force - -$(distdir)/.dist-version $(builddir)/.local-version: - $(call check-file,$(@F)) - -all: .local-version - -dist-hook: $(distdir)/.dist-version - -# -# Stage the distribution files to a distribution directory -# -stage: $(DISTFILES) .local-version - $(call nl-remove-dir,$(distdir)) - $(call nl-create-dir,$(distdir)) - $(_NL_V_MAKE)$(MAKE) -s distdir="$(distdir)" dist-hook - $(_NL_V_COPY)(cd $(abs_top_srcdir); $(dist_tar_ARCHIVE) $(DISTFILES) | (cd $(abs_builddir)/$(distdir); $(TAR) xfBp -)) - -# -# Produce an architecture-independent distribution using a tar archive -# with gzip compression -# -$(dist_tgz_TARGETS): stage - $(NL_V_TGZ)$(dist_tgz_ARCHIVE) $(distdir) | $(dist_tgz_COMPRESS) > "$(@)" - -# -# Produce an architecture-independent distribution using a tar archive -# with xz compression -# -$(dist_txz_TARGETS): stage - $(NL_V_TXZ)$(dist_txz_ARCHIVE) $(distdir) | $(dist_txz_COMPRESS) > "$(@)" - -# -# Produce an architecture-independent distribution of the -# nlbuild-autotools core. -# -dist: $(DIST_TARGETS) .local-version - $(call nl-remove-dir,$(distdir)) - -dist-tgz: $(dist_tgz_TARGETS) - -dist-txz: $(dist_txz_TARGETS) - -# -# Produce prebuilt GNU autotools binaries for the architecture of the -# CURRENT build machine and install them in THIS nlbuild-autotools -# package. -# -.PHONY: tools -tools: - $(NL_V_MAKE)$(MAKE) -C tools $(@) - -# -# Produce prebuilt GNU autotools architecture-dependent and -independent -# binaries for the architecture of the CURRENT build machine and PACKAGE -# them up for EXTERNAL distribution. -# -toolsdist: .local-version - $(NL_V_MAKE)$(MAKE) -C tools $(@) - -clean: clean-local - $(NL_V_MAKE)$(MAKE) -C tools $(@) diff --git a/third_party/nlbuild-autotools/repo/README.md b/third_party/nlbuild-autotools/repo/README.md deleted file mode 100644 index 9d1891db7..000000000 --- a/third_party/nlbuild-autotools/repo/README.md +++ /dev/null @@ -1,340 +0,0 @@ -Nest Labs Build - GNU Autotools -=============================== - -[![Build Status][nlbuild-autotools-travis-svg]][nlbuild-autotools-travis] - -[nlbuild-autotools-travis]: https://travis-ci.org/nestlabs/nlbuild-autotools -[nlbuild-autotools-travis-svg]: https://travis-ci.org/nestlabs/nlbuild-autotools.svg?branch=master - -# Introduction - -The Nest Labs Build - GNU Autotools (nlbuild-autotools) provides a -customized, turnkey build system framework, based on GNU autotools, for -standalone Nest Labs (or other) software packages that need to support -not only building on and targeting against standalone build host -systems but also embedded target systems using GCC-based or --compatible toolchains. - -In addition, nlbuild-autotools endeavors to make it easy to support: - - * Unit and Functional Tests (via 'make check') - * Code Coverage (via 'make coverage') - * Code Formatting (via 'make pretty' or 'make pretty-check') - * Documentation - * Distribution Generation (via 'make dist' or 'make docdist') - -# Users and System Integrators - -## Getting Started - -This project is typically subtreed (or git submoduled) into a target -project repository and serves as the seed for that project's build -system. - -Assuming that you already have a project repository established in -git, perform the following in your project repository: - -``` -1. % git remote add nlbuild-autotools ssh:///nlbuild-autotools.git -2. % git fetch nlbuild-autotools -``` - -You can place the nlbuild-autotools package anywhere in your project; -however, by convention, "third_party/nlbuild-autotools/repo" is recommended: - -``` -3. % mkdir third_party -4. % git subtree add --prefix=third_party/nlbuild-autotools/repo --squash --message="Add subtree mirror of repository 'ssh:///nlbuild-autotools.git' branch 'master' at commit 'HEAD'." nlbuild-autotools HEAD -``` - -At this point, you now have the nlbuild-autotools package integrated -into your project. The next step is using the -nlbuild-autotools-provided examples as templates. To do this, a -convenience script has been provided that will get you started. You -can tune and customize the results, as needed, for your project. From -the top level of your project tree: - -``` -5. % third_party/nlbuild-autotools/repo/scripts/mkskeleton -I third_party/nlbuild-autotools/repo --package-description "My Fantastic Package" --package-name "mfp" -``` - -## Supported Build Host Systems - -For Linux users, you likely already have GNU autotools installed through your system's distribution (e.g. Ubuntu). However, if your GNU autotools packages are incomplete or downrevision relative to what's required from nlbuild-autotools, nlbuild-autotools can be built and installed or can be downloaded and expanded in your local nlbuild-autotools tree. - -The nlbuild-autotools system supports and has been tested against the -following POSIX-based build host systems: - - * i686-pc-cygwin - * i686-pc-linux-gnu - * x86_64-apple-darwin - * x86_64-unknown-linux-gnu - -### Build and Install {#Build_and_Install} - -Simply invoke `make tools` at the top-level of your nlbuild-autotools -tree or, for example, from your package or project in which you have -integrated nlbuild-autotools: - -``` -make -C third_party/nlbuild-autotools/repo tools -``` - -### Download and Expand - -Alongside nlbuild-autotools distributions are pre-built -architecture-independent and -dependent distributions of the form: - - * nlbuild-autotools-common-_version_.tar.{gz,xz} - * nlbuild-autotools-_host_-_version_.tar.{gz,xz} - -Find and download the appropriate pair of nlbuild-autotools-common and -nlbuild-autotools-_host_ for your system and then expand them from the -top-level of your nlbuild-autotools tree with a command similar to the -following example: - -``` -% tar --directory tools/host -zxvf nlbuild-autotools-common-1.1.tar.gz -% tar --directory tools/host -zxvf nlbuild-autotools-x86_64-unknown-linux-gnu-1.1.tar.gz -``` - -Please see the [FAQ](#FAQ) section for more background on why this package -provides options for these pre-built tools. - -## Package Organization - -The nlbuild-autotools package is laid out as follows: - -| Directory | Description | -|--------------------------------------|------------------------------------------------------------------------------------------| -| autoconf/ | GNU autoconf infrastructure provided by nlbuild-autotools. | -| autoconf/m4/ | GNU m4 macros for configure.ac provided by nlbuild-autotools. | -| automake/ | GNU automake Makefile.am header and footer infrastructure provided by nlbuild-autotools. | -| automake/post/ | GNU automake Makefile.am footers. | -| automake/post.am | GNU automake Makefile.am footer included by every makefile. | -| automake/pre/ | GNU automake Makefile.am headers. | -| automake/pre.am | GNU automake Makefile.am header included by every makefile. | -| examples/ | Example template files for starting your own nlbuild-autotools-based project. | -| scripts/ | Automation scripts for regenerating the build system and for managing package versions. | -| tools/ | Qualified packages of and pre-built instances of GNU autotools. | -| tools/host/ | Pre-built instances of GNU autotools (if installed). | -| tools/host/i686-pc-cygwin/ | Pre-built instances of GNU autotools for 32-bit Cygwin (if installed). | -| tools/host/i686-pc-linux-gnu/ | Pre-built instances of GNU autotools for 32-bit Linux (if installed). | -| tools/host/x86_64-apple-darwin/ | Pre-built instances of GNU autotools for 64-bit Mac OS X (if installed). | -| tools/host/x86_64-unknown-linux-gnu/ | Pre-built instances of GNU autotools for 64-bit Linux (if installed). | -| tools/packages/ | Qualified packages for GNU autotools. | -## Internal Package Dependencies and Repositories - -Your package may have dependencies on other packages that can either -be inlined into your package or can be specified externally. If your -package has such dependencies, nlbuild-autotools contains support to -facilitate easy standalone tests and a successful 'make distcheck' -target (which effectively reqires 'configure' with no arguments to -produce a successful build) without incurring the costs of inlining -these dependencies into your own package. - -nlbuild-autotools supports this by providing a means to pull down -external git package repositories that your package depends on using -either git clone (default) or git submodules when you use and support ---with-=internal as a location for your dependent packages. - -The example 'Makefile-bootstrap' has been provided as infrastructure to -make this easy for you as a package maintainer and for your package -users. The bootstrap makefile supports both the generic 'repos' target -to pull down all repositories on which your project depends as well as -relative path targets to where those repositories might live in your -project when they are internal (e.g, -third_party/package/repo). - -Consequently, you can, for example, invoke: - -``` -% make -f Makefile-bootstrap repos -``` - -or - -``` -% make -f Makefile-bootstrap third_party/package/repo -``` - -to pull down all repositories or just the repository, for example, -placed at 'third_party/package/repos'. - -The bootstrap makefile generated for your package is yours to edit and -extend. In fact, hooks have been added so that you can do -package-specific work, including recursively pulling down repositories -for other packages. - -However, an even better and easier approach for your package users is -to integrate the bootstrap makefile repository process into your -configure script such that when an "internal" package location is -detected, it invokes the bootstrap makefile to perform this work on -behalf of the user. For example: - -``` -# Depending on whether my-package has been configured for an internal -# location, its directory stem within this package needs to be set -# accordingly. In addition, if the location is internal, then we need -# to attempt to pull it down using the bootstrap makefile. - -if test "${nl_with_my_package}" = "internal"; then - maybe_my_package_dirstem="my-package/repo" - my_package_dirstem="third_party/${maybe_my_package_dirstem}" - - AC_MSG_NOTICE([attempting to create internal ${my_package_dirstem}]) - ${MAKE-make} --no-print-directory -C ${ac_confdir} -f Makefile-bootstrap ${my_package_dirstem} - - if test $? -ne 0; then - AC_MSG_ERROR([failed to create ${my_package_dirstem}. Please check your network connection or the correctness of 'repos.conf']) - fi -else - maybe_my_package_dirstem="" -fi - -AC_SUBST(MY_PACKAGE_SUBDIRS, [${maybe_my_package_dirstem}]) -AM_CONDITIONAL([PACKAGE_WITH_MY_PACKAGE_INTERNAL], [test "${nl_with_my_package}" = "internal"]) -``` - -Note, the use of AC_SUBST on MY_PACKAGE_SUBDIRS to provide a mechanism -to conditionally populate SUBDIRS in the appropriate automake file -locations such that GNU autoconf does not generate syntax errors about -the potential absence of the subdirectory at bootstrap time. - -Of course, in either case, network connectivity is required to reach -the external git server hosting the packages on which your project -depends. - -In addition to the 'repos' target, the bootstrap makefile also -supports the 'clean-repos' target that undoes the work of the 'repos' -target. When using either the 'clone' or 'submodule' pull methods, it -will clean-up all of the synchronized repositories. When using the -'submodule' pull method, it also is careful to ensure it does not -disturb existing git or git submodule state your project might be -using. - -The infrastructure all works, of course, whether you are working in or -out of git and whether you have colocated or non-colocated source and -build directories. - -### Configuration - -This dependent repository feature of nlbuild-autotools uses a file, -'repos.conf', at the top level of your project source directory to -determine what external project repositories your package might want -to pull down, the location of their git server, the branch you want to -pull, and the location in your project in which you want to place -them. - -The format of 'repos.conf' _almost_ precisely follows that used by git -submodules with two notable additions, the 'pull' section and the -'commit' key. The 'pull' section allows you to optionally specify the -'method' key as 'clone' or 'submodule' (defaulting to 'clone' when the -key is not present). This selects whether 'git clone' or 'git -submodule' is used to pull down repositories. The 'commit' key allows -you to specify not only what branch to checkout but, more precisely, -what commit or tag to checkout rather than just _HEAD_ of a -branch. More information is available in 'Makefile-bootstrap' or with -`man gitmodules` or `git help gitmodules`. - -# FAQ {#FAQ} - -Q: Why does nlbuild-autotools have an option for its own built versions - of GNU autotools rather than leveraging whatever versions exist on - the build host system? - -A: Some build host systems such as Mac OS X may not have GNU autotools - at all. Other build host systems, such as Linux, may have different - distributions or different versions of those distributions in which - the versions of GNU autotools are apt to be different. - - This differences lead to different primary and secondary autotools - output and, as a consequence, a divergent user and support - experience. To avoid this, this package provides a pre-built, - qualified set of GNU autotools along with a comprehensive, - standalone set of scripts to drive them without reliance on those - versions of the tools on the build host system. - -Q: When I rebootstrap my package, I see that a number of files related to - nlbuild-autotools have unexpectedly changed. Why is this happening? - -A: From time to time, the packages that comprise GNU autotools change - upstream. Frequently, common host operating systems (e.g., Ubuntu) take - a stable snapshot of the current autotools for a major release (e.g., - Ubuntu 14). On the next major release (e.g., Ubuntu 16), another snapshot - is taken. - - If your package was first bootstrapped with one version of - autotools and those bootstrap-generated files checked-in but you - later bootstrap with another version of autotools, then you will - likely observe this behavior. - - There are two solutions to this problem. First, to ensure a - consistent set of bootstrap-generated files, you can build the - autotools included with nlbuild-autotools. The bootstrap process - will always prefer to use those versions rather than those - available on the build host when they are available. See the - section [Build and Install](#Build_and_Install) for more - information. - - The second way to ensure a consistent set of bootstrap-generated - files is to not check them in. This does, however, require that - package users, rather than package maintainers, perform the - bootstrap process and does require that package users, rather than - package maintainers, have autotools available on the build host. - -## Maintainers - -If you are maintaining nlbuild-autotools, you have several key things to know: - -1. Generating nlbuild-autotools distributions -2. Generating optional nlbuild-autotools prebuilt binary distributions. -3. Upgrading GNU autotools packages. - -### Generating Distributions - -To generate a nlbuild-autotools distribution, simply invoke: - -``` -% make dist -``` - -The package version will come from tags in the source code control -system, if available; otherwise, from '.default-version'. The version -can be overridden from the PACKAGE_VERSION or VERSION environment -variables. - -The resulting archive will be at the top of the package build -directory. - -### Generating Optional Prebuilt Binary Distributions - -To generate an optional nlbuild-autotools prebuilt binary -distribution, simply invoke: - -``` -% make toolsdist -``` - -The package version will come from the source code control system, if -available; otherwise, from `.default-version`. The version can be -overridden from the _PACKAGE_VERSION_ or _VERSION_ environment variables. - -The resulting archives will be at the top of the package build -directory. - -### Upgrading GNU Autotools Packages - -To change or upgrade GNU autotools packages used by nlbuild-autotools, -edit the metadata for each package in tools/packages/_package_/ -_package_.{url,version}. - -# Versioning - -nlbuild-autools follows the [Semantic Versioning guidelines](http://semver.org/) -for release cycle transparency and to maintain backwards compatibility. - -# License - -nlbuild-autools is released under the [Apache License, Version 2.0 license](https://opensource.org/licenses/Apache-2.0). -See the `LICENSE` file for more information. diff --git a/third_party/nlbuild-autotools/repo/autoconf/m4/ax_check_compiler.m4 b/third_party/nlbuild-autotools/repo/autoconf/m4/ax_check_compiler.m4 deleted file mode 100644 index 701ebffe7..000000000 --- a/third_party/nlbuild-autotools/repo/autoconf/m4/ax_check_compiler.m4 +++ /dev/null @@ -1,108 +0,0 @@ -# -# Copyright 2014-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# _AX_CHECK_COMPILER_OPTION_WITH_VAR(language, variable, option) -# -# language - The autoconf language (C, C++, Objective C, Objective C++, -# etc.). -# variable - The variable to add the checked compiler option to. -# option - The compiler flag to check. -# -# Add, if supported, the specified compiler flag for the compiler selected -# for the specified language to the provided variable. -# ---------------------------------------------------------------------------- -AC_DEFUN([_AX_CHECK_COMPILER_OPTION_WITH_VAR], -[ - AC_LANG_PUSH($1) - AC_MSG_CHECKING([whether the _AC_LANG compiler understands $3]) - SAVE_[]_AC_LANG_PREFIX[]FLAGS=${_AC_LANG_PREFIX[]FLAGS} - SAVE_$2=${$2} - _AC_LANG_PREFIX[]FLAGS=$3 - AC_TRY_COMPILE(,[;],AC_MSG_RESULT([yes]); _AC_LANG_PREFIX[]FLAGS="${SAVE_[]_AC_LANG_PREFIX[]FLAGS}"; $2="${SAVE_$2} $3",AC_MSG_RESULT([no]); _AC_LANG_PREFIX[]FLAGS=${SAVE_[]_AC_LANG_PREFIX[]FLAGS}; $2=${SAVE_$2}); - unset SAVE_[]_AC_LANG_PREFIX[]FLAGS - unset SAVE_$2 - AC_LANG_POP($1) -]) - -# -# _AX_CHECK_COMPILER_OPTION(language, option) -# -# language - The autoconf language (C, C++, Objective C, Objective C++, -# etc.). -# option - The compiler flag to check. -# -# Add, if supported, the specified compiler flag for the compiler selected -# for the specified language. -# ---------------------------------------------------------------------------- -AC_DEFUN([_AX_CHECK_COMPILER_OPTION], -[ - AC_LANG_PUSH($1) - AC_MSG_CHECKING([whether the _AC_LANG compiler understands $2]) - SAVE_[]_AC_LANG_PREFIX[]FLAGS=${_AC_LANG_PREFIX[]FLAGS} - _AC_LANG_PREFIX[]FLAGS=$2 - AC_TRY_COMPILE(,[;],AC_MSG_RESULT([yes]); _AC_LANG_PREFIX[]FLAGS="${SAVE_[]_AC_LANG_PREFIX[]FLAGS} $2",AC_MSG_RESULT([no]); _AC_LANG_PREFIX[]FLAGS=${SAVE_[]_AC_LANG_PREFIX[]FLAGS}); - unset SAVE_[]_AC_LANG_PREFIX[]FLAGS - AC_LANG_POP($1) -]) - -# -# AX_CHECK_COMPILER_OPTION(language, [variable,] option) -# -# language - The autoconf language (C, C++, Objective C, Objective C++, -# etc.). -# variable - If supplied, the variable to add the checked compiler option -# to. -# option - The compiler flag to check. -# -# Add, if supported, the specified compiler flag for the compiler selected -# for the specified language, optionally saving it to the specified variable. -# ---------------------------------------------------------------------------- -AC_DEFUN([AX_CHECK_COMPILER_OPTION], -[ - ifelse($#, - 3, - [_AX_CHECK_COMPILER_OPTION_WITH_VAR($1, $2, $3)], - [_AX_CHECK_COMPILER_OPTION($1, $2)]) -]) - -# -# AX_CHECK_COMPILER_OPTIONS(language, [variable,] option ...) -# -# language - The autoconf language (C, C++, Objective C, Objective C++, -# etc.). -# variable - If supplied, the variable to add the checked compiler option -# to. -# options - The compiler flags to check. -# -# Add, if supported, the specified compiler flags for the compiler selected -# for the specified language, optionally saving it to the specified variable. -# ---------------------------------------------------------------------------- -AC_DEFUN([AX_CHECK_COMPILER_OPTIONS], -[ - ifelse($#, - 3, - [ - for ax_compiler_option in [$3]; do - _AX_CHECK_COMPILER_OPTION_WITH_VAR([$1], [$2], $ax_compiler_option) - done - ], - [ - for ax_compiler_option in [$2]; do - _AX_CHECK_COMPILER_OPTION([$1], $ax_compiler_option) - done - ]) -]) diff --git a/third_party/nlbuild-autotools/repo/autoconf/m4/ax_check_file.m4 b/third_party/nlbuild-autotools/repo/autoconf/m4/ax_check_file.m4 deleted file mode 100644 index ccb7048ee..000000000 --- a/third_party/nlbuild-autotools/repo/autoconf/m4/ax_check_file.m4 +++ /dev/null @@ -1,42 +0,0 @@ -# -# Copyright 2014-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file implements a GNU M4 autoconf macro for checking for -# the existence of files. -# -# The autoconf version of AC_CHECK_FILE is absolutely broken in -# that it cannot check for files when cross-compiling even though -# the only thing it relies upon is a shell file readability -# check. -# - -# AX_CHECK_FILE(FILE, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) -# ------------------------------------------------------------- -# -# Check for the existence of FILE. -AC_DEFUN([AX_CHECK_FILE], -[AS_VAR_PUSHDEF([ac_File], [ac_cv_file_$1])dnl -AC_CACHE_CHECK([for $1], [ac_File], -[if test -r "$1"; then - AS_VAR_SET([ac_File], [yes]) -else - AS_VAR_SET([ac_File], [no]) -fi]) -AS_VAR_IF([ac_File], [yes], [$2], [$3]) -AS_VAR_POPDEF([ac_File])dnl -])# AX_CHECK_FILE diff --git a/third_party/nlbuild-autotools/repo/autoconf/m4/ax_check_preprocessor.m4 b/third_party/nlbuild-autotools/repo/autoconf/m4/ax_check_preprocessor.m4 deleted file mode 100644 index 88fac9239..000000000 --- a/third_party/nlbuild-autotools/repo/autoconf/m4/ax_check_preprocessor.m4 +++ /dev/null @@ -1,116 +0,0 @@ -# -# Copyright 2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file defines a number of GNU autoconf M4-style macros -# for checking language-specific preprocessor options. -# - -# -# _AX_CHECK_PREPROCESSOR_OPTION_WITH_VAR(language, variable, option) -# -# language - The autoconf language (C, C++, Objective C, Objective C++, -# etc.). -# variable - The variable to add the checked preprocessor option to. -# option - The preprocessor flag to check. -# -# Add, if supported, the specified preprocessor flag for the preprocessor -# selected for the specified language to the provided variable. -# ---------------------------------------------------------------------------- -AC_DEFUN([_AX_CHECK_PREPROCESSOR_OPTION_WITH_VAR], -[ - AC_LANG_PUSH($1) - AC_MSG_CHECKING([whether the _AC_LANG preprocessor understands $3]) - SAVE_CPPFLAGS=${CPPFLAGS} - SAVE_$2=${$2} - CPPFLAGS=$3 - AC_TRY_CPP(,AC_MSG_RESULT([yes]); CPPFLAGS="${SAVE_CPPFLAGS}"; $2="${SAVE_$2} $3",AC_MSG_RESULT([no]); CPPFLAGS=${SAVE_CPPFLAGS}; $2=${SAVE_$2}); - unset SAVE_CPPFLAGS - unset SAVE_$2 - AC_LANG_POP($1) -]) - -# -# _AX_CHECK_PREPROCESSOR_OPTION(language, option) -# -# language - The autoconf language (C, C++, Objective C, Objective C++, -# etc.). -# option - The preprocessor flag to check. -# -# Add, if supported, the specified preprocessor flag for the preprocessor -# selected for the specified language. -# ---------------------------------------------------------------------------- -AC_DEFUN([_AX_CHECK_PREPROCESSOR_OPTION], -[ - AC_LANG_PUSH($1) - AC_MSG_CHECKING([whether the _AC_LANG preprocessor understands $2]) - SAVE_CPPFLAGS=${CPPFLAGS} - CPPFLAGS=$2 - AC_TRY_CPP(,AC_MSG_RESULT([yes]); CPPFLAGS="${SAVE_CPPFLAGS} $2",AC_MSG_RESULT([no]); CPPFLAGS=${SAVE_CPPFLAGS}); - unset SAVE_CPPFLAGS - AC_LANG_POP($1) -]) - -# -# AX_CHECK_PREPROCESSOR_OPTION(language, [variable,] option) -# -# language - The autoconf language (C, C++, Objective C, Objective C++, -# etc.). -# variable - If supplied, the variable to add the checked preprocessor option -# to. -# option - The preprocessor flag to check. -# -# Add, if supported, the specified preprocessor flag for the preprocessor -# selected for the specified language, optionally saving it to the specified -# variable. -# ---------------------------------------------------------------------------- -AC_DEFUN([AX_CHECK_PREPROCESSOR_OPTION], -[ - ifelse($#, - 3, - [_AX_CHECK_PREPROCESSOR_OPTION_WITH_VAR($1, $2, $3)], - [_AX_CHECK_PREPROCESSOR_OPTION($1, $2)]) -]) - -# -# AX_CHECK_PREPROCESSOR_OPTIONS(language, [variable,] option ...) -# -# language - The autoconf language (C, C++, Objective C, Objective C++, -# etc.). -# variable - If supplied, the variable to add the checked preprocessor option -# to. -# options - The preprocessor flags to check. -# -# Add, if supported, the specified preprocessor flags for the preprocessor -# selected for the specified language, optionally saving it to the specified -# variable. -# ---------------------------------------------------------------------------- -AC_DEFUN([AX_CHECK_PREPROCESSOR_OPTIONS], -[ - ifelse($#, - 3, - [ - for ax_preprocessor_option in [$3]; do - _AX_CHECK_PREPROCESSOR_OPTION_WITH_VAR([$1], [$2], $ax_preprocessor_option) - done - ], - [ - for ax_preprocessor_option in [$2]; do - _AX_CHECK_PREPROCESSOR_OPTION([$1], $ax_preprocessor_option) - done - ]) -]) diff --git a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_enable_coverage.m4 b/third_party/nlbuild-autotools/repo/autoconf/m4/nl_enable_coverage.m4 deleted file mode 100644 index 7a62a5359..000000000 --- a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_enable_coverage.m4 +++ /dev/null @@ -1,109 +0,0 @@ -# -# Copyright 2015-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file defines a GNU autoconf M4-style macro that adds an -# --enable-coverage configuration option to the package and -# controls whether the package will be built for code coverage. -# - -# -# NL_ENABLE_COVERAGE(default) -# -# default - Whether the option should be enabled (yes) or disabled (no) -# by default. -# -# Adds an --enable-coverage configuration option to the package with a -# default value of 'default' (should be either 'no' or 'yes') and controls -# whether the package will be built with or without code coverage. -# -# The value 'nl_cv_build_coverage' will be set to the result. In -# addition, NL_COVERAGE_CPPFLAGS and NL_COVERAGE_LIBS will be set -# to the appropriate values to pass to the compiler and linker, -# respectively. -# -# NOTE: This is only supported at present for GCC or GCC-compatible -# toolchains. -# -# NOTE: The behavior of this is influenced by nl_cv_build_optimized from -# NL_DISABLE_OPTIMIZATION -# -#------------------------------------------------------------------------------ -AC_DEFUN([NL_ENABLE_COVERAGE], -[ - # Check whether or not a default value has been passed in. - - m4_case([$1], - [yes],[], - [no],[], - [m4_fatal([$0: invalid default value '$1'; must be 'yes' or 'no'])]) - - AC_CACHE_CHECK([whether to build code-coverage instances of programs and libraries], - nl_cv_build_coverage, - [ - AC_ARG_ENABLE(coverage, - [AS_HELP_STRING([--enable-coverage],[Enable the generation of code-coverage instances @<:@default=$1@:>@.])], - [ - case "${enableval}" in - - no|yes) - nl_cv_build_coverage=${enableval} - - if test "${nl_cv_build_optimized}" = "yes"; then - AC_MSG_ERROR([both --enable-optimization and --enable-coverage cannot used. Please, choose one or the other to enable.]) - fi - ;; - - *) - AC_MSG_ERROR([Invalid value ${enableval} for --enable-coverage]) - ;; - - esac - ], - [ - if test "${nl_cv_build_optimized}" = "yes"; then - AC_MSG_WARN([--enable-optimization was specified, coverage disabled]) - nl_cv_build_coverage=no - - else - nl_cv_build_coverage=$1 - - fi - ]) - - if test "${nl_cv_build_coverage}" = "yes"; then - if test "${GCC}" != "yes"; then - AC_MSG_ERROR([GCC or a GCC-compatible toolchain is required for --enable-coverage]) - else - NL_COVERAGE_CPPFLAGS="--coverage" - if ${CC} --version | grep -q clang; then - NL_COVERAGE_LDFLAGS="--coverage" - else - NL_COVERAGE_LIBS="-lgcov" - fi - fi - fi - ]) -]) - - - - - - - - diff --git a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_enable_coverage_reporting.m4 b/third_party/nlbuild-autotools/repo/autoconf/m4/nl_enable_coverage_reporting.m4 deleted file mode 100644 index d20e3a5c2..000000000 --- a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_enable_coverage_reporting.m4 +++ /dev/null @@ -1,149 +0,0 @@ -# -# Copyright 2015-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file defines a GNU autoconf M4-style macro that adds an -# --enable-coverage configuration option to the package and -# controls whether the package will be built for code coverage -# reporting, using the LCOV package. -# - -# -# NL_ENABLE_COVERAGE_REPORTS(default) -# -# default - Whether the option should be automatic (auto), enabled -# (yes), or disabled (no) by default. -# -# Adds an --enable-coverage-reports configuration option to the -# package with a default value of 'default' (should be 'auto', 'no' or -# 'yes') and controls whether the package will be built with or -# without code coverage reports, using the LCOV package. -# -# The value 'nl_cv_build_coverage_reports' will be set to the result. In -# addition, LCOV will be set to the path of the 'lcov' tool and GENHTML will be set to the path of the 'genhtml' tool. -# -# NOTE: The behavior of this is influenced by nl_cv_build_coverage from -# NL_ENABLE_COVERAGE. -# -#------------------------------------------------------------------------------ -AC_DEFUN([NL_ENABLE_COVERAGE_REPORTS], -[ - # Check whether or not a default value has been passed in. - - m4_case([$1], - [auto],[], - [yes],[], - [no],[], - [m4_fatal([$0: invalid default value '$1'; must be 'auto', 'yes' or 'no'])]) - - # Check for the presence of lcov and genhtml, required - # to build and generate the coverage reports. - - AC_PATH_PROG(LCOV, lcov) - AC_PATH_PROG(GENHTML, genhtml) - - AC_CACHE_CHECK([whether to build graphical code coverage reports], - nl_cv_build_coverage_reports, - [ - AC_ARG_ENABLE(coverage-reports, - [AS_HELP_STRING([--enable-coverage-reports],[Enable the generation of code coverage reports (requires lcov) @<:@default=$1@:>@.])], - [ - case "${enableval}" in - - auto|no|yes) - nl_cv_build_coverage_reports=${enableval} - ;; - - *) - AC_MSG_ERROR([Invalid value ${enableval} for --enable-coverage]) - ;; - - esac - ], - [ - nl_cv_build_coverage_reports=$1 - ]) - - # If coverage is not enabled, then coverage reports - # defaults to 'no' if it is 'auto' or fails if it is - # 'yes'. Otherwise, availability of lcov and genhtml - # condition behavior. Lack of availability for 'yes' - # results in failure; however, for 'auto' then coverage - # reports default to 'no'. - - case "${nl_cv_build_coverage}" in - - no) - case "${nl_cv_build_coverage_reports}" in - - auto) - nl_cv_build_coverage_reports="no" - ;; - - yes) - AC_MSG_ERROR([--enable-coverage must be asserted to use --enable-coverage-reports.]) - ;; - - no) - ;; - - esac - ;; - - yes) - case "${nl_cv_build_coverage_reports}" in - - auto) - # Both lcov and genhtml must exist to successfully - # enable coverage reports. - - if test "x${LCOV}" = "x" || test "x${GENHTML}" = "x"; then - nl_cv_build_coverage_reports="no" - - else - nl_cv_build_coverage_reports="yes" - - fi - ;; - - yes) - # Both lcov and genhtml must exist to successfully - # enable coverage reports. Since the default or user - # ask is 'yes', we must fail if lcov or genhtml cannot - # be found. - - if test "x${LCOV}" = "x"; then - AC_MSG_ERROR([Cannot find 'lcov'. You must have the lcov package installed to use coverage reports.]) - - elif test "x${GENHTML}" = "x"; then - AC_MSG_ERROR([Cannot find 'genhtml'. You must have the lcov package installed to use coverage reports.]) - - elif test "${nl_cv_build_coverage_reports}" = "auto"; then - nl_cv_build_coverage_reports="yes" - - fi - ;; - - no) - ;; - - esac - ;; - - esac - ]) -]) diff --git a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_enable_debug.m4 b/third_party/nlbuild-autotools/repo/autoconf/m4/nl_enable_debug.m4 deleted file mode 100644 index e83f43da3..000000000 --- a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_enable_debug.m4 +++ /dev/null @@ -1,79 +0,0 @@ -# -# Copyright 2015-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file defines a GNU autoconf M4-style macro that adds an -# --enable-debug configuration option to the package and controls -# whether the package will be built for debug instances of programs -# and libraries. -# - -# -# NL_ENABLE_DEBUG(default) -# -# default - Whether the option should be enabled (yes) or disabled (no) -# by default. -# -# Adds an --enable-debug configuration option to the package with a -# default value of 'default' (should be either 'no' or 'yes') and controls -# whether the package will be built with or without -DDEBUG enabled. -# -# The value 'nl_cv_build_debug' will be set to the result. In -# addition, the contents of CFLAGS, CXXFLAGS, OBJCFLAGS, and -# OBJCXXFLAGS may be altered by the use of this macro, adding -DDEBUG -# if this option is asserted. -# -#------------------------------------------------------------------------------ -AC_DEFUN([NL_ENABLE_DEBUG], -[ - # Check whether or not a default value has been passed in. - - m4_case([$1], - [yes],[], - [no],[], - [m4_fatal([$0: invalid default value '$1'; must be 'yes' or 'no'])]) - - AC_CACHE_CHECK([whether to build debug instances of programs and libraries], - nl_cv_build_debug, - [ - AC_ARG_ENABLE(debug, - [AS_HELP_STRING([--enable-debug],[Enable the generation of debug instances @<:@default=$1@:>@.])], - [ - case "${enableval}" in - - no|yes) - nl_cv_build_debug=${enableval} - ;; - - *) - AC_MSG_ERROR([Invalid value ${enableval} for --enable-debug]) - ;; - - esac - ], - [ - nl_cv_build_debug=$1 - ]) - - if test "${nl_cv_build_debug}" = "yes"; then - CFLAGS="${CFLAGS} -DDEBUG" - CXXFLAGS="${CXXFLAGS} -DDEBUG" - OBJCFLAGS="${OBJCFLAGS} -DDEBUG" - OBJCXXFLAGS="${OBJCXXFLAGS} -DDEBUG" - fi - ]) -]) diff --git a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_enable_docs.m4 b/third_party/nlbuild-autotools/repo/autoconf/m4/nl_enable_docs.m4 deleted file mode 100644 index a7b3566f5..000000000 --- a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_enable_docs.m4 +++ /dev/null @@ -1,117 +0,0 @@ -# -# Copyright 2015-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file defines a GNU autoconf M4-style macro that adds an -# --disable-docs configuration option to the package and controls -# whether the package will be built with or without documentation. -# - -# -# NL_ENABLE_DOCS(default, dot_default) -# -# default - Whether the option should be automatic (auto), enabled -# (yes), disabled (no) by default. -# dot_default - Whether Doxygen should use (YES) or not use (NO) -# GraphViz dot. -# -# Adds an --disable-docs configuration option to the package with a -# default value of 'default' (should be 'auto', 'no' or 'yes') and -# controls whether the package will be built with or without Doxygen-based -# documentation. -# -# The value 'nl_cv_build_docs' will be set to the result. In addition: -# -# DOXYGEN - Will be set to the path of the Doxygen executable. -# DOT - Will be set to the path of the GraphViz dot -# executable. -# DOXYGEN_USE_DOT - Will be set to 'NO' or 'YES' depending on whether -# GraphViz dot is available. -# -#------------------------------------------------------------------------------ -AC_DEFUN([NL_ENABLE_DOCS], -[ - # Check whether or not the 'default' value is sane. - - m4_case([$1], - [auto],[], - [yes],[], - [no],[], - [m4_fatal([$0: invalid default value '$1'; must be 'auto', 'yes' or 'no'])]) - - # Check whether or not the 'dot_default' value is sane. - - m4_case([$2], - [YES],[], - [NO],[], - [m4_fatal([$0: invalid default value '$2'; must be 'YES' or 'NO'])]) - - DOXYGEN_USE_DOT=$2 - - AC_ARG_VAR(DOXYGEN, [Doxygen executable]) - AC_ARG_VAR(DOT, [GraphViz 'dot' executable, which may be used, when present, to generate Doxygen class graphs]) - - AC_PATH_PROG(DOXYGEN, doxygen) - AC_PATH_PROG(DOT, dot) - - AC_CACHE_CHECK([whether to build documentation], - nl_cv_build_docs, - [ - AC_ARG_ENABLE(docs, - [AS_HELP_STRING([--disable-docs],[Enable building documentation (requires Doxygen) @<:@default=$1@:>@.])], - [ - case "${enableval}" in - - auto|no|yes) - nl_cv_build_docs=${enableval} - ;; - - *) - AC_MSG_ERROR([Invalid value ${enableval} for --disable-docs]) - ;; - - esac - ], - [nl_cv_build_docs=$1]) - - if test "x${DOXYGEN}" != "x"; then - nl_cv_have_doxygen=yes - else - nl_cv_have_doxygen=no - fi - - if test "${nl_cv_build_docs}" = "auto"; then - if test "${nl_cv_have_doxygen}" = "no"; then - nl_cv_build_docs=no - else - nl_cv_build_docs=yes - fi - fi - - if test "${nl_cv_build_docs}" = "yes"; then - if test "${nl_cv_have_doxygen}" = "no"; then - AC_MSG_ERROR([Building docs was explicitly requested but Doxygen cannot be found]) - elif test "${nl_cv_have_doxygen}" = "yes"; then - if test "x${DOT}" != "x"; then - DOXYGEN_USE_DOT=YES - fi - fi - fi - ]) - - AC_SUBST(DOXYGEN_USE_DOT) -]) diff --git a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_enable_optimization.m4 b/third_party/nlbuild-autotools/repo/autoconf/m4/nl_enable_optimization.m4 deleted file mode 100644 index f6c941e53..000000000 --- a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_enable_optimization.m4 +++ /dev/null @@ -1,92 +0,0 @@ -# -# Copyright 2015-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file defines a GNU autoconf M4-style macro that adds an -# --enable-optimization configuration option to the package and -# controls whether the package will be built with or without code -# optimization. -# - -# -# NL_ENABLE_OPTIMIZATION(default) -# -# default - Whether the option should be enabled (yes) or disabled (no) -# by default. -# -# Adds an --enable-optimization configuration option to the package with a -# default value of 'default' (should be either 'no' or 'yes') and controls -# whether the package will be built with or without code optimization. -# -# The value 'nl_cv_build_optimized' will be set to the result. In -# addition, the contents of CFLAGS, CXXFLAGS, OBJCFLAGS, and OBJCXXFLAGS may -# be altered by the use of this macro, converting -O to -O0. -# -# NOTE: The behavior of this is influenced by nl_cv_build_coverage from -# NL_ENABLE_COVERAGE -# -#------------------------------------------------------------------------------ -AC_DEFUN([NL_ENABLE_OPTIMIZATION], -[ - # Check whether or not a default value has been passed in. - - m4_case([$1], - [yes],[], - [no],[], - [m4_fatal([$0: invalid default value '$1'; must be 'yes' or 'no'])]) - - AC_CACHE_CHECK([whether to build code-optimized instances of programs and libraries], - nl_cv_build_optimized, - [ - AC_ARG_ENABLE(optimization, - [AS_HELP_STRING([--enable-optimization],[Enable the generation of code-optimized instances @<:@default=$1@:>@.])], - [ - case "${enableval}" in - - no|yes) - nl_cv_build_optimized=${enableval} - - if test "${nl_cv_build_coverage}" = "yes" && test "${nl_cv_build_optimized}" = "yes"; then - AC_MSG_ERROR([both --enable-optimization and --enable-coverage cannot used. Please, choose one or the other to enable.]) - fi - ;; - - *) - AC_MSG_ERROR([Invalid value ${enableval} for --enable-optimized]) - ;; - - esac - ], - [ - if test "${nl_cv_build_coverage}" = "yes"; then - AC_MSG_WARN([--enable-coverage was specified, optimization disabled]) - nl_cv_build_optimized=no - - else - nl_cv_build_optimized=$1 - - fi - ]) - - if test "${nl_cv_build_optimized}" = "no"; then - CFLAGS="`echo ${CFLAGS} | sed -e 's,-O[[[:alnum:]]]*,-O0,g'`" - CXXFLAGS="`echo ${CXXFLAGS} | sed -e 's,-O[[[:alnum:]]]*,-O0,g'`" - OBJCFLAGS="`echo ${OBJCFLAGS} | sed -e 's,-O[[[:alnum:]]]*,-O0,g'`" - OBJCXXFLAGS="`echo ${OBJCXXFLAGS} | sed -e 's,-O[[[:alnum:]]]*,-O0,g'`" - fi - ]) -]) diff --git a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_enable_tests.m4 b/third_party/nlbuild-autotools/repo/autoconf/m4/nl_enable_tests.m4 deleted file mode 100644 index 25b7914fe..000000000 --- a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_enable_tests.m4 +++ /dev/null @@ -1,71 +0,0 @@ -# -# Copyright 2015-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file defines a GNU autoconf M4-style macro that adds an -# --enable-tests configuration option to the package and controls -# whether the package will be built with or without unit and -# integration tests. -# - -# -# NL_ENABLE_TESTS(default) -# -# default - Whether the option should be enabled (yes) or disabled (no) -# by default. -# -# Adds an --enable-tests configuration option to the package with a -# default value of 'default' (should be either 'no' or 'yes') and -# controls whether the package will be built with or without unit and -# integration tests. -# -# The value 'nl_cv_build_tests' will be set to the result. -# -#------------------------------------------------------------------------------ - -AC_DEFUN([NL_ENABLE_TESTS], -[ - # Check whether or not a default value has been passed in. - - m4_case([$1], - [yes],[], - [no],[], - [m4_fatal([$0: invalid default value '$1'; must be 'yes' or 'no'])]) - - AC_CACHE_CHECK([whether to build tests], - nl_cv_build_tests, - [ - AC_ARG_ENABLE(tests, - [AS_HELP_STRING([--enable-tests],[Enable building of tests @<:@default=$1@:>@.])], - [ - case "${enableval}" in - - no|yes) - nl_cv_build_tests=${enableval} - ;; - - *) - AC_MSG_ERROR([Invalid value ${enableval} for --enable-tests]) - ;; - - esac - ], - [ - nl_cv_build_tests=$1 - ]) - ]) -]) diff --git a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_enable_werror.m4 b/third_party/nlbuild-autotools/repo/autoconf/m4/nl_enable_werror.m4 deleted file mode 100644 index 85032ab7a..000000000 --- a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_enable_werror.m4 +++ /dev/null @@ -1,78 +0,0 @@ -# -# Copyright 2015-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file defines a GNU autoconf M4-style macro that adds an -# --enable-warnings-as-errors configuration option to the package -# and controls whether the package will be built to treat all -# compilation warnings as errors. # - -# -# NL_ENABLE_WERROR(default) -# -# default - Whether the option should be enabled (yes) or disabled (no) -# by default. -# -# Adds an --enable-warnings-as-errors configuration option to the -# package with a default value of 'default' (should be either 'no' or -# 'yes') and controls whether the package will be built with or -# without -Werror enabled. -# -# The value 'nl_cv_warnings_as_errors' will be set to the result. In -# addition, the variable NL_WERROR_CPPFLAGS will be set to the -# compiler-specific flag necessary to assert this option. -# -#------------------------------------------------------------------------------ -AC_DEFUN([NL_ENABLE_WERROR], -[ - # Check whether or not a default value has been passed in. - - m4_case([$1], - [yes],[], - [no],[], - [m4_fatal([$0: invalid default value '$1'; must be 'yes' or 'no'])]) - - AC_CACHE_CHECK([whether to treat all compilation warnings as errors], - nl_cv_warnings_as_errors, - [ - AC_ARG_ENABLE(warnings-as-errors, - [AS_HELP_STRING([--enable-warnings-as-errors],[Treat all compilation warnings as errors @<:@default=$1@:>@.])], - [ - case "${enableval}" in - - no|yes) - nl_cv_warnings_as_errors=${enableval} - ;; - - *) - AC_MSG_ERROR([Invalid value ${enableval} for --enable-warnings-as-errors]) - ;; - - esac - ], - [ - nl_cv_warnings_as_errors=$1 - ]) - ]) - - if test "${nl_cv_warnings_as_errors}" = "yes"; then - AX_CHECK_COMPILER_OPTION([C], NL_WERROR_CPPFLAGS, [-Werror]) - if test "x${NL_WERROR_CPPFLAGS}" = "x"; then - AC_MSG_ERROR([Could not determine how to treat warnings as errors for your compiler ${CC}]) - fi - fi -]) diff --git a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_filtered_canonical.m4 b/third_party/nlbuild-autotools/repo/autoconf/m4/nl_filtered_canonical.m4 deleted file mode 100644 index d3d2eb1a1..000000000 --- a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_filtered_canonical.m4 +++ /dev/null @@ -1,153 +0,0 @@ -# -# Copyright 2019 Google LLC. All Rights Reserved. -# Copyright 2015-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file defines a GNU autoconf M4-style macro for filtering -# the autoconf canonical build, host, or target. -# -# Mac OS X / Darwin ends up putting some versioning cruft on the -# end of its tuples that most users of these variables rarely -# care about. -# - -# -# _NL_FILTERED_CANONICAL_SPLIT(name) -# -# name - The existing autoconf variable to split -# -# This splits, by CPU architecture, vendor, and OS, the filtered -# tuples otherwise created by autotools, creating: -# -# nl_filtered_ -# nl_filtered__cpu -# nl_filtered__os -# nl_filtered__vendor -# -# filtered of the versioning cruft on the vendor component that most -# users of these variables rarely care about. -# -# The resulting values are available both in configure.ac as well -# as in makefiles. -# -_NL_FILTERED_CANONICAL_SPLIT(name) -AC_DEFUN([_NL_FILTERED_CANONICAL_SPLIT], -[ - case ${nl_cv_filtered_$1} in - - *-*-*) ;; - *) AC_MSG_ERROR([invalid value of canonical $1]);; - - esac - - AC_SUBST([nl_filtered_$1], [$nl_cv_filtered_$1]) - - nl_save_IFS=$IFS; IFS='-' - set x $nl_cv_filtered_$1 - shift - - AC_SUBST([nl_filtered_$1_cpu], [$[1]]) - AC_SUBST([nl_filtered_$1_vendor], [$[2]]) - - shift; shift - [# Remember, the first character of IFS is used to create $]*, - # except with old shells: - nl_filtered_$1_os=$[*] - IFS=$nl_save_IFS - - case nl_filtered_$$1_os in - - *\ *) nl_filtered_$1_os=`echo "$$1_os" | sed 's/ /-/g'`;; - - esac - - AC_SUBST([nl_filtered_$1_os]) -]) - -# -# _NL_FILTERED_CANONICAL(name) -# -# name - The existing autoconf variable to filter -# -# Mac OS X / Darwin ends up putting some versioning cruft on the end -# of its tuples that most users of these variables rarely care about. -# -# This filters such versioning cruft from the variable 'name' -# generated from AC_CANONICAL_ and saves it in -# 'nl_filtered_'. -# -_NL_FILTERED_CANONICAL(name) -AC_DEFUN([_NL_FILTERED_CANONICAL], -[ - AC_CACHE_CHECK([filtered $1 system type], - [nl_cv_filtered_$1], - [nl_cv_filtered_$1=`echo ${$1} | sed -e 's/[[[:digit:].]]*$//g'` - nl_filtered_$1=${nl_cv_filtered_$1}]) - - _NL_FILTERED_CANONICAL_SPLIT($1) -]) - -# -# NL_FILTERED_CANONICAL_BUILD -# -# Mac OS X / Darwin ends up putting some versioning cruft on the end -# of its tuples that most users of these variables rarely care about. -# -# This filters such versioning cruft from the variable 'build' -# generated from AC_CANONICAL_BUILD and saves it in -# 'nl_filtered_build'. -# -NL_FILTERED_CANONICAL_BUILD -AC_DEFUN([NL_FILTERED_CANONICAL_BUILD], -[ - AC_REQUIRE([AC_CANONICAL_BUILD]) - _NL_FILTERED_CANONICAL(build) -]) - -# -# NL_FILTERED_CANONICAL_HOST -# -# Mac OS X / Darwin ends up putting some versioning cruft on the end -# of its tuples that most users of these variables rarely care about. -# -# This filters such versioning cruft from the variable 'host' -# generated from AC_CANONICAL_HOST and saves it in -# 'nl_filtered_build'. -# -NL_FILTERED_CANONICAL_HOST -AC_DEFUN([NL_FILTERED_CANONICAL_HOST], -[ - AC_REQUIRE([AC_CANONICAL_HOST]) - _NL_FILTERED_CANONICAL(host) -]) - -# -# NL_FILTERED_CANONICAL_TARGET -# -# Mac OS X / Darwin ends up putting some versioning cruft on the end -# of its tuples that most users of these variables rarely care about. -# -# This filters such versioning cruft from the variable 'target' -# generated from AC_CANONICAL_TARGET and saves it in -# 'nl_filtered_target'. -# -NL_FILTERED_CANONICAL_TARGET -AC_DEFUN([NL_FILTERED_CANONICAL_TARGET], -[ - AC_REQUIRE([AC_CANONICAL_TARGET]) - _NL_FILTERED_CANONICAL(target) -]) diff --git a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_prog_lndir.m4 b/third_party/nlbuild-autotools/repo/autoconf/m4/nl_prog_lndir.m4 deleted file mode 100644 index a958858f0..000000000 --- a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_prog_lndir.m4 +++ /dev/null @@ -1,76 +0,0 @@ -# -# Copyright 2015-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file defines a GNU autoconf M4-style macro for checking -# for a build host-based tool that can shadow a directory using -# symbolic links, ostensibly either GNU cp or X11 lndir. -# - -AC_DEFUN([_NL_CHECK_CP_RS], -[ - $1 -Rs 2>&1 | grep 'missing file operand' > /dev/null -]) - -AC_DEFUN([_NL_CHECK_LNDIR], -[ - $1 -silent 2>&1 | grep 'usage: lndir' > /dev/null -]) - -# -# NL_PROG_LNDIR([fallback GNU cp path to test, fallback GNU cp path to set]) -# -# test path - The fallback GNU cp path and arguments to test if a system -# GNU cp cannot be found. -# set path - The fallback GNU cp path and arguments to set to LNDIR if -# the test path succeeds. -# -# Determine and assign to LNDIR, a build host-based tool that can shadow -# a directory using symbolic links, attempting either GNU cp or X11 lndir -# as preferred defaults. -# -# If the host doesn't have GNU cp natively, the caller can specify -# both a GNU cp path to test and a GNU cp path to set if the test path -# was successful. -# -# ---------------------------------------------------------------------------- -AC_DEFUN([NL_PROG_LNDIR], -[ - AC_ARG_VAR(LNDIR, [Program and arguments to create a shadow directory of symbolic links to another directory tree (e.g. 'cp -Rs')]) - - AC_MSG_CHECKING([how to shadow a directory tree]) - - if test "x${LNDIR}" = "x"; then - if `_NL_CHECK_CP_RS(cp)`; then - LNDIR="cp -Rs" - - elif `_NL_CHECK_LNDIR(lndir)`; then - LNDIR="lndir -silent" - - elif `_NL_CHECK_CP_RS($1)`; then - LNDIR="$2 -Rs" - - else - AC_MSG_ERROR([Cannot determine how to shadow a directory tree. Neither 'cp -Rs' nor 'lndir -silent' appear to be available or functional. Please consider installing or making available in your PATH one of: GNU coreutils , XQuartz (Mac OS X-only) , or lndir .]) - - fi - fi - - AC_MSG_RESULT(${LNDIR}) - - AC_SUBST(LNDIR) -]) diff --git a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_werror.m4 b/third_party/nlbuild-autotools/repo/autoconf/m4/nl_werror.m4 deleted file mode 100644 index 5385b5d6e..000000000 --- a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_werror.m4 +++ /dev/null @@ -1,110 +0,0 @@ -# -# Copyright 2015-2018 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file defines GNU autoconf M4-style macros that ensure the -# -Werror (or -Werror=<...>) compiler option(s) for GCC-based or -# -compatible compilers do not break some autoconf tests (see -# http://lists.gnu.org/archive/html/autoconf-patches/2008-09/msg00014.html). -# -# If -Werror (or -Werror=<...>) has/have been passed transform it -# into -Wno-error (or -Wno-error=<...>) for CPPFLAGS, CFLAGS, -# CXXFLAGS, OBJCFLAGS, and OBJCXXFLAGS with -# NL_SAVE_WERROR. Transform them back again with -# NL_RESTORE_WERROR. -# - -# -# _NL_SAVE_WERROR_FOR_VAR(variable) -# -# variable - The compiler flags variable to scan for the presence of -# -Werror (or -Werror=<...>) and, if present, transform -# to -Wno-error (or -Wno-error=<...>). -# -# This transforms, for the specified compiler flags variable, -Werror -# (or -Werror=<...>) to -Wno-error (or -Wno-error=<...>), if it was it -# present. The original state may be restored by invoking -# _NL_RESTORE_WERROR_FOR_VAR([variable]). -# -#------------------------------------------------------------------------------ -AC_DEFUN([_NL_SAVE_WERROR_FOR_VAR], -[ - if echo "${$1}" | grep -q '\-Werror'; then - $1="`echo ${$1} | sed -e 's,-Werror\(=[[[:alnum:]_-]]\+\)*\([[[:space:]]]\),-Wno-error\1\2,g'`" - nl_had_$1_werror=yes - else - nl_had_$1_werror=no - fi -]) - -# -# _NL_RESTORE_WERROR_FOR_VAR(variable) -# -# variable - The compiler flag for which to restore -Wno-error back -# to -Werror if it was originally passed in by the user as -# such. -# -# This restores, for the specified compiler flags variable, -Werror -# (or -Werror=<...>) from -Wno-error (or -Wno-error=<...>), if it was -# initially set as -Werror (or -Werror=<...>) at the time -# _NL_SAVE_WERROR_FOR_VAR([variable]) was invoked. -# -#------------------------------------------------------------------------------ -AC_DEFUN([_NL_RESTORE_WERROR_FOR_VAR], -[ - if test "${nl_had_$1_werror}" = "yes"; then - $1="`echo ${$1} | sed -e 's,-Wno-error\(=[[[:alnum:]_-]]\+\)*\([[[:space:]]]\),-Werror\1\2,g'`" - fi - - unset nl_had_$1_werror -]) - -# -# NL_SAVE_WERROR -# -# This transforms, for each of CFLAGS, CXXFLAGS, OBJCFLAGS, and -# OBJCXXFLAGS, -Werror (or -Werror=<...>) to -Wno-error (or -# -Wno-error=<...>), if it was it present. The original state may be -# restored by invoking NL_RESTORE_WERROR. -# -#------------------------------------------------------------------------------ -AC_DEFUN([NL_SAVE_WERROR], -[ - _NL_SAVE_WERROR_FOR_VAR([CPPFLAGS]) - _NL_SAVE_WERROR_FOR_VAR([CFLAGS]) - _NL_SAVE_WERROR_FOR_VAR([CXXFLAGS]) - _NL_SAVE_WERROR_FOR_VAR([OBJCFLAGS]) - _NL_SAVE_WERROR_FOR_VAR([OBJCXXFLAGS]) -]) - -# -# NL_RESTORE_WERROR -# -# This restores, for each of OBJCXXFLAGS, OBJCFLAGS, CXXFLAGS, and -# CFLAGS, -Werror (or -Werror=<...>) from -Wno-error (or -# -Wno-error=<...>), if it was initially set as -Werror (or -# -Werror=<...>) at the time NL_SAVE_WERROR was invoked. -# -#------------------------------------------------------------------------------ -AC_DEFUN([NL_RESTORE_WERROR], -[ - _NL_RESTORE_WERROR_FOR_VAR([OBJCXXFLAGS]) - _NL_RESTORE_WERROR_FOR_VAR([OBJCFLAGS]) - _NL_RESTORE_WERROR_FOR_VAR([CXXFLAGS]) - _NL_RESTORE_WERROR_FOR_VAR([CFLAGS]) - _NL_RESTORE_WERROR_FOR_VAR([CPPFLAGS]) -]) diff --git a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_with_package.m4 b/third_party/nlbuild-autotools/repo/autoconf/m4/nl_with_package.m4 deleted file mode 100644 index fc5eaec2e..000000000 --- a/third_party/nlbuild-autotools/repo/autoconf/m4/nl_with_package.m4 +++ /dev/null @@ -1,755 +0,0 @@ -# -# Copyright 2015-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file defines a GNU autoconf M4-style macro for checking -# the presence and viability of both required and optional -# dependent packages, which may be internal or external to the -# current package. -# -# Five (5) macros are made available: -# -# * NL_WITH_REQUIRED_EXTERNAL_PACKAGE -# * NL_WITH_OPTIONAL_EXTERNAL_PACKAGE -# * NL_WITH_REQUIRED_INTERNAL_PACKAGE -# * NL_WITH_OPTIONAL_INTERNAL_PACKAGE -# * NL_WITH_PACKAGE -# -# Note, however, that NL_WITH_PACKAGE is deprecated and maps to -# NL_WITH_REQUIRED_INTERNAL_PACKAGE. -# - -# _NL_ARG_WITH_INCLUDES_OR_LIBS(PACKAGE-DISPOSITION, -# PACKAGE-SOURCE, -# PACKAGE-PRETTY-NAME, -# PACKAGE-VARIABLE-PREFIX, -# PACKAGE-SUCCINCT-NAME, -# PACKAGE-WITH-OPTION, -# PLURAL-WITH-OPTION-HELP-WORD, -# WITH-DIR-VARIABLE-MODIFIER) -# ---------------------------------------------------------------------------- -# This is a wrapper around AC_ARG_WITH that provides the ability to -# optionally specify a dependent package include and link library -# directories independently as -# --with--=. -# -# If the package is specified as required, the use of -# --without- or the use of -# --with-=no will result in a fatal error. -# -# At the successful conclusion of the execution of the macro, -# two variables will be defined: -# -# * nl_with_ -# * __dir -# -# The package disposition and source are specified by: -# -# PACKAGE-DISPOSITION : This may be either 'required' if the dependent -# package is required or 'optional' if -# not. -# PACKAGE-SOURCE : This may be either 'internal' if the dependent -# package may be provided either -# internally or externally to the current -# package or 'external' if the dependent -# package may only be provided outside of -# the current package. This also serves as -# the default value for where the -# configuration script expects to find the -# package. -# -# The dependent package is specified in three forms: -# -# PACKAGE-PRETTY-NAME : The human-readable name by which the package -# will be referred for any diagnostic output. For -# example, "My Great Software Package". -# PACKAGE-VARIABLE-PREFIX : The package-specific prefix applied to variables -# defined as a result of running this macro for the -# packages. For example, "MGSP" here is transformed -# into MGSP_CPPFLAGS. -# PACKAGE-SUCCINCT-NAME : The package-specific name used for pkg-config, -# in temporary variables and on the -# configure command line. For example, -# "mgsp" here is used for --with-mgsp=DIR -# or 'pkg-config --cflags mgsp'. -# ---------------------------------------------------------------------------- -AC_DEFUN([_NL_ARG_WITH_INCLUDES_OR_LIBS], -[ - dnl Check whether or not the package is required - - m4_case([$1], - [required],[], - [optional],[], - [m4_fatal([$0: invalid disposition value '$1'; must be 'required' or 'optional'])]) - - dnl Check whether or not the package is internal - - m4_case([$2], - [internal],[], - [external],[], - [m4_fatal([$0: invalid source value '$2'; must be 'internal' or 'external'])]) - - AC_ARG_WITH($5-$6, - AS_HELP_STRING([--with-$5-$6=DIR], - [Specify location of $1 $3 $7 @<:@default=$2@:>@.]), - [ - if test "${withval}" = "no"; then - m4_if([$1], - [required], - [AC_MSG_ERROR([${PACKAGE_NAME} requires the $3 package.])], - [nl_with_$5=${withval}]) - fi - - if test "x${$5_dir}" != "x"; then - AC_MSG_WARN([overriding --with-$5=${$5_dir}]) - fi - - if test "${withval}" = "internal"; then - $5_$8_dir=${withval} - nl_with_$5=${withval} - else - $5_$8_dir=${withval} - nl_with_$5=external - fi - ], - [ - $5_$8_dir=; - if test "x${nl_with_$5}" = "x"; then - nl_with_$5=$2 - fi - ]) -]) - -# _NL_ARG_WITH_INCLUDES(PACKAGE-DISPOSITION, -# PACKAGE-SOURCE, -# PACKAGE-PRETTY-NAME, -# PACKAGE-VARIABLE-PREFIX, -# PACKAGE-SUCCINCT-NAME) -# ---------------------------------------------------------------------------- -# This is a wrapper around AC_ARG_WITH that provides the ability to -# optionally specify a dependent package include directory -# independently as --with--includes=. -# -# If the package is specified as required, the use of -# --without--includes or the use of -# --with--includes=no will result in a fatal error. -# -# At the successful conclusion of the execution of the macro, -# two variables will be defined: -# -# * nl_with_ -# * _header_dir -# -# The package disposition and source are specified by: -# -# PACKAGE-DISPOSITION : This may be either 'required' if the dependent -# package is required or 'optional' if -# not. -# PACKAGE-SOURCE : This may be either 'internal' if the dependent -# package may be provided either -# internally or externally to the current -# package or 'external' if the dependent -# package may only be provided outside of -# the current package. This also serves as -# the default value for where the -# configuration script expects to find the -# package. -# -# The dependent package is specified in three forms: -# -# PACKAGE-PRETTY-NAME : The human-readable name by which the package -# will be referred for any diagnostic output. For -# example, "My Great Software Package". -# PACKAGE-VARIABLE-PREFIX : The package-specific prefix applied to variables -# defined as a result of running this macro for the -# packages. For example, "MGSP" here is transformed -# into MGSP_CPPFLAGS. -# PACKAGE-SUCCINCT-NAME : The package-specific name used for pkg-config, -# in temporary variables and on the -# configure command line. For example, -# "mgsp" here is used for --with-mgsp=DIR -# or 'pkg-config --cflags mgsp'. -# ---------------------------------------------------------------------------- -AC_DEFUN([_NL_ARG_WITH_INCLUDES], -[ - _NL_ARG_WITH_INCLUDES_OR_LIBS([$1], [$2], [$3], [$4], [$5], [includes], [headers], [header])dnl -]) - -# _NL_ARG_WITH_LIBS(PACKAGE-DISPOSITION, -# PACKAGE-SOURCE, -# PACKAGE-PRETTY-NAME, -# PACKAGE-VARIABLE-PREFIX, -# PACKAGE-SUCCINCT-NAME) -# ---------------------------------------------------------------------------- -# This is a wrapper around AC_ARG_WITH that provides the ability to -# optionally specify a dependent package link library directory -# independently as --with--libs=. -# -# If the package is specified as required, the use of -# --without--libs or the use of -# --with--libs=no will result in a fatal error. -# -# At the successful conclusion of the execution of the macro, -# two variables will be defined: -# -# * nl_with_ -# * _library_dir -# -# The package disposition and source are specified by: -# -# PACKAGE-DISPOSITION : This may be either 'required' if the dependent -# package is required or 'optional' if -# not. -# PACKAGE-SOURCE : This may be either 'internal' if the dependent -# package may be provided either -# internally or externally to the current -# package or 'external' if the dependent -# package may only be provided outside of -# the current package. This also serves as -# the default value for where the -# configuration script expects to find the -# package. -# -# The dependent package is specified in three forms: -# -# PACKAGE-PRETTY-NAME : The human-readable name by which the package -# will be referred for any diagnostic output. For -# example, "My Great Software Package". -# PACKAGE-VARIABLE-PREFIX : The package-specific prefix applied to variables -# defined as a result of running this macro for the -# packages. For example, "MGSP" here is transformed -# into MGSP_CPPFLAGS. -# PACKAGE-SUCCINCT-NAME : The package-specific name used for pkg-config, -# in temporary variables and on the -# configure command line. For example, -# "mgsp" here is used for --with-mgsp=DIR -# or 'pkg-config --cflags mgsp'. -# ---------------------------------------------------------------------------- -AC_DEFUN([_NL_ARG_WITH_LIBS], -[ - _NL_ARG_WITH_INCLUDES_OR_LIBS([$1], [$2], [$3], [$4], [$5], [libs], [libraries], [library])dnl -]) - -# _NL_ARG_WITH_PACKAGE(PACKAGE-DISPOSITION, -# PACKAGE-SOURCE, -# PACKAGE-PRETTY-NAME, -# PACKAGE-VARIABLE-PREFIX, -# PACKAGE-SUCCINCT-NAME) -# ---------------------------------------------------------------------------- -# This is a wrapper around AC_ARG_WITH that provides the ability to -# optionally specify a dependent package as -# --with-= or to independently specify the -# include and link library directories independently as -# --with--includes= and -# --with--libs=. -# -# If the package is specified as required, the use of -# --without-* or the use of -# --with-*=no will result in a fatal error. -# -# At the successful conclusion of the execution of the macro, -# two or more variables will be defined: -# -# * nl_with_ -# * _dir -# * _header_dir -# * _library_dir -# -# The package disposition and source are specified by: -# -# PACKAGE-DISPOSITION : This may be either 'required' if the dependent -# package is required or 'optional' if -# not. -# PACKAGE-SOURCE : This may be either 'internal' if the dependent -# package may be provided either -# internally or externally to the current -# package or 'external' if the dependent -# package may only be provided outside of -# the current package. This also serves as -# the default value for where the -# configuration script expects to find the -# package. -# -# The dependent package is specified in three forms: -# -# PACKAGE-PRETTY-NAME : The human-readable name by which the package -# will be referred for any diagnostic output. For -# example, "My Great Software Package". -# PACKAGE-VARIABLE-PREFIX : The package-specific prefix applied to variables -# defined as a result of running this macro for the -# packages. For example, "MGSP" here is transformed -# into MGSP_CPPFLAGS. -# PACKAGE-SUCCINCT-NAME : The package-specific name used for pkg-config, -# in temporary variables and on the -# configure command line. For example, -# "mgsp" here is used for --with-mgsp=DIR -# or 'pkg-config --cflags mgsp'. -# ---------------------------------------------------------------------------- -AC_DEFUN([_NL_ARG_WITH_PACKAGE], -[ - AC_ARG_WITH($5, - AS_HELP_STRING([--with-$5=DIR], - [Specify location of the $1 $3 headers and libraries @<:@default=$2@:>@.]), - [ - if test "${withval}" = "no"; then - m4_if([$1], - [required], - [AC_MSG_ERROR([${PACKAGE_NAME} requires the $3 package.])], - [nl_with_$5=${withval}]) - elif test "${withval}" = "internal"; then - $5_dir=${withval} - nl_with_$5=${withval} - else - $5_dir=${withval} - nl_with_$5=external - fi - ], - [$5_dir=; nl_with_$5=$2]) - - # Allow users to specify external headers and libraries independently. - - _NL_ARG_WITH_INCLUDES([$1], [$2], [$3], [$4], [$5])dnl - - _NL_ARG_WITH_LIBS([$1], [$2], [$3], [$4], [$5])dnl -]) - -# _NL_WITH_PACKAGE(PACKAGE-DISPOSITION, -# PACKAGE-SOURCE, -# PACKAGE-PRETTY-NAME, -# PACKAGE-VARIABLE-PREFIX, -# PACKAGE-SUCCINCT-NAME, -# [DEFAULT-PACKAGE-LIBS], -# [ACTIONS-TO-RUN-IF-NOT-EXTERNAL], -# [ACTIONS-TO-RUN-IF-NOT-INTERNAL]) -# ---------------------------------------------------------------------------- -# This macro is used to test for the presence, with pkg-config if it -# is available, of the specified, optional or required dependent -# package. The dependent package may be provided externally or may -# exist within the current package itself. -# -# If the package is specified as required, failure to find the -# dependent package will result in a fatal error. -# -# At the successful conclusion of the execution of the macro, three -# variables will be defined: -# -# * _CPPFLAGS -# * _LDFLAGS -# * _LIBS -# -# In addition, the variable: -# -# * nl_with_ -# -# will unconditionally be set to the source of the package if it is to -# be used and is found; otherwise, 'no' if it is not to be used. -# -# The package disposition and source are specified by: -# -# PACKAGE-DISPOSITION : This may be either 'required' if the dependent -# package is required or 'optional' if -# not. -# PACKAGE-SOURCE : This may be either 'internal' if the dependent -# package may be provided either -# internally or externally to the current -# package or 'external' if the dependent -# package may only be provided outside of -# the current package. This also serves as -# the default value for where the -# configuration script expects to find the -# package. -# -# The dependent package is specified in three forms: -# -# PACKAGE-PRETTY-NAME : The human-readable name by which the package -# will be referred for any diagnostic output. For -# example, "My Great Software Package". -# PACKAGE-VARIABLE-PREFIX : The package-specific prefix applied to variables -# defined as a result of running this macro for the -# packages. For example, "MGSP" here is transformed -# into MGSP_CPPFLAGS. -# PACKAGE-SUCCINCT-NAME : The package-specific name used for pkg-config, -# in temporary variables and on the -# configure command line. For example, -# "mgsp" here is used for --with-mgsp=DIR -# or 'pkg-config --cflags mgsp'. -# -# In addition, if any additional, default link libraries are required -# for use with the package, these are specified as: -# -# DEFAULT-PACKAGE-LIBS : Default link libraries required for use with -# the package. These are used if pkg-config is -# not available or cannot identify any -# such libraries. For example, '-lmgsp'. -# -# If the package is specified, either internally or externally, optional -# actions are run. -# -# ACTIONS-TO-RUN-IF-NOT-EXTERNAL : Optional actions to run if the package -# is not external. -# ACTIONS-TO-RUN-IF-NOT-INTERNAL : Optional actions to run if the package -# is not internal. -# ---------------------------------------------------------------------------- -AC_DEFUN([_NL_WITH_PACKAGE], -[ - # Influential external variables for the package support - - AC_ARG_VAR($4_CPPFLAGS, [$3 C preprocessor flags]) - AC_ARG_VAR($4_LDFLAGS, [$3 linker flags]) - AC_ARG_VAR($4_LIBS, [$3 linker libraries]) - - # Allow the user to specify both external headers and libraries - # together (or internal). - - _NL_ARG_WITH_PACKAGE([$1], [$2], [$3], [$4], [$5])dnl - - if test "${nl_with_$5}" == "no"; then - AC_MSG_CHECKING([whether to use the $3 package]) - AC_MSG_RESULT([${nl_with_$5}]) - - else - AC_MSG_CHECKING([source of the $3 package]) - AC_MSG_RESULT([${nl_with_$5}]) - - # If the user has selected or has defaulted into the internal $3 - # package, set the values appropriately. Otherwise, run through the - # usual routine. - - if test "${nl_with_$5}" = "internal"; then - $7 - - else - # We always prefer checking the values of the various '--with-$5-...' - # options first to using pkg-config because the former might be used - # in a cross-compilation environment on a system that also contains - # pkg-config. In such a case, the user wants what he/she specified - # rather than what pkg-config indicates. - - if test "x${$5_dir}" != "x" -o "x${$5_header_dir}" != "x" -o "x${$5_library_dir}" != "x"; then - if test "x${$5_dir}" != "x"; then - if test -d "${$5_dir}"; then - if test -d "${$5_dir}/include"; then - $4_CPPFLAGS="-I${$5_dir}/include" - else - $4_CPPFLAGS="-I${$5_dir}" - fi - - if test -d "${$5_dir}/lib"; then - $4_LDFLAGS="-L${$5_dir}/lib" - else - $4_LDFLAGS="-L${$5_dir}" - fi - else - AC_MSG_ERROR([No such directory ${$5_dir}]) - fi - fi - - if test "x${$5_header_dir}" != "x"; then - if test -d "${$5_header_dir}"; then - $4_CPPFLAGS="-I${$5_header_dir}" - else - AC_MSG_ERROR([No such directory ${$5_header_dir}]) - fi - fi - - if test "x${$5_library_dir}" != "x"; then - if test -d "${$5_library_dir}"; then - $4_LDFLAGS="-L${$5_library_dir}" - else - AC_MSG_ERROR([No such directory ${$5_library_dir}]) - fi - fi - - $4_LIBS="${$4_LDFLAGS} $6" - - elif test "x${PKG_CONFIG}" != "x"; then - if ${PKG_CONFIG} --exists "$5"; then - $4_CPPFLAGS="`${PKG_CONFIG} --cflags $5`" - $4_LDFLAGS="`${PKG_CONFIG} --libs-only-L $5`" - $4_LIBS="`${PKG_CONFIG} --libs-only-l $5`" - else - m4_if([$1], - [required], - [AC_MSG_ERROR([Cannot find the $5 package with ${PKG_CONFIG}. ${PACKAGE_NAME} requires the $5 package. Try installing the package or use the relevant --with options to configure.])], - [nl_with_$5="no"]) - fi - - else - m4_if([$1], - [required], - [AC_MSG_ERROR([Cannot find the $3 package. ${PACKAGE_NAME} requires the $3 package.])], - [nl_with_$5="no"]) - fi - fi - - AC_SUBST($4_CPPFLAGS) - AC_SUBST($4_LDFLAGS) - AC_SUBST($4_LIBS) - - if test "${nl_with_$5}" != "internal" -a "${nl_with_$5}" != "no"; then - nl_saved_CPPFLAGS="${CPPFLAGS}" - nl_saved_LDFLAGS="${LDFLAGS}" - nl_saved_LIBS="${LIBS}" - - CPPFLAGS="${CPPFLAGS} ${$4_CPPFLAGS}" - LDFLAGS="${LDFLAGS} ${$4_LDFLAGS}" - LIBS="${LIBS} ${$4_LIBS}" - - $8 - - CPPFLAGS="${nl_saved_CPPFLAGS}" - LDFLAGS="${nl_saved_LDFLAGS}" - LIBS="${nl_saved_LIBS}" - fi - fi -]) - -# NL_WITH_REQUIRED_EXTERNAL_PACKAGE(PACKAGE-PRETTY-NAME, -# PACKAGE-VARIABLE-PREFIX, -# PACKAGE-SUCCINCT-NAME, -# [DEFAULT-PACKAGE-LIBS], -# [ACTIONS-TO-RUN]) -# ---------------------------------------------------------------------------- -# This macro is used to test for the presence, with pkg-config if it -# is available, of the specified, required external dependent package. -# -# Failure to find the dependent package will result in a fatal error. -# -# The dependent package is specified in three forms: -# -# PACKAGE-PRETTY-NAME : The human-readable name by which the package -# will be referred for any diagnostic output. For -# example, "My Great Software Package". -# PACKAGE-VARIABLE-PREFIX : The package-specific prefix applied to variables -# defined as a result of running this macro for the -# packages. For example, "MGSP" here is transformed -# into MGSP_CPPFLAGS. -# PACKAGE-SUCCINCT-NAME : The package-specific name used for pkg-config, -# in temporary variables and on the -# configure command line. For example, -# "mgsp" here is used for --with-mgsp=DIR -# or 'pkg-config --cflags mgsp'. -# -# In addition, if any additional, default link libraries are required -# for use with the package, these are specified as: -# -# DEFAULT-PACKAGE-LIBS : Default link libraries required for use with -# the package. These are used if pkg-config is -# not available or cannot identify any -# such libraries. For example, '-lmgsp'. -# -# If the package is specified, optional actions are run. -# -# ACTIONS-TO-RUN-IF-FOUND : Optional actions to run if the package is found. -# ---------------------------------------------------------------------------- -AC_DEFUN([NL_WITH_REQUIRED_EXTERNAL_PACKAGE], -[ - _NL_WITH_PACKAGE([required], [external], [$1], [$2], [$3], [$4], [:], [$5])dnl -]) - -# NL_WITH_OPTIONAL_EXTERNAL_PACKAGE(PACKAGE-PRETTY-NAME, -# PACKAGE-VARIABLE-PREFIX, -# PACKAGE-SUCCINCT-NAME, -# [DEFAULT-PACKAGE-LIBS], -# [ACTIONS-TO-RUN]) -# ---------------------------------------------------------------------------- -# This macro is used to test for the presence, with pkg-config if it -# is available, of the specified, optional external dependent package. -# -# Failure to find the dependent package will NOT result in a fatal error. -# -# The dependent package is specified in three forms: -# -# PACKAGE-PRETTY-NAME : The human-readable name by which the package -# will be referred for any diagnostic output. For -# example, "My Great Software Package". -# PACKAGE-VARIABLE-PREFIX : The package-specific prefix applied to variables -# defined as a result of running this macro for the -# packages. For example, "MGSP" here is transformed -# into MGSP_CPPFLAGS. -# PACKAGE-SUCCINCT-NAME : The package-specific name used for pkg-config, -# in temporary variables and on the -# configure command line. For example, -# "mgsp" here is used for --with-mgsp=DIR -# or 'pkg-config --cflags mgsp'. -# -# In addition, if any additional, default link libraries are required -# for use with the package, these are specified as: -# -# DEFAULT-PACKAGE-LIBS : Default link libraries required for use with -# the package. These are used if pkg-config is -# not available or cannot identify any -# such libraries. For example, '-lmgsp'. -# -# If the package is specified, optional actions are run. -# -# ACTIONS-TO-RUN-IF-FOUND : Optional actions to run if the package is found. -# ---------------------------------------------------------------------------- -AC_DEFUN([NL_WITH_OPTIONAL_EXTERNAL_PACKAGE], -[ - _NL_WITH_PACKAGE([optional], [external], [$1], [$2], [$3], [$4], [:], [$5])dnl -]) - -# NL_WITH_REQUIRED_INTERNAL_PACKAGE(PACKAGE-PRETTY-NAME, -# PACKAGE-VARIABLE-PREFIX, -# PACKAGE-SUCCINCT-NAME, -# [DEFAULT-PACKAGE-LIBS], -# [ACTIONS-TO-RUN-IF-NOT-EXTERNAL], -# [ACTIONS-TO-RUN-IF-NOT-INTERNAL]) -# ---------------------------------------------------------------------------- -# This macro is used to test for the presence, with pkg-config if it -# is available, of the specified, required dependent package. The dependent -# package may be provided externally or may exist within the current -# package itself. -# -# Failure to find the dependent package will result in a fatal error. -# -# The dependent package is specified in three forms: -# -# PACKAGE-PRETTY-NAME : The human-readable name by which the package -# will be referred for any diagnostic output. For -# example, "My Great Software Package". -# PACKAGE-VARIABLE-PREFIX : The package-specific prefix applied to variables -# defined as a result of running this macro for the -# packages. For example, "MGSP" here is transformed -# into MGSP_CPPFLAGS. -# PACKAGE-SUCCINCT-NAME : The package-specific name used for pkg-config, -# in temporary variables and on the -# configure command line. For example, -# "mgsp" here is used for --with-mgsp=DIR -# or 'pkg-config --cflags mgsp'. -# -# In addition, if any additional, default link libraries are required -# for use with the package, these are specified as: -# -# DEFAULT-PACKAGE-LIBS : Default link libraries required for use with -# the package. These are used if pkg-config is -# not available or cannot identify any -# such libraries. For example, '-lmgsp'. -# -# If the package is specified, either internally or externally, optional -# actions are run. -# -# ACTIONS-TO-RUN-IF-NOT-EXTERNAL : Optional actions to run if the package -# is not external. -# ACTIONS-TO-RUN-IF-NOT-INTERNAL : Optional actions to run if the package -# is not internal. -# ---------------------------------------------------------------------------- -AC_DEFUN([NL_WITH_REQUIRED_INTERNAL_PACKAGE], -[ - _NL_WITH_PACKAGE([required], [internal], [$1], [$2], [$3], [$4], [$5], [$6])dnl -]) - -# NL_WITH_OPTIONAL_INTERNAL_PACKAGE(PACKAGE-PRETTY-NAME, -# PACKAGE-VARIABLE-PREFIX, -# PACKAGE-SUCCINCT-NAME, -# [DEFAULT-PACKAGE-LIBS], -# [ACTIONS-TO-RUN-IF-NOT-EXTERNAL], -# [ACTIONS-TO-RUN-IF-NOT-INTERNAL]) -# ---------------------------------------------------------------------------- -# This macro is used to test for the presence, with pkg-config if it -# is available, of the specified, optional dependent package. The dependent -# package may be provided externally or may exist within the current -# package itself. -# -# Failure to find the dependent package will NOT result in a fatal error. -# -# The dependent package is specified in three forms: -# -# PACKAGE-PRETTY-NAME : The human-readable name by which the package -# will be referred for any diagnostic output. For -# example, "My Great Software Package". -# PACKAGE-VARIABLE-PREFIX : The package-specific prefix applied to variables -# defined as a result of running this macro for the -# packages. For example, "MGSP" here is transformed -# into MGSP_CPPFLAGS. -# PACKAGE-SUCCINCT-NAME : The package-specific name used for pkg-config, -# in temporary variables and on the -# configure command line. For example, -# "mgsp" here is used for --with-mgsp=DIR -# or 'pkg-config --cflags mgsp'. -# -# In addition, if any additional, default link libraries are required -# for use with the package, these are specified as: -# -# DEFAULT-PACKAGE-LIBS : Default link libraries required for use with -# the package. These are used if pkg-config is -# not available or cannot identify any -# such libraries. For example, '-lmgsp'. -# -# If the package is specified, either internally or externally, optional -# actions are run. -# -# ACTIONS-TO-RUN-IF-NOT-EXTERNAL : Optional actions to run if the package -# is not external. -# ACTIONS-TO-RUN-IF-NOT-INTERNAL : Optional actions to run if the package -# is not internal. -# ---------------------------------------------------------------------------- -AC_DEFUN([NL_WITH_OPTIONAL_INTERNAL_PACKAGE], -[ - _NL_WITH_PACKAGE([optional], [internal], [$1], [$2], [$3], [$4], [$5], [$6])dnl -]) - -# NL_WITH_PACKAGE(PACKAGE-PRETTY-NAME, PACKAGE-VARIABLE-PREFIX, -# PACKAGE-SUCCINCT-NAME, [DEFAULT-PACKAGE-LIBS], -# [ACTIONS-TO-RUN-IF-NOT-EXTERNAL], -# [ACTIONS-TO-RUN-IF-NOT-INTERNAL]) -# ---------------------------------------------------------------------------- -# This macro is used to test for the presence, with pkg-config if it -# is available, of the specified dependent package. The dependent -# package may be provided externally or may exist within the current -# package itself. -# -# The dependent package is specified in three forms: -# -# PACKAGE-PRETTY-NAME : The human-readable name by which the package -# will be referred for any diagnostic output. For -# example, "My Great Software Package". -# PACKAGE-VARIABLE-PREFIX : The package-specific prefix applied to variables -# defined as a result of running this macro for the -# packages. For example, "MGSP" here is transformed -# into MGSP_CPPFLAGS. -# PACKAGE-SUCCINCT-NAME : The package-specific name used for pkg-config, -# in temporary variables and on the -# configure command line. For example, -# "mgsp" here is used for --with-mgsp=DIR -# or 'pkg-config --cflags mgsp'. -# -# In addition, if any additional, default link libraries are required -# for use with the package, these are specified as: -# -# DEFAULT-PACKAGE-LIBS : Default link libraries required for use with -# the package. These are used if pkg-config is -# not available or cannot identify any -# such libraries. For example, '-lmgsp'. -# -# If the package is specified, either internally or externally, optional -# actions are run. -# -# ACTIONS-TO-RUN-IF-NOT-EXTERNAL : Optional actions to run if the package -# is not external. -# ACTIONS-TO-RUN-IF-NOT-INTERNAL : Optional actions to run if the package -# is not internal. -# ---------------------------------------------------------------------------- -AC_DEFUN([NL_WITH_PACKAGE], -[ - m4_warn(obsolete, [$0: this macro has been deprecated. Consider using NL_WITH_REQUIRED_INTERNAL_PACKAGE instead.]) - - NL_WITH_REQUIRED_INTERNAL_PACKAGE([$1], [$2], [$3], [$4], [$5], [$6])dnl -]) - - diff --git a/third_party/nlbuild-autotools/repo/automake/post.am b/third_party/nlbuild-autotools/repo/automake/post.am deleted file mode 100644 index 2ad1e7785..000000000 --- a/third_party/nlbuild-autotools/repo/automake/post.am +++ /dev/null @@ -1,25 +0,0 @@ -# -# Copyright 2015-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file is the generic "tail" or post automake header that may -# be included in any automakefile used in the build tree. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/post/rules.am - -include $(abs_top_nlbuild_autotools_dir)/make/post.mak diff --git a/third_party/nlbuild-autotools/repo/automake/post/rules.am b/third_party/nlbuild-autotools/repo/automake/post/rules.am deleted file mode 100644 index 183691011..000000000 --- a/third_party/nlbuild-autotools/repo/automake/post/rules.am +++ /dev/null @@ -1,25 +0,0 @@ -# -# Copyright 2015-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file is the automake footer for all common -# (i.e. non-toolchain-specific) rules. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/post/rules/coverage.am -include $(abs_top_nlbuild_autotools_dir)/automake/post/rules/pretty.am -include $(abs_top_nlbuild_autotools_dir)/automake/post/rules/headers.am diff --git a/third_party/nlbuild-autotools/repo/automake/post/rules/coverage.am b/third_party/nlbuild-autotools/repo/automake/post/rules/coverage.am deleted file mode 100644 index 6410bb3f9..000000000 --- a/third_party/nlbuild-autotools/repo/automake/post/rules/coverage.am +++ /dev/null @@ -1,71 +0,0 @@ -# -# Copyright 2018 Google LLC. All Rights Reserved. -# Copyright 2015-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file is the automake footer for all code-coverage related -# targets and rules. -# -# This represents the minimum integration with GNU autotools -# (automake in particular) such that 'make coverage' may be invoked -# at the top of the tree and all the prerequisites occur such -# that it executes successfully with no intervening make target -# invocations. The 'check-am' and '$(BUILT_SOURCES)' are the key -# automake-specific dependencies to ensure that happens. -# -# This defines the following make targets: -# -# coverage: -# Execute local and recursive coverage targets across the -# project sub-tree at the current invocation point. -# -# This target is intended to be user-visibile and -invoked. -# -# coverage-local: -# Execute local coverage targets at the current invocation point. -# -# This target is intended to be user-visibile and -invoked. -# -# coverage-recursive: -# Recursively execute the 'coverage' target across the -# project sub-tree at the current invocation point. -# -# This target is NOT intended to be user-visibile and -invoked. -# -# check-local: -# Alias for the 'check-am' target. Execute local check -# targets at the current invocation point. Local coverage targets -# may depend on this to ensure local tests are made before -# coverage targets are made. -# -# This target is intended to be user-visibile and -invoked. -# - -.PHONY: coverage coverage-recursive coverage-local check-local - -check-local: check-am - -coverage: coverage-local - -coverage: coverage-recursive - -coverage: check-am - -coverage: $(BUILT_SOURCES) - -coverage-recursive: - $(nl-make-subdirs) diff --git a/third_party/nlbuild-autotools/repo/automake/post/rules/headers.am b/third_party/nlbuild-autotools/repo/automake/post/rules/headers.am deleted file mode 100644 index f4598386d..000000000 --- a/third_party/nlbuild-autotools/repo/automake/post/rules/headers.am +++ /dev/null @@ -1,45 +0,0 @@ -# -# Copyright 2015-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file is the automake footer for installing header files -# independently of the rest of a package. -# -# Packages that wish to avail themselves of this target may wish -# to add the following goals and dependencies: -# -# install-headers: install-includeHEADERS -# -# in places where the package uses and defines 'include_HEADERS' or -# -# install-headers: install-data -# -# where the package uses and defines a more complex 'dist_*_HEADERS'. -# -# This represents the minimum integration with GNU autotools -# (automake inparticular) such that 'make install-headers' may be -# invoked at the top of the tree and all the prerequisites occur -# such that it executes successfully with no intervening make -# target invocations. -# - -.PHONY: install-headers install-headers-recursive - -install-headers: $(BUILT_SOURCES) install-headers-recursive - -install-headers-recursive: - $(nl-make-subdirs) diff --git a/third_party/nlbuild-autotools/repo/automake/post/rules/pretty.am b/third_party/nlbuild-autotools/repo/automake/post/rules/pretty.am deleted file mode 100644 index 5498a9720..000000000 --- a/third_party/nlbuild-autotools/repo/automake/post/rules/pretty.am +++ /dev/null @@ -1,79 +0,0 @@ -# -# Copyright 2015-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file is the automake footer for all coding style-related -# targets and rules. -# -# The recursive target 'pretty', invoked against '$(PRETTY_SUBDIRS)', -# is intended to reformat a collection of source files, defined by -# '$(PRETTY_FILES)' using the program '$(PRETTY)' with the arguments -# '$(PRETTY_ARGS)'. -# -# The recursive target 'pretty-check' (and its alias 'lint'), -# invoked against '$(PRETTY_SUBDIRS)', is intended to only check -# but NOT reformat a collection of source files, defined by -# '$(PRETTY_FILES)' using the program '$(PRETTY_CHECK)' with the -# arguments '$(PRETTY_CHECK_ARGS)'. -# -# This represents the minimum integration with GNU autotools -# (automake inparticular) such that 'make pretty' and 'make -# pretty-check' may be invoked at the top of the tree and all -# the prerequisites occur such that it executes successfully -# with no intervening make target invocations. '$(BUILT_SOURCES)' -# are the key automake-specific dependencies to ensure that happens. -# - -# nl-make-pretty -# -# This function iterates over PATHS, invoking COMMAND with -# COMMAND ARGUEMENTS on each file. If a non-verbose make has been -# requested TERSE OUTPUT COMMAND is emitted to standard output. - -define nl-make-pretty -$(AM_V_at)for file in $(4); do \ - $(1) \ - if test -f $${file}; then d=; else d=$(srcdir)/; fi; \ - $(2) $(3) $${d}$${file} \ - || exit 1; \ -done -endef - -.PHONY: pretty pretty-recursive pretty-check pretty-check-recursive lint - -pretty: pretty-recursive - -pretty pretty-check: $(BUILT_SOURCES) - -# Map the build action 'lint' to the more vernacular 'pretty-check'. - -lint: pretty-check - -pretty-check: pretty-check-recursive - -pretty-recursive pretty-check-recursive: - $(call nl-make-subdirs-with-dirs,$(PRETTY_SUBDIRS)) - -pretty: $(PRETTY_FILES) -ifneq ($(PRETTY),) - $(call nl-make-pretty,$(AM_V_PRETTY),$(PRETTY),$(PRETTY_ARGS),$(filter-out $(@)-recursive,$(PRETTY_FILES))) -endif - -pretty-check: $(PRETTY_FILES) -ifneq ($(PRETTY_CHECK),) - $(call nl-make-pretty,$(AM_V_PRETTY_CHECK),$(PRETTY_CHECK),$(PRETTY_CHECK_ARGS),$(filter-out $(@)-recursive,$(PRETTY_FILES))) -endif diff --git a/third_party/nlbuild-autotools/repo/automake/pre.am b/third_party/nlbuild-autotools/repo/automake/pre.am deleted file mode 100644 index 04d00781b..000000000 --- a/third_party/nlbuild-autotools/repo/automake/pre.am +++ /dev/null @@ -1,25 +0,0 @@ -# -# Copyright 2014-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file is the generic "head" or pre automake header that may -# be included in any automakefile used in the build tree. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre/macros.am - -include $(abs_top_nlbuild_autotools_dir)/make/pre.mak diff --git a/third_party/nlbuild-autotools/repo/automake/pre/macros.am b/third_party/nlbuild-autotools/repo/automake/pre/macros.am deleted file mode 100644 index 2e06b0a60..000000000 --- a/third_party/nlbuild-autotools/repo/automake/pre/macros.am +++ /dev/null @@ -1,77 +0,0 @@ -# -# Copyright 2019 Google LLC. All Rights Reserved. -# Copyright 2014-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file defines automake macros common to all other automake -# headers and files. -# - -include $(abs_top_nlbuild_autotools_dir)/automake/pre/macros/constants.am -include $(abs_top_nlbuild_autotools_dir)/automake/pre/macros/paths.am -include $(abs_top_nlbuild_autotools_dir)/automake/pre/macros/pretty.am -include $(abs_top_nlbuild_autotools_dir)/automake/pre/macros/verbosity.am -include $(abs_top_nlbuild_autotools_dir)/automake/pre/macros/coverage.am -include $(abs_top_nlbuild_autotools_dir)/automake/pre/macros/subdirs.am - -# -# create-directory -# -# Create the directory with the name of the $(@) variable. -# -define create-directory -$(call nl-create-dir,$(@)) -endef # create-directory - -# -# create-link -# -# Create the symbolic link with the source of the $(<) variable and -# the destination of the $(@) variable. -# -define create-link -$(call nl-create-link) -endef # create-link - -# -# check-file -# -# Check whether a file, referenced by the $(@) variable, should be -# updated / regenerated based on its dependencies, referenced by the -# $(<) variable by running the make macro check-file-. -# -# The $(<) is passed as the first argument if the macro wants to process -# it and the prospective new output file, which the macro MUST -# generate, as the second. -# -# This macro will ensure that any required parent directories are created -# prior to invoking check-file-. -# -# This macro is similar to and inspired by that from Linux Kbuild and -# elsewhere. -# -# - The name, suffixed to "check-file-", which indicates -# the make macro to invoke. -# -# -define check-file -$(call nl-check-file-with-subroutine,check-file,$(1)) -endef # check-file - - - - diff --git a/third_party/nlbuild-autotools/repo/automake/pre/macros/constants.am b/third_party/nlbuild-autotools/repo/automake/pre/macros/constants.am deleted file mode 100644 index 1277a2936..000000000 --- a/third_party/nlbuild-autotools/repo/automake/pre/macros/constants.am +++ /dev/null @@ -1,30 +0,0 @@ -# -# Copyright 2010-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file defines automake file constants common to all other -# automake headers and files. -# - -# -# Character constants for those make does not otherwise handle well or -# naturally. -# - -# Path separator - -Slash := / diff --git a/third_party/nlbuild-autotools/repo/automake/pre/macros/coverage.am b/third_party/nlbuild-autotools/repo/automake/pre/macros/coverage.am deleted file mode 100644 index f3a762a69..000000000 --- a/third_party/nlbuild-autotools/repo/automake/pre/macros/coverage.am +++ /dev/null @@ -1,106 +0,0 @@ -# -# Copyright 2015-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file defines automake variables and macros common to all -# other automake headers and files for code coverage. -# - -# Suffixes - -# -# Suffix for the code coverage report "bundle". -# -NL_COVERAGE_BUNDLE_SUFFIX = .lcov - -# -# Suffix for the lcov "info" file inside the code coverage report bundle. -# -NL_COVERAGE_INFO_SUFFIX = .info - -# -# Verbosity macros and flags -# - -NL_V_LCOV = $(nl__v_LCOV_$(V)) -nl__v_LCOV_ = $(nl__v_LCOV_$(AM_DEFAULT_VERBOSITY)) -nl__v_LCOV_0 = @echo " LCOV $(@)"; -nl__v_LCOV_1 = - -NL_V_LCOV_FLAGS = $(nl__v_LCOV_FLAGS_$(V)) -nl__v_LCOV_FLAGS_ = $(nl__v_LCOV_FLAGS_$(AM_DEFAULT_VERBOSITY)) -nl__v_LCOV_FLAGS_0 = --quiet -nl__v_LCOV_FLAGS_1 = - -NL_V_GENHTML = $(nl__v_GENHTML_$(V)) -nl__v_GENHTML_ = $(nl__v_GENHTML_$(AM_DEFAULT_VERBOSITY)) -nl__v_GENHTML_0 = @echo " GENHTML $(@)"; -nl__v_GENHTML_1 = - -NL_V_GENHTML_FLAGS = $(nl__v_GENHTML_FLAGS_$(V)) -nl__v_GENHTML_FLAGS_ = $(nl__v_GENHTML_FLAGS_$(AM_DEFAULT_VERBOSITY)) -nl__v_GENHTML_FLAGS_0 = --quiet -nl__v_GENHTML_FLAGS_1 = - -# -# generate-coverage-report -# -# Capture, using lcov, a coverage report from the specified directory 'directory' -# with an final output "info" file as specified by the target variable. -# -# - The directory from which lcov should search for coverage data (*.gcno & *.gcda) -# -# - create baseline coverage data file (base.info) with '-i|--initial' option -# - create test coverage data file (test.info) -# - combine baseline and test coverage data to create the final "info" file -# -# Then, on success, generate an HTML-based coverage report using genhtml. -# -define generate-coverage-report -$(NL_V_LCOV)$(LCOV) $(NL_V_LCOV_FLAGS) --config-file="$(abs_top_nlbuild_autotools_dir)/etc/lcov.config" --initial --capture --directory "$(1)" --output-file "base.info" -$(NL_V_LCOV)$(LCOV) $(NL_V_LCOV_FLAGS) --config-file="$(abs_top_nlbuild_autotools_dir)/etc/lcov.config" --capture --directory "$(1)" --output-file "test.info" -$(NL_V_LCOV)$(LCOV) $(NL_V_LCOV_FLAGS) --config-file="$(abs_top_nlbuild_autotools_dir)/etc/lcov.config" --add-tracefile "base.info" --add-tracefile "test.info" --output-file "$(@)" -$(NL_V_GENHTML)$(GENHTML) $(NL_V_GENHTML_FLAGS) --config-file="$(abs_top_nlbuild_autotools_dir)/etc/lcov.config" "$(@)" --output-directory "$(@D)" -endef # generate-coverage-report - -# -# generate-coverage-report-with-filter -# -# Capture, using lcov, a coverage report from the specified directory 'directory' and a filter 'remove_filter' -# with an final output "info" file as specified by the target variable. -# -# - The directory from which lcov should search for coverage data (*.gcno & *.gcda) -# -# - The filter is a whitespace-separated list of shell wildcard patterns. (note that they may need to be escaped accordingly to prevent -# the shell from expanding them first). Every file entry in tracefile which matches at least one of those patterns will be removed. -# -# - create baseline coverage data file (base.info) with '-i|--initial' option -# - create test coverage data file (test.info) -# - combine baseline and test coverage data to create the final "info" file -# - remove particular coverage data specifiled by the remove_filter (no change if remove_filter is null) -# -# Then, on success, generate an HTML-based coverage report using genhtml. -# -define generate-coverage-report-with-filter -$(NL_V_LCOV)$(LCOV) $(NL_V_LCOV_FLAGS) --config-file="$(abs_top_nlbuild_autotools_dir)/etc/lcov.config" --initial --capture --directory "$(1)" --output-file "base.info" -$(NL_V_LCOV)$(LCOV) $(NL_V_LCOV_FLAGS) --config-file="$(abs_top_nlbuild_autotools_dir)/etc/lcov.config" --capture --directory "$(1)" --output-file "test.info" -$(NL_V_LCOV)$(LCOV) $(NL_V_LCOV_FLAGS) --config-file="$(abs_top_nlbuild_autotools_dir)/etc/lcov.config" --add-tracefile "base.info" --add-tracefile "test.info" --output-file "$(@)" -$(NL_V_LCOV)$(LCOV) $(NL_V_LCOV_FLAGS) --config-file="$(abs_top_nlbuild_autotools_dir)/etc/lcov.config" --remove "$(@)" $(foreach pattern,$(2),"$(pattern)") --output-file "$(@)" -$(NL_V_GENHTML)$(GENHTML) $(NL_V_GENHTML_FLAGS) --config-file="$(abs_top_nlbuild_autotools_dir)/etc/lcov.config" "$(@)" --output-directory "$(@D)" -endef # generate-coverage-report-with-filter - - diff --git a/third_party/nlbuild-autotools/repo/automake/pre/macros/paths.am b/third_party/nlbuild-autotools/repo/automake/pre/macros/paths.am deleted file mode 100644 index 892b7cc87..000000000 --- a/third_party/nlbuild-autotools/repo/automake/pre/macros/paths.am +++ /dev/null @@ -1,42 +0,0 @@ -# -# Copyright 2010-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file defines automake macros for manipulating and querying -# paths. -# - -# Deslashify ... -# -# Ensure that there is NO trailing directory delimiter at the end of -# the specified path. - -Deslashify = $(patsubst %$(Slash),%,$(1)) - -# Slashify ... -# -# Ensure that there is a single trailing directory delimiter at the -# end of the specified path. - -Slashify = $(addsuffix $(Slash),$(call Deslashify,$(1))) - -# -# IsRealPath -# -# If the path is a real rather than symbolic link path, the path is returned. - -IsRealPath = $(if $(patsubst $(realpath $(1)),,$(abspath $(1))),,$(1)) diff --git a/third_party/nlbuild-autotools/repo/automake/pre/macros/pretty.am b/third_party/nlbuild-autotools/repo/automake/pre/macros/pretty.am deleted file mode 100644 index a983c2973..000000000 --- a/third_party/nlbuild-autotools/repo/automake/pre/macros/pretty.am +++ /dev/null @@ -1,52 +0,0 @@ -# -# Copyright 2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file defines automake variables for performing coding -# style formatting and checking. -# - -AM_V_PRETTY = $(am__v_PRETTY_$(V)) -am__v_PRETTY_ = $(am__v_PRETTY_$(AM_DEFAULT_VERBOSITY)) -am__v_PRETTY_0 = echo " PRETTY $${file}"; -am__v_PRETTY_1 = - -AM_V_PRETTY_CHECK = $(am__v_PRETTY_CHECK_$(V)) -am__v_PRETTY_CHECK_ = $(am__v_PRETTY_CHECK_$(AM_DEFAULT_VERBOSITY)) -am__v_PRETTY_CHECK_0 = echo " PRETTY $${file}"; -am__v_PRETTY_CHECK_1 = - -# PRETTY_FILES -# -# This defines the collection of files against which the PRETTY and -# PRETTY_CHECK profiles will be invoked for the 'pretty' and -# 'pretty-check' targets, respectively. -# -# This defaults to SOURCES and HEADERS and may be overriden or -# appended to. - -PRETTY_FILES ?= $(SOURCES) $(HEADERS) - -# PRETTY_SUBDIRS -# -# This defines the subdirectories for which the recursive 'pretty' and -# 'pretty-check' targets will run against. -# -# This defaults to SUBDIRS and may be overridden or appended to. - -PRETTY_SUBDIRS ?= $(SUBDIRS) - diff --git a/third_party/nlbuild-autotools/repo/automake/pre/macros/subdirs.am b/third_party/nlbuild-autotools/repo/automake/pre/macros/subdirs.am deleted file mode 100644 index 174cefefd..000000000 --- a/third_party/nlbuild-autotools/repo/automake/pre/macros/subdirs.am +++ /dev/null @@ -1,78 +0,0 @@ -# -# Copyright 2015-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file defines automake variables and macros common to all -# other automake headers and files for invoking make in a list -# of subdirectories with a list of target goals. -# - -# -# nl-make-subdirs-with-dirs-and-goals -# -# This iteratively invokes make with the provided target goals in each -# subdirectory specified. -# -# subdirectories A space-delimited list of subdirectories in which to -# invoke make with the provided target goals. -# -# goals A space-delimited list of target goals to -# attempt to make in each specified subdirectory. -# -define nl-make-subdirs-with-dirs-and-goals -+$(AM_V_at)for subdir in $(1); do \ - echo "Making $(2) in $${subdir}"; \ - $(MAKE) -C "$${subdir}" $(AM_MAKEFLAGS) $(2) \ - || exit 1; \ -done -endef # nl-make-subdirs-with-dirs-and-goals - -# -# nl-make-subdirs-with-dirs -# -# This iteratively invokes make with the target goals defined in -# MAKECMDGOALS in each subdirectory specified. -# -# subdirectories A space-delimited list of subdirectories in which to -# invoke make with the provided target goals. -# -define nl-make-subdirs-with-dirs -$(call nl-make-subdirs-with-dirs-and-goals,$(1),$(MAKECMDGOALS)) -endef # nl-make-subdirs-with-dirs - -# -# nl-make-subdirs-with-goals -# -# This iteratively invokes make with the provided target goals in the -# subdirectories defined in SUBDIRS. -# -# goals A space-delimited list of target goals to -# attempt to make in SUBDIRS. -# -define nl-make-subdirs-with-goals -$(call nl-make-subdirs-with-dirs-and-goals,$(SUBDIRS),$(1)) -endef # nl-make-subdirs-with-goals - -# -# nl-make-subdirs -# -# This iteratively invokes make with the target goals defined in -# MAKECMDGOALS in the subdirectories defined in SUBDIRS. -# -define nl-make-subdirs -$(call nl-make-subdirs-with-dirs-and-goals,$(SUBDIRS),$(MAKECMDGOALS)) -endef # nl-make-subdirs diff --git a/third_party/nlbuild-autotools/repo/automake/pre/macros/verbosity.am b/third_party/nlbuild-autotools/repo/automake/pre/macros/verbosity.am deleted file mode 100644 index 6f72bd61b..000000000 --- a/third_party/nlbuild-autotools/repo/automake/pre/macros/verbosity.am +++ /dev/null @@ -1,35 +0,0 @@ -# -# Copyright 2014-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file defines automake variables common to all other -# automake headers and files for silent-rules-style (V=[0|1]) build -# verbosity output. -# - -AM_V_LN_S = $(am__v_LN_S_$(V)) -am__v_LN_S_ = $(am__v_LN_S_$(AM_DEFAULT_VERBOSITY)) -am__v_LN_S_0 = @echo " LN $(@)"; -am__v_LN_S_1 = - -AM_V_MKDIR_P = $(am__v_MKDIR_P_$(V)) -am__v_MKDIR_P_ = $(am__v_MKDIR_P_$(AM_DEFAULT_VERBOSITY)) -am__v_MKDIR_P_0 = @echo " MKDIR $(@)"; -am__v_MKDIR_P_1 = - - - diff --git a/third_party/nlbuild-autotools/repo/etc/lcov.config b/third_party/nlbuild-autotools/repo/etc/lcov.config deleted file mode 100644 index d4ee495ed..000000000 --- a/third_party/nlbuild-autotools/repo/etc/lcov.config +++ /dev/null @@ -1,148 +0,0 @@ -# -# Copyright 2015-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file is an lcov configuration file based on the default -# from /etc/lcovrc. The key difference is the inclusion of -# 'genhtml_branch_coverage = 1' and lcov_branch_coverage = 1' to -# ensure that branch coverage is reported. -# - -# External style sheet file -#genhtml_css_file = gcov.css - -# Coverage rate limits -genhtml_hi_limit = 90 -genhtml_med_limit = 75 - -# Width of line coverage field in source code view -genhtml_line_field_width = 12 - -# Width of branch coverage field in source code view -genhtml_branch_field_width = 16 - -# Width of overview image -genhtml_overview_width = 80 - -# Resolution of overview navigation -genhtml_nav_resolution = 4 - -# Offset for source code navigation -genhtml_nav_offset = 10 - -# Do not remove unused test descriptions if non-zero -genhtml_keep_descriptions = 0 - -# Do not remove prefix from directory names if non-zero -genhtml_no_prefix = 0 - -# Do not create source code view if non-zero -genhtml_no_source = 0 - -# Specify size of tabs -genhtml_num_spaces = 8 - -# Highlight lines with converted-only data if non-zero -genhtml_highlight = 0 - -# Include color legend in HTML output if non-zero -genhtml_legend = 0 - -# Include HTML file at start of HTML output -#genhtml_html_prolog = prolog.php - -# Include HTML file at end of HTML output -#genhtml_html_epilog = epilog.php - -# Use custom HTML file extension -#genhtml_html_extension = html - -# Compress all generated html files with gzip. -#genhtml_html_gzip = 1 - -# Include sorted overview pages -genhtml_sort = 1 - -# Include function coverage data display -#genhtml_function_coverage = 1 - -# Include branch coverage data display -genhtml_branch_coverage = 1 - -# Specify the character set of all generated HTML pages -genhtml_charset=UTF-8 - -# Allow HTML markup in test case description text if non-zero -genhtml_desc_html=0 - -# Location of the gcov tool -#geninfo_gcov_tool = gcov - -# Adjust test names if non-zero -#geninfo_adjust_testname = 0 - -# Calculate a checksum for each line if non-zero -geninfo_checksum = 0 - -# Enable libtool compatibility mode if non-zero -geninfo_compat_libtool = 0 - -# Specify whether to capture coverage data for external source -# files -#geninfo_external = 1 - -# Use gcov’s --all-blocks option if non-zero -#geninfo_gcov_all_blocks = 1 - -# Specify compatiblity modes (same as --compat option -# of geninfo) -#geninfo_compat = libtool=on, hammer=auto, split_crc=auto - -# Adjust path to source files by removing or changing path -# components that match the specified pattern (Perl regular -# expression format) -#geninfo_adjust_src_path = /tmp/build => /usr/src - -# Specify if geninfo should try to automatically determine -# the base-directory when collecting coverage data. -geninfo_auto_base = 1 - -# Directory containing gcov kernel files -lcov_gcov_dir = /proc/gcov - -# Location for temporary directories -lcov_tmp_dir = /tmp - -# Show full paths during list operation if non-zero -lcov_list_full_path = 0 - -# Specify the maximum width for list output. This value is -# ignored when lcov_list_full_path is non-zero. -lcov_list_width = 80 - -# Specify the maximum percentage of file names which may be -# truncated when choosing a directory prefix in list output. -# This value is ignored when lcov_list_full_path is non-zero. -lcov_list_truncate_max = 20 - -# Specify if function coverage data should be collected and -# processed. -lcov_function_coverage = 1 - -# Specify if branch coverage data should be collected and -# processed. -lcov_branch_coverage = 1 diff --git a/third_party/nlbuild-autotools/repo/examples/Doxyfile.in b/third_party/nlbuild-autotools/repo/examples/Doxyfile.in deleted file mode 100644 index dd1c6ea2c..000000000 --- a/third_party/nlbuild-autotools/repo/examples/Doxyfile.in +++ /dev/null @@ -1,2371 +0,0 @@ -# Doxyfile 1.8.6 - -# -# Copyright 2015-2016 Nest Labs Inc. All Rights Reserved. -# -# Licensed 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. -# - -# -# Description: -# This file describes the settings to be used by the -# documentation system # doxygen (www.doxygen.org) -# -# This was initially autogenerated 'doxywizard' and then hand-tuned. -# -# All text after a hash (#) is considered a comment and will be -# ignored. -# -# The format is: -# -# TAG = value [value, ...] -# -# For lists items can also be appended using: -# -# TAG += value [value, ...] -# -# Values that contain spaces should be placed between quotes (" ") -# - -#--------------------------------------------------------------------------- -# Project related configuration options -#--------------------------------------------------------------------------- - -# This tag specifies the encoding used for all characters in the config file -# that follow. The default is UTF-8 which is also the encoding used for all text -# before the first occurrence of this tag. Doxygen uses libiconv (or the iconv -# built into libc) for the transcoding. See http://www.gnu.org/software/libiconv -# for the list of possible encodings. -# The default value is: UTF-8. - -DOXYFILE_ENCODING = UTF-8 - -# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by -# double-quotes, unless you are using Doxywizard) that should identify the -# project for which the documentation is generated. This name is used in the -# title of most generated pages and in a few other places. -# The default value is: My Project. - -PROJECT_NAME = @PACKAGE_NAME@ - -# The PROJECT_NUMBER tag can be used to enter a project or revision number. This -# could be handy for archiving the generated documentation or if some version -# control system is used. - -PROJECT_NUMBER = @PACKAGE_VERSION@ - -# Using the PROJECT_BRIEF tag one can provide an optional one line description -# for a project that appears at the top of each page and should give viewer a -# quick idea about the purpose of the project. Keep the description short. - -PROJECT_BRIEF = - -# With the PROJECT_LOGO tag one can specify an logo or icon that is included in -# the documentation. The maximum height of the logo should not exceed 55 pixels -# and the maximum width should not exceed 200 pixels. Doxygen will copy the logo -# to the output directory. - -PROJECT_LOGO = - -# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path -# into which the generated documentation will be written. If a relative path is -# entered, it will be relative to the location where doxygen was started. If -# left blank the current directory will be used. - -OUTPUT_DIRECTORY = @abs_builddir@ - -# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create 4096 sub- -# directories (in 2 levels) under the output directory of each output format and -# will distribute the generated files over these directories. Enabling this -# option can be useful when feeding doxygen a huge amount of source files, where -# putting all generated files in the same directory would otherwise causes -# performance problems for the file system. -# The default value is: NO. - -CREATE_SUBDIRS = YES - -# The OUTPUT_LANGUAGE tag is used to specify the language in which all -# documentation generated by doxygen is written. Doxygen will use this -# information to generate all constant output in the proper language. -# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese, -# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States), -# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian, -# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages), -# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian, -# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian, -# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish, -# Ukrainian and Vietnamese. -# The default value is: English. - -OUTPUT_LANGUAGE = English - -# If the BRIEF_MEMBER_DESC tag is set to YES doxygen will include brief member -# descriptions after the members that are listed in the file and class -# documentation (similar to Javadoc). Set to NO to disable this. -# The default value is: YES. - -BRIEF_MEMBER_DESC = YES - -# If the REPEAT_BRIEF tag is set to YES doxygen will prepend the brief -# description of a member or function before the detailed description -# -# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the -# brief descriptions will be completely suppressed. -# The default value is: YES. - -REPEAT_BRIEF = YES - -# This tag implements a quasi-intelligent brief description abbreviator that is -# used to form the text in various listings. Each string in this list, if found -# as the leading text of the brief description, will be stripped from the text -# and the result, after processing the whole list, is used as the annotated -# text. Otherwise, the brief description is used as-is. If left blank, the -# following values are used ($name is automatically replaced with the name of -# the entity):The $name class, The $name widget, The $name file, is, provides, -# specifies, contains, represents, a, an and the. - -ABBREVIATE_BRIEF = "The $name class" \ - "The $name widget" \ - "The $name file" \ - is \ - provides \ - specifies \ - contains \ - represents \ - a \ - an \ - the - -# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then -# doxygen will generate a detailed section even if there is only a brief -# description. -# The default value is: NO. - -ALWAYS_DETAILED_SEC = NO - -# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all -# inherited members of a class in the documentation of that class as if those -# members were ordinary class members. Constructors, destructors and assignment -# operators of the base classes will not be shown. -# The default value is: NO. - -INLINE_INHERITED_MEMB = NO - -# If the FULL_PATH_NAMES tag is set to YES doxygen will prepend the full path -# before files name in the file list and in the header files. If set to NO the -# shortest path that makes the file name unique will be used -# The default value is: YES. - -FULL_PATH_NAMES = YES - -# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path. -# Stripping is only done if one of the specified strings matches the left-hand -# part of the path. The tag can be used to show relative paths in the file list. -# If left blank the directory from which doxygen is run is used as the path to -# strip. -# -# Note that you can specify absolute paths here, but also relative paths, which -# will be relative from the directory where doxygen is started. -# This tag requires that the tag FULL_PATH_NAMES is set to YES. - -STRIP_FROM_PATH = @abs_top_srcdir@ \ - @abs_top_builddir@ - -# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the -# path mentioned in the documentation of a class, which tells the reader which -# header file to include in order to use a class. If left blank only the name of -# the header file containing the class definition is used. Otherwise one should -# specify the list of include paths that are normally passed to the compiler -# using the -I flag. - -STRIP_FROM_INC_PATH = @abs_top_srcdir@ - -# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but -# less readable) file names. This can be useful is your file systems doesn't -# support long names like on DOS, Mac, or CD-ROM. -# The default value is: NO. - -SHORT_NAMES = NO - -# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the -# first line (until the first dot) of a Javadoc-style comment as the brief -# description. If set to NO, the Javadoc-style will behave just like regular Qt- -# style comments (thus requiring an explicit @brief command for a brief -# description.) -# The default value is: NO. - -JAVADOC_AUTOBRIEF = YES - -# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first -# line (until the first dot) of a Qt-style comment as the brief description. If -# set to NO, the Qt-style will behave just like regular Qt-style comments (thus -# requiring an explicit \brief command for a brief description.) -# The default value is: NO. - -QT_AUTOBRIEF = NO - -# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a -# multi-line C++ special comment block (i.e. a block of //! or /// comments) as -# a brief description. This used to be the default behavior. The new default is -# to treat a multi-line C++ comment block as a detailed description. Set this -# tag to YES if you prefer the old behavior instead. -# -# Note that setting this tag to YES also means that rational rose comments are -# not recognized any more. -# The default value is: NO. - -MULTILINE_CPP_IS_BRIEF = NO - -# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the -# documentation from any documented member that it re-implements. -# The default value is: YES. - -INHERIT_DOCS = YES - -# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce a -# new page for each member. If set to NO, the documentation of a member will be -# part of the file/class/namespace that contains it. -# The default value is: NO. - -SEPARATE_MEMBER_PAGES = NO - -# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen -# uses this value to replace tabs by spaces in code fragments. -# Minimum value: 1, maximum value: 16, default value: 4. - -TAB_SIZE = 4 - -# This tag can be used to specify a number of aliases that act as commands in -# the documentation. An alias has the form: -# name=value -# For example adding -# "sideeffect=@par Side Effects:\n" -# will allow you to put the command \sideeffect (or @sideeffect) in the -# documentation, which will result in a user-defined paragraph with heading -# "Side Effects:". You can put \n's in the value part of an alias to insert -# newlines. - -ALIASES = - -# This tag can be used to specify a number of word-keyword mappings (TCL only). -# A mapping has the form "name=value". For example adding "class=itcl::class" -# will allow you to use the command class in the itcl::class meaning. - -TCL_SUBST = - -# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources -# only. Doxygen will then generate output that is more tailored for C. For -# instance, some of the names that are used will be different. The list of all -# members will be omitted, etc. -# The default value is: NO. - -OPTIMIZE_OUTPUT_FOR_C = NO - -# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or -# Python sources only. Doxygen will then generate output that is more tailored -# for that language. For instance, namespaces will be presented as packages, -# qualified scopes will look different, etc. -# The default value is: NO. - -OPTIMIZE_OUTPUT_JAVA = NO - -# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran -# sources. Doxygen will then generate output that is tailored for Fortran. -# The default value is: NO. - -OPTIMIZE_FOR_FORTRAN = NO - -# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL -# sources. Doxygen will then generate output that is tailored for VHDL. -# The default value is: NO. - -OPTIMIZE_OUTPUT_VHDL = NO - -# Doxygen selects the parser to use depending on the extension of the files it -# parses. With this tag you can assign which parser to use for a given -# extension. Doxygen has a built-in mapping, but you can override or extend it -# using this tag. The format is ext=language, where ext is a file extension, and -# language is one of the parsers supported by doxygen: IDL, Java, Javascript, -# C#, C, C++, D, PHP, Objective-C, Python, Fortran, VHDL. For instance to make -# doxygen treat .inc files as Fortran files (default is PHP), and .f files as C -# (default is Fortran), use: inc=Fortran f=C. -# -# Note For files without extension you can use no_extension as a placeholder. -# -# Note that for custom extensions you also need to set FILE_PATTERNS otherwise -# the files are not read by doxygen. - -EXTENSION_MAPPING = - -# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments -# according to the Markdown format, which allows for more readable -# documentation. See http://daringfireball.net/projects/markdown/ for details. -# The output of markdown processing is further processed by doxygen, so you can -# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in -# case of backward compatibilities issues. -# The default value is: YES. - -MARKDOWN_SUPPORT = YES - -# When enabled doxygen tries to link words that correspond to documented -# classes, or namespaces to their corresponding documentation. Such a link can -# be prevented in individual cases by by putting a % sign in front of the word -# or globally by setting AUTOLINK_SUPPORT to NO. -# The default value is: YES. - -AUTOLINK_SUPPORT = YES - -# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want -# to include (a tag file for) the STL sources as input, then you should set this -# tag to YES in order to let doxygen match functions declarations and -# definitions whose arguments contain STL classes (e.g. func(std::string); -# versus func(std::string) {}). This also make the inheritance and collaboration -# diagrams that involve STL classes more complete and accurate. -# The default value is: NO. - -BUILTIN_STL_SUPPORT = NO - -# If you use Microsoft's C++/CLI language, you should set this option to YES to -# enable parsing support. -# The default value is: NO. - -CPP_CLI_SUPPORT = NO - -# Set the SIP_SUPPORT tag to YES if your project consists of sip (see: -# http://www.riverbankcomputing.co.uk/software/sip/intro) sources only. Doxygen -# will parse them like normal C++ but will assume all classes use public instead -# of private inheritance when no explicit protection keyword is present. -# The default value is: NO. - -SIP_SUPPORT = NO - -# For Microsoft's IDL there are propget and propput attributes to indicate -# getter and setter methods for a property. Setting this option to YES will make -# doxygen to replace the get and set methods by a property in the documentation. -# This will only work if the methods are indeed getting or setting a simple -# type. If this is not the case, or you want to show the methods anyway, you -# should set this option to NO. -# The default value is: YES. - -IDL_PROPERTY_SUPPORT = YES - -# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC -# tag is set to YES, then doxygen will reuse the documentation of the first -# member in the group (if any) for the other members of the group. By default -# all members of a group must be documented explicitly. -# The default value is: NO. - -DISTRIBUTE_GROUP_DOC = NO - -# Set the SUBGROUPING tag to YES to allow class member groups of the same type -# (for instance a group of public functions) to be put as a subgroup of that -# type (e.g. under the Public Functions section). Set it to NO to prevent -# subgrouping. Alternatively, this can be done per class using the -# \nosubgrouping command. -# The default value is: YES. - -SUBGROUPING = YES - -# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions -# are shown inside the group in which they are included (e.g. using \ingroup) -# instead of on a separate page (for HTML and Man pages) or section (for LaTeX -# and RTF). -# -# Note that this feature does not work in combination with -# SEPARATE_MEMBER_PAGES. -# The default value is: NO. - -INLINE_GROUPED_CLASSES = NO - -# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions -# with only public data fields or simple typedef fields will be shown inline in -# the documentation of the scope in which they are defined (i.e. file, -# namespace, or group documentation), provided this scope is documented. If set -# to NO, structs, classes, and unions are shown on a separate page (for HTML and -# Man pages) or section (for LaTeX and RTF). -# The default value is: NO. - -INLINE_SIMPLE_STRUCTS = NO - -# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or -# enum is documented as struct, union, or enum with the name of the typedef. So -# typedef struct TypeS {} TypeT, will appear in the documentation as a struct -# with name TypeT. When disabled the typedef will appear as a member of a file, -# namespace, or class. And the struct will be named TypeS. This can typically be -# useful for C code in case the coding convention dictates that all compound -# types are typedef'ed and only the typedef is referenced, never the tag name. -# The default value is: NO. - -TYPEDEF_HIDES_STRUCT = NO - -# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This -# cache is used to resolve symbols given their name and scope. Since this can be -# an expensive process and often the same symbol appears multiple times in the -# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small -# doxygen will become slower. If the cache is too large, memory is wasted. The -# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range -# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536 -# symbols. At the end of a run doxygen will report the cache usage and suggest -# the optimal cache size from a speed point of view. -# Minimum value: 0, maximum value: 9, default value: 0. - -LOOKUP_CACHE_SIZE = 0 - -#--------------------------------------------------------------------------- -# Build related configuration options -#--------------------------------------------------------------------------- - -# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in -# documentation are documented, even if no documentation was available. Private -# class members and static file members will be hidden unless the -# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES. -# Note: This will also disable the warnings about undocumented members that are -# normally produced when WARNINGS is set to YES. -# The default value is: NO. - -EXTRACT_ALL = NO - -# If the EXTRACT_PRIVATE tag is set to YES all private members of a class will -# be included in the documentation. -# The default value is: NO. - -EXTRACT_PRIVATE = NO - -# If the EXTRACT_PACKAGE tag is set to YES all members with package or internal -# scope will be included in the documentation. -# The default value is: NO. - -EXTRACT_PACKAGE = NO - -# If the EXTRACT_STATIC tag is set to YES all static members of a file will be -# included in the documentation. -# The default value is: NO. - -EXTRACT_STATIC = YES - -# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) defined -# locally in source files will be included in the documentation. If set to NO -# only classes defined in header files are included. Does not have any effect -# for Java sources. -# The default value is: YES. - -EXTRACT_LOCAL_CLASSES = YES - -# This flag is only useful for Objective-C code. When set to YES local methods, -# which are defined in the implementation section but not in the interface are -# included in the documentation. If set to NO only methods in the interface are -# included. -# The default value is: NO. - -EXTRACT_LOCAL_METHODS = NO - -# If this flag is set to YES, the members of anonymous namespaces will be -# extracted and appear in the documentation as a namespace called -# 'anonymous_namespace{file}', where file will be replaced with the base name of -# the file that contains the anonymous namespace. By default anonymous namespace -# are hidden. -# The default value is: NO. - -EXTRACT_ANON_NSPACES = NO - -# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all -# undocumented members inside documented classes or files. If set to NO these -# members will be included in the various overviews, but no documentation -# section is generated. This option has no effect if EXTRACT_ALL is enabled. -# The default value is: NO. - -HIDE_UNDOC_MEMBERS = NO - -# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all -# undocumented classes that are normally visible in the class hierarchy. If set -# to NO these classes will be included in the various overviews. This option has -# no effect if EXTRACT_ALL is enabled. -# The default value is: NO. - -HIDE_UNDOC_CLASSES = NO - -# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend -# (class|struct|union) declarations. If set to NO these declarations will be -# included in the documentation. -# The default value is: NO. - -HIDE_FRIEND_COMPOUNDS = NO - -# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any -# documentation blocks found inside the body of a function. If set to NO these -# blocks will be appended to the function's detailed documentation block. -# The default value is: NO. - -HIDE_IN_BODY_DOCS = NO - -# The INTERNAL_DOCS tag determines if documentation that is typed after a -# \internal command is included. If the tag is set to NO then the documentation -# will be excluded. Set it to YES to include the internal documentation. -# The default value is: NO. - -INTERNAL_DOCS = NO - -# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file -# names in lower-case letters. If set to YES upper-case letters are also -# allowed. This is useful if you have classes or files whose names only differ -# in case and if your file system supports case sensitive file names. Windows -# and Mac users are advised to set this option to NO. -# The default value is: system dependent. - -CASE_SENSE_NAMES = YES - -# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with -# their full class and namespace scopes in the documentation. If set to YES the -# scope will be hidden. -# The default value is: NO. - -HIDE_SCOPE_NAMES = NO - -# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of -# the files that are included by a file in the documentation of that file. -# The default value is: YES. - -SHOW_INCLUDE_FILES = YES - -# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each -# grouped member an include statement to the documentation, telling the reader -# which file to include in order to use the member. -# The default value is: NO. - -SHOW_GROUPED_MEMB_INC = NO - -# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include -# files with double quotes in the documentation rather than with sharp brackets. -# The default value is: NO. - -FORCE_LOCAL_INCLUDES = NO - -# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the -# documentation for inline members. -# The default value is: YES. - -INLINE_INFO = YES - -# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the -# (detailed) documentation of file and class members alphabetically by member -# name. If set to NO the members will appear in declaration order. -# The default value is: YES. - -SORT_MEMBER_DOCS = YES - -# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief -# descriptions of file, namespace and class members alphabetically by member -# name. If set to NO the members will appear in declaration order. Note that -# this will also influence the order of the classes in the class list. -# The default value is: NO. - -SORT_BRIEF_DOCS = NO - -# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the -# (brief and detailed) documentation of class members so that constructors and -# destructors are listed first. If set to NO the constructors will appear in the -# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS. -# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief -# member documentation. -# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting -# detailed member documentation. -# The default value is: NO. - -SORT_MEMBERS_CTORS_1ST = NO - -# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy -# of group names into alphabetical order. If set to NO the group names will -# appear in their defined order. -# The default value is: NO. - -SORT_GROUP_NAMES = NO - -# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by -# fully-qualified names, including namespaces. If set to NO, the class list will -# be sorted only by class name, not including the namespace part. -# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. -# Note: This option applies only to the class list, not to the alphabetical -# list. -# The default value is: NO. - -SORT_BY_SCOPE_NAME = NO - -# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper -# type resolution of all parameters of a function it will reject a match between -# the prototype and the implementation of a member function even if there is -# only one candidate or it is obvious which candidate to choose by doing a -# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still -# accept a match between prototype and implementation in such cases. -# The default value is: NO. - -STRICT_PROTO_MATCHING = NO - -# The GENERATE_TODOLIST tag can be used to enable ( YES) or disable ( NO) the -# todo list. This list is created by putting \todo commands in the -# documentation. -# The default value is: YES. - -GENERATE_TODOLIST = YES - -# The GENERATE_TESTLIST tag can be used to enable ( YES) or disable ( NO) the -# test list. This list is created by putting \test commands in the -# documentation. -# The default value is: YES. - -GENERATE_TESTLIST = YES - -# The GENERATE_BUGLIST tag can be used to enable ( YES) or disable ( NO) the bug -# list. This list is created by putting \bug commands in the documentation. -# The default value is: YES. - -GENERATE_BUGLIST = YES - -# The GENERATE_DEPRECATEDLIST tag can be used to enable ( YES) or disable ( NO) -# the deprecated list. This list is created by putting \deprecated commands in -# the documentation. -# The default value is: YES. - -GENERATE_DEPRECATEDLIST= YES - -# The ENABLED_SECTIONS tag can be used to enable conditional documentation -# sections, marked by \if ... \endif and \cond -# ... \endcond blocks. - -ENABLED_SECTIONS = - -# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the -# initial value of a variable or macro / define can have for it to appear in the -# documentation. If the initializer consists of more lines than specified here -# it will be hidden. Use a value of 0 to hide initializers completely. The -# appearance of the value of individual variables and macros / defines can be -# controlled using \showinitializer or \hideinitializer command in the -# documentation regardless of this setting. -# Minimum value: 0, maximum value: 10000, default value: 30. - -MAX_INITIALIZER_LINES = 30 - -# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at -# the bottom of the documentation of classes and structs. If set to YES the list -# will mention the files that were used to generate the documentation. -# The default value is: YES. - -SHOW_USED_FILES = YES - -# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This -# will remove the Files entry from the Quick Index and from the Folder Tree View -# (if specified). -# The default value is: YES. - -SHOW_FILES = YES - -# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces -# page. This will remove the Namespaces entry from the Quick Index and from the -# Folder Tree View (if specified). -# The default value is: YES. - -SHOW_NAMESPACES = YES - -# The FILE_VERSION_FILTER tag can be used to specify a program or script that -# doxygen should invoke to get the current version for each file (typically from -# the version control system). Doxygen will invoke the program by executing (via -# popen()) the command command input-file, where command is the value of the -# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided -# by doxygen. Whatever the program writes to standard output is used as the file -# version. For an example see the documentation. - -FILE_VERSION_FILTER = - -# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed -# by doxygen. The layout file controls the global structure of the generated -# output files in an output format independent way. To create the layout file -# that represents doxygen's defaults, run doxygen with the -l option. You can -# optionally specify a file name after the option, if omitted DoxygenLayout.xml -# will be used as the name of the layout file. -# -# Note that if you run doxygen from a directory containing a file called -# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE -# tag is left empty. - -LAYOUT_FILE = - -# The CITE_BIB_FILES tag can be used to specify one or more bib files containing -# the reference definitions. This must be a list of .bib files. The .bib -# extension is automatically appended if omitted. This requires the bibtex tool -# to be installed. See also http://en.wikipedia.org/wiki/BibTeX for more info. -# For LaTeX the style of the bibliography can be controlled using -# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the -# search path. Do not use file names with spaces, bibtex cannot handle them. See -# also \cite for info how to create references. - -CITE_BIB_FILES = - -#--------------------------------------------------------------------------- -# Configuration options related to warning and progress messages -#--------------------------------------------------------------------------- - -# The QUIET tag can be used to turn on/off the messages that are generated to -# standard output by doxygen. If QUIET is set to YES this implies that the -# messages are off. -# The default value is: NO. - -QUIET = NO - -# The WARNINGS tag can be used to turn on/off the warning messages that are -# generated to standard error ( stderr) by doxygen. If WARNINGS is set to YES -# this implies that the warnings are on. -# -# Tip: Turn warnings on while writing the documentation. -# The default value is: YES. - -WARNINGS = YES - -# If the WARN_IF_UNDOCUMENTED tag is set to YES, then doxygen will generate -# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag -# will automatically be disabled. -# The default value is: YES. - -WARN_IF_UNDOCUMENTED = YES - -# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for -# potential errors in the documentation, such as not documenting some parameters -# in a documented function, or documenting parameters that don't exist or using -# markup commands wrongly. -# The default value is: YES. - -WARN_IF_DOC_ERROR = YES - -# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that -# are documented, but have no documentation for their parameters or return -# value. If set to NO doxygen will only warn about wrong or incomplete parameter -# documentation, but not about the absence of documentation. -# The default value is: NO. - -WARN_NO_PARAMDOC = NO - -# The WARN_FORMAT tag determines the format of the warning messages that doxygen -# can produce. The string should contain the $file, $line, and $text tags, which -# will be replaced by the file and line number from which the warning originated -# and the warning text. Optionally the format may contain $version, which will -# be replaced by the version of the file (if it could be obtained via -# FILE_VERSION_FILTER) -# The default value is: $file:$line: $text. - -WARN_FORMAT = "$file:$line: $text" - -# The WARN_LOGFILE tag can be used to specify a file to which warning and error -# messages should be written. If left blank the output is written to standard -# error (stderr). - -WARN_LOGFILE = - -#--------------------------------------------------------------------------- -# Configuration options related to the input files -#--------------------------------------------------------------------------- - -# The INPUT tag is used to specify the files and/or directories that contain -# documented source files. You may enter file names like myfile.cpp or -# directories like /usr/src/myproject. Separate the files or directories with -# spaces. -# Note: If this tag is empty the current directory is searched. - -INPUT = @abs_top_builddir@/src \ - @abs_top_srcdir@/include \ - @abs_top_srcdir@/doc - -# This tag can be used to specify the character encoding of the source files -# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses -# libiconv (or the iconv built into libc) for the transcoding. See the libiconv -# documentation (see: http://www.gnu.org/software/libiconv) for the list of -# possible encodings. -# The default value is: UTF-8. - -INPUT_ENCODING = UTF-8 - -# If the value of the INPUT tag contains directories, you can use the -# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and -# *.h) to filter out the source-files in the directories. If left blank the -# following patterns are tested:*.c, *.cc, *.cxx, *.cpp, *.c++, *.java, *.ii, -# *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h, *.hh, *.hxx, *.hpp, -# *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc, *.m, *.markdown, -# *.md, *.mm, *.dox, *.py, *.f90, *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf, -# *.qsf, *.as and *.js. - -FILE_PATTERNS = *.c \ - *.cc \ - *.cxx \ - *.cpp \ - *.c++ \ - *.d \ - *.java \ - *.ii \ - *.ixx \ - *.ipp \ - *.i++ \ - *.inl \ - *.h \ - *.hh \ - *.hxx \ - *.hpp \ - *.h++ \ - *.idl \ - *.odl \ - *.cs \ - *.php \ - *.php3 \ - *.inc \ - *.m \ - *.mm \ - *.dox \ - *.py \ - *.f90 \ - *.f \ - *.for \ - *.vhd \ - *.vhdl - -# The RECURSIVE tag can be used to specify whether or not subdirectories should -# be searched for input files as well. -# The default value is: NO. - -RECURSIVE = YES - -# The EXCLUDE tag can be used to specify files and/or directories that should be -# excluded from the INPUT source files. This way you can easily exclude a -# subdirectory from a directory tree whose root is specified with the INPUT tag. -# -# Note that relative paths are relative to the directory from which doxygen is -# run. - -EXCLUDE = - -# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or -# directories that are symbolic links (a Unix file system feature) are excluded -# from the input. -# The default value is: NO. - -EXCLUDE_SYMLINKS = NO - -# If the value of the INPUT tag contains directories, you can use the -# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude -# certain files from those directories. -# -# Note that the wildcards are matched against the file with absolute path, so to -# exclude all test directories for example use the pattern */test/* - -EXCLUDE_PATTERNS = - -# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names -# (namespaces, classes, functions, etc.) that should be excluded from the -# output. The symbol name can be a fully qualified name, a word, or if the -# wildcard * is used, a substring. Examples: ANamespace, AClass, -# AClass::ANamespace, ANamespace::*Test -# -# Note that the wildcards are matched against the file with absolute path, so to -# exclude all test directories use the pattern */test/* - -EXCLUDE_SYMBOLS = - -# The EXAMPLE_PATH tag can be used to specify one or more files or directories -# that contain example code fragments that are included (see the \include -# command). - -EXAMPLE_PATH = - -# If the value of the EXAMPLE_PATH tag contains directories, you can use the -# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and -# *.h) to filter out the source-files in the directories. If left blank all -# files are included. - -EXAMPLE_PATTERNS = * - -# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be -# searched for input files to be used with the \include or \dontinclude commands -# irrespective of the value of the RECURSIVE tag. -# The default value is: NO. - -EXAMPLE_RECURSIVE = NO - -# The IMAGE_PATH tag can be used to specify one or more files or directories -# that contain images that are to be included in the documentation (see the -# \image command). - -IMAGE_PATH = - -# The INPUT_FILTER tag can be used to specify a program that doxygen should -# invoke to filter for each input file. Doxygen will invoke the filter program -# by executing (via popen()) the command: -# -# -# -# where is the value of the INPUT_FILTER tag, and is the -# name of an input file. Doxygen will then use the output that the filter -# program writes to standard output. If FILTER_PATTERNS is specified, this tag -# will be ignored. -# -# Note that the filter must not add or remove lines; it is applied before the -# code is scanned, but not when the output code is generated. If lines are added -# or removed, the anchors will not be placed correctly. - -INPUT_FILTER = - -# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern -# basis. Doxygen will compare the file name with each pattern and apply the -# filter if there is a match. The filters are a list of the form: pattern=filter -# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how -# filters are used. If the FILTER_PATTERNS tag is empty or if none of the -# patterns match the file name, INPUT_FILTER is applied. - -FILTER_PATTERNS = - -# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using -# INPUT_FILTER ) will also be used to filter the input files that are used for -# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES). -# The default value is: NO. - -FILTER_SOURCE_FILES = NO - -# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file -# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and -# it is also possible to disable source filtering for a specific pattern using -# *.ext= (so without naming a filter). -# This tag requires that the tag FILTER_SOURCE_FILES is set to YES. - -FILTER_SOURCE_PATTERNS = - -# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that -# is part of the input, its contents will be placed on the main page -# (index.html). This can be useful if you have a project on for instance GitHub -# and want to reuse the introduction page also for the doxygen output. - -USE_MDFILE_AS_MAINPAGE = - -#--------------------------------------------------------------------------- -# Configuration options related to source browsing -#--------------------------------------------------------------------------- - -# If the SOURCE_BROWSER tag is set to YES then a list of source files will be -# generated. Documented entities will be cross-referenced with these sources. -# -# Note: To get rid of all source code in the generated output, make sure that -# also VERBATIM_HEADERS is set to NO. -# The default value is: NO. - -SOURCE_BROWSER = NO - -# Setting the INLINE_SOURCES tag to YES will include the body of functions, -# classes and enums directly into the documentation. -# The default value is: NO. - -INLINE_SOURCES = NO - -# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any -# special comment blocks from generated source code fragments. Normal C, C++ and -# Fortran comments will always remain visible. -# The default value is: YES. - -STRIP_CODE_COMMENTS = YES - -# If the REFERENCED_BY_RELATION tag is set to YES then for each documented -# function all documented functions referencing it will be listed. -# The default value is: NO. - -REFERENCED_BY_RELATION = NO - -# If the REFERENCES_RELATION tag is set to YES then for each documented function -# all documented entities called/used by that function will be listed. -# The default value is: NO. - -REFERENCES_RELATION = NO - -# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set -# to YES, then the hyperlinks from functions in REFERENCES_RELATION and -# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will -# link to the documentation. -# The default value is: YES. - -REFERENCES_LINK_SOURCE = YES - -# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the -# source code will show a tooltip with additional information such as prototype, -# brief description and links to the definition and documentation. Since this -# will make the HTML file larger and loading of large files a bit slower, you -# can opt to disable this feature. -# The default value is: YES. -# This tag requires that the tag SOURCE_BROWSER is set to YES. - -SOURCE_TOOLTIPS = YES - -# If the USE_HTAGS tag is set to YES then the references to source code will -# point to the HTML generated by the htags(1) tool instead of doxygen built-in -# source browser. The htags tool is part of GNU's global source tagging system -# (see http://www.gnu.org/software/global/global.html). You will need version -# 4.8.6 or higher. -# -# To use it do the following: -# - Install the latest version of global -# - Enable SOURCE_BROWSER and USE_HTAGS in the config file -# - Make sure the INPUT points to the root of the source tree -# - Run doxygen as normal -# -# Doxygen will invoke htags (and that will in turn invoke gtags), so these -# tools must be available from the command line (i.e. in the search path). -# -# The result: instead of the source browser generated by doxygen, the links to -# source code will now point to the output of htags. -# The default value is: NO. -# This tag requires that the tag SOURCE_BROWSER is set to YES. - -USE_HTAGS = NO - -# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a -# verbatim copy of the header file for each class for which an include is -# specified. Set to NO to disable this. -# See also: Section \class. -# The default value is: YES. - -VERBATIM_HEADERS = YES - -#--------------------------------------------------------------------------- -# Configuration options related to the alphabetical class index -#--------------------------------------------------------------------------- - -# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all -# compounds will be generated. Enable this if the project contains a lot of -# classes, structs, unions or interfaces. -# The default value is: YES. - -ALPHABETICAL_INDEX = YES - -# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in -# which the alphabetical index list will be split. -# Minimum value: 1, maximum value: 20, default value: 5. -# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. - -COLS_IN_ALPHA_INDEX = 5 - -# In case all classes in a project start with a common prefix, all classes will -# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag -# can be used to specify a prefix (or a list of prefixes) that should be ignored -# while generating the index headers. -# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. - -IGNORE_PREFIX = - -#--------------------------------------------------------------------------- -# Configuration options related to the HTML output -#--------------------------------------------------------------------------- - -# If the GENERATE_HTML tag is set to YES doxygen will generate HTML output -# The default value is: YES. - -GENERATE_HTML = YES - -# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a -# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of -# it. -# The default directory is: html. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_OUTPUT = html - -# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each -# generated HTML page (for example: .htm, .php, .asp). -# The default value is: .html. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_FILE_EXTENSION = .html - -# The HTML_HEADER tag can be used to specify a user-defined HTML header file for -# each generated HTML page. If the tag is left blank doxygen will generate a -# standard header. -# -# To get valid HTML the header file that includes any scripts and style sheets -# that doxygen needs, which is dependent on the configuration options used (e.g. -# the setting GENERATE_TREEVIEW). It is highly recommended to start with a -# default header using -# doxygen -w html new_header.html new_footer.html new_stylesheet.css -# YourConfigFile -# and then modify the file new_header.html. See also section "Doxygen usage" -# for information on how to generate the default header that doxygen normally -# uses. -# Note: The header is subject to change so you typically have to regenerate the -# default header when upgrading to a newer version of doxygen. For a description -# of the possible markers and block names see the documentation. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_HEADER = - -# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each -# generated HTML page. If the tag is left blank doxygen will generate a standard -# footer. See HTML_HEADER for more information on how to generate a default -# footer and what special commands can be used inside the footer. See also -# section "Doxygen usage" for information on how to generate the default footer -# that doxygen normally uses. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_FOOTER = - -# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style -# sheet that is used by each HTML page. It can be used to fine-tune the look of -# the HTML output. If left blank doxygen will generate a default style sheet. -# See also section "Doxygen usage" for information on how to generate the style -# sheet that doxygen normally uses. -# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as -# it is more robust and this tag (HTML_STYLESHEET) will in the future become -# obsolete. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_STYLESHEET = - -# The HTML_EXTRA_STYLESHEET tag can be used to specify an additional user- -# defined cascading style sheet that is included after the standard style sheets -# created by doxygen. Using this option one can overrule certain style aspects. -# This is preferred over using HTML_STYLESHEET since it does not replace the -# standard style sheet and is therefor more robust against future updates. -# Doxygen will copy the style sheet file to the output directory. For an example -# see the documentation. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_EXTRA_STYLESHEET = - -# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or -# other source files which should be copied to the HTML output directory. Note -# that these files will be copied to the base HTML output directory. Use the -# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these -# files. In the HTML_STYLESHEET file, use the file name only. Also note that the -# files will be copied as-is; there are no commands or markers available. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_EXTRA_FILES = - -# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen -# will adjust the colors in the stylesheet and background images according to -# this color. Hue is specified as an angle on a colorwheel, see -# http://en.wikipedia.org/wiki/Hue for more information. For instance the value -# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300 -# purple, and 360 is red again. -# Minimum value: 0, maximum value: 359, default value: 220. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_COLORSTYLE_HUE = 220 - -# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors -# in the HTML output. For a value of 0 the output will use grayscales only. A -# value of 255 will produce the most vivid colors. -# Minimum value: 0, maximum value: 255, default value: 100. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_COLORSTYLE_SAT = 100 - -# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the -# luminance component of the colors in the HTML output. Values below 100 -# gradually make the output lighter, whereas values above 100 make the output -# darker. The value divided by 100 is the actual gamma applied, so 80 represents -# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not -# change the gamma. -# Minimum value: 40, maximum value: 240, default value: 80. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_COLORSTYLE_GAMMA = 80 - -# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML -# page will contain the date and time when the page was generated. Setting this -# to NO can help when comparing the output of multiple runs. -# The default value is: YES. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_TIMESTAMP = YES - -# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML -# documentation will contain sections that can be hidden and shown after the -# page has loaded. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_DYNAMIC_SECTIONS = NO - -# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries -# shown in the various tree structured indices initially; the user can expand -# and collapse entries dynamically later on. Doxygen will expand the tree to -# such a level that at most the specified number of entries are visible (unless -# a fully collapsed tree already exceeds this amount). So setting the number of -# entries 1 will produce a full collapsed tree by default. 0 is a special value -# representing an infinite number of entries and will result in a full expanded -# tree by default. -# Minimum value: 0, maximum value: 9999, default value: 100. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_INDEX_NUM_ENTRIES = 100 - -# If the GENERATE_DOCSET tag is set to YES, additional index files will be -# generated that can be used as input for Apple's Xcode 3 integrated development -# environment (see: http://developer.apple.com/tools/xcode/), introduced with -# OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a -# Makefile in the HTML output directory. Running make will produce the docset in -# that directory and running make install will install the docset in -# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at -# startup. See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html -# for more information. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_DOCSET = NO - -# This tag determines the name of the docset feed. A documentation feed provides -# an umbrella under which multiple documentation sets from a single provider -# (such as a company or product suite) can be grouped. -# The default value is: Doxygen generated docs. -# This tag requires that the tag GENERATE_DOCSET is set to YES. - -DOCSET_FEEDNAME = "Doxygen generated docs" - -# This tag specifies a string that should uniquely identify the documentation -# set bundle. This should be a reverse domain-name style string, e.g. -# com.mycompany.MyDocSet. Doxygen will append .docset to the name. -# The default value is: org.doxygen.Project. -# This tag requires that the tag GENERATE_DOCSET is set to YES. - -DOCSET_BUNDLE_ID = org.doxygen.Project - -# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify -# the documentation publisher. This should be a reverse domain-name style -# string, e.g. com.mycompany.MyDocSet.documentation. -# The default value is: org.doxygen.Publisher. -# This tag requires that the tag GENERATE_DOCSET is set to YES. - -DOCSET_PUBLISHER_ID = org.doxygen.Publisher - -# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher. -# The default value is: Publisher. -# This tag requires that the tag GENERATE_DOCSET is set to YES. - -DOCSET_PUBLISHER_NAME = Publisher - -# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three -# additional HTML index files: index.hhp, index.hhc, and index.hhk. The -# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop -# (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on -# Windows. -# -# The HTML Help Workshop contains a compiler that can convert all HTML output -# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML -# files are now used as the Windows 98 help format, and will replace the old -# Windows help format (.hlp) on all Windows platforms in the future. Compressed -# HTML files also contain an index, a table of contents, and you can search for -# words in the documentation. The HTML workshop also contains a viewer for -# compressed HTML files. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_HTMLHELP = NO - -# The CHM_FILE tag can be used to specify the file name of the resulting .chm -# file. You can add a path in front of the file if the result should not be -# written to the html output directory. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -CHM_FILE = - -# The HHC_LOCATION tag can be used to specify the location (absolute path -# including file name) of the HTML help compiler ( hhc.exe). If non-empty -# doxygen will try to run the HTML help compiler on the generated index.hhp. -# The file has to be specified with full path. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -HHC_LOCATION = - -# The GENERATE_CHI flag controls if a separate .chi index file is generated ( -# YES) or that it should be included in the master .chm file ( NO). -# The default value is: NO. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -GENERATE_CHI = NO - -# The CHM_INDEX_ENCODING is used to encode HtmlHelp index ( hhk), content ( hhc) -# and project file content. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -CHM_INDEX_ENCODING = - -# The BINARY_TOC flag controls whether a binary table of contents is generated ( -# YES) or a normal table of contents ( NO) in the .chm file. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -BINARY_TOC = NO - -# The TOC_EXPAND flag can be set to YES to add extra items for group members to -# the table of contents of the HTML help documentation and to the tree view. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -TOC_EXPAND = NO - -# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and -# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that -# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help -# (.qch) of the generated HTML documentation. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_QHP = NO - -# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify -# the file name of the resulting .qch file. The path specified is relative to -# the HTML output folder. -# This tag requires that the tag GENERATE_QHP is set to YES. - -QCH_FILE = - -# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help -# Project output. For more information please see Qt Help Project / Namespace -# (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace). -# The default value is: org.doxygen.Project. -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_NAMESPACE = org.doxygen.Project - -# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt -# Help Project output. For more information please see Qt Help Project / Virtual -# Folders (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual- -# folders). -# The default value is: doc. -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_VIRTUAL_FOLDER = doc - -# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom -# filter to add. For more information please see Qt Help Project / Custom -# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom- -# filters). -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_CUST_FILTER_NAME = - -# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the -# custom filter to add. For more information please see Qt Help Project / Custom -# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom- -# filters). -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_CUST_FILTER_ATTRS = - -# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this -# project's filter section matches. Qt Help Project / Filter Attributes (see: -# http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes). -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_SECT_FILTER_ATTRS = - -# The QHG_LOCATION tag can be used to specify the location of Qt's -# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the -# generated .qhp file. -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHG_LOCATION = - -# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be -# generated, together with the HTML files, they form an Eclipse help plugin. To -# install this plugin and make it available under the help contents menu in -# Eclipse, the contents of the directory containing the HTML and XML files needs -# to be copied into the plugins directory of eclipse. The name of the directory -# within the plugins directory should be the same as the ECLIPSE_DOC_ID value. -# After copying Eclipse needs to be restarted before the help appears. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_ECLIPSEHELP = NO - -# A unique identifier for the Eclipse help plugin. When installing the plugin -# the directory name containing the HTML and XML files should also have this -# name. Each documentation set should have its own identifier. -# The default value is: org.doxygen.Project. -# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES. - -ECLIPSE_DOC_ID = org.doxygen.Project - -# If you want full control over the layout of the generated HTML pages it might -# be necessary to disable the index and replace it with your own. The -# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top -# of each HTML page. A value of NO enables the index and the value YES disables -# it. Since the tabs in the index contain the same information as the navigation -# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -DISABLE_INDEX = NO - -# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index -# structure should be generated to display hierarchical information. If the tag -# value is set to YES, a side panel will be generated containing a tree-like -# index structure (just like the one that is generated for HTML Help). For this -# to work a browser that supports JavaScript, DHTML, CSS and frames is required -# (i.e. any modern browser). Windows users are probably better off using the -# HTML help feature. Via custom stylesheets (see HTML_EXTRA_STYLESHEET) one can -# further fine-tune the look of the index. As an example, the default style -# sheet generated by doxygen has an example that shows how to put an image at -# the root of the tree instead of the PROJECT_NAME. Since the tree basically has -# the same information as the tab index, you could consider setting -# DISABLE_INDEX to YES when enabling this option. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_TREEVIEW = YES - -# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that -# doxygen will group on one line in the generated HTML documentation. -# -# Note that a value of 0 will completely suppress the enum values from appearing -# in the overview section. -# Minimum value: 0, maximum value: 20, default value: 4. -# This tag requires that the tag GENERATE_HTML is set to YES. - -ENUM_VALUES_PER_LINE = 1 - -# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used -# to set the initial width (in pixels) of the frame in which the tree is shown. -# Minimum value: 0, maximum value: 1500, default value: 250. -# This tag requires that the tag GENERATE_HTML is set to YES. - -TREEVIEW_WIDTH = 250 - -# When the EXT_LINKS_IN_WINDOW option is set to YES doxygen will open links to -# external symbols imported via tag files in a separate window. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -EXT_LINKS_IN_WINDOW = NO - -# Use this tag to change the font size of LaTeX formulas included as images in -# the HTML documentation. When you change the font size after a successful -# doxygen run you need to manually remove any form_*.png images from the HTML -# output directory to force them to be regenerated. -# Minimum value: 8, maximum value: 50, default value: 10. -# This tag requires that the tag GENERATE_HTML is set to YES. - -FORMULA_FONTSIZE = 10 - -# Use the FORMULA_TRANPARENT tag to determine whether or not the images -# generated for formulas are transparent PNGs. Transparent PNGs are not -# supported properly for IE 6.0, but are supported on all modern browsers. -# -# Note that when changing this option you need to delete any form_*.png files in -# the HTML output directory before the changes have effect. -# The default value is: YES. -# This tag requires that the tag GENERATE_HTML is set to YES. - -FORMULA_TRANSPARENT = YES - -# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see -# http://www.mathjax.org) which uses client side Javascript for the rendering -# instead of using prerendered bitmaps. Use this if you do not have LaTeX -# installed or if you want to formulas look prettier in the HTML output. When -# enabled you may also need to install MathJax separately and configure the path -# to it using the MATHJAX_RELPATH option. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -USE_MATHJAX = NO - -# When MathJax is enabled you can set the default output format to be used for -# the MathJax output. See the MathJax site (see: -# http://docs.mathjax.org/en/latest/output.html) for more details. -# Possible values are: HTML-CSS (which is slower, but has the best -# compatibility), NativeMML (i.e. MathML) and SVG. -# The default value is: HTML-CSS. -# This tag requires that the tag USE_MATHJAX is set to YES. - -MATHJAX_FORMAT = HTML-CSS - -# When MathJax is enabled you need to specify the location relative to the HTML -# output directory using the MATHJAX_RELPATH option. The destination directory -# should contain the MathJax.js script. For instance, if the mathjax directory -# is located at the same level as the HTML output directory, then -# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax -# Content Delivery Network so you can quickly see the result without installing -# MathJax. However, it is strongly recommended to install a local copy of -# MathJax from http://www.mathjax.org before deployment. -# The default value is: http://cdn.mathjax.org/mathjax/latest. -# This tag requires that the tag USE_MATHJAX is set to YES. - -MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest - -# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax -# extension names that should be enabled during MathJax rendering. For example -# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols -# This tag requires that the tag USE_MATHJAX is set to YES. - -MATHJAX_EXTENSIONS = - -# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces -# of code that will be used on startup of the MathJax code. See the MathJax site -# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an -# example see the documentation. -# This tag requires that the tag USE_MATHJAX is set to YES. - -MATHJAX_CODEFILE = - -# When the SEARCHENGINE tag is enabled doxygen will generate a search box for -# the HTML output. The underlying search engine uses javascript and DHTML and -# should work on any modern browser. Note that when using HTML help -# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET) -# there is already a search function so this one should typically be disabled. -# For large projects the javascript based search engine can be slow, then -# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to -# search using the keyboard; to jump to the search box use + S -# (what the is depends on the OS and browser, but it is typically -# , /