{% set version = "2.10.4" %} {% set sha256 = "832e2f309c57da9c1e6d4542dedd34b24e4192ecb4d62f6f4866a737454c9970" %} # this is set to PYBIND11_INTERNALS_VERSION {% set abi_version = "4" %} {% set abi_buildnumber = "1" %} package: name: pybind11-split version: {{ version }} source: fn: pybind11-{{ version }}.tar.gz url: https://github.com/pybind/pybind11/archive/v{{ version }}.tar.gz sha256: {{ sha256 }} build: number: 0 outputs: - name: pybind11-abi version: {{ abi_version }} build: number: {{ abi_buildnumber }} noarch: generic skip: true # [not linux and x86_64] run_exports: - pybind11-abi =={{ abi_version }} test: source_files: - include/pybind11/detail/internals.h commands: # make sure the internals version matches the package version - if [[ $(grep "#[[:blank:]]*define PYBIND11_INTERNALS_VERSION" include/pybind11/detail/internals.h | rev | cut -d' ' -f1) != "{{ abi_version }}" ]]; then exit 1; fi - name: pybind11-global script: build-pybind11-global.sh # [unix] script: build-pybind11-global.bat # [win] requirements: build: - cmake - make # [unix] - {{ compiler('cxx') }} host: - python - pip - setuptools - wheel run: - python run_constrained: - pybind11-abi =={{ abi_version }} test: requires: - pip commands: - pip check - echo "works!" - name: pybind11 script: build-pybind11.sh # [unix] script: build-pybind11.bat # [win] requirements: build: - cmake - make # [unix] - {{ compiler('cxx') }} host: - python - pip - setuptools - wheel run: - python - {{ pin_subpackage("pybind11-global", exact=True) }} run_constrained: - pybind11-abi =={{ abi_version }} test: requires: - pip imports: - pybind11 commands: - pip check - test -f ${PREFIX}/share/cmake/pybind11/pybind11Config.cmake # [unix] - if exist %LIBRARY_PREFIX%\share\cmake\pybind11\pybind11Config.cmake (exit 0) else (exit 1) # [win] - test -f ${PREFIX}/include/pybind11/pybind11.h # [unix] - if exist %LIBRARY_INC%\pybind11\pybind11.h (exit 0) else (exit 1) # [win] - test -f $(python -c "import pybind11 as py; print(py.get_include())")/pybind11/pybind11.h # [unix] - if exist $(python -c "import pybind11 as py; print(py.get_include())")\pybind11\pybind11.h (exit 0) else (exit 1) # [win] about: home: https://github.com/pybind/pybind11/ license: BSD-3-Clause license_family: BSD license_file: LICENSE summary: Seamless operability between C++11 and Python description: | pybind11 is a lightweight header-only library that exposes C++ types in Python and vice versa, mainly to create Python bindings of existing C++ code. Its goals and syntax are similar to the excellent Boost.Python library by David Abrahams: to minimize boilerplate code in traditional extension modules by inferring type information using compile-time introspection. doc_url: https://pybind11.readthedocs.io/ dev_url: https://github.com/pybind/pybind11/ extra: recipe-maintainers: - ax3l - SylvainCorlay - wjakob - henryiii