Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create new version 3.6.1 #23

Merged
merged 37 commits into from
Nov 16, 2018
Merged
Show file tree
Hide file tree
Changes from 35 commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
719cf8f
3.6.1
chrisdembia Oct 30, 2018
c33399d
Remove unnecessary GUT_OVERRIDE.
chrisdembia Oct 30, 2018
f97d6b9
MNT: Re-rendered with conda-smithy 3.1.12 and pinning 2018.10.16
conda-forge-admin Oct 30, 2018
a94e3b5
Update sha256.
chrisdembia Oct 30, 2018
3d76a3f
Create conda_build_config.yaml
chrisdembia Oct 30, 2018
6e4de8d
Update for conda-build 3
conda-forge-admin Oct 30, 2018
c26c30d
MNT: Re-rendered with conda-smithy 3.1.12 and pinning 2018.10.16
conda-forge-admin Oct 30, 2018
84cbf0c
Remove duplicate host.
chrisdembia Oct 30, 2018
6423667
Update conda-forge.yml
chrisdembia Oct 30, 2018
2de6b04
MNT: Re-rendered with conda-smithy 3.1.12 and pinning 2018.10.16
conda-forge-admin Oct 30, 2018
9cca3a3
libxi libxmu libglu
chrisdembia Oct 31, 2018
4c1e75b
linux only for xorg
chrisdembia Oct 31, 2018
adf1dca
Bring back GLUT_OVERRIDE
chrisdembia Oct 31, 2018
e29bbdb
Update build.sh
chrisdembia Oct 31, 2018
a9d200b
Update build.sh
chrisdembia Oct 31, 2018
6806418
Update build.sh
chrisdembia Oct 31, 2018
63f25c4
mesa and freeglut in build
chrisdembia Oct 31, 2018
9c6a8bf
Update meta.yaml
chrisdembia Oct 31, 2018
ef055ae
Parallel build, remove yum_requirements.txt, add doxygen.
chrisdembia Oct 31, 2018
a7c9027
Remove doxygen for now.
chrisdembia Oct 31, 2018
2901139
Update build.sh
chrisdembia Oct 31, 2018
b28280e
Update meta.yaml
chrisdembia Oct 31, 2018
b289c81
Revert to using yum.
chrisdembia Oct 31, 2018
4fd802a
Merge branch '3.6.1' of github.com:chrisdembia/simbody-feedstock into…
chrisdembia Oct 31, 2018
ceaf41d
Copy libGL.so
chrisdembia Oct 31, 2018
2f1ff02
Use mesalib.
chrisdembia Oct 31, 2018
7de86b6
mesa instead of mesalib
chrisdembia Oct 31, 2018
d49f566
Include libglu
chrisdembia Oct 31, 2018
372800c
Use modern cmake for GLUT/GL.
chrisdembia Oct 31, 2018
311553a
Force /usr/lib64 as lib dir.
chrisdembia Nov 1, 2018
4d53fec
Link dir $PREFIX/lib
chrisdembia Nov 1, 2018
0eb1e9f
Try cross-linux.cmake
chrisdembia Nov 1, 2018
714d2b6
Forget about simbody-visualizer for now.
chrisdembia Nov 1, 2018
a51e64b
Build doxygen only on Mac.
chrisdembia Nov 1, 2018
954d565
No doxygen for now.
chrisdembia Nov 1, 2018
a6ad101
Address @moorepants' comments.
chrisdembia Nov 16, 2018
51eb0b3
Removed commented doxygen line.
moorepants Nov 16, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
6 changes: 3 additions & 3 deletions .appveyor.yml
Expand Up @@ -21,7 +21,7 @@ platform:
install:
# If there is a newer build queued for the same PR, cancel this one.
- cmd: |
powershell -Command "(New-Object Net.WebClient).DownloadFile('https://raw.githubusercontent.com/conda-forge/conda-forge-ci-setup-feedstock/master/recipe/ff_ci_pr_build.py', 'ff_ci_pr_build.py')"
powershell -Command "(New-Object Net.WebClient).DownloadFile('https://raw.githubusercontent.com/conda-forge/conda-forge-ci-setup-feedstock/branch2.0/recipe/conda_forge_ci_setup/ff_ci_pr_build.py', 'ff_ci_pr_build.py')"
ff_ci_pr_build -v --ci "appveyor" "%APPVEYOR_ACCOUNT_NAME%/%APPVEYOR_PROJECT_SLUG%" "%APPVEYOR_BUILD_NUMBER%" "%APPVEYOR_PULL_REQUEST_NUMBER%"
del ff_ci_pr_build.py

Expand All @@ -41,7 +41,7 @@ install:
- cmd: conda.exe config --add channels conda-forge

# Configure the VM.
- cmd: conda.exe install -n root --quiet --yes conda-forge-ci-setup=1
- cmd: conda.exe install -n root --quiet --yes conda-forge-ci-setup=2
- cmd: run_conda_forge_build_setup

# Skip .NET project specific build phase.
Expand All @@ -50,4 +50,4 @@ build: off
test_script:
- conda.exe build recipe -m .ci_support\%CONFIG%.yaml --quiet
deploy_script:
- cmd: upload_or_check_non_existence .\recipe conda-forge --channel=main -m .ci_support\%CONFIG%.yaml
- cmd: upload_package .\ .\recipe .ci_support\%CONFIG%.yaml
21 changes: 18 additions & 3 deletions .ci_support/linux_.yaml
@@ -1,9 +1,24 @@
build_number_decrement:
- '0'
c_compiler:
- toolchain_c
- gcc
channel_sources:
- conda-forge/label/gcc7,defaults
channel_targets:
- conda-forge gcc7
cxx_compiler:
- toolchain_cxx
- gxx
docker_image:
- condaforge/linux-anvil-comp7
openblas:
- 0.2.20
- 0.3.3
pin_run_as_build:
openblas:
max_pin: x.x.x
zip_keys:
- - c_compiler
- cxx_compiler
- channel_sources
- channel_targets
- docker_image
- build_number_decrement
18 changes: 15 additions & 3 deletions .ci_support/osx_.yaml
@@ -1,15 +1,27 @@
MACOSX_DEPLOYMENT_TARGET:
- '10.9'
build_number_decrement:
- '0'
c_compiler:
- toolchain_c
- clang
channel_sources:
- conda-forge/label/gcc7,defaults
channel_targets:
- conda-forge gcc7
cxx_compiler:
- toolchain_cxx
- clangxx
macos_machine:
- x86_64-apple-darwin13.4.0
macos_min_version:
- '10.9'
openblas:
- 0.2.20
- 0.3.3
pin_run_as_build:
openblas:
max_pin: x.x.x
zip_keys:
- - c_compiler
- cxx_compiler
- channel_sources
- channel_targets
- build_number_decrement
8 changes: 4 additions & 4 deletions .ci_support/win_c_compilervs2015cxx_compilervs2015vc14.yaml
@@ -1,12 +1,12 @@
c_compiler:
- vs2015
channel_sources:
- conda-forge,defaults
channel_targets:
- conda-forge main
cxx_compiler:
- vs2015
openblas:
- 0.2.20
pin_run_as_build:
openblas:
max_pin: x.x.x
vc:
max_pin: x
vc:
Expand Down
25 changes: 16 additions & 9 deletions .circleci/build_steps.sh
Expand Up @@ -7,24 +7,26 @@

set -xeuo pipefail
export PYTHONUNBUFFERED=1
export FEEDSTOCK_ROOT=/home/conda/feedstock_root
export RECIPE_ROOT=/home/conda/recipe_root
export CI_SUPPORT=/home/conda/feedstock_root/.ci_support
export CONFIG_FILE="${CI_SUPPORT}/${CONFIG}.yaml"

cat >~/.condarc <<CONDARC

channels:
- conda-forge
- defaults

conda-build:
root-dir: /home/conda/feedstock_root/build_artifacts

show_channel_urls: true

CONDARC

conda install --yes --quiet conda-forge::conda-forge-ci-setup=2 conda-build

# set up the condarc
setup_conda_rc "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}"

# A lock sometimes occurs with incomplete builds. The lock file is stored in build_artifacts.
conda clean --lock

conda install --yes --quiet conda-forge-ci-setup=1 conda-build
source run_conda_forge_build_setup


