diff --git a/bob/devtools/data/conda_build_config.yaml b/bob/devtools/data/conda_build_config.yaml index 95f969bc21c128602ccd54aecc1391ab6e1f7afb..55436e8e28a2c555a21454560ef385f0072ea04f 100644 --- a/bob/devtools/data/conda_build_config.yaml +++ b/bob/devtools/data/conda_build_config.yaml @@ -1,70 +1,283 @@ +# This differs from target_platform in that it determines what subdir the compiler +# will target, not what subdir the compiler package will be itself. +# For example, we need a win-64 vs2008_win-32 package, so that we compile win-32 +# code on win-64 miniconda. +cross_compiler_target_platform: # [win] + - win-64 # [win] c_compiler: + - gcc # [linux] - clang # [osx] + - vs2017 # [win] +c_compiler_version: # [unix] + - 11 # [osx] + - 9 # [linux] cxx_compiler: + - gxx # [linux] - clangxx # [osx] -fortran_compiler_version: -# matrix on linux, because the ABI breaks at GCC 8 - - 7.3.0 # [linux] - - 8.2.0 # [linux] + - vs2017 # [win] +cxx_compiler_version: # [unix] + - 11 # [osx] + - 9 # [linux] +llvm_openmp: # [osx] + - 11 # [osx] +fortran_compiler: # [unix or win64] + - gfortran # [linux64 or (osx and x86_64)] + - gfortran # [aarch64 or ppc64le or armv7l or s390x] + - flang # [win64] +fortran_compiler_version: # [unix or win64] + - 11 # [osx and arm64] + - 9 # [osx and x86_64] + - 9 # [linux] + - 5 # [win64] +m2w64_c_compiler: # [win] + - m2w64-toolchain # [win] +m2w64_cxx_compiler: # [win] + - m2w64-toolchain # [win] +m2w64_fortran_compiler: # [win] + - m2w64-toolchain # [win] +CMAKE_GENERATOR: # [win] + - NMake Makefiles # [win] + +cuda_compiler: # [linux64] + - nvcc # [linux64] +cuda_compiler_version: + - None + - 10.2 # [linux64] +cudnn: + - undefined + - 7 # [linux64] + +_libgcc_mutex: + - 0.1 conda_forge +# +# Go Compiler Options +# + +# The basic go-compiler with CGO disabled, +# It generates fat binaries without libc dependencies +# The activation scripts will set your CC,CXX and related flags +# to invalid values. +go_compiler: + - go-nocgo +# The go compiler build with CGO enabled. +# It can generate fat binaries that depend on conda's libc. +# You should use this compiler if the underlying +# program needs to link against other C libraries, in which +# case make sure to add 'c,cpp,fortran_compiler' for unix +# and the m2w64 equivalent for windows. +cgo_compiler: + - go-cgo +# The following are helpful variables to simplify go meta.yaml files. +target_goos: + - linux # [linux] + - darwin # [osx] + - windows # [win] +target_goarch: + - amd64 # [x86_64] +target_goexe: + - # [unix] + - .exe # [win] +target_gobin: + - '${PREFIX}/bin/' # [unix] + - '%PREFIX%\bin\' # [win] + +# Rust Compiler Options rust_compiler: - rust rust_compiler_version: - 1.40.0 -c_compiler_version: # [linux or osx] - - 7.3.0 # [linux] - - 10 # [osx] -cxx_compiler_version: # [linux or osx] - - 7.3.0 # [linux] - - 10 # [osx] -clang_variant: - - clang - -macos_min_version: - - 10.9 -macos_machine: - - x86_64-apple-darwin13.4.0 -MACOSX_DEPLOYMENT_TARGET: - - 10.9 -CONDA_BUILD_SYSROOT: # [osx] - - /opt/MacOSX10.10.sdk # [osx] -# This helps CMAKE find the sysroot. See -# https://cmake.org/cmake/help/v3.11/variable/CMAKE_OSX_SYSROOT.html -SDKROOT: # [osx] - - /opt/MacOSX10.10.sdk # [osx] -# makes autotools verbose +macos_machine: # [osx] + - x86_64-apple-darwin13.4.0 # [osx and x86_64] + - arm64-apple-darwin20.0.0 # [osx and arm64] +MACOSX_DEPLOYMENT_TARGET: # [osx] + - 11.0 # [osx and arm64] + - 10.9 # [osx and x86_64] +target_platform: # [win] + - win-64 # [win] VERBOSE_AT: - V=1 # makes cmake verbose VERBOSE_CM: - VERBOSE=1 -# the blas implementations that we build against -blas_impl: - - mkl - -pin_run_as_build: - libboost: - max_pin: x.x.x - py_boost: - max_pin: x.x.x - boost: - max_pin: x.x.x +# dual build configuration +channel_sources: + - conda-forge,defaults # [not (aarch64 or armv7l or (osx and arm64) or s390x)] + - conda-forge # [osx and arm64] + - conda-forge # [aarch64] + - conda-forge,c4armv7l,defaults # [armv7l] + - https://conda-web.anaconda.org/conda-forge # [s390x] ## the dependencies that we build against multiple versions python: - - 3.7 - - 3.8 + # part of a zip_keys: python, python_impl, numpy + - 3.8.* *_cpython +python_impl: + # part of a zip_keys: python, python_impl, numpy + - cpython zip_keys: - - # [win] - - vc # [win] - - c_compiler # [win] - - cxx_compiler # [win] - - fortran_compiler_version # [win] - - python # [win] - - nodejs # [win] - - geos # [win] + - # [unix] + - c_compiler_version # [unix] + - cxx_compiler_version # [unix] + - fortran_compiler_version # [unix] + - + - python + - numpy + - python_impl + - # [linux64] + - cudnn # [linux64] + - cuda_compiler_version # [linux64] + - cdt_name # [linux64] + - docker_image # [linux64 and os.environ.get("BUILD_PLATFORM") == "linux-64"] + + +# TODO: remove these when run_exports are added to the packages. +pin_run_as_build: + arpack: + max_pin: x.x.x + boost: + max_pin: x.x.x + boost-cpp: + max_pin: x.x.x + bzip2: + max_pin: x + cairo: + max_pin: x.x + curl: + max_pin: x + dbus: + max_pin: x + fftw: + max_pin: x + flann: + max_pin: x.x.x + fontconfig: + max_pin: x + freetype: + max_pin: x + gdal: + max_pin: x.x + geotiff: + max_pin: x.x.x + glew: + max_pin: x.x + glpk: + max_pin: x.x + gmp: + max_pin: x + graphviz: + max_pin: x + harfbuzz: + max_pin: x + hdf4: + max_pin: x.x + isl: + max_pin: x.x + jasper: + max_pin: x + jpeg: + max_pin: x + libjpeg_turbo: + max_pin: x + json-c: + max_pin: x.x + jsoncpp: + max_pin: x.x.x + kealib: + max_pin: x.x + krb5: + max_pin: x.x + libblitz: + max_pin: x.x + libcurl: + max_pin: x + libevent: + max_pin: x.x.x + libffi: + max_pin: x.x + libgdal: + max_pin: x.x + libiconv: + max_pin: x.x + libkml: + max_pin: x.x + libpng: + max_pin: x.x + librsvg: + max_pin: x + libsvm: + max_pin: x.x + libtiff: + max_pin: x + libxml2: + max_pin: x.x + libuuid: + max_pin: x + lz4-c: + max_pin: x.x.x + lzo: + max_pin: x + metis: + max_pin: x.x + mpfr: + max_pin: x + ncurses: + max_pin: x.x + netcdf-cxx4: + max_pin: x.x + netcdf-fortran: + max_pin: x.x + nettle: + max_pin: x.x + nlopt: + max_pin: x.x.x + nss: + max_pin: x + nspr: + max_pin: x + occt: + max_pin: x.x + openturns: + max_pin: x.x + openjpeg: + max_pin: x.x + pango: + max_pin: x.x + perl: + max_pin: x.x.x + poppler: + max_pin: x.x + qt: + max_pin: x.x + qtkeychain: + max_pin: x.x + readline: + max_pin: x + r-base: + max_pin: x.x + min_pin: x.x + sox: + max_pin: x.x.x + spdlog: + max_pin: x.x + sqlite: + max_pin: x + tk: + max_pin: x.x + tiledb: + max_pin: x.x + vlfeat: + max_pin: x.x.x + vtk: + max_pin: x.x.x + xz: + max_pin: x.x + zeromq: + max_pin: x.x # [not win] + zlib: + max_pin: x.x # Here is the version of dependencies are used when building packages (build @@ -100,7 +313,7 @@ package_names_map: boost: - - 1.73.0 + - 1.74.0 click: - 8.0.1 click_plugins: @@ -122,7 +335,7 @@ docker_py: docopt: - 0.6.2 ffmpeg: - - 4.2.2 + - 4.3 font_ttf_dejavu_sans_mono: - 2.37 freetype: @@ -130,7 +343,7 @@ freetype: giflib: - 5.2.1 graphviz: - - 2.40.1 + - 2.47 h5py: - 2.10.0 hdf5: @@ -159,9 +372,11 @@ nose: - 1.3.7 numba: - 0.53.1 -# we build against numpy 1.17 but test against newer versions. +# we build against numpy 1.18 but test against newer versions. numpy: - - 1.17 + # part of a zip_keys: python, python_impl, numpy + - 1.18 # [not (osx and arm64)] + - 1.19 # [osx and arm64] opencv: - 4.5.0 pandas: