diff options
Diffstat (limited to 'dev-lang')
37 files changed, 1015 insertions, 1619 deletions
diff --git a/dev-lang/Manifest.gz b/dev-lang/Manifest.gz Binary files differindex c10ca42e47af..b681ab1bf021 100644 --- a/dev-lang/Manifest.gz +++ b/dev-lang/Manifest.gz diff --git a/dev-lang/crystal/Manifest b/dev-lang/crystal/Manifest index 259650145e82..0dfd640d2282 100644 --- a/dev-lang/crystal/Manifest +++ b/dev-lang/crystal/Manifest @@ -30,10 +30,12 @@ DIST crystal-0.27.0-1-linux-i686.tar.gz 39751745 BLAKE2B 22adf22a2e423f4b0fddda1 DIST crystal-0.27.0-1-linux-x86_64.tar.gz 37933811 BLAKE2B 76bb57b556f14ae8ce219ef490e58ff03571f36fcb4343672ff10ddd6e275e9c5c26a028d63f0592c1a081f2f5dc8241106d8a99add1a7936f52b9e3a57f96e6 SHA512 c403c4080830b928621da07f409ba5433109ee0fc81589f87e79d2e04fcbce8facfa205b7e8c78ab9bb772b4444c938b3bcf691596ee0b2d54c3f3d97150e008 DIST crystal-0.27.0.tar.gz 2025777 BLAKE2B 0a5cc02a516586b033c65efd8e28a13ac0ed67fddbd1a1f0a88a484dff825bec8f6b03b16938c750e99e0c7c1c12a3fd3fc87e61d038b25b7707e0e7f2913fae SHA512 02b0e1d43d699d1dd91f4b979c8ab8909264e5f1fcc344f6110bebb808c0ee764a943368cce9d33a258adb9631ed4f445e1f771d5a9e50fcd337fc8b319616cf DIST crystal-0.27.1.tar.gz 2061304 BLAKE2B 1776525925a25f72cf83f1a6076ab8b2bf1602c9d8c6a1fff8869c200faa35de008655f046ff60fb3733c8c3577f3544184080ee39acedfde006b9fd63d6c844 SHA512 8c6dd9489aff5d4b3e119ef6f531a3248c20f3da97c44dd3febe551adc67f5d87aa4f7679cbcc0dcde0374f3f5a3c523da6dff32a7ac95a9db1406102e980822 +DIST crystal-0.27.2.tar.gz 2061466 BLAKE2B 49f4d2c33412589e7ea131460508a8716d10285d6e248d4e6f9287acc559a864737af2317f2a50332b68704d9d0bf6d3e4d13ad5e5a66e433dbbdd1bc8e523bc SHA512 dcb5948f373d4a7b17e6bdd45697a43e86ec7eb38bdafaade982df9adacbc5a24f2b08f327e41b853bb8f6ec8272411d14defee4e510c430c5dd1370afca42ae EBUILD crystal-0.24.2.ebuild 2374 BLAKE2B 62f5e228fc38ad340d2e77ee1817410a5ef418405a09ba42c52f6067e5d303cb6836694ecb5b2d59b2cc00022ead788109a98ac6a124356d72783f926526c2fc SHA512 5812f5e4174c3320601684f3ac2ef235eb4aca4dee5632fc243839e8c61fa1c738086db17f840b68300887244ea6232d5d990725c1d85021d1a934c8a0560e92 EBUILD crystal-0.25.0.ebuild 2369 BLAKE2B 2146aba6dedff0c3fcbcd8d018c8c15906eb7050e9cea358fe2c70de8f1a76242de583e798c39769e6a89832403a6c5eda8b50bfd882889c9a80a638919482e9 SHA512 48a19dd3c5bd501dbb00b44f4eb2e3d934e835bac4361f2f1dab9aab2812aa40a8e19b6838db006ee4735cdf09d720206120b730fcd7af79e1745866a7422ff7 EBUILD crystal-0.26.0.ebuild 2437 BLAKE2B a2ef50459ec827303b1ffcda38110b096e42252f85364b0199bcf2d9f64747b51ad72a35ff54d1ad48ac442a912a5db34f825dbae3e96db1f38f6b14d19dd281 SHA512 ac9c8d35211d41be615cf7a9c46181b4b83334d2da975cd621ee0480665c8130d18299d3d62f45bf60b95c35a02c6c0e1aff51a14e1967a7d9228c2107c987b8 EBUILD crystal-0.26.1.ebuild 2696 BLAKE2B 820ed8d2957bd9b9863115318d3041f3428adfe60295d8fef170cb636a5135492c7abf9ff98fe67a537f3d4289040d61a892fe9074ded3ad1bc306f74327f568 SHA512 1a7f2c3bd31ecc7ea09943dad6b6a506a659dace59382075ab4ea628cf96550e71b4f659f47e7c55da86b9c454ef47a67b3cef1f3f85d23fcc120c6534ae7115 EBUILD crystal-0.27.0.ebuild 3125 BLAKE2B ec1bcc46d303723566f9c90d8532483b1de2113ba7d105f7d6b8d413f23261feb61b6a46dc0a6bb461d4d436f8175f6f2576fb97a2d154852a434819f66164c3 SHA512 1e7a4ed435535b1479f7bf972258159a264275e43c300b2864ef96601bebd9a5772f26f70e1c04fac13766cc984786030e8d7cafbca313972484c3f132e2f2c8 EBUILD crystal-0.27.1.ebuild 3062 BLAKE2B da693c76e1948477b0b1c630017c263363c2269b833e525c6d35a3722600ad282c4a0bf198fc3e36827a19d1b9ce67bc1273f2a9d1495ff09111d69eaef988ec SHA512 7cdab42df495f2944a79384744f99da21c9f6fb6c7acb154cc1e34065db8fa7dff7dc0364e859f09601a62c95ebcdc6885a0920e4214b6b43f062809e066c674 +EBUILD crystal-0.27.2.ebuild 3062 BLAKE2B da693c76e1948477b0b1c630017c263363c2269b833e525c6d35a3722600ad282c4a0bf198fc3e36827a19d1b9ce67bc1273f2a9d1495ff09111d69eaef988ec SHA512 7cdab42df495f2944a79384744f99da21c9f6fb6c7acb154cc1e34065db8fa7dff7dc0364e859f09601a62c95ebcdc6885a0920e4214b6b43f062809e066c674 MISC metadata.xml 995 BLAKE2B 00f6cfc63cec16ab8c6f983316f5872e63573f2d680da810b9b97d88c2ff6e21c15327a1508d62234e324f7145ca248a9ce1aa7286b0e34d9ee3dcba1481ff25 SHA512 da6a6f834b0d961477b95045756c539df7a968fe240f9f0c1c8183eef3052dddefb8d20547d668b07fece74c96b94bbf18baaac59e7328ff322355227d1adf02 diff --git a/dev-lang/crystal/crystal-0.27.2.ebuild b/dev-lang/crystal/crystal-0.27.2.ebuild new file mode 100644 index 000000000000..d1888dfde89e --- /dev/null +++ b/dev-lang/crystal/crystal-0.27.2.ebuild @@ -0,0 +1,121 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit bash-completion-r1 llvm multiprocessing toolchain-funcs + +BV=0.27.0-1 +BV_AMD64=${BV}-linux-x86_64 +BV_X86=${BV}-linux-i686 + +DESCRIPTION="The Crystal Programming Language" +HOMEPAGE="https://crystal-lang.org" +SRC_URI="https://github.com/crystal-lang/crystal/archive/${PV}.tar.gz -> ${P}.tar.gz + amd64? ( https://github.com/crystal-lang/crystal/releases/download/${BV/-*}/crystal-${BV_AMD64}.tar.gz ) + x86? ( https://github.com/crystal-lang/crystal/releases/download/${BV/-*}/crystal-${BV_X86}.tar.gz )" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64" +IUSE="doc debug examples blocking-stdio-hack +xml +yaml" + +# Not compatible with llvm-7 +LLVM_MAX_SLOT=6 + +# dev-libs/boehm-gc[static-libs] dependency problem, check the issue: https://github.com/manastech/crystal/issues/1382 +DEPEND=" + sys-devel/llvm:${LLVM_MAX_SLOT} + dev-libs/boehm-gc[static-libs,threads] + dev-libs/libatomic_ops + dev-libs/libevent + dev-libs/libpcre + sys-libs/libunwind + dev-libs/pcl + dev-libs/gmp:0 +" +RDEPEND="${DEPEND} + xml? ( dev-libs/libxml2 ) + yaml? ( dev-libs/libyaml ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-0.27.1-verbose.patch + "${FILESDIR}"/${PN}-0.26.1-gentoo-tests-sandbox.patch + "${FILESDIR}"/${PN}-0.26.1-gentoo-tests-network-sandbox-3.patch + "${FILESDIR}"/${PN}-0.27.0-extra-spec-flags.patch + "${FILESDIR}"/${PN}-0.27.0-max-age-0-test.patch + "${FILESDIR}"/${PN}-0.27.0-gentoo-tests-long-unix.patch + "${FILESDIR}"/${PN}-0.27.0-gentoo-tests-long-unix-2.patch + "${FILESDIR}"/${PN}-0.27.0-tcp-server-test.patch +) + +src_prepare() { + default + + use blocking-stdio-hack && eapply "${FILESDIR}"/"${PN}"-0.22.0-blocking-stdio-hack.patch +} + +src_compile() { + local bootstrap_path=${WORKDIR}/${PN}-${BV}/bin + if [[ ! -d ${bootstrap_path} ]]; then + eerror "Binary tarball does not contain expected directory:" + die "'${bootstrap_path}' path does not exist." + fi + + emake \ + $(usex debug "" release=1) \ + progress=true \ + stats=1 \ + threads=$(makeopts_jobs) \ + verbose=1 \ + \ + CC=$(tc-getCC) \ + CXX=$(tc-getCXX) \ + AR=$(tc-getAR) \ + \ + PATH="${bootstrap_path}:${PATH}" \ + CRYSTAL_PATH=src \ + CRYSTAL_CONFIG_VERSION=${PV} \ + CRYSTAL_CONFIG_PATH="lib:${EPREFIX}/usr/$(get_libdir)/crystal" + use doc && emake docs +} + +src_test() { + # EXTRA_SPEC_FLAGS is useful to debug individual tests + # as part of full build: + # USE=debug EXTRA_SPEC_FLAGS='-e parse_set_cookie' emerge -1 crystal + emake spec \ + $(usex debug "" release=1) \ + progress=true \ + stats=1 \ + threads=$(makeopts_jobs) \ + verbose=1 \ + \ + CC=$(tc-getCC) \ + CXX=$(tc-getCXX) \ + AR=$(tc-getAR) \ + \ + CRYSTAL_PATH=src \ + CRYSTAL_CONFIG_VERSION=${PV} \ + \ + "EXTRA_SPEC_FLAGS=${EXTRA_SPEC_FLAGS}" +} + +src_install() { + insinto /usr/$(get_libdir)/crystal + doins -r src/. + dobin .build/crystal + + insinto /usr/share/zsh/site-functions + newins etc/completion.zsh _crystal + + use examples && dodoc -r samples + + if use doc ; then + docinto api + dodoc -r docs/. + fi + + newbashcomp etc/completion.bash ${PN} +} diff --git a/dev-lang/erlang/Manifest b/dev-lang/erlang/Manifest index b257134fcab0..d24eb1af2092 100644 --- a/dev-lang/erlang/Manifest +++ b/dev-lang/erlang/Manifest @@ -12,17 +12,13 @@ DIST erlang_doc_html_21.1.tar.gz 32692731 BLAKE2B a7fa8ebe1c876ab7eecd2dd46ffd4d DIST erlang_doc_man_20.3.tar.gz 1339710 BLAKE2B 00aba848940914b3d98f9500b8201b0679d7d63d066cee296c8fbb399f132340b989f3cdcdd6c45a46e432efdb7c40c39d8ab4f3dbd64570316d649efc9faed1 SHA512 22c398ce3b42c7ef8abec1db85745eeb4d8804bc679d40b6a786fdc40dc241e43b5551df5d1eccb3ca8d4a64b833bf6663e77044f4564bb49cf67c4b74c5ea25 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.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.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.3.tar.gz 88170904 BLAKE2B 3f92641e4eb4079572c0cc1cbc6ba1f56977efd182efcef6c466a0ac6232e18d9481823624cdd49a866feb38e96db6150f40927f25f2daaa64fe4aafd02089b4 SHA512 4169e2e653055c62dd66e214dcab577b49cadb8328dcc43adb8a2d44850b12c02db8323992c21852409697c5a48493068316417be9d97519b039a8f1cde143da EBUILD erlang-19.1.ebuild 4479 BLAKE2B 671c00139feb254a2d053abd6006504aac816ad56b68291653f663d482138c4b8672b0893ef4e7d37f1610a581aa07695a722fcefa4c233523ab459b9adb292d SHA512 61ed8db5368a33c031588f896ea7f62cd770567dd61e8dbbb1793e4020cc540877e2823291a90227a9bc55811f7057448e49becdba792c600bd5d6168dd3af18 -EBUILD erlang-19.3.ebuild 4532 BLAKE2B 8b90954a7cada84ee1eddb41566fd50bf5eb50d154bfc2e13ebcfa1ea33aa2d8334da80554ce5862ba3b3ba6b77ddbd933e6322829bf96985caaeaf556704c09 SHA512 f204b98e05485feff3e66be512d93336a147dfc3e5af1795d5afe3c63a722fcf5f7578c25f097074535b31e4ea5b339848cb2d633f46ae00af0be4b1d1ee30f7 EBUILD erlang-20.3.8.10.ebuild 6713 BLAKE2B 99d8e6c2e71fc01c815cafb7cdb2b6aa730f3ff07d174d82ee1ab44bfad140395fa6c5e0eb121d32ccd6c98f6bd37a5b384dd3cc02215fc96f229d3bf220f8f0 SHA512 e718298bb175bf3c7fc2828a603d504b474294258b46c6941a20a367e77b460e3f396d425b805c69a310aa428ce3477e8af38c40ea1abbc026c4e5488f8c1a44 EBUILD erlang-20.3.ebuild 4826 BLAKE2B 80ccf3e15c5cb5fc585c4b014b8093ce2306222d6b32c9653aab92e3bdcba2d66e9cfc18b6132ec0a1907495acb13cfa1e5e0f8baa3d12b0a5a8975ea0989e16 SHA512 41682162335ded8341591393fff4bd35aac71e49418a36da6e3c4b41066a39cf0c711ab5a73a61811ee82fb365db15fbb4cbd466dc985a58262303694c2f4cb5 -EBUILD erlang-21.1.1.ebuild 4448 BLAKE2B 7ef3e149f4564939a86ad407326ffdb4df53abe4b50ab916e598ec18f4090a800347b544d7845835b674ffc06c6f7bf3200cb71c71cab405a6a3e2743a6ebc1e SHA512 ffe1f1daeb279907c96c5711fbe81df26a8c21311c94a1d686b39122fe3c217e2c7e646471c3a3c3e7c0a689213f1732cf1c484be24e46ecdb496acbbd979c6e +EBUILD erlang-21.1.1.ebuild 4448 BLAKE2B f56ebbc9daacbc881f8fc0ac3e262c2a16033b6ee859c0fb7ab587b1a87bd5824bc6538ec4ece61f6c2fe8efea411df0c4443353720c918719f347def9065031 SHA512 a61d9294b5ee3d71f4766c85d96bf52efb304f65988cc49a1d62c6f32ec96eaa57dc98d19201b32dfb3f22cd60ef43db0b69130b8ae11a8886821c33753eefd7 MISC metadata.xml 767 BLAKE2B 7b4e24e035cc581418aa0509baad9913b3abb195414f2e91136510a5910b69a186853b352557f1e49280aae7871cc2e033b6e2ea6f22b3b73c88d78853937309 SHA512 c816f414d07fac9433a22bdfb083db600200f45cc0fcc0eb06389056df4ccdfa31767ff0a25b8f7caf1b17dffc303ff3f766a642cfd263c0c723623c31c5a716 diff --git a/dev-lang/erlang/erlang-19.3.ebuild b/dev-lang/erlang/erlang-19.3.ebuild deleted file mode 100644 index 11a906c9f8eb..000000000000 --- a/dev-lang/erlang/erlang-19.3.ebuild +++ /dev/null @@ -1,157 +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 - - 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-21.1.1.ebuild b/dev-lang/erlang/erlang-21.1.1.ebuild index 28d0e2dc1553..102cc517a846 100644 --- a/dev-lang/erlang/erlang-21.1.1.ebuild +++ b/dev-lang/erlang/erlang-21.1.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2018 Gentoo Authors +# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=6 @@ -19,7 +19,7 @@ SRC_URI="https://github.com/erlang/otp/archive/OTP-${PV}.tar.gz -> ${P}.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" +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="doc emacs +hipe java +kpoll libressl odbc pgo sctp ssl systemd tk +wxwidgets" RDEPEND=" @@ -71,7 +71,7 @@ src_configure() { $(use_with odbc) $(use_enable sctp) $(use_with ssl) - $(use_with ssl ssl-rpath "no") + $(usex ssl "--with-ssl-rpath" "") $(use_enable ssl dynamic-ssl-lib) $(use_enable systemd) $(use_enable pgo) diff --git a/dev-lang/go/Manifest b/dev-lang/go/Manifest index 029dc6e08dfe..61e97ff24264 100644 --- a/dev-lang/go/Manifest +++ b/dev-lang/go/Manifest @@ -9,13 +9,9 @@ DIST go-linux-ppc64-bootstrap-1.8.tbz 52315782 BLAKE2B 6be0a48e8bc4e5fed4d34f8aa DIST go-linux-ppc64le-bootstrap-1.8.tbz 52211575 BLAKE2B 7a28ec5a381369c4e9415c8360e904c2545380513afd328077c584e8af0bf6bd818aa03e5a58c350cbb98facc1c9dccb02b06adcb27233875497cf5d33265912 SHA512 6931d999dd0ee1ff44c4cec48acb27af061f57f87aa74802dcebab78553b46bc8ac732f07fe91e5074dbdd32c55b707994875934bfb12bb4276d71eb1d06c4ba DIST go-linux-s390x-bootstrap-1.8.tbz 57124869 BLAKE2B 920a176b8f4fc3a816e724324bbb30a383d599e31a0d2093d24797dbcd0e799a662a3589dbb87d2f5dd16df07c4cf8f1e444e87b540ec732746bb025dc9271f8 SHA512 d429cae870d66217ab2e07c74209d3031d97baa4f899b4d70ae6283a1a5b1434b037904c4cfca0b2bc798d5ba0b358c3739e000eccbc74809baf564c5686df5a DIST go-solaris-amd64-bootstrap-1.8.tbz 54926326 BLAKE2B 0a45312f090d81ebf46fe5950cb65c059e2801394231e715e94145d1f918eb59b10472b2385e57ebd5cfb9eca0ad7290fb118436486b665520bb540970f971ab SHA512 52b849e5b9a940e10de7ba3df0ebdf6e1c5d631de9581d936c9edf8f38e6bb3314acbc2b2d5202b0528fde2a359d52bc0c6f39acf9b1b614725e4b4a947ed10d -DIST go1.10.7.src.tar.gz 18333472 BLAKE2B 8e1d85ced41541f1c7a02208da6ff518d7af76e078c47b2b269b31868fad8578b70494aad0ab35a33b1273d2f55523ee5e97e688991a62bf2289821c1c669c1f SHA512 798e0ea053b38f4b4f5a6fbdefb30ad09d95b7e8af424bd5f1aa7856bf7ca4e9c9bbd32926e2936f2b332f88a1980e92e6b61862fd9e779edf64f965fd8d1ffe DIST go1.10.8.src.tar.gz 18333813 BLAKE2B 69fd0e7c3e265162e48b2ed90c8f560071322a093e09ca926d3cb94f4f9b44548652066d0c2f44696f0da5e7342f3afa894b71116f9451a0b2438eb0e0df42df SHA512 c274b99e39b78dfdf6b6b1c4fd6a5a54bff1b3eba55a879413692586ac7f0d30772416dcb5f715213c650946ade649bd424981f77508d92510c717d1845e3ede -DIST go1.11.4.src.tar.gz 21108067 BLAKE2B 3e9e433d9f85cadcf4c62bbc7a27d80944d4dbe4f4e43bdeddc407a7957a51b28082d5b90d4e27f06cc554792bb9eb7ccbf221003f012c91cd1f329af998ae4e SHA512 9aa2e1800807841ec0432289b672c1607bdcb295f29c02d38adfaf1e3bf043040c9f916e4cb170875d92fe168c5ba6baef2b3d1f824a56ff9138ca2cdcc646e0 DIST go1.11.5.src.tar.gz 21108339 BLAKE2B 3a33a89e267e57fee688e4d67257810ca1f37cfb904b6806c3a566b021aa80153f59f64d3a61ed68f526f093e0d5b6b3c95565cd06622cf9a65eef81bc7e9733 SHA512 63500238e8d73e4b29279ee3eb9242960de93ccd3b52bacc4009f45cf123cb8edfe5f519d38c5b07bdf2a810925758511ff3255310a056113d0169f78be1d2f6 -EBUILD go-1.10.7.ebuild 5663 BLAKE2B a154eee5fa9b7842a6e61c9fdae55f93445cb96309dacad390abe55321584d9eb66a55990263906939cec6f41f4c9209c277255a860ba489a7340a4c9b9d07d7 SHA512 56a839b6077d61ddc8ca64c6ba0629e7bccd9f74388ac8be52424f54d8177ce0c50f2c197b86fee5b6d6b902b6afe33bc3e625cb39dbea3357e19498fa2ca637 -EBUILD go-1.10.8.ebuild 5664 BLAKE2B 5a27ec5a803d75d01647e8cd2500ee07d2d756c0912514dab156f21f9f57068796afb0b8036b964845a4117acedcc72c90285c347e28ed1ea5490323e7d9c747 SHA512 9cf773db765bd715ea9ae303fe3dea6e53e5852382f16c57a6e293dd4e68526e5ad98351291293a17ae3f294fb420eb1c76c4df35c548aa5c29b79830534e014 -EBUILD go-1.11.4.ebuild 6007 BLAKE2B f5ca906e6dab818933f0c22086543b4fef28a35da4291c19b358ac65e2d4418bb0aa52928da34701d3f1e5214bb1e86e02d1aa9bf8ede3e9380c61236a78aa3a SHA512 420d2bfafbeeb7512c55f2f9cbef88fd233b5ce9968b106fff9e8ba7963d345909aa07c0f7b8a81bbf5695ead63596f80bad2d93dd53a722431a2718b79bd07e -EBUILD go-1.11.5.ebuild 6008 BLAKE2B cdba654d47b88870ab716e74cb07f9b6fc38505ddbc92ac5a8808efa00560912fab51bf69953860a6028a9394d67fb831671c94cdfea658f46960d7e1b0360a6 SHA512 ae260d09ce7f404f71d110dc9278d2ac9b9f138b47543d5a83633825e0ca1e695d516ebaa7956a8cba9ada104c6d6b52eec8cbfec9764848779e502fa2c560c0 +EBUILD go-1.10.8.ebuild 5663 BLAKE2B a154eee5fa9b7842a6e61c9fdae55f93445cb96309dacad390abe55321584d9eb66a55990263906939cec6f41f4c9209c277255a860ba489a7340a4c9b9d07d7 SHA512 56a839b6077d61ddc8ca64c6ba0629e7bccd9f74388ac8be52424f54d8177ce0c50f2c197b86fee5b6d6b902b6afe33bc3e625cb39dbea3357e19498fa2ca637 +EBUILD go-1.11.5.ebuild 6007 BLAKE2B f5ca906e6dab818933f0c22086543b4fef28a35da4291c19b358ac65e2d4418bb0aa52928da34701d3f1e5214bb1e86e02d1aa9bf8ede3e9380c61236a78aa3a SHA512 420d2bfafbeeb7512c55f2f9cbef88fd233b5ce9968b106fff9e8ba7963d345909aa07c0f7b8a81bbf5695ead63596f80bad2d93dd53a722431a2718b79bd07e EBUILD go-9999.ebuild 5991 BLAKE2B d5679b2d7fc97084a0b8b3c3cf07698f15a831a8a60ca98669a9eff704ec9545c318472936bc6dec83aa0c943a2db294e74f027de4a650d2514f31cba035b7e4 SHA512 3a5973f3094a4196ec3afbab69fd6453c488c84abd83d70490a5573246616b8d7605412d22946bf2f23a2c315ad988220472cef32ba2b116e79f945e86224e1a MISC metadata.xml 538 BLAKE2B 78502c369a490804b2c69eef864276c2be5d0ee84ec189b6cc8584f8f42668a35f3c74bd25ceb53c469716337cbab908c576ca880c492f5961fedafc74cc346f SHA512 514a441a522218fdca543a22370e965a2bfc1f1f2c37e77431143329bb3d3f4f53e99ad5d7f7d7c61877f77387a777f7b4f339b9a3e45322d01d39d3d0ea1309 diff --git a/dev-lang/go/go-1.10.7.ebuild b/dev-lang/go/go-1.10.7.ebuild deleted file mode 100644 index 44ca41c8b29e..000000000000 --- a/dev-lang/go/go-1.10.7.ebuild +++ /dev/null @@ -1,228 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -export CBUILD=${CBUILD:-${CHOST}} -export CTARGET=${CTARGET:-${CHOST}} - -MY_PV=${PV/_/} - -inherit toolchain-funcs - -BOOTSTRAP_DIST="https://dev.gentoo.org/~williamh/dist" -BOOTSTRAP_VERSION="bootstrap-1.8" -BOOTSTRAP_URI=" -amd64? ( ${BOOTSTRAP_DIST}/go-linux-amd64-${BOOTSTRAP_VERSION}.tbz ) -arm? ( ${BOOTSTRAP_DIST}/go-linux-arm-${BOOTSTRAP_VERSION}.tbz ) -arm64? ( ${BOOTSTRAP_DIST}/go-linux-arm64-${BOOTSTRAP_VERSION}.tbz ) -ppc64? ( - ${BOOTSTRAP_DIST}/go-linux-ppc64-${BOOTSTRAP_VERSION}.tbz - ${BOOTSTRAP_DIST}/go-linux-ppc64le-${BOOTSTRAP_VERSION}.tbz -) -s390? ( ${BOOTSTRAP_DIST}/go-linux-s390x-${BOOTSTRAP_VERSION}.tbz ) -x86? ( ${BOOTSTRAP_DIST}/go-linux-386-${BOOTSTRAP_VERSION}.tbz ) -amd64-fbsd? ( ${BOOTSTRAP_DIST}/go-freebsd-amd64-${BOOTSTRAP_VERSION}.tbz ) -x86-fbsd? ( ${BOOTSTRAP_DIST}/go-freebsd-386-${BOOTSTRAP_VERSION}.tbz ) -x64-macos? ( ${BOOTSTRAP_DIST}/go-darwin-amd64-${BOOTSTRAP_VERSION}.tbz ) -x64-solaris? ( ${BOOTSTRAP_DIST}/go-solaris-amd64-${BOOTSTRAP_VERSION}.tbz ) -" - -case ${PV} in -*9999*) - EGIT_REPO_URI="https://github.com/golang/go.git" - inherit git-r3 - ;; -*) - SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz " - S="${WORKDIR}"/go - case ${PV} in - *_beta*|*_rc*) ;; - *) - KEYWORDS="-* amd64 arm ~arm64 ~ppc64 ~s390 x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x64-macos ~x64-solaris" - # The upstream tests fail under portage but pass if the build is - # run according to their documentation [1]. - # I am restricting the tests on released versions until this is - # solved. - # [1] https://golang.org/issues/18442 - RESTRICT="test" - ;; - esac -esac -SRC_URI+="!gccgo? ( ${BOOTSTRAP_URI} )" - -DESCRIPTION="A concurrent garbage collected and typesafe programming language" -HOMEPAGE="https://golang.org" - -LICENSE="BSD" -SLOT="0/${PV}" -IUSE="gccgo" - -DEPEND="gccgo? ( >=sys-devel/gcc-5[go] )" -RDEPEND="!<dev-go/go-tools-0_pre20150902" - -# These test data objects have writable/executable stacks. -QA_EXECSTACK=" - usr/lib/go/src/debug/elf/testdata/*.obj - usr/lib/go/src/go/internal/gccgoimporter/testdata/escapeinfo.gox - usr/lib/go/src/go/internal/gccgoimporter/testdata/unicode.gox - usr/lib/go/src/go/internal/gccgoimporter/testdata/time.gox - " - -# Do not complain about CFLAGS, etc, since Go doesn't use them. -QA_FLAGS_IGNORED='.*' - -REQUIRES_EXCLUDE="/usr/lib/go/src/debug/elf/testdata/*" - -# The tools in /usr/lib/go should not cause the multilib-strict check to fail. -QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*" - -# Do not strip this package. Stripping is unsupported upstream and may -# fail. -RESTRICT+=" strip" - -DOCS=( -AUTHORS -CONTRIBUTING.md -CONTRIBUTORS -PATENTS -README.md -) - -go_arch() -{ - # By chance most portage arch names match Go - local portage_arch=$(tc-arch $@) - case "${portage_arch}" in - x86) echo 386;; - x64-*) echo amd64;; - ppc64) [[ $(tc-endian $@) = big ]] && echo ppc64 || echo ppc64le ;; - s390) echo s390x ;; - *) echo "${portage_arch}";; - esac -} - -go_arm() -{ - case "${1:-${CHOST}}" in - armv5*) echo 5;; - armv6*) echo 6;; - armv7*) echo 7;; - *) - die "unknown GOARM for ${1:-${CHOST}}" - ;; - esac -} - -go_os() -{ - case "${1:-${CHOST}}" in - *-linux*) echo linux;; - *-darwin*) echo darwin;; - *-freebsd*) echo freebsd;; - *-netbsd*) echo netbsd;; - *-openbsd*) echo openbsd;; - *-solaris*) echo solaris;; - *-cygwin*|*-interix*|*-winnt*) - echo windows - ;; - *) - die "unknown GOOS for ${1:-${CHOST}}" - ;; - esac -} - -go_tuple() -{ - echo "$(go_os $@)_$(go_arch $@)" -} - -go_cross_compile() -{ - [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]] -} - -pkg_pretend() -{ - # make.bash does not understand cross-compiling a cross-compiler - if [[ $(go_tuple) != $(go_tuple ${CTARGET}) ]]; then - die "CHOST CTARGET pair unsupported: CHOST=${CHOST} CTARGET=${CTARGET}" - fi -} - -src_unpack() -{ - if [[ ${PV} = 9999 ]]; then - git-r3_src_unpack - fi - default -} - -src_compile() -{ - export GOROOT_BOOTSTRAP="${WORKDIR}"/go-$(go_os)-$(go_arch)-bootstrap - if use gccgo; then - mkdir -p "${GOROOT_BOOTSTRAP}/bin" || die - local go_binary=$(gcc-config --get-bin-path)/go-$(gcc-major-version) - [[ -x ${go_binary} ]] || go_binary=$( - find "${EPREFIX}"/usr/${CHOST}/gcc-bin/*/go-$(gcc-major-version) | - sort -V | tail -n1) - [[ -x ${go_binary} ]] || - die "go-$(gcc-major-version): command not found" - ln -s "${go_binary}" "${GOROOT_BOOTSTRAP}/bin/go" || die - fi - export GOROOT_FINAL="${EPREFIX}"/usr/lib/go - export GOROOT="$(pwd)" - export GOBIN="${GOROOT}/bin" - - # Go's build script does not use BUILD/HOST/TARGET consistently. :( - export GOHOSTARCH=$(go_arch ${CBUILD}) - export GOHOSTOS=$(go_os ${CBUILD}) - export CC=$(tc-getBUILD_CC) - - export GOARCH=$(go_arch) - export GOOS=$(go_os) - export CC_FOR_TARGET=$(tc-getCC) - export CXX_FOR_TARGET=$(tc-getCXX) - if [[ ${ARCH} == arm ]]; then - export GOARM=$(go_arm) - fi - einfo "GOROOT_BOOTSTRAP is ${GOROOT_BOOTSTRAP}" - - cd src - ./make.bash || die "build failed" -} - -src_test() -{ - go_cross_compile && return 0 - - cd src - PATH="${GOBIN}:${PATH}" \ - ./run.bash -no-rebuild || die "tests failed" -} - -src_install() -{ - local bin_path f x - - dodir /usr/lib/go - - # There is a known issue which requires the source tree to be installed [1]. - # Once this is fixed, we can consider using the doc use flag to control - # installing the doc and src directories. - # [1] https://golang.org/issue/2775 - # - # deliberately use cp to retain permissions - cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go - if go_cross_compile; then - bin_path="bin/$(go_tuple)" - else - bin_path=bin - fi - for x in ${bin_path}/*; do - f=${x##*/} - dosym ../lib/go/${bin_path}/${f} /usr/bin/${f} - done - einstalldocs -} diff --git a/dev-lang/go/go-1.10.8.ebuild b/dev-lang/go/go-1.10.8.ebuild index be06f525efe2..44ca41c8b29e 100644 --- a/dev-lang/go/go-1.10.8.ebuild +++ b/dev-lang/go/go-1.10.8.ebuild @@ -39,7 +39,7 @@ case ${PV} in case ${PV} in *_beta*|*_rc*) ;; *) - KEYWORDS="-* amd64 ~arm ~arm64 ~ppc64 ~s390 x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x64-macos ~x64-solaris" + KEYWORDS="-* amd64 arm ~arm64 ~ppc64 ~s390 x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x64-macos ~x64-solaris" # The upstream tests fail under portage but pass if the build is # run according to their documentation [1]. # I am restricting the tests on released versions until this is diff --git a/dev-lang/go/go-1.11.4.ebuild b/dev-lang/go/go-1.11.4.ebuild deleted file mode 100644 index 414547edcf62..000000000000 --- a/dev-lang/go/go-1.11.4.ebuild +++ /dev/null @@ -1,236 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -export CBUILD=${CBUILD:-${CHOST}} -export CTARGET=${CTARGET:-${CHOST}} - -MY_PV=${PV/_/} - -inherit toolchain-funcs - -BOOTSTRAP_DIST="https://dev.gentoo.org/~williamh/dist" -BOOTSTRAP_VERSION="bootstrap-1.8" -BOOTSTRAP_URI=" -amd64? ( ${BOOTSTRAP_DIST}/go-linux-amd64-${BOOTSTRAP_VERSION}.tbz ) -arm? ( ${BOOTSTRAP_DIST}/go-linux-arm-${BOOTSTRAP_VERSION}.tbz ) -arm64? ( ${BOOTSTRAP_DIST}/go-linux-arm64-${BOOTSTRAP_VERSION}.tbz ) -ppc64? ( - ${BOOTSTRAP_DIST}/go-linux-ppc64-${BOOTSTRAP_VERSION}.tbz - ${BOOTSTRAP_DIST}/go-linux-ppc64le-${BOOTSTRAP_VERSION}.tbz -) -s390? ( ${BOOTSTRAP_DIST}/go-linux-s390x-${BOOTSTRAP_VERSION}.tbz ) -x86? ( ${BOOTSTRAP_DIST}/go-linux-386-${BOOTSTRAP_VERSION}.tbz ) -amd64-fbsd? ( ${BOOTSTRAP_DIST}/go-freebsd-amd64-${BOOTSTRAP_VERSION}.tbz ) -x86-fbsd? ( ${BOOTSTRAP_DIST}/go-freebsd-386-${BOOTSTRAP_VERSION}.tbz ) -x64-macos? ( ${BOOTSTRAP_DIST}/go-darwin-amd64-${BOOTSTRAP_VERSION}.tbz ) -x64-solaris? ( ${BOOTSTRAP_DIST}/go-solaris-amd64-${BOOTSTRAP_VERSION}.tbz ) -" - -case ${PV} in -*9999*) - EGIT_REPO_URI="https://github.com/golang/go.git" - inherit git-r3 - ;; -*) - SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz " - S="${WORKDIR}"/go - case ${PV} in - *_beta*|*_rc*) ;; - *) - KEYWORDS="-* amd64 arm ~arm64 ~ppc64 ~s390 x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x64-macos ~x64-solaris" - # The upstream tests fail under portage but pass if the build is - # run according to their documentation [1]. - # I am restricting the tests on released versions until this is - # solved. - # [1] https://golang.org/issues/18442 - RESTRICT="test" - ;; - esac -esac -SRC_URI+="!gccgo? ( ${BOOTSTRAP_URI} )" - -DESCRIPTION="A concurrent garbage collected and typesafe programming language" -HOMEPAGE="https://golang.org" - -LICENSE="BSD" -SLOT="0/${PV}" -IUSE="gccgo" - -DEPEND="gccgo? ( >=sys-devel/gcc-5[go] )" -RDEPEND="!<dev-go/go-tools-0_pre20150902" - -# These test data objects have writable/executable stacks. -QA_EXECSTACK=" - usr/lib/go/src/debug/elf/testdata/*.obj - usr/lib/go/src/go/internal/gccgoimporter/testdata/escapeinfo.gox - usr/lib/go/src/go/internal/gccgoimporter/testdata/unicode.gox - usr/lib/go/src/go/internal/gccgoimporter/testdata/time.gox - " - -# Do not complain about CFLAGS, etc, since Go doesn't use them. -QA_FLAGS_IGNORED='.*' - -REQUIRES_EXCLUDE="/usr/lib/go/src/debug/elf/testdata/*" - -# The tools in /usr/lib/go should not cause the multilib-strict check to fail. -QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*" - -# Do not strip this package. Stripping is unsupported upstream and may -# fail. -RESTRICT+=" strip" - -DOCS=( -AUTHORS -CONTRIBUTING.md -CONTRIBUTORS -PATENTS -README.md -) - -go_arch() -{ - # By chance most portage arch names match Go - local portage_arch=$(tc-arch $@) - case "${portage_arch}" in - x86) echo 386;; - x64-*) echo amd64;; - ppc64) [[ $(tc-endian $@) = big ]] && echo ppc64 || echo ppc64le ;; - s390) echo s390x ;; - *) echo "${portage_arch}";; - esac -} - -go_arm() -{ - case "${1:-${CHOST}}" in - armv5*) echo 5;; - armv6*) echo 6;; - armv7*) echo 7;; - *) - die "unknown GOARM for ${1:-${CHOST}}" - ;; - esac -} - -go_os() -{ - case "${1:-${CHOST}}" in - *-linux*) echo linux;; - *-darwin*) echo darwin;; - *-freebsd*) echo freebsd;; - *-netbsd*) echo netbsd;; - *-openbsd*) echo openbsd;; - *-solaris*) echo solaris;; - *-cygwin*|*-interix*|*-winnt*) - echo windows - ;; - *) - die "unknown GOOS for ${1:-${CHOST}}" - ;; - esac -} - -go_tuple() -{ - echo "$(go_os $@)_$(go_arch $@)" -} - -go_cross_compile() -{ - [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]] -} - -pkg_pretend() -{ - # make.bash does not understand cross-compiling a cross-compiler - if [[ $(go_tuple) != $(go_tuple ${CTARGET}) ]]; then - die "CHOST CTARGET pair unsupported: CHOST=${CHOST} CTARGET=${CTARGET}" - fi -} - -src_unpack() -{ - if [[ ${PV} = 9999 ]]; then - git-r3_src_unpack - fi - default -} - -src_compile() -{ - export GOROOT_BOOTSTRAP="${WORKDIR}"/go-$(go_os)-$(go_arch)-bootstrap - if use gccgo; then - mkdir -p "${GOROOT_BOOTSTRAP}/bin" || die - local go_binary=$(gcc-config --get-bin-path)/go-$(gcc-major-version) - [[ -x ${go_binary} ]] || go_binary=$( - find "${EPREFIX}"/usr/${CHOST}/gcc-bin/*/go-$(gcc-major-version) | - sort -V | tail -n1) - [[ -x ${go_binary} ]] || - die "go-$(gcc-major-version): command not found" - ln -s "${go_binary}" "${GOROOT_BOOTSTRAP}/bin/go" || die - fi - export GOROOT_FINAL="${EPREFIX}"/usr/lib/go - export GOROOT="$(pwd)" - export GOBIN="${GOROOT}/bin" - - # Go's build script does not use BUILD/HOST/TARGET consistently. :( - export GOHOSTARCH=$(go_arch ${CBUILD}) - export GOHOSTOS=$(go_os ${CBUILD}) - export CC=$(tc-getBUILD_CC) - - export GOARCH=$(go_arch) - export GOOS=$(go_os) - export CC_FOR_TARGET=$(tc-getCC) - export CXX_FOR_TARGET=$(tc-getCXX) - if [[ ${ARCH} == arm ]]; then - export GOARM=$(go_arm) - fi - einfo "GOROOT_BOOTSTRAP is ${GOROOT_BOOTSTRAP}" - - cd src - ./make.bash || die "build failed" -} - -src_test() -{ - go_cross_compile && return 0 - - cd src - PATH="${GOBIN}:${PATH}" \ - ./run.bash -no-rebuild || die "tests failed" -} - -src_install() -{ - local bin_path f x - - dodir /usr/lib/go - - # There is a known issue which requires the source tree to be installed [1]. - # Once this is fixed, we can consider using the doc use flag to control - # installing the doc and src directories. - # [1] https://golang.org/issue/2775 - # - # deliberately use cp to retain permissions - cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go - if go_cross_compile; then - bin_path="bin/$(go_tuple)" - else - bin_path=bin - fi - for x in ${bin_path}/*; do - f=${x##*/} - dosym ../lib/go/${bin_path}/${f} /usr/bin/${f} - done - einstalldocs - - if [[ ${CHOST} == *-darwin* ]] ; then - # fix install_name for test object (binutils_test) on Darwin, it - # is never used in real circumstances - local libmac64="${EPREFIX}"/usr/lib/go/src/cmd/vendor/github.com/ - libmac64+=google/pprof/internal/binutils/testdata/lib_mac_64 - install_name_tool -id "${libmac64}" "${D}${libmac64}" - fi -} diff --git a/dev-lang/go/go-1.11.5.ebuild b/dev-lang/go/go-1.11.5.ebuild index c81f0f8dcabc..414547edcf62 100644 --- a/dev-lang/go/go-1.11.5.ebuild +++ b/dev-lang/go/go-1.11.5.ebuild @@ -39,7 +39,7 @@ case ${PV} in case ${PV} in *_beta*|*_rc*) ;; *) - KEYWORDS="-* amd64 ~arm ~arm64 ~ppc64 ~s390 x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x64-macos ~x64-solaris" + KEYWORDS="-* amd64 arm ~arm64 ~ppc64 ~s390 x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x64-macos ~x64-solaris" # The upstream tests fail under portage but pass if the build is # run according to their documentation [1]. # I am restricting the tests on released versions until this is diff --git a/dev-lang/mono/Manifest b/dev-lang/mono/Manifest index cfd6ea72cc5f..b7507ab7b9f4 100644 --- a/dev-lang/mono/Manifest +++ b/dev-lang/mono/Manifest @@ -7,10 +7,10 @@ DIST mono-4.4.1.0.tar.bz2 85897587 BLAKE2B 79651189e696aa7352704e1ac659302423b12 DIST mono-4.8.0.524.tar.bz2 87392723 BLAKE2B ac17c3da6d6c08c4cb72c4fa300ded92625bd8c14c1e45ea9539efa42c8d085759f7bb298fe5df57bd41f18abf83f293d26a9e6272944933fcff0a3c16a7e4f3 SHA512 eb77b768a4a26e6a2a872f4845769cdc83f01af3377ecd6d932437d2a1b54bfd1ce727563906146195a54997b4b624fb75449a6f0bcfe818cbc4e6544841bf2b DIST mono-5.14.0.177.tar.bz2 219729440 BLAKE2B c21af7f541e5fcd456faeaf654ded7937da5241feb94b0de464a880915d758791ff7a645dbcb4023e7cced7ab0854bb8da0cc246abc6ab575bb278aa58fdc8c7 SHA512 f13afbe4289e177705642f79f4236710bdc8db8e956782c5370baf22207d6713f7997ec286c7742416c8206d2da205f295437d1afcdc430628d13e32f0e87d2d DIST mono-5.16.0.220.tar.bz2 231487021 BLAKE2B e5154c5e356bc277a8809471e5bf8a87092224f54f08535d9860229040bdd3fec304404b893ddd36253f58b351e7023ce9649521a0e850fabfefb3e6700473c1 SHA512 f5266b28747dd7735acb047e1d7a3660d9984126e518885babba6cce5b8dd9959134f7b5c6cd79309b4fb1feaf9af9d0015fdbc2d4bd088928a279b5c1dcefb3 -DIST mono-5.18.0.225.tar.bz2 276603472 BLAKE2B 477781bf04758934a3450fe9d51409d300a463f0188748636a25559c4665860f429bc5a36ef78a5012a291046ba1dac7537ab5fc837ca2e7262daa5a3c47dfc4 SHA512 e7750a2290773a8769d3a0dbe98b45026d82225a432d9febbb2cf5ec14d546d08dc26729ae9ecd72242aa28f6c87140766d82563dc7c060e1230e19be8308632 +DIST mono-5.18.0.240.tar.bz2 246571697 BLAKE2B 92a0e096d17b28f6b185addf28acd2bfd006a099b231388faec5a6d45718f9fbbeaa80c7d8e35c287db55d1a7cb2c64dcd1337dd316cd665f8b520148dae1c5b SHA512 4add3744325d6d920d3d83f320b8ed58c48557dd6cadc44866aa137007489a376b09e2acfc82b6ce132d5a5c65b56d3ce9e2dda08e7f2f8b203117379f7f1fc6 EBUILD mono-4.4.1.0.ebuild 3384 BLAKE2B fd16089b151c1666ceda7d05285fa8a10143a4157e46b75a3412b42dec80c0929f9ba8d9523ac65b64fb827ea8d1ad88fbe98a5e7d0d12423b970912d0ae50e4 SHA512 6c9c9ce5e19a33e4dbc1b0cdb2d17804a67eed5061e422358c971de5a2eb95b2848c4515312a4b082087c50040c1e7f9c687a134ca30354d8f4bde796432b126 EBUILD mono-4.8.0.524.ebuild 3025 BLAKE2B e076a2771ffe50f999905f2565e741edc24c5e5b7998a92b528011cc9d03aa0cf0decfc538e9acba41afc7afb42e6486da29353940f4bef467288a5ca2e22998 SHA512 73c6b525881aa71e829214fc3ba05aa172942e3a441d79903af39b385e12eb31cae7083972a69a6bc1e29af98c5fa4828a7d96dc3c8564fca8daa01204ff8a5a EBUILD mono-5.14.0.177.ebuild 2968 BLAKE2B 17e110b05811a8c82cda8a5931cfdee4c4cb9b00ec86c4a5c8e4c205ab20743c8e61876822055e3ba065d9ee9d29595cf08cedcb7a87f4b53468b408c1a3f7d7 SHA512 2385767fee4277490ac3be828baf8c09c99534658ea708e025cdaa43830a36df3c96f5b4a089ac9a9026ab9c4989cf6379b93330ffe29ce1b5beac7198fb5047 EBUILD mono-5.16.0.220.ebuild 3022 BLAKE2B 4596e60c26b9ea401f6322319a61e4a8faaa0245ab43db186102285497cf4a6864dfcf375f1e722664a049cbbe6ec52e4c84e720f63e8585d2f8c06841c906d5 SHA512 396f4e8a6f2d1b3ea4c960fb0fd571b919734b92b940364fef75f4b1f60a69d9604f089d91c88adddd243718dcd14e92c6e803d58f737a58dbb69293b89651f7 -EBUILD mono-5.18.0.225.ebuild 3022 BLAKE2B dc90c8e779910b113825314f61ee2b771da4fb3e62fe55fc7798e3f02d6f38d2e5f3d7e6ac03db051d94445eb120c967551e374d658e8644e587957f363a3208 SHA512 c0d01b5c236755adc7a4d2e0f4ecb1af45f27d88d77e3abdc32b462a85eed4837656a216a91a004e3bb27fff8ca388b5348b6b0c61a22c9a8f2141901ef5148f +EBUILD mono-5.18.0.240.ebuild 3022 BLAKE2B dc90c8e779910b113825314f61ee2b771da4fb3e62fe55fc7798e3f02d6f38d2e5f3d7e6ac03db051d94445eb120c967551e374d658e8644e587957f363a3208 SHA512 c0d01b5c236755adc7a4d2e0f4ecb1af45f27d88d77e3abdc32b462a85eed4837656a216a91a004e3bb27fff8ca388b5348b6b0c61a22c9a8f2141901ef5148f MISC metadata.xml 507 BLAKE2B 91655de22fc1ff309c36ecef9d77aa8cada0b8f13ae30677665de837e99b7b43622a1dc0c677b0f5455c06b8e8a295c3c4f39753f66e749163a4f002ee481016 SHA512 e072a1abbf66276b0d139c3e918593010312c2059a0c6feba7b324689cdf90efe28bef0286ad9888125acfdd1fed2dee3e05e79a0aeb7f9ec1809bd128cf8a20 diff --git a/dev-lang/mono/mono-5.18.0.225.ebuild b/dev-lang/mono/mono-5.18.0.240.ebuild index cdd575f10cad..cdd575f10cad 100644 --- a/dev-lang/mono/mono-5.18.0.225.ebuild +++ b/dev-lang/mono/mono-5.18.0.240.ebuild diff --git a/dev-lang/nim/Manifest b/dev-lang/nim/Manifest index 60390ccd511b..15b069f98658 100644 --- a/dev-lang/nim/Manifest +++ b/dev-lang/nim/Manifest @@ -1,6 +1,8 @@ AUX nim-0.19.0-paths.patch 934 BLAKE2B 08237a430441660a2d2380b243185c49301c80c9f5043319a7fc95419d9e8e84a4dd756bebef8692a396b80cef186fc9f9105e60a6877dca2171abee49d26d81 SHA512 c41fa08bd364af89557deca7e1f1a5d39c7e6b9e35b30b9f399465426c94953880ef4e7ac59acc1fdec70551ed5afbeb5de6b2fbd4d489d7b3538387bfa058ea DIST nim-0.19.0.tar.xz 3321644 BLAKE2B e1de3b8a4c756315bcd110ddc62c03eb1a379403d8c102eb4d6d131cccabe3dccdfdac33d46037fd8b3b241d727acb42f5cb0b616a4079830ea3abf63089f90a SHA512 f7f3c8e0e9a6509b6404e21da4693ceb279112dd7a7c39edc7e717f21554442914c9cf7d811bb4034ff244e34d77dabf6e09b5e3e77c37314adf99cc0c3b2311 DIST nim-0.19.2.tar.xz 21176300 BLAKE2B 85250ca174c2ef6ee77e8c1a2b35316bb9b21e591438d7d3bf560c0d38f1ba64c811ef99c0c3147acceddd6d27fcd5ff2dfccf65cb92218484649f1029e0dd1b SHA512 fc7ab034dcdf3cb5f1cc379595ee9ae6da7c6256eef4b294e3bf31ff559efd48598a9974ca9a0f41d899f01af6a916feb9c5eb7f888f637287ce357722d41421 +DIST nim-0.19.4.tar.xz 4284092 BLAKE2B 7fcc4d4c13cd5ab0b9ac7b98b3ffff99ffcb77d0a23bb731b92813b5d96f5ce88303cb0196ad425f5944744f30aa1d257dc90714f6d11c1a26726ad4512206b7 SHA512 0cf87368b51bc305935b350b63c535ed268c066258ef731b73c12afaa9a3c20760876e3c4bec46448051fe8bacb6c4f1ef84f2ec3789f601a4786408bf3da06c EBUILD nim-0.19.0.ebuild 1693 BLAKE2B 17595414f280770bfa08aa1e9088bc2c39b10076e1278670b8bae2f74f0ee949a5be5f84c52bd40a55626ffb99c7cc9efa1358d11bafc94d8486683ed5c34971 SHA512 ad5744520d9fcb2a07213bca63af4e8d88e5a40142aae030bec2115c11a946aec3cde3994b033413bd40065f264ac1595d1ee35ee328871122fdf0a9f55d0326 EBUILD nim-0.19.2.ebuild 1701 BLAKE2B 722d99d2d6c83eb62a362ce0020bdfcb50f1b185f5e8deaa09e1a12a7570d8496869d40c2c4bba09099deab8fcae41e69ccce0dcb9133692d0cbdfe974b32047 SHA512 8b54a7ef70bfd9143c5fbaaa9e3f5a77e3e19c6d926b90473e3732345b73f0a3dccc2a1c46a90ed3f1e684624b1e6e6061f3309c2ad464a81d561ff60064fdec +EBUILD nim-0.19.4.ebuild 1701 BLAKE2B 722d99d2d6c83eb62a362ce0020bdfcb50f1b185f5e8deaa09e1a12a7570d8496869d40c2c4bba09099deab8fcae41e69ccce0dcb9133692d0cbdfe974b32047 SHA512 8b54a7ef70bfd9143c5fbaaa9e3f5a77e3e19c6d926b90473e3732345b73f0a3dccc2a1c46a90ed3f1e684624b1e6e6061f3309c2ad464a81d561ff60064fdec MISC metadata.xml 328 BLAKE2B 9205920d8c9b12118456bd186f2e882b3e6f75b7cc3f766def1e79e2e4f7ac695370409ff1555e379516606568f181f4ba3625322f70e41bfffd21d319b0035f SHA512 bf02bc0a8c25d6e157b7ab1ef87c2eac3241d42bc4cf0632a159dcb5d429051018848be81d0cbce228124660ced8694f5de48d64fe10bc7ff5b536b7e7579e49 diff --git a/dev-lang/nim/nim-0.19.4.ebuild b/dev-lang/nim/nim-0.19.4.ebuild new file mode 100644 index 000000000000..2dc958a2a86b --- /dev/null +++ b/dev-lang/nim/nim-0.19.4.ebuild @@ -0,0 +1,81 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit bash-completion-r1 multiprocessing + +DESCRIPTION="compiled, garbage-collected systems programming language" +HOMEPAGE="https://nim-lang.org/" +SRC_URI="https://nim-lang.org/download/${P}.tar.xz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~x86" +IUSE="doc +readline test" + +RESTRICT=test # need to sort out depends and numerous failures + +RDEPEND=" + readline? ( sys-libs/readline:0= ) +" +DEPEND=" + ${DEPEND} + test? ( net-libs/nodejs ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-0.19.0-paths.patch +) + +_run() { + echo "$@" + "$@" || die "'$*' failed" +} + +nim_use_enable() { + [[ -z $2 ]] && die "usage: nim_use_enable <USE flag> <compiler flag>" + use $1 && echo "-d:$2" +} + +src_compile() { + export XDG_CACHE_HOME=${T}/cache #667182 + + _run ./build.sh + + _run ./bin/nim --parallelBuild:$(makeopts_jobs) c koch + _run ./koch boot --parallelBuild:$(makeopts_jobs) -d:release $(nim_use_enable readline useGnuReadline) + # build nimble and friends + # --stable to avoid pulling HEAD nimble + PATH="./bin:$PATH" _run ./koch --stable tools + + if use doc; then + PATH="./bin:$PATH" _run ./koch doc + fi +} + +src_test() { + PATH="./bin:$PATH" _run ./koch test +} + +src_install() { + PATH="./bin:$PATH" _run ./koch install "${ED%/}" + rm -r "${ED%/}/usr/share/nim/doc" || die "failed to remove 'doc'" + + exeinto /usr/bin + + local bin_exe + for bin_exe in bin/*; do + # './koch install' installs only 'nim' binary + # but not the rest + [[ ${bin_exe} == bin/nim ]] && continue + doexe "${bin_exe}" + done + + if use doc; then + insinto /usr/share/doc/${PF} + dodoc doc/html/*.html + fi + + newbashcomp tools/nim.bash-completion ${PN} +} diff --git a/dev-lang/php/Manifest b/dev-lang/php/Manifest index 71357fc1040e..bdf20e630577 100644 --- a/dev-lang/php/Manifest +++ b/dev-lang/php/Manifest @@ -12,26 +12,25 @@ AUX php-7.0.33-intl-use-icu-namespace.patch 11180 BLAKE2B 5a5d6bd74f2cee846ce58e AUX php-7.1.25-intl-detect-icu-via-pkg-config.patch 4608 BLAKE2B 3639c5a39bae61d3032c18a85982769c2d8a5837a67cc8b3ec7cd25263d15f4923a04c74f21b10cd5cc17c0cd9d657431dc3052cddaa289a6eb1dac0cf975350 SHA512 567fb3486af02e487cdde11e2a6f706b2fc19722e5e9f4b63320bb2226e30ff79b14780f3f661378bf5bea2150b47af93fb5b39003465895fdf420691d4dbc44 AUX php-7.1.25-intl-use-icu-namespace.patch 11396 BLAKE2B 7664703a7bafb38d252f5eeec926ee0b7eaf4d75e71ef98c2e7d3f612b7d48d38b66764286d67299a38a704500db2e3215dc375d64a8f277b904aff80211fa60 SHA512 c7b61cade203a338a576aff0b4b76a22f0d686d53e91fbf4c5171e0429317460f7404c78a0c076a3000957100af2d17caba6245bf37afc6177fb43c7fafa7679 AUX php-7.2.13-intl-use-icu-namespace.patch 11499 BLAKE2B 0dca597d5afd0309595499e3ff860e2d83183e570d02f202a1e2966d430606f09b8dc7427c4007e791914c8ee093a2e7cbf7372baa7896ac06d1912f2e707c09 SHA512 1332eb76feda2100685e319ae046512cf12b55a0d2be537c2172ccf035b547d851f84fb7941389882d7e3d674d91441e018c7b8f1e3f0d4cced05c314d5821fe +AUX php-7.3.2-fix-iptcembed-bug77546.patch 5521 BLAKE2B b03839e092308b4fbbb1624015ca77e9c7acd71efb5bfdb4bc003decdfca86b89e5e462c1e1df69b97c71415fa9207fbe723add1239b99b5db502884e3fcd799 SHA512 68c88ecd93f3b45e8967f61db06da4aa77054879a3e18137c94fab9524e53a841b19ac0b179467cfd9ba5a9cf5c0091e6a36b56e7291501bc123057487aa13d8 AUX php-fpm_at-simple.service 316 BLAKE2B 0ba10f3e3b004fbf14956e1e4f04f59b8a127e6717fe6b92c09b9f931033a11551c75fbbee9010f6b694c5a8758ca0eec9eed457ae304ba0dea8f2c256c3b8d4 SHA512 7367a3f8d3874f8e0c76f331ba613a0250db02f60ad9f87affaf448dcb5bc34bcecb91d88f415764a12b24b46ae3d1b738a002af9f77a4b707e916e83a0021fd AUX php-fpm_at.service 317 BLAKE2B f13fc38fcc0575a8517ee8d07b120efda37eabd2355061d0fdc303604c6b02ad42d7301180d86c977d5e585f5dd685343c592e37a6e0f44933707be79e0b77e0 SHA512 27982f9e2d958bfa75c89c7d3531e48d17fc388b1cdcbc8e09051b236b1184ee2baabdfcc567c19d9fcd067d4b3b86f171015616d8da42fccdabd89432d865e8 AUX php-freetype-2.9.1.patch 7667 BLAKE2B efc8f829bbad11b3e7b654d0882213ecb9aae766060d51f93446a6293a2f607339faba484c7b0b2f9318a5c5442da3c09e25aeda20dbc5e3258bf1009f8625b4 SHA512 0a06189f6fb3513cd2dcf9ddb590360475e2dd9a7aa8b13ab66c389c1ed40ce2361681f017cd3c6219f5b40a0a9d4978e57ca3ee4bacb7657db3285136fd2875 DIST php-5.6-openssl-1.1-compatibility.patch 42559 BLAKE2B b7f13866cd8545543143932930f31bcd928fa0b4b36ef63f04798b9ef4699f12b4f4227772ac9e6e5c498aaeacf7b106abcfa48031a12214e123de4b79d3a4cd SHA512 eed695a3dd7ce27e8651b4a4b96ccd0514f256e7d2f0214fac899e9eeea6412aa24f863f1b5d13305bcac50667ccb62709597fb34da1002b005ebf411dd2f5df -DIST php-5.6.38.tar.xz 12467408 BLAKE2B d9ee47e193d80bce8a9ed6ffd3eb13e67ba6d1f597ece2803cd92fddc6245f46cdfe644d6cda12a6bb409b92c1fe748610cc5eb43dea0bf063fda81188ee8b3d SHA512 66c51a8e954b1496c0bad0a2864a2a1537dd1c1c573b553991d6d5bce85fc7bc340e56a21109bc5e9a03799e703204b980b569c95a5c0a1bddb01c8947e7a682 DIST php-5.6.40.tar.xz 12472236 BLAKE2B f41147eaec9b15e965540f9e871691cc88848dd619bae6af85e7bba0130b71ce91bad5cdbbadbb537c42df83369f5c731007339a9d9e21e689e913c135201afc SHA512 997b5a952a60cf9166671cc91fcc34c674dd62bfd5cb0a9cdf3fdf2d088b5d19943d94c1cf193f8ab71fc4957d9a9a4c7c2fb8826f937501c1c0a0858f10e329 DIST php-7.0.32.tar.xz 12030780 BLAKE2B 0c277eac4c931a6e30954cceb7feef8dea1c3ef4aebac91779b7e1a6f90f608faa93d1750a2dc8f354c73304e0f7a9b9ac17bb0d1da4768ddb68925752c11aef SHA512 4a7c9a6b91ad7da69303916202062d639e6f02dcd483e851a44d8c7a2efeb5c9a666097935ab60d700c4445f86a0c68df1515300c57af1cdb76528b54b757608 DIST php-7.0.33.tar.xz 12033040 BLAKE2B cb7a4eb3ba8ede93ae8e85b6a11664f33654f7e94fa077ac9a33ab95157c0c2b3b05f98413e13e36f710c6d00b35d49d38bf26092a36e508b88805d092764287 SHA512 9298e185702ea801e9243671ecb0b781c2b04181a2f9fd6490bc14897a333a2c0cc88fe27b0c69c6dd0079629a71c330ed1aa337f48cac6cbd624addb8855500 -DIST php-7.1.22.tar.xz 12227848 BLAKE2B 72fab94b1c7ecfd3479f6d6c9a76a9d8813f7789402664201615d79ab8b5bb26fb1b7273769c4898a36f0336e0ce4d50bf2f17b81ddb54acc9583e39623e3a5b SHA512 0fc0907d303711dbc4ba0a18618e3e73550c73d13988c769f8d50066017b1efe3feb0d22d5539f69271ea4e9532a3d997e22841cb59bdbf96313169e1c03538d DIST php-7.1.26.tar.xz 12206956 BLAKE2B af78f764349a05905d7db22260c8a6415a2755b29e0dd01225160235b3b38ea76c8910d79c69798aa2de3fc6d4d41e45ab951161b54e62753111f81ac9d85bc2 SHA512 3c80dce2d5dcbf6f253ca4ca4e4ce01fdd3a3d31a6e6045f539fefadc1ea3c391d4d4995600a4ff758ab0361e0ec2244e2eaa6591ecb3e9b8e8a9c44f67a5b32 -DIST php-7.2.10.tar.xz 12160864 BLAKE2B f1959a00622c1bd11fa87c61d152c802b307f0b9e89b51ed86b40086cda03eeb6652d47b59df8cc7c9b4e79ab687ae1292b978f453e9f07ac352d209b64c62d8 SHA512 aa90fce17034b2649012d66461626ae74c21ea938b1c71c7eb12419e562c641b432df87a7e900c245ad28df39624cf64a1b2f8ffb123608d94cd35e41f09c0fe DIST php-7.2.14.tar.xz 12156460 BLAKE2B 88727241ca3fd68238ce50dcb4c12868f8e6df54213b04dba7650c5f98c3f18a3d02e0a191c0ebd13d85c83cc686fef60135f69ca7cc3e425bd5d7f80035fdd7 SHA512 13f2c97b730e3e872bd24bcc004c6cff5e2cc633c37a4eb60b8b5d1d4454bc5985f7d52943448d61cf4a227c64be770edc5eadd2c9612b297d71c0840b4b1259 +DIST php-7.2.15.tar.xz 12164460 BLAKE2B 16ab89c1deee7fcb1edd49b5227456f6bcf40a43668b5e1ffbab41a9f4c48a24fd318122886521838a687a52e36cb77258f6ca266046605441b835904c2dde23 SHA512 feecabb6ee1ec4bc98cf1aa868190c758ee57e5f2d80c91376a2d91082d01f481b0a2e3d7dbae4822d6cfbafe8bccffed15335ff561f8b239e16028ed6bdbee7 DIST php-7.3.1.tar.xz 11944376 BLAKE2B 55b3192774c08b1e4c6621e16176a1e352ff6ba5540794a5d769b6416929723638f1409f2f8224c7fe3db99c9b020fa51db7b78d50eaa00e790308562a0a5334 SHA512 0663d90537fe3901cad00ba1056782050b8a61e8edb49f01851add4992df21d23aee3e9468e32b76b7f53ffd513f1ba10c9513c549e247d796416ed176355348 -EBUILD php-5.6.38.ebuild 22798 BLAKE2B 8bef3ae060eeb63fcc492a7c8c8a8b642b84f46ef7ed29e69badeecf26c0f853e974c8f224739875fee1b345987775c05f451908d4731550eab156993a55d23a SHA512 0a97787e0b80643e620815c32b29a56063ddb92c31516ad34f89be9769cc3cf9ba07eb0271d433f330d6493df2b1a63af29bf8b7ede81bdd3fbc2751be5ce561 -EBUILD php-5.6.40.ebuild 23258 BLAKE2B 0596c70d98858c26ecd271eedec3bca8907b486ad85d7a81bfea5c3b01a1f4a7104672fa75fa5f83a7dbdc5cd76b123571d3defb6f15805ff06b7e54f7361597 SHA512 86f097fd4e13a5b94e0a49ce4d1889ea6df879c32cb7f495a074f1071af9dcc97804fef7dd234ffb206cc64779d9e88932fdc162c735a8fb30499b4e8b7d5729 +DIST php-7.3.2.tar.xz 11966760 BLAKE2B bb913e754e86ebbbef641d0516eb1fff7dfd7d7fe54776d4de0312175cdbc292694addd60e8ad863726796d482517e9312d83754eb70201de1a8a21e892cd87e SHA512 e49eaf1f0811098910beddc407d5047e09a0f528baf4b62f2a42e8faba9d3d7a0ae82a0fd7a5bec265e22ef1bcf0cdcc4e9f0a521258412405923800798cba66 +EBUILD php-5.6.40.ebuild 23257 BLAKE2B ff1d510e4541c036185a38ecb766b3feb9a8589f6c53257626fe0f8f64355693fa76c01ebc7f407c1125727ac6127ff536ea8ab369ed0da137ee84943b071fe5 SHA512 e2366f34f974738aaa6b8b0d198e8472b1ef227d08e49c2edba1f91a5a94c7a3ed9b89580677b4859007c277b1940a71ae116cc9eda949b6654eb341b01760b5 EBUILD php-7.0.32.ebuild 22008 BLAKE2B 26829e446d9608f52212a32e0092d83d65966a270a8e4d35f8ac4559f0679a4ff955848eb9c9ae3f7d25300d347a226adc1b71d1b322d09fe512188360f2182f SHA512 a9fdfe7a831fa4ad71ddd4bae29582053ee86a824dc93f02581a3add372561f34d457f2c9198c72c619b10666b679d3f929f6aaf309c2d446a60e9447e8d3cc2 EBUILD php-7.0.33.ebuild 22169 BLAKE2B c42c62525fdb4e5e0de2cd232c2e6c04fa0c561f0095db4f3d05822cbbde8bc8938369870cea1dd3e7c9a0ea87899e2323a185195fe177441eb94a66ea2095c0 SHA512 c909409059798a4cbb2284a71affc0df5c47db6bebafc291323eeb865b118712a4b344b4f556be95d3035333481ed147804e908b1d8e5c68b38bb178ef0651b8 -EBUILD php-7.1.22.ebuild 21715 BLAKE2B 13f34b9730b2f0f22cfcbf26af6575259d08d61f158b0c9bd9b6e7756326037e32e92992ec510bc1649eca0beb2044f820888c7e9b1fa48174974e754947f181 SHA512 187fd61cf4df1cda5c53e14aea0ac327c5e9fab193843165de2afe7e13fdb5b8be1ebab70fcb776dcb8ebe1966feedcc075e589c4ddf1f9f6d3d58f45519a9d4 -EBUILD php-7.1.26.ebuild 22034 BLAKE2B 27c98d141adda41a8e15e9df9ad37a02a5454c029b1b870b95be553df8b1f655a3760d94397a69b39d89ab1f87dd491d885675015a15186912101f5f217af4db SHA512 7210d43aa8fefd29dcca6f589dbafff425b33bff575c771f07b0e93123bd1ad639b5b1df3ea3a3a8851061915e411f0d406a50694b99d70444d80f18898cdbdf -EBUILD php-7.2.10.ebuild 22246 BLAKE2B e06f62b7f5563d48d9e381b6ab44cc72e9e63831e209ee638321e93b90a1f42abb9a41b757629b45cfa610f7e985f40fbd002c5121acf86d862f8d648ee16f44 SHA512 c662c27b70663131899ffe595476bff326a337d584855e27f62480bf8824e3a3f49caee7c80b4f3aa19ccc40d1f95f3a9c4518621cbd43abd751981ba334e190 -EBUILD php-7.2.14.ebuild 22558 BLAKE2B 3f41c4d8a075057c22336359c696f8c3f478b21f132834dca5bf43e1773e9fb2be41b37775a43b863092147f4423f56aedade3326292ed58d269d80accf7e639 SHA512 16ec568eb6754a0e23303c2325f623bc0e7d73767879542f1fe0f71e936991a1e25476916d1fa7f25bb403ee72ac9c156c9c95a4beb5639d05186dd931b40242 +EBUILD php-7.1.26.ebuild 22033 BLAKE2B d458b021e17640c918aeb4cf56e480ff0502fbbf20fb769d8d9fc60b98ee2026fa6aecae33335badcb49c188451ca0deb02a830c595ab6f4b13caa32ba88db9e SHA512 79d0f90386ac3d61b8ef5cca79028460b807baa4217b6578582d0705096de9d063df237546305be06b6c7689580f8334d2a8feedff2abcc3ed1922a558074deb +EBUILD php-7.2.14.ebuild 22557 BLAKE2B 1370a613a9dfb4bf1707420b8eab1b2a1454e0d78adc3ca6e8b5942542b1d9ad814036f8d94ddf9853aa1e82f557ad30cdcff01fd928e346f22e921aaf40e528 SHA512 0301b3b32cbcec4fd0463c868cb0395a968bd24efb2ac6084b4fd1cde52858a4c03e3beb1e361a614b4f5398cca9fdfd46ab4c28e8b37abf4495fcc8abf5f744 +EBUILD php-7.2.15.ebuild 22565 BLAKE2B dbd79aa6952966fd85749d2323ff72b32cd43018b8685e83321410b6fb7f37ce495e49c08daa0559900855d01d605f4981e5eddd6414fe343e54bb0caa660e9d SHA512 8108f9c95763d767dbfa125f9c4c46e9ed4e76db2cf4e4e708993483ca917607167d43a50c7a90485df0c2d530b65cf2b1cfe30f4e2229f23f1b70074ae14e99 EBUILD php-7.3.1.ebuild 22531 BLAKE2B 5e7829bfce6c1d99cf39cf1058f2c3f896de26a71880a1365ed4fca9c40977208165d201bb5abffda0e8c39d722d4565a62200cf438f043cafd82192e9f21e57 SHA512 929c387adb105d805a16536f7fa87f2d8c134c39485eeec6433ca5a154d302a64d904b8c5b25796f1f4f1e5deab304e0363e692e6784d2a4ea8ed36a163e18c1 +EBUILD php-7.3.2.ebuild 22585 BLAKE2B b7fdda96e9a8a25873ada3a9f88b77a9e52d997054906f2c62843a654610c69efbaddae5c0bc41920db515743ffaaf44bee2271fa64cdc57d7489518c3802943 SHA512 9a5a17e06d0bcf5b9759d802a667be49e205f5f6bf9a3bffa1ae29c4355ac85c8d29eab8b471ceba800ef11e1122350b1d671591a26c01d473e6126070fc5888 MISC metadata.xml 3268 BLAKE2B fcd85522c4dbea03403eee66cd3be945f4f998d5eb483ac9c47bd2be2f5f2f4be8586ecc58d50ced7798fdd63ef2136e56d559fa06e870d242239127a97b7b76 SHA512 c44c7fdf1592ba4c0b2cf6f29a97a4a214d2193cb164dcc90454e4a762860a5f3fa67908217543fe72811d403c2ef3b15d2f80f2657f09c1e078d31ef35c12f4 diff --git a/dev-lang/php/files/php-7.3.2-fix-iptcembed-bug77546.patch b/dev-lang/php/files/php-7.3.2-fix-iptcembed-bug77546.patch new file mode 100644 index 000000000000..e157d250f2fb --- /dev/null +++ b/dev-lang/php/files/php-7.3.2-fix-iptcembed-bug77546.patch @@ -0,0 +1,127 @@ +https://git.php.net/?p=php-src.git;a=commit;h=f27f9022660d28c13c6209f4679768dcbd961b43 + +--- a/ext/standard/iptc.c ++++ b/ext/standard/iptc.c +@@ -273,7 +273,7 @@ PHP_FUNCTION(iptcembed) + iptcdata_len++; /* make the length even */ + } + +- psheader[ 2 ] = (char) (iptcdata_len+28)>>8; ++ psheader[ 2 ] = (char) ((iptcdata_len+28)>>8); + psheader[ 3 ] = (iptcdata_len+28)&0xff; + + for (inx = 0; inx < 28; inx++) { +--- /dev/null ++++ b/ext/standard/tests/image/iptcembed_002.phpt +@@ -0,0 +1,110 @@ ++--TEST-- ++iptcembed() valid jpg stream ++--FILE-- ++<?php ++/* ++# source code to generate base64 use behind as $base64_1x1_jpeg ++# we don't want to be gd library dependant for this test ++$file="1x1.jpg"; ++$ret=imagejpeg(imagecreatetruecolor(1, 1), $file, 100); ++echo md5(file_get_contents($file)).PHP_EOL; ++echo base64_encode(file_get_contents($file)).PHP_EOL; ++unlink($file); ++*/ ++ ++/* ++test description : ++1) create local file 1x1 jpeg (without iptc) (use base64 content to create file) ++2) generate iptcdata string with function iptc_make_tag describe behind ++3) use iptcembed php function with our 1x1 jpeg file and our iptcdata string ++4) write local file2 with iptcembed return content ++5) various check on file2 to verify that's a valid jpeg file with our tags ++*/ ++ ++ ++#iptc_make_tag function from http://php.net/iptcembed ++function iptc_make_tag($rec, $data, $value) ++ { ++ $length = strlen($value); ++ $retval = chr(0x1C) . chr($rec) . chr($data); ++ if($length < 0x8000) { $retval .= chr($length >> 8) . chr($length & 0xFF); } ++ else { $retval .= chr(0x80) . chr(0x04) . chr(($length >> 24) & 0xFF) . chr(($length >> 16) & 0xFF) . chr(($length >> 8) & 0xFF) . chr($length & 0xFF); } ++ return $retval . $value; ++ } ++ ++ ++$file="1x1.jpg"; ++$file2="1x1_with_iptc_tags.jpg"; ++$base64_1x1_jpeg="/9j/4AAQSkZJRgABAQEAYABgAAD//gA8Q1JFQVRPUjogZ2QtanBlZyB2MS4wICh1c2luZyBJSkcgSlBFRyB2ODApLCBxdWFsaXR5ID0gMTAwCv/bAEMAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAf/bAEMBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAf/AABEIAAEAAQMBEQACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/AP8AP/oA/9k="; ++#write file ++$fd=fopen($file,"wb"); ++if ($fd) { fputs($fd,base64_decode($base64_1x1_jpeg)); fclose($fd); } ++else { echo "error cant write $file".PHP_EOL;exit(1); } ++#check file md5 ++$md5=md5_file($file); ++if ($md5!="07dd8594450e8c18ab8a79d7cb4573c7") { echo "md5 error".PHP_EOL;exit(1); } ++#check jpeg properties ++list($width, $height, $type, $attr) = getimagesize($file,$info); ++if ($width!=1) { echo "width error".PHP_EOL;exit(1); } ++if ($height!=1) { echo "height error".PHP_EOL;exit(1); } ++if ($type!=2) { echo "type error".PHP_EOL;exit(1); } ++if (!isset($info["APP0"])) { echo "APP0 error".PHP_EOL;exit(1); } ++ ++#our iptc tags ++$tags=array(); ++$tags["2#105"]= "Tauren"; ++$tags["2#120"]= "Tauren with Trunk"; ++$tags["2#110"]= "Copyright 2004-2016, Blizzard"; ++$tags["2#025"]= "Tauren, Chaman, Blizzard"; ++$tags["2#090"]= "Thunder Bluffs"; ++#feed iptc string for iptcembed ++$iptc=''; ++foreach ($tags as $tag => $string) { $rec=$tag[0]; $tag = substr($tag, 2); $iptc .= iptc_make_tag($rec, $tag, $string); } ++#check iptc string md5 ++if (md5(base64_encode($iptc))!="7056c4b3060f92a4f9e5b7d0caa61859") { echo "iptc md5 error".PHP_EOL;exit(1); } ++ ++#use iptcembed to get jpeg stream content with iptc tags ++$content = iptcembed($iptc, $file,0); ++ ++#write new image with iptc tags ++if ($content === false) {echo "iptcembed error".PHP_EOL;exit(1); } ++$fd=fopen($file2,"wb"); ++if ($fd) { fputs($fd,$content); fclose($fd); } ++else { echo "error cant write $file2".PHP_EOL;exit(1); } ++ ++ ++#check jpeg properties for new image with iptc tags ++echo "new generated image with itpc tags : $file2".PHP_EOL; ++$ret = getimagesize($file2,$info); ++if ($ret===false) { echo "getimagesize error".PHP_EOL;exit(1); } ++list($width, $height, $type, $attr) = $ret; ++if ($width!=1) { echo "width error".PHP_EOL;exit(1); } ++if ($height!=1) { echo "height error".PHP_EOL;exit(1); } ++if ($type!=2) { echo "type error".PHP_EOL;exit(1); } ++if (!isset($info["APP0"])) { echo "APP0 error".PHP_EOL;exit(1); } ++if (!isset($info["APP13"])) { echo "APP13 error".PHP_EOL;exit(1); } ++ ++$error=0; ++$iptc_data_from_created_image = iptcparse($info['APP13']); ++foreach ($tags as $tag => $string) { ++ #check if tag exists ++ if (!isset($iptc_data_from_created_image[$tag])) { ++ echo "error iptc tag $tag not found".PHP_EOL; ++ $error++; ++ } else { ++ #check value ++ if ($iptc_data_from_created_image[$tag][0]!=$string) { ++ echo "error tag $tag : bad value ($string != ".$iptc_data_from_created_image[$tag][0].")".PHP_EOL; ++ $error++; ++ } ++ } ++} ++#clean before exit ++@unlink($file); ++@unlink($file2); ++if ($error==0) { echo "OK".PHP_EOL;exit(0);} ++echo "something wrong: $error errors".PHP_EOL; ++?> ++--EXPECT-- ++new generated image with itpc tags : 1x1_with_iptc_tags.jpg ++OK +-- diff --git a/dev-lang/php/php-5.6.38.ebuild b/dev-lang/php/php-5.6.38.ebuild deleted file mode 100644 index 471eb29bc1bf..000000000000 --- a/dev-lang/php/php-5.6.38.ebuild +++ /dev/null @@ -1,777 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit autotools flag-o-matic eapi7-ver systemd - -DESCRIPTION="The PHP language runtime engine" -HOMEPAGE="https://secure.php.net/" -SRC_URI="https://php.net/distributions/${P}.tar.xz" - -LICENSE="PHP-3.01 - BSD - Zend-2.0 - bcmath? ( LGPL-2.1+ ) - fpm? ( BSD-2 ) - gd? ( gd ) - unicode? ( BSD-2 LGPL-2.1 )" - -SLOT="$(ver_cut 1-2)" -KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" - -# We can build the following SAPIs in the given order -SAPIS="embed cli cgi fpm apache2" - -# SAPIs and SAPI-specific USE flags (cli SAPI is default on): -IUSE="${IUSE} - ${SAPIS/cli/+cli} - threads" - -IUSE="${IUSE} acl bcmath berkdb bzip2 calendar cdb cjk - coverage crypt +ctype curl debug - enchant exif +fileinfo +filter firebird - flatfile ftp gd gdbm gmp +hash +iconv imap inifile - intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit libressl - mhash mssql mysql libmysqlclient mysqli nls - oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm - readline recode selinux +session sharedmem - +simplexml snmp soap sockets spell sqlite ssl - sybase-ct sysvipc systemd tidy +tokenizer truetype unicode vpx wddx - +xml xmlreader xmlwriter xmlrpc xpm xslt zip zlib" - -# The supported (that is, autodetected) versions of BDB are listed in -# the ./configure script. Other versions *work*, but we need to stick to -# the ones that can be detected to avoid a repeat of bug #564824. -COMMON_DEPEND=" - >=app-eselect/eselect-php-0.9.1[apache2?,fpm?] - >=dev-libs/libpcre-8.32[unicode] - fpm? ( acl? ( sys-apps/acl ) ) - apache2? ( || ( >=www-servers/apache-2.4[apache2_modules_unixd,threads=] - <www-servers/apache-2.4[threads=] ) ) - berkdb? ( || ( sys-libs/db:5.3 - sys-libs/db:5.1 - sys-libs/db:4.8 - sys-libs/db:4.7 - sys-libs/db:4.6 - sys-libs/db:4.5 ) ) - bzip2? ( app-arch/bzip2:0= ) - cdb? ( || ( dev-db/cdb dev-db/tinycdb ) ) - cjk? ( !gd? ( - virtual/jpeg:0 - media-libs/libpng:0= - sys-libs/zlib:0= - ) ) - coverage? ( dev-util/lcov ) - crypt? ( >=dev-libs/libmcrypt-2.4 ) - curl? ( >=net-misc/curl-7.10.5 ) - enchant? ( app-text/enchant ) - exif? ( !gd? ( - virtual/jpeg:0 - media-libs/libpng:0= - sys-libs/zlib:0= - ) ) - firebird? ( dev-db/firebird ) - gd? ( virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib:0= ) - gdbm? ( >=sys-libs/gdbm-1.8.0:0= ) - gmp? ( dev-libs/gmp:0= ) - iconv? ( virtual/libiconv ) - imap? ( virtual/imap-c-client[kerberos=,ssl=] ) - intl? ( <dev-libs/icu-61.1:= ) - iodbc? ( dev-db/libiodbc ) - kerberos? ( virtual/krb5 ) - ldap? ( >=net-nds/openldap-1.2.11 ) - ldap-sasl? ( dev-libs/cyrus-sasl >=net-nds/openldap-1.2.11 ) - libedit? ( || ( sys-freebsd/freebsd-lib dev-libs/libedit ) ) - mssql? ( dev-db/freetds[mssql] ) - libmysqlclient? ( - mysql? ( virtual/libmysqlclient:= ) - mysqli? ( virtual/libmysqlclient:= ) - ) - nls? ( sys-devel/gettext ) - oci8-instant-client? ( dev-db/oracle-instantclient-basic ) - odbc? ( >=dev-db/unixODBC-1.8.13 ) - postgres? ( dev-db/postgresql:* ) - qdbm? ( dev-db/qdbm ) - readline? ( sys-libs/readline:0= ) - recode? ( app-text/recode ) - sharedmem? ( dev-libs/mm ) - simplexml? ( >=dev-libs/libxml2-2.6.8 ) - snmp? ( >=net-analyzer/net-snmp-5.2 ) - soap? ( >=dev-libs/libxml2-2.6.8 ) - spell? ( >=app-text/aspell-0.50 ) - sqlite? ( >=dev-db/sqlite-3.7.6.3 ) - ssl? ( - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl:0= ) - ) - sybase-ct? ( dev-db/freetds ) - tidy? ( app-text/htmltidy ) - truetype? ( - =media-libs/freetype-2* - >=media-libs/t1lib-5.0.0 - !gd? ( - virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib:0= ) - ) - unicode? ( dev-libs/oniguruma:= ) - vpx? ( media-libs/libvpx:0= ) - wddx? ( >=dev-libs/libxml2-2.6.8 ) - xml? ( >=dev-libs/libxml2-2.6.8 ) - xmlrpc? ( >=dev-libs/libxml2-2.6.8 virtual/libiconv ) - xmlreader? ( >=dev-libs/libxml2-2.6.8 ) - xmlwriter? ( >=dev-libs/libxml2-2.6.8 ) - xpm? ( - x11-libs/libXpm - virtual/jpeg:0 - media-libs/libpng:0= sys-libs/zlib:0= - ) - xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 ) - zip? ( sys-libs/zlib:0= ) - zlib? ( sys-libs/zlib:0= ) -" - -RDEPEND="${COMMON_DEPEND} - virtual/mta - fpm? ( - selinux? ( sec-policy/selinux-phpfpm ) - systemd? ( sys-apps/systemd ) )" - -DEPEND="${COMMON_DEPEND} - app-arch/xz-utils - >=sys-devel/bison-3.0.1 - sys-devel/flex - >=sys-devel/m4-1.4.3 - >=sys-devel/libtool-1.5.18" - -# Without USE=readline or libedit, the interactive "php -a" CLI will hang. -REQUIRED_USE=" - || ( cli cgi fpm apache2 embed ) - cli? ( ^^ ( readline libedit ) ) - truetype? ( gd zlib ) - vpx? ( gd zlib ) - cjk? ( gd zlib ) - exif? ( gd zlib ) - xpm? ( gd zlib ) - gd? ( zlib ) - simplexml? ( xml ) - soap? ( xml ) - wddx? ( xml ) - xmlrpc? ( || ( xml iconv ) ) - xmlreader? ( xml ) - xslt? ( xml ) - ldap-sasl? ( ldap ) - mhash? ( hash ) - phar? ( hash ) - recode? ( !imap !mysql !mysqli !libmysqlclient ) - libmysqlclient? ( || ( - mysql - mysqli - pdo - ) ) - - qdbm? ( !gdbm ) - readline? ( !libedit ) - sharedmem? ( !threads ) -" - -PHP_MV="$(ver_cut 1)" - -php_install_ini() { - local phpsapi="${1}" - - # work out where we are installing the ini file - php_set_ini_dir "${phpsapi}" - - # Always install the production INI file, bug 611214. - local phpinisrc="php.ini-production-${phpsapi}" - cp php.ini-production "${phpinisrc}" || die - - # default to /tmp for save_path, bug #282768 - sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die - - # Set the extension dir - sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" \ - -i "${phpinisrc}" || die - - # Set the include path to point to where we want to find PEAR packages - sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" || die - - dodir "${PHP_INI_DIR#${EPREFIX}}" - insinto "${PHP_INI_DIR#${EPREFIX}}" - newins "${phpinisrc}" php.ini - - elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#${EPREFIX}}" - elog - - dodir "${PHP_EXT_INI_DIR#${EPREFIX}}" - dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}" - - if use opcache; then - elog "Adding opcache to $PHP_EXT_INI_DIR" - echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> \ - "${D}/${PHP_EXT_INI_DIR}"/opcache.ini - dosym "${PHP_EXT_INI_DIR#${EPREFIX}}/opcache.ini" \ - "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini" - fi - - # SAPI-specific handling - if [[ "${sapi}" == "fpm" ]] ; then - einfo "Installing FPM config file php-fpm.conf" - insinto "${PHP_INI_DIR#${EPREFIX}}" - doins sapi/fpm/php-fpm.conf - fi - - dodoc php.ini-{development,production} -} - -php_set_ini_dir() { - PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}" - PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext" - PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active" -} - -src_prepare() { - eapply "${FILESDIR}/php-${SLOT}-no-bison-warnings.patch" - eapply "${FILESDIR}/5.6-mbstring-oniguruma-6.8.patch" - eapply "${FILESDIR}/php-freetype-2.9.1.patch" - - # Change PHP branding - # Get the alpha/beta/rc version - sed -re "s|^(PHP_EXTRA_VERSION=\").*(\")|\1-pl${PR/r/}-gentoo\2|g" \ - -i configure.in || die "Unable to change PHP branding" - - # Patch PHP to show Gentoo as the server platform - sed -e 's/PHP_UNAME=`uname -a | xargs`/PHP_UNAME=`uname -s -n -r -v | xargs`/g' \ - -i configure.in || die "Failed to fix server platform name" - - # Prevent PHP from activating the Apache config, - # as we will do that ourselves - sed -i \ - -e "s,-i -a -n php${PHP_MV},-i -n php${PHP_MV},g" \ - -e "s,-i -A -n php${PHP_MV},-i -n php${PHP_MV},g" \ - configure sapi/apache2filter/config.m4 sapi/apache2handler/config.m4 \ - || die - - # Patch PHP to support heimdal instead of mit-krb5 - if has_version "app-crypt/heimdal" ; then - sed -e 's|gssapi_krb5|gssapi|g' -i acinclude.m4 \ - || die "Failed to fix heimdal libname" - sed -e 's|PHP_ADD_LIBRARY(k5crypto, 1, $1)||g' -i acinclude.m4 \ - || die "Failed to fix heimdal crypt library reference" - fi - - eapply_user - - # Force rebuilding aclocal.m4 - rm -f aclocal.m4 || die "failed to remove aclocal.m4 in src_prepare" - eautoreconf - - if [[ ${CHOST} == *-darwin* ]] ; then - # http://bugs.php.net/bug.php?id=48795, bug #343481 - sed -i -e '/BUILD_CGI="\\$(CC)/s/CC/CXX/' configure || die - fi -} - -src_configure() { - addpredict /usr/share/snmp/mibs/.index #nowarn - addpredict /var/lib/net-snmp/mib_indexes #nowarn - - PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}" - - # The php-fpm config file wants localstatedir to be ${EPREFIX}/var - # and not the Gentoo default ${EPREFIX}/var/lib. See bug 572002. - local our_conf=( - --prefix="${PHP_DESTDIR}" - --mandir="${PHP_DESTDIR}/man" - --infodir="${PHP_DESTDIR}/info" - --libdir="${PHP_DESTDIR}/lib" - --with-libdir="$(get_libdir)" - --localstatedir="${EPREFIX}/var" - --without-pear - $(use_enable threads maintainer-zts) - ) - - our_conf+=( - $(use_enable bcmath bcmath) - $(use_with bzip2 bz2 "${EPREFIX}/usr") - $(use_enable calendar calendar) - $(use_enable coverage gcov) - $(use_enable ctype ctype) - $(use_with curl curl "${EPREFIX}/usr") - $(use_enable xml dom) - $(use_with enchant enchant "${EPREFIX}/usr") - $(use_enable exif exif) - $(use_enable fileinfo fileinfo) - $(use_enable filter filter) - $(use_enable ftp ftp) - $(use_with nls gettext "${EPREFIX}/usr") - $(use_with gmp gmp "${EPREFIX}/usr") - $(use_enable hash hash) - $(use_with mhash mhash "${EPREFIX}/usr") - $(use_with iconv iconv \ - $(use elibc_glibc || use elibc_musl || use elibc_FreeBSD || echo "${EPREFIX}/usr")) - $(use_enable intl intl) - $(use_enable ipv6 ipv6) - $(use_enable json json) - $(use_with kerberos kerberos "${EPREFIX}/usr") - $(use_enable xml libxml) - $(use_with xml libxml-dir "${EPREFIX}/usr") - $(use_enable unicode mbstring) - $(use_with crypt mcrypt "${EPREFIX}/usr") - $(use_with mssql mssql "${EPREFIX}/usr") - $(use_with unicode onig "${EPREFIX}/usr") - $(use_with ssl openssl "${EPREFIX}/usr") - $(use_with ssl openssl-dir "${EPREFIX}/usr") - $(use_enable pcntl pcntl) - $(use_enable phar phar) - $(use_enable pdo pdo) - $(use_enable opcache opcache) - $(use_with postgres pgsql "${EPREFIX}/usr") - $(use_enable posix posix) - $(use_with spell pspell "${EPREFIX}/usr") - $(use_with recode recode "${EPREFIX}/usr") - $(use_enable simplexml simplexml) - $(use_enable sharedmem shmop) - $(use_with snmp snmp "${EPREFIX}/usr") - $(use_enable soap soap) - $(use_enable sockets sockets) - $(use_with sqlite sqlite3 "${EPREFIX}/usr") - $(use_with sybase-ct sybase-ct "${EPREFIX}/usr") - $(use_enable sysvipc sysvmsg) - $(use_enable sysvipc sysvsem) - $(use_enable sysvipc sysvshm) - $(use_with tidy tidy "${EPREFIX}/usr") - $(use_enable tokenizer tokenizer) - $(use_enable wddx wddx) - $(use_enable xml xml) - $(use_enable xmlreader xmlreader) - $(use_enable xmlwriter xmlwriter) - $(use_with xmlrpc xmlrpc) - $(use_with xslt xsl "${EPREFIX}/usr") - $(use_enable zip zip) - $(use_with zlib zlib "${EPREFIX}/usr") - $(use_enable debug debug) - ) - - # DBA support - if use cdb || use berkdb || use flatfile || use gdbm || use inifile \ - || use qdbm ; then - our_conf+=( "--enable-dba${shared}" ) - fi - - # DBA drivers support - our_conf+=( - $(use_with cdb cdb) - $(use_with berkdb db4 "${EPREFIX}/usr") - $(use_enable flatfile flatfile) - $(use_with gdbm gdbm "${EPREFIX}/usr") - $(use_enable inifile inifile) - $(use_with qdbm qdbm "${EPREFIX}/usr") - ) - - # Support for the GD graphics library - our_conf+=( - $(use_with truetype freetype-dir "${EPREFIX}/usr") - $(use_with truetype t1lib "${EPREFIX}/usr") - $(use_enable cjk gd-jis-conv) - $(use_with gd jpeg-dir "${EPREFIX}/usr") - $(use_with gd png-dir "${EPREFIX}/usr") - $(use_with xpm xpm-dir "${EPREFIX}/usr") - $(use_with vpx vpx-dir "${EPREFIX}/usr") - ) - # enable gd last, so configure can pick up the previous settings - our_conf+=( $(use_with gd gd) ) - - # IMAP support - if use imap ; then - our_conf+=( - $(use_with imap imap "${EPREFIX}/usr") - $(use_with ssl imap-ssl "${EPREFIX}/usr") - ) - fi - - # Interbase/firebird support - our_conf+=( $(use_with firebird interbase "${EPREFIX}/usr") ) - - # LDAP support - if use ldap ; then - our_conf+=( - $(use_with ldap ldap "${EPREFIX}/usr") - $(use_with ldap-sasl ldap-sasl "${EPREFIX}/usr") - ) - fi - - # MySQL support - local mysqllib="mysqlnd" - local mysqlilib="mysqlnd" - use libmysqlclient && mysqllib="${EPREFIX}/usr" - use libmysqlclient && mysqlilib="${EPREFIX}/usr/bin/mysql_config" - - our_conf+=( $(use_with mysql mysql "${mysqllib}") ) - our_conf+=( $(use_with mysqli mysqli "${mysqlilib}") ) - - local mysqlsock="${EPREFIX}/var/run/mysqld/mysqld.sock" - if use mysql || use mysqli ; then - our_conf+=( $(use_with mysql mysql-sock "${mysqlsock}") ) - fi - - # ODBC support - our_conf+=( - $(use_with odbc unixODBC "${EPREFIX}/usr") - $(use_with iodbc iodbc "${EPREFIX}/usr") - ) - - # Oracle support - our_conf+=( $(use_with oci8-instant-client oci8) ) - - # PDO support - if use pdo ; then - our_conf+=( - $(use_with mssql pdo-dblib) - $(use_with mysql pdo-mysql "${mysqllib}") - $(use_with postgres pdo-pgsql) - $(use_with sqlite pdo-sqlite "${EPREFIX}/usr") - $(use_with firebird pdo-firebird "${EPREFIX}/usr") - $(use_with odbc pdo-odbc "unixODBC,${EPREFIX}/usr") - $(use_with oci8-instant-client pdo-oci) - ) - fi - - # readline/libedit support - our_conf+=( - $(use_with readline readline "${EPREFIX}/usr") - $(use_with libedit libedit "${EPREFIX}/usr") - ) - - # Session support - if use session ; then - our_conf+=( $(use_with sharedmem mm "${EPREFIX}/usr") ) - else - our_conf+=( $(use_enable session session) ) - fi - - # Use pic for shared modules such as apache2's mod_php - our_conf+=( --with-pic ) - - # we use the system copy of pcre - # --with-pcre-regex affects ext/pcre - # --with-pcre-dir affects ext/filter and ext/zip - our_conf+=( - --with-pcre-regex="${EPREFIX}/usr" - --with-pcre-dir="${EPREFIX}/usr" - ) - - # Catch CFLAGS problems - # Fixes bug #14067. - # Changed order to run it in reverse for bug #32022 and #12021. - replace-cpu-flags "k6*" "i586" - - # Cache the ./configure test results between SAPIs. - our_conf+=( --cache-file="${T}/config.cache" ) - - # Support user-passed configuration parameters - our_conf+=( ${EXTRA_ECONF:-} ) - - # Support the Apache2 extras, they must be set globally for all - # SAPIs to work correctly, especially for external PHP extensions - - mkdir -p "${WORKDIR}/sapis-build" || die - for one_sapi in $SAPIS ; do - use "${one_sapi}" || continue - php_set_ini_dir "${one_sapi}" - - # The BUILD_DIR variable is used to determine where to output - # the files that autotools creates. This was all originally - # based on the autotools-utils eclass. - BUILD_DIR="${WORKDIR}/sapis-build/${one_sapi}" - cp -a "${S}" "${BUILD_DIR}" || die - cd "${BUILD_DIR}" || die - - local sapi_conf=( - --with-config-file-path="${PHP_INI_DIR}" - --with-config-file-scan-dir="${PHP_EXT_INI_DIR_ACTIVE}" - ) - - for sapi in $SAPIS ; do - case "$sapi" in - cli|cgi|embed|fpm) - if [[ "${one_sapi}" == "${sapi}" ]] ; then - sapi_conf+=( "--enable-${sapi}" ) - if [[ "fpm" == "${sapi}" ]] ; then - sapi_conf+=( - $(use_with acl fpm-acl) - $(use_with systemd fpm-systemd) - ) - fi - else - sapi_conf+=( "--disable-${sapi}" ) - fi - ;; - - apache2) - if [[ "${one_sapi}" == "${sapi}" ]] ; then - sapi_conf+=( --with-apxs2="${EPREFIX}/usr/bin/apxs" ) - else - sapi_conf+=( --without-apxs2 ) - fi - ;; - esac - done - - # Construct the $myeconfargs array by concatenating $our_conf - # (the common args) and $sapi_conf (the SAPI-specific args). - local myeconfargs=( "${our_conf[@]}" ) - myeconfargs+=( "${sapi_conf[@]}" ) - - pushd "${BUILD_DIR}" > /dev/null || die - econf "${myeconfargs[@]}" - popd > /dev/null || die - done -} - -src_compile() { - # snmp seems to run during src_compile, too (bug #324739) - addpredict /usr/share/snmp/mibs/.index #nowarn - addpredict /var/lib/net-snmp/mib_indexes #nowarn - - for sapi in ${SAPIS} ; do - if use "${sapi}"; then - cd "${WORKDIR}/sapis-build/$sapi" || \ - die "Failed to change dir to ${WORKDIR}/sapis-build/$1" - emake - fi - done -} - -src_install() { - # see bug #324739 for what happens when we don't have that - addpredict /usr/share/snmp/mibs/.index #nowarn - - # grab the first SAPI that got built and install common files from there - local first_sapi="" - for sapi in $SAPIS ; do - if use $sapi ; then - first_sapi=$sapi - break - fi - done - - # Makefile forgets to create this before trying to write to it... - dodir "${PHP_DESTDIR#${EPREFIX}}/bin" - - # Install php environment (without any sapis) - cd "${WORKDIR}/sapis-build/$first_sapi" || die - emake INSTALL_ROOT="${D}" \ - install-build install-headers install-programs - - local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)" - - # Create the directory where we'll put version-specific php scripts - keepdir "/usr/share/php${PHP_MV}" - - local sapi="", file="" - local sapi_list="" - - for sapi in ${SAPIS}; do - if use "${sapi}" ; then - einfo "Installing SAPI: ${sapi}" - cd "${WORKDIR}/sapis-build/${sapi}" || die - - if [[ "${sapi}" == "apache2" ]] ; then - # We're specifically not using emake install-sapi as libtool - # may cause unnecessary relink failures (see bug #351266) - insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/" - newins ".libs/libphp5$(get_libname)" \ - "libphp${PHP_MV}$(get_libname)" - keepdir "/usr/$(get_libdir)/apache2/modules" - else - # needed each time, php_install_ini would reset it - local dest="${PHP_DESTDIR#${EPREFIX}}" - into "${dest}" - case "$sapi" in - cli) - source="sapi/cli/php" - ;; - cgi) - source="sapi/cgi/php-cgi" - ;; - fpm) - source="sapi/fpm/php-fpm" - ;; - embed) - source="libs/libphp${PHP_MV}$(get_libname)" - ;; - *) - die "unhandled sapi in src_install" - ;; - esac - - if [[ "${source}" == *"$(get_libname)" ]]; then - dolib.so "${source}" - else - dobin "${source}" - local name="$(basename ${source})" - dosym "${dest}/bin/${name}" "/usr/bin/${name}${SLOT}" - fi - fi - - php_install_ini "${sapi}" - - # construct correct SAPI string for php-config - # thanks to ferringb for the bash voodoo - if [[ "${sapi}" == "apache2" ]]; then - sapi_list="${sapi_list:+${sapi_list} }apache2handler" - else - sapi_list="${sapi_list:+${sapi_list} }${sapi}" - fi - fi - done - - # Installing opcache module - if use opcache ; then - into "${PHP_DESTDIR#${EPREFIX}}" - dolib.so "modules/opcache$(get_libname)" - fi - - # Install env.d files - newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}" - sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die - sed -e "s|php5|php${SLOT}|g" -i "${ED}/etc/env.d/20php${SLOT}" || die - - # set php-config variable correctly (bug #278439) - sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \ - "${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" || die - - if use fpm ; then - if use systemd; then - systemd_newunit "${FILESDIR}/php-fpm_at.service" \ - "php-fpm@${SLOT}.service" - else - systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \ - "php-fpm@${SLOT}.service" - fi - fi -} - -src_test() { - echo ">>> Test phase [test]: ${CATEGORY}/${PF}" - PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php" - if [[ ! -x "${PHP_BIN}" ]] ; then - ewarn "Test phase requires USE=cli, skipping" - return - else - export TEST_PHP_EXECUTABLE="${PHP_BIN}" - fi - - if [[ -x "${WORKDIR}/sapis/cgi/php-cgi" ]] ; then - export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis/cgi/php-cgi" - fi - - REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d \ - "session.save_path=${T}" \ - "${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d \ - "session.save_path=${T}" - - for name in ${EXPECTED_TEST_FAILURES}; do - mv "${name}.out" "${name}.out.orig" 2>/dev/null || die - done - - local failed="$(find -name '*.out')" - if [[ ${failed} != "" ]] ; then - ewarn "The following test cases failed unexpectedly:" - for name in ${failed}; do - ewarn " ${name/.out/}" - done - else - einfo "No unexpected test failures, all fine" - fi - - if [[ ${PHP_SHOW_UNEXPECTED_TEST_PASS} == "1" ]] ; then - local passed="" - for name in ${EXPECTED_TEST_FAILURES}; do - [[ -f "${name}.diff" ]] && continue - passed="${passed} ${name}" - done - if [[ ${passed} != "" ]] ; then - einfo "The following test cases passed unexpectedly:" - for name in ${passed}; do - ewarn " ${passed}" - done - else - einfo "None of the known-to-fail tests passed, all fine" - fi - fi -} - -pkg_postinst() { - # Output some general info to the user - if use apache2 ; then - elog - elog "To enable PHP in apache, you will need to add \"-D PHP\" to" - elog "your apache2 command. OpenRC users can append that string to" - elog "APACHE2_OPTS in /etc/conf.d/apache2." - elog - elog "The apache module configuration file 70_mod_php.conf is" - elog "provided (and maintained) by eselect-php." - elog - fi - - # Create the symlinks for php - for m in ${SAPIS}; do - [[ ${m} == 'embed' ]] && continue; - if use $m ; then - local ci=$(eselect php show $m) - if [[ -z $ci ]]; then - eselect php set $m php${SLOT} || die - einfo "Switched ${m} to use php:${SLOT}" - einfo - elif [[ $ci != "php${SLOT}" ]] ; then - elog "To switch $m to use php:${SLOT}, run" - elog " eselect php set $m php${SLOT}" - elog - fi - fi - done - - # Remove dead symlinks for SAPIs that were just disabled. For - # example, if the user has the cgi SAPI enabled, then he has an - # eselect-php symlink for it. If he later reinstalls PHP with - # USE="-cgi", that symlink will break. This call to eselect is - # supposed to remove that dead link per bug 572436. - eselect php cleanup || die - - if ! has "php${SLOT/./-}" ${PHP_TARGETS}; then - elog "To build extensions for this version of PHP, you will need to" - elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable." - elog - fi - - # Warn about the removal of PHP_INI_VERSION if the user has it set. - if [[ -n "${PHP_INI_VERSION}" ]]; then - ewarn 'The PHP_INI_VERSION variable has been phased out. You may' - ewarn 'remove it from your configuration at your convenience. See' - ewarn - ewarn ' https://bugs.gentoo.org/611214' - ewarn - ewarn 'for more information.' - fi - - elog "For details on how version slotting works, please see" - elog "the wiki:" - elog - elog " https://wiki.gentoo.org/wiki/PHP" - elog -} - -pkg_postrm() { - # This serves two purposes. First, if we have just removed the last - # installed version of PHP, then this will remove any dead symlinks - # belonging to eselect-php. Second, if a user upgrades slots from - # (say) 5.6 to 7.0 and depcleans the old slot, then this will update - # his existing symlinks to point to the new 7.0 installation. The - # latter is bug 432962. - # - # Note: the eselect-php package may not be installed at this point, - # so we can't die() if this command fails. - eselect php cleanup -} diff --git a/dev-lang/php/php-5.6.40.ebuild b/dev-lang/php/php-5.6.40.ebuild index 2a5e9be903fb..ac0a58099215 100644 --- a/dev-lang/php/php-5.6.40.ebuild +++ b/dev-lang/php/php-5.6.40.ebuild @@ -19,7 +19,7 @@ LICENSE="PHP-3.01 unicode? ( BSD-2 LGPL-2.1 )" SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" +KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" # We can build the following SAPIs in the given order SAPIS="embed cli cgi fpm apache2" diff --git a/dev-lang/php/php-7.1.26.ebuild b/dev-lang/php/php-7.1.26.ebuild index a3cdb5149ecb..f2f6ac2f3eb6 100644 --- a/dev-lang/php/php-7.1.26.ebuild +++ b/dev-lang/php/php-7.1.26.ebuild @@ -18,7 +18,7 @@ LICENSE="PHP-3.01 unicode? ( BSD-2 LGPL-2.1 )" SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" +KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" # We can build the following SAPIs in the given order SAPIS="embed cli cgi fpm apache2 phpdbg" diff --git a/dev-lang/php/php-7.2.14.ebuild b/dev-lang/php/php-7.2.14.ebuild index 06f175016ac6..a79f254b8029 100644 --- a/dev-lang/php/php-7.2.14.ebuild +++ b/dev-lang/php/php-7.2.14.ebuild @@ -18,7 +18,7 @@ LICENSE="PHP-3.01 unicode? ( BSD-2 LGPL-2.1 )" SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" +KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" # We can build the following SAPIs in the given order SAPIS="embed cli cgi fpm apache2 phpdbg" diff --git a/dev-lang/php/php-7.2.10.ebuild b/dev-lang/php/php-7.2.15.ebuild index 7d83e1171df3..e76e0e56e784 100644 --- a/dev-lang/php/php-7.2.10.ebuild +++ b/dev-lang/php/php-7.2.15.ebuild @@ -1,13 +1,13 @@ -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 -inherit flag-o-matic eapi7-ver systemd +inherit flag-o-matic systemd autotools DESCRIPTION="The PHP language runtime engine" HOMEPAGE="https://secure.php.net/" -SRC_URI="https://secure.php.net/distributions/${P}.tar.xz" +SRC_URI="https://php.net/distributions/${P}.tar.xz" LICENSE="PHP-3.01 BSD @@ -18,7 +18,7 @@ LICENSE="PHP-3.01 unicode? ( BSD-2 LGPL-2.1 )" SLOT="$(ver_cut 1-2)" -KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" # We can build the following SAPIs in the given order SAPIS="embed cli cgi fpm apache2 phpdbg" @@ -60,7 +60,7 @@ COMMON_DEPEND=" cdb? ( || ( dev-db/cdb dev-db/tinycdb ) ) coverage? ( dev-util/lcov ) curl? ( >=net-misc/curl-7.10.5 ) - enchant? ( app-text/enchant ) + enchant? ( <app-text/enchant-2.0:0 ) firebird? ( dev-db/firebird ) gd? ( virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib ) gdbm? ( >=sys-libs/gdbm-1.8.0:0= ) @@ -152,6 +152,8 @@ REQUIRED_USE=" " PATCHES=( "${FILESDIR}/php-freetype-2.9.1.patch" + "${FILESDIR}/php-7.1.25-intl-detect-icu-via-pkg-config.patch" + "${FILESDIR}/php-7.2.13-intl-use-icu-namespace.patch" ) PHP_MV="$(ver_cut 1)" @@ -224,6 +226,11 @@ src_prepare() { sed -i "s~^include=.*$~include=${PHP_INI_DIR}/fpm.d/*.conf~" \ sapi/fpm/php-fpm.conf.in \ || die 'failed to move the include directory in php-fpm.conf' + + # Bug 669566 - necessary so that build tools are updated for commands like pecl + # Force rebuilding aclocal.m4 + rm -f aclocal.m4 || die "failed to remove aclocal.m4 in src_prepare" + eautoreconf } src_configure() { diff --git a/dev-lang/php/php-7.1.22.ebuild b/dev-lang/php/php-7.3.2.ebuild index ec1d9318de48..1b24d9164c0d 100644 --- a/dev-lang/php/php-7.1.22.ebuild +++ b/dev-lang/php/php-7.3.2.ebuild @@ -1,10 +1,11 @@ -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=6 -inherit flag-o-matic eapi7-ver systemd +inherit flag-o-matic eapi7-ver systemd autotools +MY_PV=${PV/_rc/RC} DESCRIPTION="The PHP language runtime engine" HOMEPAGE="https://secure.php.net/" SRC_URI="https://secure.php.net/distributions/${P}.tar.xz" @@ -18,7 +19,9 @@ LICENSE="PHP-3.01 unicode? ( BSD-2 LGPL-2.1 )" SLOT="$(ver_cut 1-2)" -KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" + +S="${WORKDIR}/${PN}-${MY_PV}" # We can build the following SAPIs in the given order SAPIS="embed cli cgi fpm apache2 phpdbg" @@ -28,27 +31,28 @@ IUSE="${IUSE} ${SAPIS/cli/+cli} threads" -IUSE="${IUSE} acl bcmath berkdb bzip2 calendar cdb cjk - coverage crypt +ctype curl debug +IUSE="${IUSE} acl argon2 bcmath berkdb bzip2 calendar cdb cjk + coverage +ctype curl debug enchant exif +fileinfo +filter firebird flatfile ftp gd gdbm gmp +hash +iconv imap inifile - intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit libressl + intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit libressl lmdb mhash mssql mysql mysqli nls oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm readline recode selinux +session session-mm sharedmem - +simplexml snmp soap sockets spell sqlite ssl - sysvipc systemd test tidy +tokenizer truetype unicode wddx webp - +xml xmlreader xmlwriter xmlrpc xpm xslt zip zlib" + +simplexml snmp soap sockets sodium spell sqlite ssl + sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode wddx webp + +xml xmlreader xmlwriter xmlrpc xpm xslt zip zip-encryption zlib" # The supported (that is, autodetected) versions of BDB are listed in # the ./configure script. Other versions *work*, but we need to stick to # the ones that can be detected to avoid a repeat of bug #564824. COMMON_DEPEND=" >=app-eselect/eselect-php-0.9.1[apache2?,fpm?] - >=dev-libs/libpcre-8.32[unicode] + >=dev-libs/libpcre2-10.30[unicode] fpm? ( acl? ( sys-apps/acl ) ) apache2? ( || ( >=www-servers/apache-2.4[apache2_modules_unixd,threads=] <www-servers/apache-2.4[threads=] ) ) + argon2? ( app-crypt/argon2:= ) berkdb? ( || ( sys-libs/db:5.3 sys-libs/db:5.1 sys-libs/db:4.8 @@ -58,11 +62,10 @@ COMMON_DEPEND=" bzip2? ( app-arch/bzip2:0= ) cdb? ( || ( dev-db/cdb dev-db/tinycdb ) ) coverage? ( dev-util/lcov ) - crypt? ( >=dev-libs/libmcrypt-2.4 ) curl? ( >=net-misc/curl-7.10.5 ) - enchant? ( app-text/enchant ) + enchant? ( <app-text/enchant-2.0:0 ) firebird? ( dev-db/firebird ) - gd? ( virtual/jpeg:0 media-libs/libpng:0= sys-libs/zlib ) + gd? ( virtual/jpeg:0 media-libs/libpng:0= >=sys-libs/zlib-1.2.0.4 ) gdbm? ( >=sys-libs/gdbm-1.8.0:0= ) gmp? ( dev-libs/gmp:0= ) iconv? ( virtual/libiconv ) @@ -73,6 +76,7 @@ COMMON_DEPEND=" ldap? ( >=net-nds/openldap-1.2.11 ) ldap-sasl? ( dev-libs/cyrus-sasl >=net-nds/openldap-1.2.11 ) libedit? ( || ( sys-freebsd/freebsd-lib dev-libs/libedit ) ) + lmdb? ( dev-db/lmdb:= ) mssql? ( dev-db/freetds[mssql] ) nls? ( sys-devel/gettext ) oci8-instant-client? ( dev-db/oracle-instantclient-basic ) @@ -85,13 +89,15 @@ COMMON_DEPEND=" simplexml? ( >=dev-libs/libxml2-2.6.8 ) snmp? ( >=net-analyzer/net-snmp-5.2 ) soap? ( >=dev-libs/libxml2-2.6.8 ) + sodium? ( dev-libs/libsodium:= ) spell? ( >=app-text/aspell-0.50 ) sqlite? ( >=dev-db/sqlite-3.7.6.3 ) ssl? ( - !libressl? ( dev-libs/openssl:0= ) + !libressl? ( >=dev-libs/openssl-1.0.1:0= ) libressl? ( dev-libs/libressl:0= ) ) tidy? ( || ( app-text/tidy-html5 app-text/htmltidy ) ) + tokyocabinet? ( dev-db/tokyocabinet ) truetype? ( =media-libs/freetype-2* ) unicode? ( dev-libs/oniguruma:= ) wddx? ( >=dev-libs/libxml2-2.6.8 ) @@ -102,8 +108,9 @@ COMMON_DEPEND=" xmlwriter? ( >=dev-libs/libxml2-2.6.8 ) xpm? ( x11-libs/libXpm ) xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 ) - zip? ( sys-libs/zlib:0= ) - zlib? ( sys-libs/zlib:0= ) + zip? ( >=sys-libs/zlib-1.2.0.4:0= ) + zip-encryption? ( >=dev-libs/libzip-1.2.0:= ) + zlib? ( >=sys-libs/zlib-1.2.0.4:0= ) " RDEPEND="${COMMON_DEPEND} @@ -142,11 +149,12 @@ REQUIRED_USE=" readline? ( !libedit ) recode? ( !imap !mysqli !mysql ) session-mm? ( session !threads ) - mysql? ( hash || ( mysqli pdo ) ) - mysqli? ( hash ) + mysql? ( || ( mysqli pdo ) ) + zip-encryption? ( zip ) " PATCHES=( "${FILESDIR}/php-freetype-2.9.1.patch" + "${FILESDIR}/php-7.3.2-fix-iptcembed-bug77546.patch" ) PHP_MV="$(ver_cut 1)" @@ -219,6 +227,11 @@ src_prepare() { sed -i "s~^include=.*$~include=${PHP_INI_DIR}/fpm.d/*.conf~" \ sapi/fpm/php-fpm.conf.in \ || die 'failed to move the include directory in php-fpm.conf' + + # Bug 669566 - necessary so that build tools are updated for commands like pecl + # Force rebuilding aclocal.m4 + rm -f aclocal.m4 || die "failed to remove aclocal.m4 in src_prepare" + eautoreconf } src_configure() { @@ -241,6 +254,7 @@ src_configure() { ) our_conf+=( + $(use_with argon2 password-argon2 "${EPREFIX}/usr") $(use_enable bcmath bcmath) $(use_with bzip2 bz2 "${EPREFIX}/usr") $(use_enable calendar calendar) @@ -266,7 +280,6 @@ src_configure() { $(use_enable xml libxml) $(use_with xml libxml-dir "${EPREFIX}/usr") $(use_enable unicode mbstring) - $(use_with crypt mcrypt "${EPREFIX}/usr") $(use_with unicode onig "${EPREFIX}/usr") $(use_with ssl openssl "${EPREFIX}/usr") $(use_with ssl openssl-dir "${EPREFIX}/usr") @@ -283,6 +296,7 @@ src_configure() { $(use_with snmp snmp "${EPREFIX}/usr") $(use_enable soap soap) $(use_enable sockets sockets) + $(use_with sodium sodium "${EPREFIX}/usr") $(use_with sqlite sqlite3 "${EPREFIX}/usr") $(use_enable sysvipc sysvmsg) $(use_enable sysvipc sysvsem) @@ -296,13 +310,14 @@ src_configure() { $(use_with xmlrpc xmlrpc) $(use_with xslt xsl "${EPREFIX}/usr") $(use_enable zip zip) + $(use_with zip-encryption libzip "${EPREFIX}/usr") $(use_with zlib zlib "${EPREFIX}/usr") $(use_enable debug debug) ) # DBA support if use cdb || use berkdb || use flatfile || use gdbm || use inifile \ - || use qdbm ; then + || use qdbm || use lmdb || use tokyocabinet ; then our_conf+=( "--enable-dba${shared}" ) fi @@ -314,6 +329,7 @@ src_configure() { $(use_with gdbm gdbm "${EPREFIX}/usr") $(use_enable inifile inifile) $(use_with qdbm qdbm "${EPREFIX}/usr") + $(use_with lmdb lmdb "${EPREFIX}/usr") ) # Support for the GD graphics library @@ -401,9 +417,13 @@ src_configure() { # we use the system copy of pcre # --with-pcre-regex affects ext/pcre # --with-pcre-dir affects ext/filter and ext/zip + # --with-pcre-valgrind cannot be enabled with system pcre + # Many arches don't support pcre-jit our_conf+=( --with-pcre-regex="${EPREFIX}/usr" --with-pcre-dir="${EPREFIX}/usr" + --without-pcre-valgrind + --without-pcre-jit ) # Catch CFLAGS problems diff --git a/dev-lang/python/Manifest b/dev-lang/python/Manifest index 58ba4df8948d..36cf6d9b13f0 100644 --- a/dev-lang/python/Manifest +++ b/dev-lang/python/Manifest @@ -1,11 +1,9 @@ -AUX 2.7-disable-nis.patch 823 BLAKE2B eccd1ceb7e7e66848e1c7520ae9c5f2f57a27203a542ba0e3a5abf850dea31b6169e3f7ea425b5cf101d8f79c98cb74529db3ba87db1045203eba38bb4625e7f SHA512 42b1a2790f2b4bfcf89d8451de54e83979826a16ef77c32c6f17b9903613bd8f76a138be975bb05e0e7785244155107f229cba479ce08891d36ae3e01e5be501 AUX 3.4-getentropy-linux.patch 1766 BLAKE2B b0999a96833f2b6db936f0c97f8405c8b6eb2fcf926f4c4c41590d903435c1435be21795ea1d44355f5c2e3a745b1528bf04cfda362372a12f796fd1bb51629a SHA512 52e888819b3c265e0920efa00911311a2029a6a80162ca56e69892ffc49c28487852882b27e560b9f8ff1c16ee41d074423b6c565596b37c6efca2dd8eb45675 AUX 3.6-blake2.patch 1335 BLAKE2B af3acdee3c789199fab8a2eb0140ff7a470f2873db506163d2e81117e1efed2c245d629f13a49d313a63af98200d5dad5f3d5bcc3e43e66af5bb0e39778faa55 SHA512 f8f9b4424df36f58354c24b7eb571c63a7bb49a1d2fd5399562ab28371eb3a80ed829c7e4fc19f5b3d9955a83a46d09a63819e4da0dafdef0a5a3f6b1e679d71 AUX 3.6-disable-nis.patch 864 BLAKE2B a960b2f44ff1358677ebb0cf82bcff1ddc7812ed511d0f492fdac07c848f0de8dbd0e8a9200b276709532b5524eed9e779b33d6c4ee34c1f9d23e4eb1f862d99 SHA512 a86a17c90743e8a3712ceaf14ea1a88b96bd5504a4feaadc0168f3211c2afbc130fad8147a40d7ac65268ff1d6293b0c3f98ad36845efebeacfc628149ef13f3 AUX 3.6.5-disable-nis.patch 297 BLAKE2B 86ca3e6b9aa1bcd9af55ea5f1ad835b60154d23339bf9d02404a5c50b774c556f482138f35d005c9a96b95b6fd9be94ac634164d0b8d173c15fbf841163cabba SHA512 e0a31d256c70159dcbd362ff35b7561c94087851514637bd2b26b6a1b3199309f81eb82305adec7f8d01118dd0856c5228863319ced1e275fbf6f4932034e855 AUX pydoc.conf 169 BLAKE2B ce40bb3d5f858bd7a8d9ef5bf215a8ab592568a724f0e08aea219da014dac12fdfcbcf5fb168bb9aa57be110f74d656aed46179ffe11e3c992d84a647e442b7b SHA512 30d0776a4004cd641e6f283658c3c24915a21ea15fe40e506ff2c3a5f95936aa00c9490b04ab25f29e9b7ac65cd88fd54ca0b08e000e73820b13c7c57c0bf5b2 AUX pydoc.init 600 BLAKE2B fb8775a6663483e5112ec283627610b746020d88494e772b92bb718a9493a52606e565c6c2fa4917a5cb963f166283d09883bd26903f2f3ced6c240d4e292a7f SHA512 9e71ad53486b6882a8441b24225c602195ee33d29dd1b60df27febbc6b752e79929be356152a489f893dcfb11f9c066b999787bc27a8ac61062c86e67a69e87a -AUX python-2.7-libressl-compatibility.patch 2783 BLAKE2B 44c13d121291c1f660a2fd2edbbaafb4861896503423e9a85d506aea3c416de238a5a1ff08a6065cb4cd2498e456fb3646186dbd3472fbb37058b6ebfd47ad0f SHA512 d258b28d3d9d87e11148b16d3e2f8d378c95897b630f5132058654ee031045f4a0dcc7f11dfb43a8deeac2723e6c1ae88e55db1b4eaad019e1d3b9fa47ea2991 AUX python-2.7.10-cross-compile-warn-test.patch 775 BLAKE2B 617938353c7e19a9b931544ff1fdcd60cf46e3a68f3ff63bc6ac16432220aad13df4d2b405a968505fb64d31da51a478c46499944ab58e9bbfa5a5b44d392f00 SHA512 652941239541f6139ee3580ec0ea5240baf07ae1afb786f76a69b1d748de1f4dda2740a95c28866e9b0b59023410f8a1e86507642595991c0d90d187519cb758 AUX python-2.7.10-system-libffi.patch 1232 BLAKE2B 3483385cbbf7ef2304cf109d05b5e1d58ec2b9015b614c996c66a9917ab10703865b40c775d7ff89a6fa80e9c8c9600292d8d916e9753027e9e0b23b0548ccff SHA512 3c888638180edc81b98a869478085de63741668ea62bdb919a60708fd64cb394e60f44a3730e2ccf3e41d1d61b72b469242fe2ccd20dc61bc2064b3e759c52bd AUX python-2.7.5-nonfatal-compileall.patch 750 BLAKE2B a7999a6c5a706fbab213cd8a01c6df9b130537556d59bf50b1f5ca223bb9dcd24ccfef48e70e5d3a8afe2b9c6236e1ada87d5899052a2b39f05c4644697953e2 SHA512 d2e93e2a6fcd55d516df0ddaca31af97faed677ea6b4be282eb99e7864f8a7399b5ca11139844a4b3c264832183483b0f4c8c9865c05de0e8520e6d2c8f1dbc6 diff --git a/dev-lang/python/files/2.7-disable-nis.patch b/dev-lang/python/files/2.7-disable-nis.patch deleted file mode 100644 index 5a6cb3e403f1..000000000000 --- a/dev-lang/python/files/2.7-disable-nis.patch +++ /dev/null @@ -1,21 +0,0 @@ ---- a/setup.py -+++ b/setup.py -@@ -1346,17 +1346,7 @@ class PyBuildExt(build_ext): - else: - missing.append('resource') - -- # Sun yellow pages. Some systems have the functions in libc. -- if (host_platform not in ['cygwin', 'atheos', 'qnx6'] and -- find_file('rpcsvc/yp_prot.h', inc_dirs, []) is not None): -- if (self.compiler.find_library_file(lib_dirs, 'nsl')): -- libs = ['nsl'] -- else: -- libs = [] -- exts.append( Extension('nis', ['nismodule.c'], -- libraries = libs) ) -- else: -- missing.append('nis') -+ missing.append('nis') - else: - missing.extend(['nis', 'resource', 'termios']) - diff --git a/dev-lang/python/files/python-2.7-libressl-compatibility.patch b/dev-lang/python/files/python-2.7-libressl-compatibility.patch deleted file mode 100644 index c9e7a8458e35..000000000000 --- a/dev-lang/python/files/python-2.7-libressl-compatibility.patch +++ /dev/null @@ -1,92 +0,0 @@ -# From https://github.com/python/cpython/pull/6215 - -# LibreSSL 2.7 introduced OpenSSL 1.1.0 API. The ssl module now detects -# LibreSSL 2.7 and only provides API shims for OpenSSL < 1.1.0 and -# LibreSSL < 2.7. - -# Documentation updates and fixes for failing tests will be provided in -# another patch set. - -# Signed-off-by: Christian Heimes christian@python.org. -# (cherry picked from commit 4ca0739) - -#Co-authored-by: Christian Heimes christian@python.org - ---- a/Modules/_ssl.c 2017-09-16 17:38:35.000000000 +0000 -+++ b/Modules/_ssl.c 2018-04-13 15:55:10.919424126 +0000 -@@ -97,6 +102,12 @@ - - #if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER) - # define OPENSSL_VERSION_1_1 1 -+# define PY_OPENSSL_1_1_API 1 -+#endif -+ -+/* LibreSSL 2.7.0 provides necessary OpenSSL 1.1.0 APIs */ -+#if defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER >= 0x2070000fL -+# define PY_OPENSSL_1_1_API 1 - #endif - - /* Openssl comes with TLSv1.1 and TLSv1.2 between 1.0.0h and 1.0.1 -@@ -118,24 +129,44 @@ - #endif - - /* ALPN added in OpenSSL 1.0.2 */ --#if !defined(LIBRESSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x1000200fL && !defined(OPENSSL_NO_TLSEXT) --# define HAVE_ALPN -+#ifdef TLSEXT_TYPE_application_layer_protocol_negotiation -+# define HAVE_ALPN 1 -+#else -+# define HAVE_ALPN 0 -+#endif -+ -+/* We cannot rely on OPENSSL_NO_NEXTPROTONEG because LibreSSL 2.6.1 dropped -+ * NPN support but did not set OPENSSL_NO_NEXTPROTONEG for compatibility -+ * reasons. The check for TLSEXT_TYPE_next_proto_neg works with -+ * OpenSSL 1.0.1+ and LibreSSL. -+ * OpenSSL 1.1.1-pre1 dropped NPN but still has TLSEXT_TYPE_next_proto_neg. -+ */ -+#ifdef OPENSSL_NO_NEXTPROTONEG -+# define HAVE_NPN 0 -+#elif (OPENSSL_VERSION_NUMBER >= 0x10101000L) && !defined(LIBRESSL_VERSION_NUMBER) -+# define HAVE_NPN 0 -+#elif defined(TLSEXT_TYPE_next_proto_neg) -+# define HAVE_NPN 1 -+#else -+# define HAVE_NPN 0 - #endif - - #ifndef INVALID_SOCKET /* MS defines this */ - #define INVALID_SOCKET (-1) - #endif - --#ifdef OPENSSL_VERSION_1_1 --/* OpenSSL 1.1.0+ */ --#ifndef OPENSSL_NO_SSL2 --#define OPENSSL_NO_SSL2 --#endif --#else /* OpenSSL < 1.1.0 */ --#if defined(WITH_THREAD) -+/* OpenSSL 1.0.2 and LibreSSL needs extra code for locking */ -+#if !defined(OPENSSL_VERSION_1_1) && defined(WITH_THREAD) - #define HAVE_OPENSSL_CRYPTO_LOCK - #endif - -+#if defined(OPENSSL_VERSION_1_1) && !defined(OPENSSL_NO_SSL2) -+#define OPENSSL_NO_SSL2 -+#endif -+ -+#ifndef PY_OPENSSL_1_1_API -+/* OpenSSL 1.1 API shims for OpenSSL < 1.1.0 and LibreSSL < 2.7.0 */ -+ - #define TLS_method SSLv23_method - - static int X509_NAME_ENTRY_set(const X509_NAME_ENTRY *ne) -@@ -178,7 +209,7 @@ - { - return store->param; - } --#endif /* OpenSSL < 1.1.0 or LibreSSL */ -+#endif /* OpenSSL < 1.1.0 or LibreSSL < 2.7.0 */ - - - enum py_ssl_error { diff --git a/dev-lang/rust/Manifest b/dev-lang/rust/Manifest index d0919c6b0b07..90b785956f37 100644 --- a/dev-lang/rust/Manifest +++ b/dev-lang/rust/Manifest @@ -1,5 +1,6 @@ AUX 1.29.2-clippy-sysroot.patch 2571 BLAKE2B 1f65355cf47fb1ee2bd15f7424b6bf98106028fa46a8f89ab639acdc3a131684898dcda42abd6d5d7bc09c857990dcea86467b3c96e8e6d47b90726d9176a221 SHA512 2577c7540be9a197343bc06b5de52ba42832cbb2799997bb9778e6e392a421cfe6bce9ce48793d60af7a8f3e0ade0c79e0adbfc1125fbcd89b01e97ab96b8d30 AUX 1.30.1-clippy-sysroot.patch 2870 BLAKE2B 84f6c52fc8f757b509655852810d52c7aef50c7a5678e746d525e41888c50995d23f030373e4c37d829ed794d1890f380bc944eae601b97957d2b35d733b5d6b SHA512 8b2601e7699d3a1b004ac5559add37eb939332aacf136b9b6397f314dbcbe9015f1ff5ac906e80a4a913b0cdf4f5410d779721b136ecbe1a4af8380668bb7765 +AUX 1.32.0-fix-configure-of-bundled-llvm.patch 1481 BLAKE2B b340b8d1986b0f4dd6c983927c6af4ccc3a730054041e9b61db19c0adfd726714a99f7000eda21a33ea209daa3371abb0022c6f085e0faeee42156c86f8ffbdd SHA512 72fd31fb6e893d1ceb994ab47693243a330a80bd071e6dfe7fb01a20419b68c6b2818cd9c41b68615d7dd4d6a48bac131d7c6de02c3e99c57526cef616947d73 AUX 1.32.0-system-llvm-7-SIGSEGV.patch 1521 BLAKE2B d5595ffdba23e41ea299605968f7e7407e8bf5d764b1c0c4f1934185012dff1b857c1c41c0f80b08bc21921a6cad24bc046ed9282c238593db7b13bdb27c443c SHA512 9ac1da18e6f67cf4918b529a72b8deda6bdfe4e6a5439a858f31da3e07d48983221bffa7bdaacb32f6285af95690f88fa5783f7c333cbb65fc2b807e5b3ea8f8 DIST rust-1.28.0-aarch64-unknown-linux-gnu.tar.xz 98937652 BLAKE2B 836d3dd4e583fa50dd317c3bea56257e6ea19defdb38c16be6debb2854e147c8a92c4832263e4ac314136022a176526fe7d3774a3c5a84cd8d364cd2a1532860 SHA512 8d9acbc90ddaa1e0de0234a21798b19b5365ea371a12f9a143c6ebacbb48f57344da6e827e867513be502bce2801de27a0dbbacdf8618c653aeb58026b6c469c DIST rust-1.28.0-arm-unknown-linux-gnueabi.tar.xz 104676648 BLAKE2B b26b23c3605e6584c51e0e914dbb3be60996e079e52ff2d4850ed43c1f1f7cd5ac575b40dbe852f927d36654f5ab7e384548f3a92b3466bfbb1cda7f9f069bcb SHA512 a1eaf1d7826ebfe222d233cabd8b88073ca2c8dd42a0b870e324dfc63e7290308418222c56802bc421c9bda119dc7c5f3e225ff33cacad5776b79cbcc1a877b2 @@ -62,5 +63,5 @@ EBUILD rust-1.29.1-r1.ebuild 8003 BLAKE2B f6f026fd27037603c83b0b68f5cc202d118322 EBUILD rust-1.29.2-r1.ebuild 7535 BLAKE2B 91d1465b4a5265d019b7cfeeb6b7154e5bce0b83f3d4b36449457875df55823b2319803a68ea59724c6703962471b489af76b773063dbccce84768ae52d61ef9 SHA512 69827d7fd22cfc8fbcdf2885af62c1c9468a8d6afa982fba34435b40430151467fda0715258cb4e3b8db9a861a921dacf5fcd7bd34c3474846516e067fc71931 EBUILD rust-1.30.1-r1.ebuild 8124 BLAKE2B 100ca5a5738c134f1da904761ba96be0f3077bd3478f17de31782d53d1f3917f6c39926ba57758f34d074aca8853fda10691d329865860ab7b3106913a2de6cd SHA512 543eeeb1d91ff60a66b9bfa736b14f6438a89d9008515bb9269f806dda9f41b1a658c1d7d831c2280a3a258736990a27778957580becb2c64e9fe82b2589abc2 EBUILD rust-1.31.1.ebuild 8125 BLAKE2B c9bac19284931f296c89b1fa050485c2a31b78eb8052197c55e82f4e97821c6b2413ef7733b710b8a71e761a0582305f3b355ce02c0214bf53d907984714240a SHA512 13eae6dfdac268902331ffd50697e28f3a7dae0852429c55ef0fbcd87c2ce8277b84aa31fbf37f3cc42ed6278fdaede0e0cf45decfe05b0cdc489c1746428ea7 -EBUILD rust-1.32.0.ebuild 8093 BLAKE2B 3e16048c3e572a5d2435ac0d6444b7b3e2966998d241f75c43440d47da252b91254187869a15937e6254d18d52da10c88ac0460a7576aeb31448ce22d0035866 SHA512 da63b7ce64ef09116ee5dad60c8f90b715fb3c26d4faf53f7287415f7244bc5b2e0919035fe960d19b5b1443501ba52f594a78776eeed432510055e91d3c8775 +EBUILD rust-1.32.0.ebuild 8151 BLAKE2B 9944a7cc68082228065d756172de916a77604be68b1d044daaae956f2c766cfcb834159769661ca693177005d6a21f9e36db9d286d3eedc1bb5a4377b3f1fbee SHA512 d7b63d6d7e6ce4e8f7c5fa1359a12012545120644a8ecb6c0d12e70cde68eaa6ddc31d3c58507221d3418cb61bdb4010d7ebe36665b64867145b361295d990ea MISC metadata.xml 634 BLAKE2B 394e75b1b5b5d9fad1d87dca27d7807bfce9eb723bc339dbb7c0630dc5abd3669e9469a9e75da74925d16d63c78971b0e7c84710db9b2cd15e87d81f49968903 SHA512 9e02acc0ad17e2f502c6082b5df9aeb6b9655783892a85d67855b3f6a79ec36dca610170bb002116c354626d44282c4e35e30cdf6b5e49745cfc6a990f55731c diff --git a/dev-lang/rust/files/1.32.0-fix-configure-of-bundled-llvm.patch b/dev-lang/rust/files/1.32.0-fix-configure-of-bundled-llvm.patch new file mode 100644 index 000000000000..eaeab87774eb --- /dev/null +++ b/dev-lang/rust/files/1.32.0-fix-configure-of-bundled-llvm.patch @@ -0,0 +1,32 @@ +Revert "[CMake] Unconditionally add .h and .td files to target sources" + +This reverts commit https://github.com/llvm-mirror/llvm/commit/6fb010f388bb2cb2f00fe039123092308ac4865d. + +Bug: https://bugs.gentoo.org/675752#c7 +--- a/src/llvm/cmake/modules/LLVMProcessSources.cmake ++++ b/src/llvm/cmake/modules/LLVMProcessSources.cmake +@@ -52,15 +52,16 @@ function(llvm_process_sources OUT_VAR) + cmake_parse_arguments(ARG "" "" "ADDITIONAL_HEADERS;ADDITIONAL_HEADER_DIRS" ${ARGN}) + set(sources ${ARG_UNPARSED_ARGUMENTS}) + llvm_check_source_file_list( ${sources} ) +- +- # This adds .td and .h files to the Visual Studio solution: +- add_td_sources(sources) +- find_all_header_files(hdrs "${ARG_ADDITIONAL_HEADER_DIRS}") +- if (hdrs) +- set_source_files_properties(${hdrs} PROPERTIES HEADER_FILE_ONLY ON) ++ if( LLVM_ENABLE_IDE ) ++ # This adds .td and .h files to the Visual Studio solution: ++ add_td_sources(sources) ++ find_all_header_files(hdrs "${ARG_ADDITIONAL_HEADER_DIRS}") ++ if (hdrs) ++ set_source_files_properties(${hdrs} PROPERTIES HEADER_FILE_ONLY ON) ++ endif() ++ set_source_files_properties(${ARG_ADDITIONAL_HEADERS} PROPERTIES HEADER_FILE_ONLY ON) ++ list(APPEND sources ${ARG_ADDITIONAL_HEADERS} ${hdrs}) + endif() +- set_source_files_properties(${ARG_ADDITIONAL_HEADERS} PROPERTIES HEADER_FILE_ONLY ON) +- list(APPEND sources ${ARG_ADDITIONAL_HEADERS} ${hdrs}) + + set( ${OUT_VAR} ${sources} PARENT_SCOPE ) + endfunction(llvm_process_sources) diff --git a/dev-lang/rust/rust-1.32.0.ebuild b/dev-lang/rust/rust-1.32.0.ebuild index ea00024950f2..bc2a6106b8ad 100644 --- a/dev-lang/rust/rust-1.32.0.ebuild +++ b/dev-lang/rust/rust-1.32.0.ebuild @@ -63,6 +63,7 @@ S="${WORKDIR}/${MY_P}-src" PATCHES=( "${FILESDIR}"/1.30.1-clippy-sysroot.patch + "${FILESDIR}"/1.32.0-fix-configure-of-bundled-llvm.patch "${FILESDIR}"/1.32.0-system-llvm-7-SIGSEGV.patch ) diff --git a/dev-lang/swi-prolog/Manifest b/dev-lang/swi-prolog/Manifest index 2ebb9113e815..7d0cf78ec10b 100644 --- a/dev-lang/swi-prolog/Manifest +++ b/dev-lang/swi-prolog/Manifest @@ -6,12 +6,16 @@ DIST swipl-7.6.4.tar.gz 16777875 BLAKE2B 94409966362e649f4748b94b4ec25415bb827c7 DIST swipl-7.7.24.tar.gz 10433121 BLAKE2B 25efe95c11000fa19ff66ff52ecede8d4fb24c99a4405e1e16313e66947d61f64d572ec1d54017542ea9999258115f647a77a9d7871495b47d6ab3873c2d3f61 SHA512 24c2ffbe7ef9906451490f4b7cfec6afa969a59d265479b659e4287e30c4d00aa977cf55dbe81e560812f517b1270657a360bd917f94660ff2a05fb52efa4cbf DIST swipl-7.7.25.tar.gz 10381235 BLAKE2B 97fa29a863142c2b275c6c08b89d6f5cb734f35a4d1dc0e69e52e3c55c72c3433abf2d46eaa18ccb633d25d74b1bb083e2c6ccf6ede6a8f3bfb97eb5f9524f6a SHA512 a53a6affe93f2a52f03ebb1202837298a8f671f5eaa6d1a79cab3fc7c8034818fe65863b49e6d6fdb5473ef1b5bebab2af0aed80c92761280366fe119982a10a DIST swipl-8.0.0.tar.gz 10352830 BLAKE2B f5ce1c5d0d48b4904a09b16c0b84b3a0c7385d087aeaa5fb1d673014e10a82e89d477ffb193a37f5b1a8db70cc46b8531cb2358ee8927f8f46b7321edc9c6754 SHA512 1a569793c5cbc7c02a81f94ad73f29459bf085d01162b74b1b72c2a52090d882ae0aee0de6363d143c3fac20f2bbb0e74c2f035d3f3114395048fb4a8073ed5a +DIST swipl-8.0.1.tar.gz 10364104 BLAKE2B 638ce216c361fe0a85d691989894c113714511628cb305ac990a60cc376a3c5d4f373461e0f2ee66df9954913c6fe7c45d4ef2660dd6fed5bca9339c692a9882 SHA512 40ffb9ecf213ae49b397e5a37d6fb90b83fc353a8408662e193e289c87de9e851427f6523061f067050b258ddad1ded157caf8124149c0335203b9bf08e7baf6 DIST swipl-8.1.0.tar.gz 10353486 BLAKE2B 421bf72b3a1d269d009da99e65b655a21fd100ecee27f98668a65b491bc0befaa6900c0771c685a5a9b8063a973bdc268410660b51cf808d245ca7ce7cc75f4d SHA512 84c92df24054de33bffd535009c0dc6b6dfd734aeb3bb64b99c80e580961f5305e3acae19ab9d24b1fc34c9e1d71b4dfe14b903d5581d110280edd8386e23a3a +DIST swipl-8.1.1.tar.gz 10378521 BLAKE2B 5753ecb40c7e1877bc369ced28b3e0d13a3ecc1c48a5fe7e8f5bf45a83da1ae7c6ad600c46145c387b0858f38c7868918d972c90ed1f6c0f8bd98f9683098942 SHA512 eeb1a2521e62bfbb64ab3f570d08523acd7587566d91fc821b1683c6f09e7dddcf0d65a26ad18e209f9283ab714b75cccd83201c5b71df042f34c573fd0aa403 EBUILD swi-prolog-7.4.2.ebuild 3398 BLAKE2B 368ef93ceb17042a28699f9aa469e6b5c39aa29154b810e43fd050ab3bc1079f83680cfac8f4108c7c297a51e9bdd28357a0b6241c08faef3ea5f81ab1605558 SHA512 76d094f62e442ac86d32eaf467179fdcf4d4edf6034f711104e91f8a01b7e343208ef0b6e492ed18c8c0605b96a48f1adef8f3903f861c716e882cb9695b0dd2 EBUILD swi-prolog-7.6.3.ebuild 3395 BLAKE2B 6445c399d7a7518bcd4ce05b9ea0bf50c7d0297d5a24d9ef84a48c36600077cea8c8b77b010d28e25dfe0766e12d1f560f42e5597a602f6bdfc7351ea6e0fa62 SHA512 830766267d3e4b60897dfcdab5263cee600ccfa2cd80f970ef3b4c3695cc3ddf9989ae85527f45cdf124898210f108a98a32a613de2543a8db813d42482b0687 EBUILD swi-prolog-7.6.4.ebuild 3456 BLAKE2B 55d9eb2b52f47dc7fd5df9f2743775e7aabd4f070d93e31f51b038f278604909f1f48dbb4cbd12ba96614f8619923712c465d424eb224874ba158f1670d615d5 SHA512 cf64a47e39b21557915fcd6e88ac5bb01fc56bb26afebf81dedaa087ac12a3c5952383a55594dbe22de8885c6a3afd47858963a4c0c68f705be20045a518d12d EBUILD swi-prolog-7.7.24.ebuild 2427 BLAKE2B 71e2150b40422e03dbc34fa9d37e59b8cb568359a583ca4948d33aeddbcc4c52b9085f58c2cd397bb488d2cccc5155246bde8415db6393bbe62093a0a49d8698 SHA512 7151cddf87753b74e68ee7c02d9cfbf92a988d0457a58e60b6956db28e41bdd9585964a1ef188a79fb9d60a9d44c14a2324a1651784041dfbf41570098b52d66 EBUILD swi-prolog-7.7.25.ebuild 2427 BLAKE2B 71e2150b40422e03dbc34fa9d37e59b8cb568359a583ca4948d33aeddbcc4c52b9085f58c2cd397bb488d2cccc5155246bde8415db6393bbe62093a0a49d8698 SHA512 7151cddf87753b74e68ee7c02d9cfbf92a988d0457a58e60b6956db28e41bdd9585964a1ef188a79fb9d60a9d44c14a2324a1651784041dfbf41570098b52d66 EBUILD swi-prolog-8.0.0.ebuild 2466 BLAKE2B 801f8b9c6e3f9d5140cdbdad9bf6932dc3bc73f8f9fa95c6007e65bdb883b14fe800e63a4de610da01cd32cb8ceb8567ebebaf53b347aa0241905892011de925 SHA512 7f59cf9a185c20e2386d2c806650d024836fbe65da66af5ac07e3d5f3912ceb71fd39dcbd943fa56c4fb9117c17d4ae6d3c28fcf158b046e6abc4a1a43f29e7f +EBUILD swi-prolog-8.0.1.ebuild 2466 BLAKE2B 801f8b9c6e3f9d5140cdbdad9bf6932dc3bc73f8f9fa95c6007e65bdb883b14fe800e63a4de610da01cd32cb8ceb8567ebebaf53b347aa0241905892011de925 SHA512 7f59cf9a185c20e2386d2c806650d024836fbe65da66af5ac07e3d5f3912ceb71fd39dcbd943fa56c4fb9117c17d4ae6d3c28fcf158b046e6abc4a1a43f29e7f EBUILD swi-prolog-8.1.0.ebuild 2465 BLAKE2B 1fa3a76348cca7b520023a84db9d9b2beeb07ecdea1a289a47d7eb52f0b3d06f99c1e2355136ce20809c885dbb698c609f02e76f393859c043bd4998f4b5a4a9 SHA512 38405b19366bf1c35ea8dccfd28e64c7525091053f7dd919ecc0ff7a3748b7f0bab6a1a09d88b32d83928a207ebb925df9686c527b306b4d967469d42f665954 +EBUILD swi-prolog-8.1.1.ebuild 2465 BLAKE2B 1fa3a76348cca7b520023a84db9d9b2beeb07ecdea1a289a47d7eb52f0b3d06f99c1e2355136ce20809c885dbb698c609f02e76f393859c043bd4998f4b5a4a9 SHA512 38405b19366bf1c35ea8dccfd28e64c7525091053f7dd919ecc0ff7a3748b7f0bab6a1a09d88b32d83928a207ebb925df9686c527b306b4d967469d42f665954 MISC metadata.xml 419 BLAKE2B 6d92e0713ed8da803ff8b6c778e616882af2fdb1426a62ea7bb6a265bbfff9a5c7debb8bf6a25c4ab60ed54a865b79fa3da4a09bc8a9123acf63dcb32107f54e SHA512 f805393c909e4108fe72b94f131d37d45279af1a4b501f9c3ae12d21590ef9c19227ca2a4b2966239ddb84847ce979cfbfcf3f3a2d24b60cb23977c522ff59c3 diff --git a/dev-lang/swi-prolog/swi-prolog-8.0.1.ebuild b/dev-lang/swi-prolog/swi-prolog-8.0.1.ebuild new file mode 100644 index 000000000000..e290240e32c9 --- /dev/null +++ b/dev-lang/swi-prolog/swi-prolog-8.0.1.ebuild @@ -0,0 +1,99 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit cmake-utils eutils flag-o-matic multilib + +PATCHSET_VER="0" + +DESCRIPTION="versatile implementation of the Prolog programming language" +HOMEPAGE="http://www.swi-prolog.org/" +SRC_URI="http://www.swi-prolog.org/download/stable/src/swipl-${PV}.tar.gz" + +LICENSE="BSD-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos" +IUSE="archive berkdb debug doc +gmp java +libedit libressl minimal odbc pcre qt5 readline ssl test uuid X yaml" + +RDEPEND="sys-libs/ncurses:= + sys-libs/zlib + archive? ( app-arch/libarchive ) + berkdb? ( >=sys-libs/db-4:= ) + odbc? ( dev-db/unixODBC ) + pcre? ( dev-libs/libpcre ) + readline? ( sys-libs/readline:= ) + libedit? ( dev-libs/libedit ) + gmp? ( dev-libs/gmp:0 ) + ssl? ( + !libressl? ( dev-libs/openssl:0 ) + libressl? ( dev-libs/libressl ) + ) + java? ( >=virtual/jdk-1.7:= ) + uuid? ( dev-libs/ossp-uuid ) + qt5? ( + dev-qt/qtwidgets:5 + dev-qt/qtgui:5 + ) + X? ( + virtual/jpeg:0 + x11-libs/libX11 + x11-libs/libXft + x11-libs/libXinerama + x11-libs/libXpm + x11-libs/libXt + x11-libs/libICE + x11-libs/libSM ) + yaml? ( dev-libs/libyaml )" + +DEPEND="${RDEPEND} + X? ( x11-base/xorg-proto ) + java? ( test? ( =dev-java/junit-3.8* ) )" + +S="${WORKDIR}/swipl-${PV}" +BUILD_DIR="${S}/build" +CMAKE_USE_DIR="${S}" + +src_prepare() { + EPATCH_FORCE=yes + EPATCH_SUFFIX=patch + if [[ -d "${WORKDIR}"/${PV} ]] ; then + epatch "${WORKDIR}"/${PV} + fi + + sed -i -e "s|\(SWIPL_INSTALL_PREFIX\) lib/.*)|\1 $(get_libdir)/swipl)|" CMakeLists.txt || die + + eapply_user + + cmake-utils_src_prepare +} + +src_configure() { + append-flags -fno-strict-aliasing + use debug && append-flags -DO_DEBUG + + mycmakeargs=( + -DSWIPL_INSTALL_PREFIX=$(get_libdir)/swipl + -DUSE_GMP=$(usex gmp) + -DINSTALL_DOCUMENTATION=$(use doc && usex archive) + -DSWIPL_PACKAGES_BASIC=$(usex !minimal) + -DSWIPL_PACKAGES_ARCHIVE=$(usex archive) + -DSWIPL_PACKAGES_ODBC=$(usex odbc) + -DSWIPL_PACKAGES_BDB=$(usex berkdb) + -DSWIPL_PACKAGES_PCRE=$(usex pcre) + -DSWIPL_PACKAGES_YAML=$(usex yaml) + -DSWIPL_PACKAGES_SSL=$(usex ssl) + -DSWIPL_PACKAGES_JAVA=$(usex java) + -DSWIPL_PACKAGES_QT=$(usex qt5) + -DSWIPL_PACKAGES_X=$(usex X) + -DSWIPL_PACKAGES_TERM=$(if use libedit || use readline; then echo yes; else echo no; fi) + ) + + cmake-utils_src_configure +} + +src_test() { + USE_PUBLIC_NETWORK_TESTS=false \ + USE_ODBC_TESTS=false \ + cmake-utils_src_test -V +} diff --git a/dev-lang/swi-prolog/swi-prolog-8.1.1.ebuild b/dev-lang/swi-prolog/swi-prolog-8.1.1.ebuild new file mode 100644 index 000000000000..b986aa50d899 --- /dev/null +++ b/dev-lang/swi-prolog/swi-prolog-8.1.1.ebuild @@ -0,0 +1,99 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit cmake-utils eutils flag-o-matic multilib + +PATCHSET_VER="0" + +DESCRIPTION="versatile implementation of the Prolog programming language" +HOMEPAGE="http://www.swi-prolog.org/" +SRC_URI="http://www.swi-prolog.org/download/devel/src/swipl-${PV}.tar.gz" + +LICENSE="BSD-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos" +IUSE="archive berkdb debug doc +gmp java +libedit libressl minimal odbc pcre qt5 readline ssl test uuid X yaml" + +RDEPEND="sys-libs/ncurses:= + sys-libs/zlib + archive? ( app-arch/libarchive ) + berkdb? ( >=sys-libs/db-4:= ) + odbc? ( dev-db/unixODBC ) + pcre? ( dev-libs/libpcre ) + readline? ( sys-libs/readline:= ) + libedit? ( dev-libs/libedit ) + gmp? ( dev-libs/gmp:0 ) + ssl? ( + !libressl? ( dev-libs/openssl:0 ) + libressl? ( dev-libs/libressl ) + ) + java? ( >=virtual/jdk-1.7:= ) + uuid? ( dev-libs/ossp-uuid ) + qt5? ( + dev-qt/qtwidgets:5 + dev-qt/qtgui:5 + ) + X? ( + virtual/jpeg:0 + x11-libs/libX11 + x11-libs/libXft + x11-libs/libXinerama + x11-libs/libXpm + x11-libs/libXt + x11-libs/libICE + x11-libs/libSM ) + yaml? ( dev-libs/libyaml )" + +DEPEND="${RDEPEND} + X? ( x11-base/xorg-proto ) + java? ( test? ( =dev-java/junit-3.8* ) )" + +S="${WORKDIR}/swipl-${PV}" +BUILD_DIR="${S}/build" +CMAKE_USE_DIR="${S}" + +src_prepare() { + EPATCH_FORCE=yes + EPATCH_SUFFIX=patch + if [[ -d "${WORKDIR}"/${PV} ]] ; then + epatch "${WORKDIR}"/${PV} + fi + + sed -i -e "s|\(SWIPL_INSTALL_PREFIX\) lib/.*)|\1 $(get_libdir)/swipl)|" CMakeLists.txt || die + + eapply_user + + cmake-utils_src_prepare +} + +src_configure() { + append-flags -fno-strict-aliasing + use debug && append-flags -DO_DEBUG + + mycmakeargs=( + -DSWIPL_INSTALL_PREFIX=$(get_libdir)/swipl + -DUSE_GMP=$(usex gmp) + -DINSTALL_DOCUMENTATION=$(use doc && usex archive) + -DSWIPL_PACKAGES_BASIC=$(usex !minimal) + -DSWIPL_PACKAGES_ARCHIVE=$(usex archive) + -DSWIPL_PACKAGES_ODBC=$(usex odbc) + -DSWIPL_PACKAGES_BDB=$(usex berkdb) + -DSWIPL_PACKAGES_PCRE=$(usex pcre) + -DSWIPL_PACKAGES_YAML=$(usex yaml) + -DSWIPL_PACKAGES_SSL=$(usex ssl) + -DSWIPL_PACKAGES_JAVA=$(usex java) + -DSWIPL_PACKAGES_QT=$(usex qt5) + -DSWIPL_PACKAGES_X=$(usex X) + -DSWIPL_PACKAGES_TERM=$(if use libedit || use readline; then echo yes; else echo no; fi) + ) + + cmake-utils_src_configure +} + +src_test() { + USE_PUBLIC_NETWORK_TESTS=false \ + USE_ODBC_TESTS=false \ + cmake-utils_src_test -V +} diff --git a/dev-lang/xsb/Manifest b/dev-lang/xsb/Manifest index 6764f0fa6528..f83b9eec2d8b 100644 --- a/dev-lang/xsb/Manifest +++ b/dev-lang/xsb/Manifest @@ -2,6 +2,7 @@ DIST XSB360.tar.gz 12842882 BLAKE2B 734d17a05eb9cb79906a98a77a6562a9445603a88452 DIST XSB370.tar.gz 12322913 BLAKE2B 64db80704ce656bfaa402d161a94c7b1cd3119a363e848b2c7768665df580b25f1fc43b49b381960d9049d947590b7eb3c846c1a2d6b8a1233d8eb2c4de04f7e SHA512 e2c11b0e5fbbffc2fb6d493e39b7dd74de43509ea1c844f1b3e5d1002c116d6fb8b245905b7b512499e40765a6603d4bef883052bdeec4a3078011c305f85a9f DIST xsb-3.6.0-gentoo-patchset-4.tar.gz 7513 BLAKE2B cf846dc94e0f1194f5da381b888f4ce6476a4e861cb23e6dca87b0cd2c0ea24c4290ea080432d2c5440f7350cf0862c7fc34e303a8dfe824e2e3e06f29aa4815 SHA512 bb7ba7836fa2df7a54fd2837b4cb760f7ae0e9511bc0a4b2be8cba89ed4aeedda6712937a4748bd9e9ee16366d442fd962a121dbf83017e2199eb3a287efb1d5 DIST xsb-3.7.0-gentoo-patchset-3.tar.gz 5636 BLAKE2B f7b66131d3f02fd75e8b6019f8e64cb6f531155116364da432df41a8f7b3ba2b8d300f7b64bbcae7a755478c6aeb637b36457b491998c88457a96b64e5ecb46e SHA512 bee6d62b900c9ee3a373dfa0ad7362b18c748bb9e0559a878534ed517067d753e1fa79277b0588133a1eeceafcd56b4dcc9ff81892309f6c6666150baaaaf047 +EBUILD xsb-3.6.0-r1.ebuild 3719 BLAKE2B 3f9ad681420e551346f3d75172e5a1c1bafce0a232d3c5fe2eca73e2c39ed01e82768bac93b6ca79712fe362a9f4c48c4a44daf3461d0aa1a0658a521bd89494 SHA512 52d15ea7b41a1dfca4b12a559a90ba0dab170eb40ec9ac7f6f4cc290396ecb4276b85866fef9dc5fefe20b680a5f282193e876bf1f08ff713d29fbe31064b5d2 EBUILD xsb-3.6.0.ebuild 4198 BLAKE2B b4c03a359d2255d3eb6443fd53aea2ae4d7c5f4852110a49fde079e510dea4d5d618bc1a1a2006fbd8c715b9658bb9d8ee3e28d79b3c79e4d2148437c674a5cf SHA512 2c6bb4e577457fa658a63b15b6930bd512d38a5250d4725aa9ac2e0446a7e55ea69d6d96c1d71415615fb818796979bc1d19fd17a662b76b89d8e429572c2755 -EBUILD xsb-3.7.0.ebuild 4244 BLAKE2B 1bfee1b2d088cedda1e70e2c633e68ed99c92ae8461740844c129a57cf14fc4bab58de06098bb7d212078cbb8424d295fd2b46f19442f81c54c4b42d98f21078 SHA512 c414b73a696e2677dffcfb70ef69d18d1b66a7bda214091a16214f30b2d3a0759bef3503a73995b5b8fcad1804fd12f2cbbeac14dc8385beb4da532d67e90fd2 +EBUILD xsb-3.7.0-r1.ebuild 3662 BLAKE2B 51219153887a0702feac12dae98ef326a65ec524a32395ec55576c3c1c1ba08031d068b268bf787863b1d2961a82ee15610d4d6dbdf1aa83a0b442c44a604c28 SHA512 146fc16485c95f4b4bcd7ee8735edec39ee76347b9f6b5b8d7690e545ebdfcac141b3cb1ee08067597f815fde6c3c4deee0faffc8e99431a253ab10802420010 MISC metadata.xml 313 BLAKE2B e6feaeb68ae7144def50a0dff4671b3a9ff070be4d447d45e5b8fbab61940026a5ea9d13c54fb21a808ed67630debf2f55e44d9186e83ea094b26dccab3bf1e6 SHA512 e271dc66bb407abe43ebc5b1fc27c318cc8082b4b14f43f1c33f3453e4a248c83ba2fcc73ba32a63828e172093a00b507f81c629d022799c4cd5a14417fc5ef0 diff --git a/dev-lang/xsb/xsb-3.6.0-r1.ebuild b/dev-lang/xsb/xsb-3.6.0-r1.ebuild new file mode 100644 index 000000000000..b33ce06c15cd --- /dev/null +++ b/dev-lang/xsb/xsb-3.6.0-r1.ebuild @@ -0,0 +1,199 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +MY_P="XSB${PV//./}" + +PATCHSET_VER="4" + +inherit autotools java-pkg-opt-2 + +DESCRIPTION="XSB is a logic programming and deductive database system" +HOMEPAGE="http://xsb.sourceforge.net" +SRC_URI="http://xsb.sourceforge.net/downloads/${MY_P}.tar.gz + mirror://gentoo/${P}-gentoo-patchset-${PATCHSET_VER}.tar.gz" + +LICENSE="GPL-2 LGPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="curl debug iodbc java mysql odbc pcre threads xml" + +RDEPEND="curl? ( net-misc/curl ) + iodbc? ( dev-db/libiodbc ) + java? ( >=virtual/jdk-1.4:= ) + mysql? ( dev-db/mysql-connector-c:0= ) + odbc? ( dev-db/unixODBC ) + pcre? ( dev-libs/libpcre ) + xml? ( dev-libs/libxml2 )" + +DEPEND="${RDEPEND}" + +S="${WORKDIR}"/XSB + +PATCHES=( "${WORKDIR}/${PV}" ) + +src_prepare() { + default + cd "${S}"/build + eautoconf +} + +src_configure() { + cd "${S}"/build + + econf \ + --prefix=/usr/$(get_libdir) \ + --disable-optimization \ + --without-smodels \ + $(use_with odbc) \ + $(use_with iodbc) \ + $(use_enable threads mt) \ + $(use_enable debug) + + if use curl ; then + cd "${S}"/packages/curl + econf + fi + + if use mysql ; then + cd "${S}"/packages/dbdrivers/mysql + econf --with-mysql-libdir=$(mysql_config --variable=pkglibdir) + fi + + if use odbc ; then + cd "${S}"/packages/dbdrivers/odbc + econf + fi + + if use pcre ; then + cd "${S}"/packages/pcre + econf + fi + + if use xml ; then + cd "${S}"/packages/xpath + econf + fi +} + +src_compile() { + cd "${S}"/build + + default + + # All XSB Packages are compiled using a single Prolog engine. + # Consequently they must all be compiled using a single make job. + + cd "${S}"/packages + rm -f *.xwam + emake -j1 + + if use curl ; then + emake -j1 curl + emake -j1 sgml + if use xml ; then + emake -j1 xpath + fi + fi + + if use mysql ; then + emake -j1 mysql + fi + + if use odbc ; then + emake -j1 odbc + fi + + if use pcre ; then + emake -j1 pcre + fi +} + +src_install() { + cd "${S}"/build + default + + local XSB_INSTALL_DIR=/usr/$(get_libdir)/xsb-${PV} + dosym ${XSB_INSTALL_DIR}/bin/xsb /usr/bin/xsb + + cd "${S}"/packages + local PACKAGES=${XSB_INSTALL_DIR}/packages + insinto ${PACKAGES} + doins *.xwam + + insinto ${PACKAGES}/chr + doins chr/*.xwam + + insinto ${PACKAGES}/clpqr + doins clpqr/*.xwam + + insinto ${PACKAGES}/gap + doins gap/*.xwam + + insinto ${PACKAGES}/justify + doins justify/*.xwam + doins justify/*.H + + insinto ${PACKAGES}/regmatch + doins regmatch/*.xwam + insinto ${PACKAGES}/regmatch/cc + doins regmatch/cc/*.H + + insinto ${PACKAGES}/slx + doins slx/*.xwam + + insinto ${PACKAGES}/wildmatch + doins wildmatch/*.xwam + insinto ${PACKAGES}/wildmatch/cc + doins wildmatch/cc/*.H + + if use curl ; then + insinto ${PACKAGES}/curl + doins curl/*.xwam + insinto ${PACKAGES}/curl/cc + doins curl/cc/*.H + insinto ${PACKAGES}/sgml + doins sgml/*.xwam + insinto ${PACKAGES}/sgml/cc + doins sgml/cc/*.H + insinto ${PACKAGES}/sgml/cc/dtd + doins sgml/cc/dtd/* + if use xml ; then + insinto ${PACKAGES}/xpath + doins xpath/*xwam + insinto ${PACKAGES}/xpath/cc + doins xpath/cc/*.H + fi + fi + + if use mysql || use odbc ; then + insinto ${PACKAGES}/dbdrivers + doins dbdrivers/*.xwam + doins dbdrivers/*.H + insinto ${PACKAGES}/dbdrivers/cc + doins dbdrivers/cc/*.H + if use mysql ; then + insinto ${PACKAGES}/dbdrivers/mysql + doins dbdrivers/mysql/*.xwam + insinto ${PACKAGES}/dbdrivers/mysql/cc + doins dbdrivers/mysql/cc/*.H + fi + if use odbc ; then + insinto ${PACKAGES}/dbdrivers/odbc + doins dbdrivers/odbc/*.xwam + insinto ${PACKAGES}/dbdrivers/odbc/cc + doins dbdrivers/odbc/cc/*.H + fi + fi + + if use pcre ; then + insinto ${PACKAGES}/pcre + doins pcre/*.xwam + insinto ${PACKAGES}/pcre/cc + doins pcre/cc/*.H + fi + + cd "${S}" + dodoc FAQ README +} diff --git a/dev-lang/xsb/xsb-3.7.0.ebuild b/dev-lang/xsb/xsb-3.7.0-r1.ebuild index 8bd4db509d01..983c93a7be46 100644 --- a/dev-lang/xsb/xsb-3.7.0.ebuild +++ b/dev-lang/xsb/xsb-3.7.0-r1.ebuild @@ -1,13 +1,13 @@ -# Copyright 1999-2017 Gentoo Foundation +# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=5 +EAPI=6 MY_P="XSB${PV//./}" PATCHSET_VER="3" -inherit eutils autotools java-pkg-opt-2 +inherit autotools java-pkg-opt-2 DESCRIPTION="XSB is a logic programming and deductive database system" HOMEPAGE="http://xsb.sourceforge.net" @@ -22,7 +22,7 @@ IUSE="curl debug iodbc java mysql odbc pcre threads xml" RDEPEND="curl? ( net-misc/curl ) iodbc? ( dev-db/libiodbc ) java? ( >=virtual/jdk-1.4:= ) - mysql? ( virtual/mysql ) + mysql? ( dev-db/mysql-connector-c:0= ) odbc? ( dev-db/unixODBC ) pcre? ( dev-libs/libpcre ) xml? ( dev-libs/libxml2 )" @@ -31,13 +31,10 @@ DEPEND="${RDEPEND}" S="${WORKDIR}"/XSB -src_prepare() { - EPATCH_FORCE=yes - EPATCH_SUFFIX=patch - if [[ -d "${WORKDIR}"/${PV} ]] ; then - epatch "${WORKDIR}"/${PV} - fi +PATCHES=( "${WORKDIR}/${PV}" ) +src_prepare() { + default cd "${S}"/build eautoconf } @@ -83,120 +80,120 @@ src_configure() { src_compile() { cd "${S}"/build - emake || die "emake failed" + default # All XSB Packages are compiled using a single Prolog engine. # Consequently they must all be compiled using a single make job. cd "${S}"/packages rm -f *.xwam - emake -j1 || die "emake packages failed" + emake -j1 if use curl ; then - emake -j1 curl || die "emake curl package failed" - emake -j1 sgml || die "emake sgml package failed" + emake -j1 curl + emake -j1 sgml if use xml ; then - emake -j1 xpath || die "emake xpath package failed" + emake -j1 xpath fi fi if use mysql ; then - emake -j1 mysql || die "emake mysql package failed" + emake -j1 mysql fi if use odbc ; then - emake -j1 odbc || die "emake odbc package failed" + emake -j1 odbc fi if use pcre ; then - emake -j1 pcre || die "emake pcre package failed" + emake -j1 pcre fi } src_install() { cd "${S}"/build - emake DESTDIR="${D}" install || die "make install failed" + default local XSB_INSTALL_DIR=/usr/$(get_libdir)/xsb-${PV} - dosym ${XSB_INSTALL_DIR}/bin/xsb /usr/bin/xsb || die + dosym ${XSB_INSTALL_DIR}/bin/xsb /usr/bin/xsb cd "${S}"/packages local PACKAGES=${XSB_INSTALL_DIR}/packages insinto ${PACKAGES} - doins *.xwam || die + doins *.xwam insinto ${PACKAGES}/chr - doins chr/*.xwam || die + doins chr/*.xwam insinto ${PACKAGES}/clpqr - doins clpqr/*.xwam || die + doins clpqr/*.xwam insinto ${PACKAGES}/gap - doins gap/*.xwam || die + doins gap/*.xwam insinto ${PACKAGES}/justify - doins justify/*.xwam || die - doins justify/*.H || die + doins justify/*.xwam + doins justify/*.H insinto ${PACKAGES}/regmatch - doins regmatch/*.xwam || die + doins regmatch/*.xwam insinto ${PACKAGES}/regmatch/cc - doins regmatch/cc/*.H || die + doins regmatch/cc/*.H insinto ${PACKAGES}/slx - doins slx/*.xwam || die + doins slx/*.xwam insinto ${PACKAGES}/wildmatch - doins wildmatch/*.xwam || die + doins wildmatch/*.xwam insinto ${PACKAGES}/wildmatch/cc - doins wildmatch/cc/*.H || die + doins wildmatch/cc/*.H if use curl ; then insinto ${PACKAGES}/curl - doins curl/*.xwam || die + doins curl/*.xwam insinto ${PACKAGES}/curl/cc - doins curl/cc/*.H || die + doins curl/cc/*.H insinto ${PACKAGES}/sgml - doins sgml/*.xwam || die + doins sgml/*.xwam insinto ${PACKAGES}/sgml/cc - doins sgml/cc/*.H || die + doins sgml/cc/*.H insinto ${PACKAGES}/sgml/cc/dtd - doins sgml/cc/dtd/* || die + doins sgml/cc/dtd/* if use xml ; then insinto ${PACKAGES}/xpath - doins xpath/*xwam || die + doins xpath/*xwam insinto ${PACKAGES}/xpath/cc - doins xpath/cc/*.H || die + doins xpath/cc/*.H fi fi if use mysql || use odbc ; then insinto ${PACKAGES}/dbdrivers - doins dbdrivers/*.xwam || die - doins dbdrivers/*.H || die + doins dbdrivers/*.xwam + doins dbdrivers/*.H insinto ${PACKAGES}/dbdrivers/cc - doins dbdrivers/cc/*.H || die + doins dbdrivers/cc/*.H if use mysql ; then insinto ${PACKAGES}/dbdrivers/mysql - doins dbdrivers/mysql/*.xwam || die + doins dbdrivers/mysql/*.xwam insinto ${PACKAGES}/dbdrivers/mysql/cc - doins dbdrivers/mysql/cc/*.H || die + doins dbdrivers/mysql/cc/*.H fi if use odbc ; then insinto ${PACKAGES}/dbdrivers/odbc - doins dbdrivers/odbc/*.xwam || die + doins dbdrivers/odbc/*.xwam insinto ${PACKAGES}/dbdrivers/odbc/cc - doins dbdrivers/odbc/cc/*.H || die + doins dbdrivers/odbc/cc/*.H fi fi if use pcre ; then insinto ${PACKAGES}/pcre - doins pcre/*.xwam || die + doins pcre/*.xwam insinto ${PACKAGES}/pcre/cc - doins pcre/cc/*.H || die + doins pcre/cc/*.H fi cd "${S}" - dodoc FAQ README || die + dodoc FAQ README } diff --git a/dev-lang/yap/Manifest b/dev-lang/yap/Manifest index 237796812042..708cca58f774 100644 --- a/dev-lang/yap/Manifest +++ b/dev-lang/yap/Manifest @@ -1,4 +1,5 @@ DIST yap-6.3.3-gentoo-patchset-11.tar.gz 6021 BLAKE2B d83682de9a6f095482db66f4fd5bb562739121b8502464d92fb784c634bfbfc020ae3ec55641aaeb8c0d52ce5534f7888bdd7d3d556f68c749b2f0ee35860764 SHA512 d9645a6f5c2b633fb5b61f8b6219ac69ae28e4f53f149fcdbb161cb7a8226aecab64f831a19e73876eb5056bb9efc3501fe792b6dca418a2a56b058ec658a2db DIST yap-6.3.3.tar.gz 7879301 BLAKE2B 1b12a3113dd57634df64680726fd49575979b84126a7a9e1f4d1429be90e1b95599166151ffe62c9ef990ac3c32f57a1efae081b864fc22225c93d21807f412b SHA512 4ef45277ec84b6e072fa54afc7d6c18f11c3a0cdf477e35e35a0ce2181c9ff2e693f8735f63a1899373f6baf79ce0a972b37e1ae6ed8271bec60663f477bbe80 +EBUILD yap-6.3.3-r1.ebuild 2857 BLAKE2B 5412e16a8b26b285aa7698138219650ad8a3ab4ba7d2f384d4e9204930ca2e9b273722a5122df8570f7c24f9cdd595f28945ebb87b952fad23e6463b613bfdff SHA512 408ff3711cf15b5a25a7e9115c884cc13c6b79053345fc1b769fde00a26e0ee1877ef9368b35100af354a17b863073efe54c793b4e36ca49d4341e251867a7f8 EBUILD yap-6.3.3.ebuild 2869 BLAKE2B 755423834f09ec5d57b0e568a3fbc8c3639eacf8ac3db2d3048a73685af7c7cc3b8caf0628d31436e9045e6828c21de18f984662ee94eec1ee4bc586579e885b SHA512 68d0234ff375d36bd8b90c2b3375285684146f1b61b16c1a2ae7ba4a0e957f197cb357634be75395dd11f8ef43f6526e0300e0ed53da800faccc1688f32bbd23 MISC metadata.xml 314 BLAKE2B af1c9bedbf26431e7a624c520a4c93ca9eff16f2539741b01ccf5da16c710c82d3820e3ad647a36a4629dc7b316a18c1b1306314200843e1d4d6b95c8c829442 SHA512 c5bd279aec3b80e6c08dfaa85cf091cbfcbf9380f1e5a8a0fcd6f27297368b92906340ae9dfd5176f37d36e4fb61ca772448c0248121d8e302c181bf670e57bc diff --git a/dev-lang/yap/yap-6.3.3-r1.ebuild b/dev-lang/yap/yap-6.3.3-r1.ebuild new file mode 100644 index 000000000000..fd653ef29268 --- /dev/null +++ b/dev-lang/yap/yap-6.3.3-r1.ebuild @@ -0,0 +1,124 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit flag-o-matic java-pkg-opt-2 + +PATCHSET_VER="11" + +DESCRIPTION="YAP is a high-performance Prolog compiler" +HOMEPAGE="http://www.dcc.fc.up.pt/~vsc/Yap/" +SRC_URI="http://www.dcc.fc.up.pt/~vsc/Yap/${P}.tar.gz + mirror://gentoo/${P}-gentoo-patchset-${PATCHSET_VER}.tar.gz" + +LICENSE="Artistic LGPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="R debug doc examples gmp java mpi mysql odbc readline static threads" + +RDEPEND="sys-libs/zlib + gmp? ( dev-libs/gmp:0 ) + java? ( >=virtual/jdk-1.4:= ) + mpi? ( virtual/mpi ) + mysql? ( dev-db/mysql-connector-c:0= ) + odbc? ( dev-db/unixODBC ) + readline? ( sys-libs/readline:= sys-libs/ncurses:= ) + R? ( dev-lang/R )" + +DEPEND="${RDEPEND} + doc? ( app-text/texi2html )" + +PATCHES=( "${WORKDIR}"/${PV} ) + +src_prepare() { + default + rm -rf "${S}"/yap || die "failed to remove yap xcode project" + + # Fix QA error on doc location + local mFile + for mFile in Makefile.in packages/Dialect.defs.in \ + $(find packages -name Makefile.in) ; do + sed -i -e "s~doc/Yap~doc/${PF}~" "${mFile}" || die + done +} + +src_configure() { + append-flags -fno-strict-aliasing + + local myddas_conf + if use mysql || use odbc; then + myddas_conf="--enable-myddas" + else + myddas_conf="--disable-myddas" + fi + if use mysql; then + myddas_conf="$myddas_conf yap_with_mysql=yes" + fi + if use odbc; then + myddas_conf="$myddas_conf yap_with_odbc=yes" + fi + + econf \ + --libdir=/usr/$(get_libdir) \ + --disable-prism \ + --disable-gecode \ + $(use_enable !static dynamic-loading) \ + $(use_enable threads) \ + $(use_enable threads pthread-locking) \ + $(use_enable debug debug-yap) \ + $(use_enable debug low-level-tracer) \ + $(use_with gmp) \ + $(use_with readline) \ + $(use_with mpi) \ + $(use_with mpi mpe) \ + $(use_with java) \ + $(use_with R) \ + ${myddas_conf} +} + +src_compile() { + default + + if use doc ; then + emake html + fi +} + +src_test() { + # libtai package contains check.c which confuses the default + # src_test() function + true +} + +src_install() { + default + + dodoc changes*.html README + + if use doc ; then + dodoc yap.html + fi + + if use examples ; then + insinto /usr/share/doc/${PF}/examples/chr + doins packages/chr/Examples/* + insinto /usr/share/doc/${PF}/examples/clib + doins packages/clib/demo/* + insinto /usr/share/doc/${PF}/examples/http + doins -r packages/http/examples/* + insinto /usr/share/doc/${PF}/examples/plunit + doins packages/plunit/examples/* + if use java ; then + insinto /usr/share/doc/${PF}/examples/jpl/prolog + doins packages/jpl/examples/prolog/* + insinto /usr/share/doc/${PF}/examples/jpl/java + doins packages/jpl/examples/java/README + doins -r packages/jpl/examples/java/*/*.{java,pl} + fi + if use mpi ; then + insinto /usr/share/doc/${PF}/examples/mpi + doins library/mpi/examples/*.pl + fi + fi +} |