Expand All @@ -35,7 +37,12 @@ source run_conda_forge_build_setup
/usr/bin/sudo -n yum install -y libXi-devel libXmu-devel mesa-libGLU-devel


conda build /home/conda/recipe_root -m /home/conda/feedstock_root/.ci_support/${CONFIG}.yaml --quiet
upload_or_check_non_existence /home/conda/recipe_root conda-forge --channel=main -m /home/conda/feedstock_root/.ci_support/${CONFIG}.yaml
# make the build number clobber
make_build_number "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}"

conda build "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \
--clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" --quiet

upload_package "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}"

touch "/home/conda/feedstock_root/build_artifacts/conda-forge-build-done-${CONFIG}"
2 changes: 1 addition & 1 deletion .circleci/fast_finish_ci_pr_build.sh
@@ -1,4 +1,4 @@
#!/bin/bash

curl https://raw.githubusercontent.com/conda-forge/conda-forge-ci-setup-feedstock/master/recipe/ff_ci_pr_build.py | \
curl https://raw.githubusercontent.com/conda-forge/conda-forge-ci-setup-feedstock/branch2.0/recipe/conda_forge_ci_setup/ff_ci_pr_build.py | \
python - -v --ci "circle" "${CIRCLE_PROJECT_USERNAME}/${CIRCLE_PROJECT_REPONAME}" "${CIRCLE_BUILD_NUM}" "${CIRCLE_PR_NUMBER}"
7 changes: 5 additions & 2 deletions .circleci/run_docker_build.sh
Expand Up @@ -8,7 +8,7 @@
set -xeuo pipefail

FEEDSTOCK_ROOT=$(cd "$(dirname "$0")/.."; pwd;)
RECIPE_ROOT=$FEEDSTOCK_ROOT/recipe
RECIPE_ROOT="${FEEDSTOCK_ROOT}/recipe"

docker info

Expand All @@ -29,6 +29,9 @@ if [ -z "$CONFIG" ]; then
exit 1
fi

pip install shyaml
DOCKER_IMAGE=$(cat "${FEEDSTOCK_ROOT}/.ci_support/${CONFIG}.yaml" | shyaml get-value docker_image.0 condaforge/linux-anvil )

mkdir -p "$ARTIFACTS"
DONE_CANARY="$ARTIFACTS/conda-forge-build-done-${CONFIG}"
rm -f "$DONE_CANARY"
Expand All @@ -39,7 +42,7 @@ docker run -it \
-e CONFIG \
-e BINSTAR_TOKEN \
-e HOST_USER_ID \
condaforge/linux-anvil \
$DOCKER_IMAGE \
bash \
/home/conda/feedstock_root/.circleci/build_steps.sh

