meta.yaml.template 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. {% set version = "3.4.4" %}
  2. {% set am_version = "1.15" %} # keep synchronized with build.sh
  3. {% set posix = 'm2-' if win else '' %}
  4. {% set native = 'm2w64-' if win else '' %}
  5. package:
  6. name: libffi
  7. version: {{ version }}
  8. source:
  9. url: https://github.com/libffi/libffi/releases/download/v{{version}}/libffi-{{version}}.tar.gz
  10. sha256: d66c56ad259a82cf2a9dfc408b32bf5da52371500b84745f7fb8b645712df676
  11. patches:
  12. - 0001-arm64-changes-from-v3.3-patch.patch # [osx]
  13. # Windows-specific:
  14. - 0002-Don-t-define-FFI_COMPLEX_TYPEDEF-ifndef-FFI_TARGET_H.patch # [win]
  15. - win_cmake.patch # [win]
  16. - fix_w3264_masm.patch # [win]
  17. - 0004-LIBFFI_CLOSURE.patch # [linux]
  18. build:
  19. number: 0
  20. run_exports:
  21. # good history: https://abi-laboratory.pro/tracker/timeline/libffi/
  22. - {{ pin_subpackage('libffi', "x.x") }}
  23. requirements:
  24. build:
  25. - cmake # [win]
  26. - make # [unix]
  27. - autoconf # [unix]
  28. - libtool # [unix]
  29. - {{ posix }}patch
  30. - automake # [unix]
  31. - {{ posix }}texinfo # [unix]
  32. - {{ compiler('c') }} # [not osx]
  33. - {{ compiler('cxx') }} # [not osx]
  34. - {{ posix }}sed # [unix]
  35. host:
  36. run:
  37. test:
  38. requires:
  39. - llvm-tools # [win]
  40. - m2-grep # [win]
  41. - make # [unix]
  42. - cmake # [win]
  43. # no compile tests here, as used compiler might be not upward-compatible
  44. # needs to be fixed
  45. - {{ compiler('c') }} # [not osx]
  46. - {{ compiler('cxx') }} # [not osx]
  47. source_files:
  48. - testsuite/libffi.bhaible
  49. - testsuite
  50. about:
  51. home: https://sourceware.org/libffi/
  52. license: MIT
  53. license_file: LICENSE
  54. license_family: MIT
  55. summary: A Portable Foreign Function Interface Library
  56. description: |
  57. The libffi library provides a portable, high level programming interface
  58. to various calling conventions. This allows a programmer to call any
  59. function specified by a call interface description at run-time.
  60. doc_url: https://sourceware.org/libffi/
  61. dev_url: https://github.com/libffi/libffi
  62. extra:
  63. recipe-maintainers:
  64. - stefan-balke
  65. - scopatz
  66. - isuruf