Skip to content

Commit

Permalink
Use SHLIB_EXT (#7)
Browse files Browse the repository at this point in the history
* Use SHLIB_EXT

* MNT: Re-rendered with conda-smithy 2.0.0

* Ready for py36
  • Loading branch information
jschueller authored and Patrick Snape committed Jan 18, 2017
1 parent eaaf9dc commit 6d05a36
Show file tree
Hide file tree
Showing 10 changed files with 123 additions and 202 deletions.
5 changes: 5 additions & 0 deletions .gitattributes
@@ -0,0 +1,5 @@
* text=auto

meta.yaml text eol=lf
build.sh text eol=lf
bld.bat text eol=crlf
29 changes: 15 additions & 14 deletions .travis.yml
@@ -1,7 +1,10 @@
# This file was generated automatically from conda-smithy. To update this configuration,
# update the conda-forge.yaml and/or the recipe/meta.yaml.
# update the conda-forge.yml and/or the recipe/meta.yaml.

language: objective-c
language: generic

os: osx
osx_image: xcode6.4

env:
global:
Expand All @@ -11,28 +14,26 @@ env:

before_install:
# Remove homebrew.
- brew remove --force $(brew list)
- brew remove --force --ignore-dependencies $(brew list)
- brew cleanup -s
- rm -rf $(brew --cache)

install:
- |
MINICONDA_URL="http://repo.continuum.io/miniconda"
MINICONDA_URL="https://repo.continuum.io/miniconda"
MINICONDA_FILE="Miniconda3-latest-MacOSX-x86_64.sh"
curl -O "${MINICONDA_URL}/${MINICONDA_FILE}"
curl -L -O "${MINICONDA_URL}/${MINICONDA_FILE}"
bash $MINICONDA_FILE -b
export PATH=/Users/travis/miniconda3/bin:$PATH
conda config --set show_channel_urls true
conda update --yes conda
conda install --yes conda-build=1.20.0 jinja2 anaconda-client
source /Users/travis/miniconda3/bin/activate root
conda config --remove channels defaults
conda config --add channels defaults
conda config --add channels conda-forge
conda config --set show_channel_urls true
conda install --yes --quiet conda-forge-build-setup
source run_conda_forge_build_setup
script:
- conda build ./recipe

after_success:

- ./ci_support/upload_or_check_non_existence.py ./recipe conda-forge --channel=main
- upload_or_check_non_existence ./recipe conda-forge --channel=main
55 changes: 30 additions & 25 deletions README.md
Expand Up @@ -11,22 +11,34 @@ Summary: The VLFeat open source library implements popular computer vision algor



Current build status
====================

Linux: [![Circle CI](https://circleci.com/gh/conda-forge/vlfeat-feedstock.svg?style=shield)](https://circleci.com/gh/conda-forge/vlfeat-feedstock)
OSX: [![TravisCI](https://travis-ci.org/conda-forge/vlfeat-feedstock.svg?branch=master)](https://travis-ci.org/conda-forge/vlfeat-feedstock)
Windows: [![AppVeyor](https://ci.appveyor.com/api/projects/status/github/conda-forge/vlfeat-feedstock?svg=True)](https://ci.appveyor.com/project/conda-forge/vlfeat-feedstock/branch/master)

Current release info
====================
Version: [![Anaconda-Server Badge](https://anaconda.org/conda-forge/vlfeat/badges/version.svg)](https://anaconda.org/conda-forge/vlfeat)
Downloads: [![Anaconda-Server Badge](https://anaconda.org/conda-forge/vlfeat/badges/downloads.svg)](https://anaconda.org/conda-forge/vlfeat)

Installing vlfeat
=================

Installing vlfeat from the conda-forge channel can be achieved by adding conda-forge to your channels with:
Installing `vlfeat` from the `conda-forge` channel can be achieved by adding `conda-forge` to your channels with:

```
conda config --add channels conda-forge
```

Once the conda-forge channel has been enabled, vlfeat can be installed with:
Once the `conda-forge` channel has been enabled, `vlfeat` can be installed with:

```
conda install vlfeat
```

It is possible to list all of the versions of vlfeat available on your platform with:
It is possible to list all of the versions of `vlfeat` available on your platform with:

```
conda search vlfeat --channel conda-forge
Expand All @@ -38,7 +50,7 @@ About conda-forge

conda-forge is a community-led conda channel of installable packages.
In order to provide high-quality builds, the process has been automated into the
conda-forge GitHub organization. The conda-forge organization contains one repository
conda-forge GitHub organization. The conda-forge organization contains one repository
for each of the installable packages. Such a repository is known as a *feedstock*.

A feedstock is made up of a conda recipe (the instructions on what and how to build
Expand All @@ -51,8 +63,8 @@ packages to the [conda-forge](https://anaconda.org/conda-forge)

To manage the continuous integration and simplify feedstock maintenance
[conda-smithy](http://github.com/conda-forge/conda-smithy) has been developed.
Using the ``conda-forge.yml`` within this repository, it is possible to regenerate all of
this feedstock's supporting files (e.g. the CI configuration files) with ``conda smithy regenerate``.
Using the ``conda-forge.yml`` within this repository, it is possible to re-render all of
this feedstock's supporting files (e.g. the CI configuration files) with ``conda smithy rerender``.


Terminology
Expand All @@ -67,32 +79,25 @@ Terminology
**conda-forge** - the place where the feedstock and smithy live and work to
produce the finished article (built conda distributions)

Current build status
====================

Linux: [![Circle CI](https://circleci.com/gh/conda-forge/vlfeat-feedstock.svg?style=svg)](https://circleci.com/gh/conda-forge/vlfeat-feedstock)
OSX: [![TravisCI](https://travis-ci.org/conda-forge/vlfeat-feedstock.svg?branch=master)](https://travis-ci.org/conda-forge/vlfeat-feedstock)
Windows: [![AppVeyor](https://ci.appveyor.com/api/projects/status/github/conda-forge/vlfeat-feedstock?svg=True)](https://ci.appveyor.com/project/conda-forge/vlfeat-feedstock/branch/master)

Current release info
====================
Version: [![Anaconda-Server Badge](https://anaconda.org/conda-forge/vlfeat/badges/version.svg)](https://anaconda.org/conda-forge/vlfeat)
Downloads: [![Anaconda-Server Badge](https://anaconda.org/conda-forge/vlfeat/badges/downloads.svg)](https://anaconda.org/conda-forge/vlfeat)


Updating vlfeat-feedstock
=========================

If you would like to improve the vlfeat recipe, please take the normal
route of forking this repository and submitting a PR. Upon submission, your changes will
be run on the appropriate platforms to give the reviewer an opportunity to confirm that the
changes result in a successful build. Once merged, the recipe will be re-built and uploaded
automatically to the conda-forge channel, whereupon they will be available for everybody to
install and use.
If you would like to improve the vlfeat recipe or build a new
package version, please fork this repository and submit a PR. Upon submission,
your changes will be run on the appropriate platforms to give the reviewer an
opportunity to confirm that the changes result in a successful build. Once
merged, the recipe will be re-built and uploaded automatically to the
`conda-forge` channel, whereupon the built conda packages will be available for
everybody to install and use from the `conda-forge` channel.
Note that all branches in the conda-forge/vlfeat-feedstock are
immediately built and any created packages are uploaded, so PRs should be based
on branches in forks and branches in the main repository should only be used to
build distinct package versions.

In order to produce a uniquely identifiable distribution:
* If the version of a package **is not** being increased, please add or increase
the [``build/number``](http://conda.pydata.org/docs/building/meta-yaml.html#build-number-and-string).
the [``build/number``](http://conda.pydata.org/docs/building/meta-yaml.html#build-number-and-string).
* If the version of a package **is** being increased, please remember to return
the [``build/number``](http://conda.pydata.org/docs/building/meta-yaml.html#build-number-and-string)
back to 0.
45 changes: 26 additions & 19 deletions appveyor.yml
@@ -1,41 +1,42 @@
# This file was automatically generated by conda-smithy. To update a component of this
# file, make changes to conda-forge.yaml and/or recipe/meta.yaml, and run
# "conda-smithy regenerate".
# file, make changes to conda-forge.yml and/or recipe/meta.yaml, and run
# "conda smithy rerender".

environment:

CONDA_INSTALL_LOCN: "C:\\conda"

# SDK v7.0 MSVC Express 2008's SetEnv.cmd script will fail if the
# /E:ON and /V:ON options are not enabled in the batch script intepreter
# See: http://stackoverflow.com/a/13751649/163740
CMD_IN_ENV: "cmd /E:ON /V:ON /C obvci_appveyor_python_build_env.cmd"

# We set a default Python version for the miniconda that is to be installed. This can be
# overridden in the matrix definition where appropriate.
CONDA_PY: "27"
BINSTAR_TOKEN:
# The BINSTAR_TOKEN secure variable. This is defined canonically in conda-forge.yml.
secure: MP4hZYylDyUWEsrt3u3cod2sbFeRwUziH02mvQOdbjsTO/l1yIxDkP/76rSIjcGC

matrix:
- TARGET_ARCH: x86
CONDA_PY: 27
CONDA_INSTALL_LOCN: C:\\Miniconda

- TARGET_ARCH: x64
CONDA_PY: 27
CONDA_INSTALL_LOCN: C:\\Miniconda-x64

- TARGET_ARCH: x86
CONDA_PY: 34
CONDA_PY: 35
CONDA_INSTALL_LOCN: C:\\Miniconda35

- TARGET_ARCH: x64
CONDA_PY: 34
CONDA_PY: 35
CONDA_INSTALL_LOCN: C:\\Miniconda35-x64

- TARGET_ARCH: x86
CONDA_PY: 35
CONDA_PY: 36
CONDA_INSTALL_LOCN: C:\\Miniconda35

- TARGET_ARCH: x64
CONDA_PY: 35
CONDA_PY: 36
CONDA_INSTALL_LOCN: C:\\Miniconda35-x64


# We always use a 64-bit machine, but can build x86 distributions
Expand All @@ -56,22 +57,28 @@ install:

# Cywing's git breaks conda-build. (See https://github.com/conda-forge/conda-smithy-feedstock/pull/2.)
- cmd: rmdir C:\cygwin /s /q
- appveyor DownloadFile "https://raw.githubusercontent.com/pelson/Obvious-CI/master/bootstrap-obvious-ci-and-miniconda.py"
- cmd: python bootstrap-obvious-ci-and-miniconda.py %CONDA_INSTALL_LOCN% %TARGET_ARCH% %CONDA_PY:~0,1% --without-obvci
- cmd: set PATH=%CONDA_INSTALL_LOCN%;%CONDA_INSTALL_LOCN%\scripts;%PATH%

# Add path, activate `conda` and update conda.
- cmd: call %CONDA_INSTALL_LOCN%\Scripts\activate.bat
- cmd: conda update --yes --quiet conda

- cmd: set PYTHONUNBUFFERED=1

# Add our channels.
- cmd: conda config --set show_channel_urls true
- cmd: conda install -c pelson/channel/development --yes --quiet obvious-ci
- cmd: conda config --remove channels defaults
- cmd: conda config --add channels defaults
- cmd: conda config --add channels conda-forge
- cmd: conda info
- cmd: conda install -n root --quiet --yes conda-build anaconda-client jinja2 setuptools

# Configure the VM.
- cmd: conda install -n root --quiet --yes obvious-ci
- cmd: conda install -n root --quiet --yes conda-forge-build-setup
- cmd: run_conda_forge_build_setup

# Skip .NET project specific build phase.
build: off

test_script:
- "%CMD_IN_ENV% conda build recipe --quiet"
deploy_script:

- 'python ci_support\upload_or_check_non_existence.py .\recipe conda-forge --channel=main'
- cmd: upload_or_check_non_existence .\recipe conda-forge --channel=main
27 changes: 27 additions & 0 deletions ci_support/checkout_merge_commit.sh
@@ -0,0 +1,27 @@
#!/bin/bash


# Update PR refs for testing.
if [[ -n "${CIRCLE_PR_NUMBER}" ]]
then
FETCH_REFS="${FETCH_REFS} +refs/pull/${CIRCLE_PR_NUMBER}/head:pr/${CIRCLE_PR_NUMBER}/head"
FETCH_REFS="${FETCH_REFS} +refs/pull/${CIRCLE_PR_NUMBER}/merge:pr/${CIRCLE_PR_NUMBER}/merge"
fi

# Retrieve the refs.
if [[ -n "${CIRCLE_PR_NUMBER}" ]]
then
git fetch -u origin ${FETCH_REFS}
fi

# Checkout the PR merge ref.
if [[ -n "${CIRCLE_PR_NUMBER}" ]]
then
git checkout -qf "pr/${CIRCLE_PR_NUMBER}/merge"
fi

# Check for merge conflicts.
if [[ -n "${CIRCLE_PR_NUMBER}" ]]
then
git branch --merged | grep "pr/${CIRCLE_PR_NUMBER}/head" > /dev/null
fi
14 changes: 6 additions & 8 deletions ci_support/run_docker_build.sh
Expand Up @@ -14,8 +14,7 @@ config=$(cat <<CONDARC
channels:
- conda-forge
- defaults # As we need conda-build
- defaults
conda-build:
root-dir: /feedstock_root/build_artefacts
Expand All @@ -26,8 +25,8 @@ CONDARC
)

cat << EOF | docker run -i \
-v ${RECIPE_ROOT}:/recipe_root \
-v ${FEEDSTOCK_ROOT}:/feedstock_root \
-v "${RECIPE_ROOT}":/recipe_root \
-v "${FEEDSTOCK_ROOT}":/feedstock_root \
-a stdin -a stdout -a stderr \
condaforge/linux-anvil \
bash || exit $?
Expand All @@ -39,11 +38,10 @@ echo "$config" > ~/.condarc
# A lock sometimes occurs with incomplete builds. The lock file is stored in build_artefacts.
conda clean --lock
conda update --yes --all
conda install --yes conda-build
conda info
conda install --yes --quiet conda-forge-build-setup
source run_conda_forge_build_setup
# Embarking on 1 case(s).
conda build /recipe_root --quiet || exit 1
/feedstock_root/ci_support/upload_or_check_non_existence.py /recipe_root conda-forge --channel=main || exit 1
upload_or_check_non_existence /recipe_root conda-forge --channel=main || exit 1
EOF

0 comments on commit 6d05a36

Please sign in to comment.