bsd.default-versions.mk 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. # MAINTAINER: ports@FreeBSD.org
  2. #
  3. # Note: before committing to this file, contact portmgr to arrange for an
  4. # experimental ports run. Untested commits may be backed out at portmgr's
  5. # discretion.
  6. #
  7. # Provide default versions for ports with multiple versions selectable
  8. # by the user.
  9. #
  10. # Users who want to override these defaults can easily do so by defining
  11. # DEFAULT_VERSIONS in their make.conf as follows:
  12. #
  13. # DEFAULT_VERSIONS= perl5=5.20 ruby=3.1
  14. .if !defined(_INCLUDE_BSD_DEFAULT_VERSIONS_MK)
  15. _INCLUDE_BSD_DEFAULT_VERSIONS_MK= yes
  16. LOCALBASE?= /usr/local
  17. . for lang in APACHE BDB COROSYNC EBUR128 EMACS FIREBIRD FORTRAN FPC GCC \
  18. GHOSTSCRIPT GL GO GUILE IMAGEMAGICK JAVA LAZARUS LIBRSVG2 LINUX LLVM \
  19. LUA LUAJIT MONO MYSQL NINJA NODEJS OPENLDAP PERL5 PGSQL PHP \
  20. PYCRYPTOGRAPHY PYTHON PYTHON2 RUBY RUST SAMBA SSL TCLTK VARNISH
  21. . if defined(${lang}_DEFAULT)
  22. ERROR+= "The variable ${lang}_DEFAULT is set and it should only be defined through DEFAULT_VERSIONS+=${lang:tl}=${${lang}_DEFAULT} in /etc/make.conf"
  23. . endif
  24. #.undef ${lang}_DEFAULT
  25. . endfor
  26. . for lang in ${DEFAULT_VERSIONS}
  27. _l= ${lang:C/=.*//g}
  28. ${_l:tu}_DEFAULT= ${lang:C/.*=//g}
  29. . endfor
  30. # Possible values: 2.4
  31. APACHE_DEFAULT?= 2.4
  32. # Possible values: 5, 18
  33. BDB_DEFAULT?= 5
  34. # Possible values: ccahe, ccahe-devel, ccahe-memcached, ccahe-memcached-static, ccahe-static
  35. CCACHE_DEFAULT?= ccache
  36. # Possible values: 2, 3
  37. COROSYNC_DEFAULT?= 3
  38. # Possible values: rust, legacy
  39. . if empty(ARCH:Naarch64:Namd64:Narmv7:Ni386:Npowerpc64:Npowerpc64le:Npowerpc:Nriscv64)
  40. EBUR128_DEFAULT?= rust
  41. . else
  42. EBUR128_DEFAULT?= legacy
  43. . endif
  44. # Possible_values: full canna nox devel_full devel_nox
  45. #EMACS_DEFAULT?= let the flavor be the default if not explicitly set
  46. # Possible values: 3.0, 4.0
  47. FIREBIRD_DEFAULT?= 3.0
  48. # Possible values: gfortran
  49. FORTRAN_DEFAULT?= gfortran
  50. # Possible values: 3.2.2, 3.3.1
  51. . if !defined(WANT_FPC_DEVEL)
  52. FPC_DEFAULT?= 3.2.2
  53. . else
  54. FPC_DEFAULT?= 3.3.1
  55. . endif
  56. # Possible values: 9, 10, 11, 12, 13, 14, 15
  57. # (Any other version is completely unsupported and not meant for general use.)
  58. GCC_DEFAULT?= 13
  59. # Possible values: 10
  60. GHOSTSCRIPT_DEFAULT?= 10
  61. # Possible values: mesa-libs, mesa-devel
  62. GL_DEFAULT?= mesa-libs
  63. # Possible values: 1.20, 1.21, 1.22, 1.23-devel
  64. GO_DEFAULT?= 1.21
  65. # Possible values: 1.8, 2.2, 3.0
  66. GUILE_DEFAULT?= 2.2
  67. # Possible versions: 6, 7
  68. # Possible flavors: x11, nox11
  69. # (defaults to x11 when not specified)
  70. # Format: version[-flavor]
  71. # Examples: 6-nox11, 7
  72. IMAGEMAGICK_DEFAULT?= 7
  73. # Possible values: 8, 11, 17, 18, 19, 20, 21
  74. JAVA_DEFAULT?= 8
  75. # Possible values: 3.2.0, 3.1.0
  76. . if !defined(WANT_LAZARUS_DEVEL)
  77. LAZARUS_DEFAULT?= 3.2.0
  78. . else
  79. LAZARUS_DEFAULT?= 3.3.1
  80. . endif
  81. # Possible values: rust, legacy
  82. . if empty(ARCH:Naarch64:Namd64:Narmv7:Ni386:Npowerpc64:Npowerpc64le:Npowerpc:Nriscv64)
  83. LIBRSVG2_DEFAULT?= rust
  84. . else
  85. LIBRSVG2_DEFAULT?= legacy
  86. . endif
  87. # Possible values: c7 rl9
  88. LINUX_DEFAULT?= c7
  89. # Possible values: 11, 12, 13, 14, 15, 16, 17, -devel (to be used when non-base compiler is required)
  90. LLVM_DEFAULT?= 15
  91. # Possible values: 5.1, 5.2, 5.3, 5.4
  92. LUA_DEFAULT?= 5.4
  93. # Possible values: luajit, luajit-devel, luajit-openresty
  94. . if ${ARCH:Mpowerpc64*}
  95. LUAJIT_DEFAULT?= luajit-openresty
  96. . else
  97. LUAJIT_DEFAULT?= luajit-devel
  98. . endif
  99. # Possible values: 5.10, 5.20, 6.8
  100. MONO_DEFAULT?= 5.20
  101. # Possible values: 8.0, 8.1, 10.5m, 10.6m, 10.11m
  102. MYSQL_DEFAULT?= 8.0
  103. # Possible values: ninja, samurai
  104. NINJA_DEFAULT?= ninja
  105. # Possible value: 18, 20, 21, 22, current, lts (Note: current = 22 and lts = 20)
  106. NODEJS_DEFAULT?= lts
  107. # Possible value: 25, 26
  108. OPENLDAP_DEFAULT?= 26
  109. # Possible values: 5.34, 5.36, 5.38, devel
  110. . if !exists(${LOCALBASE}/bin/perl) || (!defined(_PORTS_ENV_CHECK) && \
  111. defined(PACKAGE_BUILDING))
  112. PERL5_DEFAULT?= 5.36
  113. . elif !defined(PERL5_DEFAULT)
  114. # There's no need to replace development versions, like "5.23" with "devel"
  115. # because 1) nobody is supposed to use it outside of poudriere, and 2) it must
  116. # be set manually in /etc/make.conf in the first place, and we're never getting
  117. # in here.
  118. . if !defined(_PERL5_FROM_BIN)
  119. _PERL5_FROM_BIN!= ${LOCALBASE}/bin/perl -e 'printf "%vd\n", $$^V;'
  120. . endif
  121. _EXPORTED_VARS+= _PERL5_FROM_BIN
  122. PERL5_DEFAULT:= ${_PERL5_FROM_BIN:R}
  123. . endif
  124. # Possible values: 12, 13, 14, 15, 16
  125. PGSQL_DEFAULT?= 15
  126. # Possible values: 8.1, 8.2, 8.3
  127. PHP_DEFAULT?= 8.2
  128. # Possible values: rust, legacy
  129. . if empty(ARCH:Naarch64:Namd64:Narmv7:Ni386:Npowerpc64:Npowerpc64le:Npowerpc:Nriscv64)
  130. PYCRYPTOGRAPHY_DEFAULT?= rust
  131. . else
  132. PYCRYPTOGRAPHY_DEFAULT?= legacy
  133. . endif
  134. # Possible values: 3.8, 3.9, 3.10, 3.11
  135. PYTHON_DEFAULT?= 3.9
  136. # Possible values: 2.7
  137. PYTHON2_DEFAULT?= 2.7
  138. # Possible values: 3.1, 3.2, 3.3
  139. RUBY_DEFAULT?= 3.2
  140. # Possible values: rust, rust-nightly
  141. RUST_DEFAULT?= rust
  142. # Possible values: 4.16, 4.19
  143. SAMBA_DEFAULT?= 4.16
  144. # Possible values: base, openssl, openssl111, openssl31, openssl32, libressl, libressl-devel
  145. . if !defined(SSL_DEFAULT)
  146. # If no preference was set, check for an installed base version
  147. # but give an installed port preference over it.
  148. . if !defined(SSL_DEFAULT) && \
  149. !exists(${DESTDIR}/${LOCALBASE}/lib/libcrypto.so) && \
  150. exists(${DESTDIR}/usr/include/openssl/opensslv.h)
  151. SSL_DEFAULT= base
  152. . else
  153. . if exists(${DESTDIR}/${LOCALBASE}/lib/libcrypto.so)
  154. . if defined(PKG_BIN)
  155. # find installed port and use it for dependency
  156. . if !defined(OPENSSL_INSTALLED)
  157. . if defined(DESTDIR)
  158. PKGARGS= -c ${DESTDIR}
  159. . else
  160. PKGARGS=
  161. . endif
  162. OPENSSL_INSTALLED!= ${PKG_BIN} ${PKGARGS} which -qo ${LOCALBASE}/lib/libcrypto.so || :
  163. . endif
  164. . if defined(OPENSSL_INSTALLED) && !empty(OPENSSL_INSTALLED)
  165. SSL_DEFAULT:= ${OPENSSL_INSTALLED:T}
  166. WARNING+= "You have ${OPENSSL_INSTALLED} installed but do not have DEFAULT_VERSIONS+=ssl=${SSL_DEFAULT} set in your make.conf"
  167. . endif
  168. . else
  169. check-makevars::
  170. @${ECHO_MSG} "You have a ${LOCALBASE}/lib/libcrypto.so file installed, but the framework is unable"
  171. @${ECHO_MSG} "to determine what port it comes from."
  172. @${ECHO_MSG} "Add DEFAULT_VERSIONS+=ssl=<openssl package name> to your /etc/make.conf and try again."
  173. @${FALSE}
  174. . endif
  175. . endif
  176. . endif
  177. # Make sure we have a default in the end
  178. SSL_DEFAULT?= base
  179. . endif
  180. # Possible values: 8.5, 8.6, 8.7
  181. TCLTK_DEFAULT?= 8.6
  182. # Possible values: 6, 7
  183. VARNISH_DEFAULT?= 6
  184. .endif