meta.yaml.template 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. {% set version = "8.6.12" %}
  2. {% set maj_min = ".".join(version.split(".")[:2]) %}
  3. package:
  4. name: tk
  5. version: {{ version }}
  6. source:
  7. - url: https://altushost-swe.dl.sourceforge.net/project/tcl/Tcl/{{ version }}/tcl{{ version }}-src.tar.gz
  8. folder: tcl{{ version }}
  9. sha256: 26c995dd0f167e48b11961d891ee555f680c175f7173ff8cb829f4ebcde4c1a6
  10. - url: https://altushost-swe.dl.sourceforge.net/project/tcl/Tcl/{{ version }}/tk{{ version }}-src.tar.gz
  11. folder: tk{{ version }}
  12. sha256: 12395c1f3fcb6bed2938689f797ea3cdf41ed5cb6c4766eec8ac949560310630
  13. build:
  14. number: 0
  15. detect_binary_files_with_prefix: true
  16. run_exports:
  17. # pin to major.minor because library names have that info in them
  18. - {{ pin_subpackage('tk', max_pin='x.x') }}
  19. missing_dso_whitelist: # [linux and not ppc64le]
  20. - $RPATH/lib* # [linux and not ppc64le]
  21. requirements:
  22. build:
  23. - {{ compiler('c') }}
  24. - {{ cdt('xorg-x11-proto-devel') }} # [linux]
  25. - {{ cdt('libx11-devel') }} # [linux]
  26. - {{ cdt('libxcb') }} # [linux]
  27. - {{ cdt('libxau') }} # [linux]
  28. - make # [linux]
  29. - patch # [not win]
  30. - m2-patch # [win]
  31. host:
  32. - zlib # [unix]
  33. test:
  34. files:
  35. - hello.tcl
  36. commands:
  37. # Check for binaries.
  38. {% for ver_suffix in ["", maj_min] %}
  39. - test -f "${PREFIX}/bin/tclsh{{ ver_suffix }}" # [unix]
  40. - test -f "${PREFIX}/bin/wish{{ ver_suffix }}" # [unix]
  41. - if not exist %LIBRARY_PREFIX%\\bin\\wish{{ ver_suffix.replace(".", "") }}.exe exit 1 # [win]
  42. - if not exist %LIBRARY_PREFIX%\\bin\\tclsh{{ ver_suffix.replace(".", "") }}.exe exit 1 # [win]
  43. {% endfor %}
  44. # Check for includes.
  45. {% set tcl_tk_includes = [
  46. "tcl",
  47. "tclDecls",
  48. "tclPlatDecls",
  49. "tclPlatDecls",
  50. "tclTomMathDecls",
  51. "tclTomMath",
  52. "tk",
  53. "tkDecls",
  54. "tkPlatDecls"
  55. ] %}
  56. {% for each_tcl_tk_include in tcl_tk_includes %}
  57. - test -f "${PREFIX}/include/{{ each_tcl_tk_include }}.h" # [unix]
  58. - if not exist %LIBRARY_PREFIX%\\include\\{{ each_tcl_tk_include }}.h exit 1 # [win]
  59. {% endfor %}
  60. # Check for libraries.
  61. # Library naming note: t means "full thread support" in Windows
  62. # https://sourceforge.net/p/tcl/mailman/tcl-bugs/thread/From_noreply@sourceforge.net_Mon_Jul_23_11:46:16_2012/
  63. {% set tcl_tk_libs = [
  64. "tcl",
  65. "tk"
  66. ] %}
  67. {% for each_tcl_tk_lib in tcl_tk_libs %}
  68. - test -f "${PREFIX}/lib/lib{{ each_tcl_tk_lib }}{{ maj_min }}.dylib" # [osx]
  69. - test -f "${PREFIX}/lib/lib{{ each_tcl_tk_lib }}{{ maj_min }}.so" # [linux]
  70. - test -f "${PREFIX}/lib/lib{{ each_tcl_tk_lib }}stub{{ maj_min }}.a" # [unix]
  71. - if not exist %LIBRARY_PREFIX%\\lib\\{{ each_tcl_tk_lib }}{{ maj_min.replace(".", "") }}t.lib exit 1 # [win]
  72. - if not exist %LIBRARY_PREFIX%\\bin\\{{ each_tcl_tk_lib }}{{ maj_min.replace(".", "") }}t.dll exit 1 # [win]
  73. - if not exist %LIBRARY_PREFIX%\\lib\\{{ each_tcl_tk_lib }}stub{{ maj_min.replace(".", "") }}.lib exit 1 # [win]
  74. {% endfor %}
  75. # Check commands work and run a simple program.
  76. - tclsh hello.tcl
  77. - tclsh{{ maj_min }} hello.tcl # [unix]
  78. - tclsh{{ maj_min.replace(".", "") }} hello.tcl # [win]
  79. - wish hello.tcl
  80. - wish{{ maj_min }} hello.tcl # [unix]
  81. - wish{{ maj_min.replace(".", "") }}t hello.tcl # [win]
  82. about:
  83. home: https://www.tcl.tk/
  84. license: TCL
  85. license_family: BSD
  86. license_file: tcl{{ version }}/license.terms
  87. summary: A dynamic programming language with GUI support. Bundles Tcl and Tk.
  88. dev_url: https://core.tcl-lang.org/tk/home
  89. doc_url: https://www.tcl.tk/man/tcl8.6/index.html
  90. extra:
  91. recipe-maintainers:
  92. - jakirkham
  93. - jjhelmus
  94. - msarahan
  95. - pelson
  96. - ocefpaf
  97. - mingwandroid