diff --git a/.appveyor.yml b/.appveyor.yml index 76c61b8..4f19e16 100644 --- a/.appveyor.yml +++ b/.appveyor.yml @@ -1,15 +1,42 @@ -version: 1.0.{build} +version: '{build}' image: Visual Studio 2015 +platform: +- x86 +- x64 environment: matrix: - - PATH: C:\Python27\;C:\Python27\Scripts\;%PATH% - - PATH: C:\Python27-x64\;C:\Python27-x64\Scripts\;%PATH% - - PATH: C:\Python35\;C:\Python35\Scripts\;%PATH% - - PATH: C:\Python35-x64\;C:\Python35-x64\Scripts\;%PATH% + - PYTHON: 27 + - PYTHON: 35 + - CONDA: 27 + - CONDA: 35 +matrix: + allow_failures: + - platform: x86 + CONDA: 27 install: -- cmd: git submodule update -q --init --recursive +- ps: | + git submodule update -q --init --recursive + if ($env:PYTHON) { + if ($env:PLATFORM -eq "x64") { $env:PYTHON = "$env:PYTHON-x64" } + $env:PATH = "C:\Python$env:PYTHON\;C:\Python$env:PYTHON\Scripts\;$env:PATH" + pip install --disable-pip-version-check --user --upgrade pip + } elseif ($env:CONDA) { + if ($env:CONDA -eq "27") { $env:CONDA = "" } + if ($env:PLATFORM -eq "x64") { $env:CONDA = "$env:CONDA-x64" } + $env:PATH = "C:\Miniconda$env:CONDA\;C:\Miniconda$env:CONDA\Scripts\;$env:PATH" + conda config --set always_yes yes --set changeps1 no + conda config --add channels conda-forge + conda update -q conda + conda install -q conda-build + } build_script: -- cmd: python setup.py sdist -- cmd: pip install --verbose dist\cmake_example-0.0.1.zip +- ps: | + if ($env:PYTHON) { + python setup.py sdist + pip install --verbose dist\cmake_example-0.0.1.zip + } elseif ($env:CONDA) { + conda build conda.recipe + conda install --use-local cmake_example + } test_script: -- cmd: python tests\test.py +- ps: python tests\test.py diff --git a/.travis.yml b/.travis.yml index f6d7d44..0e08217 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,6 +5,8 @@ os: env: - PYTHON=2.7 - PYTHON=3.5 +- CONDA=2.7 +- CONDA=3.5 addons: apt: sources: @@ -17,13 +19,35 @@ addons: - python3.5-dev - cmake before_install: -- if [ "$TRAVIS_OS_NAME" = "linux" ]; then export CXX=g++-4.8 CC=gcc-4.8; fi -- if [ "$TRAVIS_OS_NAME" = "osx" ] && [ "$PYTHON" = "3.5" ]; then brew update; brew install python3; fi -- pip install --user virtualenv -- virtualenv -p python$PYTHON venv -- source venv/bin/activate +- | + if [ "$TRAVIS_OS_NAME" = "linux" ]; then export CXX=g++-4.8 CC=gcc-4.8; fi + if [ -n "$PYTHON" ]; then + if [ "$TRAVIS_OS_NAME" = "osx" ] && [ "$PYTHON" = "3.5" ]; then + brew update; brew install python3; + fi + pip install --user --upgrade pip virtualenv + virtualenv -p python$PYTHON venv + source venv/bin/activate + elif [ -n "$CONDA" ]; then + if [ "$TRAVIS_OS_NAME" = "linux" ]; then OS=Linux-x86_64; else OS=MacOSX-x86_64; fi + wget -O miniconda.sh https://repo.continuum.io/miniconda/Miniconda${CONDA:0:1}-latest-$OS.sh + bash miniconda.sh -b -p $HOME/miniconda + export PATH="$HOME/miniconda/bin:$PATH" + conda config --set always_yes yes --set changeps1 no + conda config --add channels conda-forge + conda update -q conda + conda install -q conda-build + conda create -q -n test-environment python=$CONDA + source activate test-environment + fi install: -- python setup.py sdist -- pip install --verbose dist/*.tar.gz +- | + if [ -n "$PYTHON" ]; then + python setup.py sdist + pip install --verbose dist/*.tar.gz + elif [ -n "$CONDA" ]; then + conda build conda.recipe + conda install --use-local cmake_example + fi script: - python tests/test.py diff --git a/conda.recipe/bld.bat b/conda.recipe/bld.bat index 5ddc156..c40a9bb 100644 --- a/conda.recipe/bld.bat +++ b/conda.recipe/bld.bat @@ -1,5 +1,2 @@ -call "%VS140COMNTOOLS%\..\..\VC\vcvarsall.bat" x64 -set DISTUTILS_USE_SDK=1 -set MSSdk=1 "%PYTHON%" setup.py install if errorlevel 1 exit 1 diff --git a/conda.recipe/build.sh b/conda.recipe/build.sh index 89fce62..fc3a9af 100644 --- a/conda.recipe/build.sh +++ b/conda.recipe/build.sh @@ -1,3 +1,3 @@ #!/bin/bash +unset MACOSX_DEPLOYMENT_TARGET ${PYTHON} setup.py install; - diff --git a/conda.recipe/meta.yaml b/conda.recipe/meta.yaml index 792af48..95d6729 100644 --- a/conda.recipe/meta.yaml +++ b/conda.recipe/meta.yaml @@ -1,11 +1,14 @@ package: name: cmake_example - version: {{ environ.get('GIT_DESCRIBE_TAG', '') }} + version: {{ environ.get('GIT_DESCRIBE_TAG', 'dev') }} build: number: {{ environ.get('GIT_DESCRIBE_NUMBER', 0) }} {% if environ.get('GIT_DESCRIBE_NUMBER', '0') == '0' %}string: py{{ environ.get('PY_VER').replace('.', '') }}_0 {% else %}string: py{{ environ.get('PY_VER').replace('.', '') }}_{{ environ.get('GIT_BUILD_STR', 'GIT_STUB') }}{% endif %} + script_env: + - CC + - CXX source: git_url: ../