From 73d6666f74ab788a5c6940a5e2e695d538a003da Mon Sep 17 00:00:00 2001 From: Wolf Vollprecht Date: Fri, 6 Mar 2020 15:09:28 +0100 Subject: [PATCH] MNT: Re-rendered with conda-build 3.18.12, conda-smithy 3.6.9, and conda-forge-pinning 2020.03.06 --- .azure-pipelines/azure-pipelines-linux.yml | 32 +++++++++ .ci_support/linux_.yaml | 37 +++++++++++ .ci_support/win_.yaml | 17 ----- .github/CODEOWNERS | 2 +- .scripts/build_steps.sh | 39 +++++++++++ .scripts/run_docker_build.sh | 75 ++++++++++++++++++++++ README.md | 13 ++-- azure-pipelines.yml | 2 +- recipe/activate.sh | 1 + recipe/build.sh | 22 +++---- recipe/deactivate.sh | 5 ++ recipe/meta.yaml | 43 +++++++------ 12 files changed, 230 insertions(+), 58 deletions(-) create mode 100755 .azure-pipelines/azure-pipelines-linux.yml create mode 100644 .ci_support/linux_.yaml delete mode 100644 .ci_support/win_.yaml create mode 100755 .scripts/build_steps.sh create mode 100755 .scripts/run_docker_build.sh create mode 100644 recipe/activate.sh create mode 100644 recipe/deactivate.sh diff --git a/.azure-pipelines/azure-pipelines-linux.yml b/.azure-pipelines/azure-pipelines-linux.yml new file mode 100755 index 00000000..9ffb709e --- /dev/null +++ b/.azure-pipelines/azure-pipelines-linux.yml @@ -0,0 +1,32 @@ +# This file was generated automatically from conda-smithy. To update this configuration, +# update the conda-forge.yml and/or the recipe/meta.yaml. +# -*- mode: yaml -*- + +jobs: +- job: linux + pool: + vmImage: ubuntu-16.04 + timeoutInMinutes: 360 + strategy: + maxParallel: 8 + matrix: + linux_: + CONFIG: linux_ + UPLOAD_PACKAGES: True + DOCKER_IMAGE: condaforge/linux-anvil-comp7 + steps: + # configure qemu binfmt-misc running. This allows us to run docker containers + # embedded qemu-static + - script: | + docker run --rm --privileged multiarch/qemu-user-static:register --reset --credential yes + ls /proc/sys/fs/binfmt_misc/ + condition: not(startsWith(variables['CONFIG'], 'linux_64')) + displayName: Configure binfmt_misc + + - script: | + export CI=azure + export GIT_BRANCH=$BUILD_SOURCEBRANCHNAME + .scripts/run_docker_build.sh + displayName: Run docker build + env: + BINSTAR_TOKEN: $(BINSTAR_TOKEN) \ No newline at end of file diff --git a/.ci_support/linux_.yaml b/.ci_support/linux_.yaml new file mode 100644 index 00000000..35fe7723 --- /dev/null +++ b/.ci_support/linux_.yaml @@ -0,0 +1,37 @@ +boost_cpp: +- '1.72' +c_compiler: +- gcc +c_compiler_version: +- '7' +channel_sources: +- conda-forge,defaults +channel_targets: +- conda-forge main +curl: +- '7.64' +cxx_compiler: +- gxx +cxx_compiler_version: +- '7' +docker_image: +- condaforge/linux-anvil-comp7 +libcurl: +- '7.64' +libprotobuf: +- '3.11' +libuuid: +- 2.32.1 +pin_run_as_build: + boost-cpp: + max_pin: x.x.x + curl: + max_pin: x + libcurl: + max_pin: x + libuuid: + max_pin: x + qt: + max_pin: x.x +qt: +- '5.12' diff --git a/.ci_support/win_.yaml b/.ci_support/win_.yaml deleted file mode 100644 index 8746cd3a..00000000 --- a/.ci_support/win_.yaml +++ /dev/null @@ -1,17 +0,0 @@ -boost_cpp: -- '1.72' -channel_sources: -- conda-forge,defaults -channel_targets: -- conda-forge main -curl: -- '7.64' -pin_run_as_build: - boost-cpp: - max_pin: x.x.x - curl: - max_pin: x - qt: - max_pin: x.x -qt: -- '5.12' diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 598eaa2d..658b5a25 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1 +1 @@ -* @seanyen \ No newline at end of file +* @seanyen @wolfv \ No newline at end of file diff --git a/.scripts/build_steps.sh b/.scripts/build_steps.sh new file mode 100755 index 00000000..8a4af44f --- /dev/null +++ b/.scripts/build_steps.sh @@ -0,0 +1,39 @@ +#!/usr/bin/env bash + +# PLEASE NOTE: This script has been automatically generated by conda-smithy. Any changes here +# will be lost next time ``conda smithy rerender`` is run. If you would like to make permanent +# changes to this script, consider a proposal to conda-smithy so that other feedstocks can also +# benefit from the improvement. + +set -xeuo pipefail +export PYTHONUNBUFFERED=1 +export FEEDSTOCK_ROOT="${FEEDSTOCK_ROOT:-/home/conda/feedstock_root}" +export RECIPE_ROOT="${RECIPE_ROOT:-/home/conda/recipe_root}" +export CI_SUPPORT="${FEEDSTOCK_ROOT}/.ci_support" +export CONFIG_FILE="${CI_SUPPORT}/${CONFIG}.yaml" + +cat >~/.condarc </dev/null && pwd )" +PROVIDER_DIR="$(basename $THISDIR)" + +FEEDSTOCK_ROOT=$(cd "$(dirname "$0")/.."; pwd;) +RECIPE_ROOT="${FEEDSTOCK_ROOT}/recipe" + +docker info + +# In order for the conda-build process in the container to write to the mounted +# volumes, we need to run with the same id as the host machine, which is +# normally the owner of the mounted volumes, or at least has write permission +export HOST_USER_ID=$(id -u) +# Check if docker-machine is being used (normally on OSX) and get the uid from +# the VM +if hash docker-machine 2> /dev/null && docker-machine active > /dev/null; then + export HOST_USER_ID=$(docker-machine ssh $(docker-machine active) id -u) +fi + +ARTIFACTS="$FEEDSTOCK_ROOT/build_artifacts" + +if [ -z "$CONFIG" ]; then + set +x + FILES=`ls .ci_support/linux_*` + CONFIGS="" + for file in $FILES; do + CONFIGS="${CONFIGS}'${file:12:-5}' or "; + done + echo "Need to set CONFIG env variable. Value can be one of ${CONFIGS:0:-4}" + exit 1 +fi + +if [ -z "${DOCKER_IMAGE}" ]; then + SHYAML_INSTALLED="$(shyaml -h || echo NO)" + if [ "${SHYAML_INSTALLED}" == "NO" ]; then + echo "WARNING: DOCKER_IMAGE variable not set and shyaml not installed. Falling back to condaforge/linux-anvil-comp7" + DOCKER_IMAGE="condaforge/linux-anvil-comp7" + else + DOCKER_IMAGE="$(cat "${FEEDSTOCK_ROOT}/.ci_support/${CONFIG}.yaml" | shyaml get-value docker_image.0 condaforge/linux-anvil-comp7 )" + fi +fi + +mkdir -p "$ARTIFACTS" +DONE_CANARY="$ARTIFACTS/conda-forge-build-done-${CONFIG}" +rm -f "$DONE_CANARY" + +if [ -z "${CI}" ]; then + DOCKER_RUN_ARGS="-it " +fi + +export UPLOAD_PACKAGES="${UPLOAD_PACKAGES:-True}" +docker run ${DOCKER_RUN_ARGS} \ + -v "${RECIPE_ROOT}":/home/conda/recipe_root:ro,z \ + -v "${FEEDSTOCK_ROOT}":/home/conda/feedstock_root:rw,z \ + -e CONFIG \ + -e BINSTAR_TOKEN \ + -e HOST_USER_ID \ + -e UPLOAD_PACKAGES \ + -e GIT_BRANCH \ + -e UPLOAD_ON_BRANCH \ + -e CI \ + $DOCKER_IMAGE \ + bash \ + /home/conda/feedstock_root/${PROVIDER_DIR}/build_steps.sh + +# verify that the end of the script was reached +test -f "$DONE_CANARY" \ No newline at end of file diff --git a/README.md b/README.md index 026fa6ff..c4a6ed32 100644 --- a/README.md +++ b/README.md @@ -29,10 +29,10 @@ Current build status - + @@ -42,15 +42,15 @@ Current build status - + - + @@ -154,4 +154,5 @@ Feedstock Maintainers ===================== * [@seanyen](https://github.com/seanyen/) +* [@wolfv](https://github.com/wolfv/) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 93cf692b..ad85a2cc 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -3,4 +3,4 @@ # -*- mode: yaml -*- jobs: - - template: ./.azure-pipelines/azure-pipelines-win.yml \ No newline at end of file + - template: ./.azure-pipelines/azure-pipelines-linux.yml \ No newline at end of file diff --git a/recipe/activate.sh b/recipe/activate.sh new file mode 100644 index 00000000..9e589906 --- /dev/null +++ b/recipe/activate.sh @@ -0,0 +1 @@ +source "${CONDA_PREFIX}/share/gazebo/setup.sh" \ No newline at end of file diff --git a/recipe/build.sh b/recipe/build.sh index e5125263..8199cfe9 100644 --- a/recipe/build.sh +++ b/recipe/build.sh @@ -1,21 +1,9 @@ mkdir build cd build -# export CXXFLAGS="${CXXFLAGS} -D_FORTIFY_SOURCE=0" -CXXFLAGS=$(echo "${CXXFLAGS}" | sed -E 's@FORTIFY_SOURCE=[0-9]@FORTIFY_SOURCE=0@g') -export CXXFLAGS - -CFLAGS=$(echo "${CFLAGS}" | sed -E 's@FORTIFY_SOURCE=[0-9]@FORTIFY_SOURCE=0@g') -export CFLAGS - -export CFLAGS="${CFLAGS} -D_FORTIFY_SOURCE=0" -export CXXFLAGS="${CXXFLAGS} -D_FORTIFY_SOURCE=0" - -export BUILD_TYPE="Release" - cmake .. \ -G "Ninja" \ - -DCMAKE_BUILD_TYPE=$BUILD_TYPE \ + -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_PREFIX_PATH=$PREFIX \ -DCMAKE_INSTALL_PREFIX=$PREFIX \ -DCMAKE_INSTALL_LIBDIR=lib \ @@ -24,3 +12,11 @@ cmake .. \ cmake --build . --config $BUILD_TYPE -- -j$CPU_COUNT cmake --build . --config $BUILD_TYPE --target install + +# Copy the [de]activate scripts to $PREFIX/etc/conda/[de]activate.d. +# This will allow them to be run on environment activation. +for CHANGE in "activate" "deactivate" +do + mkdir -p "${PREFIX}/etc/conda/${CHANGE}.d" + cp "${RECIPE_DIR}/${CHANGE}.sh" "${PREFIX}/etc/conda/${CHANGE}.d/${PKG_NAME}_${CHANGE}.sh" +done diff --git a/recipe/deactivate.sh b/recipe/deactivate.sh new file mode 100644 index 00000000..7dfd6a16 --- /dev/null +++ b/recipe/deactivate.sh @@ -0,0 +1,5 @@ +unset GAZEBO_MASTER_URI +unset GAZEBO_MODEL_DATABASE_URI +unset GAZEBO_RESOURCE_PATH +unset GAZEBO_PLUGIN_PATH +unset GAZEBO_MODEL_PATH diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 7f097865..ad645e44 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -15,8 +15,8 @@ source: - normalize-ogre-path.patch # [win] build: - number: 0 - skip: true # [not linux] + number: 5 + skip: true # [osx] run_exports: - {{ pin_subpackage('gazebo', max_pin='x.x') }} @@ -24,6 +24,8 @@ requirements: build: - {{ compiler('cxx') }} # [not win] - {{ compiler('c') }} # [not win] + - vs2017_win-64 # [win64] + - vs2017_win-32 # [win32] - cmake - pkg-config - ninja @@ -52,29 +54,30 @@ requirements: - libglu # [linux] # deps - libprotobuf - - libsdformat + - libsdformat 9.* - libignition-transport8 - libignition-common3 - libignition-fuel-tools4 - qt - - ogre 1.12.5 hf484d3e_2 # [linux] - - ogre 1.12.5 # [win] - - freeimage + - ogre 1.10.12 # [linux] + - ogre # [win] + - freeimage 3.18 - curl - tbb-devel - qwt - tinyxml2 ==7.1 - - libtar - - libccd - # - hdf5 - # - simbody - # - gts + - libtar # [linux] + - libccd # [linux] - dlfcn-win32 # [win] - boost-cpp # additional deps - - libuuid + - libuuid # [linux] - libcurl - tinyxml + # - hdf5 + # - simbody + # - gts + run: - xorg-libxext # [linux] - xorg-libxdmcp # [linux] @@ -88,25 +91,25 @@ requirements: - libglu # [linux] # deps - libprotobuf - - libsdformat + - libsdformat 9.* - libignition-transport8 - libignition-common3 - libignition-fuel-tools4 - qt - {{ pin_compatible('ogre', exact=True) }} - - freeimage + - {{ pin_compatible('freeimage', exact=True) }} - curl - tbb-devel - qwt - {{ pin_compatible('tinyxml2', max_pin='x.x') }} - - libtar - - libccd + - libtar # [linux] + - libccd # [linux] # - hdf5 # - simbody # - gts - dlfcn-win32 # [win] - boost-cpp - - libuuid + - libuuid # [linux] - libcurl - tinyxml @@ -115,9 +118,9 @@ test: - if exist %PREFIX%\\Library\\bin\\gzserver.exe (exit 0) else (exit 1) # [win] - if exist %PREFIX%\\Library\\bin\\gzclient.exe (exit 0) else (exit 1) # [win] - if exist %PREFIX%\\Library\\bin\\gazebo.dll (exit 0) else (exit 1) # [win] - - gzserver --help - - gzclient --help - - gazebo --help + - test -f $PREFIX/bin/gzserver # [unix] + - test -f $PREFIX/bin/gzclient # [unix] + - test -f $PREFIX/bin/gazebo # [unix] about: home: http://gazebosim.org/
VariantStatus
winlinux - variant + variant
LinuxOSX - linux disabled + OSX disabled
OSXWindows - OSX disabled + Windows disabled