1- {% set version = "2.9.2" %}
2- {% set sha256 = "6bd528c4dbe2276635dc787b6b1f2e5316cf6b49ee3e150264e455a0d68d19c1" %}
3- {% set build_number = "0" %}
1+ {% set version = "2.10.1" %}
2+ {% set sha256 = "111014b516b625083bef701df7880f78c2243835abdb263065b6b59b960b6bad" %}
3+
4+ # this is set to PYBIND11_INTERNALS_VERSION
5+ {% set abi_version = "4" %}
46
57package :
6- name : pybind11
8+ name : pybind11-split
79 version : {{ version }}
810
911source :
@@ -12,56 +14,98 @@ source:
1214 sha256 : {{ sha256 }}
1315
1416build :
15- skip : true # [win32] win32 is a deprecated platform.
16- number : {{ build_number }}
17+ number : 0
18+
19+ outputs :
20+ - name : pybind11-abi
21+ version : {{ abi_version }}
22+ build :
23+ noarch : generic
24+ skip : true # [not linux and x86_64]
25+ run_exports :
26+ - pybind11-abi =={{ abi_version }}
27+ test :
28+ source_files :
29+ - include/pybind11/detail/internals.h
30+ commands :
31+ # make sure the internals version matches the package version
32+ - if [ $(grep "#define PYBIND11_INTERNALS_VERSION" include/pybind11/detail/internals.h | cut -d' ' -f3) != "{{ abi_version }}" ]; then exit 1; fi
1733
18- requirements :
19- build :
20- - {{ compiler('cxx') }}
21- - cmake >=3.18
22- - ninja
23- host :
24- - python
25- - pip
26- - setuptools >=42
27- - wheel
28- # The following packages are required/desireable for the author's testing:
29- - pytest
30- - numpy
31- - scipy
32- - eigen >=3.2.7
33- - libboost >=1.56
34- run :
35- - python
34+ - name : pybind11-global
35+ script : build-pybind11-global.sh # [unix]
36+ script : build-pybind11-global.bat # [win]
37+ requirements :
38+ build :
39+ - cmake
40+ - make # [unix]
41+ - {{ compiler('cxx') }}
42+ host :
43+ - python
44+ - pip
45+ - setuptools
46+ - wheel
47+ run :
48+ - python
49+ run_constrained :
50+ - pybind11-abi =={{ abi_version }}
51+ test :
52+ requires :
53+ - pip
54+ commands :
55+ - pip check
56+ - echo "works!"
3657
37- test :
38- # Note: The author's build tests are enabled in the build scripts;
39- # however, they do not currently pass and the results of the check
40- # are ignored. This should be corrected as time allows.
41- imports :
42- - pybind11
43- requires :
44- - pip
45- commands :
46- - test -f ${PREFIX}/share/cmake/pybind11/pybind11Config.cmake # [unix]
47- - if exist %LIBRARY_PREFIX%\share\cmake\pybind11\pybind11Config.cmake (exit 0) else (exit 1) # [win]
48- - test -f ${PREFIX}/include/pybind11/pybind11.h # [unix]
49- - if exist %LIBRARY_INC%\pybind11\pybind11.h (exit 0) else (exit 1) # [win]
50- - test -f $(python -c "import pybind11 as py; print(py.get_include())")/pybind11/pybind11.h # [unix]
51- - if exist $(python -c "import pybind11 as py; print(py.get_include())")\pybind11\pybind11.h (exit 0) else (exit 1) # [win]
52- - pip check
58+ - name : pybind11
59+ script : build-pybind11.sh # [unix]
60+ script : build-pybind11.bat # [win]
61+ requirements :
62+ build :
63+ - cmake
64+ - make # [unix]
65+ - {{ compiler('cxx') }}
66+ host :
67+ - python
68+ - pip
69+ - setuptools
70+ - wheel
71+ run :
72+ - python
73+ - {{ pin_subpackage("pybind11-global", exact=True) }}
74+ run_constrained :
75+ - pybind11-abi =={{ abi_version }}
76+ test :
77+ requires :
78+ - pip
79+ imports :
80+ - pybind11
81+ commands :
82+ - pip check
83+ - test -f ${PREFIX}/share/cmake/pybind11/pybind11Config.cmake # [unix]
84+ - if exist %LIBRARY_PREFIX%\share\cmake\pybind11\pybind11Config.cmake (exit 0) else (exit 1) # [win]
85+ - test -f ${PREFIX}/include/pybind11/pybind11.h # [unix]
86+ - if exist %LIBRARY_INC%\pybind11\pybind11.h (exit 0) else (exit 1) # [win]
87+ - test -f $(python -c "import pybind11 as py; print(py.get_include())")/pybind11/pybind11.h # [unix]
88+ - if exist $(python -c "import pybind11 as py; print(py.get_include())")\pybind11\pybind11.h (exit 0) else (exit 1) # [win]
5389
5490about :
5591 home : https://github.com/pybind/pybind11/
5692 license : BSD-3-Clause
5793 license_family : BSD
58- summary : Seamless operability between C++11 and Python
5994 license_file : LICENSE
60- doc_url : https://github.com/pybind/pybind11/blob/master/README.rst
95+ summary : Seamless operability between C++11 and Python
96+ description : |
97+ pybind11 is a lightweight header-only library that exposes C++ types
98+ in Python and vice versa, mainly to create Python bindings of existing
99+ C++ code. Its goals and syntax are similar to the excellent Boost.Python
100+ library by David Abrahams: to minimize boilerplate code in traditional
101+ extension modules by inferring type information using compile-time
102+ introspection.
103+ doc_url : https://pybind11.readthedocs.io/
61104 dev_url : https://github.com/pybind/pybind11/
62105
63106extra :
64107 recipe-maintainers :
65108 - ax3l
66109 - SylvainCorlay
67110 - wjakob
111+ - henryiii
0 commit comments