summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.travis.yml15
-rwxr-xr-xTools/scripts/smelly.py7
2 files changed, 18 insertions, 4 deletions
diff --git a/.travis.yml b/.travis.yml
index ab43318975f..292b9c68763 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -52,6 +52,15 @@ matrix:
- python -m pip install sphinx~=1.6.1 blurb
script:
- make check suspicious html SPHINXOPTS="-q -W -j4"
+ - os: osx
+ language: c
+ compiler: clang
+ # Testing under macOS is optional until testing stability has been demonstrated.
+ env: OPTIONAL=true
+ before_install:
+ # Python 3 is needed for Argument Clinic and multissl
+ - brew install xz python3
+ - export PATH=$(brew --prefix)/bin:$(brew --prefix)/sbin:$PATH
- os: linux
language: c
compiler: gcc
@@ -76,9 +85,9 @@ before_install:
- set -e
- |
# Check short-circuit conditions
- if [ "${TESTING}" != "docs" ]
+ if [[ "${TESTING}" != "docs" ]]
then
- if [ "$TRAVIS_PULL_REQUEST" = "false" ]
+ if [[ "$TRAVIS_PULL_REQUEST" == "false" ]]
then
echo "Not a PR, doing full build."
else
@@ -101,7 +110,7 @@ before_install:
install:
- |
# Install OpenSSL as necessary
- if [ "${TESTING}" != "docs" ]
+ if [[ "${TESTING}" != "docs" ]]
then
# clang complains about unused-parameter a lot, redirect stderr
python3 Tools/ssl/multissltests.py --steps=library \
diff --git a/Tools/scripts/smelly.py b/Tools/scripts/smelly.py
index 212eedb30bc..43d091654d2 100755
--- a/Tools/scripts/smelly.py
+++ b/Tools/scripts/smelly.py
@@ -27,6 +27,11 @@ def get_exported_symbols():
def get_smelly_symbols(stdout):
symbols = []
ignored_symtypes = set()
+
+ allowed_prefixes = ('Py', '_Py')
+ if sys.platform == 'darwin':
+ allowed_prefixes += ('__Py',)
+
for line in stdout.splitlines():
# Split line '0000000000001b80 D PyTextIOWrapper_Type'
if not line:
@@ -47,7 +52,7 @@ def get_smelly_symbols(stdout):
continue
symbol = parts[-1]
- if symbol.startswith(('Py', '_Py')):
+ if symbol.startswith(allowed_prefixes):
continue
symbol = '%s (type: %s)' % (symbol, symtype)
symbols.append(symbol)