diff options
author | Jeroen Roovers <jer@gentoo.org> | 2018-10-22 12:38:00 +0200 |
---|---|---|
committer | Jeroen Roovers <jer@gentoo.org> | 2018-10-22 12:38:37 +0200 |
commit | d6f10dc7a02e4acb35a098c3096fd500862bfd4b (patch) | |
tree | aeb6ccc77ea7c59b1cbcb7f041d3f15e1b22e0cc /dev-lang | |
parent | media-gfx/wings: Fix dev-lang/erlang[smp!?] dependency. (diff) | |
download | gentoo-d6f10dc7a02e4acb35a098c3096fd500862bfd4b.tar.gz gentoo-d6f10dc7a02e4acb35a098c3096fd500862bfd4b.tar.bz2 gentoo-d6f10dc7a02e4acb35a098c3096fd500862bfd4b.zip |
dev-lang/erlang: Old.
Package-Manager: Portage-2.3.51, Repoman-2.3.11
Signed-off-by: Jeroen Roovers <jer@gentoo.org>
Diffstat (limited to 'dev-lang')
-rw-r--r-- | dev-lang/erlang/Manifest | 6 | ||||
-rw-r--r-- | dev-lang/erlang/erlang-20.2.ebuild | 158 | ||||
-rw-r--r-- | dev-lang/erlang/erlang-20.3.2.ebuild | 227 | ||||
-rw-r--r-- | dev-lang/erlang/erlang-20.3.8.9.ebuild | 227 | ||||
-rw-r--r-- | dev-lang/erlang/erlang-21.0.2.ebuild | 226 | ||||
-rw-r--r-- | dev-lang/erlang/files/erlang-20.2-libressl-2.6.1.patch | 111 |
6 files changed, 0 insertions, 955 deletions
diff --git a/dev-lang/erlang/Manifest b/dev-lang/erlang/Manifest index 3ef7f5536c9c..dfbe889e0c1f 100644 --- a/dev-lang/erlang/Manifest +++ b/dev-lang/erlang/Manifest @@ -1,9 +1,6 @@ DIST erlang-19.3.6.12.tar.gz 34004718 BLAKE2B 49f726a4c3f3bb4fcde1d3ff7cee93ef68a0ed0f5cbb00af8fb3585fb640302bf407351b61b0507c6aaefb4311f77dc0de450d2c43c6f8310f6af01ffd424a79 SHA512 9e117cbbc9cf53d908ae87f58f80f5ad4d3e69d5f1c94e3460a1d9c287dc7290d05fccb104ffc7779dd36b6b9377290ac4c5983a8ad3ea3ca518f66e0ab0db3f -DIST erlang-20.3.2.tar.gz 53492641 BLAKE2B 2cdf78b6003801400d99949865a5b3e17d2209bf411bbe07dc12f749c84725710d12f85cb2559bc39ac04a7d6f7a9ae07b5f131a5524cf4ce3eb8559ca0259bc SHA512 060874cd4f72c1ecea178dd102f4b37a644485a810127092ad04fee76b52729ce199ee476335a2a40370bc718b7e03eb76869c3a48d457773856fd9f6d30a20b DIST erlang-20.3.8.10.tar.gz 53511918 BLAKE2B 5f430bda415a5b59e9dec3222abe311264277ee91b2e7e9e69dba1016169492dc621df314c057e39f16b7bfe01686f405b9ccde362f84c5c2f0ffde68a923ffa SHA512 0d5ab27d17ff203d2c719fd5a03d843e3046037240e97ae9ad59d9f0690cf46cfb5fac2569590ce68f62169b1b2b2bc693e9a9b82f6ab0371693c5324bd3288b -DIST erlang-20.3.8.9.tar.gz 53514692 BLAKE2B 1afa37ff8cc462cb0cc719c49c2c10b2684c7160b6912c574834021b2f521737dfa4cfedd0c82c843c1bb1e1977143fac7ae1ec94cfa9df4b2775deffd903a7b SHA512 6318760423f019a1611479da9b4187556a29e97f27bbc900cb36e0b2e0ef7e89ca65c053afbe4154cd9b5eaa3b59085a6d88c26d2990b09b7d2396b1dd5584a7 DIST erlang-20.3.8.tar.gz 53499006 BLAKE2B 0c38fb739a9c4f4b79533faea8c533f85c30d680081b5de96e70722a243d53b9317a26c7138a24a78cadd938777bd48a515484fffef2fdfd720819ab12bb8c0c SHA512 2ada142b47fdd0d1807a179e7cd3067e001f94682011436d33e503219a8a93495a187f8192fa2ebcdac48409e489b7b310d538779447981e6ba033a6dde12e1c -DIST erlang-21.0.2.tar.gz 52835517 BLAKE2B bf7e2e166236a7c0a3e3411889f163dce0d938c1a854a6c264c137b601587c4cd4d62d58d9a87cf925406272d6e3d6547e4403927adc8e901716289ee2164162 SHA512 ff736a6df92ac7feec7b9ebb1b6523d511a533d48e536f36aee20fa21b5a1dc33791065d45f6900bbbaa48b4ba80b57a306b416801456a5ac33468786dfb00b7 DIST erlang-21.0.9.tar.gz 52842736 BLAKE2B 57de5e94450a70d32eb46bff691be4d3679daa56bee4e9aa2aad156b9447ea5bbe1287b806c304115c0ac4a677b8a04fb23286e269c7e0516f60cebd5ef2b3c7 SHA512 01bc5ce8d5c76823af1a17d389f326509c4ade5add0b0e66830e2c6aec2c7d93906cbbf9fb6b454178bddfa1c96355d632e4c557ab6da2bbdb8c6b0e05d87ee8 DIST erlang-21.1.1.tar.gz 53854332 BLAKE2B 32ab508b5a305eb92eac9f49bd513374c573966e7565d98aa6ba986ce42eb955a46130b9f33dbb415f48de5c179b308a8b06b345a844afcb2700f7e3f257f27e SHA512 dc11aace126aad5411b0d583579fe95a7263be328612fdc9f9c02d917aef7ea7a128b1e54ddcf7a52232980d2c81fc8e90ae5a8806ee5ae6ea97f00a9cf3faab DIST erlang-21.1.tar.gz 53857079 BLAKE2B ae292f5e98d747a6afb5d82205dd33d55cb6e275e3ebc98a4dbc8378cfcb1ea64f83d5f2d2256fd7208c7fe553b47ff25edf2858287f5316cae50788f2175337 SHA512 9e118e902c33b8dd71266efb4cc4aeb0db0d8be8adb64ac85595a6507dc847b84e5444a9b5c5cbf46b560c885db9f4cd934c74de4aa2e1574785295ea0865348 @@ -17,13 +14,10 @@ DIST erlang_doc_man_21.0.tar.gz 1311959 BLAKE2B 70b049c6d7b8bbbb3bf77f7588ccf0eb DIST erlang_doc_man_21.1.tar.gz 1317726 BLAKE2B 5e5c2b77a41da6ab9ae1264ba5824a9f3bda6d3b7a824b372e01356888db437ed9e45bf987d678aca3fd8d0f0e6dce25080c7a2aaa4e061936f1e6ac4717e843 SHA512 94c6191ba9f42bffeb398e865026fbc79f3b233389c7d471f0c680799aa3669e97ab5305cd53f26d6525aed33d738ebfc4eb79a8f1a0b29dc4b79a2a37a29a4f DIST otp_doc_html_19.1.tar.gz 34624316 BLAKE2B e3a5edfe1645d58e4cbd6537c775190716eed7613610ddfa112692fdbace2077b1ccdf7df5987973d2ae4ef529e4ec45d44a240265157816e2a15dabe9232b83 SHA512 2c6448af0be4bf35427950aca82eac3aac7554575ba07a8ba8942c27e1eb668461fde00604c3be28fbaca8a1e28ee4861608e33a9c79bc951bb695f99b1c1ac8 DIST otp_doc_html_19.3.tar.gz 35818689 BLAKE2B 30118276fbd817b803ef20700fe2e71a8457645d00f8949b6d3175d92cb5c84d306e4de9899e2f5e0c562d8040dc22db35e1a0f2e314cf1a783794573b3ece59 SHA512 a70d2c470fa1dc0594b20af73ba36ccb7702b4192960e6fc0296738175215a43450f9bf558637f7f5e40757f7a15dcf4f1ae8a88515e211cd3c0fae45c5e1858 -DIST otp_doc_html_20.2.tar.gz 33570484 BLAKE2B c47244a601ae780e5304aedbafbc84d514cb21852760c51384b197d8d37602d51448b7123f6205da9afd2c5d2158f518a122dd4d550ca2ff22d3425eb31b6cf7 SHA512 b481930066737cf0ae2496aa9bc0c865da46bd3985fe5ebcf51eb9383539a57ec364e1eed9d3916ba0953d837d0d5d37cfc129a995d4e2a9656846e75cda9397 DIST otp_doc_html_20.3.tar.gz 33594990 BLAKE2B 34db68a5c3ae56f097474cc0b776971853d96c57d3d2e058a5db8998aad9c8d498610979a46155e8e935022f363c944f407c10c650fd35174cf1f50697ddf1de SHA512 4b280228fb9cbd9eb62db12ff9d6fad67d6855d0cdbc780839bbc95302ffd907c5b410e6f8519207db8850b753964571a9bf9df9eca53749f5b01d1b27dbc6d4 DIST otp_doc_man_19.1.tar.gz 1405580 BLAKE2B 93b79b88f81a00d7cbb934dbac811c6ea0ec59413e073fe613038eab71087908ed4e4bcbb6c8ed2f0c5bdd03ab4a570f20c4460f233c040ae0c4238e1cfa097a SHA512 4ee35feeff70419ff5500e00dc17e34fdea8be21342d41cf1e255b84a1826b51057046be543ee1052153ae8c8cd215f4720cecae7d9fe1576cbd681dcf4b2334 DIST otp_doc_man_19.3.tar.gz 1410781 BLAKE2B 78293aa498c2651be27d83f13e14007f25a1816b4dae499f463249f774256eddde3a4e31c435a30edd04fb6f41cee965c968b338de77330c3320f3df6087be92 SHA512 675a0d2d5972660a60de17c832e630f646f942d23815427eb0dec3a5ca1c44ed8fe35a9c30f8b608dedfd10f6fb1e47e958ea6e32e296b6f6809b1844b4da9a1 -DIST otp_doc_man_20.2.tar.gz 1337652 BLAKE2B 416e83c696e30981eabad1f5a7c89abfd0b9d48ff04c9bd86b13dc96302acc9f2b9a73906a2976888ce35c6bfb38b3c006a1e0a041dd1bd5e75908e53bb920c3 SHA512 a67bb975b613c74c4e2418406b6472764ac69dfb9f8a6f64c79c680b1f87edea719431c140b006f776b0088885d958a6f2718267cebaf73ed506eaff721400f4 DIST otp_doc_man_20.3.tar.gz 1339710 BLAKE2B 00aba848940914b3d98f9500b8201b0679d7d63d066cee296c8fbb399f132340b989f3cdcdd6c45a46e432efdb7c40c39d8ab4f3dbd64570316d649efc9faed1 SHA512 22c398ce3b42c7ef8abec1db85745eeb4d8804bc679d40b6a786fdc40dc241e43b5551df5d1eccb3ca8d4a64b833bf6663e77044f4564bb49cf67c4b74c5ea25 DIST otp_src_19.1.tar.gz 68103074 BLAKE2B 48e06ce5998929a8ca9804e51f07a4153e7fb1c8b1b4b1b60132e255c29c475534ce018a7902ed29b696b783a21daa73d1778435aada1a77064ab46e915af87d SHA512 bd1c243393c867c91768367613aedb40d56889add149390c81f22e022e76b716d6e9a4d5db7e6477ceb1216c26c18c962abdfd8215a87420758f5ef2063b9714 DIST otp_src_19.3.tar.gz 68510871 BLAKE2B fc37c493f5fa3533aaa29f545ff751f5851b58d8952f6f21ef50fec433d661a1e3300139b30a41d9c1f16b3eeaf5d98450bf0a2408e7910712d9d98f3af19237 SHA512 6920eab6e1681a76ab44bdd0eeb9b012e601191f91ca06edf1f63ba2e261c555d6f8dddf7025b2e9c3c6459bd63ff78659010ec33967fb1952840fb451ec2de6 -DIST otp_src_20.2.tar.gz 87136848 BLAKE2B f83e652320b67b72cf42be3c23a9251806096fea4e255f73c8170bcb61ea1e008983f1da1c9dc7b46b76e1fd0d96f94097f5d629eb28c08eb424bb1e7a1cee28 SHA512 6c2cbef9fa67f4aa9d0c22bedf87f39b0067994614663afee88c57bb7789eec45cb1970dcbd930d163a27293b8d24b20a90cf6ed30ff1a14492a9ccdd5b59a65 DIST otp_src_20.3.tar.gz 88170904 BLAKE2B 3f92641e4eb4079572c0cc1cbc6ba1f56977efd182efcef6c466a0ac6232e18d9481823624cdd49a866feb38e96db6150f40927f25f2daaa64fe4aafd02089b4 SHA512 4169e2e653055c62dd66e214dcab577b49cadb8328dcc43adb8a2d44850b12c02db8323992c21852409697c5a48493068316417be9d97519b039a8f1cde143da diff --git a/dev-lang/erlang/erlang-20.2.ebuild b/dev-lang/erlang/erlang-20.2.ebuild deleted file mode 100644 index 04a771dbceaa..000000000000 --- a/dev-lang/erlang/erlang-20.2.ebuild +++ /dev/null @@ -1,158 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 -WX_GTK_VER="3.0" - -inherit autotools elisp-common eutils java-pkg-opt-2 multilib systemd versionator wxwidgets - -# NOTE: If you need symlinks for binaries please tell maintainers or -# open up a bug to let it be created. - -DESCRIPTION="Erlang programming language, runtime environment and libraries (OTP)" -HOMEPAGE="https://www.erlang.org/" -SRC_URI="http://erlang.org/download/otp_src_${PV}.tar.gz - http://erlang.org/download/otp_doc_man_${PV}.tar.gz - doc? ( http://erlang.org/download/otp_doc_html_${PV}.tar.gz )" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris" - -IUSE="compat-ethread dirty-schedulers doc emacs hipe java kpoll libressl odbc smp sctp ssl systemd tk wxwidgets" -REQUIRED_USE="dirty-schedulers? ( smp )" #621610 - -RDEPEND=" - ssl? ( - !libressl? ( >=dev-libs/openssl-0.9.7d:0 ) - libressl? ( dev-libs/libressl ) - ) - emacs? ( virtual/emacs ) - java? ( >=virtual/jdk-1.2:* ) - odbc? ( dev-db/unixODBC ) - systemd? ( sys-apps/systemd )" -DEPEND="${RDEPEND} - wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[X,opengl] virtual/glu ) - sctp? ( net-misc/lksctp-tools ) - tk? ( dev-lang/tk )" - -S="${WORKDIR}/otp_src_${PV}" - -SITEFILE=50${PN}-gentoo.el - -src_prepare() { - epatch "${FILESDIR}"/18.2.1-wx3.0.patch - epatch "${FILESDIR}"/${P}-libressl-2.6.1.patch - - use odbc || sed -i 's: odbc : :' lib/Makefile - - # bug 263129, don't ignore LDFLAGS, reported upstream - sed -e 's:LDFLAGS = \$(DED_LDFLAGS):LDFLAGS += \$(DED_LDFLAGS):' -i "${S}"/lib/megaco/src/flex/Makefile.in - - # don't ignore LDFLAGS, reported upstream - sed -e 's:LDFLAGS = \$(ODBC_LIB) \$(EI_LDFLAGS):LDFLAGS += \$(ODBC_LIB) \$(EI_LDFLAGS):' -i "${S}"/lib/odbc/c_src/Makefile.in - - if ! use wxwidgets; then - sed -i 's: wx : :' lib/Makefile - rm -rf lib/wx - fi - - # Nasty workaround, reported upstream - cp "${S}"/lib/configure.in.src "${S}"/lib/configure.in - - # bug 383697 - sed -i '1i#define OF(x) x' erts/emulator/drivers/common/gzio.c - - cd erts && mv configure.in configure.ac && eautoreconf -} - -src_configure() { - use wxwidgets && need-wxwidgets unicode - use java || export JAVAC=false - - econf \ - --enable-threads \ - $(use_enable sctp) \ - $(use_enable systemd) \ - $(use_enable hipe) \ - $(use_with ssl ssl "${EPREFIX}"/usr) \ - $(use_enable ssl dynamic-ssl-lib) \ - $(use_enable kpoll kernel-poll) \ - $(use_enable smp smp-support) \ - $(use compat-ethread && echo "--enable-ethread-pre-pentium4-compatibility") \ - $(use x64-macos && echo "--enable-darwin-64bit") \ - $(use_enable dirty-schedulers) -} - -src_compile() { - use java || export JAVAC=false - emake - - if use emacs ; then - pushd lib/tools/emacs - elisp-compile *.el - popd - fi -} - -extract_version() { - sed -n -e "/^$2 = \(.*\)$/s::\1:p" "${S}/$1/vsn.mk" -} - -src_install() { - local ERL_LIBDIR=/usr/$(get_libdir)/erlang - local ERL_INTERFACE_VER=$(extract_version lib/erl_interface EI_VSN) - local ERL_ERTS_VER=$(extract_version erts VSN) - - emake INSTALL_PREFIX="${D}" install - dodoc AUTHORS README.md - - dosym "${ERL_LIBDIR}/bin/erl" /usr/bin/erl - dosym "${ERL_LIBDIR}/bin/erlc" /usr/bin/erlc - dosym "${ERL_LIBDIR}/bin/escript" /usr/bin/escript - dosym \ - "${ERL_LIBDIR}/lib/erl_interface-${ERL_INTERFACE_VER}/bin/erl_call" \ - /usr/bin/erl_call - dosym "${ERL_LIBDIR}/erts-${ERL_ERTS_VER}/bin/beam" /usr/bin/beam - use smp && dosym "${ERL_LIBDIR}/erts-${ERL_ERTS_VER}/bin/beam.smp" /usr/bin/beam.smp - - ## Clean up the no longer needed files - rm "${ED}/${ERL_LIBDIR}/Install" - - for i in "${WORKDIR}"/man/man* ; do - dodir "${ERL_LIBDIR}/${i##${WORKDIR}}" - done - for file in "${WORKDIR}"/man/man*/*.[1-9]; do - # doman sucks so we can't use it - cp ${file} "${ED}/${ERL_LIBDIR}"/man/man${file##*.}/ - done - # extend MANPATH, so the normal man command can find it - # see bug 189639 - dodir /etc/env.d/ - echo "MANPATH=\"${EPREFIX}${ERL_LIBDIR}/man\"" > "${ED}/etc/env.d/90erlang" - - if use doc ; then - dohtml -A README,erl,hrl,c,h,kwc,info -r \ - "${WORKDIR}"/doc "${WORKDIR}"/lib "${WORKDIR}"/erts-* - fi - - if use emacs ; then - pushd "${S}" - elisp-install erlang lib/tools/emacs/*.{el,elc} - sed -e "s:/usr/share:${EPREFIX}/usr/share:g" \ - "${FILESDIR}"/${SITEFILE} > "${T}"/${SITEFILE} - elisp-site-file-install "${T}"/${SITEFILE} - popd - fi - - newinitd "${FILESDIR}"/epmd.init epmd - systemd_dounit "${FILESDIR}"/epmd.service -} - -pkg_postinst() { - use emacs && elisp-site-regen -} - -pkg_postrm() { - use emacs && elisp-site-regen -} diff --git a/dev-lang/erlang/erlang-20.3.2.ebuild b/dev-lang/erlang/erlang-20.3.2.ebuild deleted file mode 100644 index 8f13394dbd27..000000000000 --- a/dev-lang/erlang/erlang-20.3.2.ebuild +++ /dev/null @@ -1,227 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 -WX_GTK_VER="3.0" - -inherit autotools elisp-common java-pkg-opt-2 systemd versionator wxwidgets - -# NOTE: If you need symlinks for binaries please tell maintainers or -# open up a bug to let it be created. - -UPSTREAM_V="$(get_version_component_range 1-2)" - -DESCRIPTION="Erlang programming language, runtime environment and libraries (OTP)" -HOMEPAGE="https://www.erlang.org/" -SRC_URI="https://github.com/erlang/otp/archive/OTP-${PV}.tar.gz -> ${P}.tar.gz - http://erlang.org/download/otp_doc_man_${UPSTREAM_V}.tar.gz -> ${PN}_doc_man_${UPSTREAM_V}.tar.gz - doc? ( http://erlang.org/download/otp_doc_html_${UPSTREAM_V}.tar.gz -> ${PN}_doc_html_${UPSTREAM_V}.tar.gz )" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris" - -IUSE="dirty-schedulers doc emacs hipe java kpoll libressl odbc smp sctp ssl systemd tk" -REQUIRED_USE="dirty-schedulers? ( smp )" #621610 - -RDEPEND=" - ssl? ( - !libressl? ( >=dev-libs/openssl-0.9.7d:0= ) - libressl? ( dev-libs/libressl:0= ) - ) - emacs? ( virtual/emacs ) - java? ( >=virtual/jdk-1.2:* ) - odbc? ( dev-db/unixODBC ) - systemd? ( sys-apps/systemd ) -" -DEPEND="${RDEPEND} - dev-lang/perl - sctp? ( net-misc/lksctp-tools ) - sys-libs/zlib - tk? ( dev-lang/tk ) - x11-libs/wxGTK:${WX_GTK_VER}[X,opengl] - virtual/glu -" - -S="${WORKDIR}/otp-OTP-${PV}" - -PATCHES=( - "${FILESDIR}/18.2.1-wx3.0.patch" - "${FILESDIR}/${PN}-20.3.2-dont-ignore-LDFLAGS.patch" - "${FILESDIR}/${PN}-add-epmd-pid-file-creation-for-openrc.patch" - ) - -SITEFILE=50"${PN}"-gentoo.el - -# Taken from the upstream build script, build_otp -erlang_create_lib_configure_in() { - local bootstrap_apps="erts lib/asn1 lib/compiler lib/hipelib/ic lib/kernel - lib/parsetools lib/sasl lib/snmp lib/stdlib lib/syntax_tools" - local sdirs= - for lib_app in ${bootstrap_apps}; do - case "${lib_app}" in - lib/*) - if [[ -f "${lib_app}/configure.in" ]]; then - mv "${lib_app}/configure.in" "${lib_app}/configure.ac" || die - app=`echo "${lib_app}" | sed "s|lib/\(.*\)|\1|"` - sdirs="${sdirs}test ! -f ${app}/configure || AC_CONFIG_SUBDIRS(${app}/.)\n" || die - fi;; - *) - ;; - esac - done - - local sed_bootstrap="s%@BOOTSTRAP_CONFIGURE_APPS@%$sdirs%g" - - sdirs= - for lib_app in lib/*; do - local is_bapp=false - for bapp in ${bootstrap_apps}; do - test "${bapp} != ${lib_app}" || { "${is_bapp}"=true; break; } - done - if [[ "${is_bapp}" = false ]] && [[ -f "${lib_app}/configure.in" ]]; then - mv "${lib_app}/configure.in" "${lib_app}/configure.ac" || die - app=`echo "${lib_app}" | sed "s|lib/\(.*\)|\1|"` || die - sdirs="${sdirs} test ! -f ${app}/configure || AC_CONFIG_SUBDIRS(${app}/.)\n" - fi - done - - local sed_non_bootstrap="s%@NON_BOOTSTRAP_CONFIGURE_APPS@%$sdirs%g" - - rm -f lib/configure.in || die - sed "$sed_bootstrap;$sed_non_bootstrap" > lib/configure.ac < lib/configure.in.src || die "Failed to create lib/configure.ac" - -} - -# Taken from the upstream build script, build_otp -erlang_distribute_config_helpers() { - local aclocal_dirs=". ./lib/erl_interface ./lib/odbc ./lib/wx ./lib/megaco" - local autoconf_aux_dirs="./lib/common_test/priv/auxdir ./lib/erl_interface/src/auxdir ./lib/common_test/test_server ./lib/wx/autoconf" - - local aclocal_master="./erts/aclocal.m4" - local install_sh_master="./erts/autoconf/install-sh" - local config_guess_master="./erts/autoconf/config.guess" - local config_sub_master="./erts/autoconf/config.sub" - - for dir in ${aclocal_dirs}; do - "${install_sh_master}" -m 644 -t "${dir}" "${aclocal_master}" || die - done - - for dir in ${autoconf_aux_dirs}; do - "${install_sh_master}" -d "${dir}" || die - "${install_sh_master}" -t "${dir}" "${install_sh_master}" || die - "${install_sh_master}" -t "${dir}" "${config_guess_master}" || die - "${install_sh_master}" -t "${dir}" "${config_sub_master}" || die - done -} - -src_prepare() { - default - - # Determines which directories to recurse into with autoconf - erlang_create_lib_configure_in - - # Move local autoconf files into the neccessary directories - erlang_distribute_config_helpers - - java-pkg-opt-2_src_prepare - - eautoreconf -} - -src_configure() { - need-wxwidgets unicode - - econf \ - --disable-builtin-zlib \ - $(use_enable dirty-schedulers) \ - $(use_enable hipe) \ - $(use_enable kpoll kernel-poll) \ - $(use_with java javac) \ - $(use_with odbc) \ - $(use_enable sctp) \ - $(use_enable smp smp-support) \ - $(use_with ssl) \ - $(use_with ssl ssl-rpath "no") \ - $(use_enable ssl dynamic-ssl-lib) \ - $(use_enable systemd) \ - --enable-threads -} - -src_compile() { - emake - - if use emacs ; then - pushd lib/tools/emacs &>/dev/null || die - elisp-compile *.el - popd &>/dev/null || die - fi -} - -extract_version() { - sed -n -e "/^$2 = \(.*\)$/s::\1:p" "${S}/$1/vsn.mk" -} - -src_install() { - local ERL_LIBDIR="/usr/$(get_libdir)/erlang" - local ERL_INTERFACE_VER="$(extract_version lib/erl_interface EI_VSN)" - local ERL_ERTS_VER="$(extract_version erts VSN)" - local MY_MANPATH="/usr/share/${PN}/man" - - [[ -z "${ERL_ERTS_VER}" ]] && die "Couldn't determine erts version" - [[ -z "${ERL_INTERFACE_VER}" ]] && die "Couldn't determine interface version" - - emake INSTALL_PREFIX="${ED}" install - - if use doc ; then - local DOCS=( "AUTHORS" "HOWTO"/* "README.md" "CONTRIBUTING.md" "${WORKDIR}"/doc/. "${WORKDIR}"/lib/. "${WORKDIR}"/erts-* ) - docompress -x /usr/share/doc/${PF} - fi - - einstalldocs - - dosym "${ERL_LIBDIR}/bin/erl" /usr/bin/erl - dosym "${ERL_LIBDIR}/bin/erlc" /usr/bin/erlc - dosym "${ERL_LIBDIR}/bin/escript" /usr/bin/escript - dosym \ - "${ERL_LIBDIR}/lib/erl_interface-${ERL_INTERFACE_VER}/bin/erl_call" \ - /usr/bin/erl_call - - if use smp; then - dosym "${ERL_LIBDIR}/erts-${ERL_ERTS_VER}/bin/beam.smp" /usr/bin/beam.smp - else - dosym "${ERL_LIBDIR}/erts-${ERL_ERTS_VER}/bin/beam" /usr/bin/beam - fi - - ## Clean up the no longer needed files - rm "${ED}/${ERL_LIBDIR}/Install" || die - - insinto "${MY_MANPATH}" - - doins -r "${WORKDIR}"/man/* - - # extend MANPATH, so the normal man command can find it - # see bug 189639 - echo "MANPATH=\"${MY_MANPATH}\"" > "${T}/90erlang" || die - doenvd "${T}/90erlang" - - if use emacs ; then - pushd "${S}" &>/dev/null || die - elisp-install erlang lib/tools/emacs/*.{el,elc} - sed -e "s:/usr/share:${EPREFIX}/usr/share:g" \ - "${FILESDIR}/${SITEFILE}" > "${T}/${SITEFILE}" || die - elisp-site-file-install "${T}/${SITEFILE}" - popd &>/dev/null || die - fi - - newinitd "${FILESDIR}"/epmd.init epmd - systemd_dounit "${FILESDIR}"/epmd.service -} - -pkg_postinst() { - use emacs && elisp-site-regen -} - -pkg_postrm() { - use emacs && elisp-site-regen -} diff --git a/dev-lang/erlang/erlang-20.3.8.9.ebuild b/dev-lang/erlang/erlang-20.3.8.9.ebuild deleted file mode 100644 index ac47c4ad59c7..000000000000 --- a/dev-lang/erlang/erlang-20.3.8.9.ebuild +++ /dev/null @@ -1,227 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 -WX_GTK_VER="3.0" - -inherit autotools elisp-common java-pkg-opt-2 systemd versionator wxwidgets - -# NOTE: If you need symlinks for binaries please tell maintainers or -# open up a bug to let it be created. - -UPSTREAM_V="$(get_version_component_range 1-2)" - -DESCRIPTION="Erlang programming language, runtime environment and libraries (OTP)" -HOMEPAGE="https://www.erlang.org/" -SRC_URI="https://github.com/erlang/otp/archive/OTP-${PV}.tar.gz -> ${P}.tar.gz - http://erlang.org/download/otp_doc_man_${UPSTREAM_V}.tar.gz -> ${PN}_doc_man_${UPSTREAM_V}.tar.gz - doc? ( http://erlang.org/download/otp_doc_html_${UPSTREAM_V}.tar.gz -> ${PN}_doc_html_${UPSTREAM_V}.tar.gz )" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris" - -IUSE="dirty-schedulers doc emacs hipe java kpoll libressl odbc smp sctp ssl systemd tk wxwidgets" -REQUIRED_USE="dirty-schedulers? ( smp )" #621610 - -RDEPEND=" - ssl? ( - !libressl? ( >=dev-libs/openssl-0.9.7d:0= ) - libressl? ( dev-libs/libressl:0= ) - ) - emacs? ( virtual/emacs ) - java? ( >=virtual/jdk-1.2:* ) - odbc? ( dev-db/unixODBC ) - systemd? ( sys-apps/systemd ) -" -DEPEND="${RDEPEND} - dev-lang/perl - sctp? ( net-misc/lksctp-tools ) - sys-libs/zlib - tk? ( dev-lang/tk ) - wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[X,opengl] - virtual/glu ) -" - -S="${WORKDIR}/otp-OTP-${PV}" - -PATCHES=( - "${FILESDIR}/18.2.1-wx3.0.patch" - "${FILESDIR}/${PN}-20.3.2-dont-ignore-LDFLAGS.patch" - "${FILESDIR}/${PN}-add-epmd-pid-file-creation-for-openrc.patch" - ) - -SITEFILE=50"${PN}"-gentoo.el - -# Taken from the upstream build script, build_otp -erlang_create_lib_configure_in() { - local bootstrap_apps="erts lib/asn1 lib/compiler lib/hipelib/ic lib/kernel - lib/parsetools lib/sasl lib/snmp lib/stdlib lib/syntax_tools" - local sdirs= - for lib_app in ${bootstrap_apps}; do - case "${lib_app}" in - lib/*) - if [[ -f "${lib_app}/configure.in" ]]; then - mv "${lib_app}/configure.in" "${lib_app}/configure.ac" || die - app=`echo "${lib_app}" | sed "s|lib/\(.*\)|\1|"` - sdirs="${sdirs}test ! -f ${app}/configure || AC_CONFIG_SUBDIRS(${app}/.)\n" || die - fi;; - *) - ;; - esac - done - - local sed_bootstrap="s%@BOOTSTRAP_CONFIGURE_APPS@%$sdirs%g" - - sdirs= - for lib_app in lib/*; do - local is_bapp=false - for bapp in ${bootstrap_apps}; do - test "${bapp} != ${lib_app}" || { "${is_bapp}"=true; break; } - done - if [[ "${is_bapp}" = false ]] && [[ -f "${lib_app}/configure.in" ]]; then - mv "${lib_app}/configure.in" "${lib_app}/configure.ac" || die - app=`echo "${lib_app}" | sed "s|lib/\(.*\)|\1|"` || die - sdirs="${sdirs} test ! -f ${app}/configure || AC_CONFIG_SUBDIRS(${app}/.)\n" - fi - done - - local sed_non_bootstrap="s%@NON_BOOTSTRAP_CONFIGURE_APPS@%$sdirs%g" - - rm -f lib/configure.in || die - sed "$sed_bootstrap;$sed_non_bootstrap" > lib/configure.ac < lib/configure.in.src || die "Failed to create lib/configure.ac" - -} - -# Taken from the upstream build script, build_otp -erlang_distribute_config_helpers() { - local aclocal_dirs=". ./lib/erl_interface ./lib/odbc ./lib/wx ./lib/megaco" - local autoconf_aux_dirs="./lib/common_test/priv/auxdir ./lib/erl_interface/src/auxdir ./lib/common_test/test_server ./lib/wx/autoconf" - - local aclocal_master="./erts/aclocal.m4" - local install_sh_master="./erts/autoconf/install-sh" - local config_guess_master="./erts/autoconf/config.guess" - local config_sub_master="./erts/autoconf/config.sub" - - for dir in ${aclocal_dirs}; do - "${install_sh_master}" -m 644 -t "${dir}" "${aclocal_master}" || die - done - - for dir in ${autoconf_aux_dirs}; do - "${install_sh_master}" -d "${dir}" || die - "${install_sh_master}" -t "${dir}" "${install_sh_master}" || die - "${install_sh_master}" -t "${dir}" "${config_guess_master}" || die - "${install_sh_master}" -t "${dir}" "${config_sub_master}" || die - done -} - -src_prepare() { - default - - # Determines which directories to recurse into with autoconf - erlang_create_lib_configure_in - - # Move local autoconf files into the neccessary directories - erlang_distribute_config_helpers - - java-pkg-opt-2_src_prepare - - eautoreconf -} - -src_configure() { - use wxwidgets && need-wxwidgets unicode - - econf \ - --disable-builtin-zlib \ - $(use_enable dirty-schedulers) \ - $(use_enable hipe) \ - $(use_enable kpoll kernel-poll) \ - $(use_with java javac) \ - $(use_with odbc) \ - $(use_enable sctp) \ - $(use_enable smp smp-support) \ - $(use_with ssl) \ - $(use_with ssl ssl-rpath "no") \ - $(use_enable ssl dynamic-ssl-lib) \ - $(use_enable systemd) \ - --enable-threads -} - -src_compile() { - emake - - if use emacs ; then - pushd lib/tools/emacs &>/dev/null || die - elisp-compile *.el - popd &>/dev/null || die - fi -} - -extract_version() { - sed -n -e "/^$2 = \(.*\)$/s::\1:p" "${S}/$1/vsn.mk" -} - -src_install() { - local ERL_LIBDIR="/usr/$(get_libdir)/erlang" - local ERL_INTERFACE_VER="$(extract_version lib/erl_interface EI_VSN)" - local ERL_ERTS_VER="$(extract_version erts VSN)" - local MY_MANPATH="/usr/share/${PN}/man" - - [[ -z "${ERL_ERTS_VER}" ]] && die "Couldn't determine erts version" - [[ -z "${ERL_INTERFACE_VER}" ]] && die "Couldn't determine interface version" - - emake INSTALL_PREFIX="${D}" install - - if use doc ; then - local DOCS=( "AUTHORS" "HOWTO"/* "README.md" "CONTRIBUTING.md" "${WORKDIR}"/doc/. "${WORKDIR}"/lib/. "${WORKDIR}"/erts-* ) - docompress -x /usr/share/doc/${PF} - fi - - einstalldocs - - dosym "${ERL_LIBDIR}/bin/erl" /usr/bin/erl - dosym "${ERL_LIBDIR}/bin/erlc" /usr/bin/erlc - dosym "${ERL_LIBDIR}/bin/escript" /usr/bin/escript - dosym \ - "${ERL_LIBDIR}/lib/erl_interface-${ERL_INTERFACE_VER}/bin/erl_call" \ - /usr/bin/erl_call - - if use smp; then - dosym "${ERL_LIBDIR}/erts-${ERL_ERTS_VER}/bin/beam.smp" /usr/bin/beam.smp - else - dosym "${ERL_LIBDIR}/erts-${ERL_ERTS_VER}/bin/beam" /usr/bin/beam - fi - - ## Clean up the no longer needed files - rm "${ED}/${ERL_LIBDIR}/Install" || die - - insinto "${MY_MANPATH}" - - doins -r "${WORKDIR}"/man/* - - # extend MANPATH, so the normal man command can find it - # see bug 189639 - echo "MANPATH=\"${MY_MANPATH}\"" > "${T}/90erlang" || die - doenvd "${T}/90erlang" - - if use emacs ; then - pushd "${S}" &>/dev/null || die - elisp-install erlang lib/tools/emacs/*.{el,elc} - sed -e "s:/usr/share:${EPREFIX}/usr/share:g" \ - "${FILESDIR}/${SITEFILE}" > "${T}/${SITEFILE}" || die - elisp-site-file-install "${T}/${SITEFILE}" - popd &>/dev/null || die - fi - - newinitd "${FILESDIR}"/epmd.init epmd - systemd_dounit "${FILESDIR}"/epmd.service -} - -pkg_postinst() { - use emacs && elisp-site-regen -} - -pkg_postrm() { - use emacs && elisp-site-regen -} diff --git a/dev-lang/erlang/erlang-21.0.2.ebuild b/dev-lang/erlang/erlang-21.0.2.ebuild deleted file mode 100644 index 0986f06d7fb5..000000000000 --- a/dev-lang/erlang/erlang-21.0.2.ebuild +++ /dev/null @@ -1,226 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 -WX_GTK_VER="3.0" - -inherit autotools elisp-common java-pkg-opt-2 systemd versionator wxwidgets - -# NOTE: If you need symlinks for binaries please tell maintainers or -# open up a bug to let it be created. - -UPSTREAM_V="$(get_version_component_range 1-2)" - -DESCRIPTION="Erlang programming language, runtime environment and libraries (OTP)" -HOMEPAGE="https://www.erlang.org/" -SRC_URI="https://github.com/erlang/otp/archive/OTP-${PV}.tar.gz -> ${P}.tar.gz - http://erlang.org/download/otp_doc_man_${UPSTREAM_V}.tar.gz -> ${PN}_doc_man_${UPSTREAM_V}.tar.gz - doc? ( http://erlang.org/download/otp_doc_html_${UPSTREAM_V}.tar.gz -> ${PN}_doc_html_${UPSTREAM_V}.tar.gz )" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris" - -IUSE="dirty-schedulers doc emacs hipe java kpoll libressl odbc smp sctp ssl systemd tk wxwidgets" -REQUIRED_USE="dirty-schedulers? ( smp )" #621610 - -RDEPEND=" - ssl? ( - !libressl? ( >=dev-libs/openssl-0.9.7d:0= ) - libressl? ( dev-libs/libressl:0= ) - ) - emacs? ( virtual/emacs ) - java? ( >=virtual/jdk-1.2:* ) - odbc? ( dev-db/unixODBC ) - systemd? ( sys-apps/systemd ) -" -DEPEND="${RDEPEND} - dev-lang/perl - sctp? ( net-misc/lksctp-tools ) - sys-libs/zlib - tk? ( dev-lang/tk ) - wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[X,opengl] virtual/glu ) -" - -S="${WORKDIR}/otp-OTP-${PV}" - -PATCHES=( - "${FILESDIR}/18.2.1-wx3.0.patch" - "${FILESDIR}/${PN}-20.3.2-dont-ignore-LDFLAGS.patch" - "${FILESDIR}/${PN}-add-epmd-pid-file-creation-for-openrc.patch" - ) - -SITEFILE=50"${PN}"-gentoo.el - -# Taken from the upstream build script, build_otp -erlang_create_lib_configure_in() { - local bootstrap_apps="erts lib/asn1 lib/compiler lib/hipelib/ic lib/kernel - lib/parsetools lib/sasl lib/snmp lib/stdlib lib/syntax_tools" - local sdirs= - for lib_app in ${bootstrap_apps}; do - case "${lib_app}" in - lib/*) - if [[ -f "${lib_app}/configure.in" ]]; then - mv "${lib_app}/configure.in" "${lib_app}/configure.ac" || die - app=`echo "${lib_app}" | sed "s|lib/\(.*\)|\1|"` - sdirs="${sdirs}test ! -f ${app}/configure || AC_CONFIG_SUBDIRS(${app}/.)\n" || die - fi;; - *) - ;; - esac - done - - local sed_bootstrap="s%@BOOTSTRAP_CONFIGURE_APPS@%$sdirs%g" - - sdirs= - for lib_app in lib/*; do - local is_bapp=false - for bapp in ${bootstrap_apps}; do - test "${bapp} != ${lib_app}" || { "${is_bapp}"=true; break; } - done - if [[ "${is_bapp}" = false ]] && [[ -f "${lib_app}/configure.in" ]]; then - mv "${lib_app}/configure.in" "${lib_app}/configure.ac" || die - app=`echo "${lib_app}" | sed "s|lib/\(.*\)|\1|"` || die - sdirs="${sdirs} test ! -f ${app}/configure || AC_CONFIG_SUBDIRS(${app}/.)\n" - fi - done - - local sed_non_bootstrap="s%@NON_BOOTSTRAP_CONFIGURE_APPS@%$sdirs%g" - - rm -f lib/configure.in || die - sed "$sed_bootstrap;$sed_non_bootstrap" > lib/configure.ac < lib/configure.in.src || die "Failed to create lib/configure.ac" - -} - -# Taken from the upstream build script, build_otp -erlang_distribute_config_helpers() { - local aclocal_dirs=". ./lib/erl_interface ./lib/odbc ./lib/wx ./lib/megaco" - local autoconf_aux_dirs="./lib/common_test/priv/auxdir ./lib/erl_interface/src/auxdir ./lib/common_test/test_server ./lib/wx/autoconf" - - local aclocal_master="./erts/aclocal.m4" - local install_sh_master="./erts/autoconf/install-sh" - local config_guess_master="./erts/autoconf/config.guess" - local config_sub_master="./erts/autoconf/config.sub" - - for dir in ${aclocal_dirs}; do - "${install_sh_master}" -m 644 -t "${dir}" "${aclocal_master}" || die - done - - for dir in ${autoconf_aux_dirs}; do - "${install_sh_master}" -d "${dir}" || die - "${install_sh_master}" -t "${dir}" "${install_sh_master}" || die - "${install_sh_master}" -t "${dir}" "${config_guess_master}" || die - "${install_sh_master}" -t "${dir}" "${config_sub_master}" || die - done -} - -src_prepare() { - default - - # Determines which directories to recurse into with autoconf - erlang_create_lib_configure_in - - # Move local autoconf files into the neccessary directories - erlang_distribute_config_helpers - - java-pkg-opt-2_src_prepare - - eautoreconf -} - -src_configure() { - use wxwidgets && need-wxwidgets unicode - - econf \ - --disable-builtin-zlib \ - $(use_enable dirty-schedulers) \ - $(use_enable hipe) \ - $(use_enable kpoll kernel-poll) \ - $(use_with java javac) \ - $(use_with odbc) \ - $(use_enable sctp) \ - $(use_enable smp smp-support) \ - $(use_with ssl) \ - $(use_with ssl ssl-rpath "no") \ - $(use_enable ssl dynamic-ssl-lib) \ - $(use_enable systemd) \ - --enable-threads -} - -src_compile() { - emake - - if use emacs ; then - pushd lib/tools/emacs &>/dev/null || die - elisp-compile *.el - popd &>/dev/null || die - fi -} - -extract_version() { - sed -n -e "/^$2 = \(.*\)$/s::\1:p" "${S}/$1/vsn.mk" -} - -src_install() { - local ERL_LIBDIR="/usr/$(get_libdir)/erlang" - local ERL_INTERFACE_VER="$(extract_version lib/erl_interface EI_VSN)" - local ERL_ERTS_VER="$(extract_version erts VSN)" - local MY_MANPATH="/usr/share/${PN}/man" - - [[ -z "${ERL_ERTS_VER}" ]] && die "Couldn't determine erts version" - [[ -z "${ERL_INTERFACE_VER}" ]] && die "Couldn't determine interface version" - - emake INSTALL_PREFIX="${ED}" install - - if use doc ; then - local DOCS=( "AUTHORS" "HOWTO"/* "README.md" "CONTRIBUTING.md" "${WORKDIR}"/doc/. "${WORKDIR}"/lib/. "${WORKDIR}"/erts-* ) - docompress -x /usr/share/doc/${PF} - fi - - einstalldocs - - dosym "${ERL_LIBDIR}/bin/erl" /usr/bin/erl - dosym "${ERL_LIBDIR}/bin/erlc" /usr/bin/erlc - dosym "${ERL_LIBDIR}/bin/escript" /usr/bin/escript - dosym \ - "${ERL_LIBDIR}/lib/erl_interface-${ERL_INTERFACE_VER}/bin/erl_call" \ - /usr/bin/erl_call - - if use smp; then - dosym "${ERL_LIBDIR}/erts-${ERL_ERTS_VER}/bin/beam.smp" /usr/bin/beam.smp - else - dosym "${ERL_LIBDIR}/erts-${ERL_ERTS_VER}/bin/beam" /usr/bin/beam - fi - - ## Clean up the no longer needed files - rm "${ED}/${ERL_LIBDIR}/Install" || die - - insinto "${MY_MANPATH}" - - doins -r "${WORKDIR}"/man/* - - # extend MANPATH, so the normal man command can find it - # see bug 189639 - echo "MANPATH=\"${MY_MANPATH}\"" > "${T}/90erlang" || die - doenvd "${T}/90erlang" - - if use emacs ; then - pushd "${S}" &>/dev/null || die - elisp-install erlang lib/tools/emacs/*.{el,elc} - sed -e "s:/usr/share:${EPREFIX}/usr/share:g" \ - "${FILESDIR}/${SITEFILE}" > "${T}/${SITEFILE}" || die - elisp-site-file-install "${T}/${SITEFILE}" - popd &>/dev/null || die - fi - - newinitd "${FILESDIR}"/epmd.init epmd - systemd_dounit "${FILESDIR}"/epmd.service -} - -pkg_postinst() { - use emacs && elisp-site-regen -} - -pkg_postrm() { - use emacs && elisp-site-regen -} diff --git a/dev-lang/erlang/files/erlang-20.2-libressl-2.6.1.patch b/dev-lang/erlang/files/erlang-20.2-libressl-2.6.1.patch deleted file mode 100644 index 89f8fc8b323d..000000000000 --- a/dev-lang/erlang/files/erlang-20.2-libressl-2.6.1.patch +++ /dev/null @@ -1,111 +0,0 @@ -From b5b6c7695c5377b5aa474d8620df7c3e9a1ba629 Mon Sep 17 00:00:00 2001 -From: Hans Nilsson <hans@erlang.org> -Date: Thu, 11 Jan 2018 15:29:23 +0100 -Subject: [PATCH] crypto: Disable RSA sslv23 padding for LibreSSL >= 2.6.1 - -Not supported in newer LibreSSL. ---- - lib/crypto/c_src/crypto.c | 26 +++++++++++++++++++++++--- - 1 file changed, 23 insertions(+), 3 deletions(-) - -diff --git a/lib/crypto/c_src/crypto.c b/lib/crypto/c_src/crypto.c -index 6957d25774..9a3ea07c97 100644 ---- a/lib/crypto/c_src/crypto.c -+++ b/lib/crypto/c_src/crypto.c -@@ -179,6 +179,12 @@ - # define HAVE_ECB_IVEC_BUG - #endif - -+#define HAVE_RSA_SSLV23_PADDING -+#if defined(HAS_LIBRESSL) \ -+ && LIBRESSL_VERSION_NUMBER >= PACKED_OPENSSL_VERSION_PLAIN(2,6,1) -+# undef HAVE_RSA_SSLV23_PADDING -+#endif -+ - #if defined(HAVE_CMAC) - #include <openssl/cmac.h> - #endif -@@ -659,7 +665,9 @@ static ERL_NIF_TERM atom_rsa_oaep_md; - static ERL_NIF_TERM atom_rsa_pad; /* backwards compatibility */ - static ERL_NIF_TERM atom_rsa_padding; - static ERL_NIF_TERM atom_rsa_pkcs1_pss_padding; -+#ifdef HAVE_RSA_SSLV23_PADDING - static ERL_NIF_TERM atom_rsa_sslv23_padding; -+#endif - static ERL_NIF_TERM atom_rsa_x931_padding; - static ERL_NIF_TERM atom_rsa_pss_saltlen; - static ERL_NIF_TERM atom_sha224; -@@ -1064,7 +1072,9 @@ static int initialize(ErlNifEnv* env, ERL_NIF_TERM load_info) - atom_rsa_pad = enif_make_atom(env,"rsa_pad"); /* backwards compatibility */ - atom_rsa_padding = enif_make_atom(env,"rsa_padding"); - atom_rsa_pkcs1_pss_padding = enif_make_atom(env,"rsa_pkcs1_pss_padding"); -+#ifdef HAVE_RSA_SSLV23_PADDING - atom_rsa_sslv23_padding = enif_make_atom(env,"rsa_sslv23_padding"); -+#endif - atom_rsa_x931_padding = enif_make_atom(env,"rsa_x931_padding"); - atom_rsa_pss_saltlen = enif_make_atom(env,"rsa_pss_saltlen"); - atom_sha224 = enif_make_atom(env,"sha224"); -@@ -4449,8 +4459,10 @@ static int get_pkey_crypt_options(ErlNifEnv *env, ERL_NIF_TERM algorithm, ERL_NI - opt->rsa_padding = RSA_PKCS1_PADDING; - } else if (tpl_terms[1] == atom_rsa_pkcs1_oaep_padding) { - opt->rsa_padding = RSA_PKCS1_OAEP_PADDING; -+#ifdef HAVE_RSA_SSLV23_PADDING - } else if (tpl_terms[1] == atom_rsa_sslv23_padding) { - opt->rsa_padding = RSA_SSLV23_PADDING; -+#endif - } else if (tpl_terms[1] == atom_rsa_x931_padding) { - opt->rsa_padding = RSA_X931_PADDING; - } else if (tpl_terms[1] == atom_rsa_no_padding) { -@@ -4516,7 +4528,10 @@ static ERL_NIF_TERM pkey_crypt_nif(ErlNifEnv *env, int argc, const ERL_NIF_TERM - #endif - PKeyCryptOptions crypt_opt; - ErlNifBinary in_bin, out_bin, tmp_bin; -- size_t outlen, tmplen; -+ size_t outlen; -+#ifdef HAVE_RSA_SSLV23_PADDING -+ size_t tmplen; -+#endif - int is_private = (argv[4] == atom_true), - is_encrypt = (argv[5] == atom_true); - int algo_init = 0; -@@ -4596,6 +4611,7 @@ static ERL_NIF_TERM pkey_crypt_nif(ErlNifEnv *env, int argc, const ERL_NIF_TERM - if (crypt_opt.signature_md != NULL - && EVP_PKEY_CTX_set_signature_md(ctx, crypt_opt.signature_md) <= 0) - goto badarg; -+#ifdef HAVE_RSA_SSLV23_PADDING - if (crypt_opt.rsa_padding == RSA_SSLV23_PADDING) { - if (is_encrypt) { - RSA *rsa = EVP_PKEY_get1_RSA(pkey); -@@ -4607,9 +4623,11 @@ static ERL_NIF_TERM pkey_crypt_nif(ErlNifEnv *env, int argc, const ERL_NIF_TERM - in_bin = tmp_bin; - } - if (EVP_PKEY_CTX_set_rsa_padding(ctx, RSA_NO_PADDING) <= 0) goto badarg; -- } else { -+ } else -+#endif -+ { - if (EVP_PKEY_CTX_set_rsa_padding(ctx, crypt_opt.rsa_padding) <= 0) goto badarg; -- } -+ } - #ifdef HAVE_RSA_OAEP_MD - if (crypt_opt.rsa_padding == RSA_PKCS1_OAEP_PADDING) { - if (crypt_opt.rsa_oaep_md != NULL -@@ -4728,6 +4746,7 @@ static ERL_NIF_TERM pkey_crypt_nif(ErlNifEnv *env, int argc, const ERL_NIF_TERM - #endif - - if ((i > 0) && argv[0] == atom_rsa && !is_encrypt) { -+#ifdef HAVE_RSA_SSLV23_PADDING - if (crypt_opt.rsa_padding == RSA_SSLV23_PADDING) { - RSA *rsa = EVP_PKEY_get1_RSA(pkey); - unsigned char *p; -@@ -4745,6 +4764,7 @@ static ERL_NIF_TERM pkey_crypt_nif(ErlNifEnv *env, int argc, const ERL_NIF_TERM - i = 1; - } - } -+#endif - } - - if (tmp_bin.data != NULL) { --- -2.16.0 - |