Expand Down
2 changes: 1 addition & 1 deletion .github/PULL_REQUEST_TEMPLATE.md
Expand Up @@ -6,7 +6,7 @@ Checklist
* [ ] Used a fork of the feedstock to propose changes
* [ ] Bumped the build number (if the version is unchanged)
* [ ] Reset the build number to `0` (if the version changed)
* [ ] [Re-rendered]( https://conda-forge.org/docs/conda_smithy.html#how-to-re-render ) with the latest `conda-smithy`
* [ ] [Re-rendered]( https://conda-forge.org/docs/conda_smithy.html#how-to-re-render ) with the latest `conda-smithy` (Use the phrase <code>@<space/>conda-forge-admin, please rerender</code> in a comment in this PR for automated rerendering)
* [ ] Ensured the license file is being packaged.

<!--
Expand Down
22 changes: 13 additions & 9 deletions .travis.yml
Expand Up @@ -18,7 +18,7 @@ env:
before_install:
# Fast finish the PR.
- |
(curl https://raw.githubusercontent.com/conda-forge/conda-forge-ci-setup-feedstock/master/recipe/ff_ci_pr_build.py | \
(curl https://raw.githubusercontent.com/conda-forge/conda-forge-ci-setup-feedstock/branch2.0/recipe/conda_forge_ci_setup/ff_ci_pr_build.py | \
python - -v --ci "travis" "${TRAVIS_REPO_SLUG}" "${TRAVIS_BUILD_NUMBER}" "${TRAVIS_PULL_REQUEST}") || exit 1

# Remove homebrew.
Expand Down Expand Up @@ -46,14 +46,18 @@ install:
echo ""
echo "Configuring conda."
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-ci-setup=1

conda install --yes --quiet conda-forge::conda-forge-ci-setup=2
setup_conda_rc ./ ./recipe ./.ci_support/${CONFIG}.yaml

source run_conda_forge_build_setup

script:
- conda build ./recipe -m ./.ci_support/${CONFIG}.yaml
# compiler cleanup
- |
mangle_compiler ./ ./recipe ./.ci_support/${CONFIG}.yaml

- upload_or_check_non_existence ./recipe conda-forge --channel=main -m ./.ci_support/${CONFIG}.yaml
script:
# generate the build number clobber
- make_build_number ./ ./recipe ./.ci_support/${CONFIG}.yaml
- conda build ./recipe -m ./.ci_support/${CONFIG}.yaml --clobber-file ./.ci_support/clobber_${CONFIG}.yaml
- upload_package ./ ./recipe ./.ci_support/${CONFIG}.yaml
12 changes: 6 additions & 6 deletions README.md
Expand Up @@ -59,13 +59,13 @@ 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
the package) and the necessary configurations for automatic building using freely
available continuous integration services. Thanks to the awesome service provided by
[CircleCI](https://circleci.com/), [AppVeyor](http://www.appveyor.com/)
[CircleCI](https://circleci.com/), [AppVeyor](https://www.appveyor.com/)
and [TravisCI](https://travis-ci.org/) it is possible to build and upload installable
packages to the [conda-forge](https://anaconda.org/conda-forge)
[Anaconda-Cloud](http://docs.anaconda.org/) channel for Linux, Windows and OSX respectively.
[Anaconda-Cloud](https://anaconda.org/) channel for Linux, Windows and OSX respectively.

To manage the continuous integration and simplify feedstock maintenance
[conda-smithy](http://github.com/conda-forge/conda-smithy) has been developed.
[conda-smithy](https://github.com/conda-forge/conda-smithy) has been developed.
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``.

Expand Down Expand Up @@ -101,7 +101,7 @@ 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``](https://conda.io/docs/user-guide/tasks/build-packages/define-metadata.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.
the [``build/number``](https://conda.io/docs/user-guide/tasks/build-packages/define-metadata.html#build-number-and-string)
back to 0.
1 change: 1 addition & 0 deletions conda-forge.yml
@@ -1,6 +1,7 @@
travis:
secure:
BINSTAR_TOKEN: I+L4bYUiz09ojMmKlRth2u9kOsScZLGdVLE5pGRLh5mesyuztpTQ44WiDJbIj5VnBLv0/9xvUekIJz0Ok1dQ+QAVHKrUizPAglIQLWG1jX/eytbyK+RZCYIdqbOSxRrdkLuaLyGmP8ARUw8xywSRCzRGGDFfs31dPtsrXGDSYxrqkzVU8EiehkC93aupIyoJWTGRAQ4PA88AhdWTGdfBkIfmx0sNuBbH1FzKi3qpXc21ThjnT6O7JU7Nezq2yEW5GO1WD0sXgY414QALyKHl/Gf7mLO1fOd4EcLHxdDTC+BiQmCBJZpK8u8JYO12zTV0QrI6AAvvY0pE4bpbdHFlmO9oQ/NnVE9qCPLybh6FC0AH8nnTBlzDVna1shWjzf2zvvATZSrLQ3A4Aez61B5//Ps7c33U2/O3IrDl/VXW5VXPagNfrI5zHTG7I6zt20BRNmQmPwlT6Lt7h+wCorlR21sqqf1zUaMdP9xPEhT0JwreuY/jz9hzok7S0lGzMzhaMgD6F7o5QXtsRp9LQ26FUAVG4HVSQs4SABiC9LAoDyIFj3+BZurHQ1FFaBz58AGVgnzkkRONggAqlCMGi1O5lMB5vu86uTOnKGpXBcBcwMHplCWRN74MokhSZ2CYlaWqQn405xy/HPNfu97e9OFZObuJo4l1HQpXd6GjFE8wIqM=
compiler_stack: comp7
appveyor:
secure:
BINSTAR_TOKEN: tumuXLL8PU75WMnRDemRy02ruEq2RpNxeK3dz0MjFssnosPm2v4EFjfNB4PTotA1
3 changes: 2 additions & 1 deletion recipe/bld.bat
@@ -1,7 +1,8 @@
mkdir build
cd build
cmake -G "%CMAKE_GENERATOR%" -DCMAKE_INSTALL_PREFIX="%LIBRARY_PREFIX%" ..
cmake --build . --target install --config Release --
cmake --build . --target doxygen --config Release
cmake --build . --target install --config Release
REM NOTE: Run the tests here in the build directory to make sure things are
REM built correctly. This cannot be specified in the meta.yml:test section
REM because it won't be run in the build directory.
Expand Down
18 changes: 10 additions & 8 deletions recipe/build.sh
@@ -1,14 +1,9 @@
#!/bin/bash

# FIXME: This is a hack to make sure the environment is activated.
# The reason this is required is due to the conda-build issue
# mentioned below.
#
# https://github.com/conda/conda-build/issues/910
source activate "${CONDA_DEFAULT_ENV}"

mkdir build
cd build

declare -a CMAKE_PLATFORM_FLAGS
if [[ "$OSTYPE" == "linux-gnu" ]]; then
# TODO: This test is failing for a yet-to-be-determined reason. See
# https://github.com/simbody/simbody/issues/400 for more details. Once
Expand All @@ -17,16 +12,23 @@ if [[ "$OSTYPE" == "linux-gnu" ]]; then
# The CMAKE_CXX_FLAGS is required due to this bug in Simbody:
# https://github.com/simbody/simbody/issues/511
GLUT_OVERRIDE=(-DCMAKE_CXX_FLAGS="-I$PREFIX/include")
CMAKE_PLATFORM_FLAGS+=(-DCMAKE_TOOLCHAIN_FILE="${RECIPE_DIR}/cross-linux.cmake")
# TODO: Temporary, because setting up OpenGL is challenging.
CMAKE_PLATFORM_FLAGS+=(-DBUILD_VISUALIZER=off)
elif [[ "$OSTYPE" == "darwin"* ]]; then
SKIP_TEST=()
GLUT_OVERRIDE=()
fi

# https://github.com/AnacondaRecipes/freeglut-feedstock/blob/master/recipe/build.sh
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe a note about why this is linked here.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed.


cmake .. \
-DCMAKE_INSTALL_PREFIX="$PREFIX" \
-DCMAKE_INSTALL_LIBDIR="lib" \
-DCMAKE_BUILD_TYPE="RELEASE" \
${CMAKE_PLATFORM_FLAGS[@]} \
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Match indentation?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed.

-DBUILD_USING_OTHER_LAPACK="$PREFIX/lib/libopenblas${SHLIB_EXT}" $GLUT_OVERRIDE
make
make --jobs ${CPU_COUNT}
# NOTE: Run the tests here in the build directory to make sure things are built
# correctly. This cannot be specified in the meta.yml:test section because it
# won't be run in the build directory.
Expand Down
10 changes: 10 additions & 0 deletions recipe/conda_build_config.yaml
@@ -0,0 +1,10 @@
# MACOSX_DEPLOYMENT_TARGET:
# - 10.10
# macos_min_version:
# - 10.10
c_compiler:
- gcc # [linux]
- clang # [osx]
cxx_compiler:
- gxx # [linux]
- clangxx # [osx]
18 changes: 18 additions & 0 deletions recipe/cross-linux.cmake
@@ -0,0 +1,18 @@
# https://github.com/ContinuumIO/anaconda-issues/issues/8779
# https://github.com/AnacondaRecipes/freeglut-feedstock/blob/master/recipe/cross-linux.cmake
# this one is important
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These notes could be a bit more informative.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed.

set(CMAKE_SYSTEM_NAME Linux)
set(CMAKE_PLATFORM Linux)

# specify the cross compiler
set(CMAKE_C_COMPILER $ENV{CC})
set(CMAKE_CXX_COMPILER $ENV{CXX})

# where is the target environment
set(CMAKE_FIND_ROOT_PATH $ENV{PREFIX} $ENV{BUILD_PREFIX}/$ENV{HOST}/sysroot)

# search for programs in the build host directories
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
# for libraries and headers in the target directories
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)