diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2020-08-25 10:45:55 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2020-08-25 10:45:55 +0100 |
commit | 3cf7c3ef441822c889356fd1812ebf2944a59851 (patch) | |
tree | c513fe68548b40365c1c2ebfe35c58ad431cdd77 /dev-lang | |
parent | 05b8b0e0af1d72e51a3ee61522941bf7605cd01c (diff) |
gentoo resync : 25.08.2020
Diffstat (limited to 'dev-lang')
182 files changed, 8996 insertions, 6674 deletions
diff --git a/dev-lang/Manifest.gz b/dev-lang/Manifest.gz Binary files differindex 5952200cc65a..c520eb2f23aa 100644 --- a/dev-lang/Manifest.gz +++ b/dev-lang/Manifest.gz diff --git a/dev-lang/c-intercal/Manifest b/dev-lang/c-intercal/Manifest index b40b94f85b98..a33e05bd672e 100644 --- a/dev-lang/c-intercal/Manifest +++ b/dev-lang/c-intercal/Manifest @@ -2,5 +2,5 @@ AUX 50c-intercal-gentoo.el 191 BLAKE2B 3575c7ecac45d7023f727e559bbcfeb311c45c720 AUX c-intercal-31.0-no-common.patch 311 BLAKE2B 25e260a1e4c7079fb8baac690580505c401870fe60b6c0e398f79a8d1027ea6395b30b8c16244ad147489787606d6b6a27f244e4b8f9e9f7710405b124d3d7a8 SHA512 84db59e1855672260079c39ac066d98d031536019180483002b224c48912472c175bcde20053d37510e6aa07fa2de62beb4161d5a262b5d775742d0d10e7b51e AUX c-intercal-31.0-version.patch 330 BLAKE2B f7a18b5098c6969ea29c21513221e3dd6f6cce847ceca102f8d3a0713d18bbdfd11b1349b0463f7338ef69ccb2b08aa8162e91860b26338c577647728e1261db SHA512 cfb0c79e76b19938fda232cf508e32812aa4edad2eb6545eef84f6bdfd8304666911ca4042450c4642699a41a140f4e199acf0f8d9ab0f24ab8daa81a89d3393 DIST intercal-0.31.tar.gz 940950 BLAKE2B 9a23229b1d7f0524b164a4b66bcab4fdf67a04ba1e411365a46a90d646867fe92d6e328935b406673809535a895becde934fb6cf2e8380943eb8f19473fcedab SHA512 ca5c10be880ce2470d7dd3404fa5a314bd7bcab45cf4908f7108eb1baa50339b876e135251d991527881b564027c63dc38d74a154cbd00d606261013d2b01262 -EBUILD c-intercal-31.0.ebuild 1785 BLAKE2B c1af9f8f38b6751fb674fb4ebe0c8e930b0a16e9154bcbbef6b5d4347b0261672f734ba24d19dd31884d23afdf07d11da185177f19381979d906839ddef3c082 SHA512 d0ee17345774a034c936c3d698390d064ad025e705b364ff9e8d1917527328817a18b0fe1064ea8b749af671950662c4ef8ebc5f775b200c0fab86eed6f6d820 +EBUILD c-intercal-31.0.ebuild 1802 BLAKE2B 4e7a181141e59300af93c5f9758879459ab6dade2a102683365c3c2951a93c9be2cdd59e150a4bfa9ef56ea2a27f246c823eaf55924dd51ab559d805879b8d45 SHA512 0993509badacde7dc888ff403c96a1d497922e1ef9f3cd110358ff685b899e127515c1e55cc2bf3904a63b5e5423d9777b22d238fa245402bc8f6e796c82f204 MISC metadata.xml 592 BLAKE2B 8d07802ff5f3cbedb9643b61c469214284c5d21dbaf7aa2afa1c706cf0c9ebe0af2903f3bada0145fd0fe648fe46678919a730f88a2c38c84d149416a8095b11 SHA512 d2b9dad8dd7a03744904ccee87ba17ed726b0005b6bd685d7b926b4657e57c9456d8a7f57deedf260efd543b42c157c13876cf6942cd1f47fee88f0782dac13d diff --git a/dev-lang/c-intercal/c-intercal-31.0.ebuild b/dev-lang/c-intercal/c-intercal-31.0.ebuild index bbcc4938fdb2..1639cfbf56fc 100644 --- a/dev-lang/c-intercal/c-intercal-31.0.ebuild +++ b/dev-lang/c-intercal/c-intercal-31.0.ebuild @@ -48,7 +48,7 @@ src_prepare() { } src_configure() { - append-flags -fno-toplevel-reorder #722862 + append-cflags $(test-flags-CC -fno-toplevel-reorder) #722862 econf } diff --git a/dev-lang/cxprolog/Manifest b/dev-lang/cxprolog/Manifest new file mode 100644 index 000000000000..758936a9dba3 --- /dev/null +++ b/dev-lang/cxprolog/Manifest @@ -0,0 +1,7 @@ +AUX build.xml 1161 BLAKE2B 292e62ad0543b808cf888b6ec25cd41015bf95db17694124cff2aaefebe5024081f1b4e469e69907a870f4ab013cc274fad8218f3de3cbfb19f17d4a710b95d4 SHA512 1f75ae49b1d733f580bf95739aa927f464097905c69518f2efbc433c269256d04002e545d920d3cf9c97ea11fbfee86df6fb3276cbae784ed09a95f8a7f00264 +AUX cx_dev_boot.pl 141 BLAKE2B dea2a7baf1050f916ca5bc200bf7768c353ec6e59752031fbe7afb5f1cda89ab464c5db6ad3e70540d116fbd14c52e2dd3f1f6204fda36a45e108a81191669d4 SHA512 837599798afe67c76dcb585938ed46696f4f490b0e6184d6bff5238f067f78b7c77db081a3ba0019ac89b136a44749db8b73f38fce0d8519927d32145c4986c6 +AUX cxprolog-0.98.2-portage.patch 3806 BLAKE2B 6270cf9e19d6fd2f24a19a8d0e5af672c523530b1fece9146b49bda2b5ab97f79f69d55a15b56ace9dd5ecc15a693f1700700e9e902846113075441e587d5873 SHA512 f20ef4c01f27cc290efc5daf16a44a081072d0640282c9a995efacdb05548e547478201facd395b5067a22847bf51a25a9faf4c1bdec0510cf5c9031979d249a +AUX cxprolog-0.98.2-test-io.patch 580 BLAKE2B 5a4844e4f3469270ab33889f07b812aa5b457f6cf0dc49c2b05c6360a91ea9809c26743566ea66c41e7ae0fa1aa3a05945245d234267b8b39f52ae452034bf73 SHA512 4c39bf891c0d7291b1f1ff926367f5613fed61455dd35747eb0fcd5bcdd0eb93fb86ca82b58b194e5ea2dbcf62e7f0179c5a97186f42e83c707a6022f829704d +DIST cxprolog-0.98.2.src.tgz 548222 BLAKE2B e1e834384ff161efde961e7a319d9987cb368ed561fa613a4dd2ede353a099de9146de68dedab3d5e74bb5421c880f743b669eb43eb0b265112dbf938820b0ad SHA512 7e16ce238201da2520da3575311a8c56c9fc3926b290ef505e74ca208af9e6a070d4137ae21e708e1d6c9b83e44566ecd818d51a90f033c983c589b65bcbf2b1 +EBUILD cxprolog-0.98.2.ebuild 3077 BLAKE2B 562d47ec52d4cb23972638f765ffb67471ea3a76b9782a10d3400943876e5b26bfa7e0d3e0ba7893171e1d9fdc032c0f133582b96bdd65d726b59b28921ed6b5 SHA512 42c864b978ff26f54112c2a74e62ee82974a843f8f8bb76c97a7734de53b9532d360e8d0d7e2d3d3120d8f1006d75c08c4175534c21dd72262b7844d8edae9c3 +MISC metadata.xml 236 BLAKE2B 665f3de6dc90f46a18379b3416063a49b1a79ddd7ef89eaed9be78f9adc5b234e9693cd31d6cf2d3477fc7dc00055492bef7de78da6c901c4a6e55eb0e781325 SHA512 e776224736bd575412c7b5b799f649c6b2947a70e6a9aea580063d9da7d09a8144e5ebaf7ac3ef131d578486cf05dec814dce11b2aeb884cded3be3cab70fcec diff --git a/dev-lang/cxprolog/cxprolog-0.98.2.ebuild b/dev-lang/cxprolog/cxprolog-0.98.2.ebuild new file mode 100644 index 000000000000..d1b773c84e51 --- /dev/null +++ b/dev-lang/cxprolog/cxprolog-0.98.2.ebuild @@ -0,0 +1,134 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +WX_GTK_VER="3.0-gtk3" +VIRTUALX_REQUIRED="manual" + +inherit flag-o-matic java-pkg-opt-2 java-ant-2 toolchain-funcs virtualx wxwidgets + +DESCRIPTION="A WAM based Prolog system" +HOMEPAGE="http://ctp.di.fct.unl.pt/~amd/cxprolog" +SRC_URI="http://ctp.di.fct.unl.pt/~amd/cxprolog/cxunix/${P}.src.tgz" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="examples java +readline test wxwidgets" +RESTRICT="!test? ( test )" + +RDEPEND="readline? ( sys-libs/readline:= ) + java? ( >=virtual/jdk-1.8:= ) + wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[X] )" + +DEPEND="${RDEPEND} + test? ( + java? ( ${VIRTUALX_DEPEND} ) + wxwidgets? ( ${VIRTUALX_DEPEND} ) + )" + +S="${WORKDIR}"/${P} + +src_prepare() { + eapply "${FILESDIR}"/${P}-portage.patch + eapply "${FILESDIR}"/${P}-test-io.patch + eapply_user + + sed -i -e "s|lib/cxprolog|$(get_libdir)/cxprolog|" "${S}"/src/FileSys.c || die + cp "${FILESDIR}"/build.xml "${S}"/build.xml || die + cp "${FILESDIR}"/cx_dev_boot.pl "${S}"/cx_dev_boot.pl || die + rm -f "${S}"/pl/test_file_io_1.txt + + use wxwidgets && setup-wxwidgets +} + +src_compile() { + local CX_EXT_DEFINES + local CX_EXT_CFLAGS + local CX_EXT_LDFLAGS + local CX_EXT_LIBS + + if use readline; then + CX_EXT_DEFINES="$CX_EXT_DEFINES -DUSE_READLINE" + CX_EXT_LIBS="$CX_EXT_LIBS -lreadline" + fi + + if use java; then + local java_arch + use x86 && java_arch=i386 + use amd64 && java_arch=amd64 + CX_JVM="${JAVA_HOME}/jre/lib/${java_arch}/server" + CX_EXT_DEFINES="$CX_EXT_DEFINES -DUSE_JAVA" + CX_EXT_CFLAGS="$CX_EXT_CFLAGS $(java-pkg_get-jni-cflags)" + CX_EXT_LDFLAGS="$CX_EXT_LDFLAGS -Wl,-rpath,${CX_JVM}" + CX_EXT_LIBS="$CX_EXT_LIBS -L${CX_JVM} -ljvm" + fi + + if use wxwidgets; then + CX_EXT_DEFINES="$CX_EXT_DEFINES -DUSE_WXWIDGETS" + CX_EXT_CFLAGS="$CX_EXT_CFLAGS $(${WX_CONFIG} --cflags)" + CX_EXT_LIBS="$CX_EXT_LIBS $(${WX_CONFIG} --libs)" + fi + + emake lib \ + PREFIX=/usr \ + TMP_DIR="${S}/tmp" \ + CC=$(tc-getCC) \ + CPP=$(tc-getCXX) \ + LD=$(tc-getLD) \ + CFLAGS="${CFLAGS}" \ + LDFLAGS="${LDFLAGS}" \ + EXT_DEFINES="${CX_EXT_DEFINES}" \ + EXT_CFLAGS="-Wall ${CX_EXT_CFLAGS}" \ + EXT_LDFLAGS="${CX_EXT_LDFLAGS}" \ + EXT_LIBS="${CX_EXT_LIBS}" + + if use java; then + JAVA_SRC_DIR="${S}/lib/cxprolog/java" + eant jar + fi +} + +cxprolog_src_test() { + cd "${S}"/pl + + LD_LIBRARY_PATH="${S}" \ + "${S}"/cxprolog_shared \ + --boot "${S}"/cx_dev_boot.pl \ + --script "${S}"/pl/test_all.pl \ + | tee "${S}"/cxprolog_test.log +} + +src_test() { + if use java || use wxwidgets; then + virtx cxprolog_src_test + else + cxprolog_src_test + fi + + grep -q "ALL THE TESTS PASSED" "${S}"/cxprolog_test.log \ + || die "cxprolog unit tests failed" +} + +src_install() { + newbin cxprolog_shared cxprolog + dolib.so libcxprolog.so + + insinto /usr/$(get_libdir)/cxprolog + doins lib/cxprolog/lib.pl + + insinto /usr/share/${PN}/pl + doins pl/*.{pl,txt} + + if use java; then + insinto /usr/$(get_libdir)/cxprolog/java + doins dist/prolog.jar + fi + + dodoc ChangeLog.txt MANUAL.txt README.txt + + if use examples; then + dodoc -r examples + fi +} diff --git a/dev-lang/cxprolog/files/build.xml b/dev-lang/cxprolog/files/build.xml new file mode 100644 index 000000000000..3d4d4fba16e1 --- /dev/null +++ b/dev-lang/cxprolog/files/build.xml @@ -0,0 +1,49 @@ +<?xml version="1.0" ?><project default="jar" name="cxprolog"> + + <!-- some properties --> + <property name="src.dir" value="lib/cxprolog/java/prolog"/> + <property name="build.dir" value="build"/> + <property name="dist.dir" value="dist"/> + <property file="build.properties"/> + + <path id="compile.classpath"> + <pathelement path="${gentoo.classpath}"/> + </path> + + <!-- init --> + <target name="init"> + <tstamp/> + <mkdir dir="${dist.dir}"/> + <mkdir dir="${build.dir}"/> + </target> + + <!-- compile everything --> + <target depends="init" name="compile"> + <javac deprecation="off" + destdir="${build.dir}" + encoding="ISO-8859-1" + srcdir="${src.dir}" + source="1.8" + target="1.8"> + <classpath> + <path refid="compile.classpath"/> + </classpath> + </javac> + <copy todir="${build.dir}"> + <fileset dir="${src.dir}"> + <exclude name="**/*.java"/> + </fileset> + </copy> + </target> + + <!-- build the jar file --> + <target depends="compile" name="jar"> + <jar basedir="${build.dir}" jarfile="${dist.dir}/prolog.jar"/> + </target> + + <!-- clean up --> + <target name="clean"> + <delete dir="${build.dir}"/> + <delete dir="${dist.dir}"/> + </target> +</project> diff --git a/dev-lang/cxprolog/files/cx_dev_boot.pl b/dev-lang/cxprolog/files/cx_dev_boot.pl new file mode 100644 index 000000000000..2794cabe34b0 --- /dev/null +++ b/dev-lang/cxprolog/files/cx_dev_boot.pl @@ -0,0 +1,9 @@ +'$cxprolog_initialise' :- + version, + fs_cwd(CWD), + fs_set_prefix_dir(CWD), + '$env_context' := [main]. + + +'$cxprolog_top_level_goal' :- + true. diff --git a/dev-lang/cxprolog/files/cxprolog-0.98.2-portage.patch b/dev-lang/cxprolog/files/cxprolog-0.98.2-portage.patch new file mode 100644 index 000000000000..32e22a0eb620 --- /dev/null +++ b/dev-lang/cxprolog/files/cxprolog-0.98.2-portage.patch @@ -0,0 +1,109 @@ +--- cxprolog-0.98.2.orig/Makefile 2016-09-17 20:33:35.000000000 +0200 ++++ cxprolog-0.98.2/Makefile 2020-07-22 09:01:24.785919309 +0200 +@@ -20,9 +20,9 @@ + ###################################################################### + + ############################################################################## +-# To disable READLINE SUPPORT, uncomment the following line: ++# For READLINE SUPPORT, uncomment the following line: + # +-# READLINE := n ++# READLINE := y + # + # Nothing more is required. + # This functionality is active by default. +@@ -83,6 +83,7 @@ + EXT_OBJ_DIR := src/ext + EXT_CFLAGS := + EXT_DEFINES := ++EXT_LDFLAGS := + EXT_LIBS := + EXT_NAMES := + +@@ -91,6 +92,7 @@ + # EXT_OBJ_DIR := src/obj/ext + # EXT_CFLAGS := -I/usr/include + # EXT_DEFINES := -DUSE_X=2 -DCOMPASS=1 ++# EXT_LDFLAGS := -Wl,--as-needed + # EXT_LIBS := -L/usr/lib -lcrypt + # EXT_NAMES := ext/file1 ext/file2 + ############################################################################## +@@ -121,6 +123,7 @@ + CFLAGS := -Wall -Wextra -O1 + ONLYCFLAGS := # -Wmissing-prototypes + DEFINES := ++LDFLAGS := + LIBS := -lm + OBJ_DIR := src/obj + TMP_DIR := /var/tmp/$(APP) +@@ -157,16 +160,16 @@ + + ifeq ($(VERBOSE),y) + CFLAGS := -v $(CFLAGS) +- LIBS := -v $(LIBS) ++ LDFLAGS := -v $(LDFLAGS) + endif + + ZFLAGS := $(DEBUG) $(EXT_CFLAGS) + ZDEFINES := $(EXTRA) $(ZPREFIX) -DOS=$(OS) $(DEFINES) $(EXT_DEFINES) ++ZLDFLAGS := $(DEBUG) $(LDFLAGS) $(EXT_LDFLAGS) + ZLIBS := $(EXTRA) $(LIBS) $(EXT_LIBS) + ZPRE := + +-ifeq ($(READLINE),n) +-else ++ifeq ($(READLINE),y) + ifneq ($(OS),MINGW32) + ifeq ($(shell if test -e "/usr/local/opt/readline"; then echo "y" ; fi),y) + ZDEFINES += -DUSE_READLINE=4 -I/usr/local/opt/readline/include +@@ -294,7 +297,7 @@ + ############################################################################## + + $(APP): $(OBJS) +- $(CPP) -o $(TMP_DIR)/$(APP) $(OBJS) $(ZLIBS) ++ $(CPP) $(ZLDFLAGS) -o $(TMP_DIR)/$(APP) $(OBJS) $(ZLIBS) + ln -sf $(TMP_DIR)/$(APP) $(APP) + @$(ZPOST) + +@@ -319,32 +322,32 @@ + + ifeq ($(OS),MINGW32) + libcxprolog.a cxprolog.dll: $(OBJ_DIR) $(OBJS) +- $(CPP) -shared -o cxprolog.dll $(OBJS) -Wl,--out-implib,libcxprolog.a $(ZLIBS) ++ $(CPP) $(ZLDFLAGS) -shared -o cxprolog.dll $(OBJS) -Wl,--out-implib,libcxprolog.a $(ZLIBS) + + cxprolog_shared.exe: libcxprolog.a cxprolog.dll + ifeq ($(WXWIDGETS),y) +- $(CPP) -o cxprolog_shared.exe -lmingw32 -L./ -lcxprolog ++ $(CPP) $(ZLDFLAGS) -o cxprolog_shared.exe -lmingw32 -L./ -lcxprolog + else +- $(CPP) -o cxprolog_shared.exe -L./ -lcxprolog ++ $(CPP) $(ZLDFLAGS) -o cxprolog_shared.exe -L./ -lcxprolog + endif + + cxprolog_testlib.exe: libcxprolog.a cxprolog.dll +- gcc -DTESTLIB=1 -o src/TestLib.o -c src/TestLib.c +- $(CPP) -enable-auto-import -o cxprolog_testlib src/TestLib.o -L./ -lcxprolog ++ $(CC) $(ZFLAGS) -DTESTLIB=1 -o src/TestLib.o -c src/TestLib.c ++ $(CPP) $(ZLDFLAGS) -enable-auto-import -o cxprolog_testlib src/TestLib.o -L./ -lcxprolog + rm src/TestLib.o + + lib: libcxprolog.a cxprolog_shared.exe cxprolog_testlib.exe + + else # Assume Unix + libcxprolog.so: $(OBJ_DIR) $(OBJS) +- $(CPP) -shared -o libcxprolog.so $(OBJS) -lc $(ZLIBS) ++ $(CPP) $(ZLDFLAGS) -shared -Wl,-soname,libcxprolog.so -o libcxprolog.so $(filter-out src/obj/CxProlog.o,$(OBJS)) -lc $(ZLIBS) + + cxprolog_shared: libcxprolog.so +- $(CPP) $(ZDEFINES) -o cxprolog_shared -L./ -lcxprolog ++ $(CPP) $(ZLDFLAGS) -o cxprolog_shared src/obj/CxProlog.o -L./ -lcxprolog $(ZLIBS) + + cxprolog_testlib: libcxprolog.so +- gcc $(ZDEFINES) -DTESTLIB=1 -o src/TestLib.o -c src/TestLib.c +- $(CPP) $(ZDEFINES) -o cxprolog_testlib src/TestLib.o -L./ -lcxprolog ++ $(CC) $(ZFLAGS) $(ZDEFINES) -DTESTLIB=1 -o src/TestLib.o -c src/TestLib.c ++ $(CPP) $(ZLDFLAGS) -o cxprolog_testlib src/TestLib.o -L./ -lcxprolog $(ZLIBS) + rm src/TestLib.o + + lib: libcxprolog.so cxprolog_shared cxprolog_testlib diff --git a/dev-lang/cxprolog/files/cxprolog-0.98.2-test-io.patch b/dev-lang/cxprolog/files/cxprolog-0.98.2-test-io.patch new file mode 100644 index 000000000000..d9f7be7b0cf5 --- /dev/null +++ b/dev-lang/cxprolog/files/cxprolog-0.98.2-test-io.patch @@ -0,0 +1,20 @@ +--- cxprolog-0.98.2.orig/pl/test_io.pl 2016-01-23 22:07:48.000000000 +0100 ++++ cxprolog-0.98.2/pl/test_io.pl 2020-07-18 21:26:20.911026745 +0200 +@@ -17,7 +17,7 @@ + concat([X,'.\n'],T). + + test_file_io(L,Encoding) :- +- FileName = 'test_file_io_1.txt', ++ FileName = '/tmp/test_file_io_1.txt', + open(FileName,write,S1,[encoding(Encoding),bom(true)]), + name(T,L), + write(S1,T), +@@ -25,7 +25,7 @@ + open(FileName,read,S2), % relies on bom + read(S2,X), + close(S2), +- %fs_delete(FileName), ++ fs_delete(FileName), + concat([X,'.\n'],T). + + :- current_prolog_flag(encoding,Curr), diff --git a/dev-lang/cxprolog/metadata.xml b/dev-lang/cxprolog/metadata.xml new file mode 100644 index 000000000000..96eff3ea40c0 --- /dev/null +++ b/dev-lang/cxprolog/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<maintainer type="project"> + <email>prolog@gentoo.org</email> + <name>Prolog</name> +</maintainer> +</pkgmetadata> diff --git a/dev-lang/elixir/Manifest b/dev-lang/elixir/Manifest index 259bf0c89bb2..4d26fab57c2a 100644 --- a/dev-lang/elixir/Manifest +++ b/dev-lang/elixir/Manifest @@ -3,8 +3,6 @@ AUX elixir-1.10.3-no-Q.patch 355 BLAKE2B 903e5a7149f6e7f7030a533ae437b0e40b97c82 AUX elixir-1.9.1-disable-network-tests.patch 569 BLAKE2B fda6b9b99f80e81883723280de31933c1740167d41ef4783dc663bad277cf58b8782326abc4a72e0d989c513afb9cdf4494e7d79754b18d62baf75255a74aa45 SHA512 465831a389891680412d51d9209497d5b750ff0a5ff72d45807a7dba6ec7757156ee96048bbc81f46c9c24a5b13cdd5161539fdeb4ffcea655c407e29f6675fc DIST elixir-1.10.3.tar.gz 2329031 BLAKE2B 0e8d84c71f4bb260aef875370acb89b6a8daf5187aec5fe28d13054b6a16e91925aec46a312a31e607b469657a0f4cb34d29735e9633ddc7cd69417402f1b8b1 SHA512 66b18b983e5374afbd4d94c43a880c5e46a9aa150fa6f38be74ff7f58a19eaaee00248b202d9ae3f6b78e2495fc8d5cec755de644256a731be367766c3812855 DIST elixir-1.10.4.tar.gz 2331003 BLAKE2B 8cb54bcb16762ae345ad9d36a25c28696fd5bb57cf97c5037c21458671e001cfe51a722287243c6a70fe3cea65c9c219e759c8312fc168e93974ac5f0870b47a SHA512 844e405cf344539a9d32dc7f1ead0dc1dfb0d70a9ab718269f4e25e5262f611f96346f5be93cf8e34a75c58c6aabb12e8a796c5cb182955922510c270ef169e7 -DIST elixir-1.9.4.tar.gz 2250611 BLAKE2B adc363627dc3997684482ac022927aaa4d315afdb8fbc8981e1b88371eb13be80e01084b67288fc88fc51f0015085743d11289e932093d5608e5ac4dfa0823a8 SHA512 c97b93c7438efd7215408525a3b9f2935a1591cce3da3eb31717282d06aff94e8e3d22c405bac40c671bcfe8e73f3dd1ada315f53dee73ceef0bfe2a7c27e86d EBUILD elixir-1.10.3.ebuild 883 BLAKE2B c8945f6c84ce2ba4ef99b42f5f0f3c262cfb6d743cd418f66113cab8a9a90caf1ddc71441d96b3755e9025974688909d8306b63ded24d871733d263c54df1d56 SHA512 a3581664d0fe5c49bd7c4ed2b6f2fba7c4b402944daf7c79e79acbd7ffbb463c17e559d961f7abd3c54c5ca5e6d23520e379a5712d7d232439b5c878291cb3d7 -EBUILD elixir-1.10.4.ebuild 886 BLAKE2B 5b16a1aa4a73de92f058640cbba02d044eccd23e5b95383abf03ef8a903e4a41337f14c5547638745bc73f304cff946ef7ff4e99186e1607c7a2fbcaa0058e4b SHA512 c74b4b3bc7ea0416a524701ad9e2a02924491fe8e3d92b3e99e133d9504e0a61a339374de62b78837fe3249a076cf3c05fb281c729a279c1bda9b023650e5050 -EBUILD elixir-1.9.4.ebuild 756 BLAKE2B 45337b098daa503ea61e9f8f5d8e4ccb6bbd09babb2457dc85a8e96cb79f76ec31d1ef393d015d8fb878b6c4e0d9c4380f39252d8e67b6da5b5e99dc79b77c5b SHA512 97ee97a4b7aece89c3308aa9efc050562e688e491fc313afd31a6400048c1551f734e5222963b187cc7ae4006d112ace23bee093645acfa96d88839136437e8b +EBUILD elixir-1.10.4.ebuild 884 BLAKE2B 3c0ac630e7b175456b3d3f07829e26d56b0c5e18d31670a2cc4133e05b8038d08c5b9e4ecc644d40bbd15fe191a0bd8251b8992b9028d286f40ad5fb73bf5244 SHA512 6c462c9dc14c3fbcf2b521ae11b0f8df7aeaf04d2859e203fb6eefc8cf4ec8cb2498ba31e07907f21a06ceaa5768e4e24d4efc10de155ce49cceb65ea6e9ab1a MISC metadata.xml 790 BLAKE2B 33e4a37225c8f5bd142c5cbbe097ad3330f6c5b1115f834c1c20613281bdc0afa0927734ec3b0a2b1da595980abeec2fcf2bb20e725f5701590d1c3629972910 SHA512 5489797d3771c405edb4c9883082f780279470d7821dbdd1a4790bcdc74c0e31327c8f15286dc421bfe426d7371d6be2819e707389f425101e2d0d0577475586 diff --git a/dev-lang/elixir/elixir-1.10.4.ebuild b/dev-lang/elixir/elixir-1.10.4.ebuild index 74f24bfac275..92194d02cfc1 100644 --- a/dev-lang/elixir/elixir-1.10.4.ebuild +++ b/dev-lang/elixir/elixir-1.10.4.ebuild @@ -9,7 +9,7 @@ SRC_URI="https://github.com/elixir-lang/elixir/archive/v${PV}.tar.gz -> ${P}.tar LICENSE="Apache-2.0 ErlPL-1.1" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc ~sparc ~x86" +KEYWORDS="amd64 ~arm ~arm64 ~ia64 ~ppc ~sparc x86" IUSE="test" RESTRICT="!test? ( test )" diff --git a/dev-lang/elixir/elixir-1.9.4.ebuild b/dev-lang/elixir/elixir-1.9.4.ebuild deleted file mode 100644 index 40218d815fee..000000000000 --- a/dev-lang/elixir/elixir-1.9.4.ebuild +++ /dev/null @@ -1,32 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -DESCRIPTION="Elixir programming language" -HOMEPAGE="https://elixir-lang.org" -SRC_URI="https://github.com/elixir-lang/elixir/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="Apache-2.0 ErlPL-1.1" -SLOT="0" -KEYWORDS="amd64 ~arm ~arm64 ~ia64 ppc ~sparc x86" -IUSE="" - -DEPEND=">=dev-lang/erlang-18[ssl]" -# 'mix' tool collides with sci-biology/phylip, bug #537514 -RDEPEND="${DEPEND} - !!sci-biology/phylip -" - -PATCHES=( - "${FILESDIR}"/${PN}-1.9.1-disable-network-tests.patch -) - -src_compile() { - emake Q="" -} - -src_install() { - emake DESTDIR="${D}" LIBDIR="$(get_libdir)" PREFIX="${EPREFIX}/usr" install - dodoc README.md CHANGELOG.md CODE_OF_CONDUCT.md -} diff --git a/dev-lang/erlang/Manifest b/dev-lang/erlang/Manifest index ce29c758f8cb..4c664f686d77 100644 --- a/dev-lang/erlang/Manifest +++ b/dev-lang/erlang/Manifest @@ -5,22 +5,17 @@ AUX epmd.init 534 BLAKE2B 34230f6c6edaed48123369df02f5fb71deb90491ebbb6d17984220 AUX epmd.init-r2 388 BLAKE2B cf8f1b3bfaf5c0bb1a7acebf41e1c1138b880e91a5c732cf3f8ddcaea469f0bcb32c9b3bb1fc5c923a3d7d1f77ca419ae3b4c25223d6da9499c627d2cd20b545 SHA512 110dc6575eaecf88164283042210a8580642fa5c9f49a3529bb0d5cda683f9ae024f1c7da791c0d7bfa8aabc3baf29bb821b5640804b313bb6ffee41401a8eb2 AUX epmd.service 138 BLAKE2B f56c907ec51bb85c437235334cf01c6a43ccf2316be3b226ab557e3f71cab48baf59b5a9533a4dccb2cb61a4434e3a51d44eae06010718dbf9a732d605c40f73 SHA512 405740f8f9cd55d4ecd7420748399ab3f374b7cb09e53605f44ba49d0af86b70e4a1baf1fde05a703fb90c8a83dbcdd5cfbbf09185e9d7b58ff9612aefc2dd28 AUX epmd.service-r1 159 BLAKE2B ec50e4bfd89dc2d35fc2e549c695f9aae163d3df4d3c7a0d3f85f0f747c13a8aed9c8e9e57f3898ab31aec6795d7cd0565a7c563dc77f3f6154e53be88ec326d SHA512 4b99b2092fe447fa01e3badfce261bca6400ebda70f890efbacc40570019adfe9fc349a6d024955e2f1909c9068f37415b64d0a104399f2696eff6ccf6ad06ab -AUX erlang-20.3.2-dont-ignore-LDFLAGS.patch 1337 BLAKE2B 7272c96b1ee947a98f0a5b1f3bd1fce11e8d02f121348208196ae60af965dfde7fac15263ca0a58df96dff21785a1a63f4fc10f7e7e10c0f68a618e760e5ffd7 SHA512 59d39b1680ac3406e4c37f81a0207588208a873279920258235af54700f80bd67584c3e55c9278f893cd7813573bbec8b13195e47ba00101fc578d5a2b40fa34 AUX erlang-22.0-dont-ignore-LDFLAGS.patch 1174 BLAKE2B 64900c6b934ecbd11238e604f907e6f8b1ec2730d2b98aad5405383742563e050bc6ffaae22d55a22998658460109fac9f6628458f5e976e9fbfe71cc26f1d64 SHA512 0fd7cbef64a9a54e0959d49b50096f9abc6fcede4360c153631c7f649f5c41b35ffb1f2d06f80964bf49421464bcc43c96147c227d60cf413c51b3e89ae9ad24 -AUX erlang-add-epmd-pid-file-creation-for-openrc.patch 2359 BLAKE2B 54a3148144bcbb9a4dd68e89fd609a09a9e9a0a9c7a71a4e9eaafc12632e23da44411d72c1590e482fda73d5464b1071386aa564b8d9a73b032b62c474d20570 SHA512 301aed1980a8638a8cd069ecb6e968e5c15d3e82b38580861a0ed6a2fc7a9505d99525a53a6ac19c2d9b786703aac6bf51751275a6a7fafd8f530c07ea0c7e8c -AUX erlang-custom-autoconf.patch 398 BLAKE2B c99d3bc311bbca379786b9e4d29ee4983354a069508328c95e99a62bdfb8d15dbf372124acdf66c603f64acd9cabeb146e5bd5ec1e1ffd09af125fc4a076abdc SHA512 b82e09d0cd686c07b9d370e397edda10bd96435e70f4a0995ec06638e237e3b8fd0e1195ecc036b51367ffa36a0b4db5a2b1fe5d389a0b97e19d32aec51755d9 -DIST erlang-21.1.1.tar.gz 53854332 BLAKE2B 32ab508b5a305eb92eac9f49bd513374c573966e7565d98aa6ba986ce42eb955a46130b9f33dbb415f48de5c179b308a8b06b345a844afcb2700f7e3f257f27e SHA512 dc11aace126aad5411b0d583579fe95a7263be328612fdc9f9c02d917aef7ea7a128b1e54ddcf7a52232980d2c81fc8e90ae5a8806ee5ae6ea97f00a9cf3faab DIST erlang-22.3.2.tar.gz 55856668 BLAKE2B d5d2ae17b8fb1b7c3da0c145e4e17d38e47d5291d6bc77228c9280eaa114630003f0e75cc0b6eafd21642a86448d8fd907d95c006cdfe6f18978e796e20585bd SHA512 02333fed57394012834452aff38d9a3340c52b109b14e444b6e7975ac3a65485de1deda6ae6c732a28f75ca2518000de576f70497118306699e35af5f249a0d1 DIST erlang-22.3.4.tar.gz 55861416 BLAKE2B 881eb664ea449fa021cdb6daaeb998ea5f736eae0900ad67c1416c0e0e0888b212e1fd1fc0ee655f1c05821b56bae52f150c3f29c2eddbac205d2a6f2fce5494 SHA512 14e90efb40568a1fd7a32b82fcdf32df8ccbda938b9e538bb3b1a77d343ae16f5721abb3d47e8dd567d7aa91d1dea6da8b7ada8a5cd8d33c38ba324f1d65eca1 DIST erlang-23.0.1.tar.gz 56387006 BLAKE2B 4ecbb5a4de0f83d80da179071d5bed7c6e7eca11f5f8f8c5681673967eaf6f0573240b9ac59e00e7162fdaa3d41e89b357263f47371f0ff9365b448a9f7cf4a9 SHA512 fc9114312327f2b7289078b29ae658a1100c860dfae03e892c1b316007b5ff286cfc301772b336eb1f5b983b3d5f507f03eff2917f418b1b9cb9714f42a59db4 -DIST erlang_doc_html_21.1.tar.gz 32692731 BLAKE2B a7fa8ebe1c876ab7eecd2dd46ffd4d288db6d308e0f131d53c26ee4b67a92cb6fcb89b6c880ef34df395c7ad61fcdc81eac32e0fcf7336be7d517263218146bc SHA512 0d659f55bfb01eecf140a310154724489ef56b6ccbe9ac30f6b053f598276721b80de7b5b3200707cf8a6e77b8854eae5453f655225f431fcc982550539f767f +DIST erlang-23.0.2.tar.gz 56391276 BLAKE2B a9f3203a28dfb3a8abe93f7cabd34b7c34346cf400dbad751c180dcbe33c40761c74680ef7ed1a3221a69c0519f37183787463f659e5a10393404df95c59fbec SHA512 82764ab879ea7588de505c6d58716999dc207163d8dcded226fe6849a3239c00088cb614558b77c038dcad1440f9b2e3ca2b2f1251df5d71b423d3f6e7497c6e DIST erlang_doc_html_22.3.tar.gz 34041790 BLAKE2B 76372acf5d6a581fb97cac9fa8230f1505650e9398d0a8e6ed163718f6d64cbbb3b7c79a1b7129827482345ddf950be4a5d83f0dac44e173f0ef45b148b73faa SHA512 9199b6229b73a22e271c232ce03b83b65c265367062d57ca5babd23a2f0a088fde3054b25c65c1bf2cb714cb70354ce4324aa8e865db72beb1f788c27389558c DIST erlang_doc_html_23.0.tar.gz 36238699 BLAKE2B bce5fb1d766d3a795728cf7c00529129690f52e5dbe7363095cb7e63d5331a4dfc05c2042d24f10c7f3facbd187284aa323a92c0ed7515c1750aee4cd890fbd4 SHA512 bd0b1adf8639674d31152024e1351105249c6e6f93f28362e9e4b66ce6daadbe5eef5917a5889c926130e81bd000cfc44895ebaa309bf9a0c1c125713b715927 -DIST erlang_doc_man_21.1.tar.gz 1317726 BLAKE2B 5e5c2b77a41da6ab9ae1264ba5824a9f3bda6d3b7a824b372e01356888db437ed9e45bf987d678aca3fd8d0f0e6dce25080c7a2aaa4e061936f1e6ac4717e843 SHA512 94c6191ba9f42bffeb398e865026fbc79f3b233389c7d471f0c680799aa3669e97ab5305cd53f26d6525aed33d738ebfc4eb79a8f1a0b29dc4b79a2a37a29a4f DIST erlang_doc_man_22.3.tar.gz 1366911 BLAKE2B 89931e9ea4ef54526eb910d3b0a56711e447dffc0463d7583db8875b9be789fd369f701eb7b6fa5da7b63de3f41a8e4ba15db6db02d90642a8b322f3897d7a2b SHA512 b47c66ebd34d2f511a702e97acd67eff7c5d47045a80ffb17b21032a9b9725b015cd171b78c04e3169a95f0acdbdcab57647b31ace751c9019ce3f7c75d743b6 DIST erlang_doc_man_23.0.tar.gz 1383486 BLAKE2B 63a9989c26797fe07fbd0ccca0d8425d94bc60a86fa93b5332c8d1f3e12a0071d9e6d4759be73bf44bf35dd14723b9e6707a84ba834e1775bc28aeec1edbe168 SHA512 81575ce7b267f5bb48bd844808e8edd4e373640bbc481372b288602eb9d3c9917e6c7c040c035b63a2f6edf437c3d826d6afdf5801765b51d9edd4a3b2a5b16f -EBUILD erlang-21.1.1.ebuild 4623 BLAKE2B 79bf14c9cde34623bbabc16d9cd47e299987d7f50f17d01445c375a6523a8c1bb5f0ef3ff01d8d3dcc3765b089c6572c8ad2d7429fa5a0019d928d9cb833316d SHA512 3bf71f12301afbf94920e504c72a53b194fe11930116a2986bbbb656ceff1e0b8ad2dbdd9ed616e20d1caa9f7363c94a3d4841c9430d6ff54d51e08cd02eecd5 EBUILD erlang-22.3.2.ebuild 4569 BLAKE2B cd3901f37bb9156c4f4b234aefdfb02fea06c9cde15622e428c73b05f29c70c02c82415359d1ad68f665b88a0a13d6e0177c46ea1b992cbd2d01af2f3912d2ef SHA512 ee49c37719ab86d5f2335336cccd9b9264906f8d9af315fc5abf7a5ff4564d38d763eee1c3450489117aaa69697bb2948c1f5cc9fd8401c7866423a620ce5ea5 EBUILD erlang-22.3.4.ebuild 4574 BLAKE2B b55208b5f2c15f62d6687f3ad44e54f958323cb7ae771d4f3313acf5a57edc30a51e0f0c2477765a591a1b9035029094894d8776567bc4996bfa9a5ace1a0b72 SHA512 0d17ac78b892861017bd245444e06eefc52761da19eeb663aaa26b8ad099cc4b1fcfa553353651670f1a575a00ef06805b6e7db97c789cd3dc2fcfd1a3c1f68e EBUILD erlang-23.0.1.ebuild 4569 BLAKE2B cd3901f37bb9156c4f4b234aefdfb02fea06c9cde15622e428c73b05f29c70c02c82415359d1ad68f665b88a0a13d6e0177c46ea1b992cbd2d01af2f3912d2ef SHA512 ee49c37719ab86d5f2335336cccd9b9264906f8d9af315fc5abf7a5ff4564d38d763eee1c3450489117aaa69697bb2948c1f5cc9fd8401c7866423a620ce5ea5 -MISC metadata.xml 905 BLAKE2B c1277904d14789138212ad1c83291d30301558aba707d1eb43765573c32617bfcb0eea43acc80225870cf2fbab011920b64bbecbdd28d414d73eb3c86a00937c SHA512 f79228f075fc6ac58785bc8a6c574546674b7ddd6c4f7420cb616414cf5178c2fa08284668b0d863ae3638891567184d1e8a490e31c4e093724ebff5c177a461 +EBUILD erlang-23.0.2.ebuild 4576 BLAKE2B 353b65f6eb48e225be8e14ad5dc281770b6efce60e72aae1bbbd55fbbf25a6d8b9386582917c254b7bc61626f7d74740607f91f16a2e5e02526b2c64f56f0cf4 SHA512 57c912e9673e6889bc06088750c8faeccd955d7425df9afb0cff1093b7468e3ee596ac9935c1b1fa13d93392a3a9c75aa1e9b949522bff706546ac6f00b411c2 +MISC metadata.xml 834 BLAKE2B 1f394278eed4a3ac5e1c04f4ffced7042cc910d9e84ed4ad955cf91240446410f0ffbf1c138cc76cfa55d40c0eb0f110da98cd49c59df2b12ae70c13afd45a06 SHA512 7c067d233ffae83e4b1b55ba9e8adffe125d27f5f81401a4e4262d9b713b08bdaa4dd927570b2d32591092ca387372ee206e25e0b939ca721c96317fcd3d2be2 diff --git a/dev-lang/erlang/erlang-21.1.1.ebuild b/dev-lang/erlang/erlang-23.0.2.ebuild index b88fb159aca1..eaa8647e98c1 100644 --- a/dev-lang/erlang/erlang-21.1.1.ebuild +++ b/dev-lang/erlang/erlang-23.0.2.ebuild @@ -1,10 +1,10 @@ # Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 -WX_GTK_VER="3.0" +EAPI=7 +WX_GTK_VER="3.0-gtk3" -inherit autotools eapi7-ver elisp-common java-pkg-opt-2 systemd wxwidgets +inherit elisp-common java-pkg-opt-2 systemd wxwidgets # NOTE: If you need symlinks for binaries please tell maintainers or # open up a bug to let it be created. @@ -22,10 +22,12 @@ LICENSE="Apache-2.0" # same build of ERTS that was used when compiling the code. See # http://erlang.org/doc/system_principles/misc.html for more information. SLOT="0/${PV}" -KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ia64 ppc ppc64 sparc x86 ~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" +KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris" +IUSE="doc emacs +hipe java +kpoll libressl odbc sctp ssl systemd tk wxwidgets" RDEPEND=" + acct-group/epmd + acct-user/epmd sys-libs/ncurses:0 sys-libs/zlib emacs? ( >=app-editors/emacs-23.1:* ) @@ -47,9 +49,7 @@ S="${WORKDIR}/otp-OTP-${PV}" PATCHES=( "${FILESDIR}/18.2.1-wx3.0.patch" - "${FILESDIR}/${PN}-20.3.2-dont-ignore-LDFLAGS.patch" - "${FILESDIR}/${PN}-add-epmd-pid-file-creation-for-openrc.patch" - "${FILESDIR}/${PN}-custom-autoconf.patch" + "${FILESDIR}/${PN}-22.0-dont-ignore-LDFLAGS.patch" ) SITEFILE=50"${PN}"-gentoo.el @@ -57,9 +57,7 @@ SITEFILE=50"${PN}"-gentoo.el src_prepare() { default - ./otp_build autoconf - find -name configure.in -execdir mv '{}' configure.ac \; || die "find failed" - eautoreconf + ./otp_build autoconf || die } src_configure() { @@ -70,25 +68,16 @@ src_configure() { $(use_enable hipe) $(use_enable kpoll kernel-poll) $(use_with java javac) - $(use_with odbc) $(use_enable sctp) $(use_with ssl ssl "${EPREFIX}"/usr) $(use_enable ssl dynamic-ssl-lib) $(use_enable systemd) - $(use_enable pgo) $(usex wxwidgets "--with-wx-config=${WX_CONFIG}" "--with-wxdir=/dev/null") - --enable-threads ) econf "${myconf[@]}" } src_compile() { - if use pgo; then - # disable distcc and ccache - export DISTCC_HOSTS="" - export CCACHE_DISABLE=1 - fi - emake if use emacs ; then @@ -117,7 +106,13 @@ src_install() { emake INSTALL_PREFIX="${D}" install if use doc ; then - local DOCS=( "AUTHORS" "HOWTO"/* "README.md" "CONTRIBUTING.md" "${WORKDIR}"/doc/. "${WORKDIR}"/lib/. "${WORKDIR}"/erts-* ) + # Note: we explicitly install docs into: + # /usr/share/doc/${PF}/{doc,lib,erts-*} + # To maintain that layout we gather everything in 'html-docs'. + # See bug #684376. + mkdir html-docs || die + mv "${WORKDIR}"/doc "${WORKDIR}"/lib "${WORKDIR}"/erts-* html-docs/ || die + local DOCS=( "AUTHORS" "HOWTO"/* "README.md" "CONTRIBUTING.md" html-docs/. ) docompress -x /usr/share/doc/${PF} else local DOCS=("README.md") @@ -149,8 +144,9 @@ src_install() { elisp-site-file-install "${T}/${SITEFILE}" fi - newinitd "${FILESDIR}"/epmd.init epmd - use systemd && systemd_dounit "${FILESDIR}"/epmd.service + newinitd "${FILESDIR}"/epmd.init-r2 epmd + newconfd "${FILESDIR}"/epmd.confd-r2 epmd + use systemd && systemd_newunit "${FILESDIR}"/epmd.service-r1 epmd.service } pkg_postinst() { diff --git a/dev-lang/erlang/files/erlang-20.3.2-dont-ignore-LDFLAGS.patch b/dev-lang/erlang/files/erlang-20.3.2-dont-ignore-LDFLAGS.patch deleted file mode 100644 index 32dd89e0d6c7..000000000000 --- a/dev-lang/erlang/files/erlang-20.3.2-dont-ignore-LDFLAGS.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 69043168302ec7c0bcfaa8b1fb56bfae500bd139 Mon Sep 17 00:00:00 2001 -From: Nick Sarnie <commendsarnex@gmail.com> -Date: Sun, 8 Apr 2018 16:11:55 -0400 -Subject: [PATCH] Don't ignore LDFLAGS - -Bug: https://bugs.gentoo.org/263129 - -Signed-off-by: Nick Sarnie <commendsarnex@gmail.com> ---- - lib/megaco/src/flex/Makefile.in | 2 +- - lib/odbc/c_src/Makefile.in | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/lib/megaco/src/flex/Makefile.in b/lib/megaco/src/flex/Makefile.in -index c37ad4d702..400024ca0c 100644 ---- a/lib/megaco/src/flex/Makefile.in -+++ b/lib/megaco/src/flex/Makefile.in -@@ -66,7 +66,7 @@ endif - CC = $(DED_CC) - CFLAGS_MT = $(CFLAGS) $(DED_THR_DEFS) - LD = $(DED_LD) --LDFLAGS = $(DED_LDFLAGS) -+LDFLAGS += $(DED_LDFLAGS) - LEX = @LEX@ - LEXLIB = @LEXLIB@ - PERL = @PERL@ -diff --git a/lib/odbc/c_src/Makefile.in b/lib/odbc/c_src/Makefile.in -index 784e73c47e..51c023f710 100644 ---- a/lib/odbc/c_src/Makefile.in -+++ b/lib/odbc/c_src/Makefile.in -@@ -82,7 +82,7 @@ CC = @CC@ - CFLAGS = $(TYPEFLAGS) @CFLAGS@ @THR_DEFS@ @DEFS@ - EI_LDFLAGS = -L$(EI_ROOT)/obj$(TYPEMARKER)/$(TARGET) - LD = @LD@ --LDFLAGS = $(ODBC_LIB) $(EI_LDFLAGS) -+LDFLAGS += $(ODBC_LIB) $(EI_LDFLAGS) - LIBS = @LIBS@ @THR_LIBS@ $(EI_LIB) - INCLUDES = -I. $(ODBC_INCLUDE) $(EI_INCLUDE) - TARGET_FLAGS = @TARGET_FLAGS@ --- -2.17.0 - diff --git a/dev-lang/erlang/files/erlang-add-epmd-pid-file-creation-for-openrc.patch b/dev-lang/erlang/files/erlang-add-epmd-pid-file-creation-for-openrc.patch deleted file mode 100644 index 56e3946c93fa..000000000000 --- a/dev-lang/erlang/files/erlang-add-epmd-pid-file-creation-for-openrc.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 04ace92c33a699f75445dc99c30d521311aba826 Mon Sep 17 00:00:00 2001 -From: Steve Arnold <nerdboy@gentoo.org> -Date: Mon, 6 Aug 2018 16:38:30 -0700 -Subject: [PATCH] Add daemon-mode pid file creation when not configured for - systemd - -Signed-off-by: Steve Arnold <nerdboy@gentoo.org> ---- - erts/epmd/src/epmd.c | 39 ++++++++++++++++++++++++++++++++++++++- - erts/epmd/src/epmd.h | 3 +++ - 2 files changed, 41 insertions(+), 1 deletion(-) - -diff --git a/erts/epmd/src/epmd.c b/erts/epmd/src/epmd.c -index 44e997e609..c74888a1ee 100644 ---- a/erts/epmd/src/epmd.c -+++ b/erts/epmd/src/epmd.c -@@ -40,6 +40,37 @@ static int check_relaxed(void); - #ifdef __WIN32__ - static int has_console(void); - #endif -+#ifndef HAVE_SYSTEMD_DAEMON -+static int create_pidfile(void); -+static const char *pidfile = EPMD_PIDFILE; -+#endif -+ -+#ifndef HAVE_SYSTEMD_DAEMON -+static int create_pidfile(void) -+{ -+ int fd; -+ -+ unlink(pidfile); -+ -+ /* open the pidfile */ -+ fd = open(pidfile, O_WRONLY|O_CREAT|O_EXCL, 0644); -+ if (fd >= 0) { -+ FILE *f; -+ -+ /* write our pid to it */ -+ f = fdopen(fd, "w"); -+ if (f != NULL) { -+ fprintf(f, "%d\n", getpid()); -+ fclose(f); -+ /* leave the fd open */ -+ return 0; -+ } -+ close(fd); -+ } -+ -+ return -1; -+} -+#endif /* (no) HAVE_SYSTEMD_DAEMON */ - - #ifdef DONT_USE_MAIN - -@@ -340,6 +371,13 @@ static void run_daemon(EpmdVars *g) - - umask(0); - -+#ifndef HAVE_SYSTEMD_DAEMON -+ if (create_pidfile() < 0) { -+ dbg_perror(g,"could not create pidfile %s", pidfile); -+ epmd_cleanup_exit(g,1); -+ } -+#endif /* HAVE_SYSTEMD_DAEMON */ -+ - for (fd = 0; fd < g->max_conn ; fd++) /* close all files ... */ - close(fd); - /* Syslog on linux will try to write to whatever if we dont -@@ -614,4 +652,3 @@ static int check_relaxed(void) - char* port_str = getenv("ERL_EPMD_RELAXED_COMMAND_CHECK"); - return (port_str != NULL) ? 1 : 0; - } -- -diff --git a/erts/epmd/src/epmd.h b/erts/epmd/src/epmd.h -index cffcd4ae7a..e53322acf5 100644 ---- a/erts/epmd/src/epmd.h -+++ b/erts/epmd/src/epmd.h -@@ -20,6 +20,9 @@ - - /* The port number is defined in a makefile */ - -+/* The name and path to the pid file */ -+#define EPMD_PIDFILE "/var/run/epmd.pid" -+ - /* Definitions of message codes */ - - /* Registration and queries */ --- -2.17.0 - diff --git a/dev-lang/erlang/files/erlang-custom-autoconf.patch b/dev-lang/erlang/files/erlang-custom-autoconf.patch deleted file mode 100644 index 5ae7b43ba289..000000000000 --- a/dev-lang/erlang/files/erlang-custom-autoconf.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -ur otp-OTP-21.0.5.orig/otp_build otp-OTP-21.0.5/otp_build ---- otp-OTP-21.0.5.orig/otp_build 2018-08-10 19:02:51.000000000 +0200 -+++ otp-OTP-21.0.5/otp_build 2018-08-15 23:44:59.417191209 +0200 -@@ -1343,7 +1343,9 @@ - do_lazy_configure "$@"; - do_boot;; - autoconf) -- do_autoconf;; -+ create_lib_configure_in -+ distribute_config_helpers -+ ;; - configure) - shift; - do_configure "$@";; diff --git a/dev-lang/erlang/metadata.xml b/dev-lang/erlang/metadata.xml index d5a2bb56fca6..7e9a773063d1 100644 --- a/dev-lang/erlang/metadata.xml +++ b/dev-lang/erlang/metadata.xml @@ -16,7 +16,6 @@ <use> <flag name="hipe">HIgh Performance Erlang extension</flag> <flag name="kpoll">Enable kernel polling support</flag> - <flag name="pgo">Build erts with profile-guided optimizations</flag> </use> <longdescription> Erlang is a programming language designed at the Ericsson diff --git a/dev-lang/ghc/Manifest b/dev-lang/ghc/Manifest index 6dfad7b660ed..99af02c5c17b 100644 --- a/dev-lang/ghc/Manifest +++ b/dev-lang/ghc/Manifest @@ -61,6 +61,8 @@ DIST ghc-8.8.2-src.tar.xz 19365816 BLAKE2B 85dbd2a4696755f43c28ec578d5ecfe706b27 DIST ghc-8.8.2-testsuite.tar.xz 1976924 BLAKE2B cec6c5dab1782332aca6364f995cffc1e9f3506649c3410b6eaa220e665b66f033dfad8ab6cae7677e15a6a1bd51237ed491b7fd04a19fa1d4f9cd8904617c64 SHA512 0fc41a0b3cb5f172442863c8a3b1cf549f2f660a070965e6083baa2c90c27b6a7c17550625105799010f4329dc189f4e392c86991844a9704a3e3a72a6d4e2f5 DIST ghc-8.8.3-src.tar.xz 19343672 BLAKE2B 4b33b4a386926f0ee625c7c18a3997f02bf664b8f553d7cdfb231553bf9510f44f72c0b46911539f6209f28ecab52ee520e61e2c9e750cc217b170b3596ffca0 SHA512 7db0d820a288e56bd32935cc03584295900605f6e7cac6fe6adcb3ec6c24d8d2cebf7a8efa421f2d2fa192602d7f24dfad1ddeeba252455e4cb8baa9889dcaa9 DIST ghc-8.8.3-testsuite.tar.xz 1965236 BLAKE2B 9cd10769336513284d8e0fbca1c3fce9e298ec67eb63eb10d41087fccba0f6281f1509aee684778fd23710ffe65843c43b4042e6692940af67766056c4503273 SHA512 4ebf3eabcd7591762dfcf45716b06293fb14c00b51307f7788c90dcf4e01f67e6bbb7a887b74d8d30272919486441ac236b42a54c4874aac69d90391b76f81c9 +DIST ghc-8.8.4-src.tar.xz 19395252 BLAKE2B 6fa898b9552398a724f0452f5cc88ba073264a5645288c73507258959efec40ce5a56a0eaafdabe58f15c5a9210b2c9da5954411dff5c81c52e061569d6a350a SHA512 efd23bd819f7429486696a3a929a040471db7ea8a2d1f1d832e4cf0825b9e1e0c5e6ecad0ab8376f58b74e9c28c1d2f773bd126596d6d853c9e57d57e5ceb090 +DIST ghc-8.8.4-testsuite.tar.xz 1965820 BLAKE2B 3b715700561788b8abdc986961d533b91399461d57a1686ededb4ccc36881503cdc3fc126b9a7b204a728c24b9a9ca97320142348644367aca9b47c87a5b3b51 SHA512 79d8fb0ba8de0fb48c938bd54c8c3278f1895d8ce5c700ce8cf6b3fc550073bb757208e85d4f9818400ebecca96f51d9248b8bbdac9eb2995671756164d08c16 DIST ghc-bin-7.10.3-alpha.tbz2 183558856 BLAKE2B 2bb02aafa49c6a91bec016e8bec2d07257d602e53c9df55792ec6fbbf8e2e46de1d5f3f72c0ccf74d6bd7f7987f53412063ccb02ae85455fce11fa928cbf5291 SHA512 08709fe9b4036ab41715c9a637a2a160104e3ab9e0ed9efaaf73428e3cfe19619e50c42b72c60bbbd27be2b9c2ea68f63d72c1a27d4519756e7c0d909f724230 DIST ghc-bin-7.10.3-amd64.tbz2 112040431 BLAKE2B 3e59b70ca309a1cd704266c54a7983f9a58362bf700ced89c5649c780c664c650ec091e14026a7b84e339d2ebff39eba1772eebcd9fb4b99b9c99d179453d5cc SHA512 e1554b3944edbe8e16537de5a29132dc6a22d780d9a700cdc9b76387b94191164398d6f2242bf8199527802572e2bb02545569d4f0930a0ee0dbfdeb25978558 DIST ghc-bin-7.10.3-ia64.tbz2 238680956 BLAKE2B 08593718d376051edfb0c86131e54dafc5c15056757fbeef90c653a7d217e49ff34ffaf7cd4083144c9277e73a290b822a0f889aaf806341375708e4b92654b2 SHA512 3694011aec8a6dc37889418b318993cb82f9b46a5175dd837713f396c8f59a19a920e0b0669fe3b4ec37d5bd8837c115264c0a8fc97c5a4ce06a3bdd52fcfce5 @@ -106,10 +108,12 @@ DIST ghc-bin-8.8.2-i686-pc-linux-gnu.tbz2 120289601 BLAKE2B df65bc6aa4ee22c979b9 DIST ghc-bin-8.8.2-x86_64-pc-linux-gnu.tbz2 118957404 BLAKE2B cddedbb0fe8d38e9821bd8f51f5177d35922b25bf4fc8a537e921443560f141cdef44e54a0b4ef2dde07dbe33d9c1cba2e67ba80db4313f67e9bac089d967f56 SHA512 b0b801dd6abe9f5e6217e18568e2911dbfea11b1b45ff526950e87c73a34bcd597afc5105fcff2dc46bb13cf95e63db90c0d24ca9babf174b397a53001e8e0ac DIST ghc-bin-8.8.3-i686-pc-linux-gnu.tbz2 120243899 BLAKE2B 7f932523a71dcfd4cdd468bf67f470a942c314888c0093c21c211d54b3e158f45f051f027c78644a651047d81e809e1422bbaa5043e8559c6a4622ac0472f7e4 SHA512 12bf08b85652fd061849b9adb528d7a5c6fe9c2260cf02b92fab470fff16c3121bcb4e0f7044d05f252012083d622a1a490fa7f7c949142a3b5d03ccf0dd3ebc DIST ghc-bin-8.8.3-x86_64-pc-linux-gnu.tbz2 118988294 BLAKE2B 4e5aa3844934ae2726bf9c8690acd5a887f10cd49386ffadbc536f9309d33b3894b49507964eaf0d8a052747eb33aeabbe4d2cd22493297c295cf9414fcb766c SHA512 dd656157fe744c1df1c8ed34d1129ec358b26f3042c6da68e704e0f6a45d8114789000479e28a06dc16961afb283b3c666b427025590498a3d2da9b741b435c7 +DIST ghc-bin-8.8.4-i686-pc-linux-gnu.tbz2 120336081 BLAKE2B 55dfbb90d5e55c2af5e93c69249828a85cd9171c164b80dfdaf86512972b2c6854c8e4f07426af4ab52a5fb1a85d96a58c2cf003fb02372c55428001cfaea491 SHA512 ad3b83344349976d3253934195b2dc6299648391572b13735943c5ea2239c031c19b0cafd86c16cfb0c061e73bc72e9248f9c1731494a9a15fbe188f02913c12 +DIST ghc-bin-8.8.4-x86_64-pc-linux-gnu.tbz2 118897883 BLAKE2B a180b2dd1a3bc222044ece809ad700aee29d0c3e75b57ee9af3ca33c9c0f59dbf36f68202f746d99f80915cb717a9c41fc12db507f1cb469981732703a06b9cc SHA512 9d4be02dbd9704c93ef18feb92ea30bd5d590df31f288bf1b364818424c5019ca9ada26eec88418199f90ae8f4459d0a9352104e3f3186bbdc241891eb1b66c4 DIST hoopl-3.10.2.0.tar.gz 241940 BLAKE2B 0ed7bf80486767c81415f99da8780a525401c388dea0b3f380bbecceae9cc7f66d8b5d0d7b31f8cb41796309b7a93adb113485efd14882f8af321989ce900a9b SHA512 083baa8a5eb53247aff8d5b9b2144e0f63adb9400934297bbd80bfcec607dd90a34def4301045a60472ef10b0fb90ab84692fc08f786e7f806c28afdab1ef66a DIST transformers-0.4.3.0.tar.gz 28632 BLAKE2B 92cabcb654bb11854a3bffbb1262f5cd62eda1aff447157086a61ebc451ebf2fddec53b6a2cc058174f24f0f0e32df671d3717e30a542c8dc90cb87e327d990c SHA512 c3ec0893ebba4fbd6087c3202e919552c4a9bff3350b5c0589e7ebb18751a515d98b8cac15b0a3252906ea72b5a0eb09b7fe88c8da88b09d6ce4fbf0f50b2780 -EBUILD ghc-7.10.3.ebuild 21685 BLAKE2B 27209692a1e53a89a0193664111e9e11baa9676e59cdfeb53debc7ef66c2bfbb3c2bcac70e290cc72d709eccbad161f857b5b4c8fd75c0314dba253518d0b429 SHA512 ed0f7de6a72dee599199a3fa33787bc6edac4e758ed02b929462d728fda0e1bbe185c7ffaa5ddd0fec0614c8669b02d72bea6e776150df3b4a406448698188ad -EBUILD ghc-7.8.4.ebuild 19820 BLAKE2B 1bcef49b936c6c5df0a2af440425c6df3fa88438608da83b8b84ae4976a751cb5afbb733a0dcaf0c78990302733c24be23a024c17e7cbeeefe98f8cbcf334dd2 SHA512 d710f30c782c475fd83b149492f39a12fbba01d94bd8f12cafa0f717f8971ce0f0a39a1e4409732320b2c2af9011432e7ec747ae15608592dc5c5853a600ae8f +EBUILD ghc-7.10.3.ebuild 21673 BLAKE2B 9bddf804dbe6e8ee1ab8a21e8d31c50ed40c4b2641bd83dd1b9e83954449e1a6bc77835a3f012885eec45d3019b03094c328cf2821e16d293d8fa97858180e94 SHA512 2dac83051c8e5215450f0596decc4a56e0aefff06c5ec673967a46aaaf779042349d63b5e0da0284faa0036c1315101d0509c06c9d550885cd0efae41eccc876 +EBUILD ghc-7.8.4.ebuild 19808 BLAKE2B ce921fa76b8f089e80a2766c46939e0b11bf1ba992aa23bb91cf1ad03adb7cae222c2690c4273dd4f9b47912d678bdd6484df2c1f26643b0221a0b70792c6de6 SHA512 ddb849f7682d5e9a98745227c99bfcd54555b0740802641ec444e3933f8ecb9a2f26e0a4c41d532eb7a6643d42d932028120424efcfac771ddf17bb7230e6294 EBUILD ghc-8.0.2.ebuild 21608 BLAKE2B 7cfbdaf9fa3f2fc2771e48a32d235c50aad5f7db427df443d141c5b32cee52c80a216a0e856eae57bdbf1d115bd1e15056516412172b95757f7f904c15d2a26e SHA512 aa48e12a06818945fed9f4b13a25bd287d988b7fb8aedde7cb32ec35ffbf2f9780c4ea9285fe9b0ff71486467c4fcaf7f97f2455955d8373e7393902a85bf869 EBUILD ghc-8.10.1.ebuild 25752 BLAKE2B bb83a12266104ab88d62850ffc258af002688b2a1cbf66856d577292ae81abeaf4db527f8c8e27bf427a2a1de8b099871cb4deda3bf5f24d6a08c167dfe2dd28 SHA512 93b0c2deae41a82ccdda8d06c0180ba9029716ca81b09ed0286cb734170dce2b6aed54297a40c145dcb7c2900698ec2d45394377514be76b3eb9bb3dbf21089d EBUILD ghc-8.2.1.ebuild 24841 BLAKE2B cefde1d2763d9e33b151a3a8ef1f9f5e8cdd308314301bd4ca5420a71c4237f9f8291ed37db88eae9d7d0606277fd3f4e45a15c31e17062e5acca3b989cd5331 SHA512 205a0ec31af711eb874fb2f356d2d3a64e0b5d8b8135ccc96eb9601e61765bf6ff4a4ceac027fef63994a8d17e76957c1ba498e5db9a1ba46ace819f82ec9d4b @@ -122,4 +126,5 @@ EBUILD ghc-8.6.5.ebuild 25616 BLAKE2B 2c1d3564cf1ae2589f173d0af3aa830c2fbf24228a EBUILD ghc-8.8.1.ebuild 26268 BLAKE2B 499c7ad9466ea8fb925d39ff5a9fe301c4957909f200a69080242a546ad2d5a723a09db6d55422c13a7ef7a8f9ffc5e1cf1e0dbbd9ae121db7137a3a2f2e5646 SHA512 17af609df49af5cdcb7edc20c4a8ec7c5ca16bd4b0c66cb3326278dfaf50bad1a1339448dbb43d81dda692510037b718343a0111a3f39071cf5fb098d787f63d EBUILD ghc-8.8.2.ebuild 26224 BLAKE2B 2cfc02babfb8a486c3497aef1ecc9c5698bc4624bb46a4f717ff1941733c4e6a5dd289b18f2887eb8edbaa4cf9e48e40c3298a0698e04e1340ca3e18a135bea8 SHA512 b90f763d343cf229cd7d313f6129e27b3e32265ebe6d0c3245b43668d3f6480deccea6f9c56f11714e38231ce66033d5ee75f68466a0856a7e9028ee386c7bf6 EBUILD ghc-8.8.3.ebuild 26286 BLAKE2B d90745ca181b16b314e43483b5a106534720625dd0029b2f98846da013baacb72218aefb6aa5be9a151d3044f9e17de248746ed86d8e6aa029415e0bd1216aa7 SHA512 a03262c9f56e7e5d06d5f403f01cd6fed5fa18964718956c9e795ed7e0e20019a0426bb92af899f8b14ab652bbaec2fba5b6ff943b5645a46a56875a41a37738 -MISC metadata.xml 878 BLAKE2B aa6aa11c4c60763eb1d29253a6b63057ce98b16dce26d46de216064809665330102cb5313258197a95dda4be91ff843fbe778090110460883f5a367fe4837afd SHA512 97c636844d70431fc41a39318d2d29bf686fab362d0f962a95039c740ef91c6642f229539f34493e7a3f300211d6550a5a976d84d0fcef6f7dfaf026bcbc62e2 +EBUILD ghc-8.8.4.ebuild 26402 BLAKE2B ee496818dd158c899589f574cbd7422307c8712b1e15012f370b2e81e157d5d5d4d11531d60ea2ff9fc23d9c4bc04c9515c117bd5f579cc62df84e0b8a2c1fbe SHA512 a8d441ff83fcaa094d0fa3fe4a6499e7864957d34e21fe4d297db8be9ce044af1a10e4b905197cba2ac4c6c93a49f45cc3d05d48c5b64bf1c60142bd0816b3cd +MISC metadata.xml 877 BLAKE2B 763db2ffce8c241ef55110ca08aa9f7383f14bbe7f96a443b438f027214e04f56f8216b0cd0d871e516a13f07a8a5a52835b0f75ddd3eb9ebd7faccd3a6b03d9 SHA512 516ad3cdb3b26b242668ae2bbf48628c8fb95fdc84ab3dc00afc940c68c2b78a7aa85634c228e9b3427963f0b86263d24ba043d0fd9ae57752e5075392a0322c diff --git a/dev-lang/ghc/ghc-7.10.3.ebuild b/dev-lang/ghc/ghc-7.10.3.ebuild index 1112d5068ae6..3baf85185f3f 100644 --- a/dev-lang/ghc/ghc-7.10.3.ebuild +++ b/dev-lang/ghc/ghc-7.10.3.ebuild @@ -72,7 +72,7 @@ BUMP_LIBRARIES=( LICENSE="BSD" SLOT="0/${PV}" -KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" IUSE="doc ghcbootstrap ghcmakebinary +gmp" IUSE+=" binary" IUSE+=" elibc_glibc" # system stuff diff --git a/dev-lang/ghc/ghc-7.8.4.ebuild b/dev-lang/ghc/ghc-7.8.4.ebuild index a8b740d67a78..dd6149e21e70 100644 --- a/dev-lang/ghc/ghc-7.8.4.ebuild +++ b/dev-lang/ghc/ghc-7.8.4.ebuild @@ -65,7 +65,7 @@ S="${WORKDIR}"/${GHC_P} SRC_URI+=" https://dev.gentoo.org/~slyfox/distfiles/${P}-ia64-CLOSUREs-regenerated.patch.gz" LICENSE="BSD" SLOT="0/${PV}" -KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" IUSE="doc ghcbootstrap ghcmakebinary +gmp" IUSE+=" binary" IUSE+=" elibc_glibc" # system stuff diff --git a/dev-lang/ghc/ghc-8.8.4.ebuild b/dev-lang/ghc/ghc-8.8.4.ebuild new file mode 100644 index 000000000000..9ada4d7c1c10 --- /dev/null +++ b/dev-lang/ghc/ghc-8.8.4.ebuild @@ -0,0 +1,806 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +# to make make a crosscompiler use crossdev and symlink ghc tree into +# cross overlay. result would look like 'cross-sparc-unknown-linux-gnu/ghc' +export CBUILD=${CBUILD:-${CHOST}} +export CTARGET=${CTARGET:-${CHOST}} +if [[ ${CTARGET} = ${CHOST} ]] ; then + if [[ ${CATEGORY/cross-} != ${CATEGORY} ]] ; then + export CTARGET=${CATEGORY/cross-} + fi +fi + +inherit autotools bash-completion-r1 eutils flag-o-matic ghc-package +inherit multilib multiprocessing pax-utils toolchain-funcs prefix +inherit check-reqs +DESCRIPTION="The Glasgow Haskell Compiler" +HOMEPAGE="https://www.haskell.org/ghc/" + +# we don't have any binaries yet +arch_binaries="" + +BIN_PV=${PV} +# sorted! +#arch_binaries="$arch_binaries alpha? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-alpha.tbz2 )" +#arch_binaries="$arch_binaries arm? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-armv7a-hardfloat-linux-gnueabi.tbz2 )" +#arch_binaries="$arch_binaries arm64? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-aarch64-unknown-linux-gnu.tbz2 )" +arch_binaries="$arch_binaries amd64? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-x86_64-pc-linux-gnu.tbz2 )" +#arch_binaries="$arch_binaries ia64? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-ia64-fixed-fiw.tbz2 )" +#arch_binaries="$arch_binaries ppc? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-ppc.tbz2 )" +#arch_binaries="$arch_binaries ppc64? ( !big-endian? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-powerpc64le-unknown-linux-gnu.tbz2 ) )" +#arch_binaries="$arch_binaries sparc? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-sparc.tbz2 )" +arch_binaries="$arch_binaries x86? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-i686-pc-linux-gnu.tbz2 )" + +# various ports: +#arch_binaries="$arch_binaries x86-fbsd? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-x86-fbsd.tbz2 )" + +# 0 - yet +yet_binary() { + case "${ARCH}" in + #alpha) return 0 ;; + #arm64) return 0 ;; + #arm) return 0 ;; + amd64) return 0 ;; + #ia64) return 0 ;; + #ppc) return 0 ;; + #ppc64) + # use big-endian && return 1 + # return 0 + # ;; + #sparc) return 0 ;; + x86) return 0 ;; + *) return 1 ;; + esac +} + +GHC_PV=${PV} +#GHC_PV=8.6.0.20180810 # uncomment only for -alpha, -beta, -rc ebuilds +GHC_P=${PN}-${GHC_PV} # using ${P} is almost never correct + +SRC_URI="!binary? ( + https://downloads.haskell.org/~ghc/${PV/_/-}/${GHC_P}-src.tar.xz + test? ( https://downloads.haskell.org/~ghc/${PV/_/-}/${GHC_P}-testsuite.tar.xz ) +)" +S="${WORKDIR}"/${GHC_P} + +[[ -n $arch_binaries ]] && SRC_URI+=" !ghcbootstrap? ( $arch_binaries )" + +BUMP_LIBRARIES=( + # "hackage-name hackage-version" +) + +LICENSE="BSD" +SLOT="0/${PV}" +KEYWORDS="~amd64 ~x86" +IUSE="big-endian doc elfutils ghcbootstrap ghcmakebinary +gmp numa profile test" +IUSE+=" binary" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-lang/perl-5.6.1 + dev-libs/gmp:0= + sys-libs/ncurses:0=[unicode] + elfutils? ( dev-libs/elfutils ) + !ghcmakebinary? ( dev-libs/libffi:= ) + numa? ( sys-process/numactl ) +" + +# This set of dependencies is needed to run +# prebuilt ghc. We specifically avoid ncurses +# dependency with: +# utils/ghc-pkg_HC_OPTS += -DBOOTSTRAPPING +PREBUILT_BINARY_DEPENDS=" + !prefix? ( elibc_glibc? ( >=sys-libs/glibc-2.17 ) ) +" +# This set of dependencies is needed to install +# ghc[binary] in system. terminfo package is linked +# against ncurses. +PREBUILT_BINARY_RDEPENDS="${PREBUILT_BINARY_DEPENDS} + sys-libs/ncurses:0/6 +" + +RDEPEND+="binary? ( ${PREBUILT_BINARY_RDEPENDS} )" + +DEPEND="${RDEPEND} + doc? ( app-text/docbook-xml-dtd:4.2 + app-text/docbook-xml-dtd:4.5 + app-text/docbook-xsl-stylesheets + dev-python/sphinx + >=dev-libs/libxslt-1.1.2 ) + !ghcbootstrap? ( ${PREBUILT_BINARY_DEPENDS} )" + +REQUIRED_USE="?? ( ghcbootstrap binary )" + +# haskell libraries built with cabal in configure mode, #515354 +QA_CONFIGURE_OPTIONS+=" --with-compiler --with-gcc" + +is_crosscompile() { + [[ ${CHOST} != ${CTARGET} ]] +} + +is_native() { + [[ ${CHOST} == ${CBUILD} ]] && [[ ${CHOST} == ${CTARGET} ]] +} + +if ! is_crosscompile; then + PDEPEND="!ghcbootstrap? ( >=app-admin/haskell-updater-1.2 )" +fi + +# returns tool prefix for crosscompiler. +# Example: +# CTARGET=armv7a-unknown-linux-gnueabi +# CHOST=x86_64-pc-linux-gnu +# "armv7a-unknown-linux-gnueabi-" +# CTARGET=${CHOST} +# "" +# Used in tools and library prefix: +# "${ED}"/usr/bin/$(cross)haddock +# "${ED}/usr/$(get_libdir)/$(cross)${GHC_P}/package.conf.d" + +cross() { + if is_crosscompile; then + echo "${CTARGET}-" + else + echo "" + fi +} + +append-ghc-cflags() { + local persistent compile assemble link + local flag ghcflag + + for flag in $*; do + case ${flag} in + persistent) persistent="yes";; + compile) compile="yes";; + assemble) assemble="yes";; + link) link="yes";; + *) + [[ ${compile} ]] && ghcflag="-optc${flag}" CFLAGS+=" ${flag}" && GHC_FLAGS+=" ${ghcflag}" && + [[ ${persistent} ]] && GHC_PERSISTENT_FLAGS+=" ${ghcflag}" + [[ ${assemble} ]] && ghcflag="-opta${flag}" CFLAGS+=" ${flag}" && GHC_FLAGS+=" ${ghcflag}" && + [[ ${persistent} ]] && GHC_PERSISTENT_FLAGS+=" ${ghcflag}" + [[ ${link} ]] && ghcflag="-optl${flag}" LDFLAGS+=" ${flag}" && GHC_FLAGS+=" ${ghcflag}" && + [[ ${persistent} ]] && GHC_PERSISTENT_FLAGS+=" ${ghcflag}" + ;; + esac + done +} + +# $1 - lib name (under libraries/) +# $2 - lib version +# example: bump_lib "transformers" "0.4.2.0" +bump_lib() { + local pn=$1 pv=$2 + local p=${pn}-${pv} + local f + + einfo "Bumping ${pn} up to ${pv}" + + for f in ghc.mk GNUmakefile; do + mv libraries/"${pn}"/$f "${WORKDIR}"/"${p}"/$f || die + done + mv libraries/"${pn}" "${WORKDIR}"/"${pn}".old || die + mv "${WORKDIR}"/"${p}" libraries/"${pn}" || die +} + +update_SRC_URI() { + local p pn pv + for p in "${BUMP_LIBRARIES[@]}"; do + set -- $p + pn=$1 pv=$2 + + SRC_URI+=" https://hackage.haskell.org/package/${pn}-${pv}/${pn}-${pv}.tar.gz" + done +} + +update_SRC_URI + +bump_libs() { + local p pn pv + for p in "${BUMP_LIBRARIES[@]}"; do + set -- $p + pn=$1 pv=$2 + + bump_lib "${pn}" "${pv}" + done +} + +ghc_setup_cflags() { + # TODO: plumb CFLAGS and BUILD_CFLAGS to respective CONF_CC_OPTS_STAGE<N> + if ! is_native; then + export CFLAGS=${GHC_CFLAGS-"-O2 -pipe"} + export LDFLAGS=${GHC_LDFLAGS-"-Wl,-O1"} + einfo "Crosscompiling mode:" + einfo " CHOST: ${CHOST}" + einfo " CTARGET: ${CTARGET}" + einfo " CFLAGS: ${CFLAGS}" + einfo " LDFLAGS: ${LDFLAGS}" + einfo " prefix: $(cross)" + return + fi + # We need to be very careful with the CFLAGS we ask ghc to pass through to + # gcc. There are plenty of flags which will make gcc produce output that + # breaks ghc in various ways. The main ones we want to pass through are + # -mcpu / -march flags. These are important for arches like alpha & sparc. + # We also use these CFLAGS for building the C parts of ghc, ie the rts. + strip-flags + strip-unsupported-flags + + # Cmm can't parse line numbers #482086 + replace-flags -ggdb[3-9] -ggdb2 + + GHC_FLAGS="" + GHC_PERSISTENT_FLAGS="" + for flag in ${CFLAGS}; do + case ${flag} in + + # Ignore extra optimisation (ghc passes -O to gcc anyway) + # -O2 and above break on too many systems + -O*) ;; + + # Arch and ABI flags are what we're really after + -m*) append-ghc-cflags compile assemble ${flag};; + + # Sometimes it's handy to see backtrace of RTS + # to get an idea what happens there + -g*) append-ghc-cflags compile ${flag};; + + # Ignore all other flags, including all -f* flags + esac + done + + for flag in ${LDFLAGS}; do + append-ghc-cflags link ${flag} + done + + # GHC uses ${CBUILD}-gcc, ${CHOST}-gcc and ${CTARGET}-gcc at a single build. + # Skip any gentoo-specific tweaks for cross-case to avoid passing unsupported + # options to gcc. + if is_native; then + # hardened-gcc needs to be disabled, because our prebuilt binaries/libraries + # are not built with fPIC, bug #606666 + gcc-specs-pie && append-ghc-cflags persistent compile link -nopie + tc-is-gcc && ver_test $(gcc-version) -ge 6.3 && if ! use ghcbootstrap; then + # gcc-6.3 has support for -no-pie upstream, but spelling differs from + # gentoo-specific '-nopie'. We enable it in non-bootstrap to allow + # hardened users try '-pie' in USE=ghcbootstrap mode. + append-ghc-cflags compile link -no-pie + fi + + # prevent from failing to build unregisterised ghc: + # https://www.mail-archive.com/debian-bugs-dist@lists.debian.org/msg171602.html + use ppc64 && append-ghc-cflags persistent compile -mminimal-toc + fi +} + +# substitutes string $1 to $2 in files $3 $4 ... +relocate_path() { + local from=$1 + local to=$2 + shift 2 + local file= + for file in "$@" + do + sed -i -e "s|$from|$to|g" \ + "$file" || die "path relocation failed for '$file'" + done +} + +# changes hardcoded ghc paths and updates package index +# $1 - new absolute root path +relocate_ghc() { + local to=$1 ghc_v=${BIN_PV} + + # libdir for prebuilt binary and for current system may mismatch + # It does for prefix installation for example: bug #476998 + local bin_ghc_prefix=${WORKDIR}/usr + local bin_libpath=$(echo "${bin_ghc_prefix}"/lib*) + local bin_libdir=${bin_libpath#${bin_ghc_prefix}/} + + # backup original script to use it later after relocation + local gp_back="${T}/ghc-pkg-${ghc_v}-orig" + cp "${WORKDIR}/usr/bin/ghc-pkg-${ghc_v}" "$gp_back" || die "unable to backup ghc-pkg wrapper" + + if [[ ${bin_libdir} != $(get_libdir) ]]; then + einfo "Relocating '${bin_libdir}' to '$(get_libdir)' (bug #476998)" + # moving the dir itself is not strictly needed + # but then USE=binary would result in installing + # in '${bin_libdir}' + mv "${bin_ghc_prefix}/${bin_libdir}" "${bin_ghc_prefix}/$(get_libdir)" || die + + relocate_path "/usr/${bin_libdir}" "/usr/$(get_libdir)" \ + "${WORKDIR}/usr/bin/ghc-${ghc_v}" \ + "${WORKDIR}/usr/bin/ghci-${ghc_v}" \ + "${WORKDIR}/usr/bin/ghc-pkg-${ghc_v}" \ + "${WORKDIR}/usr/bin/hsc2hs" \ + "${WORKDIR}/usr/bin/runghc-${ghc_v}" \ + "$gp_back" \ + "${WORKDIR}/usr/$(get_libdir)/${PN}-${ghc_v}/package.conf.d/"* + fi + + # Relocate from /usr to ${EPREFIX}/usr + relocate_path "/usr" "${to}/usr" \ + "${WORKDIR}/usr/bin/ghc-${ghc_v}" \ + "${WORKDIR}/usr/bin/ghci-${ghc_v}" \ + "${WORKDIR}/usr/bin/ghc-pkg-${ghc_v}" \ + "${WORKDIR}/usr/bin/haddock-ghc-${ghc_v}" \ + "${WORKDIR}/usr/bin/hp2ps" \ + "${WORKDIR}/usr/bin/hpc" \ + "${WORKDIR}/usr/bin/hsc2hs" \ + "${WORKDIR}/usr/bin/runghc-${ghc_v}" \ + "${WORKDIR}/usr/$(get_libdir)/${PN}-${ghc_v}/package.conf.d/"* + + # this one we will use to regenerate cache + # so it should point to current tree location + relocate_path "/usr" "${WORKDIR}/usr" "$gp_back" + + if use prefix; then + hprefixify "${bin_libpath}"/${PN}*/settings + fi + + # regenerate the binary package cache + "$gp_back" recache || die "failed to update cache after relocation" + rm "$gp_back" +} + +ghc-check-reqs() { + # These are pessimistic values (slightly bigger than worst-case) + # Worst case is UNREG USE=profile ia64. See bug #611866 for some + # numbers on various arches. + CHECKREQS_DISK_BUILD=8G + CHECKREQS_DISK_USR=2G + # USE=binary roughly takes + use binary && CHECKREQS_DISK_BUILD=4G + + "$@" +} + +pkg_pretend() { + ghc-check-reqs check-reqs_pkg_pretend +} + +pkg_setup() { + ghc-check-reqs check-reqs_pkg_setup + + # quiet portage about prebuilt binaries + use binary && QA_PREBUILT="*" + + [[ ${MERGE_TYPE} == binary ]] && return + + if use ghcbootstrap; then + ewarn "You requested ghc bootstrapping, this is usually only used" + ewarn "by Gentoo developers to make binary .tbz2 packages." + + [[ -z $(type -P ghc) ]] && \ + die "Could not find a ghc to bootstrap with." + else + if ! yet_binary; then + eerror "Please try emerging with USE=ghcbootstrap and report build" + eerror "sucess or failure to the haskell team (haskell@gentoo.org)" + die "No binary available for '${ARCH}' arch yet, USE=ghcbootstrap" + fi + fi +} + +src_unpack() { + # Create the ${S} dir if we're using the binary version + use binary && mkdir "${S}" + + # the Solaris and Darwin binaries from ghc (maeder) need to be + # unpacked separately, so prevent them from being unpacked + local ONLYA=${A} + case ${CHOST} in + *-darwin* | *-solaris*) ONLYA=${GHC_P}-src.tar.xz ;; + esac + unpack ${ONLYA} +} + +src_prepare() { + ghc_setup_cflags + + if ! use ghcbootstrap && [[ ${CHOST} != *-darwin* && ${CHOST} != *-solaris* ]]; then + # Modify the wrapper script from the binary tarball to use GHC_PERSISTENT_FLAGS. + # See bug #313635. + sed -i -e "s|\"\$topdir\"|\"\$topdir\" ${GHC_PERSISTENT_FLAGS}|" \ + "${WORKDIR}/usr/bin/ghc-${BIN_PV}" + + # allow hardened users use vanilla binary to bootstrap ghc + # ghci uses mmap with rwx protection at it implements dynamic + # linking on it's own (bug #299709) + pax-mark -m "${WORKDIR}/usr/$(get_libdir)/${PN}-${BIN_PV}/bin/ghc" + fi + + if use binary; then + if use prefix; then + relocate_ghc "${EPREFIX}" + fi + + # Move unpacked files to the expected place + mv "${WORKDIR}/usr" "${S}" + eapply_user + else + if ! use ghcbootstrap; then + case ${CHOST} in + *-darwin* | *-solaris*) + # UPDATE ME for ghc-7 + mkdir "${WORKDIR}"/ghc-bin-installer || die + pushd "${WORKDIR}"/ghc-bin-installer > /dev/null || die + use sparc-solaris && unpack ghc-6.10.4-sparc-sun-solaris2.tar.bz2 + use x86-solaris && unpack ghc-7.0.3-i386-unknown-solaris2.tar.bz2 + use x86-macos && unpack ghc-7.4.1-i386-apple-darwin.tar.bz2 + use x64-macos && unpack ghc-7.4.1-x86_64-apple-darwin.tar.bz2 + popd > /dev/null + + pushd "${WORKDIR}"/ghc-bin-installer/ghc-[67].?*.? > /dev/null || die + # fix the binaries so they run, on Solaris we need an + # LD_LIBRARY_PATH which has our prefix libdirs, on + # Darwin we need to replace the frameworks with our libs + # from the prefix fix before installation, because some + # of the tools are actually used during configure/make + if [[ ${CHOST} == *-solaris* ]] ; then + export LD_LIBRARY_PATH="${EPREFIX}/$(get_libdir):${EPREFIX}/usr/$(get_libdir):${LD_LIBRARY_PATH}" + elif [[ ${CHOST} == *-darwin* ]] ; then + local readline_framework=GNUreadline.framework/GNUreadline + local gmp_framework=/opt/local/lib/libgmp.10.dylib + local ncurses_file=/opt/local/lib/libncurses.5.dylib + for binary in $(scanmacho -BRE MH_EXECUTE -F '%F' .) ; do + install_name_tool -change \ + ${readline_framework} \ + "${EPREFIX}"/lib/libreadline.dylib \ + ${binary} || die + install_name_tool -change \ + ${gmp_framework} \ + "${EPREFIX}"/usr/lib/libgmp.dylib \ + ${binary} || die + install_name_tool -change \ + ${ncurses_file} \ + "${EPREFIX}"/usr/lib/libncurses.dylib \ + ${binary} || die + done + # we don't do frameworks! + sed -i \ + -e 's/\(frameworks = \)\["GMP"\]/\1[]/g' \ + -e 's/\(extraLibraries = \)\["m"\]/\1["m","gmp"]/g' \ + rts/package.conf.in || die + fi + + # it is autoconf, but we really don't want to give it too + # many arguments, in fact we do the make in-place anyway + ./configure --prefix="${WORKDIR}"/usr || die + make install || die + popd > /dev/null + ;; + *) + relocate_ghc "${WORKDIR}" + ;; + esac + fi + + sed -i -e "s|\"\$topdir\"|\"\$topdir\" ${GHC_PERSISTENT_FLAGS}|" \ + "${S}/ghc/ghc.wrapper" + + cd "${S}" # otherwise eapply will break + + eapply "${FILESDIR}"/${PN}-7.0.4-CHOST-prefix.patch + eapply "${FILESDIR}"/${PN}-8.2.1-darwin.patch + eapply "${FILESDIR}"/${PN}-7.8.3-prim-lm.patch + eapply "${FILESDIR}"/${PN}-8.0.2-no-relax-everywhere.patch + eapply "${FILESDIR}"/${PN}-8.4.2-allow-cross-bootstrap.patch + # fixed in 8.8.4. See https://gitlab.haskell.org/ghc/ghc/-/blob/ghc-8.8.4-release/configure.ac#L1273 + # eapply "${FILESDIR}"/${PN}-8.6.5-numa.patch + # rumors say this is fixed properly in 8.8.3. Let's check! + #eapply "${FILESDIR}"/${PN}-8.8.1-revert-CPP.patch + + # a bunch of crosscompiler patches + # needs newer version: + #eapply "${FILESDIR}"/${PN}-8.2.1_rc1-hp2ps-cross.patch + + # mingw32 target + pushd "${S}/libraries/Win32" + eapply "${FILESDIR}"/${PN}-8.2.1_rc1-win32-cross-2-hack.patch # bad workaround + popd + + bump_libs + + eapply_user + # as we have changed the build system + eautoreconf + fi +} + +src_configure() { + if ! use binary; then + # initialize build.mk + echo '# Gentoo changes' > mk/build.mk + + # Put docs into the right place, ie /usr/share/doc/ghc-${GHC_PV} + echo "docdir = ${EPREFIX}/usr/share/doc/$(cross)${P}" >> mk/build.mk + echo "htmldir = ${EPREFIX}/usr/share/doc/$(cross)${P}" >> mk/build.mk + + # We also need to use the GHC_FLAGS flags when building ghc itself + echo "SRC_HC_OPTS+=${HCFLAGS} ${GHC_FLAGS}" >> mk/build.mk + echo "SRC_CC_OPTS+=${CFLAGS}" >> mk/build.mk + echo "SRC_LD_OPTS+=${LDFLAGS}" >> mk/build.mk + # Speed up initial Cabal bootstrap + echo "utils/ghc-cabal_dist_EXTRA_HC_OPTS+=$(ghc-make-args)" >> mk/build.mk + + # We can't depend on haddock except when bootstrapping when we + # must build docs and include them into the binary .tbz2 package + # app-text/dblatex is not in portage, can not build PDF or PS + echo "BUILD_SPHINX_PDF = NO" >> mk/build.mk + echo "BUILD_SPHINX_HTML = $(usex doc YES NO)" >> mk/build.mk + echo "BUILD_MAN = $(usex doc YES NO)" >> mk/build.mk + + # this controls presence on 'xhtml' and 'haddock' in final install + echo "HADDOCK_DOCS = YES" >> mk/build.mk + + # not used outside of ghc's test + if [[ -n ${GHC_BUILD_DPH} ]]; then + echo "BUILD_DPH = YES" >> mk/build.mk + else + echo "BUILD_DPH = NO" >> mk/build.mk + fi + + # Any non-native build has to skip as it needs + # target haddock binary to be runnabine. + if ! is_native; then + # disable docs generation as it requires running stage2 + echo "HADDOCK_DOCS=NO" >> mk/build.mk + echo "BUILD_SPHINX_HTML=NO" >> mk/build.mk + echo "BUILD_SPHINX_PDF=NO" >> mk/build.mk + fi + + if is_crosscompile; then + # Install ghc-stage1 crosscompiler instead of + # ghc-stage2 cross-built compiler. + echo "Stage1Only=YES" >> mk/build.mk + fi + + # allows overriding build flavours for libraries: + # v - vanilla (static libs) + # p - profiled + # dyn - shared libraries + # example: GHC_LIBRARY_WAYS="v dyn" + if [[ -n ${GHC_LIBRARY_WAYS} ]]; then + echo "GhcLibWays=${GHC_LIBRARY_WAYS}" >> mk/build.mk + fi + echo "BUILD_PROF_LIBS = $(usex profile YES NO)" >> mk/build.mk + + # Get ghc from the unpacked binary .tbz2 + # except when bootstrapping we just pick ghc up off the path + if ! use ghcbootstrap; then + export PATH="${WORKDIR}/usr/bin:${PATH}" + fi + + echo "INTEGER_LIBRARY = $(usex gmp integer-gmp integer-simple)" >> mk/build.mk + + # don't strip anything. Very useful when stage2 SIGSEGVs on you + echo "STRIP_CMD = :" >> mk/build.mk + + local econf_args=() + + # GHC embeds toolchain it was built by and uses it later. + # Don't allow things like ccache or versioned binary slip. + # We use stable thing across gcc upgrades. + # User can use EXTRA_ECONF=CC=... to override this default. + econf_args+=( + AR=${CTARGET}-ar + CC=${CTARGET}-gcc + # these should be inferred by GHC but ghc defaults + # to using bundled tools on windows. + Windres=${CTARGET}-windres + DllWrap=${CTARGET}-dllwrap + # we set the linker explicitly below + --disable-ld-override + ) + case ${CTARGET} in + arm*) + # ld.bfd-2.28 does not work for ghc. Force ld.gold + # instead. This should be removed once gentoo gets + # a fix for R_ARM_COPY bug: https://sourceware.org/PR16177 + econf_args+=(LD=${CTARGET}-ld.gold) + ;; + sparc*) + # ld.gold-2.28 does not work for ghc. Force ld.bfd + # instead. This should be removed once gentoo gets + # a fix for missing --no-relax support bug: + # https://sourceware.org/ml/binutils/2017-07/msg00183.html + econf_args+=(LD=${CTARGET}-ld.bfd) + ;; + *) + econf_args+=(LD=${CTARGET}-ld) + esac + + if [[ ${CBUILD} != ${CHOST} ]]; then + # GHC bug: ghc claims not to support cross-building. + # It does, but does not distinct --host= value + # for stage1 and stage2 compiler. + econf_args+=(--host=${CBUILD}) + fi + + if use ghcmakebinary; then + # When building booting libary we are trying to + # bundle or restrict most of external depends + # with unstable ABI: + # - embed libffi (default GHC behaviour) + # - disable ncurses support for ghci (via haskeline) + # https://bugs.gentoo.org/557478 + # - disable ncurses support for ghc-pkg + echo "libraries/haskeline_CONFIGURE_OPTS += --flag=-terminfo" >> mk/build.mk + echo "utils/ghc-pkg_HC_OPTS += -DBOOTSTRAPPING" >> mk/build.mk + elif is_native; then + # using ${GTARGET}'s libffi is not supported yet: + # GHC embeds full path for ffi includes without /usr/${CTARGET} account. + econf_args+=(--with-system-libffi) + econf_args+=(--with-ffi-includes=$($(tc-getPKG_CONFIG) libffi --cflags-only-I | sed -e 's@^-I@@')) + fi + + einfo "Final mk/build.mk:" + cat mk/build.mk || die + + econf ${econf_args[@]} \ + --enable-bootstrap-with-devel-snapshot \ + $(use elfutils && echo --enable-dwarf-unwind) \ + $(use_enable numa) + + if [[ ${PV} == *9999* ]]; then + GHC_PV="$(grep 'S\[\"PACKAGE_VERSION\"\]' config.status | sed -e 's@^.*=\"\(.*\)\"@\1@')" + GHC_P=${PN}-${GHC_PV} + fi + fi # ! use binary +} + +src_compile() { + if ! use binary; then + # Stage1Only crosscompiler does not build stage2 + if ! is_crosscompile; then + # 1. build/pax-mark compiler binary first + emake ghc/stage2/build/tmp/ghc-stage2 + # 2. pax-mark (bug #516430) + pax-mark -m ghc/stage2/build/tmp/ghc-stage2 + # 2. build/pax-mark haddock using ghc-stage2 + if is_native; then + # non-native build does not build haddock + # due to HADDOCK_DOCS=NO, but it could. + emake utils/haddock/dist/build/tmp/haddock + pax-mark -m utils/haddock/dist/build/tmp/haddock + fi + fi + # 3. and then all the rest + emake all + fi # ! use binary +} + +src_test() { + # TODO: deal with: + # - sandbox (pollutes environment) + # - extra packages (to extend testsuite coverage) + # bits are taken from 'validate' + local make_test_target='test' # can be fulltest + # not 'emake' as testsuite uses '$MAKE' without jobserver available + make $make_test_target stage=2 THREADS=$(makeopts_jobs) +} + +src_install() { + if use binary; then + use prefix && mkdir -p "${ED}" + mv "${S}/usr" "${ED}" + else + [[ -f VERSION ]] || emake VERSION + + # -j1 due to a rare race in install script: + # make --no-print-directory -f ghc.mk phase=final install + # /usr/lib/portage/python3.4/ebuild-helpers/xattr/install -c -m 755 \ + # -d "/tmp/portage-tmpdir/portage/cross-armv7a-unknown-linux-gnueabi/ghc-9999/image/usr/lib64/armv7a-unknown-linux-gnueabi-ghc-8.3.20170404/include" + # /usr/lib/portage/python3.4/ebuild-helpers/xattr/install -c -m 644 utils/hsc2hs/template-hsc.h \ + # "/tmp/portage-tmpdir/portage/cross-armv7a-unknown-linux-gnueabi/ghc-9999/image/usr/lib64/armv7a-unknown-linux-gnueabi-ghc-8.3.20170404" + # /usr/bin/install: cannot create regular file \ + # '/tmp/portage-tmpdir/portage/cross-armv7a-unknown-linux-gnueabi/ghc-9999/image/usr/lib64/armv7a-unknown-linux-gnueabi-ghc-8.3.20170404': No such file or directory + emake -j1 install DESTDIR="${D}" + + # Skip for cross-targets as they all share target location: + # /usr/share/doc/ghc-9999/ + if ! is_crosscompile; then + dodoc "distrib/README" "ANNOUNCE" "LICENSE" "VERSION" + fi + + # rename ghc-shipped files to avoid collision + # of external packages. Motivating example: + # user had installed: + # dev-lang/ghc-7.8.4-r0 (with transformers-0.3.0.0) + # dev-haskell/transformers-0.4.2.0 + # then user tried to update to + # dev-lang/ghc-7.8.4-r1 (with transformers-0.4.2.0) + # this will lead to single .conf file collision. + local shipped_conf renamed_conf + local package_confdir="${ED}/usr/$(get_libdir)/$(cross)${GHC_P}/package.conf.d" + for shipped_conf in "${package_confdir}"/*.conf; do + # rename 'pkg-ver-id.conf' to 'pkg-ver-id-gentoo-${PF}.conf' + renamed_conf=${shipped_conf%.conf}-gentoo-${PF}.conf + mv "${shipped_conf}" "${renamed_conf}" || die + done + + # remove link, but leave 'haddock-${GHC_P}' + rm -f "${ED}"/usr/bin/$(cross)haddock + + if ! is_crosscompile; then + newbashcomp "${FILESDIR}"/ghc-bash-completion ghc-pkg + newbashcomp utils/completion/ghc.bash ghc + fi + fi + + # path to the package.cache + local package_confdir="${ED}/usr/$(get_libdir)/$(cross)${GHC_P}/package.conf.d" + PKGCACHE="${package_confdir}"/package.cache + # copy the package.conf.d, including timestamp, save it so we can help + # users that have a broken package.conf.d + cp -pR "${package_confdir}"{,.initial} || die "failed to backup intial package.conf.d" + + # copy the package.conf, including timestamp, save it so we later can put it + # back before uninstalling, or when upgrading. + cp -p "${PKGCACHE}"{,.shipped} \ + || die "failed to copy package.conf.d/package.cache" + + if is_crosscompile; then + # When we build a cross-compiler the layout is the following: + # usr/lib/${CTARGET}-ghc-${VER}/ contains target libraries + # but + # usr/lib/${CTARGET}-ghc-${VER}/bin/ directory + # containst host binaries (modulo bugs). + + # Portage's stripping mechanism does not skip stripping + # foreign binaries. This frequently causes binaries to be + # broken. + # + # Thus below we disable stripping of target libraries and allow + # stripping hosts executables. + dostrip -x "/usr/$(get_libdir)/$(cross)${GHC_P}" + dostrip "/usr/$(get_libdir)/$(cross)${GHC_P}/bin" + fi +} + +pkg_preinst() { + # have we got an earlier version of ghc installed? + if has_version "<${CATEGORY}/${PF}"; then + haskell_updater_warn="1" + fi +} + +pkg_postinst() { + ghc-reregister + + # path to the package.cache + PKGCACHE="${EROOT}/usr/$(get_libdir)/$(cross)${GHC_P}/package.conf.d/package.cache" + + # give the cache a new timestamp, it must be as recent as + # the package.conf.d directory. + touch "${PKGCACHE}" + + if [[ "${haskell_updater_warn}" == "1" ]]; then + ewarn + ewarn "\e[1;31m************************************************************************\e[0m" + ewarn + ewarn "You have just upgraded from an older version of GHC." + ewarn "You may have to run" + ewarn " 'haskell-updater'" + ewarn "to rebuild all ghc-based Haskell libraries." + ewarn + ewarn "\e[1;31m************************************************************************\e[0m" + ewarn + fi +} + +pkg_prerm() { + PKGCACHE="${EROOT}/usr/$(get_libdir)/$(cross)${GHC_P}/package.conf.d/package.cache" + rm -rf "${PKGCACHE}" + + cp -p "${PKGCACHE}"{.shipped,} +} + +pkg_postrm() { + ghc-package_pkg_postrm +} diff --git a/dev-lang/ghc/metadata.xml b/dev-lang/ghc/metadata.xml index 5169f69026cc..eef249cad285 100644 --- a/dev-lang/ghc/metadata.xml +++ b/dev-lang/ghc/metadata.xml @@ -7,10 +7,10 @@ </maintainer> <use> <flag name="binary">Install the binary version directly, rather than using it to build the source version.</flag> - <flag name="elfutils">Enable DWARF-based baclktraces using <pkg>dev-libs/elfutils</pkg>.</flag> + <flag name="elfutils">Enable DWARF-based backtraces using <pkg>dev-libs/elfutils</pkg>.</flag> <flag name="ghcbootstrap">Internal: Bootstrap GHC from an existing GHC installation.</flag> <flag name="ghcmakebinary">Internal: Build binary friendly for redistribution.</flag> - <flag name="gmp">use <pkg>dev-libs/gmp</pkg> for integer operations (works faster, but an external depend).</flag> + <flag name="gmp">Use <pkg>dev-libs/gmp</pkg> for integer operations (works faster, but an external depend).</flag> <flag name="numa">Enable NUMA thread balancing policy using <pkg>sys-process/numactl</pkg>.</flag> </use> </pkgmetadata> diff --git a/dev-lang/gnat-gpl/Manifest b/dev-lang/gnat-gpl/Manifest index c2fa5fef2bd9..581ca724769e 100644 --- a/dev-lang/gnat-gpl/Manifest +++ b/dev-lang/gnat-gpl/Manifest @@ -1,5 +1,3 @@ -AUX c89 412 BLAKE2B 04236b6a32e8819c65713821e769d5bf55f194fb6bdaa61c48ad09c7e13e123d3e4725394b3a922445efaa951849f4e87f96e34a55d3e229dbedc50ca1816f44 SHA512 71d33a147339d8d70a62aa22a95d3e70e445d8435d6ac05893f7da19ae851b89bea851f6ce213fbd22470f13572ae13b83cf02f0621333f07d7b0c68a79b7924 -AUX c99 446 BLAKE2B 061fcbef85149de611c4692c99c2c5ebeeef045637b999dbea0d1922398e16361cedbd461ed6aaf0c49c6269900a4c346f5026d8c22780044e1cc8afee74be4e SHA512 bf3b0eb1125d5e89b433954fcbf805cd86dec5a6eeb23df685ebf3ff83a610573f2ffcec65d893244c845936a73918387cba026710c65c854b2c94a78b007989 AUX gcc-configure-LANG.patch 2052 BLAKE2B 28c36f4992e41305ee421dade5eaaac34e3bdc523665b03f360f2bc01e8f69e9dc48052edb80dece63ab561e80325b4f125502482eb16f7324f1c03670021550 SHA512 a694c7ac2f45cc657097ff5b0cf1356ac88a9c06035c9ba15167e9d444844d0d8a478eb1b9b62195dd063774f79697b9148b9cdb6c261640b472c291061b2129 AUX gcc-configure-texinfo.patch 341 BLAKE2B d2ea3b2ea08f5d3a498ba27d0fb95e325097e2104e55caa28b66515cb48662649140d90b639369aedc54b2b1178fa4b49cda442f5f504e09d88a2efa45a5057c SHA512 e8d34c5077409df5495cf0c5fbf5e77f841c5698108fa6a5fde33eb28202c685603bdefd8368918e55f30c4b995e895d71d64c715c1ec2b017e09eb2c54c09ff AUX gcc-spec-env-r1.patch 3148 BLAKE2B 30ceb113a510092a907b445c4b2131f148f7fef54a00a88b5c389bbf93b8b61bc12c86a07df03d57280759e5485ac0cd89ea69826ace01b5720681ca3102640b SHA512 ecae71577543772cfe1711f1b4a8815c0b5d706ebd01edacd1f07586637d4805e25771f970a6e6d1bb696d4b1b5ef3e0036088a96a9f6beff7ddaee704175d16 diff --git a/dev-lang/gnat-gpl/files/c89 b/dev-lang/gnat-gpl/files/c89 deleted file mode 100644 index cee0325f50f1..000000000000 --- a/dev-lang/gnat-gpl/files/c89 +++ /dev/null @@ -1,20 +0,0 @@ -#! /bin/sh - -# Call the appropriate C compiler with options to accept ANSI/ISO C -# The following options are the same (as of gcc-2.95): -# -ansi -# -std=c89 -# -std=iso9899:1990 - -for i; do - case "$i" in - -ansi|-std=c89|-std=iso9899:1990) - ;; - -std=*) - echo >&2 "`basename $0` called with non ANSI/ISO C90 option $i" - exit 1 - ;; - esac -done - -exec gcc -std=c89 -pedantic -U_FORTIFY_SOURCE "$@" diff --git a/dev-lang/gnat-gpl/files/c99 b/dev-lang/gnat-gpl/files/c99 deleted file mode 100644 index c9542095e385..000000000000 --- a/dev-lang/gnat-gpl/files/c99 +++ /dev/null @@ -1,21 +0,0 @@ -#! /bin/sh - -# Call the appropriate C compiler with options to accept ANSI/ISO C -# The following options are the same (as of gcc-3.3): -# -std=c99 -# -std=c9x -# -std=iso9899:1999 -# -std=iso9899:199x - -for i; do - case "$i" in - -std=c9[9x]|-std=iso9899:199[9x]) - ;; - -ansi|-std=*) - echo >&2 "`basename $0` called with non ANSI/ISO C99 option $i" - exit 1 - ;; - esac -done - -exec gcc -std=c99 -pedantic -U_FORTIFY_SOURCE ${1+"$@"} diff --git a/dev-lang/gnuprologjava/Manifest b/dev-lang/gnuprologjava/Manifest index bd0807913292..521c38a7dfc4 100644 --- a/dev-lang/gnuprologjava/Manifest +++ b/dev-lang/gnuprologjava/Manifest @@ -1,4 +1,5 @@ AUX gnuprologjava-0.2.6-manual.patch 414 BLAKE2B 6bad70e46f1c2e9bdf9e4ef45cdbc4a4074671de28188aac7b69082e44eed86ef3fc1be1b5e83ea81da52df5d1b218583ab7ae73fdeeeb8241f50e8d45c23713 SHA512 419b509abae773e5ac3f2d79328bb4014776cc7c6390b8afa2d3d7242afec41e92d22830ed1be3c15f3d007c9fa08b303b553d883b18e1bde1fe9af09a0c7644 DIST gnuprologjava-0.2.6-src.zip 477058 BLAKE2B 00248df0b307b733595b585ed5b847413d5de32c3348008ce53bb4dab93bfc465531bd59ea224f5c0bc6a66c3186ff55d353a0fe88d222b490927100cbafceea SHA512 b175c74e754a7176f5fc38ea2215809bb9d60ec5b8852f99a48a72a0bdb316b33b7195ff5c85398bb63aa2e522d12dfc75e2ff3af9f89ff44448d2f73357f0a4 +EBUILD gnuprologjava-0.2.6-r1.ebuild 879 BLAKE2B 8d792bbfae59629b64cabb439a3f18041cc2b579ec59bf2144ce1281ef73db486b04537dcbf8eed6222d5b2a42cf7e03030f8cbf0f1aa01f4fcd2dc3b4f1f4b2 SHA512 92d91a225ccc45a5bdd09d7dc0214fe8464e87b0e309b9c80299fe1d2cb936b2b283ad1acb94cab9ab8d8b0e51f81a51543c47bfa2e7b6ed4ee6edb21c46870e EBUILD gnuprologjava-0.2.6.ebuild 838 BLAKE2B 289f4e669963ac5660b20ac07f21d3c5029a14e908b4d8a09d25930c3d86fb5477b81799a19803b0575c1f5a917275d5e262c6199b7e7d2b2055702768e5674d SHA512 f74d26baa10ad05b53fe3af7c63e3b6749bce9d23e28d2dcc1ac001784e3c4782b965abf1603e21a42a95d575c547aaea6d2e5e2ac4e8b86e3db71efc7efb3cf MISC metadata.xml 236 BLAKE2B 665f3de6dc90f46a18379b3416063a49b1a79ddd7ef89eaed9be78f9adc5b234e9693cd31d6cf2d3477fc7dc00055492bef7de78da6c901c4a6e55eb0e781325 SHA512 e776224736bd575412c7b5b799f649c6b2947a70e6a9aea580063d9da7d09a8144e5ebaf7ac3ef131d578486cf05dec814dce11b2aeb884cded3be3cab70fcec diff --git a/dev-lang/gnuprologjava/gnuprologjava-0.2.6-r1.ebuild b/dev-lang/gnuprologjava/gnuprologjava-0.2.6-r1.ebuild new file mode 100644 index 000000000000..837cc77c316f --- /dev/null +++ b/dev-lang/gnuprologjava/gnuprologjava-0.2.6-r1.ebuild @@ -0,0 +1,46 @@ +# Copyright 2016-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit eutils java-pkg-2 java-ant-2 + +DESCRIPTION="GNU Prolog for Java is an implementation of ISO Prolog as a Java library" +HOMEPAGE="https://www.gnu.org/software/gnuprologjava" +SRC_URI="mirror://gnu/gnuprologjava/${P}-src.zip" + +LICENSE="LGPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="doc" + +BDEPEND="app-arch/unzip" +RDEPEND=">=virtual/jdk-1.6:=" +DEPEND="${RDEPEND} + dev-java/ant-core" + +S="${WORKDIR}" + +src_prepare() { + eapply "${FILESDIR}"/${P}-manual.patch + eapply_user +} + +src_compile() { + eant jar + if use doc ; then + eant doc + fi + mv build/${P}.jar build/${PN}.jar || die +} + +src_install() { + java-pkg_dojar build/${PN}.jar + + if use doc ; then + java-pkg_dohtml -r build/api || die + java-pkg_dohtml -r build/manual || die + fi + + dodoc NEWS.txt docs/readme.txt +} diff --git a/dev-lang/go/Manifest b/dev-lang/go/Manifest index 0f3b97bf08c9..f734ac131ebc 100644 --- a/dev-lang/go/Manifest +++ b/dev-lang/go/Manifest @@ -10,14 +10,12 @@ DIST go-linux-ppc64le-bootstrap-1.8.tbz 52211575 BLAKE2B 7a28ec5a381369c4e9415c8 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.12.17.src.tar.gz 20725913 BLAKE2B 2eef7374195302656268a42409619445dfeb3ede1f9218ae4eab195916876b97f7510cc62585a0bfdd9f86dddf8a74000032a84b29bc9891d84fc69db94f0274 SHA512 069f8f445d9d2268ebb14b2446fab34843d56283c04561636d122fd8b4c1ea0b63640a84437db7a7be71039440ffe170cd3f8025b03b0acf95f2a56fa2febec6 -DIST go1.13.10.src.tar.gz 21702804 BLAKE2B 586494604455594c552d25a207634d70ae7f5ad142e18e22f5ef462c6488327cc01630c0bc99a4ede9dee0d649982802cf79f34f35ad7f810ca0701c35a7d555 SHA512 9e020dd89ab6201c4cbb893caecc0b077d5fbb2e10381e1b76a29ddc18c141d8db67a1b0f607ed915b0e9c40c4fb2c65b0319472535892534a31ad962e72fe05 -DIST go1.13.12.src.tar.gz 21703700 BLAKE2B d503b864edd753d838ab2776c00ee29d79c4dadaa8f9414291d7fd9ef420950361e676d78111db171d4d7bad9f28d23897333720d77c259691231cac81aa7b2a SHA512 85ffe18171cd131fc5bdfaa8f5e944643399ef1f270a599cdccbe0212f1d1651a87075d11877220466d18ff590bb9eadeac48851b630ab9f0e06c199c0286cc4 -DIST go1.14.2.src.tar.gz 22454649 BLAKE2B edd8a1081e7da6988532b9fefe6d6f789a7d336562d61d5e585a8b881fb45d77721bee9837ae79318295471aea138e175650c2138175a587f0b7957988e8e209 SHA512 3f6804e1a60df6a7c55c294fe4147b2d6f028c619ad4ae5b1ae8793c6be637a1e6a62721cc7ce0b28918ab3441a89fa9acda72cb5450bf5af8d7872411d28015 -DIST go1.14.4.src.tar.gz 22535243 BLAKE2B 8dc44b2144587e24ef53adcffdf335ec03dbcbb1101e38ac54611eb9e6216d3a676f5a24daab24342018b549b7de2a8730e556abfda5e18199c55d266ac3a44b SHA512 b0d657ea33331062db5a4da0aff14798f292ca967a53665af1a93e04eba7a03e49a3dbc4768c4f099ec5ff25a31885750f7658f819057057093e2d7bfb085575 +DIST go1.13.15.src.tar.gz 21705183 BLAKE2B eac8c6113dd6cef164cc5368732c2dce26f200e309c728ca71b4c312ace465382b8cc1dd8fb216bdf927211d6cb26c21090a9ac9c9ef2d7ac1b16c85feac0e0c SHA512 35d3e7aaef1b0fc6ab684bb7352da3a23194115331ba7d1543225c35939cafcd437f454519aac38182cb8f222723ed9a297f9da566075b5e4079be26952a21e3 +DIST go1.14.7.src.tar.gz 22534747 BLAKE2B ab43abeec9d636dd88eaa10dc210f5d11d487df35238a00548e1f56a86bdf2375e7c180ee6e1cea53591528714fa70333e3336db61eacfdeb5f51b2d5ea86a45 SHA512 3f1133c66d7795ceb6c5793db90616613244d7561abaef6b059602992c0b7a53b6b6ebbcf69add4769a58542e9dc55871bcfe3d64d4cd9f3569bd435ade86dee +DIST go1.15.src.tar.gz 23002901 BLAKE2B a04bfb5d8bb6377e92d5d8c96f11d39b9bb878f4f9a3221baa5f42bcc822b562a209fd5d2d2a643f3b72df2db494899b2f7a446f1a9a8e25bf0df56ef87f3b7f SHA512 7d85382bcc6a0625dfa3d07196ab364860846367ed67697a7b1516b0af551a72bc4873882141fc3c7a60d39f2e27b33f6693e8b18b608de76fc9a55b5eac55ea EBUILD go-1.12.17.ebuild 6443 BLAKE2B bf7195702527ae108363ae3cc083f9b65e57eaed8075f5ecf43796d5286c160f8c6c334a5cf5be97e3ff26c8856b97bf1c74d832984285b41666a843563c8da0 SHA512 814bf79fe77e729d6a3270455f526ecab2709400dae766ed8b27714d80b45f9d3113e5c086c862dbd45dfa0fd9267ea2daacd0f994a0264b67af1bf6401a6156 -EBUILD go-1.13.10.ebuild 4411 BLAKE2B 373fd1adf67feddfe122adadbb80da23c13c6ee2b3c1342490ce9f7734c5d2e2f2339f4c26b7fe0dc3372a000cbf55d276a8d4adb13468d99ac7081ddacfd106 SHA512 98d4b8b3f68d6f5609eb6a7c05cd3107877bc0195d475ed27072f34f77776a9f7f92760f29115bc83bff4662025281ab2fed93ab7cba75a6294559f16771ac1f -EBUILD go-1.13.12.ebuild 4416 BLAKE2B bef2da5b7d1736d7f58c56aea31ce691bf3d4be39af0b331c78f7b42da150206f15c5235f57118097f4ab2451fd7d22661cb0419e080165baea707938ea00c52 SHA512 2e9aa42c5430ce2f955b5119c1f290a64649699de4578d9935df433b8d39d6c13a5dacffc5fe929f277bf579f39dda94da441a10f3dc154762d0f4f6f1d850da -EBUILD go-1.14.2.ebuild 4158 BLAKE2B 5a926f9e19bb18708d525c84bec0b4d7b6c148f9184bbe39bdca048fccdcd1f6c9cc8b7fef57cb72122a2285691a3972803d1fd53eae265786a634719dd5ae36 SHA512 e22bad602b65f4268e4fa3baf4776bb0dc68605566979a061cfb8d9c1d5e68cac14a8b2ec9241925937b15d3ad72a0daac9c02a61471bd6e05e48a8ea0412d42 -EBUILD go-1.14.4.ebuild 4163 BLAKE2B 49dad3ec3547dff65943360a84a39f4d5ff534973e1497ba642256d45ba77c652804e53c634440d876d3785fed2cd4c348afc307d11910c2761e4a10821377f6 SHA512 ac7161342580de56f1569d7ce8c57a117b02bdd11aefea60a881e57a3eedf116db24199364a154c62983b86522548c03e0c150089e0fdabec1d1945fc4826599 +EBUILD go-1.13.15.ebuild 4411 BLAKE2B 373fd1adf67feddfe122adadbb80da23c13c6ee2b3c1342490ce9f7734c5d2e2f2339f4c26b7fe0dc3372a000cbf55d276a8d4adb13468d99ac7081ddacfd106 SHA512 98d4b8b3f68d6f5609eb6a7c05cd3107877bc0195d475ed27072f34f77776a9f7f92760f29115bc83bff4662025281ab2fed93ab7cba75a6294559f16771ac1f +EBUILD go-1.14.7.ebuild 4158 BLAKE2B 5a926f9e19bb18708d525c84bec0b4d7b6c148f9184bbe39bdca048fccdcd1f6c9cc8b7fef57cb72122a2285691a3972803d1fd53eae265786a634719dd5ae36 SHA512 e22bad602b65f4268e4fa3baf4776bb0dc68605566979a061cfb8d9c1d5e68cac14a8b2ec9241925937b15d3ad72a0daac9c02a61471bd6e05e48a8ea0412d42 +EBUILD go-1.15.ebuild 4163 BLAKE2B 49dad3ec3547dff65943360a84a39f4d5ff534973e1497ba642256d45ba77c652804e53c634440d876d3785fed2cd4c348afc307d11910c2761e4a10821377f6 SHA512 ac7161342580de56f1569d7ce8c57a117b02bdd11aefea60a881e57a3eedf116db24199364a154c62983b86522548c03e0c150089e0fdabec1d1945fc4826599 EBUILD go-9999.ebuild 4163 BLAKE2B 49dad3ec3547dff65943360a84a39f4d5ff534973e1497ba642256d45ba77c652804e53c634440d876d3785fed2cd4c348afc307d11910c2761e4a10821377f6 SHA512 ac7161342580de56f1569d7ce8c57a117b02bdd11aefea60a881e57a3eedf116db24199364a154c62983b86522548c03e0c150089e0fdabec1d1945fc4826599 MISC metadata.xml 663 BLAKE2B fc92966e1b4a155b4d442842988d0404c0148b029d187ab7294d49dabad771296d63ca3184128ac27cea4e74e7d6cfc8852084ca8f1d15a1d0755586a0bf68de SHA512 f67b7e312cfb2a896552ae73e835d53ffbb0a7c71c30f0a7cb44c65e2753055e185e7a5c48e2cfff33a42609629cc3c32ee56a9d8f61d8429798c1e8424e36bf diff --git a/dev-lang/go/go-1.13.12.ebuild b/dev-lang/go/go-1.13.12.ebuild deleted file mode 100644 index d71bff70d905..000000000000 --- a/dev-lang/go/go-1.13.12.ebuild +++ /dev/null @@ -1,197 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -export CBUILD=${CBUILD:-${CHOST}} -export CTARGET=${CTARGET:-${CHOST}} - -MY_PV=${PV/_/} - -inherit toolchain-funcs - -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-linux ~x86-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 - -DESCRIPTION="A concurrent garbage collected and typesafe programming language" -HOMEPAGE="https://golang.org" - -LICENSE="BSD" -SLOT="0/${PV}" - -BDEPEND="|| ( - dev-lang/go - dev-lang/go-bootstrap )" -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/*.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) ]] -} - -src_compile() -{ - if has_version -b dev-lang/go; then - export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go" - elif has_version -b dev-lang/go-bootstrap; then - export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go-bootstrap" - else - eerror "Go cannot be built without go or go-bootstrap installed" - die "Should not be here, please report a bug" - 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 - - cd src - bash -x ./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.13.10.ebuild b/dev-lang/go/go-1.13.15.ebuild index 1f323d04c2e8..1f323d04c2e8 100644 --- a/dev-lang/go/go-1.13.10.ebuild +++ b/dev-lang/go/go-1.13.15.ebuild diff --git a/dev-lang/go/go-1.14.2.ebuild b/dev-lang/go/go-1.14.7.ebuild index 178eb1504f2f..178eb1504f2f 100644 --- a/dev-lang/go/go-1.14.2.ebuild +++ b/dev-lang/go/go-1.14.7.ebuild diff --git a/dev-lang/go/go-1.14.4.ebuild b/dev-lang/go/go-1.15.ebuild index fa07749bdeb3..fa07749bdeb3 100644 --- a/dev-lang/go/go-1.14.4.ebuild +++ b/dev-lang/go/go-1.15.ebuild diff --git a/dev-lang/gprolog/Manifest b/dev-lang/gprolog/Manifest index 567778b8bca0..81c07ff20ae6 100644 --- a/dev-lang/gprolog/Manifest +++ b/dev-lang/gprolog/Manifest @@ -11,5 +11,5 @@ AUX gprolog-1.4.5-txt-file.patch 578 BLAKE2B 22f4803c19fc4e8266065e457e711df2885 DIST gprolog-1.4.4.tar.gz 3538152 BLAKE2B 159cf58e6d7f33662a6bd11f284abd9e52be0f82cafe180263148d13002e66987253e9dcd7db232b33470ddb685570efe3615c7029af96be44bb556bd9c2d261 SHA512 b6227a06794d31162f2c790a025f7372a6676c1891a76e880d2152aeab6322d3341aeab85e11d9be6d97ff1c69801bee73fa3ea6b0659af61f55990a455dc212 DIST gprolog-1.4.5.tar.gz 3587361 BLAKE2B c0c73ce249d7c26b914a3f831c6ac93aeb884bded6c5ebbe51223f0685de0be2e746533aade1633a953b93e88a30796fa52ecd5e609d05bc051363cbf34e0477 SHA512 425103bc9e5bdbdb4ae331f5be0cf49524fbdb4f5e2809fb973360de9e7ad9935c1b28f3603e0be696a647153d9f0d3dacdc87251098ac99faf7d0b3c652fc60 EBUILD gprolog-1.4.4.ebuild 1557 BLAKE2B 9b6f76d4bd2ad7771c6b7e179fc57ba6b1691799942d4cbc85eec70dfb375e298ca4c7fcd01d4e762c103e517a237586ebbb60b1d088a97c4ea1ac2d7286775c SHA512 30f9edfe26b273f9d23609450761aef70c2d50e4a894fb87cd7ab773087fd410d99c7f489bbb554db656308e7e76fca36c40cb289013d7ee132188086d46a6c7 -EBUILD gprolog-1.4.5.ebuild 1813 BLAKE2B a8d9a2b2603cc76feb815141ea044bd5d4553af1acb65eea5f99611846091138a586d678fed93394d4ef37d06c096f52d9370ec0ebc31488cd55304be2db10ac SHA512 8763248d70441b10d967a51fa1d359b9438f47d62ce53a7847b1174db7f40848fd6e8b42a802c27ade788e2f025a467c49dbed71214d81c3affae4bf4d7380d9 +EBUILD gprolog-1.4.5.ebuild 1907 BLAKE2B 4155b81b163a3851aa59f0d1a41d1db3d63eb359cdd7ffd829330e0fb1628201816b562946cb9e11399440c9015a828af7093e2eaf6a94f42667d33b47eca26f SHA512 03b8744ca7804b4b808d15a2cbafea215bad2f3b2097749712b62d0a4e962ee710d4bd29439631771a50d3245a933df73467d0b5d30289c73f39250b3c60c5f2 MISC metadata.xml 236 BLAKE2B 665f3de6dc90f46a18379b3416063a49b1a79ddd7ef89eaed9be78f9adc5b234e9693cd31d6cf2d3477fc7dc00055492bef7de78da6c901c4a6e55eb0e781325 SHA512 e776224736bd575412c7b5b799f649c6b2947a70e6a9aea580063d9da7d09a8144e5ebaf7ac3ef131d578486cf05dec814dce11b2aeb884cded3be3cab70fcec diff --git a/dev-lang/gprolog/gprolog-1.4.5.ebuild b/dev-lang/gprolog/gprolog-1.4.5.ebuild index 0a47ce2d34c4..80e33c7e6183 100644 --- a/dev-lang/gprolog/gprolog-1.4.5.ebuild +++ b/dev-lang/gprolog/gprolog-1.4.5.ebuild @@ -12,7 +12,7 @@ S="${WORKDIR}"/${P} LICENSE="|| ( GPL-2+ LGPL-3+ )" SLOT="0" -KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-solaris" +KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-solaris" IUSE="debug doc examples" DEPEND="" @@ -42,13 +42,19 @@ src_configure() { append-ldflags -no-pie fi + if tc-is-gcc && ! use x86; then + gprolog_use_regs=yes + else + gprolog_use_regs=no + fi + cd "${S}"/src econf \ CFLAGS_MACHINE="${CFLAGS_MACHINE}" \ --with-c-flags="${CFLAGS}" \ --with-install-dir="${EPREFIX}"/usr/$(get_libdir)/${P} \ --with-links-dir="${EPREFIX}"/usr/bin \ - $(use_enable !x86 regs) \ + --enable-regs=$gprolog_use_regs \ $(use_with doc doc-dir "${EPREFIX}"/usr/share/doc/${PF}) \ $(use_with doc html-dir "${EPREFIX}"/usr/share/doc/${PF}/html) \ $(use_with examples examples-dir "${EPREFIX}"/usr/share/doc/${PF}/examples) diff --git a/dev-lang/icon/Manifest b/dev-lang/icon/Manifest index 815c674ae932..e66b309a5cad 100644 --- a/dev-lang/icon/Manifest +++ b/dev-lang/icon/Manifest @@ -1,7 +1,9 @@ AUX icon-9.5.1-flags.patch 2148 BLAKE2B 37fcaca92f67be74caddbf7789ca4e666a4e0b98e7cac3a89376bae5c50fd248eae0f0b282a46ec8d6dc55f5c423ad6dc69744d2999e96ec183d9bb369f7e7b0 SHA512 28b201a1347167b028187d6d35cb50450cf6a13b48fbf65a616683fb6c5d3373d9ba9e64c3d6fe397e858388c88a52ab330a00dc5e4ca087567089e8cdd3c897 AUX icon-9.5.1-fpoll.patch 977 BLAKE2B 720fac1a8109d3400b6a718f708904d14e2d4207840a2e4d31888dd4be2d02c241c2f40271b89f6e3273732288e203e9298f061dfb485ca4eb0c24baea02534c SHA512 4b9d471d7d2992a75cccea98790339318b8a622d993a34affc69e0dbbbfa7103e8b994494eb33aaf26168bdb18623c5419f2c34471dee4adb1a004b420b793ab AUX icon-9.5.1-musl.patch 726 BLAKE2B 83aff0d45e50afa88830d18dbec53838e8adaaa4099fbe405b2212fbc0e53240fc0b21d934f2dfc263afc576bf671924d253784dc65e498b4bacecc91d479255 SHA512 b2be4642126edd75f6ae3466879841ec0123c367c93d74d91d9b9f290deaef9d7bbaa6642ad0440e297850664c6da7f33931782214c9afd8ca2d380b75d588e1 +DIST icon-9.5.20h.tar.gz 3137602 BLAKE2B 093290f7df4d0c1686b57c1debabdae5ab607fab00849885fd97b68b872db9d360e9ffe61b7be2e503f5ffa70a387011128c65586b0d48e298577d0ca690a729 SHA512 c3dec5d9d6f2e01fb27b09897cf9e54103749e64e64feb6503e1d25a00bf7da498e40207d8d220af8aca134df6fb281484bd8c8444d256f04ddc39de6a23ca1f DIST icon-v951src.tgz 3133040 BLAKE2B 790a66a8210c1b9c55514a560590f08d3e52d7c5115d60554183f1118b5705fc1754b8188dcc3b5b739318374d568b6eafc1e3c4266de5416709e7ce6056925b SHA512 032dc9cfa57af5af2eb84b2116d0537124b5efb87b7cf744ecace2ccf49e461d5be5f91df99d85e8a988520d144fe4ecf06a6e78f7fff997b78afa95355449ad EBUILD icon-9.5.1-r1.ebuild 2518 BLAKE2B d305f28d494f0924035e7b4a6f5d8165741b8b4b782f0aa3133cca9503656c72172a63f8db31e080d238eb527300258654f43a3dfcef9e085b949d7bcb172252 SHA512 49c548061175a7999717b184b4dbfc69ccf9a316a13d8784a586dca68108c324eaf08ca4b9b488445f7fe5fd77d878648d580570b9c30b4163a1c2249f1da3bc EBUILD icon-9.5.1-r2.ebuild 2982 BLAKE2B 30b2887bf207653d25f1e0903e7731b9ea9293c471496aef642b0947320765df736067cab39c66285b286ec9d0c588c8a4613bc04371e1bd8a924996bf70b88c SHA512 3936d1b2479c2a31a1229fdf7f2b5e1d7d18ae3974ae06109d2f4aea341cb2aaede33cbea8c98ee48a7ac00dddba84340b08af79174166dd7a682fa65a9cf055 +EBUILD icon-9.5.20h.ebuild 3303 BLAKE2B 2894ac3c1077b091e80e5b84efa75c6d0fcc99b70d1e1e1ec720cee1970423047c09b89c3c41dff2ddcbcfac19e9bb20edb19805e46ba477211b4cc10a0f6854 SHA512 b4647284036465cbf70ed53f0a4df2cf0089e016e5bc775ab39720634a49416bae61ccf9a7d628971db0fffe247f84083c7a4e44c7f37a20f5fb22ca6d74793c MISC metadata.xml 467 BLAKE2B b480285505dec662f62038d22a88323f01f21b100de7ee652f2e3d5f5f4cdf4345ad7d303f2713b1a2816157c46610c2f5287cb385c61998f68fd95d09bf9d5b SHA512 1a77000b72ae453ecb2bd4452e32ea917328a61bb882e107b96f013ddaa218e951743569e38e97210a341755bd7c891324123d96e56da9a5a7caa93ad4dbb93a diff --git a/dev-lang/icon/icon-9.5.20h.ebuild b/dev-lang/icon/icon-9.5.20h.ebuild new file mode 100644 index 000000000000..1c915dca803b --- /dev/null +++ b/dev-lang/icon/icon-9.5.20h.ebuild @@ -0,0 +1,123 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit flag-o-matic toolchain-funcs + +DESCRIPTION="very high level language" +HOMEPAGE="http://www.cs.arizona.edu/icon/" + +SRC_URI="https://github.com/gtownsend/icon/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="public-domain HPND" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" +IUSE="X iplsrc" + +S="${WORKDIR}/icon-${PV}" + +RDEPEND=" + X? ( x11-libs/libX11:= )" +DEPEND=" + ${RDEPEND} + X? ( + x11-libs/libXpm + x11-libs/libXt + )" + +src_prepare() { + default + # Add CFLAGS and LDFLAGS to Makefiles as needed + sed -i -e 's/CFLAGS="$(CFLAGS)"/& LDFLAGS="$(LDFLAGS)"/g' ipl/cfuncs/Makefile || die + sed -i -e 's/^CFLAGS = \(.*\)/CFLAGS = $(CFLAGS) \1/g' ipl/packs/loadfunc/Makefile || die + sed -i -e 's/CFLAGS="$(CFLAGS)"/& LDFLAGS="$(LDFLAGS)"/g' ipl/packs/loadfunc/Makefile || die + sed -i -e 's/-o $LIBNAME $CFLAGS/& $LDFLAGS/g' ipl/cfuncs/mklib.sh || die + sed -i -e 's/$(RLINK)/& $(LDFLAGS)/g' src/runtime/Makefile || die + + # executables in src/common are only used to prep the build + sed -i -e 's/$(CC) $(CFLAGS)/& $(LDFLAGS)/g' src/common/Makefile || die + # executables in src/rtt are only used to perform the build + sed -i -e 's/$(CC) $(CFLAGS)/& $(LDFLAGS)/g' src/rtt/Makefile || die + + # do not prestrip files + find src -name 'Makefile' | xargs sed -i -e "/strip/d" || die +} + +src_configure() { + # select the right compile target. Note there are many platforms + # available + local mytarget; + if [[ ${CHOST} == *-darwin* ]]; then + mytarget="macintosh" + else + mytarget="linux" + fi + + # Fails if more then one make job process. + # This is an upstream requirement. + emake -j1 $(usex X X-Configure Configure) name=${mytarget} + + # sanitise the Makedefs file generated by Configure + sed -i \ + -e 's:-L/usr/X11R6/lib64::g' \ + -e 's:-L/usr/X11R6/lib::g' \ + -e 's:-I/usr/X11R6/include::g' \ + -e 's:-I/usr/X11R6/include::g' \ + -e '/^CFLAGS/d' \ + Makedefs || die "sed of Makedefs failed" + + if use elibc_musl; then + append-flags "-D_MUSL" + fi + append-flags $(test-flags -fno-strict-aliasing -fwrapv) +} + +src_compile() { + # Fails if more then one make job process. + # This is an upstream requirement. + emake -j1 CC="$(tc-getCC)" CFLAGS="${CFLAGS}" +} + +src_test() { + emake Samples + emake Test +} + +src_install() { + # Needed for make Install + dodir /usr/$(get_libdir) + + emake Install dest="${D}/usr/$(get_libdir)/icon" + dosym ../$(get_libdir)/icon/bin/icont /usr/bin/icont + dosym ../$(get_libdir)/icon/bin/iconx /usr/bin/iconx + dosym ../$(get_libdir)/icon/bin/icon /usr/bin/icon + if use X; then + dosym ../$(get_libdir)/icon/bin/vib /usr/bin/vib + fi + + cd "${S}/man/man1" || die + doman "${PN}"t.1 + doman "${PN}".1 + + cd "${S}/doc" || die + DOCS=( *.txt ../README ) + + HTML_DOCS=( *.{htm,gif,jpg,css} ) + einstalldocs + + # Clean up items from make Install that get installed elsewhere + rm -rf "${ED}"/usr/$(get_libdir)/${PN}/man || die + rm -rf "${ED}"/usr/$(get_libdir)/icon/{doc,README} || die + + # optional Icon Programming Library + if use iplsrc; then + cd "${S}" || die + + # Remove unneeded files before copy + rm -fv ipl/{BuildBin,BuildExe,CheckAll,Makefile} || die + + insinto /usr/$(get_libdir)/icon + doins -r ipl + fi +} diff --git a/dev-lang/ispc/Manifest b/dev-lang/ispc/Manifest index fd1597133c2e..487aaa525108 100644 --- a/dev-lang/ispc/Manifest +++ b/dev-lang/ispc/Manifest @@ -1,12 +1,7 @@ AUX ispc-1.13.0-cmake-gentoo-release.patch 507 BLAKE2B e67be17f40dce55895ce307bd5383ad3f9dc8ec460c7195e23ce344f3a0324c53f9f69b695b6feb70d18da813d5d855d675a00e8dfd3e651aaaebf510de1138b SHA512 bdfd7d3f023ace4a0209201e05b7528e50cff644794bc48b5160d8051c2d70dad6690e509ca69102b08843ebb5fd7a76241954b22a0bb1f3c4714708df405d65 AUX ispc-1.13.0-llvm-10.patch 4670 BLAKE2B 31fa72f49af116e253b45cd1a5750fcc32cb0b9986582b6501326194903d6c56fc8efcc0b86975eb153c725b5310c613012d670c2b6badf0b4da04204d4df38b SHA512 b8c83e8fd290b2c37e1ca5cec158e4aec4c0c5aa291069b0935851bbd8198a3784ee75a6bf38d1c57ee69f6712d10e292af809d1ac38199514cc45c2f1a82994 AUX ispc-1.13.0-werror.patch 737 BLAKE2B 13ac7eb6f9db4a7379d5acd1f0fa8f44ddca7290329c1231c1b515b374438f5119d9e129c8b5326cfd084956a4ba005549bd30b67a9f64034e0ade8218b8f50c SHA512 254e0e21db59f2b8768d0953c9b0950bb7d860ea9eab7c4d450b3b006382959ab60eb650df9c1ddd4fda7628d5040f7b4779369cf67a99012d5fc2c4b9ef2f7b -AUX ispc-9999-cmake-gentoo-release.patch 507 BLAKE2B e67be17f40dce55895ce307bd5383ad3f9dc8ec460c7195e23ce344f3a0324c53f9f69b695b6feb70d18da813d5d855d675a00e8dfd3e651aaaebf510de1138b SHA512 bdfd7d3f023ace4a0209201e05b7528e50cff644794bc48b5160d8051c2d70dad6690e509ca69102b08843ebb5fd7a76241954b22a0bb1f3c4714708df405d65 -AUX ispc-9999-llvm-10.patch 4670 BLAKE2B 31fa72f49af116e253b45cd1a5750fcc32cb0b9986582b6501326194903d6c56fc8efcc0b86975eb153c725b5310c613012d670c2b6badf0b4da04204d4df38b SHA512 b8c83e8fd290b2c37e1ca5cec158e4aec4c0c5aa291069b0935851bbd8198a3784ee75a6bf38d1c57ee69f6712d10e292af809d1ac38199514cc45c2f1a82994 -AUX ispc-9999-werror.patch 737 BLAKE2B 13ac7eb6f9db4a7379d5acd1f0fa8f44ddca7290329c1231c1b515b374438f5119d9e129c8b5326cfd084956a4ba005549bd30b67a9f64034e0ade8218b8f50c SHA512 254e0e21db59f2b8768d0953c9b0950bb7d860ea9eab7c4d450b3b006382959ab60eb650df9c1ddd4fda7628d5040f7b4779369cf67a99012d5fc2c4b9ef2f7b DIST ispc-1.13.0.tar.gz 19202295 BLAKE2B 5fae81429acbda0d65d33e56609d05fb8b5a7db6dd0af5ff779d1e8954f6a98d1fcb0f7ecf0c1b9813630026557c21c2a70bfc87ed75959a8bd24e06fcd2e351 SHA512 d23c127beb9bb17e1ad2509f9ad51dd660c473458b939a6b64ca7f6319b3c2f25318ea2ceac00e4100a059f3f67fb97b6973f18e3432c82ff9691f2a08d15d5d -DIST ispc-1.9.2.tar.gz 19283765 BLAKE2B 500cca8a69a78ad9a21dc1e39dcb3ed01730e78deed61e4871ce5a9761829c80ac7b1b987d8e8a48c34b67ac96692b2c5026cfb5059a32c71e228c73550584eb SHA512 77a66086cbfd6c4dc855b3137a270cc40f24829255639aee5f562b0831c21938157667b20cfadc660cd67525c47e2e73b46692f7a11bf0c834dc60b69d40d76d -EBUILD ispc-1.13.0.ebuild 1117 BLAKE2B b5ebcac60a1c4adf8753ab5db9721ce69217b3368bf2682c95e1db30e6ccc1e3e1f96574005433cc000d483184161ad1c829dbfee1ace996c389ed90570e8de5 SHA512 1b2389d5c1a2d068240b6e76feff615e56179d08a003a2eca4e8bb756aa351dbd64d08f8cb5353da2868b1407b496a25f22dd34149216006f8340f675e8ec610 -EBUILD ispc-1.9.2.ebuild 1100 BLAKE2B 4bfdcf2d708ddc9e5c9e84f9a8adbab0111ceda9c5a10d7b11b21ef21cb24e56cca857e9cde0d593b0b1c49f1098a1ab0035d239ccc1b268ce1d5832c5979463 SHA512 5595b9a47e860adbfd6c7c9e3fa94f39f68f3d167cf17f3da964e51e8dfff170cf9ef6dcbee8ea82f1813f9a66d3724721ad2b44269e69703842a80d2aa25129 -EBUILD ispc-9999.ebuild 1117 BLAKE2B b5ebcac60a1c4adf8753ab5db9721ce69217b3368bf2682c95e1db30e6ccc1e3e1f96574005433cc000d483184161ad1c829dbfee1ace996c389ed90570e8de5 SHA512 1b2389d5c1a2d068240b6e76feff615e56179d08a003a2eca4e8bb756aa351dbd64d08f8cb5353da2868b1407b496a25f22dd34149216006f8340f675e8ec610 +EBUILD ispc-1.13.0.ebuild 1121 BLAKE2B 4b985cce80e289890738782c49bd13aa17d558e822e6eb7195c7c978eb897aa61ac7041585b858973332942025ed12c0f1d3c6321bc4ff66b8d29c8ba489db2c SHA512 8484cc0dd7ff53ece134283d8da415bf8a1f8693adbfb118df09c766b1d686aaeb2cad893bb509c8d7fdc69a4cf18bce2ec0bf0d0071b172e9d13f6e33dd071a +EBUILD ispc-9999.ebuild 1145 BLAKE2B 207e69d834776b8e207e1d8ae4b89e8cfdb20cdd13b3b2744f4bd37e97d50abc7906dcaaff155af0a1b90956d0b65e68b9436d246ace995ca2d5a652ed3b5219 SHA512 282b7164ec52954a9ba6e09c8cd1d8cf355c095a6a0e187b7da3651d26da938eeccc6c99cd082e0b2fa5f39770d55edcc960cadf9705c7c5d669598bf1509287 MISC metadata.xml 241 BLAKE2B 26c98e9f68d20d2275e5a9aef2d4c1cf74bd65e331e2e4869297a0a4d2b4dccab2e7709ad9ff844b973a97da0ee6eaae4fe17c6446ca06ed63f46804c8af5a82 SHA512 b9bb777e446879d214fab1adfa4b9dca1d3bd11c4084dfa449fb16d1896da27b85e11b869ed76b7b492814a1899b5fb00dbbeded579a0ed00666d4b204ddee14 diff --git a/dev-lang/ispc/files/ispc-9999-cmake-gentoo-release.patch b/dev-lang/ispc/files/ispc-9999-cmake-gentoo-release.patch deleted file mode 100644 index b89e61504008..000000000000 --- a/dev-lang/ispc/files/ispc-9999-cmake-gentoo-release.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 13e66268..27ff8364 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -137,7 +137,7 @@ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/bin ) - - if(CMAKE_BUILD_TYPE) - # Validate build type -- set(CONFIGURATION_TYPES "Debug;Release;RelWithDebInfo") -+ set(CONFIGURATION_TYPES "Debug;Release;RelWithDebInfo;Gentoo") - - string(FIND "${CONFIGURATION_TYPES}" "${CMAKE_BUILD_TYPE}" MATCHED_CONFIG) - if (${MATCHED_CONFIG} EQUAL -1) diff --git a/dev-lang/ispc/files/ispc-9999-llvm-10.patch b/dev-lang/ispc/files/ispc-9999-llvm-10.patch deleted file mode 100644 index 6911a76d9e18..000000000000 --- a/dev-lang/ispc/files/ispc-9999-llvm-10.patch +++ /dev/null @@ -1,106 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 13e66268..27ff8364 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -218,7 +218,7 @@ if (WASM_ENABLED) - list(APPEND ISPC_TARGETS wasm-i32x4) - endif() - --set(CLANG_LIBRARY_LIST clangFrontend clangDriver clangSerialization clangParse clangSema clangAnalysis clangAST clangBasic clangEdit clangLex) -+set(CLANG_LIBRARY_LIST clang clang-cpp) - set(LLVM_COMPONENTS engine ipo bitreader bitwriter instrumentation linker option) - - if (${LLVM_VERSION_NUMBER} VERSION_GREATER_EQUAL "10.0.0") -@@ -402,11 +402,8 @@ if (ISPC_USE_ASAN) - endif() - - # Link against Clang libraries --foreach(clangLib ${CLANG_LIBRARY_LIST}) -- find_library(${clangLib}Path NAMES ${clangLib} HINTS ${LLVM_LIBRARY_DIRS}) -- list(APPEND CLANG_LIBRARY_FULL_PATH_LIST ${${clangLib}Path}) --endforeach() --target_link_libraries(${PROJECT_NAME} ${CLANG_LIBRARY_FULL_PATH_LIST}) -+find_package(Clang REQUIRED) -+target_link_libraries(${PROJECT_NAME} ${CLANG_LIBRARY_LIST}) - - # Link against LLVM libraries - target_link_libraries(${PROJECT_NAME} ${LLVM_LIBRARY_LIST}) -diff --git a/src/llvmutil.cpp b/src/llvmutil.cpp -index 06fab989..57a7130f 100644 ---- a/src/llvmutil.cpp -+++ b/src/llvmutil.cpp -@@ -42,6 +42,7 @@ - #include <llvm/IR/BasicBlock.h> - #include <llvm/IR/Instructions.h> - #include <llvm/IR/Module.h> -+#include <llvm/Support/raw_ostream.h> - #include <map> - #include <set> - #include <vector> -@@ -1394,7 +1395,7 @@ static void lDumpValue(llvm::Value *v, std::set<llvm::Value *> &done) { - return; - - fprintf(stderr, " "); -- v->dump(); -+ v->print(llvm::outs(), false); - done.insert(v); - - if (inst == NULL) -diff --git a/src/opt.cpp b/src/opt.cpp -index d78ac374..a607594a 100644 ---- a/src/opt.cpp -+++ b/src/opt.cpp -@@ -142,7 +142,7 @@ static llvm::Pass *CreateFixBooleanSelectPass(); - getenv("FUNC"), strlen(getenv("FUNC")))))) { \ - fprintf(stderr, "Start of " NAME "\n"); \ - fprintf(stderr, "---------------\n"); \ -- bb.dump(); \ -+ bb.print(llvm::outs(), false); \ - fprintf(stderr, "---------------\n\n"); \ - } else /* eat semicolon */ - -@@ -152,7 +152,7 @@ static llvm::Pass *CreateFixBooleanSelectPass(); - getenv("FUNC"), strlen(getenv("FUNC")))))) { \ - fprintf(stderr, "End of " NAME " %s\n", modifiedAny ? "** CHANGES **" : ""); \ - fprintf(stderr, "---------------\n"); \ -- bb.dump(); \ -+ bb.print(llvm::outs(), false); \ - fprintf(stderr, "---------------\n\n"); \ - } else /* eat semicolon */ - #else -@@ -453,7 +453,7 @@ void Optimize(llvm::Module *module, int optLevel) { - #ifndef ISPC_NO_DUMPS - if (g->debugPrint) { - printf("*** Code going into optimization ***\n"); -- module->dump(); -+ module->print(llvm::outs(), nullptr); - } - #endif - DebugPassManager optPM; -@@ -666,7 +666,7 @@ void Optimize(llvm::Module *module, int optLevel) { - #ifndef ISPC_NO_DUMPS - if (g->debugPrint) { - printf("\n*****\nFINAL OUTPUT\n*****\n"); -- module->dump(); -+ module->print(llvm::outs(), nullptr); - } - #endif - } -@@ -4256,7 +4256,7 @@ char DebugPass::ID = 0; - bool DebugPass::runOnModule(llvm::Module &module) { - fprintf(stderr, "%s", str_output); - fflush(stderr); -- module.dump(); -+ module.print(llvm::outs(), nullptr); - return true; - } - -@@ -4303,7 +4303,7 @@ void DebugPassFile::run(llvm::Module &module, bool init) { - snprintf(fname, sizeof(fname), "%s_%d_%s.ll", init ? "init" : "ir", pnum, sanitize(std::string(pname)).c_str()); - llvm::raw_fd_ostream OS(fname, EC, llvm::sys::fs::F_None); - Assert(!EC && "IR dump file creation failed!"); -- module.print(OS, 0); -+ module.print(OS, nullptr); - } - - bool DebugPassFile::runOnModule(llvm::Module &module) { diff --git a/dev-lang/ispc/files/ispc-9999-werror.patch b/dev-lang/ispc/files/ispc-9999-werror.patch deleted file mode 100644 index 3fa144b78dbc..000000000000 --- a/dev-lang/ispc/files/ispc-9999-werror.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 13e66268..27ff8364 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -352,7 +352,7 @@ target_include_directories(${PROJECT_NAME} PRIVATE - ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}) - # Compile options - if (UNIX) -- target_compile_options(${PROJECT_NAME} PRIVATE -Wall -Wno-sign-compare -Wno-unused-function -Werror ${LLVM_CPP_FLAGS}) -+ target_compile_options(${PROJECT_NAME} PRIVATE -Wall -Wno-sign-compare -Wno-unused-function ${LLVM_CPP_FLAGS}) - # Security options - target_compile_options(${PROJECT_NAME} PRIVATE -fstack-protector -fdata-sections -ffunction-sections - -Wformat -Wformat-security -fpie -fwrapv) diff --git a/dev-lang/ispc/ispc-1.13.0.ebuild b/dev-lang/ispc/ispc-1.13.0.ebuild index 244bb728565a..33144034d36a 100644 --- a/dev-lang/ispc/ispc-1.13.0.ebuild +++ b/dev-lang/ispc/ispc-1.13.0.ebuild @@ -48,12 +48,12 @@ src_configure() { } src_install() { - dobin ${BUILD_DIR}/bin/ispc + dobin "${BUILD_DIR}"/bin/ispc dodoc README.md if use examples; then insinto "/usr/share/doc/${PF}/examples" docompress -x "/usr/share/doc/${PF}/examples" - doins -r ${BUILD_DIR}/examples/* + doins -r "${BUILD_DIR}"/examples/* fi } diff --git a/dev-lang/ispc/ispc-1.9.2.ebuild b/dev-lang/ispc/ispc-1.9.2.ebuild deleted file mode 100644 index d1c2c2331127..000000000000 --- a/dev-lang/ispc/ispc-1.9.2.ebuild +++ /dev/null @@ -1,52 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -PYTHON_COMPAT=( python2_7 ) - -inherit toolchain-funcs python-any-r1 - -DESCRIPTION="Intel SPMD Program Compiler" -HOMEPAGE="https://ispc.github.com/" - -if [[ ${PV} = *9999 ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/ispc/ispc.git" - KEYWORDS="" -else - SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~amd64 ~x86" -fi - -LICENSE="BSD BSD-2 UoI-NCSA" -SLOT="0" -IUSE="examples" - -RDEPEND=" - >=sys-devel/clang-3.0:* - >=sys-devel/llvm-3.0:* - " -DEPEND=" - ${RDEPEND} - ${PYTHON_DEPS} - sys-devel/bison - sys-devel/flex - " - -src_compile() { - #make all slient commands ("@") verbose and remove -Werror (ispc/ispc#1295) - sed -e '/^\t@/s/@//' -e 's/-Werror//' -i Makefile || die - emake LDFLAGS="${LDFLAGS}" OPT="${CXXFLAGS}" CXX="$(tc-getCXX)" CPP="$(tc-getCPP)" -} - -src_install() { - dobin ispc - dodoc README.rst - - if use examples; then - insinto "/usr/share/doc/${PF}/examples" - docompress -x "/usr/share/doc/${PF}/examples" - doins -r examples/* - fi -} diff --git a/dev-lang/ispc/ispc-9999.ebuild b/dev-lang/ispc/ispc-9999.ebuild index 244bb728565a..c8398b962c6a 100644 --- a/dev-lang/ispc/ispc-9999.ebuild +++ b/dev-lang/ispc/ispc-9999.ebuild @@ -35,9 +35,9 @@ DEPEND=" " PATCHES=( - "${FILESDIR}/${P}-cmake-gentoo-release.patch" - "${FILESDIR}/${P}-llvm-10.patch" - "${FILESDIR}/${P}-werror.patch" + "${FILESDIR}/${PN}-1.13.0-cmake-gentoo-release.patch" + "${FILESDIR}/${PN}-1.13.0-llvm-10.patch" + "${FILESDIR}/${PN}-1.13.0-werror.patch" ) src_configure() { @@ -48,12 +48,12 @@ src_configure() { } src_install() { - dobin ${BUILD_DIR}/bin/ispc + dobin "${BUILD_DIR}"/bin/ispc dodoc README.md if use examples; then insinto "/usr/share/doc/${PF}/examples" docompress -x "/usr/share/doc/${PF}/examples" - doins -r ${BUILD_DIR}/examples/* + doins -r "${BUILD_DIR}"/examples/* fi } diff --git a/dev-lang/janet/Manifest b/dev-lang/janet/Manifest index 5f366b993e18..afa66875479b 100644 --- a/dev-lang/janet/Manifest +++ b/dev-lang/janet/Manifest @@ -1,6 +1,5 @@ -AUX janet-1.7.0-fix-ldflags-in-pkgconfig.patch 473 BLAKE2B d7e99647a8b25b715c9261e3178db5ff024bee48c9a677b70a542e4f60a359ce349e130f15425694315dacc0e6a1151da8026f6f6cf0104e8137645302dae729 SHA512 d935b96d08f03160b88b33b61b2d1aafcce2184b622964ca8ee257978c8466f806e0491ba4e2f36f30c1bedfb7aa1e10df074b32a49a547fe3dee3b6b99adc8d -DIST janet-1.8.1.tar.gz 977929 BLAKE2B 4cdf9e5dd7f4a1128438db8bec43c4f1919392bf6c317e2fca42b73826058cd98cec812c245354cc26f21edd4b9640f94dce1e82daa785b53e7e1e8fb45148a9 SHA512 e2296b16ad7df35e0f6ff0f56b9cd5071e887288df195ac0a14a73284a48f010cc26a413ea836aa3faa4385e25f7f313b183f0fbb8e6eebdc3975b69c62e4ebf +DIST janet-1.11.1.tar.gz 550495 BLAKE2B 4f9e6f08aeb167f3cbb0afb635e4f9f9e904ad1f0bc937d7baa101e37b1f6aa23ef56549741c2c42d9b652f5bf46121b3467aa5a5ae1a3ee02b955387ef3c5a6 SHA512 75508255bce1b3b9af30fb6de14f8dbfaf5774838e5e400a97112100e2ae6b1dfb870cf95860a7d7b500385e8e7f585e3032492cac88fa7b356443314dc7a45a DIST janet-1.9.1.tar.gz 995046 BLAKE2B c65f59e874690b124b61811406670ed6bf9e23d930b5206a9fefebd64629a2287076a40db885b8a820d733a353237fea65dadccdf4efdd33f1537127f67e66b1 SHA512 4024b2f5bc52338b77c954e384157234ef3cecf21142ef60158adb656396b42accae3af8acb8e54f602f5fbce0e1e1f7f29030878ef2ac7055e933dd710db879 -EBUILD janet-1.8.1.ebuild 1313 BLAKE2B 7bd321b692a7b8772c610c6705b4ad1cda3e60bb8e1fccde281d60135516320890c9dd4068b0589f9674ae31b999c7ddc9332b9acec56cf958a6913ed96d4aea SHA512 a6250a88f336db50367b9bb23c3c75645e3aa8083937b86577f60a91008fa1afc4bfa9a0ae0be879b242981a4b8a7aa3dd70c8a724b360e460571b423072099d +EBUILD janet-1.11.1.ebuild 1291 BLAKE2B ee02ef5d4caf2973de692faa0c20545078546dd70090871ad24693b0acffd3e1066b74d23bb89fe406ef1ec76c992b7ba249f196f9083777eca52a8e0637b349 SHA512 9fbf46229af3dcaac54a07fdfa11f5289695cc2bf45ab194564ad069ab1cc5c6a40bb9367183d4dbcea39094c618394cc5e6826d70c94f9dfcc9d445f84b01aa EBUILD janet-1.9.1.ebuild 1236 BLAKE2B 4fecac4c852138871a7773b18d3990c47cb750a96d3357739f9c763fd01d6e7f7a5f82b9cf0123aef3d6fdd35f21dfcae51806574bf96990a1b24d99f1589f58 SHA512 44295b27d54b8c99914918dbe834c4d23eb7edbe8f6e440a3255e35153977b9bf47dcc5aa31920b0b6a42ac6978eb6b2a92a7aafcc986a7b127dd99753964d36 MISC metadata.xml 960 BLAKE2B fe836e1f5b7313091bf2c4341a30f7c395056fd4c63a2477a83a55daecede052eea148dc44cb253e8bead356e7b501b7698be4c787f05fdabc08638b2db7163c SHA512 a54e679498bc1239c6eda2302213e220a69eb25e5be02d3c945c89ed3943849adb7043ea6794aa5ad6e3a53026f7b06c16e7ba2ea35d5022d1cc97a9f561a4ba diff --git a/dev-lang/janet/files/janet-1.7.0-fix-ldflags-in-pkgconfig.patch b/dev-lang/janet/files/janet-1.7.0-fix-ldflags-in-pkgconfig.patch deleted file mode 100644 index 81df47acc748..000000000000 --- a/dev-lang/janet/files/janet-1.7.0-fix-ldflags-in-pkgconfig.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- ./Makefile 2020-02-02 06:35:17.000000000 +0100 -+++ ./Makefile 2020-03-17 23:14:26.172766381 +0100 -@@ -242,7 +242,7 @@ - echo "Description: Library for the Janet programming language." >> $@ - $(JANET_TARGET) -e '(print "Version: " janet/version)' >> $@ - echo 'Cflags: -I$${includedir}' >> $@ -- echo 'Libs: -L$${libdir} -ljanet $(LDFLAGS)' >> $@ -+ echo 'Libs: -L$${libdir} -ljanet' >> $@ - echo 'Libs.private: $(CLIBS)' >> $@ - - install: $(JANET_TARGET) build/janet.pc diff --git a/dev-lang/janet/janet-1.8.1.ebuild b/dev-lang/janet/janet-1.11.1.ebuild index 233b176a7261..134fe8b4a3cb 100644 --- a/dev-lang/janet/janet-1.8.1.ebuild +++ b/dev-lang/janet/janet-1.11.1.ebuild @@ -14,19 +14,16 @@ SLOT="0" KEYWORDS="~amd64 ~x86" IUSE="static-libs" -PATCHES=( - "${FILESDIR}/${PN}-1.7.0"-fix-ldflags-in-pkgconfig.patch -) - src_configure() { - append-ldflags -Wl,-soname,libjanet.so.0 + append-ldflags -Wl,-soname,libjanet.so.1.11 + append-cflags -fPIC } src_compile() { # janet_build is the git hash of the commit related to the # current release - it defines a constant which is then shown # when starting janet - local janet_build='\"5b6b9f1\"' + local janet_build='\"4cc68096\"' emake PREFIX="/usr" JANET_BUILD="${janet_build}" emake PREFIX="/usr" build/janet.pc JANET_BUILD="${janet_build}" emake PREFIX="/usr" docs JANET_BUILD="${janet_build}" @@ -34,13 +31,13 @@ src_compile() { src_install() { dobin "build/janet" - dobin "auxbin/jpm" - + dobin "jpm" + insinto "usr/include/janet" doheader "src/include/janet.h" doheader "src/conf/janetconf.h" dolib.so "build/libjanet.so" - dosym libjanet.so /usr/$(get_libdir)/libjanet.so.0 + dosym libjanet.so /usr/$(get_libdir)/libjanet.so.1.11 if use static-libs; then dolib.a "build/libjanet.a" diff --git a/dev-lang/logtalk/Manifest b/dev-lang/logtalk/Manifest index 0fa239954bf2..997999f82da6 100644 --- a/dev-lang/logtalk/Manifest +++ b/dev-lang/logtalk/Manifest @@ -1,7 +1,4 @@ -AUX logtalk-3.18.0-portage.patch 1179 BLAKE2B 25fad57b8969a487a45ab254cfba3f17bd92741f3a49718efca75307af0a269d0aedf847ae6fa93c3495971653c7b442c4f454f61bb9968f5da809b2dd386e85 SHA512 2f2423991fe8e65c058ab295b73e64693a91e99225bb2af953702227a1234b45d89508cb339fbe12143e6a98657c440778b41c701ed333d0e05520705bfe12dc AUX logtalk-3.36.0-portage.patch 1179 BLAKE2B aa40ea0df4f01778d01e2f7c174f9587d5d18f7ea80125ff198203081344eca3e050d3612c16627806e36171ca13a7875ccd0f935c4507ca987ef6529e691290 SHA512 5254edf0fced32c64d6848dad300ab48e53f7aa9f160e7b85e11fba5395b83da659134329846f281619b9fce1827ebae7c306fe1832fea8ece755fdfe7df7795 -DIST logtalk-3.18.0.tar.bz2 3280635 BLAKE2B 0105c0816d3b265f15f9ba6e82a4e6dbc877869c2ade6deac3f2748da12e14bd5de2e82ca8f1793c6553a635ca8a55138e79645219f09146c8adec4b60f70b30 SHA512 1575a564ff23d35b4d1581e7f5725515a548ea57d128fbfa13f8138e41791c50cc9626bdc26a85f5e676500b3f232faf742e434b1416707134e4c9b3f8afe424 DIST logtalk-3.36.0.tar.bz2 18373894 BLAKE2B 3f4917dea47b32760edfde0538a260e5405b566520c514ec137766d17ad532f1d3e3a7a6d05b4b643b21933073951ed41bf92161ae49545eb458619444b10210 SHA512 0e93f091cb24aed3b08db05df29484e708e14cf58a673a42df70c899f3bafae30896be118d89dfdf3f3cb7d4ba520a815e46d563dd7418f80912b7067ed7da8e -EBUILD logtalk-3.18.0.ebuild 3882 BLAKE2B e1df1f189373ef4292ad98bf16b17a4045455d756fc963072334b407684827dd7d791955817d9f97fea58f21a0806605a07d2432e50e290179e7d23dd91e0547 SHA512 b621d6ade513a690d1c0ea82071b5e295914156e6e5353d19485bdf856438b34c2d9a84149ebe9b9092ccda19d8a6027e70e7fed7ff70dd1eabac1cb2535aa61 EBUILD logtalk-3.36.0.ebuild 3879 BLAKE2B b9ba2a59b142186a616cb7f71bd3341e744cebf1cf458a7b96816bcee6fdf709891c008e6e92cc657a81a9af7f62bdc8e8257251fcdbb6fbd13afb3eac1b3546 SHA512 d247953afb63546c1bcf9abada9c78f2994c23e869c7e8e53750d9bcbef74afdfcaffcf5259981bf5a32c5da508bd2cdc08a5ea58a9d0b4b01fbbcabb56b1081 MISC metadata.xml 404 BLAKE2B 8eee9851c967beb38e36f649b8eaefc8b8329f06adf298702a06b427edeb9a0e556a2f47e63c2b4cf4219027ed18502336b4a9e032d876bde18897985aea7dd8 SHA512 1faeefef2f7670809936eb73c4e9e4e18f44ee6e5851cc7386e996768ab88dbfa7c24801daa2cf4edca8646427eec1c871136540d71b7e0b0add3d00c78691ed diff --git a/dev-lang/logtalk/files/logtalk-3.18.0-portage.patch b/dev-lang/logtalk/files/logtalk-3.18.0-portage.patch deleted file mode 100644 index cb0d44010d25..000000000000 --- a/dev-lang/logtalk/files/logtalk-3.18.0-portage.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- logtalk-3.18.0.orig/scripts/logtalk_user_setup.sh 2018-06-26 15:11:02.000000000 +0200 -+++ logtalk-3.18.0/scripts/logtalk_user_setup.sh 2018-07-22 14:05:50.343406307 +0200 -@@ -131,16 +131,6 @@ - rm -f "$LOGTALKUSER"/tools/lgtdoc/xml/lgt2* - rm -f "$LOGTALKUSER"/tools/lgtdoc/xml/logtalk.dtd - rm -f "$LOGTALKUSER"/tools/lgtdoc/xml/logtalk.xsd --ln -sf "$LOGTALKHOME"/ACKNOWLEDGMENTS.md "$LOGTALKUSER"/ACKNOWLEDGMENTS.md --ln -sf "$LOGTALKHOME"/BIBLIOGRAPHY.bib "$LOGTALKUSER"/BIBLIOGRAPHY.bib --ln -sf "$LOGTALKHOME"/CONTRIBUTING.md "$LOGTALKUSER"/CONTRIBUTING.md --ln -sf "$LOGTALKHOME"/CUSTOMIZE.md "$LOGTALKUSER"/CUSTOMIZE.md --ln -sf "$LOGTALKHOME"/INSTALL.md "$LOGTALKUSER"/INSTALL.md --ln -sf "$LOGTALKHOME"/LICENSE.txt "$LOGTALKUSER"/LICENSE.txt --ln -sf "$LOGTALKHOME"/QUICK_START.md "$LOGTALKUSER"/QUICK_START.md --ln -sf "$LOGTALKHOME"/README.md "$LOGTALKUSER"/README.md --ln -sf "$LOGTALKHOME"/RELEASE_NOTES.md "$LOGTALKUSER"/RELEASE_NOTES.md --ln -sf "$LOGTALKHOME"/UPGRADING.md "$LOGTALKUSER"/UPGRADING.md - ln -sf "$LOGTALKHOME"/adapters "$LOGTALKUSER"/adapters - ln -sf "$LOGTALKHOME"/coding "$LOGTALKUSER"/coding - ln -sf "$LOGTALKHOME"/integration "$LOGTALKUSER"/integration diff --git a/dev-lang/logtalk/logtalk-3.18.0.ebuild b/dev-lang/logtalk/logtalk-3.18.0.ebuild deleted file mode 100644 index 63726459ddf6..000000000000 --- a/dev-lang/logtalk/logtalk-3.18.0.ebuild +++ /dev/null @@ -1,130 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit eutils xdg-utils - -DESCRIPTION="Open source object-oriented logic programming language" -HOMEPAGE="https://logtalk.org" -SRC_URI="https://logtalk.org/files/${P}.tar.bz2" -LICENSE="Apache-2.0" - -SLOT="0" -KEYWORDS="~amd64 ~ppc ~x86" -IUSE="fop xslt" - -DEPEND="" -RDEPEND="${DEPEND} - xslt? ( dev-libs/libxslt ) - fop? ( dev-java/fop )" - -src_prepare() { - epatch "${FILESDIR}"/${P}-portage.patch - - eapply_user -} - -src_install() { - # Look at scripts/install.sh for upstream installation process. - # Install logtalk base - mv scripts/logtalk_user_setup.sh integration/ - mkdir -p "${D}/usr/share/${P}" - cp -r adapters coding contributions core docs examples integration \ - library manuals paths scratch tests tools VERSION.txt \ - loader-sample.lgt settings-sample.lgt tester-sample.lgt \ - tests-sample.lgt \ - "${D}/usr/share/${P}" \ - || die "Failed to install files" - - # Install mime file, the database will be updated later - insinto /usr/share/mime/packages - doins scripts/freedesktop/logtalk.xml - - # Install documentation - dodoc ACKNOWLEDGMENTS.md BIBLIOGRAPHY.bib CONTRIBUTING.md \ - CUSTOMIZE.md INSTALL.md LICENSE.txt QUICK_START.md \ - README.md RELEASE_NOTES.md UPGRADING.md VERSION.txt - - rm -f man/man1/logtalk_backend_select.1 - rm -f man/man1/logtalk_version_select.1 - doman man/man1/*.1 - - # Integration symlinks - dosym ../share/${P}/integration/logtalk_user_setup.sh \ - /usr/bin/logtalk_user_setup - dosym ../share/${P}/integration/bplgt.sh \ - /usr/bin/bplgt - dosym ../share/${P}/integration/cxlgt.sh \ - /usr/bin/cxlgt - dosym ../share/${P}/integration/eclipselgt.sh \ - /usr/bin/eclipselgt - dosym ../share/${P}/integration/gplgt.sh \ - /usr/bin/gplgt - dosym ../share/${P}/integration/jiplgt.sh \ - /usr/bin/jiplgt - dosym ../share/${P}/integration/lplgt.sh \ - /usr/bin/lplgt - dosym ../share/${P}/integration/qplgt.sh \ - /usr/bin/qplgt - dosym ../share/${P}/integration/quintuslgt.sh \ - /usr/bin/quintuslgt - dosym ../share/${P}/integration/sicstuslgt.sh \ - /usr/bin/sicstuslgt - dosym ../share/${P}/integration/swilgt.sh \ - /usr/bin/swilgt - dosym ../share/${P}/integration/xsblgt.sh \ - /usr/bin/xsblgt - dosym ../share/${P}/integration/xsbmtlgt.sh \ - /usr/bin/xsbmtlgt - dosym ../share/${P}/integration/yaplgt.sh \ - /usr/bin/yaplgt - - dosym ../share/${P}/tools/lgtdoc/xml/lgt2xml.sh \ - /usr/bin/lgt2xml - use xslt && dosym ../share/${P}/tools/lgtdoc/xml/lgt2html.sh \ - /usr/bin/lgt2html - use xslt && dosym ../share/${P}/tools/lgtdoc/xml/lgt2txt.sh \ - /usr/bin/lgt2txt - use xslt && dosym ../share/${P}/tools/lgtdoc/xml/lgt2md.sh \ - /usr/bin/lgt2md - use fop && dosym ../share/${P}/tools/lgtdoc/xml/lgt2pdf.sh \ - /usr/bin/lgt2pdf - - # Install environment files - echo "LOGTALKHOME=/usr/share/${P}" > 99logtalk - doenvd 99logtalk -} - -pkg_postinst() { - xdg_mimeinfo_database_update - xdg_desktop_database_update - - ewarn "The following integration scripts are installed" - ewarn "for running logtalk with selected Prolog compilers:" - ewarn "B-Prolog: /usr/bin/bplgt" - ewarn "CxProlog: /usr/bin/cxlgt" - ewarn "ECLiPSe: /usr/bin/eclipselgt" - ewarn "GNU Prolog: /usr/bin/gplgt" - ewarn "JIProlog: /usr/bin/jiplgt" - ewarn "Lean Prolog: /usr/bin/lplgt" - ewarn "Qu-Prolog: /usr/bin/qplgt" - ewarn "Quintus Prolog: /usr/bin/quintuslgt" - ewarn "SICStus Prolog: /usr/bin/sicstuslgt" - ewarn "SWI Prolog: /usr/bin/swilgt" - ewarn "XSB: /usr/bin/xsblgt" - ewarn "XSB MT: /usr/bin/xsbmtlgt" - ewarn "YAP: /usr/bin/yaplgt" - ewarn "" - - ewarn "The environment has been set up to make the above" - ewarn "integration scripts find files automatically for logtalk." - ewarn "Please run 'etc-update && source /etc/profile' to update" - ewarn "the environment now, otherwise it will be updated at next" - ewarn "login." -} - -pkg_postrm() { - xdg_mimeinfo_database_update - xdg_desktop_database_update -} diff --git a/dev-lang/luajit/Manifest b/dev-lang/luajit/Manifest index b97e649aa007..fb0469851823 100644 --- a/dev-lang/luajit/Manifest +++ b/dev-lang/luajit/Manifest @@ -1,6 +1,7 @@ +AUX CVE-2020-15890.patch 660 BLAKE2B ac615accba8c2d914ff9db2bd2306e1f37df6b35f95c524d592952e52134a9c5ea7adcb11edabe95c35a7cb1a1b66f887095ae95f715714fcda5a642876c8e31 SHA512 d227f22f1b7776f36b8a1e1471e6fcb3a2442037e09fcd0f4d489c3853a5cb2916b02cd6ab0194105989502b76bcb03e97ea1825d21212a534344afe96e3448c AUX luajit-2-ldconfig.patch 1099 BLAKE2B f18beb00b703aa4fd5c6d959b72469c34fb67ba9dd1513831c36d5bdd21144457d70a58948bfc47660eadb130bb4f77d55858cd4e4b7c33860df749b22b727bd SHA512 a86be88b8cf65c5a11defeeb16dab92c7d3fe774b2ecd289d9485342236e14c99b78700082c024b703179b55aedeee98bef43d624af23673cfa7ac68a492c6b1 DIST LuaJIT-2.0.5.tar.gz 849845 BLAKE2B 961c8622e19b0e66a76a875cb46ad149cb2559b5af41f360dc41dd0d6bb924583e6477dd1329f67c2ac6ea4b8dc42c5e2f4d63ea49400aba4d9e7c7e85e4b085 SHA512 2636675602b4a060b0571c05220db2061dd2f38568e35b2be346a0f5e3128d87057d11d3d0d7567d8cc4e0817b5e4cf2c52a17a48065520962b157816465a9fe DIST LuaJIT-2.1.0-beta3.tar.gz 1025180 BLAKE2B ac3d12e25bd9946ba41aed6672c66884e7256e6be99d7ee8d1260d697453c966b24d60387f278f47233bad44cda61085c9059e6f62c0bc7cfdaaefde282346c5 SHA512 c44e967a0f671ed32b55aee810bc8b3b63737a2d7363b8984ae1949b24f98dbb3f9be7c1e10239fdeb96a3e3c836f606342cbd61838cf9bcadb077443eb5bc12 -EBUILD luajit-2.0.5-r1.ebuild 1466 BLAKE2B ff14fc4cd92ee20c04c6ab4e1f812c463e787ba1f6936ef5c5b36008a27dda3e6fb1d306a2b3249d6dac7ef3e3ecdf00bf5be8c321d75634eb9b31b54c3965c6 SHA512 e7420eb3de6a28aacb43fc2d7f237e587205296c3ec4252e52b0b09945cd8966ed6602d77e30453dabcf44c41809a3c2018398c21bdc3d3f20c3416ed8a8e4d2 -EBUILD luajit-2.1.0_beta3.ebuild 1204 BLAKE2B a58f841f8dd6d7dcf82752ba231080183b49494480c6532555e8b33bb4a0ab19716a96321ae0a1bbc4eb8cff52bbcbfb55a8e9963fbc4e1764d98fcf2fa40ba1 SHA512 3701ba4433fe293786c092f2ad958867aa367a6158db5451a75989643dcd7994205606c4b225cd8e85f5c6d0902c09014342d64f1aa865fe68f3260b6b2dd7a5 +EBUILD luajit-2.0.5-r2.ebuild 1503 BLAKE2B ae88e870209a2887ec07b67f6494d9ef35df9bb1e03f4dab7df2fe6dbac1403d3db022427d8d51d24db86e4a89f3eccc3bb42e61fbf976029353fdff4ca3b395 SHA512 5efb5f0fb79c2ad3caa627c5b98916b8d572deed99ecaa34e41e7a257dd13e5bd5708f8499358b409e1d096dec3b1adc5fd3899a36195cd638934d6dc8bcf496 +EBUILD luajit-2.1.0_beta3-r1.ebuild 1241 BLAKE2B 672f3bbec3b3c150a0edbdc10eaf2ca715bef40b6142788218df5b43dc9ee6940f2275821a17e2e25b655eb10d6d476f25e5afdb119ac3533aa49351c45d795a SHA512 198f99e9c261563cbab3800753c01d7588515bdf20ad5b12d57b30f0681fd950fe0f8e90116f5d24b72df243ffa0d212aa1045f48a6ab07627d325670b512e61 MISC metadata.xml 552 BLAKE2B 50666bd08bb7c06c52a28652c0a87988e815c1d3c10cc1425cc7979689fd4738f56aaa6478aaa616a0b76122e42f790b3b415a60078dcc256499019912f0c4d4 SHA512 9d6ef1cb9acf52db52ec192bc51cbab6a7aa198dbf108ed76b25b0e258491b2f8d5ec0981c538546cc96de490c8c1ac852e337ef09ab5898ad4f2c48f5670f07 diff --git a/dev-lang/luajit/files/CVE-2020-15890.patch b/dev-lang/luajit/files/CVE-2020-15890.patch new file mode 100644 index 000000000000..751726571a05 --- /dev/null +++ b/dev-lang/luajit/files/CVE-2020-15890.patch @@ -0,0 +1,22 @@ +From 53f82e6e2e858a0a62fd1a2ff47e9866693382e6 Mon Sep 17 00:00:00 2001 +From: Mike Pall <mike> +Date: Sun, 12 Jul 2020 14:30:34 +0200 +Subject: [PATCH] Fix frame traversal for __gc handler frames. + +Reported by Changochen. +--- + src/lj_err.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/lj_err.c b/src/lj_err.c +index caa7487f2..e3e0c2eb7 100644 +--- a/src/lj_err.c ++++ b/src/lj_err.c +@@ -529,6 +529,7 @@ static ptrdiff_t finderrfunc(lua_State *L) + if (cframe_canyield(cf)) return 0; + if (cframe_errfunc(cf) >= 0) + return cframe_errfunc(cf); ++ cf = cframe_prev(cf); + frame = frame_prevd(frame); + break; + case FRAME_PCALL: diff --git a/dev-lang/luajit/luajit-2.0.5-r1.ebuild b/dev-lang/luajit/luajit-2.0.5-r2.ebuild index 0e4dc83ff928..d9fa1d7fbc36 100644 --- a/dev-lang/luajit/luajit-2.0.5-r1.ebuild +++ b/dev-lang/luajit/luajit-2.0.5-r2.ebuild @@ -23,7 +23,10 @@ SLOT="2" KEYWORDS="amd64 arm ppc x86 ~amd64-linux ~x86-linux" IUSE="lua52compat static-libs" -PATCHES=( "${FILESDIR}/${PN}-2-ldconfig.patch" ) +PATCHES=( + "${FILESDIR}/${PN}-2-ldconfig.patch" + "${FILESDIR}/CVE-2020-15890.patch" +) S="${WORKDIR}/${MY_P}" diff --git a/dev-lang/luajit/luajit-2.1.0_beta3.ebuild b/dev-lang/luajit/luajit-2.1.0_beta3-r1.ebuild index b38bb2b260d7..a959393a5d76 100644 --- a/dev-lang/luajit/luajit-2.1.0_beta3.ebuild +++ b/dev-lang/luajit/luajit-2.1.0_beta3-r1.ebuild @@ -19,7 +19,10 @@ SLOT="2" KEYWORDS="" IUSE="lua52compat static-libs" -PATCHES=( "${FILESDIR}/${PN}-2-ldconfig.patch" ) +PATCHES=( + "${FILESDIR}/${PN}-2-ldconfig.patch" + "${FILESDIR}/CVE-2020-15890.patch" +) S="${WORKDIR}/${MY_P}" diff --git a/dev-lang/mercury-extras/Manifest b/dev-lang/mercury-extras/Manifest index 3eb6b722615d..a748b720936b 100644 --- a/dev-lang/mercury-extras/Manifest +++ b/dev-lang/mercury-extras/Manifest @@ -1,10 +1,13 @@ DIST mercury-extras-14.01.1-gentoo-patchset-4.tar.gz 4361 BLAKE2B a1939e4b76782cb01fc7ee5dcb1ccbb885e93992d0e6f540552eb987f405b3a70671527dfacb873323f6030bb6de2f6cdd23768dbc36e8b656d836e2890b7d8a SHA512 e30ac4e9c0592a1ea5253663bf351814e91977ea53892dca4d996b217aac959265563910cc21aa64ee12a93ea379cb8143730585c7d32390bcf05f2a1b0590d7 DIST mercury-extras-20.01-gentoo-patchset-0.tar.gz 542 BLAKE2B 4f24f5af21cbd566eb72ce03d618d858f16d02a921b506c933342181ea057d98377077535571223c85b1f1fa5854e52005f67f40dd75bb392929faaad889eed1 SHA512 6a2eb1dbaac1f028c0ce5f0e21a8f24bd4ba9b068f1ea5d8554c5fb7376642797709f0aa93db336d2f015b6f815d0aa27c7d60720aab340ace180d49791bd852 DIST mercury-extras-20.01.1-gentoo-patchset-0.tar.gz 732 BLAKE2B 32287e116b94b540ca0b710eac8921669ff9a56b5d8a812eba8443609ccfc8c937baaa53a0ae4704abdc78013d58eddd0dc5cda7c807d7a0b724ebda1dede723 SHA512 0d3ca2984eb054ec2add5e05fb49d4fa711b3c78038b4e9777c4767083fc3bae552a261677fed6f07c293d2fb1ebf632ba633eb64a3a8ab4880c6f6619a197ea +DIST mercury-extras-20.01.2-gentoo-patchset-1.tar.gz 922 BLAKE2B 3713bb18147328acfda4e605ca241a000b19c787f15998ba79b9198bf0bd2e5597df3198837efc24679655d923c56391973085c59498d5441626cab4bbce6226 SHA512 70fa7bb240ccee87557eaf84dba712f162543c0caca4e80ec2ab47ed9f5a81cc8f1ad47a85671cfe3f917c4757a653a6602e1c6461307887656683f638db225d DIST mercury-srcdist-14.01.1.tar.gz 52658945 BLAKE2B 6497921a0227b9a6fbcbabdd309ef3325f32dda14fc4ddb443368385b89be4011d677a24b30b3702147d1b782fe2597760ad66dd34503aa6aebaf79707466529 SHA512 a128ef0fd4955abadea32019ec59297ffe32537415f32e9e948cbc1c3439bb40eb09de77569690fb18dd7d6969a2b1141b3ae5baeb87f2627eaa65ad93add92c DIST mercury-srcdist-20.01.1.tar.gz 47088335 BLAKE2B 1e3285dadc3748934e801b8ac0316d3005fbe24c20c9ceb694e9fc316d820fdb89c659107b25ee474fd6ac50d661dd029af9ca5082016a3b0827dd640a54a707 SHA512 24ad0bbecee46ab6ff669d63d64096b37a0d010bb44978a1785eee2701a8b30a83eab229af97cbbb18bca55b5e89be9ba74fe126d1d430da1e1e909366dc5b90 +DIST mercury-srcdist-20.01.2.tar.gz 46789217 BLAKE2B bc9637c1b4afb81d4bf35cd94a1f1d87b17094d8a6cbb7e5c8b0ff9c99ce59178d9e32bae246dd041ad781fe5d04e68db8f5effbb6bfcc29b76a83aad91a5666 SHA512 0deed9c0a13ebf793fb80def3fe6d9ee0aa4f0f2974865364eff81bdcac1ec0c41aafbec3e0146c8bdcf3245789e1003b2e4f8e219b53bec71e90074867a834d DIST mercury-srcdist-20.01.tar.gz 47103868 BLAKE2B 68be786e925bdf94dcba6c6a2a746a384da345ee33250785d8d2b9281815694a4525cdd694c26f58051c097f2a897291e640e2139729ccede9bd2e472077d8c9 SHA512 90e36faa375603e596b2dd692363528120fda62ae6d2e2b119cf76de1656dae4028aff00858a4bff3fdfb9b2210ea17db0aa516ce4283604c46a5935dd2cd4b7 EBUILD mercury-extras-14.01.1.ebuild 4543 BLAKE2B e97e6d88006db060b8d3df4ef37e5816d9047388e9deb79ca231d5209f4f79a31e1923d9f98a210ef739f6292bd3c1a432297ccf6bbc0f2c83321a0ff3844332 SHA512 5b6faadbe8fd1c7abc3fb6b28ac1fbc1d4d1a5683afd36d46aee7c6ea07ba07fcba1fb020b65ea9f570220d29ab06abc2a2171716cf94495ec9adc5d234beb24 EBUILD mercury-extras-20.01.1.ebuild 8085 BLAKE2B 2c5d2ace45872369bd2375995a28475c5f4e69b47c77d3af24e92f3a650a8d64d61e4c69e1a3503da8ac7a855a5576c9f9bda772c2b7248582b2c8c0fd5c4212 SHA512 861b3ad5d55116023a91f95d18c2b7bb992416d9c9283341a6fbf03656c9aea0d4259feeecf38971fbfe2b75ea502cbfc664f83115d5c0bcee93f09b3f8ae0f9 +EBUILD mercury-extras-20.01.2.ebuild 8176 BLAKE2B a64709a822a405c7ede506192b05ca669ff9be6b64a75b56c57ea78f021ebab36e63f2dde8bed4a64f5f786f42afc7af64fad70c44c4658fae3989fe2979ccde SHA512 a172aaff9c7b84f7169f73f61606588a219d9bb990112459d9469c6d610af5b1292cbe745bcdd476fd42900ebb27a7abfc6b380e3050dc3846d6b50090e80274 EBUILD mercury-extras-20.01.ebuild 8127 BLAKE2B 50bdc7b9de3d58bc3ac19e6a3aadccd94f0e2a344ad43795e4ad630f9982202930577be28d24c7d6f08b908795ebfbe4237d069692afa4bf5491cdbb94213334 SHA512 274b4d9e715b0b88b5a445e13bda0495305999820d1866083101071367871442c4ffe9dd5ca68e7a4a1facf1308ce77db27ada715ba30af00b26322a2c963822 MISC metadata.xml 318 BLAKE2B 8094d1a2d85b6c13ff05e9d81938e498ec514304b338f27cdbb5d92a62090fcace46b95cb21f56db75b6bdf087916a8d2c89960646e1b8828ccf31bbbb73ae6d SHA512 a49e9c19e322bb1b5d8c09c9db8c364b78fb97e62546991dc8bfe86bb2e478fec85e2acbbcdfff52b3b11ec627ba089d1a23e876bf4c1a0633829a739fff50fc diff --git a/dev-lang/mercury-extras/mercury-extras-20.01.2.ebuild b/dev-lang/mercury-extras/mercury-extras-20.01.2.ebuild new file mode 100644 index 000000000000..bce2fa7c29f2 --- /dev/null +++ b/dev-lang/mercury-extras/mercury-extras-20.01.2.ebuild @@ -0,0 +1,319 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit eutils multilib vcs-clean + +PATCHSET_VER="1" +MY_P=mercury-srcdist-${PV} + +DESCRIPTION="Additional libraries and tools that are not part of the Mercury standard library" +HOMEPAGE="https://www.mercurylang.org/index.html" +SRC_URI="https://dl.mercurylang.org/release/${MY_P}.tar.gz + https://dev.gentoo.org/~keri/distfiles/mercury-extras/${P}-gentoo-patchset-${PATCHSET_VER}.tar.gz" + +LICENSE="GPL-2 LGPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +IUSE="cairo examples glut gmp iodbc ncurses odbc opengl ssl tk tommath X xml" +REQUIRED_USE="?? ( odbc iodbc )" + +RDEPEND=" + ~dev-lang/mercury-${PV} + cairo? ( >=x11-libs/cairo-1.10.0 ) + gmp? ( dev-libs/gmp:0 ) + glut? ( media-libs/freeglut ) + odbc? ( dev-db/unixODBC ) + iodbc? ( dev-db/libiodbc ) + tommath? ( dev-libs/libtommath ) + ncurses? ( sys-libs/ncurses:= ) + opengl? ( + virtual/opengl + virtual/glu + ) + tk? ( + dev-lang/tcl:0 + dev-lang/tk:0 + ) + X? ( x11-libs/libX11 )" + +DEPEND="${RDEPEND}" + +S="${WORKDIR}"/${MY_P}/extras + +mercury_pkgs() { + echo " + align_right/align_right:bin: + base64/mercury_base64:lib: + cgi/mercury_www:lib: + complex_numbers/complex_numbers:lib: + $(use ncurses && echo \ + curs/curs:lib:ncurses,panel curses/mcurses:lib:ncurses) + dynamic_linking/dl:lib: + error/error:bin: + fixed/fixed:lib: + $(use gmp && echo gmp_int/gmp_int:lib:) + $(use tommath && echo mp_int/mp_int:lib:libtommath) + $(use X && echo graphics/easyx/easyx:lib:x11) + $(use cairo && echo graphics/mercury_cairo/mercury_cairo:lib:cairo) + $(use glut && echo graphics/mercury_glut/mercury_glut:lib:freeglut) + $(use opengl && echo graphics/mercury_opengl/mercury_opengl:lib:gl,glu) + $(use tk && echo graphics/mercury_tcltk/mercury_tcltk:lib:tk) + lex/lex:lib: + lex/regex:lib: + moose/moose:bin: + net/net:lib: + net/echo:bin: + $(use ssl && echo mopenssl/mopenssl:lib:openssl) + $(use odbc && echo odbc/odbc:lib:) + $(use iodbc && echo odbc/odbc:lib:libiodbc) + posix/posix:lib: + $(has_version dev-lang/mercury[trail] && echo \ + references/global:lib: trailed_update/trailed_update:lib:) + show_ops/show_ops:bin: + solver_types/library/any:lib: + $(use xml && echo xml/xml:lib:)" +} + +mercury_pkg_setup() { + mercury_pkg=${1%%:*} + mercury_pkg_dir=${mercury_pkg%/*} + mercury_pkg_name=${mercury_pkg##*/} + + mercury_pkg_atts=${1#*:} + mercury_pkg_type=${mercury_pkg_atts%%:*} + mercury_pkg_deps=${mercury_pkg_atts#*:} + + cd "${S}"/${mercury_pkg_dir} || die + + echo ">> Preparing Mercury package: ${mercury_pkg}" + + if ! test -f "${S}"/${mercury_pkg_dir}/gentoo.params; then + echo "LIBGRADES := \$(filter-out java,\$(LIBGRADES))" \ + > "${S}"/${mercury_pkg_dir}/gentoo.params + echo "LIBGRADES := \$(filter-out erlang,\$(LIBGRADES))" \ + >> "${S}"/${mercury_pkg_dir}/gentoo.params + echo "LIBGRADES := \$(filter-out csharp,\$(LIBGRADES))" \ + >> "${S}"/${mercury_pkg_dir}/gentoo.params + echo "include gentoo.params" > "${S}"/${mercury_pkg_dir}/Mmakefile + fi + + if test -n "$mercury_pkg_deps"; then + echo "EXTRA_CFLAGS += $(pkg-config --cflags ${mercury_pkg_deps/,/ })" \ + >> "${S}"/${mercury_pkg_dir}/gentoo.params + echo "EXTRA_MLLIBS += $(pkg-config --libs ${mercury_pkg_deps/,/ })" \ + >> "${S}"/${mercury_pkg_dir}/gentoo.params + fi + + if test ${mercury_pkg_name} = dl; then + echo "EXTRA_MLLIBS = -ldl" >> "${S}"/${mercury_pkg_dir}/gentoo.params + elif test ${mercury_pkg_name} = gmp_int; then + echo "EXTRA_MLLIBS = -lgmp" >> "${S}"/${mercury_pkg_dir}/gentoo.params + elif test ${mercury_pkg_name} = mercury_tcltk; then + echo "EXTRA_CFLAGS += -DUSE_INTERP_RESULT" \ + >> "${S}"/${mercury_pkg_dir}/gentoo.params + elif test ${mercury_pkg_name} = mopenssl; then + local net_libdir="${D}/usr/$(get_libdir)/mercury/extras/lib/\$(GRADE)" + echo "EXTRA_MLLIBS += -L${net_libdir} -L../net -lnet" \ + >> "${S}"/${mercury_pkg_dir}/gentoo.params + echo "net%:" >> "${S}"/${mercury_pkg_dir}/gentoo.params + echo " cp ../net/\$@ \$@" >> "${S}"/${mercury_pkg_dir}/gentoo.params + elif test ${mercury_pkg_name} = odbc && use odbc; then + echo "EXTRA_CFLAGS = -DMODBC_UNIX -DMODBC_MYSQL" \ + >> "${S}"/${mercury_pkg_dir}/Mmakefile + echo "EXTRA_MLLIBS = -lodbc" >> "${S}"/${mercury_pkg_dir}/gentoo.params + elif test ${mercury_pkg_name} = odbc && use iodbc; then + echo "EXTRA_CFLAGS += -DMODBC_IODBC -DMODBC_MYSQL" \ + >> "${S}"/${mercury_pkg_dir}/gentoo.params + fi +} + +mercury_pkg_compile() { + mercury_pkg=${1%%:*} + mercury_pkg_dir=${mercury_pkg%/*} + mercury_pkg_name=${mercury_pkg##*/} + + mercury_pkg_atts=${1#*:} + mercury_pkg_type=${mercury_pkg_atts%:*} + + cd "${S}"/${mercury_pkg_dir} || die + + echo ">> Compiling Mercury package: ${mercury_pkg}" + + if test "${mercury_pkg_type}" = "bin"; then + mercury_mmc_target=${mercury_pkg_name} + else + mercury_mmc_target=lib${mercury_pkg_name} + fi + + # Mercury dependency generation must be run single-threaded + mmc -f *.m || die "mmc -f .m failed" + mmake -j1 \ + ${mercury_pkg_name}.depend \ + || die "mmake ${mercury_pkg} depend failed" + + # Compiling Mercury submodules is not thread-safe + mmake -j1 \ + MLFLAGS=--no-strip \ + CFLAGS="${CFLAGS}" \ + LDFLAGS="${LDFLAGS}" \ + LD_LIBFLAGS="${LDFLAGS}" \ + ${mercury_mmc_target} || die "mmake ${mercury_pkg} failed" + +} + +mercury_pkg_install() { + mercury_pkg=${1%%:*} + mercury_pkg_dir=${mercury_pkg%/*} + mercury_pkg_name=${mercury_pkg##*/} + + mercury_pkg_atts=${1#*:} + mercury_pkg_type=${mercury_pkg_atts%:*} + + cd "${S}"/${mercury_pkg_dir} || die + + echo ">> Installing Mercury package: ${mercury_pkg}" + + if test "${mercury_pkg_type}" = "bin"; then + into /usr/$(get_libdir)/mercury/extras + dobin ${mercury_pkg_name} + else + # Compiling Mercury submodules is not thread-safe + mmake -j1 \ + MLFLAGS=--no-strip \ + CFLAGS="${CFLAGS}" \ + LDFLAGS="${LDFLAGS}" \ + LD_LIBFLAGS="${LDFLAGS}" \ + INSTALL_LIBDIR="${D}/usr/$(get_libdir)/mercury/extras" \ + lib${mercury_pkg_name}.install || die "mmake ${mercury_pkg} failed" + fi +} + +src_prepare() { + cd "${WORKDIR}"/${MY_P} + if [[ -d "${WORKDIR}"/${PV} ]] ; then + eapply "${WORKDIR}"/${PV} + fi + eapply_user + + cd "${S}" + for mercury_pkg in $(mercury_pkgs); do + mercury_pkg_setup ${mercury_pkg} + done +} + +src_compile() { + for mercury_pkg in $(mercury_pkgs); do + mercury_pkg_compile ${mercury_pkg} + done +} + +src_install() { + for mercury_pkg in $(mercury_pkgs); do + mercury_pkg_install ${mercury_pkg} + done + + cd "${S}" + dodoc README + + if use examples; then + docinto samples/cgi + dodoc cgi/form_test.m + + docinto samples/complex_numbers + dodoc complex_numbers/samples/*.m + + if use ncurses; then + docinto samples/curs + dodoc curs/samples/*.m + + docinto samples/curses + dodoc curses/sample/*.m + fi + + docinto samples/dynamic_linking + dodoc dynamic_linking/{hello,dl_test}.m + + docinto samples/gator + dodoc -r gator/* + + if use gmp; then + docinto samples/gmp_int + dodoc gmp_int/gmp_int_test.m + fi + + if use tommath; then + docinto samples/mp_int + dodoc mp_int/mp_int_test.m + fi + + if use X; then + docinto samples/graphics + dodoc graphics/easyx/samples/*.m + fi + + if use glut && use opengl; then + docinto samples/graphics + dodoc graphics/samples/gears/*.m + dodoc graphics/samples/maze/*.m + fi + + if use tk; then + docinto samples/graphics + dodoc graphics/samples/calc/*.m + fi + + if use opengl && use tk; then + docinto samples/graphics + dodoc graphics/samples/pent/*.m + fi + + docinto samples/lex + dodoc lex/samples/*.m + + docinto samples/log4m + dodoc log4m/*.m + + docinto samples/monte + dodoc monte/*.m + + docinto samples/moose + dodoc moose/samples/* + + docinto samples/net + dodoc net/test_lookups.m + + if use odbc || use iodbc; then + docinto samples/odbc + dodoc odbc/odbc_test.m + fi + + docinto samples/posix + dodoc posix/samples/*.m + + docinto samples/random + dodoc random/*.m + + if has_version dev-lang/mercury[trail]; then + docinto samples/references + dodoc references/samples/*.m + + docinto samples/trail + dodoc trail/*.m + + docinto samples/trailed_update + dodoc trailed_update/samples/*.m + fi + + if use xml; then + docinto samples/xml + dodoc xml/tryit.m + dodoc xml/samples/* + dodoc xml_stylesheets/*.xsl + fi + + ecvs_clean + fi +} diff --git a/dev-lang/mercury/Manifest b/dev-lang/mercury/Manifest index 2d103fd0f67f..731137dd5042 100644 --- a/dev-lang/mercury/Manifest +++ b/dev-lang/mercury/Manifest @@ -2,10 +2,13 @@ AUX 50mercury-gentoo.el 130 BLAKE2B b0108f529cbe5b66b510b2ebab6f091825df9ac92dc1 DIST mercury-14.01.1-gentoo-patchset-5.tar.gz 5693 BLAKE2B 300de3254bc0d2f59493c0e2243b0d8786fccce714134a11ce510120b7d9f05ebe4835f084ec2db2ddaf2d405cbae65e86d809847079a7d63a6a68021d9d29e8 SHA512 3f9f1e2359f372e4f510b9a00c197978657b28d1308d12cba4d08a982877e2311d7fb6e626dad07d0fa09d24f97334575557cb49003508fdc7b32288c1ae8f2d DIST mercury-20.01-gentoo-patchset-0.tar.gz 3862 BLAKE2B 79ef6d30add63a5d419e3dd5b376fd9c1727038102db2bc0e8ccd8b71cdc1c80e721647f34764b0aa4fd6d58b9e38c9675f234714f381f94be572b9b64b478e1 SHA512 2835b4740453bcc358363f9eaa0264706125b5e5f7a38802d5f280ccd777d4c760124ed3a635f17ecc2ae772767e9fa5d61093c40094358a0a96a726a23ff08e DIST mercury-20.01.1-gentoo-patchset-0.tar.gz 3943 BLAKE2B 0fd149c622715bf191182bd93e264096327d7869e30aaa10bb19b70bec5563520026e2561cc6607c62801ed00ed6b5907bbae4be997869b9facb2f9d65ec0c7a SHA512 d866b35b6df14645ef60ff25497f9bbf0c2caeae2145bc0aef2adea0e651379c673c1815c717f1a51457d93cc67e9ae3dafe5d9fce1d4734bf1673e4cfcbd367 +DIST mercury-20.01.2-gentoo-patchset-1.tar.gz 4562 BLAKE2B f1e9d040cfd5930c4f4d9722fc10e11532272f1fa0ab6bd25cc0d2ed42eb0edfbe6f9bc1d41972775fa720b80601d5fdae1681d56f677861fab15e10cc6d05cb SHA512 4f89b09e1e196a61892811167bc0dc1b3ee868ef336efdf66e417574c18ea53b557bd87d5c5300eee8194a3c4250b47e70f5991fcc25b1c58d956a4b097eaec5 DIST mercury-srcdist-14.01.1.tar.gz 52658945 BLAKE2B 6497921a0227b9a6fbcbabdd309ef3325f32dda14fc4ddb443368385b89be4011d677a24b30b3702147d1b782fe2597760ad66dd34503aa6aebaf79707466529 SHA512 a128ef0fd4955abadea32019ec59297ffe32537415f32e9e948cbc1c3439bb40eb09de77569690fb18dd7d6969a2b1141b3ae5baeb87f2627eaa65ad93add92c DIST mercury-srcdist-20.01.1.tar.gz 47088335 BLAKE2B 1e3285dadc3748934e801b8ac0316d3005fbe24c20c9ceb694e9fc316d820fdb89c659107b25ee474fd6ac50d661dd029af9ca5082016a3b0827dd640a54a707 SHA512 24ad0bbecee46ab6ff669d63d64096b37a0d010bb44978a1785eee2701a8b30a83eab229af97cbbb18bca55b5e89be9ba74fe126d1d430da1e1e909366dc5b90 +DIST mercury-srcdist-20.01.2.tar.gz 46789217 BLAKE2B bc9637c1b4afb81d4bf35cd94a1f1d87b17094d8a6cbb7e5c8b0ff9c99ce59178d9e32bae246dd041ad781fe5d04e68db8f5effbb6bfcc29b76a83aad91a5666 SHA512 0deed9c0a13ebf793fb80def3fe6d9ee0aa4f0f2974865364eff81bdcac1ec0c41aafbec3e0146c8bdcf3245789e1003b2e4f8e219b53bec71e90074867a834d DIST mercury-srcdist-20.01.tar.gz 47103868 BLAKE2B 68be786e925bdf94dcba6c6a2a746a384da345ee33250785d8d2b9281815694a4525cdd694c26f58051c097f2a897291e640e2139729ccede9bd2e472077d8c9 SHA512 90e36faa375603e596b2dd692363528120fda62ae6d2e2b119cf76de1656dae4028aff00858a4bff3fdfb9b2210ea17db0aa516ce4283604c46a5935dd2cd4b7 EBUILD mercury-14.01.1-r1.ebuild 5624 BLAKE2B 0ddb116dec074a53e316935279650cecae3990ec9cbdbfbc1e99e6c47d0fceb20bcbb685259a78e18a850fafe2e4d609072a5183a2ef9ef3a6d45ba9368dbdc7 SHA512 338dee876d50fee43085a203b6adafaeb0f921c855925bda05ba3b30f133ac8eab9dfd476793d63f99ef5f9e4cb40775c9255c835c38685dd13fa78b54b2690f EBUILD mercury-20.01.1.ebuild 4984 BLAKE2B 55587832b1021ed04397d28a254bc17ca6172b52ac2afa89979f99a65d90107b52ea3758303d26b224ccffda5e5a2be76655d5791f0d2fa6d3fcb69caf5ae01b SHA512 fd270ddc8913049f2bb8cf472c85fc5d4724a4d979399ed2919cc34760c61492ec46fe8c9abbe2b7b9f43c0ff7fc608bfcba744bbbd05a75e0d1aa4387ba6c91 +EBUILD mercury-20.01.2.ebuild 5073 BLAKE2B 669670dc48445434e48190c7f5414dd48132ce97080bb56c47f3669d92164ef005007fd07fb3335cb53a0044dd37423cbea4d42ed960792ff18ba96c8aba8378 SHA512 fd037eecd755cef8214d48cb3a7b40c6406ea4f12c15392f898270deb88909b2edcf24892106a7d960118b282d5bbe4b7a3eb0cad81a2907b6aea0fa5afb3335 EBUILD mercury-20.01.ebuild 5129 BLAKE2B 93b409d07e9a60705630c17100da0231b5aaa74089990b32d02dbbde77681c428242f096a39b90e2136aba6fb30310ced9e98aeaecc6d2dc553f427461dc27f5 SHA512 4355a4e2f2280c9196c4e1aedd804b94b50933da23a9337b948756a1a8c5f824320d837f5dd49a1e498e7b0d68e9786c00afcb3d5d90fba1975f5626d0787430 MISC metadata.xml 384 BLAKE2B eaed468c341970157e4e641d25d5d87e0851bdbd31ba9d6c1e428c9f0239ad98220395858d6291fabe41561fb2ecc5c894700a86b290fc3cab2eaeda2a9df372 SHA512 c90a7a81ab16bac0af4bb9dd3f47cfb3987e0c3aebe08bb7ac6125baf7c619269318bd2c7a45e4213184544d981c920cace23ccb61fbb60c0872db77a10e3ecf diff --git a/dev-lang/mercury/mercury-20.01.2.ebuild b/dev-lang/mercury/mercury-20.01.2.ebuild new file mode 100644 index 000000000000..b0c5ecffdb0f --- /dev/null +++ b/dev-lang/mercury/mercury-20.01.2.ebuild @@ -0,0 +1,202 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools elisp-common eutils flag-o-matic java-pkg-opt-2 multilib vcs-clean xdg-utils + +PATCHSET_VER="1" +MY_P=${PN}-srcdist-${PV} + +DESCRIPTION="Mercury is a modern general-purpose logic/functional programming language" +HOMEPAGE="https://www.mercurylang.org/index.html" +SRC_URI="https://dl.mercurylang.org/release-20.01/${MY_P}.tar.gz + https://dev.gentoo.org/~keri/distfiles/mercury/${P}-gentoo-patchset-${PATCHSET_VER}.tar.gz" + +LICENSE="GPL-2 LGPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +IUSE="debug doc emacs erlang examples java mono profile readline threads trail" + +DEPEND="net-libs/libnsl:0= + readline? ( sys-libs/readline:= ) + erlang? ( dev-lang/erlang ) + java? ( >=virtual/jdk-1.6:= ) + mono? ( dev-lang/mono ) + doc? ( sys-apps/texinfo )" + +RDEPEND="${DEPEND} + emacs? ( >=app-editors/emacs-23.1:* )" + +S="${WORKDIR}"/${MY_P} + +SITEFILE=50${PN}-gentoo.el + +src_prepare() { + if [[ -d "${WORKDIR}"/${PV} ]] ; then + eapply "${WORKDIR}"/${PV} + fi + eapply_user + + AT_M4DIR=m4 eautoreconf + + xdg_environment_reset +} + +src_configure() { + strip-flags + + local myconf + myconf="--libdir=/usr/$(get_libdir) \ + $(use_enable mono csharp-grade) \ + $(use_enable erlang erlang-grade) \ + $(use_enable java java-grade) \ + $(use_enable debug debug-grades) \ + $(use_enable profile prof-grades) \ + $(use_enable threads par-grades) \ + $(use_enable trail trail-grades) \ + $(use_with readline)" + + econf ${myconf} +} + +src_compile() { + # Prepare mmake flags + echo "EXTRA_CFLAGS = ${CFLAGS}" >> Mmake.params + echo "EXTRA_LDFLAGS = ${LDFLAGS}" >> Mmake.params + echo "EXTRA_LD_LIBFLAGS = ${LDFLAGS}" >> Mmake.params + echo "EXTRA_MLFLAGS = --no-strip" >> Mmake.params + + echo "EXTRA_LD_LIBFLAGS += -Wl,-soname=libgc.so" >> boehm_gc/Mmake.boehm_gc.params + echo "EXTRA_LD_LIBFLAGS += -Wl,-soname=libmer_rt.so" >> runtime/Mmake.runtime.params + echo "EXTRA_LD_LIBFLAGS += -Wl,-soname=libmer_std.so" >> library/Mmake.library.params + + # Build Mercury using bootstrap grade + emake \ + PARALLEL="'${MAKEOPTS}'" \ + TEXI2DVI="" PDFTEX="" + + # We can now patch .m Mercury compiler files since we + # have just built mercury_compiler. + if [[ -d "${WORKDIR}"/${PV}-mmc ]] ; then + eapply "${WORKDIR}"/${PV}-mmc + fi + + # Rebuild Mercury compiler using the just built mercury_compiler + emake \ + PARALLEL="'${MAKEOPTS}'" \ + MERCURY_COMPILER="${S}"/compiler/mercury_compile \ + TEXI2DVI="" PDFTEX="" + + # The default Mercury grade may not be the same as the bootstrap + # grade. Since src_test() is run before src_install() we compile + # the default grade now + emake \ + PARALLEL="'${MAKEOPTS}'" \ + MERCURY_COMPILER="${S}"/compiler/mercury_compile \ + TEXI2DVI="" PDFTEX="" \ + default_grade +} + +src_test() { + TEST_GRADE=$(scripts/ml --print-grade) + if [ -d "${S}"/install_grade_dir.${TEST_GRADE} ] ; then + TWS="${S}"/install_grade_dir.${TEST_GRADE} + cp runtime/mer_rt.init "${TWS}"/runtime/ + cp mdbcomp/mer_mdbcomp.init "${TWS}"/mdbcomp/ + cp browser/mer_browser.init "${TWS}"/browser/ + else + TWS="${S}" + fi + + cd "${S}"/tests || die + sed -e "s:@WORKSPACE@:${TWS}:" \ + < WS_FLAGS.ws \ + > WS_FLAGS \ + || die "sed WORKSPACE failed" + sed -e "s:@WORKSPACE@:${TWS}:" \ + < .mgnuc_copts.ws \ + > .mgnuc_copts \ + || die "sed WORKSPACE failed" + find . -mindepth 1 -type d -exec cp .mgnuc_opts {} \; + find . -mindepth 1 -type d -exec cp .mgnuc_copts {} \; + + # Mercury tests must be run in C locale since Mercury output is + # compared to hard-coded warnings/errors + LC_ALL="C" \ + PATH="${TWS}"/scripts:"${TWS}"/util:"${S}"/slice:"${PATH}" \ + TERM="" \ + WORKSPACE="${TWS}" \ + WORKSPACE_FLAGS=yes \ + MERCURY_COMPILER="${TWS}"/compiler/mercury_compile \ + MMAKE_DIR="${TWS}"/scripts \ + MERCURY_SUPPRESS_STACK_TRACE=yes \ + GRADE=${TEST_GRADE} \ + mmake || die "mmake test failed" +} + +src_install() { + emake \ + PARALLEL="'${MAKEOPTS}'" \ + MERCURY_COMPILER="${S}"/compiler/mercury_compile \ + TEXI2DVI="" PDFTEX="" \ + DESTDIR="${D}" \ + INSTALL_ELISP_DIR="${D}/${SITELISP}"/${PN} \ + install + + if use java; then + keepdir /usr/$(get_libdir)/mercury/modules/java + fi + + if use mono; then + keepdir /usr/$(get_libdir)/mercury/modules/csharp + fi + + if use emacs; then + elisp-site-file-install "${FILESDIR}/${SITEFILE}" \ + || die "elisp-site-file-install failed" + fi + + dodoc \ + BUGS HISTORY LIMITATIONS NEWS README README.Linux \ + README.Linux-Alpha README.Linux-m68k README.Linux-PPC \ + RELEASE_NOTES VERSION || die + + if use erlang; then + dodoc README.Erlang + fi + + if use java; then + dodoc README.Java + fi + + if use mono; then + dodoc README.CSharp + fi + + if use examples; then + docinto /usr/share/doc/${PF}/samples + dodoc samples/{*.m,README,Mmakefile} + dodoc -r samples/c_interface \ + samples/diff \ + samples/muz \ + samples/rot13 \ + samples/solutions \ + samples/solver_types + + if use java; then + dodoc -r samples/java_interface + fi + + ecvs_clean "${D}"/usr/share/doc/${PF}/samples + fi +} + +pkg_postinst() { + use emacs && elisp-site-regen +} + +pkg_postrm() { + use emacs && elisp-site-regen +} diff --git a/dev-lang/moarvm/Manifest b/dev-lang/moarvm/Manifest index 75aa6336291e..05f8888aca1c 100644 --- a/dev-lang/moarvm/Manifest +++ b/dev-lang/moarvm/Manifest @@ -1,13 +1,11 @@ AUX fix-quoting.patch 1089 BLAKE2B b42de8144ff2555dbb6986ab1d6b62ab6125e8f0fa8ca78ded2d8a0aa0d053ff4c52506cbd50f18a2e9cd8b7a8314f5a859ef55e7578d2ded4c80643cd4351ed SHA512 b7fe948f82c1c32b2b1c86a68409ae4d24927dc783476354b3ffa56e8448c5bb4d3727f1d8c37ed01685869d9636eb15776f92ae2f5f1206db98e954a948912f -DIST MoarVM-2019.03.tar.gz 5136086 BLAKE2B 695e5528934002b17f547a281482dc0015b3901b2c9626ce6fcf8aaa2df07c293f501871311ee3be47d009b972ca22a268bb34c859fde6a13566e8d03d1d3f04 SHA512 aa50dcf1499e83247c4c490384f80896160d08fb72a5a6da1f91748c6dc343fa30dcf35adca3e9e8329a2919026a4bdb299129865abf611ce49d73d05cce4285 -DIST MoarVM-2019.07.1.tar.gz 5189731 BLAKE2B 3dde716f6911fb8392346b34763439c37866da34361875e7bf1d9d15a4e2b1d9c1dbb668c42611172dcfd6c9060f9c95ec4bac0e5ac614af3038cc4752d9b6d9 SHA512 c8ffaf962191a60f643e6e1b765ec700664988ffc629765c273baf32d2748763480f9fd7a2d978b7f99d3ba4bf962775f4dca40053ace2ddd8cd0bffbd977d84 -DIST MoarVM-2019.07.tar.gz 5187102 BLAKE2B a9c56453edf5b5834d33187aea6eabacac9a721e7a27471a02b82585560ffbb5bb8807ae8c738f3138c5b0453217ad101aab23bef2c8b727cd2f8a56574abfd5 SHA512 ff5370cb2c7dc4357825f02387757e36a5e03b711021c896043ba5f68e573308146a0d94c7855ec9b4860906a3b0720d316d119ca5bbda908f17d3f4f14f4999 -DIST MoarVM-2019.11.tar.gz 5709053 BLAKE2B 5214a041d02fa9feebf50996460b4a73634bf69dc24edbda72d29fe3045504dde809143ba6edf57602a5207e45a02e9a69cfecd2dca0bb5922e5560dca4e5861 SHA512 d7d7d21ff0e3896b7cb869ea1298f9ff1b041b68062ac509d4571246f96985de0ad48d881f7c988e1ed470c4c5f859f36916bfd764cbc0e988c249682b0b8b41 DIST MoarVM-2020.05.tar.gz 5309065 BLAKE2B ed33f066cc16382218509dd9cf8f9f252c87a7d8bfeaf11be8ccbf4fe2337e1dd598d7f4368d4edc5fa1b7c704ee2b4dfec66ee8824465e6088ce0bdf7c8fac1 SHA512 10dd2bb8c629ac4d7804a8e64f8883617545930520c61ff34b62b29b81f827c425004bb07c8978df9620da446fa204ccb3b5c8889651e243a1fe4da28350ab66 -EBUILD moarvm-2019.03-r1.ebuild 1496 BLAKE2B 89daedf8f3bc91f658d82c536306de7368a79e08187bc3692873f5e77265308673882fede98c26ec2182028b512d1eeb914be5ee86ceff296135f7028854419f SHA512 a47ae1736b6d32e77b741a7de1294849f66ecfdcb286bd7d5ad235df08c916323d73bc97fd0d0909d43b38574c2dd378c99910330258c45903b9375589b8c19b -EBUILD moarvm-2019.07-r1.ebuild 1511 BLAKE2B 2b31769db78a71dd00ce52f1f2dceab57fb11e189733f7ac619bf5b30f003155fd547acb28c96959b8257424372949b712b3f56eb1e869dd875d58b03ed702c8 SHA512 ad8929015996b9b75e7de02e1544da1a1f09f1363aae925d0ccf54e3fe9c15c376e65554fb8dfbbbfa8a3174617885949c85fde3cab129ed238751d26f16acef -EBUILD moarvm-2019.07.1-r1.ebuild 1765 BLAKE2B c961aadfb1fc6bc4cf4c73821a86f65e7f3ec82025701541bc55dcbe9449c4e7e15eed7be28992b75fad058b65d936e1248a9668e1b0619e9dc53f9306db419b SHA512 3845ff95d15475502a5c9541463d767e1e00875d53589209bb02ae24e494d6ebdfed393080935d592275a8c73e73cd2f889381298b85c93abe08089e67a41b4b -EBUILD moarvm-2019.11.ebuild 1448 BLAKE2B 55c1b80c92869613e9569be3ea8ffd094bb4566cf03657a02998c9c31823a3dc21cfe13fab1da5c5fc49a2531c5254c5e48bfc54827d49c0daccf15f7cd8e9ba SHA512 f818e3705d05afcb5bcb69cbd75da25ba2b8b4fbe951bfc13b26386eca5a77f7147de33bbf036cd3a8c44dc983c7bbe94abfd1838be05385236eeec5f413c54a +DIST MoarVM-2020.06.tar.gz 5325582 BLAKE2B 3cef20e2cf8d35cf4e812c2838963938a059393eddf1b87d4f2a69750b5e3eae81db76c671d3fcc137f63acd0b94ff03a6c5c3c2a772d9d9409348cfb33fe235 SHA512 5dae0abb825d8ac1620a62da44de6a0a6ddbeed6862c728b895ad5922c0142fd305f5d63bef9726490d9bab0afa603e93b0a1cfd7e61f5778dedfca0f016664c +DIST MoarVM-2020.07.tar.gz 5329508 BLAKE2B a761234baf88bfb5d8bc87e621822cd4cc1c11c383d9a42785a33d6cc6aa2f039a7764923044c028677b75fd849fa785edb2b0b9bd4ba1bd5393dbe7269c6dc1 SHA512 7581dc0b028029f34fdb1035c1db75f9c13637f7ba5a0d85ca8478cc1844bb0f5852822a145df453b28037cb19972dc6112f32d9b443854952761223926f4042 +DIST MoarVM-2020.08.tar.gz 5333410 BLAKE2B 4590576148d26c96eda390c9b66966b10205616b1920d6a7e259fa055240a5627fceb00399942eee512278dfd23cec90c5a1e79ee3f94cdad89e526b83c2888f SHA512 610ac56df2cd0da7b284e967fb2f626fa10583f66ef06d8c4368048883bea0627b5029c56e64fd7281e6e70c3f63ac26dcfa463d2145be83433a8e76226fcb3b EBUILD moarvm-2020.05.ebuild 1448 BLAKE2B 55c1b80c92869613e9569be3ea8ffd094bb4566cf03657a02998c9c31823a3dc21cfe13fab1da5c5fc49a2531c5254c5e48bfc54827d49c0daccf15f7cd8e9ba SHA512 f818e3705d05afcb5bcb69cbd75da25ba2b8b4fbe951bfc13b26386eca5a77f7147de33bbf036cd3a8c44dc983c7bbe94abfd1838be05385236eeec5f413c54a +EBUILD moarvm-2020.06.ebuild 1479 BLAKE2B 0747e04c59b54236accef01241145daaf003eb635a1284c4388582e474a5ef115b7c41d3f4dac624270f76f652b0db9c42507f5518c93dcb30340ea00faa4248 SHA512 01b215366f478a759569b7bc020b68896fb0c575a464d933759a7a6851972647408872f241f4c120c21cdab28487798e9247d3c3d62ab1cf1ee409d51438a38c +EBUILD moarvm-2020.07.ebuild 1479 BLAKE2B 0747e04c59b54236accef01241145daaf003eb635a1284c4388582e474a5ef115b7c41d3f4dac624270f76f652b0db9c42507f5518c93dcb30340ea00faa4248 SHA512 01b215366f478a759569b7bc020b68896fb0c575a464d933759a7a6851972647408872f241f4c120c21cdab28487798e9247d3c3d62ab1cf1ee409d51438a38c +EBUILD moarvm-2020.08.ebuild 1479 BLAKE2B 0747e04c59b54236accef01241145daaf003eb635a1284c4388582e474a5ef115b7c41d3f4dac624270f76f652b0db9c42507f5518c93dcb30340ea00faa4248 SHA512 01b215366f478a759569b7bc020b68896fb0c575a464d933759a7a6851972647408872f241f4c120c21cdab28487798e9247d3c3d62ab1cf1ee409d51438a38c EBUILD moarvm-9999.ebuild 1765 BLAKE2B c961aadfb1fc6bc4cf4c73821a86f65e7f3ec82025701541bc55dcbe9449c4e7e15eed7be28992b75fad058b65d936e1248a9668e1b0619e9dc53f9306db419b SHA512 3845ff95d15475502a5c9541463d767e1e00875d53589209bb02ae24e494d6ebdfed393080935d592275a8c73e73cd2f889381298b85c93abe08089e67a41b4b MISC metadata.xml 920 BLAKE2B dc15290595649a4f4c514f26cd219c3d8a97bb589fedac8cca202b64abe49f6851fe50d24f95f82c0dd61d183ed1f4091a4fb0f500e8f89a9b91dd7e932cc1ff SHA512 9250682955318d688f59e27b740e1b04095a85f036578d8fe2a2eeb31e159e34845a191734ba4997034dca80a32e29c8f4a0658b9a76ea78ff5fb4479124696b diff --git a/dev-lang/moarvm/moarvm-2019.07.1-r1.ebuild b/dev-lang/moarvm/moarvm-2019.07.1-r1.ebuild deleted file mode 100644 index bd277f947edc..000000000000 --- a/dev-lang/moarvm/moarvm-2019.07.1-r1.ebuild +++ /dev/null @@ -1,72 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit flag-o-matic - -MY_PN="MoarVM" -if [[ ${PV} == "9999" ]]; then - EGIT_REPO_URI="https://github.com/${MY_PN}/${MY_PN}.git" - EGIT_SUBMODULES=( '*' '-3rdparty/libatomicops' '-3rdparty/libuv' ) - inherit git-r3 - KEYWORDS="" - S="${WORKDIR}/${P}" -else - SRC_URI="http://moarvm.org/releases/${MY_PN}-${PV}.tar.gz" - KEYWORDS="~amd64 ~x86" - S="${WORKDIR}/${MY_PN}-${PV}" -fi - -DESCRIPTION="A 6model-based VM for NQP and Rakudo Perl 6" -HOMEPAGE="http://moarvm.org" -LICENSE="Artistic-2" -SLOT="0" -IUSE="asan clang debug doc static-libs optimize ubsan" - -RDEPEND="dev-libs/libatomic_ops - >=dev-libs/libuv-1.26 - dev-lang/lua:= - virtual/libffi" -DEPEND="${RDEPEND}" -BDEPEND="${RDEPEND} - clang? ( >=sys-devel/clang-3.1 ) - dev-lang/perl" - -DOCS=( CREDITS README.markdown ) - -# Tests are conducted via nqp -RESTRICT=test - -src_prepare() { - if [[ "${PV}" == "9999" ]]; then - # Stupid upstream try to auto-fetch this themselves - git rm -f 3rdparty/{libatomicops,libuv} || - die "Can't strip unused submodules" - fi - default -} - -src_configure() { - MAKEOPTS+=" NOISY=1" - use doc && DOCS+=( docs/* ) - local prefix="${EPREFIX}/usr" - local libdir="${EPREFIX}/usr/$(get_libdir)" - einfo "--prefix '${prefix}'" - einfo "--libdir '${libdir}'" - local myconfigargs=( - "--prefix" "${prefix}" - "--has-libuv" - "--has-libatomic_ops" - "--has-libffi" - "--libdir" "${libdir}" - "--compiler" "$(usex clang clang gcc)" - "$(usex asan --asan)" - "$(usex debug --debug --no-debug)" - "$(usex optimize --optimize= --no-optimize)" - "$(usex static-libs --static)" - "$(usex ubsan --ubsan)" - ) - - perl Configure.pl "${myconfigargs[@]}" moarshared || die -} diff --git a/dev-lang/moarvm/moarvm-2019.11.ebuild b/dev-lang/moarvm/moarvm-2020.06.ebuild index 533f762ed652..96e569caebe5 100644 --- a/dev-lang/moarvm/moarvm-2019.11.ebuild +++ b/dev-lang/moarvm/moarvm-2020.06.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 inherit flag-o-matic @@ -22,13 +22,12 @@ HOMEPAGE="http://moarvm.org" LICENSE="Artistic-2" SLOT="0" -#USE=optimize triggers makefile bug -IUSE="asan clang debug doc +jit static-libs ubsan" +IUSE="asan clang debug doc +jit optimize static-libs ubsan" RDEPEND="dev-libs/libatomic_ops >=dev-libs/libuv-1.26 dev-lang/lua:= - virtual/libffi" + dev-libs/libffi" DEPEND="${RDEPEND} clang? ( >=sys-devel/clang-3.1 ) dev-lang/perl" @@ -54,6 +53,7 @@ src_configure() { "--compiler" "$(usex clang clang gcc)" "$(usex asan --asan)" "$(usex debug --debug --no-debug)" + "$(usex optimize --optimize= --no-optimize)" "$(usex static-libs --static)" "$(usex ubsan --ubsan)" ) diff --git a/dev-lang/moarvm/moarvm-2019.07-r1.ebuild b/dev-lang/moarvm/moarvm-2020.07.ebuild index 0bf2511cf866..96e569caebe5 100644 --- a/dev-lang/moarvm/moarvm-2019.07-r1.ebuild +++ b/dev-lang/moarvm/moarvm-2020.07.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 inherit flag-o-matic @@ -22,13 +22,12 @@ HOMEPAGE="http://moarvm.org" LICENSE="Artistic-2" SLOT="0" -#USE=optimize triggers makefile bug -IUSE="asan clang debug doc +jit static-libs ubsan" +IUSE="asan clang debug doc +jit optimize static-libs ubsan" RDEPEND="dev-libs/libatomic_ops >=dev-libs/libuv-1.26 dev-lang/lua:= - virtual/libffi" + dev-libs/libffi" DEPEND="${RDEPEND} clang? ( >=sys-devel/clang-3.1 ) dev-lang/perl" @@ -38,9 +37,6 @@ DOCS=( CREDITS README.markdown ) # Tests are conducted via nqp RESTRICT=test -# known configure bug -PATCHES="${FILESDIR}/fix-quoting.patch" - src_configure() { MAKEOPTS+=" NOISY=1" use doc && DOCS+=( docs/* ) @@ -57,6 +53,7 @@ src_configure() { "--compiler" "$(usex clang clang gcc)" "$(usex asan --asan)" "$(usex debug --debug --no-debug)" + "$(usex optimize --optimize= --no-optimize)" "$(usex static-libs --static)" "$(usex ubsan --ubsan)" ) diff --git a/dev-lang/moarvm/moarvm-2019.03-r1.ebuild b/dev-lang/moarvm/moarvm-2020.08.ebuild index d44bdd955d40..96e569caebe5 100644 --- a/dev-lang/moarvm/moarvm-2019.03-r1.ebuild +++ b/dev-lang/moarvm/moarvm-2020.08.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 inherit flag-o-matic @@ -21,12 +21,13 @@ DESCRIPTION="A 6model-based VM for NQP and Rakudo Perl 6" HOMEPAGE="http://moarvm.org" LICENSE="Artistic-2" SLOT="0" -IUSE="asan clang debug doc +jit static-libs optimize ubsan" + +IUSE="asan clang debug doc +jit optimize static-libs ubsan" RDEPEND="dev-libs/libatomic_ops >=dev-libs/libuv-1.26 dev-lang/lua:= - virtual/libffi" + dev-libs/libffi" DEPEND="${RDEPEND} clang? ( >=sys-devel/clang-3.1 ) dev-lang/perl" @@ -44,19 +45,18 @@ src_configure() { einfo "--prefix '${prefix}'" einfo "--libdir '${libdir}'" local myconfigargs=( - "--prefix=${prefix}" + "--prefix" "${prefix}" "--has-libuv" "--has-libatomic_ops" "--has-libffi" - "--libdir=${libdir}" - "--compiler=$(usex clang clang gcc)" + "--libdir" "${libdir}" + "--compiler" "$(usex clang clang gcc)" "$(usex asan --asan)" "$(usex debug --debug --no-debug)" "$(usex optimize --optimize= --no-optimize)" "$(usex static-libs --static)" "$(usex ubsan --ubsan)" ) - use optimize && filter-flags '-O*' - perl Configure.pl "${myconfigargs[@]}" || die + perl Configure.pl "${myconfigargs[@]}" moarshared || die } diff --git a/dev-lang/mono/Manifest b/dev-lang/mono/Manifest index f31037c59a65..799225ba3d16 100644 --- a/dev-lang/mono/Manifest +++ b/dev-lang/mono/Manifest @@ -1,5 +1,7 @@ AUX mono-5.0.1.1-x86_32.patch 751 BLAKE2B 1a19219c5667715a9afb7dc74ba9714893eea684a0c48945bcb70bdd83e34138a77ca029bcc8341b58af93617b4eab3251885affb3d129e8bf072a0279b8d29b SHA512 8c3d3a65f9d9a9a51c4a01dfd14e32e01bcc7cb98bd4f6a196a2a166968521ff859ccb1efd689c612c8bab5d6a384b148039de5033235a2c0552bc455dd636b7 AUX mono-5.12-try-catch.patch 1267 BLAKE2B e33836d53fd4c9a4e64614d3f309058b2009487a853aee48fae99cd0326095b6dc26e7fbdd178e25f9fc3901f74f937ce5e9d3bb4322ca50e139d13f66c209a5 SHA512 3a82d4bed31b212e23fe24647fc5b9c4788be5f4966377a3bef9f92a51d16181e77e19ca1ec4736792da6a18206986bbb54d967499e2ca7e224201cf811f91b5 +DIST mono-6.10.0.104.tar.xz 292616252 BLAKE2B 705fb45ab280eae0e66b4c0fa0fc0e3ee87ed47164dd5bfa2f11115c30fb7b788bd9b25bfe7d820db88178bf0863b1cc984def94fe291c9924b311454735deed SHA512 73b853e9fc9af2e1bf5e45f7accb8893dd7e48f9723f74b03d99ea11cf565e2c5bb2d6ae4c81c7e7be0cdfa489016da909ed7b12808c8f84d9d25e33e1cb9874 DIST mono-6.6.0.161.tar.xz 241179396 BLAKE2B 88cb0599cd5698500431dc8a78fa3b44a148bdc11d3067e950f0019c6bbeff9ebf2142e90f3b1023721c982fc4a59605ee969d84ee2137f968dee66b1ea0b55c SHA512 0b0c72daef9e1c10c0d566292997d4a923766390793ec1196a063b885e853b47a12503238632879cf7397f03b34909137e24c53db9300a4f209164e973284186 +EBUILD mono-6.10.0.104.ebuild 2874 BLAKE2B 701dc061c5af75a66c86edb142ed59cd272f13a30d875e8361ddbc691af6446cff272db2fe5128ae26e3c370d26dc38d40036d2a1faa47b7e4aad0094d9b2e7b SHA512 de2f1a19f05758b948ad601d3bf99992fd00a99250bcb7a68b272318541095c1cf133a318e440265a337bbf51a0463e8c4d02388b9f77244138204a1ef75221d EBUILD mono-6.6.0.161.ebuild 2892 BLAKE2B 7cd2f57436406f9ee0b8aca2c691513f9d62a0f947e9bafed2a87e4a13999b3a6ff27aef1f8063a6a9a567b4fde7564a548b9ce108280f5463f19dfe656a4ba3 SHA512 05ca5fd88436acf1b4b52340fdde2ae10ebedd7e730f308b33d253cc659190cea64feb066cbd9fc8cc31f24c67f019e1a8bae6957b29e8f20354fe244178ec4f MISC metadata.xml 507 BLAKE2B 91655de22fc1ff309c36ecef9d77aa8cada0b8f13ae30677665de837e99b7b43622a1dc0c677b0f5455c06b8e8a295c3c4f39753f66e749163a4f002ee481016 SHA512 e072a1abbf66276b0d139c3e918593010312c2059a0c6feba7b324689cdf90efe28bef0286ad9888125acfdd1fed2dee3e05e79a0aeb7f9ec1809bd128cf8a20 diff --git a/dev-lang/mono/mono-6.10.0.104.ebuild b/dev-lang/mono/mono-6.10.0.104.ebuild new file mode 100644 index 000000000000..817de94a28c0 --- /dev/null +++ b/dev-lang/mono/mono-6.10.0.104.ebuild @@ -0,0 +1,105 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux" + +SLOT="0" + +IUSE="nls minimal pax_kernel xen doc" + +inherit autotools eutils linux-info mono-env flag-o-matic pax-utils multilib-minimal + +DESCRIPTION="Mono runtime and class libraries, a C# compiler/interpreter" +HOMEPAGE="https://mono-project.com" +LICENSE="MIT LGPL-2.1 GPL-2 BSD-4 NPL-1.1 Ms-PL GPL-2-with-linking-exception IDPL" + +SRC_URI="https://download.mono-project.com/sources/mono/${P}.tar.xz" + +#Note: mono works incorrect with older versions of libgdiplus +#details on dotnet overlay issue: https://github.com/gentoo/dotnet/issues/429 +COMMONDEPEND=" + !minimal? ( >=dev-dotnet/libgdiplus-6.0.2 ) + ia64? ( sys-libs/libunwind ) + nls? ( sys-devel/gettext ) +" +RDEPEND="${COMMONDEPEND}" +DEPEND="${COMMONDEPEND} + sys-devel/bc + virtual/yacc + pax_kernel? ( sys-apps/elfix ) + dev-util/cmake +" + +PATCHES=( + "${FILESDIR}"/mono-5.12-try-catch.patch +) + +pkg_pretend() { + linux-info_pkg_setup + if use kernel_linux; then + if linux_config_exists; then + linux_chkconfig_builtin SYSVIPC || die "SYSVIPC not enabled in the kernel" + else + # https://github.com/gentoo/gentoo/blob/f200e625bda8de696a28338318c9005b69e34710/eclass/linux-info.eclass#L686 + ewarn "kernel config not found" + ewarn "If CONFIG_SYSVIPC is not set in your kernel .config, mono will hang while compiling." + ewarn "See https://bugs.gentoo.org/261869 for more info." + fi + fi +} + +pkg_setup() { + mono-env_pkg_setup +} + +src_prepare() { + # we need to sed in the paxctl-ng -mr in the runtime/mono-wrapper.in so it don't + # get killed in the build proces when MPROTECT is enable. #286280 + # RANDMMAP kill the build proces to #347365 + # use paxmark.sh to get PT/XT logic #532244 + if use pax_kernel ; then + ewarn "We are disabling MPROTECT on the mono binary." + + # issue 9 : https://github.com/Heather/gentoo-dotnet/issues/9 + sed '/exec "/ i\paxmark.sh -mr "$r/@mono_runtime@"' -i "${S}"/runtime/mono-wrapper.in || die "Failed to sed mono-wrapper.in" + fi + + # mono build system can fail otherwise + strip-flags + + default + + # PATCHES contains configure.ac patch + eautoreconf + multilib_copy_sources +} + +multilib_src_configure() { + local myeconfargs=( + $(use_with xen xen_opt) + --without-ikvm-native + --disable-dtrace + --enable-system-aot + $(use_with doc mcs-docs) + $(use_enable nls) + ) + + econf "${myeconfargs[@]}" +} + +multilib_src_test() { + cd mcs/tests || die + emake check +} + +multilib_src_install() { + default_src_install + + # Remove files not respecting LDFLAGS and that we are not supposed to provide, see Fedora + # mono.spec and http://www.mail-archive.com/mono-devel-list@lists.ximian.com/msg24870.html + # for reference. + rm -f "${ED}"/usr/lib/mono/{2.0,4.5}/mscorlib.dll.so || die + rm -f "${ED}"/usr/lib/mono/{2.0,4.5}/mcs.exe.so || die +} diff --git a/dev-lang/mozart-stdlib/Manifest b/dev-lang/mozart-stdlib/Manifest index 18d08c7483da..252abc0eaf97 100644 --- a/dev-lang/mozart-stdlib/Manifest +++ b/dev-lang/mozart-stdlib/Manifest @@ -4,5 +4,5 @@ DIST mozart-1.4.0.20080704-std.tar.gz 1305359 BLAKE2B 1dc665a801f2ab1a87b6256279 DIST mozart-stdlib-2.0.1-gentoo-patchset-0.tar.gz 1237 BLAKE2B c18fbaba2860faed1ab1b53cc9ead90af338da8fc673c08e167463c784e1b31ec9b6edadb1a55cf70d25f545e88fa226ccec313df09f1ecaa16eb619f9242b8d SHA512 84f2c44124901f63ee11706cdd573b2f6a4eb8427d12560be8f0772bb872ca9f5a14ad3f047ce64da8060188f21ccf774b1866ecc439381294822c6d9a41f2eb DIST mozart2-stdlib-2.0.1.tar.gz 1315353 BLAKE2B b2bd25634dc9194af6dc5e23da369515b3a55e0b23bf6d1bf312d0b8eb9f92eee732ea9cf14ebd659e0e296f77c1b1cffa13a74885279bfc5fc0be5d583fd8c3 SHA512 8bb481b00cd9b62aef348dba9e905b3210d1a2fd219cf561d7d243dc0ead135d3ca53378a5945deedfc67ae076ca72008dd098f4a326f00992764123b682f79c EBUILD mozart-stdlib-1.4.0-r2.ebuild 800 BLAKE2B 0a6015a5a715b5c331dd8c5b6dddb3f294f687645cf8cdf2ffb490aceb476ee11e1e3806b8a7019f99c6fb76e21eb52324a0567491174a864cc529d89feb3855 SHA512 baaa5bf0c1b6eda92a4a529a133cd50a73fe5d867d5914ae42b378a8c6a5ff7266d22f334dfafeae183f50e89363560e923d201c7516aad42c2fc48962d2bd08 -EBUILD mozart-stdlib-2.0.1.ebuild 741 BLAKE2B 1df920f92ab1493819ac32d678fa8a725489da5a7d5b399c1b4c8704ad0a4c3f48616f67e59f06dec7089d2043bbe53cd7ac8fc52c0158005610daba5183bfca SHA512 7040e8cc51583437782dd87d4e8c52bcb49354947f0a1a91d8d7884066108195859a873ca3305b5ec0c40680349d01b2df27b04e17098611438edf24381abe94 +EBUILD mozart-stdlib-2.0.1.ebuild 739 BLAKE2B 7e73317154eecb560728711fdbeba17ac936f20f87ba62cdd00ec04ca16fdb1123dc3b9a458bd7698ea3f9ce59db24b70a10bbfd40d8011c7627ceedc20e26ee SHA512 89e5763fd96dc6b09ba06f8c22dc834a3edc5cec2984f0a18e412c451e39e3052a568c31546968a25d3050a3df5a7cae980fd08d9794d428379c114b6b9a0b6e MISC metadata.xml 240 BLAKE2B 6b5ab0d76c5748af7bd1800d11864869d7365b8d53e2fd2ec66c1092dd1fdac8461b20c029ffe835357542ca69f789ce867988d64c43019e02fe9e3691f0f9bd SHA512 7cd99ce62ca4f9307fa7dfdbfd0ff9d8ff7485c58cd08cd684065aca4b570f8655587425f6a240453a9e86452de41f26f8b82aa81c023764d0beb47daa1b15d3 diff --git a/dev-lang/mozart-stdlib/mozart-stdlib-2.0.1.ebuild b/dev-lang/mozart-stdlib/mozart-stdlib-2.0.1.ebuild index c599cda1e3a0..024329f0def8 100644 --- a/dev-lang/mozart-stdlib/mozart-stdlib-2.0.1.ebuild +++ b/dev-lang/mozart-stdlib/mozart-stdlib-2.0.1.ebuild @@ -16,7 +16,7 @@ SRC_URI="https://dev.gentoo.org/~keri/distfiles/mozart-stdlib/${MY_PN}-${PV}.tar LICENSE="Mozart" SLOT="0" -KEYWORDS="~amd64 ~x86" +KEYWORDS="amd64 x86" IUSE="" RDEPEND=">=dev-lang/mozart-2.0.1" diff --git a/dev-lang/mozart/Manifest b/dev-lang/mozart/Manifest index 06999d145b32..8d84f7c970ae 100644 --- a/dev-lang/mozart/Manifest +++ b/dev-lang/mozart/Manifest @@ -7,5 +7,5 @@ DIST mozart-2.0.1-gentoo-patchset-1.tar.gz 39069 BLAKE2B 7490d13665314b3a998fb21 DIST mozart-2.0.1.tar.gz 2281261 BLAKE2B 7f071e9ec130a0b482b299f4dac15d64f632702d6ecf55b7af0993087064e533b4de80f77520a725f69f68648a9ce763c8c8826bb24e52af49eda8c3ccfba0b5 SHA512 a72a6fa68296d06af72327fd11310b3be152e5ad9a56f1fc4200ac7b89cd177e9a23a38c6721e1885d4f2ed0870065e919fb9fe3c9a2833fcd8e4ac0fd43aeb4 EBUILD mozart-1.4.0-r3.ebuild 2907 BLAKE2B 51d3f72aa2e7fa96029a9ff8abb21f52153dbaf044a6a9c84ea6c9ab6431447e5b2c469166bede84c5f6fb9e2a3b62a059424d569f455eb9723db7cff1783a7f SHA512 f860e6013bb7e8efeecb8ec020f7884718e082ea7917b70e9c9343961ae0f72d188b256ce647897d7e2f284dc6ac3cb349ace59eaf00fd69d775f43fae11b11f EBUILD mozart-1.4.0-r4.ebuild 3080 BLAKE2B 1363240805a389a5e111d30a5e38287dff565d1716b39b10f7a80ac73aa5f0c6f3e4c8fb2ab8ed93dc7512c8e18ed045421db1a750105d4098761425606769ea SHA512 e4347d58bf3233a4db2aebb7c94d71ff3a1e5408179e72975a84e8f31a0a53b59b75ebffa0a3c510a6fb80d6b3995095abdd07b955cc259047bdb71b1a76b029 -EBUILD mozart-2.0.1.ebuild 1798 BLAKE2B d1315b03d485433b8c769150fbef0cd080d8f700dc2cc46c612a0801e17593f56e606694fbf97650ff937ce37dc025b4e39534e4abc8a9db2da4af106d0a0caf SHA512 2ded16b20db0f87504b4fc850f3c03c3be569d18e5f928603d2800042193924fd6e69d156838e038167e20ba1a1cc914dd48e66d8a1b51fa473a0249b7abea36 +EBUILD mozart-2.0.1.ebuild 1796 BLAKE2B 0b0e456f623a221e77364b2b1de40d42d020c705a7adeb44615d723d5dcf35c5d1df25645c06d3e303e9ce4217d9debe109b5ebe75783c61d394f5c3c52fea5b SHA512 1d553df0698717a4b7e78c24c161118f8702b041068ce45a9a3d17bf8ad56e21896a6b1af12ecaab68666cc345e90c6c885fc62cf8f5318ef9b1b5fe861e3764 MISC metadata.xml 248 BLAKE2B 15dcca8e423036aaf3d73f9557507d39f7a22a6fa36d83405d8180df441adc50b9d61f8dd720a9d0045f5b3e6ebc9785fcf8f1340c253b2d277404672d395c1b SHA512 b296da55efb17a1040203bc1f5f3bfa8160711fdb72f0543739e6efe48b75427c082eb6c405d99b3256e8d536d3d29f71fdd0fd8d281cb9a9967060ea467a034 diff --git a/dev-lang/mozart/mozart-2.0.1.ebuild b/dev-lang/mozart/mozart-2.0.1.ebuild index b44def58b107..09d87b133828 100644 --- a/dev-lang/mozart/mozart-2.0.1.ebuild +++ b/dev-lang/mozart/mozart-2.0.1.ebuild @@ -14,7 +14,7 @@ SRC_URI="https://github.com/mozart/mozart2/archive/v${PV}.tar.gz -> ${P}.tar.gz LICENSE="BSD-2" SLOT="0" -KEYWORDS="~amd64 ~x86" +KEYWORDS="amd64 x86" IUSE="emacs test" RESTRICT="!test? ( test )" diff --git a/dev-lang/mujs/Manifest b/dev-lang/mujs/Manifest index 0d3297529172..9680c268cc8d 100644 --- a/dev-lang/mujs/Manifest +++ b/dev-lang/mujs/Manifest @@ -2,5 +2,5 @@ AUX mujs-1.0.5-flags.patch 839 BLAKE2B 843d1bf60167dfb91a5736ee936098c8f6b716f7a DIST mujs-1.0.6.tar.gz 121385 BLAKE2B b74da9cc9df6c51d81fe4b6170fddd9bfd3e37cc1c48509ddbcc9b657feb7169cfa98427770a118fb9c0923e70320668198739ea111cbd5d1c2303b2ada7093d SHA512 c3062348dcc79b8ea3726fc528b3ba765d3462232059617b9ab221ba47fa904cc81a305a6199a9a2cea24a2d891ca63d475b4884cd4e53fa715b3a55f51ca4d9 DIST mujs-1.0.7.tar.xz 93928 BLAKE2B 3c29ad3c23b75ee310824a36c0b08ede07b4ebaebff78558d07bc0eda55d6a994551502089cebd5b53ae24364ec1170e0865b7f1560d909dd15a18040666fea2 SHA512 30cc06ce4a608e091d46ba903ffc2eda29972cf583eb077d7824627fa20423c4721a406bf4271ebd5e5cade74f34e19acc9cffbc6d4d44314085a5525e91564f EBUILD mujs-1.0.6.ebuild 1306 BLAKE2B 3b8443a25740336511efe985d48079fccb76a8c8c5e9bf69ca307c0393923423339a673eab22310cec31739e88bf62799126a17f4b6fa6e52de111978731a0dd SHA512 cbd0bfdccee68ea8d01c5438fc6f27169f3afade7f5fb809c117b4d9fe8fcc3dff98473480983c17fc7ca6ba6969e474e6ddc021ab966eb5895fc740ccddb537 -EBUILD mujs-1.0.7.ebuild 1286 BLAKE2B 05622422cd99265401c1e125524aaaf371fbb995042d2eadb27126db935fcd5a4150ad0c21bc825accf1eb711d0f2a7ee95a1065ef1fea8c871fd107bb597726 SHA512 0c2ae5eed5cf070094a80de3912e44d8df563caeb93d720ad3bb219d0029d1ae4d50ba6ec353afe0042d2ba2d3cca56cf0f6b247e4f319888d65a38aefc1c303 +EBUILD mujs-1.0.7.ebuild 1285 BLAKE2B 8cce834efd4ac60fe9faa94c68f9c97600d510cc5bdc39b2235b6aecf7327ed824858e4558f2da888b3e6b70925fe30dd36457f4ca0ad7e2d9bdf1ef1fa476b9 SHA512 ae55f40c5cc09c854bd072192fa35b88013ed8841fd15e64e613544c0118bd01f64f2a36e28c04365e5961c727d725070e13b60318b43bea290f5be028e36388 MISC metadata.xml 475 BLAKE2B c27925d0ece3e21984317e079213d568ed5dc278ed8855dc169bfb2e065c29e9845a2d6de4d8ee85a5c1b1a9fc47685318a8e13ec0c5665d63f5ebb9983d1249 SHA512 e73d572d699516550dcf6e4c3feaea5ad5eaeeb724dba92e5b58596cfda6697ebc1de9f04646aa0a1ad4177c1306106cb45b63d3c1797f57d08b7aca700099ae diff --git a/dev-lang/mujs/mujs-1.0.7.ebuild b/dev-lang/mujs/mujs-1.0.7.ebuild index e6ca251d080e..7c1f534b7df7 100644 --- a/dev-lang/mujs/mujs-1.0.7.ebuild +++ b/dev-lang/mujs/mujs-1.0.7.ebuild @@ -15,7 +15,7 @@ SRC_URI="https://mujs.com/downloads/${P}.tar.xz" LICENSE="ISC" # subslot matches SONAME SLOT="0/${PV}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos" +KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos" IUSE="static-libs" RDEPEND="sys-libs/readline:0=" diff --git a/dev-lang/nasm/Manifest b/dev-lang/nasm/Manifest index c128a06b03c7..ecbdfc99163a 100644 --- a/dev-lang/nasm/Manifest +++ b/dev-lang/nasm/Manifest @@ -1,11 +1,9 @@ AUX nasm-2.13.03-bsd-cp-doc.patch 357 BLAKE2B 2611aa3e7f817530c8012f1849d5d80f47105a2e35950795826b3b9d128493ab7e8c1da106b9d22e24a025f8bf24f142cad385c5fca13e09423168bc2fc69f65 SHA512 6562f98e08953b5ac667df4f89f401cc520cf24dfaf112121ca0f7a039b96a328316afd62d118ae98ec9d2c1c3f2c1c9b88d2d66f19197637b7b785a48964f9c AUX nasm-2.15-bsd-cp-doc.patch 278 BLAKE2B eb2d6fffb03da68a43df8db6cbadeb72753f0474f91011038b6ec0b3a449fbd0e3cde59abfb1b22fa0c991629960f456815b1c86ec55292f54a879d8a0a079f1 SHA512 ba691e4f0fd3b676280de5b79e6872f7efe034da28fc66e247c3f757761e2191c54f585ca724747812fa55afb4b9d76366f50659702561c7eb69483de265b3e5 DIST nasm-2.14.02.tar.xz 827620 BLAKE2B deb1f3c806ffbe48eefe4163271c68f02a782f75f21980331cb03e64de20da61c118621536c1c869c1629e558cab45ce98fed8443d29c1126fb4255cd6a36ce4 SHA512 c7a228095f37321d57f2813d04f58ee66949e8f81fc49ef6c4ecd391301e308217583ce1a265d4fe8c13d54b5b9c72aeb132caa3caee36e31b6555fbfff34c81 -DIST nasm-2.15.01.tar.xz 975376 BLAKE2B 86cd93c4b9c8f96e0d82d525f558e5240c2152c523d610078918eff176327736084718655cc97fb84cb762f21e6d0598b459243f22d76e006a8f0f58e02699ed SHA512 0eaac219d33243e0f35daea5222432226a27cb119e44e5c666773cd472fd032a1b1deb0b5eb950e5470ebf604ce7d31482d2dcb44ce5627465d006b7071a6153 -DIST nasm-2.15.02.tar.xz 978012 BLAKE2B e325ef3b59582b1e3bd6503ec8c5b8a7abf92c98a0234451a3695ecd3102674a34d7cd260a50278b8d98f4663651de058e858e58e6dfda8ae33d1cdb8bb2fe3f SHA512 7375f970ca0c6c31fe2cb5c8c2b5a0f854eaff374b1e7bc9e09546246a84fe73a2ba6073e63d9287444cf17c9e2d342c3ff73ca961c2c0e3e2a9c3aba77114c7 -DIST nasm-2.15.tar.xz 975180 BLAKE2B 86fe345ddcc1817471e07fe17ba9009afa02fda152301e3d1cedff624cbd6ebb0e016a2fda339bd53f30fb3d60ae19f806d21c9dbe433ebb7d0e9a74d9db1576 SHA512 c88ff62d08aac86c4ce994bb83e80f1644e0433b01c40cebf183281d31bb4c79471f78e3beab6e7cafb28b3e92298aef89d75672444ea5e8d65c3b019e219583 -EBUILD nasm-2.14.02.ebuild 1047 BLAKE2B d739f62a39b65ba506c720f1595e84b65ef7e211ec65088ec69d614d25d733237b7845e27b44d7f6f3aff481314ce723498f05c427d65ac6edfd245a24e28ed7 SHA512 cd4140764c9c6f415d4ada92e6916b1b0100c0d260734da90524fecd4606771c1421074c2771b24c356dbcd3900aaca24366156efde71cca55bc12dab8d3a874 -EBUILD nasm-2.15.01.ebuild 1003 BLAKE2B 0683358ff8c4649306b4569b5e5cc24fb6ed8562a50b45cf2cbc1b126ffef80d184613c936744584351f7bc1c616be37e52024f4b71494efbbb4a90c2ccf9cee SHA512 ce0394577cf05936a80c7beb21f6524d7ec06649530206cb0371a5145384f9be3ee964f9a49e6be312c363bffc015c82e0c21cb8a550ef8e1b03b71e3a10ee1c -EBUILD nasm-2.15.02.ebuild 1003 BLAKE2B 0683358ff8c4649306b4569b5e5cc24fb6ed8562a50b45cf2cbc1b126ffef80d184613c936744584351f7bc1c616be37e52024f4b71494efbbb4a90c2ccf9cee SHA512 ce0394577cf05936a80c7beb21f6524d7ec06649530206cb0371a5145384f9be3ee964f9a49e6be312c363bffc015c82e0c21cb8a550ef8e1b03b71e3a10ee1c -EBUILD nasm-2.15.ebuild 1003 BLAKE2B 0683358ff8c4649306b4569b5e5cc24fb6ed8562a50b45cf2cbc1b126ffef80d184613c936744584351f7bc1c616be37e52024f4b71494efbbb4a90c2ccf9cee SHA512 ce0394577cf05936a80c7beb21f6524d7ec06649530206cb0371a5145384f9be3ee964f9a49e6be312c363bffc015c82e0c21cb8a550ef8e1b03b71e3a10ee1c +DIST nasm-2.15.03.tar.xz 984060 BLAKE2B f6d6e7618e23d1b6ab89620ed37b3539e18dc5d4c800796afea0242250e9148eb7a59cbc9a9633a971fe4d000373b9f362c2be2bd7b08fc69a61dd7e31368298 SHA512 be98e8e0a3b5f5296bc941a7bbcbf44c4084c65d11aed60d17a803b9647d59bd14ec06e780ac22c4bbe8869625eb8e6139d18a88e25310edfce0fe0fc0172950 +DIST nasm-2.15.04.tar.xz 988252 BLAKE2B 57d619e1374cb76b1112b40d9a5bb97eb38a0d233d4ebdd9dab50ae38bc9bf7c2d254df0f48dace7ad418e38e50b621626e5374d06ce71dad23fdcb8934adef7 SHA512 96d3131a422282f78e5326314570826d312bbab3c4ce3fdbad36578daf5963cc9a41672b4596d37ecdc002877b720bff44e2ce5b83f34b7a797f0b9ca5ca7c3c +EBUILD nasm-2.14.02.ebuild 1024 BLAKE2B 80fcf68592887b0de13f2628c81072850c2a2ee2b1824bed45702cdd9cca5b3c00d6003a776a67d1f3f71aed7c774bd8582c80a639b6e7c54448458f4df7a5c9 SHA512 44c8dd94ed82be891a56fece93c213fc1d3eb80c4aaf7b1e5f359c9c26ea3367ba88c2f3e31ec0cf1b311376ac3ce80d2fbf455700cc8b9d2cffeccd113576f0 +EBUILD nasm-2.15.03.ebuild 980 BLAKE2B aa3a7017c0fcad14c925471f9d975eb657116ca5a778b29dfb66be5929cfd27aef8e09180f57de27299a5d41dabed5495e7ebcbaba03b76822ebbd5a2d21360f SHA512 89f491280ca12b996a1ad2e9c23928ae72d8095ef567c8da37c25bed48507d70f73e8f124f3ed9d12ddd2955bb44aebe684f9f7b1a78b75fdb6be2fc76728819 +EBUILD nasm-2.15.04.ebuild 980 BLAKE2B aa3a7017c0fcad14c925471f9d975eb657116ca5a778b29dfb66be5929cfd27aef8e09180f57de27299a5d41dabed5495e7ebcbaba03b76822ebbd5a2d21360f SHA512 89f491280ca12b996a1ad2e9c23928ae72d8095ef567c8da37c25bed48507d70f73e8f124f3ed9d12ddd2955bb44aebe684f9f7b1a78b75fdb6be2fc76728819 MISC metadata.xml 869 BLAKE2B 6acbe39b23e071849e6afd42da7ec5a56f017b708745e5efd09a288775da944fbb1185cead3ceaa573398f5874115139834584323e5b4cff360cf6cd9cca4ccd SHA512 a6bf522dfa6c43ea58a432577fbc31bcc9d262f7262c16d165b3cbacf8394a6d9e6d1eea9480cdb27b692cacada0c5fba3906e913259c2809a48159bce53e5bf diff --git a/dev-lang/nasm/nasm-2.14.02.ebuild b/dev-lang/nasm/nasm-2.14.02.ebuild index 77adc7000996..a4d6f15fc797 100644 --- a/dev-lang/nasm/nasm-2.14.02.ebuild +++ b/dev-lang/nasm/nasm-2.14.02.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -11,7 +11,7 @@ SRC_URI="https://www.nasm.us/pub/nasm/releasebuilds/${PV/_}/${P/_}.tar.xz" LICENSE="BSD-2" SLOT="0" -KEYWORDS="amd64 ~arm64 ~ia64 ~ppc64 x86 ~x64-cygwin ~amd64-linux ~x86-linux ~x64-macos" +KEYWORDS="amd64 ~arm64 ~ia64 ~ppc64 x86 ~amd64-linux ~x86-linux" IUSE="doc" RDEPEND="" diff --git a/dev-lang/nasm/nasm-2.15.02.ebuild b/dev-lang/nasm/nasm-2.15.02.ebuild deleted file mode 100644 index 1451280eeac2..000000000000 --- a/dev-lang/nasm/nasm-2.15.02.ebuild +++ /dev/null @@ -1,47 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit flag-o-matic - -DESCRIPTION="groovy little assembler" -HOMEPAGE="https://www.nasm.us/" -SRC_URI="https://www.nasm.us/pub/nasm/releasebuilds/${PV/_}/${P/_}.tar.xz" - -LICENSE="BSD-2" -SLOT="0" -KEYWORDS="~amd64 ~arm64 ~ia64 ~ppc64 ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~x64-macos" -IUSE="doc" - -RDEPEND="" -DEPEND="" -# [fonts note] doc/psfonts.ph defines ordered list of font preference. -# Currently 'media-fonts/source-pro' is most preferred and is able to -# satisfy all 6 font flavours: tilt, chapter, head, etc. -BDEPEND=" - dev-lang/perl - doc? ( - app-text/ghostscript-gpl - dev-perl/Font-TTF - dev-perl/Sort-Versions - media-fonts/source-pro - virtual/perl-File-Spec - ) -" - -S=${WORKDIR}/${P/_} - -PATCHES=( - "${FILESDIR}"/${PN}-2.15-bsd-cp-doc.patch -) - -src_compile() { - default - use doc && emake doc -} - -src_install() { - default - emake DESTDIR="${D}" install_rdf $(usex doc install_doc '') -} diff --git a/dev-lang/nasm/nasm-2.15.01.ebuild b/dev-lang/nasm/nasm-2.15.03.ebuild index 1451280eeac2..50972bc3e57f 100644 --- a/dev-lang/nasm/nasm-2.15.01.ebuild +++ b/dev-lang/nasm/nasm-2.15.03.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://www.nasm.us/pub/nasm/releasebuilds/${PV/_}/${P/_}.tar.xz" LICENSE="BSD-2" SLOT="0" -KEYWORDS="~amd64 ~arm64 ~ia64 ~ppc64 ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~x64-macos" +KEYWORDS="~amd64 ~arm64 ~ia64 ~ppc64 ~x86 ~amd64-linux ~x86-linux" IUSE="doc" RDEPEND="" diff --git a/dev-lang/nasm/nasm-2.15.ebuild b/dev-lang/nasm/nasm-2.15.04.ebuild index 1451280eeac2..50972bc3e57f 100644 --- a/dev-lang/nasm/nasm-2.15.ebuild +++ b/dev-lang/nasm/nasm-2.15.04.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://www.nasm.us/pub/nasm/releasebuilds/${PV/_}/${P/_}.tar.xz" LICENSE="BSD-2" SLOT="0" -KEYWORDS="~amd64 ~arm64 ~ia64 ~ppc64 ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~x64-macos" +KEYWORDS="~amd64 ~arm64 ~ia64 ~ppc64 ~x86 ~amd64-linux ~x86-linux" IUSE="doc" RDEPEND="" diff --git a/dev-lang/nim/Manifest b/dev-lang/nim/Manifest index f24fb930e25c..16872def7e7e 100644 --- a/dev-lang/nim/Manifest +++ b/dev-lang/nim/Manifest @@ -1,4 +1,4 @@ AUX nim-0.20.0-paths.patch 934 BLAKE2B 6a4e44c5656cde6d5127bf6a6b8db92cdf8aada0892c27d536d0c1030ed7da8dc97138a8941030101918021f2a301fa683169c8a656fefc6fb7d0fcdb24029d4 SHA512 bf8dbc3e3861ec3ea2718092b981e495194ead5b547e69d01d5d842d128dc4b96b0ba3e95c78afd8fd822d594199315a01de370851ed8f594c091231b9a10ee9 -DIST nim-1.2.4.tar.xz 5680128 BLAKE2B d8bb186862bf8c8e7e20dd5d1035013c6d48de777512658736ddcd49723e5789dc1e8fe6b5dc8bfbda36d204aeaeba3fdb4e10c6d7955fdc47d9fe78ce17082c SHA512 ed5dd7a744229685c9c034700eb0f7d7c51030ea344c1c371cf2731632fd3376b577a3a9731ed79d65a8fb69f3507a8a88408f2e5c46359a8bbd3b3092d991cc -EBUILD nim-1.2.4.ebuild 2026 BLAKE2B c421e7b9d31c89822e99b11a7e56e4c78f6fd26c717af43d2009aa8e3ec06b1303ccf7f4f9ceef12661bc70de0fd8bf52e42db49baad5a8acdc7fbf370ed9a1d SHA512 4f69ee0ae3526ccbea8ef8cbf8665679ce3bdcb5b7c6e960228150c05df1dd3bec03daa7d88a4b8baffc10aa976bee8477887a8ab5a08acba8f956d444a6fceb +DIST nim-1.2.6.tar.xz 5688752 BLAKE2B 8865df1c508b9c21a2808c0eed8c6cd294f57829e8b75a3c3b70964b45ae7a29ae1670763447ba4f7135ce8ef55e696db1a5cd0a9d563d2174c7212c41d9d268 SHA512 ef59bbb0d4b05bd13624ea7da7182f1d73ffb31c7b34f5928b7e0411809fd70d1898fba9bb02441dc9ce802cd8accaf59448aef5b457e64de73c2ffbbcd53fbc +EBUILD nim-1.2.6.ebuild 2026 BLAKE2B c421e7b9d31c89822e99b11a7e56e4c78f6fd26c717af43d2009aa8e3ec06b1303ccf7f4f9ceef12661bc70de0fd8bf52e42db49baad5a8acdc7fbf370ed9a1d SHA512 4f69ee0ae3526ccbea8ef8cbf8665679ce3bdcb5b7c6e960228150c05df1dd3bec03daa7d88a4b8baffc10aa976bee8477887a8ab5a08acba8f956d444a6fceb MISC metadata.xml 328 BLAKE2B 9205920d8c9b12118456bd186f2e882b3e6f75b7cc3f766def1e79e2e4f7ac695370409ff1555e379516606568f181f4ba3625322f70e41bfffd21d319b0035f SHA512 bf02bc0a8c25d6e157b7ab1ef87c2eac3241d42bc4cf0632a159dcb5d429051018848be81d0cbce228124660ced8694f5de48d64fe10bc7ff5b536b7e7579e49 diff --git a/dev-lang/nim/nim-1.2.4.ebuild b/dev-lang/nim/nim-1.2.6.ebuild index 78fadad3c55e..78fadad3c55e 100644 --- a/dev-lang/nim/nim-1.2.4.ebuild +++ b/dev-lang/nim/nim-1.2.6.ebuild diff --git a/dev-lang/nqp/Manifest b/dev-lang/nqp/Manifest index 138eb2b8b0fb..0c242118bbbc 100644 --- a/dev-lang/nqp/Manifest +++ b/dev-lang/nqp/Manifest @@ -1,10 +1,10 @@ -DIST nqp-2019.03.official.tar.gz 3951058 BLAKE2B 237b8cc0105396fc96349a0dd34502ab45fb7d02089dd2ef5aad2554610b4090adf11679271869e5ae06abfa509210959ae8762fbee30dfe6190d6a74ce32591 SHA512 248768c1b1c0f5e5bd19183404e2a1aa28ab488b05db0b1ed0f0bcceca8b9830885762e763ea38cdd2b54d975d2663e1defe236907096aabc5b668818d293533 -DIST nqp-2019.07.1.tar.gz 3937612 BLAKE2B 71f5ddadaa70d7eeadc122ef50f90c13bf7e3a1a4262069ee8564f739e99dfb780359e1155a28f61f90dd1cc419379e366d7274c9567a4319bd841005c3a51a9 SHA512 90c9cfbc3de165ba8c0b4653a849a6faafef9e3862743c3675277c25bc4578522a97a663a4ed7529831fa0b617c7412fcfe67b3e3ff1fc5994f6c42cdf7a4bc5 -DIST nqp-2019.11.tar.gz 3942494 BLAKE2B 241c4131fc94d7055b51a44b7be824fb53a00fc51370f59dcba1d92655de66e2db536c622084bf9466d9d753d5ad804411b4af07b2767ad1a4f09e065c6693f8 SHA512 3b9fea9d9c4d2ae2ca065536bcca5b483067f9e723c3a89c7e238199c0f52ea6ba23ae4429dacbd42bea69dccbbc836efe5046d1691185d5452f30912f4e6a40 DIST nqp-2020.05.tar.gz 3945402 BLAKE2B d73bb5cf5dcd2f0e0d42928fb12382428355f3c19bbcd015950c2a9e49ab73c215ce8ce21f3686283866c387823f1cbb3ba8179de8f7a66dca43afae94a45a42 SHA512 a60e9bcf9ef8d4c0492cc193893d398d0c62a114e829375ac9a7601336bc2cc820b8f486b10f8b647302d473f3e85ebd13559d4089d38ef6c95b0b7e8778c5cd -EBUILD nqp-2019.03-r1.ebuild 3650 BLAKE2B 72dbc2d62b2338c7a6a1bc8933034e068cc20399c42a1e8975023592245d1af7949dec761c51c099c6471fe8c9e3fed8a5f86119d76c99b4667bf4636c6198ab SHA512 93ff5adc46156969c75778b189934a1f8fc929554db4a4f6c0a8ae472b5dbb883cfec4d391ba63340cb5681764821c63b6e7cd7891aafe663fc2731411b3062a -EBUILD nqp-2019.07.1.ebuild 3647 BLAKE2B 8b111db7536fd66b1d2f495e3b55fd9b52f3339ef5af061423556de7c369a7d664f5a0a744371c1a6916140d3ed58103c1ca4b0859253c025d26f9379da69616 SHA512 27426a63f0b3838023af38543a580b83e66802790743f9fa4e5b6671ee86c4510ff9808686fa62a50d457b3d633a9ed5469948888078e0c48ceb1ca52a71b78e -EBUILD nqp-2019.11.ebuild 3647 BLAKE2B 8b111db7536fd66b1d2f495e3b55fd9b52f3339ef5af061423556de7c369a7d664f5a0a744371c1a6916140d3ed58103c1ca4b0859253c025d26f9379da69616 SHA512 27426a63f0b3838023af38543a580b83e66802790743f9fa4e5b6671ee86c4510ff9808686fa62a50d457b3d633a9ed5469948888078e0c48ceb1ca52a71b78e +DIST nqp-2020.06.tar.gz 3945129 BLAKE2B 0cc378bd5be89bdc8e8b1a72ae64a8d93ccd189811540fc29a72105df1024790deab649349fdc96087f2ce8f3b57eef97e0edf56ee98d7ba3c329e6d47386c46 SHA512 f9a930f7bc9197a9e79ba5f2f72009b4d7ceafe8e3cd7902eb3f04ffb264228b1fba2a826a7ab686322e611557e624c8dbc271dc9eac067a9cc482fc0c6b9460 +DIST nqp-2020.07.tar.gz 3949070 BLAKE2B 194cd52dabe307dab41bec8508a28d00f05c043c16d2ba1beec4a9da63be0d26be3303cb95647ab4f028985ce8913b16f6724f79a395fdf3a6878a2953d33958 SHA512 70b8fa525abc5b6d0749b3e1f090ace60095517d78f9ec84425f12496e46454f89e8f5ea0cbdd77e5f891a6abaa894c9dbc7be955652dfde1cc8d034aec237d3 +DIST nqp-2020.08.tar.gz 3951313 BLAKE2B 0eda6b50268cd4faf49a7311e4d94d9846e223072a54d0ce5c4b2095abe47645924ce6a256edafd6301380ca99b8268a97551cbc6013210e9058713d5a8b1321 SHA512 6acc8d4b443b67a2731d30b4ed81c3ff654189dc51c463d7e4f30ca1a2ac4791b3393238b6370f8bc915278ecdb1bbc403427eb2292b41717ec7d01605a3de4b EBUILD nqp-2020.05.ebuild 3647 BLAKE2B 8b111db7536fd66b1d2f495e3b55fd9b52f3339ef5af061423556de7c369a7d664f5a0a744371c1a6916140d3ed58103c1ca4b0859253c025d26f9379da69616 SHA512 27426a63f0b3838023af38543a580b83e66802790743f9fa4e5b6671ee86c4510ff9808686fa62a50d457b3d633a9ed5469948888078e0c48ceb1ca52a71b78e +EBUILD nqp-2020.06.ebuild 3647 BLAKE2B 8b111db7536fd66b1d2f495e3b55fd9b52f3339ef5af061423556de7c369a7d664f5a0a744371c1a6916140d3ed58103c1ca4b0859253c025d26f9379da69616 SHA512 27426a63f0b3838023af38543a580b83e66802790743f9fa4e5b6671ee86c4510ff9808686fa62a50d457b3d633a9ed5469948888078e0c48ceb1ca52a71b78e +EBUILD nqp-2020.07.ebuild 3647 BLAKE2B 8b111db7536fd66b1d2f495e3b55fd9b52f3339ef5af061423556de7c369a7d664f5a0a744371c1a6916140d3ed58103c1ca4b0859253c025d26f9379da69616 SHA512 27426a63f0b3838023af38543a580b83e66802790743f9fa4e5b6671ee86c4510ff9808686fa62a50d457b3d633a9ed5469948888078e0c48ceb1ca52a71b78e +EBUILD nqp-2020.08.ebuild 3647 BLAKE2B 8b111db7536fd66b1d2f495e3b55fd9b52f3339ef5af061423556de7c369a7d664f5a0a744371c1a6916140d3ed58103c1ca4b0859253c025d26f9379da69616 SHA512 27426a63f0b3838023af38543a580b83e66802790743f9fa4e5b6671ee86c4510ff9808686fa62a50d457b3d633a9ed5469948888078e0c48ceb1ca52a71b78e EBUILD nqp-9999.ebuild 3647 BLAKE2B 8b111db7536fd66b1d2f495e3b55fd9b52f3339ef5af061423556de7c369a7d664f5a0a744371c1a6916140d3ed58103c1ca4b0859253c025d26f9379da69616 SHA512 27426a63f0b3838023af38543a580b83e66802790743f9fa4e5b6671ee86c4510ff9808686fa62a50d457b3d633a9ed5469948888078e0c48ceb1ca52a71b78e MISC metadata.xml 634 BLAKE2B 1ef5daf7c995ddad1df4b2c7d33ecfc7a4cd146cb518314f88d58e370ede9e986bb47747b10952cf0ee6d587fe5925ba5b0086006182f3e16bd114d49e1a0f3a SHA512 a093877d22e76bbbced97c7752ed76d6aa110eb8d0676f97ae3d38ad79ab7b8ba770243b64e618b588faebf179713813fe6fc8ec7371c695c9f0979f6bce3dc0 diff --git a/dev-lang/nqp/nqp-2019.07.1.ebuild b/dev-lang/nqp/nqp-2020.06.ebuild index c41412d388c5..c41412d388c5 100644 --- a/dev-lang/nqp/nqp-2019.07.1.ebuild +++ b/dev-lang/nqp/nqp-2020.06.ebuild diff --git a/dev-lang/nqp/nqp-2019.11.ebuild b/dev-lang/nqp/nqp-2020.07.ebuild index c41412d388c5..c41412d388c5 100644 --- a/dev-lang/nqp/nqp-2019.11.ebuild +++ b/dev-lang/nqp/nqp-2020.07.ebuild diff --git a/dev-lang/nqp/nqp-2019.03-r1.ebuild b/dev-lang/nqp/nqp-2020.08.ebuild index 24e7ec6c6757..c41412d388c5 100644 --- a/dev-lang/nqp/nqp-2019.03-r1.ebuild +++ b/dev-lang/nqp/nqp-2020.08.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 inherit java-pkg-opt-2 multibuild @@ -10,7 +10,7 @@ if [[ ${PV} == "9999" ]]; then inherit git-r3 KEYWORDS="" else - SRC_URI="https://github.com/perl6/${PN}/releases/download/${PV}/${P}.tar.gz -> ${P}.official.tar.gz" + SRC_URI="https://github.com/perl6/${PN}/releases/download/${PV}/${P}.tar.gz" KEYWORDS="~amd64 ~x86" fi @@ -31,7 +31,8 @@ CDEPEND="java? ( moar? ( ~dev-lang/moarvm-${PV}[clang=] )" RDEPEND="${CDEPEND} java? ( >=virtual/jre-1.8 )" -DEPEND="${CDEPEND} +DEPEND="${CDEPEND}" +BDEPEND="${CDEPEND} clang? ( sys-devel/clang ) java? ( >=virtual/jdk-1.8 ) dev-lang/perl" diff --git a/dev-lang/orc/Manifest b/dev-lang/orc/Manifest index 3c1d873c911a..0a3ce7219e55 100644 --- a/dev-lang/orc/Manifest +++ b/dev-lang/orc/Manifest @@ -4,5 +4,5 @@ DIST orc-0.4.29.tar.xz 465076 BLAKE2B f7c81429d95af7031f190a4c3d52959eda1835d309 DIST orc-0.4.31.tar.xz 177768 BLAKE2B f06fd6be70063ebc82b45c1801a53aab66b5fc8a85c33991602488ec8ed29f2271df20c3780655953cabe33e865530b1218aafa0592261bcc5dccc4a4b3945e7 SHA512 4e97597e70982dbfc239d1ef9a8913b0155e5aaac15d91162d7f73a1095bd944e27fbe6d6194b9f74af07b985a44b1d9dddbe917425e1ad9e8da17ce86495696 EBUILD orc-0.4.28-r1.ebuild 2175 BLAKE2B d90883c71906dd89a7d53275a7405d87b6e9480e3a1fbaba83336d632648e940082d9a0bc9321564978f0cafad10db4ddf2b2d357dcf42c4fdff2bcd3feb4edf SHA512 42eab1ff8c1bcc6f9940d07da5cc50d31cde38b4fd6ccaf889b8180fc463aa6c0b825238175095f98a0cc2ddf3324a5ce731e93549be734f8d4cc39227dbb9bd EBUILD orc-0.4.29.ebuild 2389 BLAKE2B 8596c3980308a2c3faf657cea9ff368ca8e08288d571c5837eb3892db2518436cd09e5b4a7ec1a51dff50f552821628c5e49ebff60a926b68c941dfb61f03743 SHA512 3965d2cf6cd0ba3c816639b55864e95b5cb2f50ca832fa711ef4e524728c78d0402263d0ca8e7e2b567c449896314183b15c844cf2367e8be9e14fd1e028fd40 -EBUILD orc-0.4.31.ebuild 1316 BLAKE2B e1c0dae748f6fe964f04ead40b7a1d4655c4192cddf678fd7f735d627453853ef8e73cfc58fd32cbd75499aeb2857707a43ad022ec045873b3dc6628c04d8c0f SHA512 50e4faca86574f74e51add1ae767a56b5bf9d136088546c207340c115228fd0bca7347ef46fa1472ef46d83ef607a4138596d56698fc32146aad84f6942d8333 +EBUILD orc-0.4.31.ebuild 1314 BLAKE2B 15628c0325af25cc8fb35adeb57f175f5d4ac8fb9c3b1748de0b092bcba353d746907a0ad14cc2a05769fbe84be3a907535b187145403bf23fd3ccfaa3cff042 SHA512 bdd33428aabfdb0fa40c71b93c70c3936f4fe4034c7966f17693a53899c4e32569ed3fdb72cf6124c9645b500045833ba300e4966954e12942b6bb5fcd95ef01 MISC metadata.xml 354 BLAKE2B b24bce431d7ad10e9231e89b522e67de16192ee4e48281b8a17f002692632449ab676cb9df6ff5a22563d6f9657ee6be11e452bac41f8a537c598822efab85d1 SHA512 4f17c4c3faa3f2c5feaefe4727b3500360f7cc5486c794e9a34608c3e437b4e2cc266bc9e0e2b3824952a8da62421fda59e9bc5140ee88898f8f7bdde402762f diff --git a/dev-lang/orc/orc-0.4.31.ebuild b/dev-lang/orc/orc-0.4.31.ebuild index 67a6b8e4c3f7..ccb0f62c755c 100644 --- a/dev-lang/orc/orc-0.4.31.ebuild +++ b/dev-lang/orc/orc-0.4.31.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://gstreamer.freedesktop.org/src/${PN}/${P}.tar.xz" LICENSE="BSD BSD-2" SLOT="0" -KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="amd64 arm arm64 ~hppa ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" RESTRICT="!test? ( test )" IUSE="gtk-doc static-libs test" diff --git a/dev-lang/perl/Manifest b/dev-lang/perl/Manifest index 1f06b046eb03..dd1896026a5b 100644 --- a/dev-lang/perl/Manifest +++ b/dev-lang/perl/Manifest @@ -1,18 +1,14 @@ AUX perl-5.26.2-hppa.patch 3231 BLAKE2B d59eab55eea3daceb0d3df39778d43ebaee2c065c052ca048ec17c06fa90049eb7fd5ae40092f11248de25cdf9cff96dc69626e7f3269b24cf618004deeb5859 SHA512 24856ae3c637c58d16d543240f5028e137c33c7aeae7c0c3dfa1a69b621057a84ab4ddf8b12ac6ef251381af4b190c200262bec9bdaa6001199dbd1d15cf4bae -AUX perl-5.30.1-gcc-10.patch 2993 BLAKE2B 81f934f334d3a1c5e166118e21a55230055bec32499b320b6e17b1ca5ac47028fc4aa0aaabdb59211578664602c4db3a654e35231c12eb28d3ed89287ad3077a SHA512 8f9cf67d877788ee29fdc165f6b32eb63036f1ab696c3f978f7b2b1a76ab9d9983a13cf4169d2baa7231b38a9db7f7878e2949a3196c50397cce4fec0650ad9d -AUX perl-5.30.3-gentoo-libdirs.patch 3811 BLAKE2B 58ed3a27813e9e390039c590f323723c4a8e7432b3df9c035b19d9c3bc3df4e56f266c2bbee31eb1de3735acb8692ac0f204bb6515353784ad92e610ed771f9f SHA512 6288f066d3ff1f56722838887437a3ad4c0e80f68a71c99144e51325bf1678ffe9c1840a8194c178bd7cf8f11958617b7a7a974c410ebe4a0a1a44bfd7a11016 DIST perl-5.30.0-patches-1.tar.xz 17352 BLAKE2B 67eb1c4ce6ada27e05962d06fa9c5675ca1d22623b5fd172ce8ceaa17f2e51d61f9451955f9f6acf6d97ea7d71c72b583be1378ccbf9174c88580baec2049a48 SHA512 4fe1f2de5e72e56890858148d20b772df63dce34cb3977ec47d8ed5323c4843929130f660f1558c282c97e65efa1c6d2fdacf9e2dcc0ef1d487a0b69dbb5bbb4 -DIST perl-5.30.1.tar.xz 12367844 BLAKE2B 7e5dafb218a993301b986d198c02179d2d93d7418b910f813c7e5bc44ca4d22f004d4d768273ab5d4b6f16103d8a1896237ee14e195d2644fc4c05f5ade5404b SHA512 8f3339efdcd1bb58fa58a90042181bef86bb09e4598c737e446ed43b56d2ab23d67eced5e36fb08fc61e076acfdb572a12e46a1277f5299a3f412054df0b88bf -DIST perl-5.30.2.tar.xz 12373480 BLAKE2B b34344221409fad8aad5c24a9851a95521720bfd85ff150fec02a70d78188cd3a4d6327931b955323c86eab6b16979128dd323f78b797cf3244518df840f70b0 SHA512 b945c95f44a58b9cc920c926e23017c4270c0dc8daf0bf8169cd7c8f6b8f980f1780bee4fbd525df518edc50f08364ba65988cb17e72a1667f50226459b65087 +DIST perl-5.30.3-patches-1.tar.xz 20292 BLAKE2B 34ca8dbdf08650deaaa59bba634c3a40c6da7d91b282365eec217cc421b17678837b1ae02de5d6b0b632858a0251b796ce28ddbdd7a86aca6697f18a527fcb62 SHA512 ba9aafcaff405c931b61ffc917be8ef71e538fd5277a3bcfafbaffc965b53f9c1811670558a0bc75c538586a30f11aba3ce59bd2214982eaad3b5afa64e67999 DIST perl-5.30.3.tar.xz 12375128 BLAKE2B ff0668c896e46ea35a1b8bd4a7d800c8668d6995185cd8c43fca332da2fa63965bb5276b2d5cf9738c0b7fb735140f6e33f1b4582899017903f86753065f417b SHA512 0ea62cf17532ee99217a218c39aa530472857c7a1982494f3a01693683062b4cdebe383a79f7b64452c713337b554ed5e0fd6eda018ea29e83c3538a13c24f3c -DIST perl-cross-1.3.1.tar.gz 106723 BLAKE2B 473d90dbfe5d69e17d088664c365190982db400b0617d951fb7a4ccb84dd269fd9e861a6255c0469fbf288125db67ed9fc692251f14c31181f6e9dd1dba447bb SHA512 4715c1f65e39a7d0c605558b345a0a037e61afa992b3f723d66277d5ff7f1c7368ff1dfdb726895d75c4afdb6f710743708fdd9e79569a7d14a2d7002cc9f3b2 +DIST perl-5.32.0-patches-1.tar.xz 20220 BLAKE2B 46ebca5c74f59aa935ceec2a5807426c0e653ad7ba27de441d26e049e62dc67b17d58dfe5755f31bdd157e349d47fd46a98699207729f8f4f747930ed1064ba2 SHA512 42ed00f5f6be40af59e02691ff439a048cccd96fb970cca0976209faa921af98a773cc4cb1466e164328350d58cb46950ffa8c6f2fddabbeb3e8819349b06849 +DIST perl-5.32.0.tar.xz 12717336 BLAKE2B 4abad9f1ddabaad5f2bbfe8ab6d061aeb8c558e458d4bf1bcf737a8ecc1cf20f7dffaddd0bc867578b457787ec284fa81be3fae1edd7f72d58aeec7b5cd744e5 SHA512 1540247415893bbd94dfeede7b4fba6052688dc0bf27ced817f448246fcdc6e9a6486abc34577dec5b00bf02ed607b2d24ccd4977c3b3c51e8e6edfc0b81c760 DIST perl-cross-1.3.2.tar.gz 108350 BLAKE2B ddb352fdbec66a04de62425f5cae1aaa3bc7251b9d6f4837b66a0bd79c53c60212fad3997dad4c38055774a2769d45b5b83927bf48b0fb00a130fee429eba702 SHA512 d61d25066a8d87c34aeacc5b9bd86fab964b33c4c65e84a89e4077fe1d8011c0bdf810a304631af44fae32edcffd6c99fc17b0c584ea83d1ce5ce492aaedfea5 DIST perl-cross-1.3.4.tar.gz 108461 BLAKE2B 28f207d235f51ebf681598cf85f7f16923574aafb593426a59d67578135ee3632efb12b9e1a672759195a79f80e49f5c929ec42b2b4571b1d36f5d8c8dceadc2 SHA512 7e1fc7b2b19d8c2e2fb8615e074e218b2e1a4d276b563ffabccfd0c7398bc8680fca96da89cc61d611993f38a2c67dfbb0201c58658e05437395ad8c00d31874 -EBUILD perl-5.30.1.ebuild 20271 BLAKE2B 1b412c3ab85bd682e054d80fb09de739b686cef20c8ba64471da2d884326e4d7e82de3eb9333873370b6cc815d11d68209506fb4cb913f9e468e4bfe8190b92f SHA512 6cf2c92b23c4d45becea1a9a68123ee0f087bd8cafc06d0602074f5d8bbd1f6a0259bc8859b8e8d2b6c443d633de01aecc428d3599dd7637b8667ff71c9ef724 -EBUILD perl-5.30.2-r1.ebuild 20249 BLAKE2B 8c1f20dc7e49f679bcd960762fe020d952e8dd4caf664bc2755a65034cd4349ad291b2d4b661047150e0788778ede2bb3c0b757ec7a862554ecb4c4efe858b52 SHA512 a9130908388b276211fbeba454ce482a712b1a687a23f09bf3f179f7f35a0c7081c869f076103e439197b3aaa0bad86a63bff3f33d9421b06b33b82bf7035f67 -EBUILD perl-5.30.2-r2.ebuild 20458 BLAKE2B 3713a9b07a5e2242640baf1974cd22454a9170afd04953849905b46bf7c89e435e4821f3317af8c658768fb0a261a3d3984aad91fec18364e9891ed92db05c6c SHA512 2dea0da7a28b4dafa0ca4029fc9294af18a611b302db70713b761654b08237b935307bccd6330a90a9675a822fcc35110718b4fae56f2be36b2615a65469c705 -EBUILD perl-5.30.2.ebuild 20226 BLAKE2B 06fe835beba602f173b0077b6993f886d25ecf6e7d6e3e2587a4a2b89d451cc51d105a4c124c23084c8b635e366396f11e0b64643b992bf4710fb138b4dde273 SHA512 7b17273a2691a45d03133d44c651092fe5ba8e644762dc162d3c2325e4296e72a9be3e35640e8d07f23edf0f1a996d6788afaccfac24edfeb3d410ed275fc7c9 -EBUILD perl-5.30.3-r1.ebuild 20471 BLAKE2B 2d700af11b68746385987c50fdbe2772e02e2c95d114d7ba166d2abfeb1c5b92b4c80cfc21a43dc4365a961ada45f0def4c788aa2b4b5ccb86757a61fe6ed6f6 SHA512 5955d737a9c9663659cbd4d85e90fb0cc6f119bcf86b3123fddc642eb9a0043797db67e6f3c388f4dfb2c1c340f23fcda6aa2b00339abc4ba0804e6b9a5178ee -EBUILD perl-5.30.3-r2.ebuild 23617 BLAKE2B befe1e085ac6c288c914069b3ee1e8bf23279ba26cd850e739f5a11d3356f107d5fe5b386eb4fa3175d3b1f9b2b696f1fab9b6d5578d472f3ed82e2acc11a3dd SHA512 2cf7c5f7c125370bf10ce378e7cafdc9648b67843673a4478da78ba2294359d5e5686ab7d4cf943de37088b386de9d7d8ded4e3384792a3974a462bdcf92e4ec +EBUILD perl-5.30.3-r1.ebuild 20491 BLAKE2B c8b0c0597260089037e156d0f7eef2fce436be6e8958d22b069b37d94f805dc57617404f3b86b3d8e14134a44c6df2a9d2f5d15c85ed22410c26e747e5c6bf09 SHA512 7928f71f93922bcaa2eee5389d6bac7d39573ee760f4c391bdabd5de9e5d8fd6c1241aa85bf2d655ec40c4bbbd54c3ecc74273d09492f969544bbfb0e0969b81 +EBUILD perl-5.30.3-r2.ebuild 25975 BLAKE2B f56945eadfa24535d9fd3cd1fd717fa3b1c569d0cdf40d2595b970912b584feb25affc0c104c691ee92184fc4f1b16a0bd6b3e45e3170c400f19fa8782110bec SHA512 d405ab9ea78a801fabc27693375d57551310baed120a2a4b5dce6554548ff91f7cb3d658d5ca29b35673a0639123ac30ffe1658919be657a3dbfcffa6b149eed EBUILD perl-5.30.3.ebuild 20230 BLAKE2B e3d024205657311a66da2b988a000d9ac4ca7aaf9b6002b65cbf1e580c7c893dad8accea58a56a7b1f883158d996c92ad1714e451bfc058ccbe15d06c7824cb8 SHA512 0c5ee31abdeb54e41dd12d8497bce14a8900654ae8de290d1aa9286807f16f9d010ee4d91add0e186a98ab3b14a07006932028572cc3dafe9a758b05bb1bc536 +EBUILD perl-5.32.0-r1.ebuild 25694 BLAKE2B a4481cbc687d2a46092009f400ceb847ed5a7a9ea0220ac154a46c63bd1143f0831cdfbdac979afac9eff0a547e39e65ae599e1054e2212c373ef15ae3e2e301 SHA512 43b7905e8882df8e162437631eca21b15214384dee1e4fb1f0c658f0af5b2fff0ae9770bce76ab9212d282fac0a179e30e857e62b45a22462baefa6c49b20ffa +EBUILD perl-5.32.0.ebuild 20210 BLAKE2B 7d03b057748dea80fa57e17b5957e35a4cf6b98d2347a33394a115fc465bab254d5a9256eb2bf8d8a67d8df4b5fb95b83e7dbc5630c236f5bdc2a2a7c897b445 SHA512 3ae5f43676f26644b65d16a33ca05e089d9bcd4630442fe0080b95493f4d34b5aba3899e06798e56cab69a127796d8171a018a3a16c82f2e584a21aec40fd4de MISC metadata.xml 430 BLAKE2B 8625fd07f63a7943a85c3919d6ae6db622b752caa2803c56c72a22b270244261331fbab8b760e6d00acb8480770c9ef1d1beaaa22cc6044660821687c0cd8c33 SHA512 ca4c43e2016b7df707894713465700a90d2b8551b57fc4d660cff75edb1e8cc2456f9ae10431839ad6738f290d4f5911fae360eaa1d4670859d855de3d568583 diff --git a/dev-lang/perl/files/perl-5.30.1-gcc-10.patch b/dev-lang/perl/files/perl-5.30.1-gcc-10.patch deleted file mode 100644 index bb92527853f5..000000000000 --- a/dev-lang/perl/files/perl-5.30.1-gcc-10.patch +++ /dev/null @@ -1,99 +0,0 @@ -https://bugs.gentoo.org/708744 - -From 6bd6308fcea3541e505651bf8e8127a4a03d22cd Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com> -Date: Tue, 12 Nov 2019 09:19:18 +0100 -Subject: [PATCH] Adapt Configure to GCC version 10 - -I got a notice from Jeff Law <law@redhat.com>: - - Your particular package fails its testsuite. This was ultimately - tracked down to a Configure problem. The perl configure script treated - gcc-10 as gcc-1 and turned on -fpcc-struct-return. This is an ABI - changing flag and caused Perl to not be able to interact properly with - the dbm libraries on the system leading to a segfault. - -His proposed patch corrected only this one instance of the version -mismatch. Reading the Configure script revealed more issues. This -patch fixes all of them I found. - -Please note I do not have GCC 10 available, I tested it by faking the version -with: - ---- a/Configure -+++ b/Configure -@@ -4701,7 +4701,7 @@ else - fi - $rm -f try try.* - case "$gccversion" in --1*) cpp=`./loc gcc-cpp $cpp $pth` ;; -+1.*) cpp=`./loc gcc-cpp $cpp $pth` ;; - esac - case "$gccversion" in - '') gccosandvers='' ;; -@@ -4741,7 +4741,7 @@ esac - # gcc 3.* complain about adding -Idirectories that they already know about, - # so we will take those off from locincpth. - case "$gccversion" in --3*) -+3.*) - echo "main(){}">try.c - for incdir in $locincpth; do - warn=`$cc $ccflags -I$incdir -c try.c 2>&1 | \ -@@ -5467,13 +5467,13 @@ fi - case "$hint" in - default|recommended) - case "$gccversion" in -- 1*) dflt="$dflt -fpcc-struct-return" ;; -+ 1.*) dflt="$dflt -fpcc-struct-return" ;; - esac - case "$optimize:$DEBUGGING" in - *-g*:old) dflt="$dflt -DDEBUGGING";; - esac - case "$gccversion" in -- 2*) if $test -d /etc/conf/kconfig.d && -+ 2.*) if $test -d /etc/conf/kconfig.d && - $contains _POSIX_VERSION $usrinc/sys/unistd.h >/dev/null 2>&1 - then - # Interactive Systems (ISC) POSIX mode. -@@ -5482,7 +5482,7 @@ default|recommended) - ;; - esac - case "$gccversion" in -- 1*) ;; -+ 1.*) ;; - 2.[0-8]*) ;; - ?*) set strict-aliasing -fno-strict-aliasing - eval $checkccflag -@@ -5600,7 +5600,7 @@ case "$cppflags" in - ;; - esac - case "$gccversion" in --1*) cppflags="$cppflags -D__GNUC__" -+1.*) cppflags="$cppflags -D__GNUC__" - esac - case "$mips_type" in - '');; -@@ -23103,7 +23103,7 @@ fi - - : add -D_FORTIFY_SOURCE if feasible and not already there - case "$gccversion" in --[456789].*) case "$optimize$ccflags" in -+[456789].*|[1-9][0-9]*) case "$optimize$ccflags" in - *-O*) case "$ccflags$cppsymbols" in - *_FORTIFY_SOURCE=*) # Don't add it again. - echo "You seem to have -D_FORTIFY_SOURCE already, not adding it." >&4 ---- a/cflags.SH -+++ b/cflags.SH -@@ -156,7 +156,7 @@ esac - - case "$gccversion" in - '') ;; --[12]*) ;; # gcc versions 1 (gasp!) and 2 are not good for this. -+[12].*) ;; # gcc versions 1 (gasp!) and 2 are not good for this. - Intel*) ;; # # Is that you, Intel C++? - # - # NOTE 1: the -std=c89 without -pedantic is a bit pointless. --- -2.25.0 - diff --git a/dev-lang/perl/files/perl-5.30.3-gentoo-libdirs.patch b/dev-lang/perl/files/perl-5.30.3-gentoo-libdirs.patch deleted file mode 100644 index b9e36223a941..000000000000 --- a/dev-lang/perl/files/perl-5.30.3-gentoo-libdirs.patch +++ /dev/null @@ -1,135 +0,0 @@ -From 7572be1afb16621a537e9da02f96cf04cb10b655 Mon Sep 17 00:00:00 2001 -From: Kent Fredric <kentnl@gentoo.org> -Date: Sat, 20 Jun 2020 22:14:22 +1200 -Subject: Add support for -Dgentoolibdirs - -Which just adds the libdirs verbatim in the right place without -having perl molest it in the process. ---- - Configure | 26 ++++++++++++++++++++++++++ - config_h.SH | 5 +++++ - perl.c | 1 + - perl_inc_macro.h | 8 ++++++++ - uconfig.sh | 1 + - 5 files changed, 41 insertions(+) - -diff --git a/Configure b/Configure -index cef8c3c078..77258e8f43 100755 ---- a/Configure -+++ b/Configure -@@ -1181,6 +1181,8 @@ orderlib='' - ranlib='' - d_perl_otherlibdirs='' - otherlibdirs='' -+gentoolibdirs='' -+d_gentoolibdirs='' - package='' - spackage='' - pager='' -@@ -8101,6 +8103,28 @@ esac - set d_perl_otherlibdirs - eval $setvar - -+case "$gentoolibdirs" in -+''|' ') dflt='none' ;; -+*) dflt="$gentoolibdirs" ;; -+esac -+$cat <<EOM -+Enter a colon-seperated list of explicit gentoo paths to stuff in @INC -+unmolested, or enter 'none' for no extra paths -+ -+EOM -+rp='Colon-seperated list of gentoo-specific perl library search dirs?' -+. ./myread -+case "$ans" in -+' '|''|none) gentoolibdirs=' ';; -+*) gentoolibdirs="$ans" ;; -+esac -+case "$gentoolibdirs" in -+' ') val=$undef ;; -+*) val=$define ;; -+esac -+set d_gentoolibdirs -+eval $setvar -+ - : DTrace support - dflt_dtrace='/usr/sbin/dtrace' - $test -x /usr/bin/dtrace && dflt_dtrace='/usr/bin/dtrace' -@@ -24402,6 +24426,7 @@ d_openat='$d_openat' - d_pathconf='$d_pathconf' - d_pause='$d_pause' - d_perl_otherlibdirs='$d_perl_otherlibdirs' -+d_gentoolibdirs='$d_gentoolibdirs' - d_phostname='$d_phostname' - d_pipe2='$d_pipe2' - d_pipe='$d_pipe' -@@ -24937,6 +24962,7 @@ orderlib='$orderlib' - osname='$osname' - osvers='$osvers' - otherlibdirs='$otherlibdirs' -+gentoolibdirs='$gentoolibdirs' - package='$package' - pager='$pager' - passcat='$passcat' -diff --git a/config_h.SH b/config_h.SH -index 08c5923ef8..5563082969 100755 ---- a/config_h.SH -+++ b/config_h.SH -@@ -1308,6 +1308,11 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un - */ - #$d_perl_otherlibdirs PERL_OTHERLIBDIRS "$otherlibdirs" /**/ - -+/* GENTOO_LIBDIRS: -+ * Like PERL_OTHERLIBDIRS, but doesn't stuff ARCH dirs in when not wanted -+ */ -+#$d_gentoolibdirs GENTOO_LIBDIRS "$gentoolibdirs" /**/ -+ - /* PRIVLIB: - * This symbol contains the name of the private library for this package. - * The library is private in the sense that it needn't be in anyone's -diff --git a/perl.c b/perl.c -index 2013a76026..62e67cfaa2 100644 ---- a/perl.c -+++ b/perl.c -@@ -4750,6 +4750,7 @@ S_init_perllib(pTHX) - INCPUSH_ARCHLIB_EXP - INCPUSH_PRIVLIB_EXP - INCPUSH_PERL_OTHERLIBDIRS -+ INCPUSH_GENTOO_LIBDIRS - INCPUSH_PERL5LIB - INCPUSH_APPLLIB_OLD_EXP - INCPUSH_SITELIB_STEM -diff --git a/perl_inc_macro.h b/perl_inc_macro.h -index 5a2f20dfae..4b69b39199 100644 ---- a/perl_inc_macro.h -+++ b/perl_inc_macro.h -@@ -143,6 +143,14 @@ - INCPUSH_ADD_OLD_VERS|INCPUSH_CAN_RELOCATE); - #endif - -+#ifdef GENTOO_LIBDIRS -+# define INCPUSH_GENTOO_LIBDIRS S_incpush_use_sep(aTHX_ STR_WITH_LEN(GENTOO_LIBDIRS), \ -+ INCPUSH_ADD_OLD_VERS|INCPUSH_CAN_RELOCATE); -+#endif -+#ifndef INCPUSH_GENTOO_LIBDIRS -+# define INCPUSH_GENTOO_LIBDIRS -+#endif -+ - #ifdef PERL_OTHERLIBDIRS - # define INCPUSH_PERL_OTHERLIBDIRS_ARCHONLY S_incpush_use_sep(aTHX_ STR_WITH_LEN(PERL_OTHERLIBDIRS), \ - INCPUSH_ADD_OLD_VERS|INCPUSH_ADD_ARCHONLY_SUB_DIRS|INCPUSH_CAN_RELOCATE); -diff --git a/uconfig.sh b/uconfig.sh -index 1d4a0f4a57..fba825acad 100644 ---- a/uconfig.sh -+++ b/uconfig.sh -@@ -185,6 +185,7 @@ d_futimes='undef' - d_gai_strerror='undef' - d_gdbm_ndbm_h_uses_prototypes='undef' - d_gdbmndbm_h_uses_prototypes='undef' -+d_gentoolibdirs='undef' - d_getaddrinfo='undef' - d_getcwd='undef' - d_getespwnam='undef' --- -2.27.0 - diff --git a/dev-lang/perl/perl-5.30.1.ebuild b/dev-lang/perl/perl-5.30.1.ebuild deleted file mode 100644 index cdd7bc5e790b..000000000000 --- a/dev-lang/perl/perl-5.30.1.ebuild +++ /dev/null @@ -1,654 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit eutils alternatives flag-o-matic toolchain-funcs multilib multiprocessing - -PATCH_VER=1 -CROSS_VER=1.3.1 -PATCH_BASE="perl-5.30.0-patches-${PATCH_VER}" -PATCH_DEV=dilfridge - -DIST_AUTHOR=SHAY - -# Greatest first, don't include yourself -# Devel point-releases are not ABI-intercompatible, but stable point releases are -# BIN_OLDVERSEN is contains only C-ABI-intercompatible versions -PERL_BIN_OLDVERSEN="5.30.0" - -if [[ "${PV##*.}" == "9999" ]]; then - DIST_VERSION=5.30.0 -else - DIST_VERSION="${PV/_rc/-RC}" -fi -SHORT_PV="${DIST_VERSION%.*}" -# Even numbered major versions are ABI intercompatible -# Odd numbered major versions are not -if [[ $(( ${SHORT_PV#*.} % 2 )) == 1 ]]; then - SUBSLOT="${DIST_VERSION%-RC*}" -else - SUBSLOT="${DIST_VERSION%.*}" -fi -# Used only in tar paths -MY_P="perl-${DIST_VERSION}" -# Used in library paths -MY_PV="${DIST_VERSION%-RC*}" - -DESCRIPTION="Larry Wall's Practical Extraction and Report Language" - -SRC_URI=" - mirror://cpan/src/5.0/${MY_P}.tar.xz - mirror://cpan/authors/id/${DIST_AUTHOR:0:1}/${DIST_AUTHOR:0:2}/${DIST_AUTHOR}/${MY_P}.tar.xz - https://github.com/gentoo-perl/perl-patchset/releases/download/${PATCH_BASE}/${PATCH_BASE}.tar.xz - mirror://gentoo/${PATCH_BASE}.tar.xz - https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${PATCH_BASE}.tar.xz - https://github.com/arsv/perl-cross/releases/download/${CROSS_VER}/perl-cross-${CROSS_VER}.tar.gz -" -HOMEPAGE="https://www.perl.org/" - -LICENSE="|| ( Artistic GPL-1+ )" -SLOT="0/${SUBSLOT}" - -if [[ "${PV##*.}" != "9999" ]] && [[ "${PV/rc//}" == "${PV}" ]] ; then -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -fi - -IUSE="berkdb debug doc gdbm ithreads" - -RDEPEND=" - berkdb? ( sys-libs/db:= ) - gdbm? ( >=sys-libs/gdbm-1.8.3:= ) - app-arch/bzip2 - sys-libs/zlib -" -DEPEND="${RDEPEND}" -PDEPEND=" - >=app-admin/perl-cleaner-2.5 - >=virtual/perl-File-Temp-0.230.400-r2 - >=virtual/perl-Data-Dumper-2.154.0 - virtual/perl-Test-Harness -" -# bug 390719, bug 523624 -# virtual/perl-Test-Harness is here for the bundled ExtUtils::MakeMaker - -S="${WORKDIR}/${MY_P}" - -dual_scripts() { - src_remove_dual perl-core/Archive-Tar 2.320.0 ptar ptardiff ptargrep - src_remove_dual perl-core/CPAN 2.220.0 cpan - src_remove_dual perl-core/Digest-SHA 6.20.0 shasum - src_remove_dual perl-core/Encode 3.10.0 enc2xs piconv - src_remove_dual perl-core/ExtUtils-MakeMaker 7.340.0 instmodsh - src_remove_dual perl-core/ExtUtils-ParseXS 3.400.0 xsubpp - src_remove_dual perl-core/IO-Compress 2.84.0 zipdetails - src_remove_dual perl-core/JSON-PP 4.20.0 json_pp - src_remove_dual perl-core/Module-CoreList 5.201.910.270 corelist - src_remove_dual perl-core/Pod-Parser 1.630.0 pod2usage podchecker podselect - src_remove_dual perl-core/Pod-Perldoc 3.280.100 perldoc - src_remove_dual perl-core/Test-Harness 3.420.0 prove - src_remove_dual perl-core/podlators 4.110.0 pod2man pod2text - src_remove_dual_man perl-core/podlators 4.110.0 /usr/share/man/man1/perlpodstyle.1 -} - -check_rebuild() { - # Fresh install - if [[ -z "${REPLACING_VERSIONS}" ]]; then - return 0; - # Major Upgrade - # doesn't matter if there's multiple copies, it still needs a rebuild - # if the string is anything other than "5.CURRENTMAJOR" - elif [[ "${REPLACING_VERSIONS%.*}" != "${PV%.*}" ]]; then - echo "" - ewarn "UPDATE THE PERL MODULES:" - ewarn "After updating dev-lang/perl the installed Perl modules" - ewarn "have to be re-installed. In most cases, this is done automatically" - ewarn "by the package manager, but subsequent steps are still recommended" - ewarn "to ensure system consistency." - ewarn - ewarn "You should start with a depclean to remove any unused perl dependencies" - ewarn "that may confuse portage in future. Regular depcleans are also encouraged" - ewarn "as part of your regular update cycle, as that will keep perl upgrades working." - ewarn "Recommended: emerge --depclean -va" - ewarn - ewarn "You should then call perl-cleaner to clean up any old files and trigger any" - ewarn "remaining rebuilds portage may have missed." - ewarn "Use: perl-cleaner --all" - return 0; - - # Reinstall w/ USE Change - elif ( use ithreads && ! has_version dev-lang/perl[ithreads] ) || \ - ( ! use ithreads && has_version dev-lang/perl[ithreads] ) || \ - ( use debug && ! has_version dev-lang/perl[debug] ) || \ - ( ! use debug && has_version dev-lang/perl[debug] ) ; then - echo "" - ewarn "TOGGLED USE-FLAGS WARNING:" - ewarn "You changed one of the use-flags ithreads or debug." - ewarn "You must rebuild all perl-modules installed." - ewarn "Use: perl-cleaner --modules ; perl-cleaner --force --libperl" - fi -} - -pkg_setup() { - case ${CHOST} in - *-freebsd*) osname="freebsd" ;; - *-dragonfly*) osname="dragonfly" ;; - *-netbsd*) osname="netbsd" ;; - *-openbsd*) osname="openbsd" ;; - *-darwin*) osname="darwin" ;; - *-solaris*) osname="solaris" ;; - *-interix*) osname="interix" ;; - *-aix*) osname="aix" ;; - *-cygwin*) osname="cygwin" ;; - *) osname="linux" ;; - esac - - myarch="${CHOST%%-*}-${osname}" - if use debug ; then - myarch+="-debug" - fi - if use ithreads ; then - mythreading="-multi" - myarch+="-thread" - fi - - PRIV_BASE="/usr/$(get_libdir)/perl5" - SITE_BASE="/usr/local/$(get_libdir)/perl5" - VENDOR_BASE="/usr/$(get_libdir)/perl5/vendor_perl" - - LIBPERL="libperl$(get_libname ${MY_PV} )" - PRIV_LIB="${PRIV_BASE}/${MY_PV}" - ARCH_LIB="${PRIV_BASE}/${MY_PV}/${myarch}${mythreading}" - SITE_LIB="${SITE_BASE}/${MY_PV}" - SITE_ARCH="${SITE_BASE}/${MY_PV}/${myarch}${mythreading}" - VENDOR_LIB="${VENDOR_BASE}/${MY_PV}" - VENDOR_ARCH="${VENDOR_BASE}/${MY_PV}/${myarch}${mythreading}" - - dual_scripts -} - -src_remove_dual_file() { - local i pkg ver - pkg="$1" - ver="$2" - shift 2 - case "${EBUILD_PHASE:-none}" in - postinst|postrm) - for i in "$@" ; do - alternatives_auto_makesym "${i}" "${i}-[0-9]*" - done - ;; - setup) - for i in "$@" ; do - if [[ -f ${EROOT}${i} && ! -h ${EROOT}${i} ]] ; then - has_version ${pkg} && ewarn "You must reinstall ${pkg} !" - break - fi - done - ;; - install) - for i in "$@" ; do - if ! [[ -f "${ED}"${i} ]] ; then - ewarn "${i} does not exist!" - continue - fi - mv "${ED}"${i}{,-${ver}-${P}} || die - done - ;; - esac -} - -src_remove_dual_man() { - local i pkg ver ff - pkg="$1" - ver="$2" - shift 2 - case "${EBUILD_PHASE:-none}" in - postinst|postrm) - for i in "$@" ; do - ff=`echo "${EROOT}${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}}"*` - ff=${ff##*${i#${i%.[0-9]}}} - alternatives_auto_makesym "${i}${ff}" "${i%.[0-9]}-[0-9]*" - done - ;; - install) - for i in "$@" ; do - if ! [[ -f "${ED}"${i} ]] ; then - ewarn "${i} does not exist!" - continue - fi - mv "${ED}"${i} "${ED}"${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}} || die - done - ;; - esac -} - -src_remove_dual() { - local i pkg ver - pkg="$1" - ver="$2" - shift 2 - for i in "$@" ; do - src_remove_dual_file "${pkg}" "${ver}" "/usr/bin/${i}" - src_remove_dual_man "${pkg}" "${ver}" "/usr/share/man/man1/${i}.1" - done -} - -src_prepare_update_patchlevel_h() { - # Copied and modified from debian: - # Copyright 2011 Niko Tyni - # This program is free software; you can redistribute it and/or modify - # it under the same terms as Perl itself. - local patchdir="${WORKDIR}/patches" - local prefix - local patchoutput="patchlevel-gentoo.h" - - [[ -f ${patchdir}/series ]] || return 0 - -while read patch -do - patchname=$(echo $patch | sed 's/\.diff$//') - < $patchdir/$patch sed -e '/^Subject:/ { N; s/\n / / }' | sed -n -e ' - - # massage the patch headers - s|^Bug: .*https\?://rt\.perl\.org/.*id=\(.*\).*|[perl #\1]|; tprepend; - s|^Bug: .*https\?://rt\.cpan\.org/.*id=\(.*\).*|[rt.cpan.org #\1]|; tprepend; - s|^Bug-Gentoo: ||; tprepend; - s/^\(Subject\|Description\): //; tappend; - s|^Origin: .*http://perl5\.git\.perl\.org/perl\.git/commit\(diff\)\?/\(.......\).*|[\2]|; tprepend; - - # post-process at the end of input - $ { x; - # include the version number in the patchlevel.h description (if available) - s/List packaged patches/&'" for ${PF}(#${PATCH_VER})"'/; - - # escape any backslashes and double quotes - s|\\|\\\\|g; s|"|\\"|g; - - # add a prefix - s|^|\t,"'"$prefix$patchname"' - |; - # newlines away - s/\n/ /g; s/ */ /g; - # add a suffix - s/ *$/"/; p - }; - # stop all processing - d; - # label: append to the hold space - :append H; d; - # label: prepend to the hold space - :prepend x; H; d; - ' -done < "${WORKDIR}"/patches/series > "${S}/${patchoutput}" -echo "${patchoutput}" >> "${S}/MANIFEST" -} - -src_prepare_perlcross() { - cp -a ../perl-cross-${CROSS_VER}/* . || die - - # bug 604072 - MAKEOPTS+=" -j1" - export MAKEOPTS -} -src_prepare_dynamic() { - ln -s ${LIBPERL} libperl$(get_libname ${SHORT_PV}) || die - ln -s ${LIBPERL} libperl$(get_libname ) || die -} - -src_prepare() { - local patch - EPATCH_OPTS+=" -p1" - - if use hppa ; then - epatch "${FILESDIR}/${PN}-5.26.2-hppa.patch" # bug 634162 - fi - eapply "${FILESDIR}"/${PN}-5.30.1-gcc-10.patch # bug 708744 - - if [[ ${CHOST} == *-solaris* ]] ; then - # do NOT mess with nsl, on Solaris this is always necessary, - # when -lsocket is used e.g. to get h_errno - sed -i '/gentoo\/no-nsl-cl\.patch/d' "${WORKDIR}/patches/series" || die - fi - - einfo "Applying patches from ${PATCH_BASE} ..." - while read patch ; do - EPATCH_SINGLE_MSG=" ${patch} ..." - epatch "${WORKDIR}"/patches/${patch} - done < "${WORKDIR}"/patches/series - - src_prepare_update_patchlevel_h - - tc-is-cross-compiler && src_prepare_perlcross - - tc-is-static-only || src_prepare_dynamic - - if use gdbm; then - sed -i "s:INC => .*:INC => \"-I${EROOT}usr/include/gdbm\":g" \ - ext/NDBM_File/Makefile.PL || die - fi - - # Use errno.h from prefix rather than from host system, bug #645804 - if use prefix && [[ -e "${EPREFIX}"/usr/include/errno.h ]] ; then - sed -i "/my..sysroot/s:'':'${EPREFIX}':" ext/Errno/Errno_pm.PL || die - fi - - if [[ ${CHOST} == *-solaris* ]] ; then - # set a soname, fix linking against just built libperl - sed -i -e 's/netbsd\*/netbsd*|solaris*/' Makefile.SH || die - fi - - if [[ ${CHOST} == *-darwin* ]] ; then - # fix install_name (soname) not to reference $D - sed -i -e '/install_name `pwd/s/`pwd`/\\$(shrpdir)/' Makefile.SH || die - fi - - default -} - -myconf() { - # the myconf array is declared in src_configure - myconf=( "${myconf[@]}" "$@" ) -} - -src_configure() { - declare -a myconf - - export LC_ALL="C" - [[ ${COLUMNS:-1} -ge 1 ]] || unset COLUMNS # bug #394091 - - # Perl has problems compiling with -Os in your flags with glibc - use elibc_uclibc || replace-flags "-Os" "-O2" - - # xlocale.h is going away in glibc-2.26, so it's counterproductive - # if we use it and include it in CORE/perl.h ... Perl builds just - # fine with glibc and locale.h only. - # However, the darwin prefix people have no locale.h ... - use elibc_glibc && myconf -Ui_xlocale - - # This flag makes compiling crash in interesting ways - filter-flags "-malign-double" - - # Generic LTO broken since 5.28, triggers EUMM failures - filter-flags "-flto" - - use sparc && myconf -Ud_longdbl - - export BUILD_BZIP2=0 - export BZIP2_INCLUDE=${EROOT}/usr/include - export BZIP2_LIB=${EROOT}/usr/$(get_libdir) - - export BUILD_ZLIB=False - export ZLIB_INCLUDE=${EROOT}/usr/include - export ZLIB_LIB=${EROOT}/usr/$(get_libdir) - - # allow either gdbm to provide ndbm (in <gdbm/ndbm.h>) or db1 - myndbm='U' - mygdbm='U' - mydb='U' - if use gdbm ; then - mygdbm='D' - if use berkdb ; then - myndbm='D' - fi - fi - if use berkdb ; then - mydb='D' - has_version '=sys-libs/db-1*' && myndbm='D' - fi - - myconf "-${myndbm}i_ndbm" "-${mygdbm}i_gdbm" "-${mydb}i_db" - - if use alpha && [[ "$(tc-getCC)" = "ccc" ]] ; then - ewarn "Perl will not be built with berkdb support, use gcc if you needed it..." - myconf -Ui_db -Ui_ndbm - fi - - use ithreads && myconf -Dusethreads - - if use debug ; then - append-cflags "-g" - myconf -DDEBUGGING - elif [[ ${CFLAGS} == *-g* ]] ; then - myconf -DDEBUGGING=-g - else - myconf -DDEBUGGING=none - fi - - # Autodiscover all old version directories, some of them will even be newer - # if you downgrade - if [[ -z ${PERL_OLDVERSEN} ]]; then - PERL_OLDVERSEN="$( - find "${EROOT%/}${PRIV_BASE}" "${EROOT%/}${SITE_BASE}" "${EROOT%/}${VENDOR_BASE}" \ - -maxdepth 1 -mindepth 1 -type d -regex '.*/5[.][0-9]+[.][0-9]+$' \ - -printf "%f " 2>/dev/null )" - fi - # Fixup versions, removing self match, fixing order and dupes - PERL_OLDVERSEN="$( - echo "${PERL_OLDVERSEN}" |\ - tr " " "\n" |\ - grep -vF "${DIST_VERSION%-RC}" |\ - sort -u -nr -t'.' -k1,1 -k2,2 -k3,3 - )" - - # Experts who want a "Pure" install can set PERL_OLDVERSEN to an empty string - if [[ -n "${PERL_OLDVERSEN// }" ]]; then - local inclist="$( - for v in ${PERL_OLDVERSEN}; do - has "${v}" ${PERL_BIN_OLDVERSEN} && echo -n "${v}/${myarch}${mythreading} "; - echo -n "${v} "; - done )" - einfo "This version of perl may partially support modules previously" - einfo "installed in any of the following paths:" - for incpath in ${inclist}; do - [[ -e "${EROOT%/}${VENDOR_BASE}/${incpath}" ]] && einfo " ${EROOT%/}${VENDOR_BASE}/${incpath}" - [[ -e "${EROOT%/}${PRIV_BASE}/${incpath}" ]] && einfo " ${EROO%/T}${PRIV_BASE}/${incpath}" - [[ -e "${EROOT%/}${SITE_BASE}/${incpath}" ]] && einfo " ${EROOT%/}${SITE_BASE}/${incpath}" - done - einfo "This is a temporary measure and you should aim to cleanup these paths" - einfo "via world updates and perl-cleaner" - myconf -Dinc_version_list="${inclist}" - fi - - [[ ${ELIBC} == "FreeBSD" ]] && myconf "-Dlibc=/usr/$(get_libdir)/libc.a" - - # Make sure we can do the final link #523730, need to set deployment - # target to override hardcoded 10.3 which breaks on modern OSX - [[ ${CHOST} == *-darwin* ]] && \ - myconf "-Dld=env MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} $(tc-getCC)" - - # Older macOS with non-Apple GCC chokes on inline in system headers - # using c89 mode as injected by cflags.SH - [[ ${CHOST} == *-darwin* && ${CHOST##*darwin} -le 9 ]] && tc-is-gcc && \ - append-cflags -Dinline=__inline__ - - # fix unaligned access misdetection - # https://rt.perl.org/Public/Bug/Display.html?id=133495 - # https://rt.perl.org/Public/Bug/Display.html?id=133803 - # bug #676062, bug #688432 - use hppa || use sparc || [[ ${CHOST} == sparc*-solaris* ]] || \ - [[ ${CHOST} == armv5tel* ]] \ - && myconf "-Dd_u32align='define'" - - # Prefix: the host system needs not to follow Gentoo multilib stuff, and in - # Prefix itself we don't do multilib either, so make sure perl can find - # something compatible. - if use prefix ; then - # Set a hook to check for each detected library whether it actually works. - export libscheck=" - ( echo 'main(){}' > '${T}'/conftest.c && - $(tc-getCC) -o '${T}'/conftest '${T}'/conftest.c -l\$thislib >/dev/null 2>/dev/null - ) || xxx=/dev/null" - - # Use all host paths that might contain useful stuff, the hook above will filter out bad choices. - local paths="/lib/*-linux-gnu /usr/lib/*-linux-gnu /lib64 /lib/64 /usr/lib64 /usr/lib/64 /lib32 /usr/lib32 /lib /usr/lib" - myconf "-Dlibpth=${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir) ${paths}" - elif [[ $(get_libdir) != "lib" ]] ; then - # We need to use " and not ', as the written config.sh use ' ... - myconf "-Dlibpth=/usr/local/$(get_libdir) /$(get_libdir) /usr/$(get_libdir)" - fi - - # don't try building ODBM, bug #354453 - disabled_extensions="ODBM_File" - - if ! use gdbm ; then - # workaround for bug #157774: don't try building GDBM related stuff with USE="-gdbm" - disabled_extensions="${disabled_extensions} GDBM_File NDBM_File" - fi - - myconf -Dnoextensions="${disabled_extensions}" - - [[ "${PV##*.}" == "9999" ]] && myconf -Dusedevel -Uversiononly - - [[ -n "${EXTRA_ECONF}" ]] && ewarn During Perl build, EXTRA_ECONF=${EXTRA_ECONF} - # allow fiddling via EXTRA_ECONF, bug 558070 - eval "local -a EXTRA_ECONF=(${EXTRA_ECONF})" - - myconf \ - -Duseshrplib \ - -Darchname="${myarch}" \ - -Dcc="$(tc-getCC)" \ - -Doptimize="${CFLAGS}" \ - -Dldflags="${LDFLAGS}" \ - -Dprefix="${EPREFIX}"'/usr' \ - -Dsiteprefix="${EPREFIX}"'/usr/local' \ - -Dvendorprefix="${EPREFIX}"'/usr' \ - -Dscriptdir="${EPREFIX}"'/usr/bin' \ - -Dprivlib="${EPREFIX}${PRIV_LIB}" \ - -Darchlib="${EPREFIX}${ARCH_LIB}" \ - -Dsitelib="${EPREFIX}${SITE_LIB}" \ - -Dsitearch="${EPREFIX}${SITE_ARCH}" \ - -Dvendorlib="${EPREFIX}${VENDOR_LIB}" \ - -Dvendorarch="${EPREFIX}${VENDOR_ARCH}" \ - -Dman1dir="${EPREFIX}"/usr/share/man/man1 \ - -Dman3dir="${EPREFIX}"/usr/share/man/man3 \ - -Dsiteman1dir="${EPREFIX}"/usr/local/man/man1 \ - -Dsiteman3dir="${EPREFIX}"/usr/local/man/man3 \ - -Dvendorman1dir="${EPREFIX}"/usr/share/man/man1 \ - -Dvendorman3dir="${EPREFIX}"/usr/share/man/man3 \ - -Dman1ext='1' \ - -Dman3ext='3pm' \ - -Dlibperl="${LIBPERL}" \ - -Dlocincpth="${EPREFIX}"'/usr/include ' \ - -Dglibpth="${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir)"' ' \ - -Duselargefiles \ - -Dd_semctl_semun \ - -Dcf_by='Gentoo' \ - -Dmyhostname='localhost' \ - -Dperladmin='root@localhost' \ - -Ud_csh \ - -Dsh="${EPREFIX}"/bin/sh \ - -Dtargetsh="${EPREFIX}"/bin/sh \ - -Uusenm \ - "${myconf[@]}" \ - "${EXTRA_ECONF[@]}" - - if tc-is-cross-compiler; then - ./configure \ - --target="${CHOST}" \ - --build="${CBUILD}" \ - -Dinstallprefix='' \ - -Dinstallusrbinperl='undef' \ - -Dusevendorprefix='define' \ - "${myconf[@]}" \ - || die "Unable to configure" - else - sh Configure \ - -des \ - -Dinstallprefix="${EPREFIX}"'/usr' \ - -Dinstallusrbinperl='n' \ - "${myconf[@]}" \ - || die "Unable to configure" - fi -} - -src_test() { - export NO_GENTOO_NETWORK_TESTS=1; - export GENTOO_ASSUME_SANDBOXED="${GENTOO_ASSUME_SANDBOXED:-1}" - export GENTOO_NO_PORTING_TESTS="${GENTOO_NO_PORTING_TESTS:-1}" - if [[ ${EUID} == 0 ]] ; then - ewarn "Test fails with a sandbox error (#328793) if run as root. Skipping tests..." - return 0 - fi - use elibc_uclibc && export MAKEOPTS+=" -j1" - TEST_JOBS="$(makeopts_jobs)" make test_harness || die "test failed" -} - -src_install() { - local i - local coredir="${ARCH_LIB}/CORE" - - emake DESTDIR="${D}" install - - rm -f "${ED}/usr/bin/perl${MY_PV}" - ln -s perl "${ED}"/usr/bin/perl${MY_PV} || die - - if ! tc-is-static-only ; then - dolib.so "${ED}"${coredir}/${LIBPERL} - rm -f "${ED}"${coredir}/${LIBPERL} - ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname ${SHORT_PV}) || die - ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname) || die - - ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/${LIBPERL} || die - ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/libperl$(get_libname ${SHORT_PV}) || die - ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/libperl$(get_libname) || die - fi - - rm -rf "${ED}"/usr/share/man/man3 || die "Unable to remove module man pages" - - # This removes ${D} from Config.pm - for i in $(find "${D}" -iname "Config.pm" ) ; do - einfo "Removing ${D} from ${i}..." - sed -i -e "s:${D}::" "${i}" || die "Sed failed" - done - - dodoc Changes* README AUTHORS - - if use doc ; then - # HTML Documentation - # We expect errors, warnings, and such with the following. - - dodir /usr/share/doc/${PF}/html - LD_LIBRARY_PATH=. ./perl installhtml \ - --podroot='.' \ - --podpath='lib:ext:pod:vms' \ - --recurse \ - --htmldir="${ED}/usr/share/doc/${PF}/html" - fi - - [[ -d ${ED}/usr/local ]] && rm -r "${ED}"/usr/local - - dual_scripts -} - -pkg_preinst() { - check_rebuild -} - -pkg_postinst() { - dual_scripts - - if [[ "${ROOT}" = "/" ]] ; then - local INC DIR file - INC=$(perl -e 'for $line (@INC) { next if $line eq "."; next if $line =~ m/'${SHORT_PV}'|etc|local|perl$/; print "$line\n" }') - einfo "Removing old .ph files" - for DIR in ${INC} ; do - if [[ -d "${DIR}" ]] ; then - for file in $(find "${DIR}" -name "*.ph" -type f ) ; do - rm -f "${file}" - einfo "<< ${file}" - done - fi - done - # Silently remove the now empty dirs - for DIR in ${INC} ; do - if [[ -d "${DIR}" ]] ; then - find "${DIR}" -depth -type d -print0 | xargs -0 -r rmdir &> /dev/null - fi - done - - fi -} - -pkg_postrm() { - dual_scripts -} diff --git a/dev-lang/perl/perl-5.30.2.ebuild b/dev-lang/perl/perl-5.30.2.ebuild deleted file mode 100644 index 197507f1294c..000000000000 --- a/dev-lang/perl/perl-5.30.2.ebuild +++ /dev/null @@ -1,653 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit eutils alternatives flag-o-matic toolchain-funcs multilib multiprocessing - -PATCH_VER=1 -CROSS_VER=1.3.2 -PATCH_BASE="perl-5.30.0-patches-${PATCH_VER}" -PATCH_DEV=dilfridge - -DIST_AUTHOR=SHAY - -# Greatest first, don't include yourself -# Devel point-releases are not ABI-intercompatible, but stable point releases are -# BIN_OLDVERSEN is contains only C-ABI-intercompatible versions -PERL_BIN_OLDVERSEN="5.30.0 5.30.1" - -if [[ "${PV##*.}" == "9999" ]]; then - DIST_VERSION=5.30.0 -else - DIST_VERSION="${PV/_rc/-RC}" -fi -SHORT_PV="${DIST_VERSION%.*}" -# Even numbered major versions are ABI intercompatible -# Odd numbered major versions are not -if [[ $(( ${SHORT_PV#*.} % 2 )) == 1 ]]; then - SUBSLOT="${DIST_VERSION%-RC*}" -else - SUBSLOT="${DIST_VERSION%.*}" -fi -# Used only in tar paths -MY_P="perl-${DIST_VERSION}" -# Used in library paths -MY_PV="${DIST_VERSION%-RC*}" - -DESCRIPTION="Larry Wall's Practical Extraction and Report Language" - -SRC_URI=" - mirror://cpan/src/5.0/${MY_P}.tar.xz - mirror://cpan/authors/id/${DIST_AUTHOR:0:1}/${DIST_AUTHOR:0:2}/${DIST_AUTHOR}/${MY_P}.tar.xz - https://github.com/gentoo-perl/perl-patchset/releases/download/${PATCH_BASE}/${PATCH_BASE}.tar.xz - mirror://gentoo/${PATCH_BASE}.tar.xz - https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${PATCH_BASE}.tar.xz - https://github.com/arsv/perl-cross/releases/download/${CROSS_VER}/perl-cross-${CROSS_VER}.tar.gz -" -HOMEPAGE="https://www.perl.org/" - -LICENSE="|| ( Artistic GPL-1+ )" -SLOT="0/${SUBSLOT}" - -if [[ "${PV##*.}" != "9999" ]] && [[ "${PV/rc//}" == "${PV}" ]] ; then -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -fi - -IUSE="berkdb debug doc gdbm ithreads" - -RDEPEND=" - berkdb? ( sys-libs/db:= ) - gdbm? ( >=sys-libs/gdbm-1.8.3:= ) - app-arch/bzip2 - sys-libs/zlib -" -DEPEND="${RDEPEND}" -PDEPEND=" - >=app-admin/perl-cleaner-2.5 - >=virtual/perl-File-Temp-0.230.400-r2 - >=virtual/perl-Data-Dumper-2.154.0 - virtual/perl-Test-Harness -" -# bug 390719, bug 523624 -# virtual/perl-Test-Harness is here for the bundled ExtUtils::MakeMaker - -S="${WORKDIR}/${MY_P}" - -dual_scripts() { - src_remove_dual perl-core/Archive-Tar 2.320.0 ptar ptardiff ptargrep - src_remove_dual perl-core/CPAN 2.220.0 cpan - src_remove_dual perl-core/Digest-SHA 6.20.0 shasum - src_remove_dual perl-core/Encode 3.10.0 enc2xs piconv - src_remove_dual perl-core/ExtUtils-MakeMaker 7.340.0 instmodsh - src_remove_dual perl-core/ExtUtils-ParseXS 3.400.0 xsubpp - src_remove_dual perl-core/IO-Compress 2.84.0 zipdetails - src_remove_dual perl-core/JSON-PP 4.20.0 json_pp - src_remove_dual perl-core/Module-CoreList 5.202.003.140 corelist - src_remove_dual perl-core/Pod-Parser 1.630.0 pod2usage podchecker podselect - src_remove_dual perl-core/Pod-Perldoc 3.280.100 perldoc - src_remove_dual perl-core/Test-Harness 3.420.0 prove - src_remove_dual perl-core/podlators 4.110.0 pod2man pod2text - src_remove_dual_man perl-core/podlators 4.110.0 /usr/share/man/man1/perlpodstyle.1 -} - -check_rebuild() { - # Fresh install - if [[ -z "${REPLACING_VERSIONS}" ]]; then - return 0; - # Major Upgrade - # doesn't matter if there's multiple copies, it still needs a rebuild - # if the string is anything other than "5.CURRENTMAJOR" - elif [[ "${REPLACING_VERSIONS%.*}" != "${PV%.*}" ]]; then - echo "" - ewarn "UPDATE THE PERL MODULES:" - ewarn "After updating dev-lang/perl the installed Perl modules" - ewarn "have to be re-installed. In most cases, this is done automatically" - ewarn "by the package manager, but subsequent steps are still recommended" - ewarn "to ensure system consistency." - ewarn - ewarn "You should start with a depclean to remove any unused perl dependencies" - ewarn "that may confuse portage in future. Regular depcleans are also encouraged" - ewarn "as part of your regular update cycle, as that will keep perl upgrades working." - ewarn "Recommended: emerge --depclean -va" - ewarn - ewarn "You should then call perl-cleaner to clean up any old files and trigger any" - ewarn "remaining rebuilds portage may have missed." - ewarn "Use: perl-cleaner --all" - return 0; - - # Reinstall w/ USE Change - elif ( use ithreads && ! has_version dev-lang/perl[ithreads] ) || \ - ( ! use ithreads && has_version dev-lang/perl[ithreads] ) || \ - ( use debug && ! has_version dev-lang/perl[debug] ) || \ - ( ! use debug && has_version dev-lang/perl[debug] ) ; then - echo "" - ewarn "TOGGLED USE-FLAGS WARNING:" - ewarn "You changed one of the use-flags ithreads or debug." - ewarn "You must rebuild all perl-modules installed." - ewarn "Use: perl-cleaner --modules ; perl-cleaner --force --libperl" - fi -} - -pkg_setup() { - case ${CHOST} in - *-freebsd*) osname="freebsd" ;; - *-dragonfly*) osname="dragonfly" ;; - *-netbsd*) osname="netbsd" ;; - *-openbsd*) osname="openbsd" ;; - *-darwin*) osname="darwin" ;; - *-solaris*) osname="solaris" ;; - *-interix*) osname="interix" ;; - *-aix*) osname="aix" ;; - *-cygwin*) osname="cygwin" ;; - *) osname="linux" ;; - esac - - myarch="${CHOST%%-*}-${osname}" - if use debug ; then - myarch+="-debug" - fi - if use ithreads ; then - mythreading="-multi" - myarch+="-thread" - fi - - PRIV_BASE="/usr/$(get_libdir)/perl5" - SITE_BASE="/usr/local/$(get_libdir)/perl5" - VENDOR_BASE="/usr/$(get_libdir)/perl5/vendor_perl" - - LIBPERL="libperl$(get_libname ${MY_PV} )" - PRIV_LIB="${PRIV_BASE}/${MY_PV}" - ARCH_LIB="${PRIV_BASE}/${MY_PV}/${myarch}${mythreading}" - SITE_LIB="${SITE_BASE}/${MY_PV}" - SITE_ARCH="${SITE_BASE}/${MY_PV}/${myarch}${mythreading}" - VENDOR_LIB="${VENDOR_BASE}/${MY_PV}" - VENDOR_ARCH="${VENDOR_BASE}/${MY_PV}/${myarch}${mythreading}" - - dual_scripts -} - -src_remove_dual_file() { - local i pkg ver - pkg="$1" - ver="$2" - shift 2 - case "${EBUILD_PHASE:-none}" in - postinst|postrm) - for i in "$@" ; do - alternatives_auto_makesym "${i}" "${i}-[0-9]*" - done - ;; - setup) - for i in "$@" ; do - if [[ -f ${EROOT}${i} && ! -h ${EROOT}${i} ]] ; then - has_version ${pkg} && ewarn "You must reinstall ${pkg} !" - break - fi - done - ;; - install) - for i in "$@" ; do - if ! [[ -f "${ED}"${i} ]] ; then - ewarn "${i} does not exist!" - continue - fi - mv "${ED}"${i}{,-${ver}-${P}} || die - done - ;; - esac -} - -src_remove_dual_man() { - local i pkg ver ff - pkg="$1" - ver="$2" - shift 2 - case "${EBUILD_PHASE:-none}" in - postinst|postrm) - for i in "$@" ; do - ff=`echo "${EROOT}${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}}"*` - ff=${ff##*${i#${i%.[0-9]}}} - alternatives_auto_makesym "${i}${ff}" "${i%.[0-9]}-[0-9]*" - done - ;; - install) - for i in "$@" ; do - if ! [[ -f "${ED}"${i} ]] ; then - ewarn "${i} does not exist!" - continue - fi - mv "${ED}"${i} "${ED}"${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}} || die - done - ;; - esac -} - -src_remove_dual() { - local i pkg ver - pkg="$1" - ver="$2" - shift 2 - for i in "$@" ; do - src_remove_dual_file "${pkg}" "${ver}" "/usr/bin/${i}" - src_remove_dual_man "${pkg}" "${ver}" "/usr/share/man/man1/${i}.1" - done -} - -src_prepare_update_patchlevel_h() { - # Copied and modified from debian: - # Copyright 2011 Niko Tyni - # This program is free software; you can redistribute it and/or modify - # it under the same terms as Perl itself. - local patchdir="${WORKDIR}/patches" - local prefix - local patchoutput="patchlevel-gentoo.h" - - [[ -f ${patchdir}/series ]] || return 0 - -while read patch -do - patchname=$(echo $patch | sed 's/\.diff$//') - < $patchdir/$patch sed -e '/^Subject:/ { N; s/\n / / }' | sed -n -e ' - - # massage the patch headers - s|^Bug: .*https\?://rt\.perl\.org/.*id=\(.*\).*|[perl #\1]|; tprepend; - s|^Bug: .*https\?://rt\.cpan\.org/.*id=\(.*\).*|[rt.cpan.org #\1]|; tprepend; - s|^Bug-Gentoo: ||; tprepend; - s/^\(Subject\|Description\): //; tappend; - s|^Origin: .*http://perl5\.git\.perl\.org/perl\.git/commit\(diff\)\?/\(.......\).*|[\2]|; tprepend; - - # post-process at the end of input - $ { x; - # include the version number in the patchlevel.h description (if available) - s/List packaged patches/&'" for ${PF}(#${PATCH_VER})"'/; - - # escape any backslashes and double quotes - s|\\|\\\\|g; s|"|\\"|g; - - # add a prefix - s|^|\t,"'"$prefix$patchname"' - |; - # newlines away - s/\n/ /g; s/ */ /g; - # add a suffix - s/ *$/"/; p - }; - # stop all processing - d; - # label: append to the hold space - :append H; d; - # label: prepend to the hold space - :prepend x; H; d; - ' -done < "${WORKDIR}"/patches/series > "${S}/${patchoutput}" -echo "${patchoutput}" >> "${S}/MANIFEST" -} - -src_prepare_perlcross() { - cp -a ../perl-cross-${CROSS_VER}/* . || die - - # bug 604072 - MAKEOPTS+=" -j1" - export MAKEOPTS -} -src_prepare_dynamic() { - ln -s ${LIBPERL} libperl$(get_libname ${SHORT_PV}) || die - ln -s ${LIBPERL} libperl$(get_libname ) || die -} - -src_prepare() { - local patch - EPATCH_OPTS+=" -p1" - - if use hppa ; then - epatch "${FILESDIR}/${PN}-5.26.2-hppa.patch" # bug 634162 - fi - - if [[ ${CHOST} == *-solaris* ]] ; then - # do NOT mess with nsl, on Solaris this is always necessary, - # when -lsocket is used e.g. to get h_errno - sed -i '/gentoo\/no-nsl-cl\.patch/d' "${WORKDIR}/patches/series" || die - fi - - einfo "Applying patches from ${PATCH_BASE} ..." - while read patch ; do - EPATCH_SINGLE_MSG=" ${patch} ..." - epatch "${WORKDIR}"/patches/${patch} - done < "${WORKDIR}"/patches/series - - src_prepare_update_patchlevel_h - - tc-is-cross-compiler && src_prepare_perlcross - - tc-is-static-only || src_prepare_dynamic - - if use gdbm; then - sed -i "s:INC => .*:INC => \"-I${EROOT}usr/include/gdbm\":g" \ - ext/NDBM_File/Makefile.PL || die - fi - - # Use errno.h from prefix rather than from host system, bug #645804 - if use prefix && [[ -e "${EPREFIX}"/usr/include/errno.h ]] ; then - sed -i "/my..sysroot/s:'':'${EPREFIX}':" ext/Errno/Errno_pm.PL || die - fi - - if [[ ${CHOST} == *-solaris* ]] ; then - # set a soname, fix linking against just built libperl - sed -i -e 's/netbsd\*/netbsd*|solaris*/' Makefile.SH || die - fi - - if [[ ${CHOST} == *-darwin* ]] ; then - # fix install_name (soname) not to reference $D - sed -i -e '/install_name `pwd/s/`pwd`/\\$(shrpdir)/' Makefile.SH || die - fi - - default -} - -myconf() { - # the myconf array is declared in src_configure - myconf=( "${myconf[@]}" "$@" ) -} - -src_configure() { - declare -a myconf - - export LC_ALL="C" - [[ ${COLUMNS:-1} -ge 1 ]] || unset COLUMNS # bug #394091 - - # Perl has problems compiling with -Os in your flags with glibc - use elibc_uclibc || replace-flags "-Os" "-O2" - - # xlocale.h is going away in glibc-2.26, so it's counterproductive - # if we use it and include it in CORE/perl.h ... Perl builds just - # fine with glibc and locale.h only. - # However, the darwin prefix people have no locale.h ... - use elibc_glibc && myconf -Ui_xlocale - - # This flag makes compiling crash in interesting ways - filter-flags "-malign-double" - - # Generic LTO broken since 5.28, triggers EUMM failures - filter-flags "-flto" - - use sparc && myconf -Ud_longdbl - - export BUILD_BZIP2=0 - export BZIP2_INCLUDE=${EROOT}/usr/include - export BZIP2_LIB=${EROOT}/usr/$(get_libdir) - - export BUILD_ZLIB=False - export ZLIB_INCLUDE=${EROOT}/usr/include - export ZLIB_LIB=${EROOT}/usr/$(get_libdir) - - # allow either gdbm to provide ndbm (in <gdbm/ndbm.h>) or db1 - myndbm='U' - mygdbm='U' - mydb='U' - if use gdbm ; then - mygdbm='D' - if use berkdb ; then - myndbm='D' - fi - fi - if use berkdb ; then - mydb='D' - has_version '=sys-libs/db-1*' && myndbm='D' - fi - - myconf "-${myndbm}i_ndbm" "-${mygdbm}i_gdbm" "-${mydb}i_db" - - if use alpha && [[ "$(tc-getCC)" = "ccc" ]] ; then - ewarn "Perl will not be built with berkdb support, use gcc if you needed it..." - myconf -Ui_db -Ui_ndbm - fi - - use ithreads && myconf -Dusethreads - - if use debug ; then - append-cflags "-g" - myconf -DDEBUGGING - elif [[ ${CFLAGS} == *-g* ]] ; then - myconf -DDEBUGGING=-g - else - myconf -DDEBUGGING=none - fi - - # Autodiscover all old version directories, some of them will even be newer - # if you downgrade - if [[ -z ${PERL_OLDVERSEN} ]]; then - PERL_OLDVERSEN="$( - find "${EROOT%/}${PRIV_BASE}" "${EROOT%/}${SITE_BASE}" "${EROOT%/}${VENDOR_BASE}" \ - -maxdepth 1 -mindepth 1 -type d -regex '.*/5[.][0-9]+[.][0-9]+$' \ - -printf "%f " 2>/dev/null )" - fi - # Fixup versions, removing self match, fixing order and dupes - PERL_OLDVERSEN="$( - echo "${PERL_OLDVERSEN}" |\ - tr " " "\n" |\ - grep -vF "${DIST_VERSION%-RC}" |\ - sort -u -nr -t'.' -k1,1 -k2,2 -k3,3 - )" - - # Experts who want a "Pure" install can set PERL_OLDVERSEN to an empty string - if [[ -n "${PERL_OLDVERSEN// }" ]]; then - local inclist="$( - for v in ${PERL_OLDVERSEN}; do - has "${v}" ${PERL_BIN_OLDVERSEN} && echo -n "${v}/${myarch}${mythreading} "; - echo -n "${v} "; - done )" - einfo "This version of perl may partially support modules previously" - einfo "installed in any of the following paths:" - for incpath in ${inclist}; do - [[ -e "${EROOT%/}${VENDOR_BASE}/${incpath}" ]] && einfo " ${EROOT%/}${VENDOR_BASE}/${incpath}" - [[ -e "${EROOT%/}${PRIV_BASE}/${incpath}" ]] && einfo " ${EROO%/T}${PRIV_BASE}/${incpath}" - [[ -e "${EROOT%/}${SITE_BASE}/${incpath}" ]] && einfo " ${EROOT%/}${SITE_BASE}/${incpath}" - done - einfo "This is a temporary measure and you should aim to cleanup these paths" - einfo "via world updates and perl-cleaner" - myconf -Dinc_version_list="${inclist}" - fi - - [[ ${ELIBC} == "FreeBSD" ]] && myconf "-Dlibc=/usr/$(get_libdir)/libc.a" - - # Make sure we can do the final link #523730, need to set deployment - # target to override hardcoded 10.3 which breaks on modern OSX - [[ ${CHOST} == *-darwin* ]] && \ - myconf "-Dld=env MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} $(tc-getCC)" - - # Older macOS with non-Apple GCC chokes on inline in system headers - # using c89 mode as injected by cflags.SH - [[ ${CHOST} == *-darwin* && ${CHOST##*darwin} -le 9 ]] && tc-is-gcc && \ - append-cflags -Dinline=__inline__ - - # fix unaligned access misdetection - # https://rt.perl.org/Public/Bug/Display.html?id=133495 - # https://rt.perl.org/Public/Bug/Display.html?id=133803 - # bug #676062, bug #688432 - use hppa || use sparc || [[ ${CHOST} == sparc*-solaris* ]] || \ - [[ ${CHOST} == armv5tel* ]] \ - && myconf "-Dd_u32align='define'" - - # Prefix: the host system needs not to follow Gentoo multilib stuff, and in - # Prefix itself we don't do multilib either, so make sure perl can find - # something compatible. - if use prefix ; then - # Set a hook to check for each detected library whether it actually works. - export libscheck=" - ( echo 'main(){}' > '${T}'/conftest.c && - $(tc-getCC) -o '${T}'/conftest '${T}'/conftest.c -l\$thislib >/dev/null 2>/dev/null - ) || xxx=/dev/null" - - # Use all host paths that might contain useful stuff, the hook above will filter out bad choices. - local paths="/lib/*-linux-gnu /usr/lib/*-linux-gnu /lib64 /lib/64 /usr/lib64 /usr/lib/64 /lib32 /usr/lib32 /lib /usr/lib" - myconf "-Dlibpth=${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir) ${paths}" - elif [[ $(get_libdir) != "lib" ]] ; then - # We need to use " and not ', as the written config.sh use ' ... - myconf "-Dlibpth=/usr/local/$(get_libdir) /$(get_libdir) /usr/$(get_libdir)" - fi - - # don't try building ODBM, bug #354453 - disabled_extensions="ODBM_File" - - if ! use gdbm ; then - # workaround for bug #157774: don't try building GDBM related stuff with USE="-gdbm" - disabled_extensions="${disabled_extensions} GDBM_File NDBM_File" - fi - - myconf -Dnoextensions="${disabled_extensions}" - - [[ "${PV##*.}" == "9999" ]] && myconf -Dusedevel -Uversiononly - - [[ -n "${EXTRA_ECONF}" ]] && ewarn During Perl build, EXTRA_ECONF=${EXTRA_ECONF} - # allow fiddling via EXTRA_ECONF, bug 558070 - eval "local -a EXTRA_ECONF=(${EXTRA_ECONF})" - - myconf \ - -Duseshrplib \ - -Darchname="${myarch}" \ - -Dcc="$(tc-getCC)" \ - -Doptimize="${CFLAGS}" \ - -Dldflags="${LDFLAGS}" \ - -Dprefix="${EPREFIX}"'/usr' \ - -Dsiteprefix="${EPREFIX}"'/usr/local' \ - -Dvendorprefix="${EPREFIX}"'/usr' \ - -Dscriptdir="${EPREFIX}"'/usr/bin' \ - -Dprivlib="${EPREFIX}${PRIV_LIB}" \ - -Darchlib="${EPREFIX}${ARCH_LIB}" \ - -Dsitelib="${EPREFIX}${SITE_LIB}" \ - -Dsitearch="${EPREFIX}${SITE_ARCH}" \ - -Dvendorlib="${EPREFIX}${VENDOR_LIB}" \ - -Dvendorarch="${EPREFIX}${VENDOR_ARCH}" \ - -Dman1dir="${EPREFIX}"/usr/share/man/man1 \ - -Dman3dir="${EPREFIX}"/usr/share/man/man3 \ - -Dsiteman1dir="${EPREFIX}"/usr/local/man/man1 \ - -Dsiteman3dir="${EPREFIX}"/usr/local/man/man3 \ - -Dvendorman1dir="${EPREFIX}"/usr/share/man/man1 \ - -Dvendorman3dir="${EPREFIX}"/usr/share/man/man3 \ - -Dman1ext='1' \ - -Dman3ext='3pm' \ - -Dlibperl="${LIBPERL}" \ - -Dlocincpth="${EPREFIX}"'/usr/include ' \ - -Dglibpth="${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir)"' ' \ - -Duselargefiles \ - -Dd_semctl_semun \ - -Dcf_by='Gentoo' \ - -Dmyhostname='localhost' \ - -Dperladmin='root@localhost' \ - -Ud_csh \ - -Dsh="${EPREFIX}"/bin/sh \ - -Dtargetsh="${EPREFIX}"/bin/sh \ - -Uusenm \ - "${myconf[@]}" \ - "${EXTRA_ECONF[@]}" - - if tc-is-cross-compiler; then - ./configure \ - --target="${CHOST}" \ - --build="${CBUILD}" \ - -Dinstallprefix='' \ - -Dinstallusrbinperl='undef' \ - -Dusevendorprefix='define' \ - "${myconf[@]}" \ - || die "Unable to configure" - else - sh Configure \ - -des \ - -Dinstallprefix="${EPREFIX}"'/usr' \ - -Dinstallusrbinperl='n' \ - "${myconf[@]}" \ - || die "Unable to configure" - fi -} - -src_test() { - export NO_GENTOO_NETWORK_TESTS=1; - export GENTOO_ASSUME_SANDBOXED="${GENTOO_ASSUME_SANDBOXED:-1}" - export GENTOO_NO_PORTING_TESTS="${GENTOO_NO_PORTING_TESTS:-1}" - if [[ ${EUID} == 0 ]] ; then - ewarn "Test fails with a sandbox error (#328793) if run as root. Skipping tests..." - return 0 - fi - use elibc_uclibc && export MAKEOPTS+=" -j1" - TEST_JOBS="$(makeopts_jobs)" make test_harness || die "test failed" -} - -src_install() { - local i - local coredir="${ARCH_LIB}/CORE" - - emake DESTDIR="${D}" install - - rm -f "${ED}/usr/bin/perl${MY_PV}" - ln -s perl "${ED}"/usr/bin/perl${MY_PV} || die - - if ! tc-is-static-only ; then - dolib.so "${ED}"${coredir}/${LIBPERL} - rm -f "${ED}"${coredir}/${LIBPERL} - ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname ${SHORT_PV}) || die - ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname) || die - - ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/${LIBPERL} || die - ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/libperl$(get_libname ${SHORT_PV}) || die - ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/libperl$(get_libname) || die - fi - - rm -rf "${ED}"/usr/share/man/man3 || die "Unable to remove module man pages" - - # This removes ${D} from Config.pm - for i in $(find "${D}" -iname "Config.pm" ) ; do - einfo "Removing ${D} from ${i}..." - sed -i -e "s:${D}::" "${i}" || die "Sed failed" - done - - dodoc Changes* README AUTHORS - - if use doc ; then - # HTML Documentation - # We expect errors, warnings, and such with the following. - - dodir /usr/share/doc/${PF}/html - LD_LIBRARY_PATH=. ./perl installhtml \ - --podroot='.' \ - --podpath='lib:ext:pod:vms' \ - --recurse \ - --htmldir="${ED}/usr/share/doc/${PF}/html" - fi - - [[ -d ${ED}/usr/local ]] && rm -r "${ED}"/usr/local - - dual_scripts -} - -pkg_preinst() { - check_rebuild -} - -pkg_postinst() { - dual_scripts - - if [[ "${ROOT}" = "/" ]] ; then - local INC DIR file - INC=$(perl -e 'for $line (@INC) { next if $line eq "."; next if $line =~ m/'${SHORT_PV}'|etc|local|perl$/; print "$line\n" }') - einfo "Removing old .ph files" - for DIR in ${INC} ; do - if [[ -d "${DIR}" ]] ; then - for file in $(find "${DIR}" -name "*.ph" -type f ) ; do - rm -f "${file}" - einfo "<< ${file}" - done - fi - done - # Silently remove the now empty dirs - for DIR in ${INC} ; do - if [[ -d "${DIR}" ]] ; then - find "${DIR}" -depth -type d -print0 | xargs -0 -r rmdir &> /dev/null - fi - done - - fi -} - -pkg_postrm() { - dual_scripts -} diff --git a/dev-lang/perl/perl-5.30.3-r1.ebuild b/dev-lang/perl/perl-5.30.3-r1.ebuild index 9621f081b2f5..235bdb073230 100644 --- a/dev-lang/perl/perl-5.30.3-r1.ebuild +++ b/dev-lang/perl/perl-5.30.3-r1.ebuild @@ -61,6 +61,7 @@ RDEPEND=" gdbm? ( >=sys-libs/gdbm-1.8.3:= ) app-arch/bzip2 sys-libs/zlib + virtual/libcrypt:= " DEPEND="${RDEPEND}" PDEPEND=" diff --git a/dev-lang/perl/perl-5.30.3-r2.ebuild b/dev-lang/perl/perl-5.30.3-r2.ebuild index 18013a31588f..6e6c7bf0efc9 100644 --- a/dev-lang/perl/perl-5.30.3-r2.ebuild +++ b/dev-lang/perl/perl-5.30.3-r2.ebuild @@ -7,8 +7,8 @@ inherit alternatives flag-o-matic toolchain-funcs multilib multiprocessing PATCH_VER=1 CROSS_VER=1.3.4 -PATCH_BASE="perl-5.30.0-patches-${PATCH_VER}" -PATCH_DEV=dilfridge +PATCH_BASE="perl-5.30.3-patches-${PATCH_VER}" +PATCH_DEV=kentnl DIST_AUTHOR=XSAWYERX @@ -41,7 +41,6 @@ SRC_URI=" mirror://cpan/src/5.0/${MY_P}.tar.xz mirror://cpan/authors/id/${DIST_AUTHOR:0:1}/${DIST_AUTHOR:0:2}/${DIST_AUTHOR}/${MY_P}.tar.xz https://github.com/gentoo-perl/perl-patchset/releases/download/${PATCH_BASE}/${PATCH_BASE}.tar.xz - mirror://gentoo/${PATCH_BASE}.tar.xz https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${PATCH_BASE}.tar.xz https://github.com/arsv/perl-cross/releases/download/${CROSS_VER}/perl-cross-${CROSS_VER}.tar.gz " @@ -64,6 +63,7 @@ RDEPEND=" gdbm? ( >=sys-libs/gdbm-1.8.3:= ) app-arch/bzip2 sys-libs/zlib + virtual/libcrypt:= " DEPEND="${RDEPEND}" BDEPEND="${RDEPEND}" @@ -252,55 +252,6 @@ src_remove_dual() { done } -src_prepare_update_patchlevel_h() { - # Copied and modified from debian: - # Copyright 2011 Niko Tyni - # This program is free software; you can redistribute it and/or modify - # it under the same terms as Perl itself. - local patchdir="${WORKDIR}/patches" - local prefix - local patchoutput="patchlevel-gentoo.h" - - [[ -f ${patchdir}/series ]] || return 0 - -while read patch -do - patchname=$(echo $patch | sed 's/\.diff$//') - < $patchdir/$patch sed -e '/^Subject:/ { N; s/\n / / }' | sed -n -e ' - - # massage the patch headers - s|^Bug: .*https\?://rt\.perl\.org/.*id=\(.*\).*|[perl #\1]|; tprepend; - s|^Bug: .*https\?://rt\.cpan\.org/.*id=\(.*\).*|[rt.cpan.org #\1]|; tprepend; - s|^Bug-Gentoo: ||; tprepend; - s/^\(Subject\|Description\): //; tappend; - s|^Origin: .*http://perl5\.git\.perl\.org/perl\.git/commit\(diff\)\?/\(.......\).*|[\2]|; tprepend; - - # post-process at the end of input - $ { x; - # include the version number in the patchlevel.h description (if available) - s/List packaged patches/&'" for ${PF}(#${PATCH_VER})"'/; - - # escape any backslashes and double quotes - s|\\|\\\\|g; s|"|\\"|g; - - # add a prefix - s|^|\t,"'"$prefix$patchname"' - |; - # newlines away - s/\n/ /g; s/ */ /g; - # add a suffix - s/ *$/"/; p - }; - # stop all processing - d; - # label: append to the hold space - :append H; d; - # label: prepend to the hold space - :prepend x; H; d; - ' -done < "${WORKDIR}"/patches/series > "${S}/${patchoutput}" -echo "${patchoutput}" >> "${S}/MANIFEST" -} - src_prepare_perlcross() { cp -a ../perl-cross-${CROSS_VER}/* . || die @@ -313,28 +264,143 @@ src_prepare_dynamic() { ln -s ${LIBPERL} libperl$(get_libname ) || die } +# Copy a patch into the patch series +# add_patch SRC_PATH DEST_NAME ['description'] ['bug'] ['bug'] +# - description is optional, but recommended +# - all arguments after descriptions are bug URLs +add_patch() { + local patchdir="${WORKDIR}/patches" + local infodir="${WORKDIR}/patch-info" + local src_name dest_name desc + src_name="$1" + dest_name="$2" + desc="$3" + shift; shift; shift; + einfo "Adding ${dest_name} to patch bundle" + cp "${src_name}" "${patchdir}/${dest_name}" || die "Couldn't copy ${src_name} to ${dest_name}" + if [[ -n "${desc}" ]]; then + printf "%s" "${desc}" > "${infodir}/${dest_name}.desc" || die "Couldn't write ${dest_name}.desc" + fi + if [[ $# -gt 0 ]]; then + # Note: when $@ is more than one element, this emits a + # line for each element + printf "%s\n" "$@" > "${infodir}/${dest_name}.bugs" || die "Couldn't write ${dest_name}.bugs" + fi +} +# Remove a patch using a glob expr +# eg: +# rm_patch *-darin-Use-CC* +# +rm_patch() { + local patchdir="${WORKDIR}/patches" + local expr="$1" + local patch="$( cd "${patchdir}"; echo $expr )" + einfo "Removing $patch ($expr) from patch bundle" + if [[ -e "${patchdir}/${patch}" ]]; then + rm -f "${patchdir}/${patch}" || die "Can't remove ${patch} ( $expr )" + else + ewarn "No ${expr} found in ${patchdir} to remove" + fi +} +# Yes, this is a reasonable amount of code for something seemingly simple +# but this is far easier to debug when things go wrong, and things went wrong +# multiple times while I was getting the exact number of slashes right, which +# requires circumnavigating both bash and sed escape mechanisms. +c_escape_string() { + local slash dquote + slash='\' + dquote='"' + re_slash="${slash}${slash}" + re_dquote="${slash}${dquote}" + + # Convert \ to \\, + # " to \" + echo "$1" |\ + sed "s|${re_slash}|${re_slash}${re_slash}|g" |\ + sed "s|${re_dquote}|${re_slash}${re_dquote}|g" +} +c_escape_file() { + c_escape_string "$(cat "$1")" +} + +apply_patchdir() { + local patchdir="${WORKDIR}/patches" + local infodir="${WORKDIR}/patch-info" + local patchoutput="patchlevel-gentoo.h" + + # Inject Patch-Level info into description for patchlevel.h patch + # to show in -V + local patch_expr="*List-packaged-patches*" + local patch="$( cd "${patchdir}"; echo $patch_expr )"; + einfo "Injecting patch-level info into ${patch}.desc ( $patch_expr )" + + if [[ -e "${patchdir}/${patch}" ]]; then + printf "List packaged patches for %s(%s) in patchlevel.h" "${PF}" "${PATCH_BASE}"\ + >"${infodir}/${patch}.desc" || die "Can't rewrite ${patch}.desc" + else + eerror "No $patch_expr found in ${patchdir}" + fi + + # Compute patch list to apply + # different name other than PATCHES to stop default + # reapplying it + # Single depth is currently only supported, as artifacts can reside + # from the old layout being multiple-directories, as well as it grossly + # simplifying the patchlevel_gentoo.h generation. + local PERL_PATCHES=($( + find "${patchdir}" -maxdepth 1 -mindepth 1 -type f -printf "%f\n" |\ + grep -E '[.](diff|patch)$' |\ + sort -n + )) + + for patch in "${PERL_PATCHES[@]}"; do + eapply "${WORKDIR}"/patches/${patch} + done + + einfo "Generating $patchoutput" + + # This code creates a header file, each iteration + # creates one-or-more-lines for each entry found in PERL_PATCHES + # and STDOUT is redirected to the .h file + for patch in "${PERL_PATCHES[@]}"; do + local desc_f="${infodir}/${patch}.desc" + local bugs_f="${infodir}/${patch}.bugs" + + printf ',"%s"\n' "${patch}" + if [[ ! -e "${desc_f}" ]]; then + ewarn "No description provided for ${patch} (expected: ${desc_f} )" + else + local desc="$(c_escape_file "${desc_f}")" + printf ',"- %s"\n' "${desc}" + fi + if [[ -e "${bugs_f}" ]]; then + while read -d $'\n' -r line; do + local esc_line="$(c_escape_string "${line}")" + printf ',"- Bug: %s"\n' "${esc_line}" + done <"${bugs_f}" + fi + done > "${S}/${patchoutput}" + printf "%s\n" "${patchoutput}" >> "${S}/MANIFEST" + +} src_prepare() { - local patch + local patchdir="${WORKDIR}/patches" + # Prepare Patch dir with additional patches / remove unwanted patches + # Inject bug/desc entries for perl -V if use hppa ; then - eapply "${FILESDIR}/${PN}-5.26.2-hppa.patch" # bug 634162 + # bug 634162 + add_patch "${FILESDIR}/${PN}-5.26.2-hppa.patch" "100-5.26.2-hppa.patch"\ + "Fix broken miniperl on hppa"\ + "https://bugs.debian.org/869122" "https://bugs.gentoo.org/634162" fi - if [[ ${CHOST} == *-solaris* ]] ; then # do NOT mess with nsl, on Solaris this is always necessary, # when -lsocket is used e.g. to get h_errno - sed -i '/gentoo\/no-nsl-cl\.patch/d' "${WORKDIR}/patches/series" || die + rm_patch "*-nsl-and-cl*" fi - einfo "[ Applying patches from ${PATCH_BASE} ]" - while read patch ; do - eapply "${WORKDIR}"/patches/${patch} - done < "${WORKDIR}"/patches/series - einfo "[ Done with ${PATCH_BASE} ]" - - eapply "${FILESDIR}/${PN}-5.30.3-gentoo-libdirs.patch" - - src_prepare_update_patchlevel_h + apply_patchdir tc-is-cross-compiler && src_prepare_perlcross diff --git a/dev-lang/perl/perl-5.30.2-r1.ebuild b/dev-lang/perl/perl-5.32.0-r1.ebuild index ffe0b0d40871..c4700dfc9a7d 100644 --- a/dev-lang/perl/perl-5.30.2-r1.ebuild +++ b/dev-lang/perl/perl-5.32.0-r1.ebuild @@ -1,21 +1,21 @@ # Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 -inherit eutils alternatives flag-o-matic toolchain-funcs multilib multiprocessing +inherit alternatives flag-o-matic toolchain-funcs multilib multiprocessing PATCH_VER=1 -CROSS_VER=1.3.2 -PATCH_BASE="perl-5.30.0-patches-${PATCH_VER}" -PATCH_DEV=dilfridge +CROSS_VER=1.3.4 +PATCH_BASE="perl-5.32.0-patches-${PATCH_VER}" +PATCH_DEV=kentnl -DIST_AUTHOR=SHAY +DIST_AUTHOR=XSAWYERX # Greatest first, don't include yourself # Devel point-releases are not ABI-intercompatible, but stable point releases are # BIN_OLDVERSEN is contains only C-ABI-intercompatible versions -PERL_BIN_OLDVERSEN="5.30.0 5.30.1" +PERL_BIN_OLDVERSEN="" if [[ "${PV##*.}" == "9999" ]]; then DIST_VERSION=5.30.0 @@ -41,7 +41,6 @@ SRC_URI=" mirror://cpan/src/5.0/${MY_P}.tar.xz mirror://cpan/authors/id/${DIST_AUTHOR:0:1}/${DIST_AUTHOR:0:2}/${DIST_AUTHOR}/${MY_P}.tar.xz https://github.com/gentoo-perl/perl-patchset/releases/download/${PATCH_BASE}/${PATCH_BASE}.tar.xz - mirror://gentoo/${PATCH_BASE}.tar.xz https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${PATCH_BASE}.tar.xz https://github.com/arsv/perl-cross/releases/download/${CROSS_VER}/perl-cross-${CROSS_VER}.tar.gz " @@ -51,7 +50,10 @@ LICENSE="|| ( Artistic GPL-1+ )" SLOT="0/${SUBSLOT}" if [[ "${PV##*.}" != "9999" ]] && [[ "${PV/rc//}" == "${PV}" ]] ; then -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +# SOMEWHAT EXPERIMENTAL CODE, DO NOT USE WITHOUT AN ADULT PRESENT, CHECK CHANGELOG +# FOR DETAILS +KEYWORDS="" +# KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" fi IUSE="berkdb debug doc gdbm ithreads" @@ -61,8 +63,11 @@ RDEPEND=" gdbm? ( >=sys-libs/gdbm-1.8.3:= ) app-arch/bzip2 sys-libs/zlib + virtual/libcrypt:= " DEPEND="${RDEPEND}" +BDEPEND="${RDEPEND}" + PDEPEND=" >=app-admin/perl-cleaner-2.5 >=virtual/perl-File-Temp-0.230.400-r2 @@ -75,20 +80,21 @@ PDEPEND=" S="${WORKDIR}/${MY_P}" dual_scripts() { - src_remove_dual perl-core/Archive-Tar 2.320.0 ptar ptardiff ptargrep - src_remove_dual perl-core/CPAN 2.220.0 cpan + src_remove_dual perl-core/Archive-Tar 2.360.0 ptar ptardiff ptargrep + src_remove_dual perl-core/CPAN 2.270.0 cpan src_remove_dual perl-core/Digest-SHA 6.20.0 shasum - src_remove_dual perl-core/Encode 3.10.0 enc2xs piconv - src_remove_dual perl-core/ExtUtils-MakeMaker 7.340.0 instmodsh + src_remove_dual perl-core/Encode 3.60.0 enc2xs piconv + src_remove_dual perl-core/ExtUtils-MakeMaker 7.440.0 instmodsh src_remove_dual perl-core/ExtUtils-ParseXS 3.400.0 xsubpp - src_remove_dual perl-core/IO-Compress 2.84.0 zipdetails - src_remove_dual perl-core/JSON-PP 4.20.0 json_pp - src_remove_dual perl-core/Module-CoreList 5.202.003.140 corelist - src_remove_dual perl-core/Pod-Parser 1.630.0 pod2usage podchecker podselect + src_remove_dual perl-core/IO-Compress 2.93.0 zipdetails + src_remove_dual perl-core/JSON-PP 4.40.0 json_pp + src_remove_dual perl-core/Module-CoreList 5.202.6.20 corelist + src_remove_dual perl-core/Pod-Checker 1.730.0 podchecker src_remove_dual perl-core/Pod-Perldoc 3.280.100 perldoc + src_remove_dual perl-core/Pod-Usage 1.690.0 pod2usage src_remove_dual perl-core/Test-Harness 3.420.0 prove - src_remove_dual perl-core/podlators 4.110.0 pod2man pod2text - src_remove_dual_man perl-core/podlators 4.110.0 /usr/share/man/man1/perlpodstyle.1 + src_remove_dual perl-core/podlators 4.140.0 pod2man pod2text + src_remove_dual_man perl-core/podlators 4.140.0 /usr/share/man/man1/perlpodstyle.1 } check_rebuild() { @@ -157,12 +163,25 @@ pkg_setup() { VENDOR_BASE="/usr/$(get_libdir)/perl5/vendor_perl" LIBPERL="libperl$(get_libname ${MY_PV} )" - PRIV_LIB="${PRIV_BASE}/${MY_PV}" - ARCH_LIB="${PRIV_BASE}/${MY_PV}/${myarch}${mythreading}" - SITE_LIB="${SITE_BASE}/${MY_PV}" - SITE_ARCH="${SITE_BASE}/${MY_PV}/${myarch}${mythreading}" - VENDOR_LIB="${VENDOR_BASE}/${MY_PV}" - VENDOR_ARCH="${VENDOR_BASE}/${MY_PV}/${myarch}${mythreading}" + + # This ENV var tells perl to build with a directory like "5.30" + # regardless of its patch version. This is for experts only + # at this point. + if [[ -z "${PERL_SINGLE_SLOT}" ]]; then + PRIV_LIB="${PRIV_BASE}/${MY_PV}" + ARCH_LIB="${PRIV_BASE}/${MY_PV}/${myarch}${mythreading}" + SITE_LIB="${SITE_BASE}/${MY_PV}" + SITE_ARCH="${SITE_BASE}/${MY_PV}/${myarch}${mythreading}" + VENDOR_LIB="${VENDOR_BASE}/${MY_PV}" + VENDOR_ARCH="${VENDOR_BASE}/${MY_PV}/${myarch}${mythreading}" + else + PRIV_LIB="${PRIV_BASE}/${SUBSLOT}" + ARCH_LIB="${PRIV_BASE}/${SUBSLOT}/${myarch}${mythreading}" + SITE_LIB="${SITE_BASE}/${SUBSLOT}" + SITE_ARCH="${SITE_BASE}/${SUBSLOT}/${myarch}${mythreading}" + VENDOR_LIB="${VENDOR_BASE}/${SUBSLOT}" + VENDOR_ARCH="${VENDOR_BASE}/${SUBSLOT}/${myarch}${mythreading}" + fi dual_scripts } @@ -234,55 +253,6 @@ src_remove_dual() { done } -src_prepare_update_patchlevel_h() { - # Copied and modified from debian: - # Copyright 2011 Niko Tyni - # This program is free software; you can redistribute it and/or modify - # it under the same terms as Perl itself. - local patchdir="${WORKDIR}/patches" - local prefix - local patchoutput="patchlevel-gentoo.h" - - [[ -f ${patchdir}/series ]] || return 0 - -while read patch -do - patchname=$(echo $patch | sed 's/\.diff$//') - < $patchdir/$patch sed -e '/^Subject:/ { N; s/\n / / }' | sed -n -e ' - - # massage the patch headers - s|^Bug: .*https\?://rt\.perl\.org/.*id=\(.*\).*|[perl #\1]|; tprepend; - s|^Bug: .*https\?://rt\.cpan\.org/.*id=\(.*\).*|[rt.cpan.org #\1]|; tprepend; - s|^Bug-Gentoo: ||; tprepend; - s/^\(Subject\|Description\): //; tappend; - s|^Origin: .*http://perl5\.git\.perl\.org/perl\.git/commit\(diff\)\?/\(.......\).*|[\2]|; tprepend; - - # post-process at the end of input - $ { x; - # include the version number in the patchlevel.h description (if available) - s/List packaged patches/&'" for ${PF}(#${PATCH_VER})"'/; - - # escape any backslashes and double quotes - s|\\|\\\\|g; s|"|\\"|g; - - # add a prefix - s|^|\t,"'"$prefix$patchname"' - |; - # newlines away - s/\n/ /g; s/ */ /g; - # add a suffix - s/ *$/"/; p - }; - # stop all processing - d; - # label: append to the hold space - :append H; d; - # label: prepend to the hold space - :prepend x; H; d; - ' -done < "${WORKDIR}"/patches/series > "${S}/${patchoutput}" -echo "${patchoutput}" >> "${S}/MANIFEST" -} - src_prepare_perlcross() { cp -a ../perl-cross-${CROSS_VER}/* . || die @@ -295,34 +265,150 @@ src_prepare_dynamic() { ln -s ${LIBPERL} libperl$(get_libname ) || die } +# Copy a patch into the patch series +# add_patch SRC_PATH DEST_NAME ['description'] ['bug'] ['bug'] +# - description is optional, but recommended +# - all arguments after descriptions are bug URLs +add_patch() { + local patchdir="${WORKDIR}/patches" + local infodir="${WORKDIR}/patch-info" + local src_name dest_name desc + src_name="$1" + dest_name="$2" + desc="$3" + shift; shift; shift; + einfo "Adding ${dest_name} to patch bundle" + cp "${src_name}" "${patchdir}/${dest_name}" || die "Couldn't copy ${src_name} to ${dest_name}" + if [[ -n "${desc}" ]]; then + printf "%s" "${desc}" > "${infodir}/${dest_name}.desc" || die "Couldn't write ${dest_name}.desc" + fi + if [[ $# -gt 0 ]]; then + # Note: when $@ is more than one element, this emits a + # line for each element + printf "%s\n" "$@" > "${infodir}/${dest_name}.bugs" || die "Couldn't write ${dest_name}.bugs" + fi +} +# Remove a patch using a glob expr +# eg: +# rm_patch *-darin-Use-CC* +# +rm_patch() { + local patchdir="${WORKDIR}/patches" + local expr="$1" + local patch="$( cd "${patchdir}"; echo $expr )" + einfo "Removing $patch ($expr) from patch bundle" + if [[ -e "${patchdir}/${patch}" ]]; then + rm -f "${patchdir}/${patch}" || die "Can't remove ${patch} ( $expr )" + else + ewarn "No ${expr} found in ${patchdir} to remove" + fi +} +# Yes, this is a reasonable amount of code for something seemingly simple +# but this is far easier to debug when things go wrong, and things went wrong +# multiple times while I was getting the exact number of slashes right, which +# requires circumnavigating both bash and sed escape mechanisms. +c_escape_string() { + local slash dquote + slash='\' + dquote='"' + re_slash="${slash}${slash}" + re_dquote="${slash}${dquote}" + + # Convert \ to \\, + # " to \" + echo "$1" |\ + sed "s|${re_slash}|${re_slash}${re_slash}|g" |\ + sed "s|${re_dquote}|${re_slash}${re_dquote}|g" +} +c_escape_file() { + c_escape_string "$(cat "$1")" +} + +apply_patchdir() { + local patchdir="${WORKDIR}/patches" + local infodir="${WORKDIR}/patch-info" + local patchoutput="patchlevel-gentoo.h" + + # Inject Patch-Level info into description for patchlevel.h patch + # to show in -V + local patch_expr="*List-packaged-patches*" + local patch="$( cd "${patchdir}"; echo $patch_expr )"; + einfo "Injecting patch-level info into ${patch}.desc ( $patch_expr )" + + if [[ -e "${patchdir}/${patch}" ]]; then + printf "List packaged patches for %s(%s) in patchlevel.h" "${PF}" "${PATCH_BASE}"\ + >"${infodir}/${patch}.desc" || die "Can't rewrite ${patch}.desc" + else + eerror "No $patch_expr found in ${patchdir}" + fi + + # Compute patch list to apply + # different name other than PATCHES to stop default + # reapplying it + # Single depth is currently only supported, as artifacts can reside + # from the old layout being multiple-directories, as well as it grossly + # simplifying the patchlevel_gentoo.h generation. + local PERL_PATCHES=($( + find "${patchdir}" -maxdepth 1 -mindepth 1 -type f -printf "%f\n" |\ + grep -E '[.](diff|patch)$' |\ + sort -n + )) + + for patch in "${PERL_PATCHES[@]}"; do + eapply "${WORKDIR}"/patches/${patch} + done + + einfo "Generating $patchoutput" + + # This code creates a header file, each iteration + # creates one-or-more-lines for each entry found in PERL_PATCHES + # and STDOUT is redirected to the .h file + for patch in "${PERL_PATCHES[@]}"; do + local desc_f="${infodir}/${patch}.desc" + local bugs_f="${infodir}/${patch}.bugs" + + printf ',"%s"\n' "${patch}" + if [[ ! -e "${desc_f}" ]]; then + ewarn "No description provided for ${patch} (expected: ${desc_f} )" + else + local desc="$(c_escape_file "${desc_f}")" + printf ',"- %s"\n' "${desc}" + fi + if [[ -e "${bugs_f}" ]]; then + while read -d $'\n' -r line; do + local esc_line="$(c_escape_string "${line}")" + printf ',"- Bug: %s"\n' "${esc_line}" + done <"${bugs_f}" + fi + done > "${S}/${patchoutput}" + printf "%s\n" "${patchoutput}" >> "${S}/MANIFEST" + +} src_prepare() { - local patch - EPATCH_OPTS+=" -p1" + local patchdir="${WORKDIR}/patches" + # Prepare Patch dir with additional patches / remove unwanted patches + # Inject bug/desc entries for perl -V if use hppa ; then - epatch "${FILESDIR}/${PN}-5.26.2-hppa.patch" # bug 634162 + # bug 634162 + add_patch "${FILESDIR}/${PN}-5.26.2-hppa.patch" "100-5.26.2-hppa.patch"\ + "Fix broken miniperl on hppa"\ + "https://bugs.debian.org/869122" "https://bugs.gentoo.org/634162" fi - if [[ ${CHOST} == *-solaris* ]] ; then # do NOT mess with nsl, on Solaris this is always necessary, # when -lsocket is used e.g. to get h_errno - sed -i '/gentoo\/no-nsl-cl\.patch/d' "${WORKDIR}/patches/series" || die + rm_patch "*-nsl-and-cl*" fi - einfo "Applying patches from ${PATCH_BASE} ..." - while read patch ; do - EPATCH_SINGLE_MSG=" ${patch} ..." - epatch "${WORKDIR}"/patches/${patch} - done < "${WORKDIR}"/patches/series - - src_prepare_update_patchlevel_h + apply_patchdir tc-is-cross-compiler && src_prepare_perlcross tc-is-static-only || src_prepare_dynamic if use gdbm; then - sed -i "s:INC => .*:INC => \"-I${EROOT}usr/include/gdbm\":g" \ + sed -i "s:INC => .*:INC => \"-I${EROOT}/usr/include/gdbm\":g" \ ext/NDBM_File/Makefile.PL || die fi @@ -349,6 +435,90 @@ myconf() { myconf=( "${myconf[@]}" "$@" ) } +# Outputs a list of versions which have been seen in any of the +# primary perl @INC prefix paths, such as: +# /usr/lib64/perl5/<NUMBER> +# /usr/local/lib64/perl5/<NUMBER> +# /usr/lib64/perl5/vendor_perl/<NUMBER> +# +# All values of NUMBER must be like "5.x.y", unless PERL_SUPPORT_SINGLE_SLOT +# is enabled, where it will also allow numbers like "5.x" +# +# PERL_SUPPORT_SINGLE_SLOT should only be used to transition *away* from PERL_SINGLE_SLOT +# if you used that. +find_candidate_inc_versions() { + local regex='.*/5[.][0-9]+[.][0-9]+$'; + if [[ ! -z "${PERL_SUPPORT_SINGLE_SLOT}" || ! -z "${PERL_SINGLE_SLOT}" ]]; then + regex='.*/5[.][0-9]+\([.][0-9]+\|\)$' + fi + local dirs=( + "${EROOT}${PRIV_BASE}" + "${EROOT}${SITE_BASE}" + "${EROOT}${VENDOR_BASE}" + ) + for dir in "${dirs[@]}"; do + if [[ ! -e "${dir}" ]]; then + continue + fi + # Without access to readdir() on these dirs, find will not be able + # to reveal any @INC directories inside them, and will subsequently prune + # them from the built perl's @INC support, breaking our compatiblity options + # entirely. + if [[ ! -r "${dir}" || ! -x "${dir}" ]]; then + eerror "Bad permissions on ${dir}, this will probably break things" + eerror "Ensure ${dir} is +rx for at least uid=$EUID" + eerror "Recommended permission is +rx for all" + eerror "> chmod o+rx ${dir}" + fi + done + einfo "Scanning for old @INC dirs matching '$regex' in: ${dirs[*]}" + find "${dirs[@]}" -maxdepth 1 -mindepth 1 -type d -regex "${regex}" -printf "%f " 2>/dev/null +} +# Sort versions passed versiony-ly, remove self-version if present +# dedup. Takes each version as an argument +sanitize_inc_versions() { + local vexclude="${DIST_VERSION%-RC}" + if [[ ! -z "${PERL_SINGLE_SLOT}" ]]; then + vexclude="${SUBSLOT}" + fi + einfo "Normalizing/Sorting candidate list: $*" + einfo " to remove '${vexclude}'" + # Note, general numeric sort has to be used + # for the last component, or unique will convert + # 5.30.0 + 5.30 into just 5.30 + printf "%s\n" "$@" |\ + grep -vxF "${vexclude}" |\ + sort -u -nr -t'.' -k1,1rn -k2,2rn -k3,3rg +} + +versions_to_inclist() { + local oldv="${PERL_BIN_OLDVERSEN}" + if [[ ! -z "${PERL_SINGLE_SLOT}" ]]; then + oldv="${DIST_VERSION%-RC} ${PERL_BIN_OLDVERSEN}" + fi + for v; do + has "${v}" ${oldv} && echo -n "${v}/${myarch}${mythreading}/ "; + echo -n "${v}/ "; + done +} +versions_to_gentoolibdirs() { + local oldv="${PERL_BIN_OLDVERSEN}" + local root + local v + if [[ ! -z "${PERL_SINGLE_SLOT}" ]]; then + oldv="${DIST_VERSION%-RC} ${PERL_BIN_OLDVERSEN}" + fi + for v; do + for root in "${PRIV_BASE}" "${VENDOR_BASE}" "${SITE_BASE}"; do + local fullpath="${EROOT}${root}/${v}" + if [[ -e "${fullpath}" ]]; then + has "${v}" ${oldv} && printf "%s:" "${fullpath}/${myarch}${mythreading}"; + printf "%s:" "${fullpath}" + fi + done + done +} + src_configure() { declare -a myconf @@ -416,36 +586,26 @@ src_configure() { # Autodiscover all old version directories, some of them will even be newer # if you downgrade if [[ -z ${PERL_OLDVERSEN} ]]; then - PERL_OLDVERSEN="$( - find "${EROOT%/}${PRIV_BASE}" "${EROOT%/}${SITE_BASE}" "${EROOT%/}${VENDOR_BASE}" \ - -maxdepth 1 -mindepth 1 -type d -regex '.*/5[.][0-9]+[.][0-9]+$' \ - -printf "%f " 2>/dev/null )" + PERL_OLDVERSEN="$( find_candidate_inc_versions )" fi + # Fixup versions, removing self match, fixing order and dupes - PERL_OLDVERSEN="$( - echo "${PERL_OLDVERSEN}" |\ - tr " " "\n" |\ - grep -vF "${DIST_VERSION%-RC}" |\ - sort -u -nr -t'.' -k1,1 -k2,2 -k3,3 - )" + PERL_OLDVERSEN="$( sanitize_inc_versions ${PERL_OLDVERSEN} )" # Experts who want a "Pure" install can set PERL_OLDVERSEN to an empty string if [[ -n "${PERL_OLDVERSEN// }" ]]; then - local inclist="$( - for v in ${PERL_OLDVERSEN}; do - has "${v}" ${PERL_BIN_OLDVERSEN} && echo -n "${v}/${myarch}${mythreading} "; - echo -n "${v} "; - done )" + local inclist="$( versions_to_inclist ${PERL_OLDVERSEN} )" einfo "This version of perl may partially support modules previously" einfo "installed in any of the following paths:" for incpath in ${inclist}; do - [[ -e "${EROOT%/}${VENDOR_BASE}/${incpath}" ]] && einfo " ${EROOT%/}${VENDOR_BASE}/${incpath}" - [[ -e "${EROOT%/}${PRIV_BASE}/${incpath}" ]] && einfo " ${EROO%/T}${PRIV_BASE}/${incpath}" - [[ -e "${EROOT%/}${SITE_BASE}/${incpath}" ]] && einfo " ${EROOT%/}${SITE_BASE}/${incpath}" + [[ -e "${EROOT}${VENDOR_BASE}/${incpath}" ]] && einfo " ${EROOT}${VENDOR_BASE}/${incpath}" + [[ -e "${EROOT}${PRIV_BASE}/${incpath}" ]] && einfo " ${EROOT}${PRIV_BASE}/${incpath}" + [[ -e "${EROOT}${SITE_BASE}/${incpath}" ]] && einfo " ${EROOT}${SITE_BASE}/${incpath}" done einfo "This is a temporary measure and you should aim to cleanup these paths" einfo "via world updates and perl-cleaner" - myconf -Dinc_version_list="${inclist}" + # myconf -Dinc_version_list="${inclist}" + myconf -Dgentoolibdirs="$( versions_to_gentoolibdirs ${PERL_OLDVERSEN} )" fi [[ ${ELIBC} == "FreeBSD" ]] && myconf "-Dlibc=/usr/$(get_libdir)/libc.a" @@ -460,14 +620,6 @@ src_configure() { [[ ${CHOST} == *-darwin* && ${CHOST##*darwin} -le 9 ]] && tc-is-gcc && \ append-cflags -Dinline=__inline__ - # fix unaligned access misdetection - # https://rt.perl.org/Public/Bug/Display.html?id=133495 - # https://rt.perl.org/Public/Bug/Display.html?id=133803 - # bug #676062, bug #688432 - use hppa || use sparc || [[ ${CHOST} == sparc*-solaris* ]] || \ - [[ ${CHOST} == armv5tel* ]] \ - && myconf "-Dd_u32align='define'" - # Prefix: the host system needs not to follow Gentoo multilib stuff, and in # Prefix itself we don't do multilib either, so make sure perl can find # something compatible. @@ -502,11 +654,16 @@ src_configure() { # allow fiddling via EXTRA_ECONF, bug 558070 eval "local -a EXTRA_ECONF=(${EXTRA_ECONF})" + # setting -Dld= to tc-getLD breaks perl and all perl things + # https://github.com/Perl/perl5/issues/17791#issuecomment-630145202 myconf \ -Duseshrplib \ -Darchname="${myarch}" \ -Dcc="$(tc-getCC)" \ -Dar="$(tc-getAR)" \ + -Dnm="$(tc-getNM)" \ + -Dcpp="$(tc-getCPP)" \ + -Dranlib="$(tc-getRANLIB)" \ -Doptimize="${CFLAGS}" \ -Dldflags="${LDFLAGS}" \ -Dprefix="${EPREFIX}"'/usr' \ diff --git a/dev-lang/perl/perl-5.30.2-r2.ebuild b/dev-lang/perl/perl-5.32.0.ebuild index 10506f7bf47c..d5ab04c97359 100644 --- a/dev-lang/perl/perl-5.30.2-r2.ebuild +++ b/dev-lang/perl/perl-5.32.0.ebuild @@ -6,16 +6,16 @@ EAPI=6 inherit eutils alternatives flag-o-matic toolchain-funcs multilib multiprocessing PATCH_VER=1 -CROSS_VER=1.3.2 +CROSS_VER=1.3.4 PATCH_BASE="perl-5.30.0-patches-${PATCH_VER}" PATCH_DEV=dilfridge -DIST_AUTHOR=SHAY +DIST_AUTHOR=XSAWYERX # Greatest first, don't include yourself # Devel point-releases are not ABI-intercompatible, but stable point releases are # BIN_OLDVERSEN is contains only C-ABI-intercompatible versions -PERL_BIN_OLDVERSEN="5.30.0 5.30.1" +PERL_BIN_OLDVERSEN="" if [[ "${PV##*.}" == "9999" ]]; then DIST_VERSION=5.30.0 @@ -61,6 +61,7 @@ RDEPEND=" gdbm? ( >=sys-libs/gdbm-1.8.3:= ) app-arch/bzip2 sys-libs/zlib + virtual/libcrypt:= " DEPEND="${RDEPEND}" PDEPEND=" @@ -75,20 +76,21 @@ PDEPEND=" S="${WORKDIR}/${MY_P}" dual_scripts() { - src_remove_dual perl-core/Archive-Tar 2.320.0 ptar ptardiff ptargrep - src_remove_dual perl-core/CPAN 2.220.0 cpan + src_remove_dual perl-core/Archive-Tar 2.360.0 ptar ptardiff ptargrep + src_remove_dual perl-core/CPAN 2.270.0 cpan src_remove_dual perl-core/Digest-SHA 6.20.0 shasum - src_remove_dual perl-core/Encode 3.10.0 enc2xs piconv - src_remove_dual perl-core/ExtUtils-MakeMaker 7.340.0 instmodsh + src_remove_dual perl-core/Encode 3.60.0 enc2xs piconv + src_remove_dual perl-core/ExtUtils-MakeMaker 7.440.0 instmodsh src_remove_dual perl-core/ExtUtils-ParseXS 3.400.0 xsubpp - src_remove_dual perl-core/IO-Compress 2.84.0 zipdetails - src_remove_dual perl-core/JSON-PP 4.20.0 json_pp - src_remove_dual perl-core/Module-CoreList 5.202.003.140 corelist - src_remove_dual perl-core/Pod-Parser 1.630.0 pod2usage podchecker podselect + src_remove_dual perl-core/IO-Compress 2.93.0 zipdetails + src_remove_dual perl-core/JSON-PP 4.40.0 json_pp + src_remove_dual perl-core/Module-CoreList 5.202.6.20 corelist + src_remove_dual perl-core/Pod-Checker 1.730.0 podchecker src_remove_dual perl-core/Pod-Perldoc 3.280.100 perldoc + src_remove_dual perl-core/Pod-Usage 1.690.0 pod2usage src_remove_dual perl-core/Test-Harness 3.420.0 prove - src_remove_dual perl-core/podlators 4.110.0 pod2man pod2text - src_remove_dual_man perl-core/podlators 4.110.0 /usr/share/man/man1/perlpodstyle.1 + src_remove_dual perl-core/podlators 4.140.0 pod2man pod2text + src_remove_dual_man perl-core/podlators 4.140.0 /usr/share/man/man1/perlpodstyle.1 } check_rebuild() { @@ -460,14 +462,6 @@ src_configure() { [[ ${CHOST} == *-darwin* && ${CHOST##*darwin} -le 9 ]] && tc-is-gcc && \ append-cflags -Dinline=__inline__ - # fix unaligned access misdetection - # https://rt.perl.org/Public/Bug/Display.html?id=133495 - # https://rt.perl.org/Public/Bug/Display.html?id=133803 - # bug #676062, bug #688432 - use hppa || use sparc || [[ ${CHOST} == sparc*-solaris* ]] || \ - [[ ${CHOST} == armv5tel* ]] \ - && myconf "-Dd_u32align='define'" - # Prefix: the host system needs not to follow Gentoo multilib stuff, and in # Prefix itself we don't do multilib either, so make sure perl can find # something compatible. diff --git a/dev-lang/php/Manifest b/dev-lang/php/Manifest index 4ca821bd799a..6f67f0783889 100644 --- a/dev-lang/php/Manifest +++ b/dev-lang/php/Manifest @@ -5,13 +5,25 @@ AUX php-fpm_at.service 317 BLAKE2B f13fc38fcc0575a8517ee8d07b120efda37eabd235506 AUX php-freetype-2.9.1.patch 7667 BLAKE2B efc8f829bbad11b3e7b654d0882213ecb9aae766060d51f93446a6293a2f607339faba484c7b0b2f9318a5c5442da3c09e25aeda20dbc5e3258bf1009f8625b4 SHA512 0a06189f6fb3513cd2dcf9ddb590360475e2dd9a7aa8b13ab66c389c1ed40ce2361681f017cd3c6219f5b40a0a9d4978e57ca3ee4bacb7657db3285136fd2875 AUX php-iodbc-header-location.patch 481 BLAKE2B 9ea6a5d529dc7a8c78eeee800900372bc14309a05e352b2838da32e1384b61b507fdb623c9400094aa5b637eb1a87da92c72600eff79b18b8989ef90af56a0fa SHA512 86469f657d8807f005c28fd2149770c881add8f243fdfea087956c7987277597fe400a7af23f624f26da270356604717ed9cd04771154d7cf2ffe7237972372b DIST php-7.2.31.tar.xz 12309936 BLAKE2B fc81f41dd4ec8695029bfe1993d76b1fdfe7f16d926f57302b9e85f3acd250967db9b9f0597c47589ae553d5faaaf0266e24b5b64247e017361d991bf96cd4de SHA512 b21c504d0af2c095e4ae5a62c810af96171b927a27ea4694f59555c0d47798d61c3491a92941099cd9c978b3b0f41852ca2cf745e42ee3d9a6d107a5a884c9ee +DIST php-7.2.32.tar.xz 12251152 BLAKE2B ae4cf19c2c61ea149b423248feef31e34fa697e60782e8a4fdf9bee430703e9bd8251e4140042148aa73dfbf4d39d215be498d1273e1c68bf52a14e4126d2e1d SHA512 47e84f9f493951b33625e149291bcde87189ecb28636809b3ec6264ed17e85f842fa40f3a53754f7bf948a5a6963f8773d35f773760c0c2bf21a9dbd0314736e +DIST php-7.2.33.tar.xz 12310624 BLAKE2B 3eca6a2aee79b791abb6b0427496e6041b63800ac1aeea86b4465e9326fdcde5d7a69e6323902b6874f27cf6197b705397381319d0b5ff6f93605e791bf0eb86 SHA512 1c28e741fc6de88a33e1307bc88ba8dddf1ba767ce6eb9c1f0da35482c7d3ee1154831b997fa746340c4b7ec8de9196b21a9b1cf319c8e69eca2c92602ceee4a DIST php-7.3.18.tar.xz 12116280 BLAKE2B 73d82e4a22f29dbeec221ef3109592a40e559238a0093e80e8e10bcd7de64f3bd58dd6f0835ddf3d9c2323fc37d738301b07291ca11a84c70ddced172676bc20 SHA512 e626091c835f6d165ff48ae3be8ddf7a66b0a320c6d77dc98fb73235d560814c180112a9e5478a5b3b6bb01ed99a50f8025fdc3d1ef80cca59e04ac248f9b0bf DIST php-7.3.19.tar.xz 12117968 BLAKE2B 84172d2aad901cdca97a6f4c3405d3f4f25c72053ca09ef8a5c6ef93d35b23ac3a7771ff9f2c4ddd000512fe288f3fb25b17bb023f3fed16735f0d6ea5bda790 SHA512 f37800d9e1bf808ad1099f6190965cc75781e7bf6d2c341a7143aca435abc9974a2987cbfeb8c2b35805c946218343612906fde3cc84b195c2c586945869b760 +DIST php-7.3.20.tar.xz 12118188 BLAKE2B add1e0dcc264cd12ea9ee000becb83c42b2607c0c9ae828994856a183ae94e9a580226559ccfa28dece225ad9a1c6bd4989ada08f09bbc461b33f0b1b30b12ea SHA512 4d035e7420ceb64d912a1936db5d311c06c61d09c9d4665c27fba9709fe45b30d5771bb485fb24393d9ee689a0f7ddcbc577e9ee7a7b31341b0203f1b805b886 +DIST php-7.3.21.tar.xz 12123192 BLAKE2B ff5fca092f6c4e92c009ade9f4bee01ec07686645a4844297cee0518f12b3ebc16a7322b64579d9ee2d3a3f7cd62ed9184d0afbe77dbcf2d24a11139242c88c5 SHA512 fc2b9a40c92a6e79522a49cd025e56c0a52c2c2bd3f7379aaf004ca6b67957cf4ad059c40a5daac45665710abd07962562870430338f700f573856d797df3ff4 DIST php-7.4.6.tar.xz 10284824 BLAKE2B 83bbbb536e48c6ab6ef357283d2f99a0f1825fdbb1867598514dc87cb8a7181298aa1e6d45659b7a4343fdacdacbbfec9e4cca89f85fe53c9e48696e534da710 SHA512 786634d53ed100cc7638e64ca340efdd42405c258638f3f97fcd1816d4f0c643dc8d8b2b0f60d36904343dc8c2af7f9b8e4a652ea66ec2fe324290c72bc09c13 DIST php-7.4.7.tar.xz 10286580 BLAKE2B fb297cc5847012e1d222479e00132c8838cb990a5face43620ced6fb82cabeb544c0de230e24e25ed5449b3050158e836743e514197180b40ebf240ceca45db6 SHA512 5b3ba690e610e0511675f06a10afe9edbcfa90b5b16956d22aab225cdf140b55e5a8a551e7b189d30404981c94c6921b8c4aed00102546cfa38784a719704b80 +DIST php-7.4.8.tar.xz 10281976 BLAKE2B c85dfacd259e78de69348c3af7c02c866622a414cbb78ef5f53aa739bcf150921c272b26f578f18734dc6f566f19f4d890b6a64aabf04ad9e6b53f11757c3b8a SHA512 cfb23eac731a0eabed83908d7c056a123cd9a73ccc091d92b8601366da4cd95ded8623156eaa0458405f23d8bb9dc244d117bd99876f916ef582e3966dc78b44 +DIST php-7.4.9.tar.xz 10289560 BLAKE2B 0fd9d82539a46f7ce58857560f5aeb4be6dfe5f5a05f8b8c55c30d6000d19408b4ecc460c9135736298cdb8312ec958ab8358110b2b265bb8c185f80b1522dc6 SHA512 6179c2d867d6775d7f41785003c36d06ce620e7746ea7e6a4d275264e814a66d465776b47b04e2926ed1228cf58f2c15cdda74faf10372435c74ede7aeb79e18 EBUILD php-7.2.31.ebuild 22650 BLAKE2B 85d53142d43bcd67e568a7424e731a5a2a55872dfa5f5e3ec10673e527357d26d1986c4a61dbf049e17b5a5db7b09fef77424da713953fb3153338e68a79e200 SHA512 7f0454f2dba27d443c729663a338dd0d5c746b572a3ccccde3b19a54ce2cdecda9f98ce1df5ef5c7afede8726234de3c1e1c1fce65bee95ad97ca5ec621abe97 +EBUILD php-7.2.32.ebuild 22650 BLAKE2B 85d53142d43bcd67e568a7424e731a5a2a55872dfa5f5e3ec10673e527357d26d1986c4a61dbf049e17b5a5db7b09fef77424da713953fb3153338e68a79e200 SHA512 7f0454f2dba27d443c729663a338dd0d5c746b572a3ccccde3b19a54ce2cdecda9f98ce1df5ef5c7afede8726234de3c1e1c1fce65bee95ad97ca5ec621abe97 +EBUILD php-7.2.33.ebuild 22652 BLAKE2B 52df49e328ae1335ce5afe8b9e4eb093934aa061f55beb08ce920551e16181a69297519264fea1803750e2873b811468aa0a01d60c38d28efb12eb81ccb2d101 SHA512 e9223322f1bf48d14a30ad1596023b5fc3f105e78b1005d019d9a04942404729e5a77786b8e5db03a97708f24c560a273a5ac1c5bbca86a4a614c8ce156d86e2 EBUILD php-7.3.18.ebuild 22663 BLAKE2B 43f00a48372e83b81e10ddafd965d7aa3a2945c6858d75dc1fbcc4d07a51d22151b02d2e2e50cb91b1e398c77e93adf2eecaecf495453e8c15ae81a70ca323c2 SHA512 ebb57617c9e08b08b717a7458f79c246700aea64b9f407e5c52eede291c7d12a80eb4bedf50a2d7880f2cf73e36391f7db01a40c0622631d15bcdd2e0e8ab64f EBUILD php-7.3.19.ebuild 22671 BLAKE2B 9fbccafac097a447241ed68db51ecf147059b1b55c31c829c7c40e01657916d376801096d8e273a4157435f0b489f776240114160d50c9399d4795ed9f7018d7 SHA512 a9f5c18c1b4667fa1730801877872434a5c146c34941da1a3b6348c7ec1bfbf152041e128faf8d962f77db17e2f94f704bfc67db71838d3f6ac3dfb0a846d4d5 +EBUILD php-7.3.20.ebuild 22663 BLAKE2B 43f00a48372e83b81e10ddafd965d7aa3a2945c6858d75dc1fbcc4d07a51d22151b02d2e2e50cb91b1e398c77e93adf2eecaecf495453e8c15ae81a70ca323c2 SHA512 ebb57617c9e08b08b717a7458f79c246700aea64b9f407e5c52eede291c7d12a80eb4bedf50a2d7880f2cf73e36391f7db01a40c0622631d15bcdd2e0e8ab64f +EBUILD php-7.3.21.ebuild 22665 BLAKE2B e04d562321f6e0726b16fa6291b840f245a5b47c1d9b0b4e4b2502cbf84a36855542f9fa46f781bf4b3584ea29c2604fcef65706ab485af4f6e4836c50745c5b SHA512 8e9f0ad7ebb035c25e23598871e36f16e026889c8eba221d1b56f37bf7af61120f38e2faae5eb7663d75112f9e31076f995c9d7cc69b0737d7816ae0458e3692 EBUILD php-7.4.6.ebuild 21374 BLAKE2B aeb27c63cff434dd9a735631bbeb29a2540546d2416aecdd636e2b6769070615ac148139a3891b708cf6528ac557080c7096dda95d75bfe3812495213126eef3 SHA512 2b67de7efc5dafefc1f95e9b7c22c60bca6b6c2c922857695a5c027929669b9a62068e19784a2059e28e91ff16ad0b47ee691785124bf99ead6dff12239fa4fd EBUILD php-7.4.7.ebuild 21382 BLAKE2B 936caa37281c2b79d2d7550de422c32a0dbf41e2f1530aa5709dfd6a0d92f7c5c6b82ead5b14f27a314df5311dce7c726a6571ecdd9aa497812c0e9e71f397fe SHA512 380075433cbb7d639765fa6907c3006612901b051d48311cabd85d653b8e8105044f703a129b8d90bcfd48a29a8365de3053bad81d9561dafc5c5974d7420082 +EBUILD php-7.4.8-r1.ebuild 21374 BLAKE2B aeb27c63cff434dd9a735631bbeb29a2540546d2416aecdd636e2b6769070615ac148139a3891b708cf6528ac557080c7096dda95d75bfe3812495213126eef3 SHA512 2b67de7efc5dafefc1f95e9b7c22c60bca6b6c2c922857695a5c027929669b9a62068e19784a2059e28e91ff16ad0b47ee691785124bf99ead6dff12239fa4fd +EBUILD php-7.4.9.ebuild 21376 BLAKE2B 2ec6ba462f791444eb57f360642220dcad6a022f7260f3ff2f542cb4ca8b6ebdc4f904172bf9e73588fa068c3b5edf163d1be383d90bf2d00f32a9533d2e90e0 SHA512 bf1d0957579595e9d1e61753f352a82dd22349bcd0586013503f5284859d190d3a2cad00b8dda79b8f4439dcdbd6c99e8dffb25559c75aeae9c3d9df992c53a2 MISC metadata.xml 3216 BLAKE2B 6118c94f2ac3a2f283eb035cbbacb12343476b4ce22594a00cb7ebf063abb106a0ed5557d311127b8c1e2a53263103ded790cd12d20c6b410ab6f7d218d95ed8 SHA512 ffb0b46b30b1add0fc166e3afe1317e70041a0fe849d4c05ceee011c1b5e130fbde3b86eaf876a4c8a2d23fbd7824f95299642b4f60e129436befb00f4b124cc diff --git a/dev-lang/php/php-7.2.32.ebuild b/dev-lang/php/php-7.2.32.ebuild new file mode 100644 index 000000000000..20ab7418c2ad --- /dev/null +++ b/dev-lang/php/php-7.2.32.ebuild @@ -0,0 +1,759 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +inherit flag-o-matic systemd autotools + +DESCRIPTION="The PHP language runtime engine" +HOMEPAGE="https://www.php.net/" +SRC_URI="https://www.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 sparc x86 ~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" + +# SAPIs and SAPI-specific USE flags (cli SAPI is default on): +IUSE="${IUSE} + ${SAPIS/cli/+cli} + threads" + +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 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 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] + fpm? ( acl? ( sys-apps/acl ) ) + apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] ) + argon2? ( app-crypt/argon2:= ) + 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 ) ) + coverage? ( dev-util/lcov ) + curl? ( >=net-misc/curl-7.10.5 ) + enchant? ( <app-text/enchant-2.0:0 ) + firebird? ( dev-db/firebird ) + gd? ( >=virtual/jpeg-0-r3:0 media-libs/libpng:0= sys-libs/zlib ) + gdbm? ( >=sys-libs/gdbm-1.8.0:0= ) + gmp? ( dev-libs/gmp:0= ) + iconv? ( virtual/libiconv ) + imap? ( >=virtual/imap-c-client-2[kerberos=,ssl=] ) + intl? ( dev-libs/icu:= ) + 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? ( dev-libs/libedit ) + lmdb? ( dev-db/lmdb:= ) + mssql? ( dev-db/freetds[mssql] ) + 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 ) + session-mm? ( dev-libs/mm ) + 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/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 ) + webp? ( media-libs/libwebp:0= ) + 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 ) + xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 ) + zip? ( sys-libs/zlib:0= ) + zip-encryption? ( >=dev-libs/libzip-1.2.0:= ) + zlib? ( sys-libs/zlib:0= ) +" + +RDEPEND="${COMMON_DEPEND} + virtual/mta + fpm? ( + selinux? ( sec-policy/selinux-phpfpm ) + systemd? ( sys-apps/systemd ) )" + +# Bison isn't actually needed when building from a release tarball +# However, the configure script will warn if it's absent or if you +# have an incompatible version installed. See bug 593278. +DEPEND="${COMMON_DEPEND} + app-arch/xz-utils + >=sys-devel/bison-3.0.1" + +BDEPEND="virtual/pkgconfig" + +# Without USE=readline or libedit, the interactive "php -a" CLI will hang. +REQUIRED_USE=" + || ( cli cgi fpm apache2 embed phpdbg ) + cli? ( ^^ ( readline libedit ) ) + truetype? ( gd zlib ) + webp? ( 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 ) + qdbm? ( !gdbm ) + readline? ( !libedit ) + recode? ( !imap !mysqli !mysql ) + session-mm? ( session !threads ) + mysql? ( hash || ( mysqli pdo ) ) + mysqli? ( hash ) + zip-encryption? ( zip ) +" + +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}/php-freetype-2.9.1.patch" + "${FILESDIR}/php-7.2.13-intl-use-icu-namespace.patch" +) + +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 + + 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 "../ext/opcache.ini" \ + "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini" + fi + + # SAPI-specific handling + if [[ "${sapi}" == "fpm" ]] ; then + einfo "Installing FPM config files php-fpm.conf and www.conf" + insinto "${PHP_INI_DIR#${EPREFIX}}" + doins sapi/fpm/php-fpm.conf + insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d" + doins sapi/fpm/www.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() { + default + + # In php-7.x, the FPM pool configuration files have been split off + # of the main config. By default the pool config files go in + # e.g. /etc/php-fpm.d, which isn't slotted. So here we move the + # include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later + # we'll install the pool configuration file "www.conf" there. + php_set_ini_dir fpm + 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() { + 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_with argon2 password-argon2 "${EPREFIX}/usr") + $(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 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 sodium sodium "${EPREFIX}/usr") + $(use_with sqlite sqlite3 "${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 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 || use lmdb || use tokyocabinet ; 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") + $(use_with lmdb lmdb "${EPREFIX}/usr") + ) + + # Support for the GD graphics library + our_conf+=( + $(use_with truetype freetype-dir "${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") + ) + if use webp; then + our_conf+=( --with-webp-dir="${EPREFIX}/usr" ) + fi + # 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" + + 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 "${EPREFIX}/usr") + $(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 session-mm 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 + # --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 + # 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 + + local one_sapi + local sapi + 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|phpdbg) + 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 + + local sapi + 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="",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 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/libphp${PHP_MV}$(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" + # Install the "phar" archive utility. + if use phar ; then + emake INSTALL_ROOT="${D}" install-pharcmd + dosym "..${dest#/usr}/bin/phar" "/usr/bin/phar${SLOT}" + fi + ;; + cgi) + source="sapi/cgi/php-cgi" + ;; + fpm) + source="sapi/fpm/php-fpm" + ;; + embed) + source="libs/libphp${PHP_MV}$(get_libname)" + ;; + phpdbg) + source="sapi/phpdbg/phpdbg" + ;; + *) + die "unhandled sapi in src_install" + ;; + esac + + if [[ "${source}" == *"$(get_libname)" ]]; then + dolib.so "${source}" + else + dobin "${source}" + local name="$(basename ${source})" + dosym "..${dest#/usr}/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-build/cgi/sapi/cgi/php-cgi" ]] ; then + export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" + fi + + if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then + export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" + 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 + local m + 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-7.2.33.ebuild b/dev-lang/php/php-7.2.33.ebuild new file mode 100644 index 000000000000..4597b1b8968b --- /dev/null +++ b/dev-lang/php/php-7.2.33.ebuild @@ -0,0 +1,759 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +inherit flag-o-matic systemd autotools + +DESCRIPTION="The PHP language runtime engine" +HOMEPAGE="https://www.php.net/" +SRC_URI="https://www.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 sparc x86 ~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" + +# SAPIs and SAPI-specific USE flags (cli SAPI is default on): +IUSE="${IUSE} + ${SAPIS/cli/+cli} + threads" + +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 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 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] + fpm? ( acl? ( sys-apps/acl ) ) + apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] ) + argon2? ( app-crypt/argon2:= ) + 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 ) ) + coverage? ( dev-util/lcov ) + curl? ( >=net-misc/curl-7.10.5 ) + enchant? ( <app-text/enchant-2.0:0 ) + firebird? ( dev-db/firebird ) + gd? ( >=virtual/jpeg-0-r3:0 media-libs/libpng:0= sys-libs/zlib ) + gdbm? ( >=sys-libs/gdbm-1.8.0:0= ) + gmp? ( dev-libs/gmp:0= ) + iconv? ( virtual/libiconv ) + imap? ( >=virtual/imap-c-client-2[kerberos=,ssl=] ) + intl? ( dev-libs/icu:= ) + 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? ( dev-libs/libedit ) + lmdb? ( dev-db/lmdb:= ) + mssql? ( dev-db/freetds[mssql] ) + 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 ) + session-mm? ( dev-libs/mm ) + 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/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 ) + webp? ( media-libs/libwebp:0= ) + 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 ) + xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 ) + zip? ( sys-libs/zlib:0= ) + zip-encryption? ( >=dev-libs/libzip-1.2.0:= ) + zlib? ( sys-libs/zlib:0= ) +" + +RDEPEND="${COMMON_DEPEND} + virtual/mta + fpm? ( + selinux? ( sec-policy/selinux-phpfpm ) + systemd? ( sys-apps/systemd ) )" + +# Bison isn't actually needed when building from a release tarball +# However, the configure script will warn if it's absent or if you +# have an incompatible version installed. See bug 593278. +DEPEND="${COMMON_DEPEND} + app-arch/xz-utils + >=sys-devel/bison-3.0.1" + +BDEPEND="virtual/pkgconfig" + +# Without USE=readline or libedit, the interactive "php -a" CLI will hang. +REQUIRED_USE=" + || ( cli cgi fpm apache2 embed phpdbg ) + cli? ( ^^ ( readline libedit ) ) + truetype? ( gd zlib ) + webp? ( 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 ) + qdbm? ( !gdbm ) + readline? ( !libedit ) + recode? ( !imap !mysqli !mysql ) + session-mm? ( session !threads ) + mysql? ( hash || ( mysqli pdo ) ) + mysqli? ( hash ) + zip-encryption? ( zip ) +" + +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}/php-freetype-2.9.1.patch" + "${FILESDIR}/php-7.2.13-intl-use-icu-namespace.patch" +) + +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 + + 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 "../ext/opcache.ini" \ + "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini" + fi + + # SAPI-specific handling + if [[ "${sapi}" == "fpm" ]] ; then + einfo "Installing FPM config files php-fpm.conf and www.conf" + insinto "${PHP_INI_DIR#${EPREFIX}}" + doins sapi/fpm/php-fpm.conf + insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d" + doins sapi/fpm/www.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() { + default + + # In php-7.x, the FPM pool configuration files have been split off + # of the main config. By default the pool config files go in + # e.g. /etc/php-fpm.d, which isn't slotted. So here we move the + # include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later + # we'll install the pool configuration file "www.conf" there. + php_set_ini_dir fpm + 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() { + 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_with argon2 password-argon2 "${EPREFIX}/usr") + $(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 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 sodium sodium "${EPREFIX}/usr") + $(use_with sqlite sqlite3 "${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 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 || use lmdb || use tokyocabinet ; 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") + $(use_with lmdb lmdb "${EPREFIX}/usr") + ) + + # Support for the GD graphics library + our_conf+=( + $(use_with truetype freetype-dir "${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") + ) + if use webp; then + our_conf+=( --with-webp-dir="${EPREFIX}/usr" ) + fi + # 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" + + 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 "${EPREFIX}/usr") + $(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 session-mm 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 + # --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 + # 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 + + local one_sapi + local sapi + 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|phpdbg) + 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 + + local sapi + 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="",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 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/libphp${PHP_MV}$(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" + # Install the "phar" archive utility. + if use phar ; then + emake INSTALL_ROOT="${D}" install-pharcmd + dosym "..${dest#/usr}/bin/phar" "/usr/bin/phar${SLOT}" + fi + ;; + cgi) + source="sapi/cgi/php-cgi" + ;; + fpm) + source="sapi/fpm/php-fpm" + ;; + embed) + source="libs/libphp${PHP_MV}$(get_libname)" + ;; + phpdbg) + source="sapi/phpdbg/phpdbg" + ;; + *) + die "unhandled sapi in src_install" + ;; + esac + + if [[ "${source}" == *"$(get_libname)" ]]; then + dolib.so "${source}" + else + dobin "${source}" + local name="$(basename ${source})" + dosym "..${dest#/usr}/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-build/cgi/sapi/cgi/php-cgi" ]] ; then + export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" + fi + + if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then + export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" + 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 + local m + 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-7.3.20.ebuild b/dev-lang/php/php-7.3.20.ebuild new file mode 100644 index 000000000000..4583dedfe50e --- /dev/null +++ b/dev-lang/php/php-7.3.20.ebuild @@ -0,0 +1,760 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +inherit flag-o-matic systemd autotools + +MY_PV=${PV/_rc/RC} +DESCRIPTION="The PHP language runtime engine" +HOMEPAGE="https://www.php.net/" +SRC_URI="https://www.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 sparc x86 ~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" + +# SAPIs and SAPI-specific USE flags (cli SAPI is default on): +IUSE="${IUSE} + ${SAPIS/cli/+cli} + threads" + +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 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 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/libpcre2-10.30[unicode] + fpm? ( acl? ( sys-apps/acl ) ) + apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] ) + argon2? ( app-crypt/argon2:= ) + 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 ) ) + coverage? ( dev-util/lcov ) + curl? ( >=net-misc/curl-7.10.5 ) + enchant? ( <app-text/enchant-2.0:0 ) + firebird? ( dev-db/firebird ) + gd? ( >=virtual/jpeg-0-r3: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 ) + imap? ( >=virtual/imap-c-client-2[kerberos=,ssl=] ) + intl? ( dev-libs/icu:= ) + 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? ( dev-libs/libedit ) + lmdb? ( dev-db/lmdb:= ) + mssql? ( dev-db/freetds[mssql] ) + 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 ) + session-mm? ( dev-libs/mm ) + 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-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 ) + webp? ( media-libs/libwebp:0= ) + 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 ) + xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 ) + 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} + virtual/mta + fpm? ( + selinux? ( sec-policy/selinux-phpfpm ) + systemd? ( sys-apps/systemd ) )" + +# Bison isn't actually needed when building from a release tarball +# However, the configure script will warn if it's absent or if you +# have an incompatible version installed. See bug 593278. +DEPEND="${COMMON_DEPEND} + app-arch/xz-utils + >=sys-devel/bison-3.0.1" + +BDEPEND="virtual/pkgconfig" + +# Without USE=readline or libedit, the interactive "php -a" CLI will hang. +REQUIRED_USE=" + || ( cli cgi fpm apache2 embed phpdbg ) + cli? ( ^^ ( readline libedit ) ) + truetype? ( gd zlib ) + webp? ( 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 ) + qdbm? ( !gdbm ) + readline? ( !libedit ) + recode? ( !imap !mysqli !mysql ) + session-mm? ( session !threads ) + mysql? ( || ( mysqli pdo ) ) + zip-encryption? ( zip ) +" + +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}/php-freetype-2.9.1.patch" +) + +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 + + 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 "../ext/opcache.ini" \ + "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini" + fi + + # SAPI-specific handling + if [[ "${sapi}" == "fpm" ]] ; then + einfo "Installing FPM config files php-fpm.conf and www.conf" + insinto "${PHP_INI_DIR#${EPREFIX}}" + doins sapi/fpm/php-fpm.conf + insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d" + doins sapi/fpm/www.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() { + default + + # In php-7.x, the FPM pool configuration files have been split off + # of the main config. By default the pool config files go in + # e.g. /etc/php-fpm.d, which isn't slotted. So here we move the + # include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later + # we'll install the pool configuration file "www.conf" there. + php_set_ini_dir fpm + 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() { + 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_with argon2 password-argon2 "${EPREFIX}/usr") + $(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 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 sodium sodium "${EPREFIX}/usr") + $(use_with sqlite sqlite3 "${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 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 || use lmdb || use tokyocabinet ; 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") + $(use_with lmdb lmdb "${EPREFIX}/usr") + ) + + # Support for the GD graphics library + our_conf+=( + $(use_with truetype freetype-dir "${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") + ) + if use webp; then + our_conf+=( --with-webp-dir="${EPREFIX}/usr" ) + fi + # 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" + + 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 "${EPREFIX}/usr") + $(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 session-mm 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 + # --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 + # 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 + + local one_sapi + local sapi + 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|phpdbg) + 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 + + local sapi + 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="", 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 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/libphp${PHP_MV}$(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" + # Install the "phar" archive utility. + if use phar ; then + emake INSTALL_ROOT="${D}" install-pharcmd + dosym "..${dest#/usr}/bin/phar" "/usr/bin/phar${SLOT}" + fi + ;; + cgi) + source="sapi/cgi/php-cgi" + ;; + fpm) + source="sapi/fpm/php-fpm" + ;; + embed) + source="libs/libphp${PHP_MV}$(get_libname)" + ;; + phpdbg) + source="sapi/phpdbg/phpdbg" + ;; + *) + die "unhandled sapi in src_install" + ;; + esac + + if [[ "${source}" == *"$(get_libname)" ]]; then + dolib.so "${source}" + else + dobin "${source}" + local name="$(basename ${source})" + dosym "..${dest#/usr}/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-build/cgi/sapi/cgi/php-cgi" ]] ; then + export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" + fi + + if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then + export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" + 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 + local m + 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-7.3.21.ebuild b/dev-lang/php/php-7.3.21.ebuild new file mode 100644 index 000000000000..5aa6fe6e031c --- /dev/null +++ b/dev-lang/php/php-7.3.21.ebuild @@ -0,0 +1,760 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +inherit flag-o-matic systemd autotools + +MY_PV=${PV/_rc/RC} +DESCRIPTION="The PHP language runtime engine" +HOMEPAGE="https://www.php.net/" +SRC_URI="https://www.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 sparc x86 ~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" + +# SAPIs and SAPI-specific USE flags (cli SAPI is default on): +IUSE="${IUSE} + ${SAPIS/cli/+cli} + threads" + +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 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 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/libpcre2-10.30[unicode] + fpm? ( acl? ( sys-apps/acl ) ) + apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] ) + argon2? ( app-crypt/argon2:= ) + 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 ) ) + coverage? ( dev-util/lcov ) + curl? ( >=net-misc/curl-7.10.5 ) + enchant? ( <app-text/enchant-2.0:0 ) + firebird? ( dev-db/firebird ) + gd? ( >=virtual/jpeg-0-r3: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 ) + imap? ( >=virtual/imap-c-client-2[kerberos=,ssl=] ) + intl? ( dev-libs/icu:= ) + 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? ( dev-libs/libedit ) + lmdb? ( dev-db/lmdb:= ) + mssql? ( dev-db/freetds[mssql] ) + 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 ) + session-mm? ( dev-libs/mm ) + 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-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 ) + webp? ( media-libs/libwebp:0= ) + 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 ) + xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 ) + 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} + virtual/mta + fpm? ( + selinux? ( sec-policy/selinux-phpfpm ) + systemd? ( sys-apps/systemd ) )" + +# Bison isn't actually needed when building from a release tarball +# However, the configure script will warn if it's absent or if you +# have an incompatible version installed. See bug 593278. +DEPEND="${COMMON_DEPEND} + app-arch/xz-utils + >=sys-devel/bison-3.0.1" + +BDEPEND="virtual/pkgconfig" + +# Without USE=readline or libedit, the interactive "php -a" CLI will hang. +REQUIRED_USE=" + || ( cli cgi fpm apache2 embed phpdbg ) + cli? ( ^^ ( readline libedit ) ) + truetype? ( gd zlib ) + webp? ( 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 ) + qdbm? ( !gdbm ) + readline? ( !libedit ) + recode? ( !imap !mysqli !mysql ) + session-mm? ( session !threads ) + mysql? ( || ( mysqli pdo ) ) + zip-encryption? ( zip ) +" + +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}/php-freetype-2.9.1.patch" +) + +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 + + 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 "../ext/opcache.ini" \ + "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini" + fi + + # SAPI-specific handling + if [[ "${sapi}" == "fpm" ]] ; then + einfo "Installing FPM config files php-fpm.conf and www.conf" + insinto "${PHP_INI_DIR#${EPREFIX}}" + doins sapi/fpm/php-fpm.conf + insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d" + doins sapi/fpm/www.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() { + default + + # In php-7.x, the FPM pool configuration files have been split off + # of the main config. By default the pool config files go in + # e.g. /etc/php-fpm.d, which isn't slotted. So here we move the + # include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later + # we'll install the pool configuration file "www.conf" there. + php_set_ini_dir fpm + 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() { + 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_with argon2 password-argon2 "${EPREFIX}/usr") + $(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 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 sodium sodium "${EPREFIX}/usr") + $(use_with sqlite sqlite3 "${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 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 || use lmdb || use tokyocabinet ; 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") + $(use_with lmdb lmdb "${EPREFIX}/usr") + ) + + # Support for the GD graphics library + our_conf+=( + $(use_with truetype freetype-dir "${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") + ) + if use webp; then + our_conf+=( --with-webp-dir="${EPREFIX}/usr" ) + fi + # 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" + + 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 "${EPREFIX}/usr") + $(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 session-mm 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 + # --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 + # 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 + + local one_sapi + local sapi + 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|phpdbg) + 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 + + local sapi + 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="", 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 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/libphp${PHP_MV}$(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" + # Install the "phar" archive utility. + if use phar ; then + emake INSTALL_ROOT="${D}" install-pharcmd + dosym "..${dest#/usr}/bin/phar" "/usr/bin/phar${SLOT}" + fi + ;; + cgi) + source="sapi/cgi/php-cgi" + ;; + fpm) + source="sapi/fpm/php-fpm" + ;; + embed) + source="libs/libphp${PHP_MV}$(get_libname)" + ;; + phpdbg) + source="sapi/phpdbg/phpdbg" + ;; + *) + die "unhandled sapi in src_install" + ;; + esac + + if [[ "${source}" == *"$(get_libname)" ]]; then + dolib.so "${source}" + else + dobin "${source}" + local name="$(basename ${source})" + dosym "..${dest#/usr}/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-build/cgi/sapi/cgi/php-cgi" ]] ; then + export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" + fi + + if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then + export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" + 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 + local m + 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-7.4.8-r1.ebuild b/dev-lang/php/php-7.4.8-r1.ebuild new file mode 100644 index 000000000000..b7203bdf290c --- /dev/null +++ b/dev-lang/php/php-7.4.8-r1.ebuild @@ -0,0 +1,750 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +WANT_AUTOMAKE="none" + +inherit flag-o-matic systemd autotools + +MY_PV=${PV/_rc/RC} +DESCRIPTION="The PHP language runtime engine" +HOMEPAGE="https://www.php.net/" +SRC_URI="https://www.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 sparc x86 ~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" + +# SAPIs and SAPI-specific USE flags (cli SAPI is default on): +IUSE="${IUSE} + ${SAPIS/cli/+cli} + threads" + +IUSE="${IUSE} acl argon2 bcmath berkdb bzip2 calendar cdb cjk + coverage +ctype curl debug + enchant exif ffi +fileinfo +filter firebird + +flatfile ftp gd gdbm gmp +iconv imap inifile + 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 selinux +session session-mm sharedmem + +simplexml snmp soap sockets sodium spell sqlite ssl + sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode webp + +xml xmlreader xmlwriter xmlrpc xpm xslt zip zlib" + +# Without USE=readline or libedit, the interactive "php -a" CLI will hang. +REQUIRED_USE=" + || ( cli cgi fpm apache2 embed phpdbg ) + cli? ( ^^ ( readline libedit ) ) + !cli? ( ?? ( readline libedit ) ) + truetype? ( gd zlib ) + webp? ( gd zlib ) + cjk? ( gd zlib ) + exif? ( gd zlib ) + xpm? ( gd zlib ) + gd? ( zlib ) + simplexml? ( xml ) + soap? ( xml ) + xmlrpc? ( xml iconv ) + xmlreader? ( xml ) + xmlwriter? ( xml ) + xslt? ( xml ) + ldap-sasl? ( ldap ) + qdbm? ( !gdbm ) + session-mm? ( session !threads ) + mysql? ( || ( mysqli pdo ) ) + firebird? ( pdo ) + mssql? ( pdo ) +" + +RESTRICT="!test? ( test )" + +# 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/libpcre2-10.30[unicode] + fpm? ( acl? ( sys-apps/acl ) ) + apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] ) + argon2? ( app-crypt/argon2:= ) + 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 ) ) + coverage? ( dev-util/lcov ) + curl? ( >=net-misc/curl-7.10.5 ) + enchant? ( <app-text/enchant-2.0:0 ) + ffi? ( >=dev-libs/libffi-3.0.11 ) + firebird? ( dev-db/firebird ) + gd? ( >=virtual/jpeg-0-r3:0 media-libs/libpng:0= ) + gdbm? ( >=sys-libs/gdbm-1.8.0:0= ) + gmp? ( dev-libs/gmp:0= ) + iconv? ( virtual/libiconv ) + imap? ( >=virtual/imap-c-client-2[kerberos=,ssl=] ) + intl? ( dev-libs/icu:= ) + kerberos? ( virtual/krb5 ) + ldap? ( >=net-nds/openldap-1.2.11 ) + ldap-sasl? ( dev-libs/cyrus-sasl ) + libedit? ( dev-libs/libedit ) + lmdb? ( dev-db/lmdb:= ) + mssql? ( dev-db/freetds[mssql] ) + nls? ( sys-devel/gettext ) + oci8-instant-client? ( dev-db/oracle-instantclient-basic ) + odbc? ( iodbc? ( dev-db/libiodbc ) !iodbc? ( >=dev-db/unixODBC-1.8.13 ) ) + postgres? ( dev-db/postgresql:* ) + qdbm? ( dev-db/qdbm ) + readline? ( sys-libs/readline:0= ) + session-mm? ( dev-libs/mm ) + snmp? ( >=net-analyzer/net-snmp-5.2 ) + sodium? ( dev-libs/libsodium:= ) + spell? ( >=app-text/aspell-0.50 ) + sqlite? ( >=dev-db/sqlite-3.7.6.3 ) + ssl? ( + !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:= ) + webp? ( media-libs/libwebp:0= ) + xml? ( >=dev-libs/libxml2-2.7.6 ) + xpm? ( x11-libs/libXpm ) + xslt? ( dev-libs/libxslt ) + zip? ( >=dev-libs/libzip-1.2.0:= ) + zlib? ( >=sys-libs/zlib-1.2.0.4:0= ) +" + +RDEPEND="${COMMON_DEPEND} + virtual/mta + fpm? ( + selinux? ( sec-policy/selinux-phpfpm ) + systemd? ( sys-apps/systemd ) )" + +# Bison isn't actually needed when building from a release tarball +# However, the configure script will warn if it's absent or if you +# have an incompatible version installed. See bug 593278. +DEPEND="${COMMON_DEPEND} + app-arch/xz-utils + >=sys-devel/bison-3.0.1" + +BDEPEND="virtual/pkgconfig" + +PHP_MV="$(ver_cut 1)" + +PATCHES=( "${FILESDIR}/php-iodbc-header-location.patch" ) + +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 + + 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 "../ext/opcache.ini" \ + "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini" + fi + + # SAPI-specific handling + if [[ "${sapi}" == "fpm" ]] ; then + einfo "Installing FPM config files php-fpm.conf and www.conf" + insinto "${PHP_INI_DIR#${EPREFIX}}" + doins sapi/fpm/php-fpm.conf + insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d" + doins sapi/fpm/www.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() { + default + + # In php-7.x, the FPM pool configuration files have been split off + # of the main config. By default the pool config files go in + # e.g. /etc/php-fpm.d, which isn't slotted. So here we move the + # include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later + # we'll install the pool configuration file "www.conf" there. + php_set_ini_dir fpm + 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' + + # Emulate buildconf to support cross-compilation + rm -fr aclocal.m4 autom4te.cache config.cache \ + configure main/php_config.h.in || die + eautoconf --force + eautoheader +} + +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_with argon2 password-argon2 "${EPREFIX}/usr") + $(use_enable bcmath) + $(use_with bzip2 bz2 "${EPREFIX}/usr") + $(use_enable calendar) + $(use_enable coverage gcov) + $(use_enable ctype) + $(use_with curl) + $(use_enable xml dom) + $(use_with enchant) + $(use_enable exif) + $(use_with ffi) + $(use_enable fileinfo) + $(use_enable filter) + $(use_enable ftp) + $(use_with nls gettext "${EPREFIX}/usr") + $(use_with gmp gmp "${EPREFIX}/usr") + $(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) + $(use_enable ipv6) + $(use_enable json) + $(use_with kerberos) + $(use_with xml libxml) + $(use_enable unicode mbstring) + $(use_with ssl openssl) + $(use_enable pcntl) + $(use_enable phar) + $(use_enable pdo) + $(use_enable opcache) + $(use_with postgres pgsql "${EPREFIX}/usr") + $(use_enable posix) + $(use_with spell pspell "${EPREFIX}/usr") + $(use_enable simplexml) + $(use_enable sharedmem shmop) + $(use_with snmp snmp "${EPREFIX}/usr") + $(use_enable soap) + $(use_enable sockets) + $(use_with sodium) + $(use_with sqlite sqlite3) + $(use_enable sysvipc sysvmsg) + $(use_enable sysvipc sysvsem) + $(use_enable sysvipc sysvshm) + $(use_with tidy tidy "${EPREFIX}/usr") + $(use_enable tokenizer) + $(use_enable xml) + $(use_enable xmlreader) + $(use_enable xmlwriter) + $(use_with xmlrpc) + $(use_with xslt xsl) + $(use_with zip) + $(use_with zlib zlib "${EPREFIX}/usr") + $(use_enable debug) + ) + + # DBA support + if use cdb || use berkdb || use flatfile || use gdbm || use inifile \ + || use qdbm || use lmdb || use tokyocabinet ; then + our_conf+=( "--enable-dba" ) + fi + + # DBA drivers support + our_conf+=( + $(use_with cdb) + $(use_with berkdb db4 "${EPREFIX}/usr") + $(use_enable flatfile) + $(use_with gdbm gdbm "${EPREFIX}/usr") + $(use_enable inifile) + $(use_with qdbm qdbm "${EPREFIX}/usr") + $(use_with tokyocabinet tcadb "${EPREFIX}/usr") + $(use_with lmdb lmdb "${EPREFIX}/usr") + ) + + # Support for the GD graphics library + our_conf+=( + $(use_with truetype freetype) + $(use_enable cjk gd-jis-conv) + $(use_with gd jpeg) + $(use_with xpm) + $(use_with webp) + ) + # enable gd last, so configure can pick up the previous settings + our_conf+=( $(use_enable gd) ) + + # IMAP support + if use imap ; then + our_conf+=( + $(use_with imap imap "${EPREFIX}/usr") + $(use_with ssl imap-ssl "${EPREFIX}/usr") + ) + fi + + # LDAP support + if use ldap ; then + our_conf+=( + $(use_with ldap ldap "${EPREFIX}/usr") + $(use_with ldap-sasl) + ) + fi + + # MySQL support + local mysqllib="mysqlnd" + local mysqlilib="mysqlnd" + + 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 + if use odbc && use iodbc ; then + our_conf+=( + --without-unixODBC + --with-iodbc + $(use_with pdo pdo-odbc "iODBC,${EPREFIX}/usr") + ) + elif use odbc ; then + our_conf+=( + --with-unixODBC="${EPREFIX}/usr" + --without-iodbc + $(use_with pdo pdo-odbc "unixODBC,${EPREFIX}/usr") + ) + else + our_conf+=( + --without-unixODBC + --without-iodbc + --without-pdo-odbc + ) + fi + + # Oracle support + our_conf+=( $(use_with oci8-instant-client oci8) ) + + # PDO support + if use pdo ; then + our_conf+=( + $(use_with mssql pdo-dblib "${EPREFIX}/usr") + $(use_with mysql pdo-mysql "${mysqllib}") + $(use_with postgres pdo-pgsql) + $(use_with sqlite pdo-sqlite) + $(use_with firebird pdo-firebird "${EPREFIX}/usr") + $(use_with oci8-instant-client pdo-oci) + ) + fi + + # readline/libedit support + our_conf+=( + $(use_with readline readline "${EPREFIX}/usr") + $(use_with libedit) + ) + + # Session support + if use session ; then + our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") ) + else + our_conf+=( $(use_enable 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-external-pcre affects ext/pcre + # Many arches don't support pcre-jit + our_conf+=( + --with-external-pcre + --without-pcre-jit + ) + + # 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 + + local one_sapi + local sapi + 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|phpdbg) + 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 + + local sapi + 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="", 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 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/libphp${PHP_MV}$(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" + # Install the "phar" archive utility. + if use phar ; then + emake INSTALL_ROOT="${D}" install-pharcmd + dosym "..${dest#/usr}/bin/phar" "/usr/bin/phar${SLOT}" + fi + ;; + cgi) + source="sapi/cgi/php-cgi" + ;; + fpm) + source="sapi/fpm/php-fpm" + ;; + embed) + source="libs/libphp${PHP_MV}$(get_libname)" + ;; + phpdbg) + source="sapi/phpdbg/phpdbg" + ;; + *) + die "unhandled sapi in src_install" + ;; + esac + + if [[ "${source}" == *"$(get_libname)" ]]; then + dolib.so "${source}" + else + dobin "${source}" + local name="$(basename ${source})" + dosym "..${dest#/usr}/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-build/cgi/sapi/cgi/php-cgi" ]] ; then + export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" + fi + + if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then + export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" + 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 + local m + 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-7.4.9.ebuild b/dev-lang/php/php-7.4.9.ebuild new file mode 100644 index 000000000000..255da8e1c449 --- /dev/null +++ b/dev-lang/php/php-7.4.9.ebuild @@ -0,0 +1,750 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +WANT_AUTOMAKE="none" + +inherit flag-o-matic systemd autotools + +MY_PV=${PV/_rc/RC} +DESCRIPTION="The PHP language runtime engine" +HOMEPAGE="https://www.php.net/" +SRC_URI="https://www.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 sparc x86 ~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" + +# SAPIs and SAPI-specific USE flags (cli SAPI is default on): +IUSE="${IUSE} + ${SAPIS/cli/+cli} + threads" + +IUSE="${IUSE} acl argon2 bcmath berkdb bzip2 calendar cdb cjk + coverage +ctype curl debug + enchant exif ffi +fileinfo +filter firebird + +flatfile ftp gd gdbm gmp +iconv imap inifile + 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 selinux +session session-mm sharedmem + +simplexml snmp soap sockets sodium spell sqlite ssl + sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode webp + +xml xmlreader xmlwriter xmlrpc xpm xslt zip zlib" + +# Without USE=readline or libedit, the interactive "php -a" CLI will hang. +REQUIRED_USE=" + || ( cli cgi fpm apache2 embed phpdbg ) + cli? ( ^^ ( readline libedit ) ) + !cli? ( ?? ( readline libedit ) ) + truetype? ( gd zlib ) + webp? ( gd zlib ) + cjk? ( gd zlib ) + exif? ( gd zlib ) + xpm? ( gd zlib ) + gd? ( zlib ) + simplexml? ( xml ) + soap? ( xml ) + xmlrpc? ( xml iconv ) + xmlreader? ( xml ) + xmlwriter? ( xml ) + xslt? ( xml ) + ldap-sasl? ( ldap ) + qdbm? ( !gdbm ) + session-mm? ( session !threads ) + mysql? ( || ( mysqli pdo ) ) + firebird? ( pdo ) + mssql? ( pdo ) +" + +RESTRICT="!test? ( test )" + +# 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/libpcre2-10.30[unicode] + fpm? ( acl? ( sys-apps/acl ) ) + apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] ) + argon2? ( app-crypt/argon2:= ) + 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 ) ) + coverage? ( dev-util/lcov ) + curl? ( >=net-misc/curl-7.10.5 ) + enchant? ( <app-text/enchant-2.0:0 ) + ffi? ( >=dev-libs/libffi-3.0.11 ) + firebird? ( dev-db/firebird ) + gd? ( >=virtual/jpeg-0-r3:0 media-libs/libpng:0= ) + gdbm? ( >=sys-libs/gdbm-1.8.0:0= ) + gmp? ( dev-libs/gmp:0= ) + iconv? ( virtual/libiconv ) + imap? ( >=virtual/imap-c-client-2[kerberos=,ssl=] ) + intl? ( dev-libs/icu:= ) + kerberos? ( virtual/krb5 ) + ldap? ( >=net-nds/openldap-1.2.11 ) + ldap-sasl? ( dev-libs/cyrus-sasl ) + libedit? ( dev-libs/libedit ) + lmdb? ( dev-db/lmdb:= ) + mssql? ( dev-db/freetds[mssql] ) + nls? ( sys-devel/gettext ) + oci8-instant-client? ( dev-db/oracle-instantclient-basic ) + odbc? ( iodbc? ( dev-db/libiodbc ) !iodbc? ( >=dev-db/unixODBC-1.8.13 ) ) + postgres? ( dev-db/postgresql:* ) + qdbm? ( dev-db/qdbm ) + readline? ( sys-libs/readline:0= ) + session-mm? ( dev-libs/mm ) + snmp? ( >=net-analyzer/net-snmp-5.2 ) + sodium? ( dev-libs/libsodium:= ) + spell? ( >=app-text/aspell-0.50 ) + sqlite? ( >=dev-db/sqlite-3.7.6.3 ) + ssl? ( + !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:= ) + webp? ( media-libs/libwebp:0= ) + xml? ( >=dev-libs/libxml2-2.7.6 ) + xpm? ( x11-libs/libXpm ) + xslt? ( dev-libs/libxslt ) + zip? ( >=dev-libs/libzip-1.2.0:= ) + zlib? ( >=sys-libs/zlib-1.2.0.4:0= ) +" + +RDEPEND="${COMMON_DEPEND} + virtual/mta + fpm? ( + selinux? ( sec-policy/selinux-phpfpm ) + systemd? ( sys-apps/systemd ) )" + +# Bison isn't actually needed when building from a release tarball +# However, the configure script will warn if it's absent or if you +# have an incompatible version installed. See bug 593278. +DEPEND="${COMMON_DEPEND} + app-arch/xz-utils + >=sys-devel/bison-3.0.1" + +BDEPEND="virtual/pkgconfig" + +PHP_MV="$(ver_cut 1)" + +PATCHES=( "${FILESDIR}/php-iodbc-header-location.patch" ) + +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 + + 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 "../ext/opcache.ini" \ + "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini" + fi + + # SAPI-specific handling + if [[ "${sapi}" == "fpm" ]] ; then + einfo "Installing FPM config files php-fpm.conf and www.conf" + insinto "${PHP_INI_DIR#${EPREFIX}}" + doins sapi/fpm/php-fpm.conf + insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d" + doins sapi/fpm/www.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() { + default + + # In php-7.x, the FPM pool configuration files have been split off + # of the main config. By default the pool config files go in + # e.g. /etc/php-fpm.d, which isn't slotted. So here we move the + # include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later + # we'll install the pool configuration file "www.conf" there. + php_set_ini_dir fpm + 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' + + # Emulate buildconf to support cross-compilation + rm -fr aclocal.m4 autom4te.cache config.cache \ + configure main/php_config.h.in || die + eautoconf --force + eautoheader +} + +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_with argon2 password-argon2 "${EPREFIX}/usr") + $(use_enable bcmath) + $(use_with bzip2 bz2 "${EPREFIX}/usr") + $(use_enable calendar) + $(use_enable coverage gcov) + $(use_enable ctype) + $(use_with curl) + $(use_enable xml dom) + $(use_with enchant) + $(use_enable exif) + $(use_with ffi) + $(use_enable fileinfo) + $(use_enable filter) + $(use_enable ftp) + $(use_with nls gettext "${EPREFIX}/usr") + $(use_with gmp gmp "${EPREFIX}/usr") + $(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) + $(use_enable ipv6) + $(use_enable json) + $(use_with kerberos) + $(use_with xml libxml) + $(use_enable unicode mbstring) + $(use_with ssl openssl) + $(use_enable pcntl) + $(use_enable phar) + $(use_enable pdo) + $(use_enable opcache) + $(use_with postgres pgsql "${EPREFIX}/usr") + $(use_enable posix) + $(use_with spell pspell "${EPREFIX}/usr") + $(use_enable simplexml) + $(use_enable sharedmem shmop) + $(use_with snmp snmp "${EPREFIX}/usr") + $(use_enable soap) + $(use_enable sockets) + $(use_with sodium) + $(use_with sqlite sqlite3) + $(use_enable sysvipc sysvmsg) + $(use_enable sysvipc sysvsem) + $(use_enable sysvipc sysvshm) + $(use_with tidy tidy "${EPREFIX}/usr") + $(use_enable tokenizer) + $(use_enable xml) + $(use_enable xmlreader) + $(use_enable xmlwriter) + $(use_with xmlrpc) + $(use_with xslt xsl) + $(use_with zip) + $(use_with zlib zlib "${EPREFIX}/usr") + $(use_enable debug) + ) + + # DBA support + if use cdb || use berkdb || use flatfile || use gdbm || use inifile \ + || use qdbm || use lmdb || use tokyocabinet ; then + our_conf+=( "--enable-dba" ) + fi + + # DBA drivers support + our_conf+=( + $(use_with cdb) + $(use_with berkdb db4 "${EPREFIX}/usr") + $(use_enable flatfile) + $(use_with gdbm gdbm "${EPREFIX}/usr") + $(use_enable inifile) + $(use_with qdbm qdbm "${EPREFIX}/usr") + $(use_with tokyocabinet tcadb "${EPREFIX}/usr") + $(use_with lmdb lmdb "${EPREFIX}/usr") + ) + + # Support for the GD graphics library + our_conf+=( + $(use_with truetype freetype) + $(use_enable cjk gd-jis-conv) + $(use_with gd jpeg) + $(use_with xpm) + $(use_with webp) + ) + # enable gd last, so configure can pick up the previous settings + our_conf+=( $(use_enable gd) ) + + # IMAP support + if use imap ; then + our_conf+=( + $(use_with imap imap "${EPREFIX}/usr") + $(use_with ssl imap-ssl "${EPREFIX}/usr") + ) + fi + + # LDAP support + if use ldap ; then + our_conf+=( + $(use_with ldap ldap "${EPREFIX}/usr") + $(use_with ldap-sasl) + ) + fi + + # MySQL support + local mysqllib="mysqlnd" + local mysqlilib="mysqlnd" + + 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 + if use odbc && use iodbc ; then + our_conf+=( + --without-unixODBC + --with-iodbc + $(use_with pdo pdo-odbc "iODBC,${EPREFIX}/usr") + ) + elif use odbc ; then + our_conf+=( + --with-unixODBC="${EPREFIX}/usr" + --without-iodbc + $(use_with pdo pdo-odbc "unixODBC,${EPREFIX}/usr") + ) + else + our_conf+=( + --without-unixODBC + --without-iodbc + --without-pdo-odbc + ) + fi + + # Oracle support + our_conf+=( $(use_with oci8-instant-client oci8) ) + + # PDO support + if use pdo ; then + our_conf+=( + $(use_with mssql pdo-dblib "${EPREFIX}/usr") + $(use_with mysql pdo-mysql "${mysqllib}") + $(use_with postgres pdo-pgsql) + $(use_with sqlite pdo-sqlite) + $(use_with firebird pdo-firebird "${EPREFIX}/usr") + $(use_with oci8-instant-client pdo-oci) + ) + fi + + # readline/libedit support + our_conf+=( + $(use_with readline readline "${EPREFIX}/usr") + $(use_with libedit) + ) + + # Session support + if use session ; then + our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") ) + else + our_conf+=( $(use_enable 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-external-pcre affects ext/pcre + # Many arches don't support pcre-jit + our_conf+=( + --with-external-pcre + --without-pcre-jit + ) + + # 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 + + local one_sapi + local sapi + 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|phpdbg) + 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 + + local sapi + 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="", 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 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/libphp${PHP_MV}$(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" + # Install the "phar" archive utility. + if use phar ; then + emake INSTALL_ROOT="${D}" install-pharcmd + dosym "..${dest#/usr}/bin/phar" "/usr/bin/phar${SLOT}" + fi + ;; + cgi) + source="sapi/cgi/php-cgi" + ;; + fpm) + source="sapi/fpm/php-fpm" + ;; + embed) + source="libs/libphp${PHP_MV}$(get_libname)" + ;; + phpdbg) + source="sapi/phpdbg/phpdbg" + ;; + *) + die "unhandled sapi in src_install" + ;; + esac + + if [[ "${source}" == *"$(get_libname)" ]]; then + dolib.so "${source}" + else + dobin "${source}" + local name="$(basename ${source})" + dosym "..${dest#/usr}/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-build/cgi/sapi/cgi/php-cgi" ]] ; then + export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" + fi + + if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then + export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" + 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 + local m + 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/python/Manifest b/dev-lang/python/Manifest index 9ad613422914..5cf42182eb59 100644 --- a/dev-lang/python/Manifest +++ b/dev-lang/python/Manifest @@ -1,29 +1,27 @@ AUX pydoc.conf 169 BLAKE2B ce40bb3d5f858bd7a8d9ef5bf215a8ab592568a724f0e08aea219da014dac12fdfcbcf5fb168bb9aa57be110f74d656aed46179ffe11e3c992d84a647e442b7b SHA512 30d0776a4004cd641e6f283658c3c24915a21ea15fe40e506ff2c3a5f95936aa00c9490b04ab25f29e9b7ac65cd88fd54ca0b08e000e73820b13c7c57c0bf5b2 AUX pydoc.init 600 BLAKE2B fb8775a6663483e5112ec283627610b746020d88494e772b92bb718a9493a52606e565c6c2fa4917a5cb963f166283d09883bd26903f2f3ced6c240d4e292a7f SHA512 9e71ad53486b6882a8441b24225c602195ee33d29dd1b60df27febbc6b752e79929be356152a489f893dcfb11f9c066b999787bc27a8ac61062c86e67a69e87a DIST Python-2.7.18.tar.xz 12854736 BLAKE2B 060a621c91dd8e3d321aec99d44c17aa67381998256a1a002d316b38288349884d5960de35c49352d03129ed0bae599e641ec2225898158ebce50a7a2fd74d2c SHA512 a7bb62b51f48ff0b6df0b18f5b0312a523e3110f49c3237936bfe56ed0e26838c0274ff5401bda6fc21bf24337477ccac49e8026c5d651e4b4cafb5eb5086f6c -DIST Python-3.6.10.tar.xz 17212220 BLAKE2B 822e231cf2755e6477e49e9128a983185a4f1e30e9d6c221f1b5720891c0de345e8c5402af458d3627eba124e75fea4b5daa94e01b0eaddc116dc3281263ecbe SHA512 26147099e1f1a0ffc85febad26e18e991f019599a150887ea0b925e34663fad8e03b3c2a941e2770c1a63960695e173ef32709572c9361e7f2cb862ccf75b28a DIST Python-3.6.11.tar.xz 17213036 BLAKE2B 4dae9d9c5eb7e97a8990b0b5739d40ba8a85081c7e03adc22a3305e713d39b3a98ff66c17b395b9d45355e124307eed87803211378d14360e8b3455f7146a1ba SHA512 c76969a6602e095641ba5fd0999a47cf0187eb26559ba9a6e80fe401b8928f6cd9eabd963f615f7c667e48f56603f2508d2b5692c83ea8da1e21292131fb11d6 -DIST Python-3.7.7.tar.xz 17268888 BLAKE2B 5f16c9559249470a9e6c0aa686965e7d78ce0f7364b5d03fc9590613c7a5456f92835340e49bf9becbec18b18d1e5a6fc318b6e30f2349da3246a918cf8b05ff SHA512 ddc838a7b0c442c2e465616f20231f2b703ed6b69ed2dc17858aac8760814fdf7cff43d350d359300e47b6bb1f0bd38c31126b855e423a3a65ed06a8fa16d136 +DIST Python-3.6.12.tar.xz 17202980 BLAKE2B c8d22e4d57bcaffe77cd902cda3a473e73adf2b74ab104c23b4d846f19632a24cc0c478af84079b16d784bd1c0956824c06c1f6134fd24f54e58aaab0fe96bb6 SHA512 1462801f3f6626a853097d34ccdca9838c4c5bd81ecc3abc751003f5f2f8d36eecdaa4130ef4218de351c5586093c11669639a34492668fbc5a2a4a241f4a070 DIST Python-3.7.8.tar.xz 17399552 BLAKE2B 4bf6c47b1132b6d31a79232002c4d38e2cd123ac05d52b21d6bfba5a4e19ec9130b8df8698d5ce6627e4297c4cf756643f036e694e36364c235306c72ef34bf8 SHA512 d2ba299e3cf8ed0f8fed9317f42bcd8d9af7e0e6175939b4be1be289c1658418bed17899e2608d762ffb15575021956cf6bf2054d7863c04b3bd7642f5b8c7ea -DIST Python-3.8.2.tar.xz 17869888 BLAKE2B f42b35bea5e65f1f0a3fa6f1fd3d749fba3fa46d958608a314c1a98d0e3ca890e856da4d40ee489fe546fc02ce0fc9fa2daaaba96a8928d92ae7eb3d2dda3fe4 SHA512 ca37ad0e7c5845f5f228566aa8ff654a8f428c7d4a5aaabff29baebb0ca3219b31ba8bb2607f89e37cf3fc564f023b8407e53a4f2c47bd99122c1cc222613e37 -DIST Python-3.8.3.tar.xz 17912964 BLAKE2B 9c415823f70bad97936e0472fc53a1b7650cbf0082da714266095dec74e0cd4a48c9477ad03fbb75fdc2cd8e41ef3aa5839e38fc69751720f5cb5c7fc77cce17 SHA512 3103bd8d944f3905eee3a2b52fd1f5c7dee380f9c5a99ad35a401fcba5a9117c3860ecec5cb47a92712c6549442fd2fa553a15c5657241dd09f5d00b9ed4f0f4 -DIST Python-3.9.0b3.tar.xz 18518204 BLAKE2B fa1707f0d55a83e739e9ad51979f8aff9720588a8a77b7ce8beb9ecf599955677758dec1551a0549b010f86c1f8fbc5915cef34d63097534d1c512c92fad5bd1 SHA512 c06a6b874fbce93ec37402034158a7bab44cab775d6da467eaddc1eb402663415f9d788e657a204f17dffe5fa6f379379f9215b5198ec5071565486b6f0e4a2a -DIST Python-3.9.0b4.tar.xz 18602256 BLAKE2B 9f260f2b3c6380745c343d2883db430dda1b76b120050df16e53c1021e5a746c7e4a6aa8e83c746c3705c6872e83369a649c48ffdaef972a7049c44f7bc3030b SHA512 1c9bac850159352effb163b41590b3e9c05100b449798b5615f7a51a59a3877fe9558d593bb47c24915226637e3394e7864a1b1555cd6c5b5e5e308972208ecf -DIST python-gentoo-patches-2.7.18.tar.xz 15012 BLAKE2B f691e231c793bb8f11fb64c89b90e022af8e0fe0e28839822c2ae6214fdab6c6fd9c07466c4b5797d3964b7db09fd979597774fb7872dc674e8df59321b6bf95 SHA512 a2952b27bfc0a52f322b2f3e177cbe09fa288c9ca5967c13fb9c2d45d3e81033407e30e86bdaaaa258f0b3cfa2cef6eda5502bddb6390f9512a493d145d34e03 -DIST python-gentoo-patches-3.6.10-r1.tar.xz 15556 BLAKE2B 3d4755a083172fc878d3454797a4a7fa809c7767b7f2ba0919b95076b8ecba62ac604a7db349d8dd71f83aa44d4580d0c433ae6cd2027078e7779cec79185ba2 SHA512 b361ff3fe9545bb59a7e85f179a094d58219be35d20cef83db02672d0a9a58fccfda62fbe8c2bf64250c4043b8517cbc2091380611c5f1e63bfac9ca7c4e47b0 -DIST python-gentoo-patches-3.6.11.tar.xz 11180 BLAKE2B ac4be3da8510d64efcd902ea1408e9c2530e6f1cb5f4ab74ef3280bc3d4d554a04cfcebf417297586e2992af91ff5da511b3e371ac88237218d6e837714e2fec SHA512 b29aec6ac02b71dec4884a8b2b24f929fa3c8709d985c8b134d3ab835be78fd4e9da4f9006d491382442a19895e748b806b7f27d30c6970cf42982bd16fa1946 -DIST python-gentoo-patches-3.7.7.tar.xz 14644 BLAKE2B 1a377eac945310082ec9fa257bcb406c7eaf24b5e80469dd49e82a1bc0554b75394678609cae447cb0fc7a19059b29166bf110b6ed99a89a9919b3a56a323f87 SHA512 2c7fbcefd6f4d1674b78f3b67f2be3f1b168e08c318fefe8d4757f2d30c22477f5010ad6f2c0abb265d819ee667617f21f93e002242e216b4ee570200b0ddf74 -DIST python-gentoo-patches-3.7.8.tar.xz 10304 BLAKE2B dc1bff35bdf3f7e97d15fbd0af4c3278ea54b43cb204641f666293dec507431987445fe6ecb991814842b8c58c65a6185b4c24e3ae08d682ef98916263af7cd4 SHA512 5871121e514dd6af4d9298550a5e01ee114950fd6db58bb8bdb879ede602a228f64d7bf8f6e04317ababc42a502b1192f4a010122745d5a8bc7a40866106479a -DIST python-gentoo-patches-3.8.2-r1.tar.xz 16112 BLAKE2B 9ae197a56bbd96afa11c4312c68ac030138773df22dedc3a3e6fb9e81b366d6522fb2c147946eb604a87d749cbea7e5e5eed8ae0e737294c0949a8c2791dd327 SHA512 00f31c3b7227dd443f05234fbb7744338ce687e1ea4d236a6b1d386d76082acb34259f59442018c9ace54e0004dea9ac822ae2a4470159b83d00112e258baff0 -DIST python-gentoo-patches-3.8.3.tar.xz 10704 BLAKE2B 6fdd13139b1132313153af2de774abeca7c1fe9acb34a87e5d96875a4cbe8c22c201acbb11c15eeaf828493c32f6acd89e3b5d4012fa2c9d216da556aadb9f01 SHA512 6f67d77e8240983c0dd749620e5df81df5816b831032e190c82c8d73ea8a995daf2631640234a1350e483bd13276466457d110176612bfde3281d1b6a8bf97bb -DIST python-gentoo-patches-3.9.0b3.tar.xz 8592 BLAKE2B 261dc9a5c7b370eb3f693f5bfb15562a5ee8b24b038db1b16571f096ff0d451ef8830c7f51db53366ebcf6e378dfab57e186f1789dc3ecc95e65595708f4428e SHA512 4c630b1b15e752ae154bfc9d0f5c8a17ac02127f96ccf114469bb92d02fe7d2ac13acd2415bfe6af0169c823b4aec09e2d6886c031df8e8c809ccb94efa60b62 -EBUILD python-2.7.18.ebuild 10593 BLAKE2B 8e0f4c58a44ffe10533a7e534bb28a642e258468a4d546a77e39075d1c8ff63d2b3e9d99858eb1d93f84b40101f9cdc2b1db0e45ab6755167da486e5f9468e59 SHA512 5f880a3e0a47efb13d0f9f7f9e7ad01f78c46d772d9de999c3bb67b68adca05a1e01dc2fff8b21b8daaba9e0b9cdb44642c35e04a98217b04d5e2ee3fda2719e -EBUILD python-3.6.10-r2.ebuild 10333 BLAKE2B 550cfb681267f867d7454097faabf278517f6dbd93b64b879d08251ca5d018456baa4097c632be29885ed6f89de82482c282b15f9777cfc21ec5b342a25e6836 SHA512 568baa3112199ef0d3beab20ab37fa7e7c54e25b91285b86f27665a987f3303258ff78fe2682b67c22cabdd3db0724387a9d85f6284b1c059ec709c113194e1f -EBUILD python-3.6.11.ebuild 10339 BLAKE2B dc9b943a81912964afa1104bfb2d1dc5665e2357b3108f43cef528d3cc79a59c3f1f9430b9081c134e8f9b0cbd844798ebffd8a47f08aa4db8d130e330be4e9b SHA512 979dd02f98e577034bdbbc8dd85c7ccc42cc6e1ec747d096f4237916e3546776e8bbe12371c112ec185f2d2dc7c3a5319f9a4b5f944120af713a8c7a0160247a -EBUILD python-3.7.7-r2.ebuild 9877 BLAKE2B 182391402d72a38090801f4ea95ddcc26385bfb6174d7fffe6d0acb45fc735ca62d561ba64b324f2e6d64761f51ec18dfc1c4f04abe131138ebe8985b927fd2d SHA512 39fed5b175cf581371ae4150c539e4a2d1a3d5f7f247d92147c49fd8cd7eb231688d7507b1efb10194683834b37697c5f4e6721bffd592ca8698355fe9670a58 -EBUILD python-3.7.8.ebuild 9886 BLAKE2B 24803229a1282b90ed018ad5edf685fab787d09afbd7af2caf66d3e8f23f40ecafbd740a848fae5fe572edf7e38671071eb8b02ea3d800a4df48def5d50a421d SHA512 ea2b32238af895a4f7e89c7df500aecbbfb2b79f13fe88e73340e4187c8b52033510d744138bc69b4e8a79eb2ad41406ebabc394c59bb344a5f86b93c40e08c0 -EBUILD python-3.8.2-r2.ebuild 9928 BLAKE2B e131852b497fd24ecf3768cfaff2188e499a0ca0700443a146b26a0b2e38c1c83a0438455f22afa45f7eaeb96e744bdce9a1530ad831fe929ed561f3f0cc84a5 SHA512 b43d77bf74b18d4d758df5b6399cc38e5edfd52d1652f5b5c0d6083f22ebd5f880e4e5a12244895300aebd284863e77d0318c053b0e87e7e6572e88ec6b5c15b -EBUILD python-3.8.3.ebuild 9934 BLAKE2B 9319fd3f2283fb848d28e153b25bb771f2f060fa5348a7b6ccbad0c3a706713bc9f05abb1acf928df4df8b00dd77562e814dd6c610bab33a19b738f57c38ee9b SHA512 9a3ff67e6b8105790fe72f9359aa6fedcfb06860d4b67ff3c5bc50c8d84ed5324dc2d581d39c6867bf103414c4db2a2657730a48ff58e85b7665ef5d0dd55a0e -EBUILD python-3.9.0_beta3.ebuild 9219 BLAKE2B 7901178a271e7e6bcb8cdc8d7dfa39475fe1f77c298d6222e0aa1a9dc32f999b49691c14102ebb755bf9fef85717fefe1a10b5bf6d2988f8783b6944cb56c989 SHA512 7d05c62b192e2df79c0ed74ca13054f45ddd9c0f2fa77aea0c0ad805cf70274678f8282a6fe7d7f890cae52a07971497c471510e1f1fb1555ee7177b93ccdefe -EBUILD python-3.9.0_beta4.ebuild 9219 BLAKE2B 7901178a271e7e6bcb8cdc8d7dfa39475fe1f77c298d6222e0aa1a9dc32f999b49691c14102ebb755bf9fef85717fefe1a10b5bf6d2988f8783b6944cb56c989 SHA512 7d05c62b192e2df79c0ed74ca13054f45ddd9c0f2fa77aea0c0ad805cf70274678f8282a6fe7d7f890cae52a07971497c471510e1f1fb1555ee7177b93ccdefe +DIST Python-3.7.9.tar.xz 17389636 BLAKE2B 484833aa2aa4e29051a02969294f72099ff6f1a47d944b1a0dd15f8e6c22a0406d551bcbcd1048cf89defedaccf060733211e34b38e31fd8391dd823eaa35bc0 SHA512 e4217b25529b5336e43b63d17f3758a8177a58184564cf02bd92a312f58dba9e096485c9e3cb3544f966e847ea15b3ab30ed065d28a6ca52a6d7e0faddf7d9f9 +DIST Python-3.8.4.tar.xz 18020412 BLAKE2B cfcfb293c413b25fc3ca48116cf8ffaba7bee18e9af9accf26be9b4373a0c62dd8e9da70e5a8a38ba6da4d1afbdbd589ae5ea4b618b65130ae061698b445908c SHA512 37a36d014a8372742be9d0bd9dd3a275e100dc21b1515c145bc62425d4d157327b6e63ad99bc888c0b36c1da4c05676c40eb086e75072d1906e3210ec3043dcb +DIST Python-3.8.5.tar.xz 18019640 BLAKE2B bb3e0566afe28759e4ab129ad0986a0fc5103514f2e2b22ff4aa3973c3173ebdd24d4267fbaf903841814a611fd9ea122673e5a1918934366e5c0efaef9d7517 SHA512 460cee65d7df7150694590575502d7f22e548ebfc99c8f8b363eef8bf30ee72e58d8ffacb1d607824f877f880eb9fd6775a508388029583e1e1df3380f3f9587 +DIST Python-3.9.0rc1.tar.xz 18798364 BLAKE2B 2ebf669720bcc057f7e1056aca6ff42686a8e567a5ea10304f19e53ae80ba6ba60b9157ae401427be4afa1ec296d97bb81a2b55c60a4df3dba39ae545484e0fc SHA512 8fddf940600bdd4096c0144f689fb9e803bdc7a1ee00f46ccfde3566342ed465c7ac6806613e4f61440fb65f8f83057204bd0dc432ac379759cd4d410c151eef +DIST python-gentoo-patches-2.7.18-r1.tar.xz 15500 BLAKE2B 7008b29827dbbd80d4ab8f010ccf9efced99c6b4b9109e4430c0ba269ce53529cb6fedd832502c8d2d3aa21938749cc3591c2545b21c0a59a6e60f8598e84ccc SHA512 e656ab07281fd932b92165674619bbf55ecf410d2937ae4ae771d490b4532540498cc731d30d19c1e8aafd1f64df8a406bbfbb46ea985b3dcd8edb89a0b7f20f +DIST python-gentoo-patches-3.6.11-r3.tar.xz 14064 BLAKE2B 416780c15ee12cfc06bfd1397d510dd42fea61abcaafd9cf54f27d843342debf0caa93c9700686feb14f04239ad4ea8f20ce8736029638abe7d7b9c57b9d659d SHA512 de6a4a5bec89e6149b85b383991c99bd9460a8f59f52a700d54edd0154557727ccc79daaa90336dff434b222657c3f28dda1228d2d474002d0a28f31c9ed0b10 +DIST python-gentoo-patches-3.6.12.tar.xz 11448 BLAKE2B a7fb7153ca6fd353649f9dc23f2d777e84ff144d67984d8c3d292619a4f671e3a71d8022bcc334b55f9f1f416ceeca113fb116da805e4bc45d8a67cbc098ead8 SHA512 7efb97abd3e058e4532b89205c99794836ba094079de2a6d7846fd2673ea8cc31e68573b83fd9f82453151653fb0ed9bc40b7961b41efdfe703b64cbed2576bf +DIST python-gentoo-patches-3.7.8-r3.tar.xz 13232 BLAKE2B 9df47b1f61d08f62a80221bc48d73ec27cd74a9ade8219912c5b02eaea919b70d91b1154837cd03c0129a5839186e9c970167ca3398129c044c25c7853f1f920 SHA512 e1477d425cb6125ca2286d816f4aa4e9e3c789d6a4f4907bd7b78549598356cae5766f642e2cad9e7c3abe2e82c12cf3cb7db3513be68aa213cb64cc0abc678a +DIST python-gentoo-patches-3.7.9.tar.xz 10588 BLAKE2B f60c8500671e7e3977412474c838905846e0609a7fdac787f2c6a8bfa53c887dcfd3466c5276772ffb8c20205e8b3f207f7d148c04524f19d095964b519da62d SHA512 11f411eb2d59fd45fbd80bdb1d1a83d413770779244045006942c5cb84837cba606673bcde102ae03b1d4579f526b551c93a64d39dba530b4584ba8dd8e9f13e +DIST python-gentoo-patches-3.8.4-r2.tar.xz 12660 BLAKE2B 3197edc6beb2b1be05399f268ff9b337ed67f699e3867160fea8e50f763a62b184ddd7adcdfa55dafc8c14f91e020b409461027361d04858db667992794b1168 SHA512 c56adbec04bfb950f7fb65f38cc0b78eaae9783800c755b7ac934b07725fcf4d69bbc2c29f7d1255acd6e88559a216dc8a6088042a479aa0d453b706e318c0cf +DIST python-gentoo-patches-3.8.5.tar.xz 11280 BLAKE2B 163c577da75f4ec0ebe86b5a08bea96d5ae406020bd211439b1405c0f8a5dddc9422a9ea5b16eed195433cbec010d9def3126a578d3f9716325482216b9e4d62 SHA512 6b7f72b8deb87fb7a169e97391185823984b5e9c99ec5232504c670843fbe0ca76afe32fc3fbe1f850ec6c42e9325cf4697022f36f7b00a4028b324069dd4d5b +DIST python-gentoo-patches-3.9.0rc1.tar.xz 8856 BLAKE2B 7bd032dfd047640c6a53633b5b9ee7b24199106b985230f772dda978d3b79fe0406eea64c4a842603a20afb71a90469befa7ec59a5ef1f793e4c901aa85952d1 SHA512 85a7d4397abf2a0f3c3d07a94a3e184ba3dcb347f3b70ee2cb77e81aac63846b01323a0228afd0fd1d32b3cafb64b18f82e6f5bfd88e4d564261ddae11e747eb +EBUILD python-2.7.18-r1.ebuild 10596 BLAKE2B 2aa1a8152a9fd960de4dbc37e3b959d412855e3901c946783b908feeaf25af6333a5d375a26eef50436b8c5167019c7c7b5e0610787850f73b57ee6a4814fe65 SHA512 cdc9dafd0fadd459a4a8d22c5dc7b89fc125ca13ee3ca45166416acc26628b7f97478b4efd9e976177e209b1e2fa592a5034c79f343096053f4ddd790424f0d7 +EBUILD python-3.6.11-r2.ebuild 10610 BLAKE2B d9074e767b11ed420c843665b87c466f0014713221c0db4a026fbd91a39debc69689a1674db8a0c0b80dc3eb8df7bc86fe92972918f4c95ef8a52da2936bf631 SHA512 693795866815e724267877e4f97e14d09eda9f321b5c2b481f54952fcefc0859072ab42306eb03b81bd8b3e0a2d71435367452330caabf6bfebbcd2062d1ced0 +EBUILD python-3.6.12.ebuild 10615 BLAKE2B 7aebcadf3a22ebba8601bad7d3d701d24a78788bdc4e727375a7583d5c29522aec77802a30adbd0b0855c464edbf18d40aea2ee2df80184d8d08c1dac6843474 SHA512 40c4a643756e7b7a1b640fc23cbf65cab24615766b9aac538ff32a0684738e715007a659a48a7f0dbd6cb6783026856e0591700f57be4438112d1018739575a6 +EBUILD python-3.7.8-r2.ebuild 10157 BLAKE2B 9d802985fd19463a82452e390a7c20144c839075e307c1ddcdcce9ee0aa923d35e39501af27274cc93d7478ce9beb03e30104dfdc5e464ed1923c1af76f4384e SHA512 7372df64cf7d230bf0e307b442b29c617d062f7bed9032e1e2179e576b788db0c3c8426eae39e654f5eaea6f632a35927e2bf2e32d9f6d247c7359adcb22d322 +EBUILD python-3.7.9.ebuild 10163 BLAKE2B 6b9298cd3d854ab216ffa42c2f6ef36dbd6fadb4b432cfdcbefd7d6a50e62ecf2e9c08e9aa7dadabc6528e2f7e6cc683cc857e131e74204191b97e69ec09bbe3 SHA512 87d3c0947b89b49e76e0366b8b71fc18e0a718ea3fdc1dc270cacaf651de1ec4709bea7fa10a1e6629d639c9c39b1eb5ae048d4014a12f1a7c8683548fff5eef +EBUILD python-3.8.4-r1.ebuild 9928 BLAKE2B 9ebf074bef412756a79b6a9995f8eebdb92239e0558101b873e5d81a3ce74ef8bdcd0fcfb12f93a5d684d919b840912f91213351ef2db4e634feb00e3071ca81 SHA512 c3f9125df55adada570e75a521017e503e095335f98ef899b9d932ac731af8e21487e0710a70572c2766193ed02cc1e32f2350b457add36519762607c131a629 +EBUILD python-3.8.5.ebuild 10258 BLAKE2B 499ca6e4af5eff7f1ecf0956262b5cd9d3a7b1b4832abcc2041e79e8617cda438f685e4e227dfd475f54c02a2132ebd26c6ddaa97662c1e3fe821586ae089e87 SHA512 31eb14cd5dab778578c0460f7fec610c20d54bed51407c4eec22cac1dd35730fe46c7b0ff2beea3fe925d4972831e61d58431ed62116914bf1428cacb909600e +EBUILD python-3.9.0_rc1.ebuild 9542 BLAKE2B 8185c40c749ce46f8bcadccf0da4f6f67d7b134cf3c145d5d7aecde49bbe1fd3aef035362b6d96c1cae596d91df58daeb2d504713cce5ab93a4b02f650bdf438 SHA512 5ac13c9dbb331b6eb50314770623ca29c7bb1fff15177845b0d2a67c82795062b6fc02d274364d9ecd58a5e9d4caf23350df414b46d7c483a90e178916c9bce9 MISC metadata.xml 819 BLAKE2B 120c7c65d77488e726c5a0f4aa19469867ea6900e747169fae2f9cf8f14ec2936089d5edfe1935ce610bec26387273e261b1cc4b023680c8c4b229f2141a7223 SHA512 08f45707e5490067a21951b9d37c8ae67064ab67cccc5b8d8c204eab8d4a004fb910627b62989c67b849b89d301618f8f8f7996e99e1ef5bab38a239c49c124d diff --git a/dev-lang/python/python-2.7.18.ebuild b/dev-lang/python/python-2.7.18-r1.ebuild index bd043f3e2c6a..146b0a7e20e4 100644 --- a/dev-lang/python/python-2.7.18.ebuild +++ b/dev-lang/python/python-2.7.18-r1.ebuild @@ -8,7 +8,7 @@ inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs MY_P="Python-${PV}" PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-2.7.18" +PATCHSET="python-gentoo-patches-2.7.18-r1" DESCRIPTION="An interpreted, interactive, object-oriented programming language" HOMEPAGE="https://www.python.org/" diff --git a/dev-lang/python/python-3.6.10-r2.ebuild b/dev-lang/python/python-3.6.11-r2.ebuild index 24b9bc8e4b6e..ea7d7c2ab712 100644 --- a/dev-lang/python/python-3.6.10-r2.ebuild +++ b/dev-lang/python/python-3.6.11-r2.ebuild @@ -4,11 +4,12 @@ EAPI="7" WANT_LIBTOOL="none" -inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs +inherit autotools flag-o-matic multiprocessing pax-utils \ + python-utils-r1 toolchain-funcs MY_P="Python-${PV}" PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-3.6.10-r1" +PATCHSET="python-gentoo-patches-3.6.11-r3" DESCRIPTION="An interpreted, interactive, object-oriented programming language" HOMEPAGE="https://www.python.org/" @@ -81,6 +82,11 @@ src_prepare() { configure.ac \ setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@" + # force correct number of jobs + # https://bugs.gentoo.org/737660 + local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") + sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die + eautoreconf } @@ -193,10 +199,12 @@ src_test() { # bug 660358 local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty + local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") + + emake test EXTRATESTOPTS="-u-network -j${jobs}" \ + CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty local result=$? for test in ${skipped_tests}; do diff --git a/dev-lang/python/python-3.6.11.ebuild b/dev-lang/python/python-3.6.12.ebuild index cebadb559b7d..b19332465493 100644 --- a/dev-lang/python/python-3.6.11.ebuild +++ b/dev-lang/python/python-3.6.12.ebuild @@ -4,11 +4,12 @@ EAPI="7" WANT_LIBTOOL="none" -inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs +inherit autotools flag-o-matic multiprocessing pax-utils \ + python-utils-r1 toolchain-funcs MY_P="Python-${PV}" PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-3.6.11" +PATCHSET="python-gentoo-patches-${PV}" DESCRIPTION="An interpreted, interactive, object-oriented programming language" HOMEPAGE="https://www.python.org/" @@ -81,6 +82,11 @@ src_prepare() { configure.ac \ setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@" + # force correct number of jobs + # https://bugs.gentoo.org/737660 + local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") + sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die + eautoreconf } @@ -193,10 +199,12 @@ src_test() { # bug 660358 local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty + local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") + + emake test EXTRATESTOPTS="-u-network -j${jobs}" \ + CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty local result=$? for test in ${skipped_tests}; do diff --git a/dev-lang/python/python-3.7.7-r2.ebuild b/dev-lang/python/python-3.7.8-r2.ebuild index ce301b612b1c..0daef877b50e 100644 --- a/dev-lang/python/python-3.7.7-r2.ebuild +++ b/dev-lang/python/python-3.7.8-r2.ebuild @@ -4,11 +4,12 @@ EAPI="7" WANT_LIBTOOL="none" -inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs +inherit autotools flag-o-matic multiprocessing pax-utils \ + python-utils-r1 toolchain-funcs MY_P="Python-${PV}" PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-3.7.7" +PATCHSET="python-gentoo-patches-3.7.8-r3" DESCRIPTION="An interpreted, interactive, object-oriented programming language" HOMEPAGE="https://www.python.org/" @@ -73,6 +74,11 @@ src_prepare() { sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \ setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@" + # force correct number of jobs + # https://bugs.gentoo.org/737660 + local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") + sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die + eautoreconf } @@ -180,10 +186,12 @@ src_test() { # bug 660358 local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty + local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") + + emake test EXTRATESTOPTS="-u-network -j${jobs}" \ + CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty local result=$? for test in ${skipped_tests}; do diff --git a/dev-lang/python/python-3.7.8.ebuild b/dev-lang/python/python-3.7.9.ebuild index c88e819e8b18..fb3f26334f6f 100644 --- a/dev-lang/python/python-3.7.8.ebuild +++ b/dev-lang/python/python-3.7.9.ebuild @@ -4,11 +4,12 @@ EAPI="7" WANT_LIBTOOL="none" -inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs +inherit autotools flag-o-matic multiprocessing pax-utils \ + python-utils-r1 toolchain-funcs MY_P="Python-${PV}" PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-3.7.8" +PATCHSET="python-gentoo-patches-${PV}" DESCRIPTION="An interpreted, interactive, object-oriented programming language" HOMEPAGE="https://www.python.org/" @@ -73,6 +74,11 @@ src_prepare() { sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \ setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@" + # force correct number of jobs + # https://bugs.gentoo.org/737660 + local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") + sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die + eautoreconf } @@ -180,10 +186,12 @@ src_test() { # bug 660358 local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty + local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") + + emake test EXTRATESTOPTS="-u-network -j${jobs}" \ + CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty local result=$? for test in ${skipped_tests}; do diff --git a/dev-lang/python/python-3.8.2-r2.ebuild b/dev-lang/python/python-3.8.4-r1.ebuild index 543abfef801c..6069492f13fa 100644 --- a/dev-lang/python/python-3.8.2-r2.ebuild +++ b/dev-lang/python/python-3.8.4-r1.ebuild @@ -8,7 +8,7 @@ inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs MY_P="Python-${PV}" PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-3.8.2-r1" +PATCHSET="python-gentoo-patches-3.8.4-r2" DESCRIPTION="An interpreted, interactive, object-oriented programming language" HOMEPAGE="https://www.python.org/" diff --git a/dev-lang/python/python-3.8.3.ebuild b/dev-lang/python/python-3.8.5.ebuild index c1cb51ab328b..df05aaedef1f 100644 --- a/dev-lang/python/python-3.8.3.ebuild +++ b/dev-lang/python/python-3.8.5.ebuild @@ -4,11 +4,12 @@ EAPI="7" WANT_LIBTOOL="none" -inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs +inherit autotools flag-o-matic multiprocessing pax-utils \ + python-utils-r1 toolchain-funcs MY_P="Python-${PV}" PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-3.8.3" +PATCHSET="python-gentoo-patches-${PV}" DESCRIPTION="An interpreted, interactive, object-oriented programming language" HOMEPAGE="https://www.python.org/" @@ -18,7 +19,7 @@ S="${WORKDIR}/${MY_P}" LICENSE="PSF-2" SLOT="${PYVER}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86" IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test tk wininst +xml" RESTRICT="!test? ( test )" @@ -73,6 +74,12 @@ src_prepare() { sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \ setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@" + # force correct number of jobs + # https://bugs.gentoo.org/737660 + local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") + sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die + sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die + eautoreconf } @@ -185,10 +192,12 @@ src_test() { # bug 660358 local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty + local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") + + emake test EXTRATESTOPTS="-u-network -j${jobs}" \ + CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty local result=$? for test in ${skipped_tests}; do diff --git a/dev-lang/python/python-3.9.0_beta3.ebuild b/dev-lang/python/python-3.9.0_beta3.ebuild deleted file mode 100644 index 8a98fd0b0c77..000000000000 --- a/dev-lang/python/python-3.9.0_beta3.ebuild +++ /dev/null @@ -1,323 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" -WANT_LIBTOOL="none" - -inherit autotools check-reqs flag-o-matic pax-utils python-utils-r1 \ - toolchain-funcs - -MY_P="Python-${PV/_beta/b}" -PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-3.9.0b3" - -DESCRIPTION="An interpreted, interactive, object-oriented programming language" -HOMEPAGE="https://www.python.org/" -SRC_URI="https://www.python.org/ftp/python/${PV%_*}/${MY_P}.tar.xz - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz" -S="${WORKDIR}/${MY_P}" - -LICENSE="PSF-2" -SLOT="${PYVER}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test tk wininst +xml" -RESTRICT="!test? ( test )" - -# Do not add a dependency on dev-lang/python to this ebuild. -# If you need to apply a patch which requires python for bootstrapping, please -# run the bootstrap code on your dev box and include the results in the -# patchset. See bug 447752. - -RDEPEND="app-arch/bzip2:= - app-arch/xz-utils:= - dev-libs/libffi:= - sys-apps/util-linux:= - >=sys-libs/zlib-1.1.3:= - virtual/libcrypt:= - virtual/libintl - gdbm? ( sys-libs/gdbm:=[berkdb] ) - ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( >=sys-libs/readline-4.1:= ) - sqlite? ( >=dev-db/sqlite-3.3.8:3= ) - ssl? ( - !libressl? ( dev-libs/openssl:= ) - libressl? ( dev-libs/libressl:= ) - ) - tk? ( - >=dev-lang/tcl-8.0:= - >=dev-lang/tk-8.0:= - dev-tcltk/blt:= - dev-tcltk/tix - ) - xml? ( >=dev-libs/expat-2.1:= )" -# bluetooth requires headers from bluez -DEPEND="${RDEPEND} - bluetooth? ( net-wireless/bluez ) - test? ( app-arch/xz-utils[extra-filters(+)] ) - virtual/pkgconfig - !sys-devel/gcc[libffi(-)]" -RDEPEND+=" !build? ( app-misc/mime-types )" -PDEPEND=">=app-eselect/eselect-python-20140125-r1" - -# large file tests involve a 2.5G file being copied (duplicated) -CHECKREQS_DISK_BUILD=5500M - -pkg_pretend() { - use test && check-reqs_pkg_pretend -} - -pkg_setup() { - use test && check-reqs_pkg_setup -} - -src_prepare() { - # Ensure that internal copies of expat, libffi and zlib are not used. - rm -fr Modules/expat || die - rm -fr Modules/_ctypes/libffi* || die - rm -fr Modules/zlib || die - - local PATCHES=( - "${WORKDIR}/${PATCHSET}" - ) - - default - - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \ - setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@" - - eautoreconf -} - -src_configure() { - local disable - # disable automagic bluetooth headers detection - use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no - use gdbm || disable+=" gdbm" - use ncurses || disable+=" _curses _curses_panel" - use readline || disable+=" readline" - use sqlite || disable+=" _sqlite3" - use ssl || export PYTHON_DISABLE_SSL="1" - use tk || disable+=" _tkinter" - use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat. - export PYTHON_DISABLE_MODULES="${disable}" - - if ! use xml; then - ewarn "You have configured Python without XML support." - ewarn "This is NOT a recommended configuration as you" - ewarn "may face problems parsing any XML documents." - fi - - if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then - einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}" - fi - - if [[ "$(gcc-major-version)" -ge 4 ]]; then - append-flags -fwrapv - fi - - filter-flags -malign-double - - # https://bugs.gentoo.org/show_bug.cgi?id=50309 - if is-flagq -O3; then - is-flagq -fstack-protector-all && replace-flags -O3 -O2 - use hardened && replace-flags -O3 -O2 - fi - - # https://bugs.gentoo.org/700012 - if is-flagq -flto || is-flagq '-flto=*'; then - append-cflags $(test-flags-CC -ffat-lto-objects) - fi - - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. - tc-export CXX - - # Set LDFLAGS so we link modules with -lpython3.2 correctly. - # Needed on FreeBSD unless Python 3.2 is already installed. - # Please query BSD team before removing this! - append-ldflags "-L." - - # Fix implicit declarations on cross and prefix builds. Bug #674070. - use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw - - local dbmliborder - if use gdbm; then - dbmliborder+="${dbmliborder:+:}gdbm" - fi - - local myeconfargs=( - # glibc-2.30 removes it; since we can't cleanly force-rebuild - # Python on glibc upgrade, remove it proactively to give - # a chance for users rebuilding python before glibc - ac_cv_header_stropts_h=no - - --enable-shared - $(use_enable ipv6) - --infodir='${prefix}/share/info' - --mandir='${prefix}/share/man' - --with-computed-gotos - --with-dbmliborder="${dbmliborder}" - --with-libc= - --enable-loadable-sqlite-extensions - --without-ensurepip - --with-system-expat - --with-system-ffi - ) - - OPT="" econf "${myeconfargs[@]}" -} - -src_compile() { - # Ensure sed works as expected - # https://bugs.gentoo.org/594768 - local -x LC_ALL=C - - emake CPPFLAGS= CFLAGS= LDFLAGS= - - # Work around bug 329499. See also bug 413751 and 457194. - if has_version dev-libs/libffi[pax_kernel]; then - pax-mark E python - else - pax-mark m python - fi -} - -src_test() { - # Tests will not work when cross compiling. - if tc-is-cross-compiler; then - elog "Disabling tests due to crosscompiling." - return - fi - - # Skip failing tests. - local skipped_tests="gdb" - - for test in ${skipped_tests}; do - mv "${S}"/Lib/test/test_${test}.py "${T}" - done - - # bug 660358 - local -x COLUMNS=80 - - local -x PYTHONDONTWRITEBYTECODE= - - emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty - local result=$? - - for test in ${skipped_tests}; do - mv "${T}/test_${test}.py" "${S}"/Lib/test - done - - elog "The following tests have been skipped:" - for test in ${skipped_tests}; do - elog "test_${test}.py" - done - - elog "If you would like to run them, you may:" - elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'" - elog "and run the tests separately." - - if [[ ${result} -ne 0 ]]; then - die "emake test failed" - fi -} - -src_install() { - local libdir=${ED}/usr/lib/python${PYVER} - - emake DESTDIR="${D}" altinstall - - # Remove static library - rm "${ED}"/usr/$(get_libdir)/libpython*.a || die - - sed \ - -e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \ - -e "s/\(PY_LDFLAGS=\).*/\1/" \ - -i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed" - - # Fix collisions between different slots of Python. - rm "${ED}/usr/$(get_libdir)/libpython3.so" || die - - # Cheap hack to get version with ABIFLAGS - local abiver=$(cd "${ED}/usr/include"; echo python*) - if [[ ${abiver} != python${PYVER} ]]; then - # Replace python3.X with a symlink to python3.Xm - rm "${ED}/usr/bin/python${PYVER}" || die - dosym "${abiver}" "/usr/bin/python${PYVER}" - # Create python3.X-config symlink - dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" - # Create python-3.5m.pc symlink - dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" - fi - - # python seems to get rebuilt in src_install (bug 569908) - # Work around it for now. - if has_version dev-libs/libffi[pax_kernel]; then - pax-mark E "${ED}/usr/bin/${abiver}" - else - pax-mark m "${ED}/usr/bin/${abiver}" - fi - - use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die - use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die - - dodoc Misc/{ACKS,HISTORY,NEWS} - - if use examples; then - docinto examples - find Tools -name __pycache__ -exec rm -fr {} + || die - dodoc -r Tools - fi - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 - local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \ - emake --no-print-directory -s -f - 2>/dev/null) - newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py - - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} - sed \ - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ - -e "s:@PYDOC@:pydoc${PYVER}:" \ - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" - - local -x EPYTHON=python${PYVER} - # if not using a cross-compiler, use the fresh binary - if ! tc-is-cross-compiler; then - local -x PYTHON=./python - local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD} - else - local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON} - fi - - echo "EPYTHON='${EPYTHON}'" > epython.py || die - python_domodule epython.py - - # python-exec wrapping support - local pymajor=${PYVER%.*} - local scriptdir=${D}$(python_get_scriptdir) - mkdir -p "${scriptdir}" || die - # python and pythonX - ln -s "../../../bin/${abiver}" \ - "${scriptdir}/python${pymajor}" || die - ln -s "python${pymajor}" "${scriptdir}/python" || die - # python-config and pythonX-config - # note: we need to create a wrapper rather than symlinking it due - # to some random dirname(argv[0]) magic performed by python-config - cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die - #!/bin/sh - exec "${abiver}-config" "\${@}" - EOF - chmod +x "${scriptdir}/python${pymajor}-config" || die - ln -s "python${pymajor}-config" \ - "${scriptdir}/python-config" || die - # 2to3, pydoc - ln -s "../../../bin/2to3-${PYVER}" \ - "${scriptdir}/2to3" || die - ln -s "../../../bin/pydoc${PYVER}" \ - "${scriptdir}/pydoc" || die - # idle - if use tk; then - ln -s "../../../bin/idle${PYVER}" \ - "${scriptdir}/idle" || die - fi -} diff --git a/dev-lang/python/python-3.9.0_beta4.ebuild b/dev-lang/python/python-3.9.0_rc1.ebuild index 8a98fd0b0c77..6bf6b905d71f 100644 --- a/dev-lang/python/python-3.9.0_beta4.ebuild +++ b/dev-lang/python/python-3.9.0_rc1.ebuild @@ -4,12 +4,12 @@ EAPI="7" WANT_LIBTOOL="none" -inherit autotools check-reqs flag-o-matic pax-utils python-utils-r1 \ - toolchain-funcs +inherit autotools check-reqs flag-o-matic multiprocessing pax-utils \ + python-utils-r1 toolchain-funcs -MY_P="Python-${PV/_beta/b}" +MY_P="Python-${PV/_/}" PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-3.9.0b3" +PATCHSET="python-gentoo-patches-${PV/_/}" DESCRIPTION="An interpreted, interactive, object-oriented programming language" HOMEPAGE="https://www.python.org/" @@ -85,6 +85,12 @@ src_prepare() { sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \ setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@" + # force correct number of jobs + # https://bugs.gentoo.org/737660 + local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") + sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die + sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die + eautoreconf } @@ -197,10 +203,12 @@ src_test() { # bug 660358 local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty + local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") + + emake test EXTRATESTOPTS="-u-network -j${jobs}" \ + CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty local result=$? for test in ${skipped_tests}; do diff --git a/dev-lang/qu-prolog/Manifest b/dev-lang/qu-prolog/Manifest index e01bc21a888e..2eb788b79f74 100644 --- a/dev-lang/qu-prolog/Manifest +++ b/dev-lang/qu-prolog/Manifest @@ -1,13 +1,7 @@ AUX qu-prolog-10.5-gcc-version.patch 872 BLAKE2B 0ca594ff48e9c58c7f99d2f4774308e0e6024188157197da75846b849f11a05f3d8331f8a16a7f31c648bf6e1f60fd2f184619dd64201ec0239fd64caf098919 SHA512 b120b532101b8adf69fe1ed7ded1cf3dc8a78a59fc74fc287cf6627f593b792b33ab2bbaa4022f2ec654e0bf2e3b64cb8bca5c5f6b2c3a41c2a1a243f703e60f AUX qu-prolog-10.x-qt5.patch 1037 BLAKE2B 91287f26c97c0c2f1c9cd3bae3a007cf27e4b8121aca4a42cabbbb37c224b7399ed06468b7a725977f27bad2fcda8d2165bfeb569f36491d227dd472036de5ed SHA512 9dd1c8245f725d552bf23ad9ef1bb858a06c69b66778fa851013775081751a77923e2145f6575966e8394666b8dc2e04724d102be28b32efaa44b7e474b3dd7f -DIST qp10.1.tar.gz 1521610 BLAKE2B a4d6d277a35284accfff1afd70901218df198b2b33f5c95ca5649bf06abcb153890f2f21b0e8d62ed93484b452a230074f93c983ab231c8fc58b51a29119d838 SHA512 8fb30fcbc086384d7e265695a7d24a9599ed306b5da0ea964e60aef4bb01c7b6789fc361449f908736c57d86c204e574d745f277d5b0ec2b725a8eca52f14f1a -DIST qp10.2.tar.gz 1667066 BLAKE2B fe466bc892a0923f463347bfa22618061d8a8baf9e2fc60ea27694c66be6dc8ac9b0bacd3084bccff95ff06ef949660cb9a0637a8e3e3595d04c44eb2b682bc9 SHA512 5cfebab17a812513bb4ddf4c04890af32339bef18d746dd6503cee13d295c43f1ef687a6c7814b2f40473766c695459f8234541ae8a6945a0f2930556985ad96 -DIST qp10.3.tar.gz 1669345 BLAKE2B 9dc14f683555b22e7bb2119dd6d29cad7c934bb162def4358d69da65cd259b586fac593c7770dc1d665ab56da2e1129a696e84b01a271b747a9e3a8598c0d7fa SHA512 e28519fccf58f2b755382f2b8e56c15f2622508822c920975577feb6b837f96346a14eb23a5209ed126e617264ed7846b8a35d5936e99284503d5c435c0a1c18 DIST qp10.4.tar.gz 1671144 BLAKE2B 293cbc09a058714f762e5d371074ca1b87e8177868851a3db2606a837810b474e926c43f6715c5088c718f2b1841c46f9668795ac53edc0266a9a6d5d04386f5 SHA512 39193ba2c39dc24b234092a47f9834af5b8dff6edc34ba6e0ceb6a4bda60c2f30b951bc17ef72da1dd220ef62563c88f4106dd0115a5bf8e51045abfb96151c6 DIST qp10.5.tar.gz 1670927 BLAKE2B 74fd47beb18f7081ade39bf215a999066a2a5e99753ee8e48751c37d7bff111d355a7713f13af43a1cffc2fa6ca5efdf89a633fba45accdef17ee265f068e57a SHA512 6a7d46f09015304ffa222c82be5d9fb28c272ce27641455113740f3a4a08887369208456c478320b30d9464d8eeea0f7fcc1c1e56e1a130134e2fe54d5446958 -EBUILD qu-prolog-10.1.ebuild 1947 BLAKE2B 2c5dff2cf601a8822592aed684a241ae61b17e42a4ea7bbeb704778cddadc97208813b656a8b44a581c46decfaa17fdc9cadd5be2c0d0aaabbe7e08feb3f0c93 SHA512 38a37103ab77155890f9fd59ce921a9211357f26dd00b7d211908c77d39371cb780ed1e498e04fc0486d9e38578af71adea0ac97d0e16731b0bcea40126367d0 -EBUILD qu-prolog-10.2.ebuild 1950 BLAKE2B 7afc003d0f75a3abaa8459188c10dd06e422eb60a985e69a00559e8dcb83455408932817302468a689af01061d2b3ce0201e65f88d5bb98c2644b95f6ad3a5ab SHA512 dc8389b186f7a84a14593bdce6bd33829061287f338e68894ce117dcf7e5e5f32f5e9099f324d5f7cc17ce7295f393e7ba49d49f442559bad5bd010ed0235e3e -EBUILD qu-prolog-10.3.ebuild 1909 BLAKE2B 772953fc1daee919d422764968f6df52da0f7ea04b316ee353cf188ef6e276a64d648c2da2c5312b257f5c7f255a86c3949c9462e9afaeafa67d471115efec2a SHA512 1ce44624dcbc29f65f20d232836556837641d75cf2b6ba002f20b6de351f08ccb6a8937949add4b13969370dcc24f3b6da6f09dd6a628d353d88ad264dfa80c4 -EBUILD qu-prolog-10.4.ebuild 1889 BLAKE2B ba7059b8d5c3f86122cdeff8868e095f18109eb604896912e1343037a14f6ba8008efe750542190648f1b92a76fca70c0014ad8583b95171ea78ba98cf835a3d SHA512 ef85143c8391ec647a3e92d934a7b2172bc9fbb270cd71c5d803925188345cf9cf1cef0af13f50de3718f938a31112a19e714182b54f76af7a503a9ef1e2ddca +EBUILD qu-prolog-10.4.ebuild 1886 BLAKE2B edbc9d921adeba6e5d729b74fec6fafd6fc84be0c241f1b6109e99b21e769ccff7c94cd8dbdee767f429c76160638499a4fe42f44d1fdde49015bc42aebe832c SHA512 df532910131df9678f0500263cd05b518a49c064f86d99461e8016569dc95b5475c486f6ff703a41d701433f0c0a0f43186ab3ee7a7f51762155a5a84ab705d4 EBUILD qu-prolog-10.5.ebuild 1962 BLAKE2B 56670281e663d1a51649fde6740370ea7f7454b094f16c514cc4daa356180d5e518ebb882bcbb576978d2875b4c8dde5bba86a3a21f7fc1774d178e5d6ccc597 SHA512 b18807094d8944eec12347d07f5624aed4d5b98d3130700e3e924ba78080832b7879c9b9791ba3c3120db978bf1a95a4bae6f5e1f9282a0a04f3b65b6390dae9 MISC metadata.xml 347 BLAKE2B d0d2ead501a46ff84953eceee649d58e406ebf5a83e7b7862b9501b2e665ad71b5c9c31f4790161074debb7b86ce7e53ff8d0904c39c37ddcac6250668685aca SHA512 7a7bb3ccaa42fa120c3702d963719d5fdfcf0a413685cad98bd34a515a4cc83a213a71e7f3b6b0ce67947fa347229caecf699879192f0d930c9c6577e0ce59cc diff --git a/dev-lang/qu-prolog/qu-prolog-10.1.ebuild b/dev-lang/qu-prolog/qu-prolog-10.1.ebuild deleted file mode 100644 index 66036b4f69a1..000000000000 --- a/dev-lang/qu-prolog/qu-prolog-10.1.ebuild +++ /dev/null @@ -1,100 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit eutils multilib qmake-utils - -MY_P=qp${PV} - -DESCRIPTION="Extended Prolog supporting quantifiers, object-variables and substitutions" -HOMEPAGE="http://www.itee.uq.edu.au/~pjr/HomePages/QuPrologHome.html" -SRC_URI="http://www.itee.uq.edu.au/~pjr/HomePages/QPFiles/${MY_P}.tar.gz" - -LICENSE="Apache-2.0 GPL-2+" -SLOT="0" -KEYWORDS="amd64 ppc x86" -IUSE="debug doc examples pedro qt5 readline threads" - -RDEPEND=" - !dev-util/mpatch - !dev-util/rej - !games-rpg/kqlives - qt5? ( - dev-qt/qtwidgets:5 - dev-qt/qtgui:5 - ) - pedro? ( net-misc/pedro ) - readline? ( app-misc/rlwrap )" -DEPEND="${RDEPEND} - dev-lang/perl" - -S="${WORKDIR}"/${MY_P} - -src_prepare() { - epatch "${FILESDIR}"/${PN}-10.x-qt5.patch - - eapply_user -} - -src_configure() { - econf \ - --libdir=/usr/$(get_libdir) \ - $(use_enable debug) \ - $(use_enable threads multiple-threads) - - if use qt5; then - cd "${S}"/src/xqp || die - eqmake5 xqp.pro - fi -} - -src_compile() { - emake OPTIMISATION="${CXXFLAGS}" - - if use qt5; then - cd "${S}"/src/xqp || die - emake - fi -} - -src_install() { - sed \ - -e "s|${S}|/usr/$(get_libdir)/qu-prolog|g" \ - -i bin/qc bin/qc1.qup bin/qecat bin/qg bin/qp || die - - dobin bin/{qc,qecat,qp,kq} - - use qt5 && dobin src/xqp/xqp - - into /usr/$(get_libdir)/${PN} - dobin bin/{qa,qc1.qup,qdeal,qem,qg,ql,qppp} - - insinto /usr/$(get_libdir)/${PN}/bin - doins bin/rl_commands - doins bin/{qc1.qup,qecat,qg,qp}.qx - - insinto /usr/$(get_libdir)/${PN}/library - doins prolog/library/*.qo - - insinto /usr/$(get_libdir)/${PN}/compiler - doins prolog/compiler/*.qo - - doman doc/man/man1/*.1 - - dodoc README - - if use doc ; then - docinto reference-manual - dodoc doc/manual/*.html - docinto user-guide - dodoc doc/user/main.pdf - fi - - if use examples ; then - insinto /usr/share/doc/${PF}/examples - doins examples/*.ql - docinto examples - newdoc examples/README README.examples - fi -} diff --git a/dev-lang/qu-prolog/qu-prolog-10.2.ebuild b/dev-lang/qu-prolog/qu-prolog-10.2.ebuild deleted file mode 100644 index d7dbcab7d77c..000000000000 --- a/dev-lang/qu-prolog/qu-prolog-10.2.ebuild +++ /dev/null @@ -1,100 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit eutils multilib qmake-utils - -MY_P=qp${PV} - -DESCRIPTION="Extended Prolog supporting quantifiers, object-variables and substitutions" -HOMEPAGE="http://www.itee.uq.edu.au/~pjr/HomePages/QuPrologHome.html" -SRC_URI="http://www.itee.uq.edu.au/~pjr/HomePages/QPFiles/${MY_P}.tar.gz" - -LICENSE="Apache-2.0 GPL-2+" -SLOT="0" -KEYWORDS="~amd64 ~ppc ~x86" -IUSE="debug doc examples pedro qt5 readline threads" - -RDEPEND=" - !dev-util/mpatch - !dev-util/rej - !games-rpg/kqlives - qt5? ( - dev-qt/qtwidgets:5 - dev-qt/qtgui:5 - ) - pedro? ( net-misc/pedro ) - readline? ( app-misc/rlwrap )" -DEPEND="${RDEPEND} - dev-lang/perl" - -S="${WORKDIR}"/${MY_P} - -src_prepare() { - epatch "${FILESDIR}"/${PN}-10.x-qt5.patch - - eapply_user -} - -src_configure() { - econf \ - --libdir=/usr/$(get_libdir) \ - $(use_enable debug) \ - $(use_enable threads multiple-threads) - - if use qt5; then - cd "${S}"/src/xqp || die - eqmake5 xqp.pro - fi -} - -src_compile() { - emake OPTIMISATION="${CXXFLAGS}" - - if use qt5; then - cd "${S}"/src/xqp || die - emake - fi -} - -src_install() { - sed \ - -e "s|${S}|/usr/$(get_libdir)/qu-prolog|g" \ - -i bin/qc bin/qc1.qup bin/qecat bin/qg bin/qp || die - - dobin bin/{qc,qecat,qp,kq} - - use qt5 && dobin src/xqp/xqp - - into /usr/$(get_libdir)/${PN} - dobin bin/{qa,qc1.qup,qdeal,qem,qg,ql,qppp} - - insinto /usr/$(get_libdir)/${PN}/bin - doins bin/rl_commands - doins bin/{qc1.qup,qecat,qg,qp}.qx - - insinto /usr/$(get_libdir)/${PN}/library - doins prolog/library/*.qo - - insinto /usr/$(get_libdir)/${PN}/compiler - doins prolog/compiler/*.qo - - doman doc/man/man1/*.1 - - dodoc README - - if use doc ; then - docinto reference-manual - dodoc doc/manual/*.html - docinto user-guide - dodoc doc/user/main.pdf - fi - - if use examples ; then - insinto /usr/share/doc/${PF}/examples - doins examples/*.ql - docinto examples - newdoc examples/README README.examples - fi -} diff --git a/dev-lang/qu-prolog/qu-prolog-10.3.ebuild b/dev-lang/qu-prolog/qu-prolog-10.3.ebuild deleted file mode 100644 index c6f3783e7484..000000000000 --- a/dev-lang/qu-prolog/qu-prolog-10.3.ebuild +++ /dev/null @@ -1,98 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit eutils multilib qmake-utils - -MY_P=qp${PV} - -DESCRIPTION="Extended Prolog supporting quantifiers, object-variables and substitutions" -HOMEPAGE="http://www.itee.uq.edu.au/~pjr/HomePages/QuPrologHome.html" -SRC_URI="http://www.itee.uq.edu.au/~pjr/HomePages/QPFiles/${MY_P}.tar.gz" - -LICENSE="Apache-2.0 GPL-2+" -SLOT="0" -KEYWORDS="~amd64 ~ppc ~x86" -IUSE="debug doc examples pedro qt5 readline threads" - -RDEPEND=" - !dev-util/mpatch - !dev-util/rej - !games-rpg/kqlives - qt5? ( - dev-qt/qtwidgets:5 - dev-qt/qtgui:5 - ) - pedro? ( net-misc/pedro ) - readline? ( app-misc/rlwrap )" -DEPEND="${RDEPEND} - dev-lang/perl" - -S="${WORKDIR}"/${MY_P} - -src_prepare() { - eapply "${FILESDIR}"/${PN}-10.x-qt5.patch - eapply_user -} - -src_configure() { - econf \ - --libdir=/usr/$(get_libdir) \ - $(use_enable debug) \ - $(use_enable threads multiple-threads) - - if use qt5; then - cd "${S}"/src/xqp || die - eqmake5 xqp.pro - fi -} - -src_compile() { - emake OPTIMISATION="${CXXFLAGS}" - - if use qt5; then - cd "${S}"/src/xqp || die - emake - fi -} - -src_install() { - sed \ - -e "s|${S}|/usr/$(get_libdir)/qu-prolog|g" \ - -i bin/qc bin/qc1.qup bin/qecat bin/qg bin/qp || die - - dobin bin/{qc,qecat,qp,kq} - - use qt5 && dobin src/xqp/xqp - - into /usr/$(get_libdir)/${PN} - dobin bin/{qa,qc1.qup,qdeal,qem,qg,ql,qppp} - - insinto /usr/$(get_libdir)/${PN}/bin - doins bin/rl_commands - doins bin/{qc1.qup,qecat,qg,qp}.qx - - insinto /usr/$(get_libdir)/${PN}/library - doins prolog/library/*.qo - - insinto /usr/$(get_libdir)/${PN}/compiler - doins prolog/compiler/*.qo - - doman doc/man/man1/*.1 - - dodoc README - - if use doc ; then - docinto reference-manual - dodoc doc/manual/*.html - docinto user-guide - dodoc doc/user/main.pdf - fi - - if use examples ; then - docinto examples - newdoc examples/README README.examples - dodoc examples/*.ql - fi -} diff --git a/dev-lang/qu-prolog/qu-prolog-10.4.ebuild b/dev-lang/qu-prolog/qu-prolog-10.4.ebuild index 79f9bc1fa0fc..c06392ec7013 100644 --- a/dev-lang/qu-prolog/qu-prolog-10.4.ebuild +++ b/dev-lang/qu-prolog/qu-prolog-10.4.ebuild @@ -13,7 +13,7 @@ SRC_URI="http://www.itee.uq.edu.au/~pjr/HomePages/QPFiles/${MY_P}.tar.gz" LICENSE="Apache-2.0 GPL-2+" SLOT="0" -KEYWORDS="~amd64 ~ppc ~x86" +KEYWORDS="amd64 ppc x86" IUSE="debug doc examples pedro qt5 readline threads" RDEPEND=" diff --git a/dev-lang/rakudo/Manifest b/dev-lang/rakudo/Manifest index 75f7ed20bd02..933b50d04464 100644 --- a/dev-lang/rakudo/Manifest +++ b/dev-lang/rakudo/Manifest @@ -1,9 +1,11 @@ AUX rakudo-2016.04-jna-lib.patch 970 BLAKE2B 28947a57089f3e53333d6dad83b9ff62411b1bb090f2301d6d415cf9e3eef5b6a96dfbaf94020c249e24cca707655522929114ecb032bb4e701d6a3c7ad46810 SHA512 3e76c33e08911fc9105fc8e6f046a8af133ec956aad1537653ee335f0068d4428a9c8be45af45ed3eccae58f1be38579614bac278deb00ea143829e6d98d38c6 -DIST rakudo-2019.03.tar.gz 4128971 BLAKE2B 0b1eeb4ebcf7abdbc477cf1b64a6b1f85821e03a953b71aca53ac4fdc88bf3c8df0ecbc95c687ab6686a4cdd4ddb6c7caf89c97ed407d4c0b45203b65397aa11 SHA512 c6b77bbc7d806a399adccccc98c273063c90756967769cd288a161317cc81151dff4feb1219b534aeec5d60e4344fd1f7e166cfc3b90389fd550b2862178f447 -DIST rakudo-2019.11.tar.gz 4651014 BLAKE2B 4e95b834d074efcf515e4b1e6776ef4a34398dcc4536e315b759dcb56565e64e19e2cf513b97b85974639b3c3b9968129a6781bbafb37fded98f108c32d06ceb SHA512 6d058fe1e1630023f14ac910ade75f22b963f9eb8e524a8c9006a6df8e0764f283f2c8bd4af4a303b2151e6078fccd8b3cb6c388f70e38d6e9465505eefafdb4 DIST rakudo-2020.05.1.tar.gz 4802231 BLAKE2B ead9db815bb29d78f4a92157ff65e43c28f19e52e19f3972783b2a8d6c1814576c30d5b612e12f1500a7ae436c66b70d9774aa69f2ea421cc4382341cbd40498 SHA512 20d0818fc9f13693f098c41799cceb39e21442ac652993981fcab1fc1c7158058b42746f3ca3b145938fb6adb03f045f4784e77bf11da672c5908d0a5a36975f -EBUILD rakudo-2019.03.ebuild 1641 BLAKE2B 84b7903b29f4257bd634e9f01b9012339c9dc877dce3b0d4c232a593f527180b266ee9579b2964bbd2442a750ae3b4c22f75078b0af6b3f2d02843768480c4f8 SHA512 6631c3ec81979a5c7957eadfc2ddb90ceef44726317f1da9d1b0c09b3791521f92ec7723031fe58c3deea5ee53547935a9ef31642f2953d6410ff686c6debf51 -EBUILD rakudo-2019.11.ebuild 1641 BLAKE2B 84b7903b29f4257bd634e9f01b9012339c9dc877dce3b0d4c232a593f527180b266ee9579b2964bbd2442a750ae3b4c22f75078b0af6b3f2d02843768480c4f8 SHA512 6631c3ec81979a5c7957eadfc2ddb90ceef44726317f1da9d1b0c09b3791521f92ec7723031fe58c3deea5ee53547935a9ef31642f2953d6410ff686c6debf51 +DIST rakudo-2020.06.tar.gz 4828268 BLAKE2B 5be85b3379f8f859ccff860cfbb5cbab23befd3f25175ae300acf414477f73ef9c2da8ea66a4516339a6dcddbef79d18ee3789e009619bdde44eff6a69cb765c SHA512 2eb6f4eecb2b8fe2cf94ef0309baf4f91cd4cdc7adb428e1023e5b84d804e34a5249448915b40d8120afe21dfb5bb1cb65c128d2b2f1afa3d98d84c97c84caea +DIST rakudo-2020.07.tar.gz 4729727 BLAKE2B 131d4aaee21c7e38fb8f2c3091336597a4cb583be648979f41b6c025e65eb1f17aef81117d5bbddc4e7283ebb3af083443c4710532979a87c89caf2387126266 SHA512 05da50ed201054718136ae6ae3867c8cc54720a4e62e34867d082d9ac7d74a190c04b8a60f29b264273e641c31b9ee839d6189d41bad573c9c77f9bb58db233f +DIST rakudo-2020.08.1.tar.gz 4740608 BLAKE2B be1b1f755690493483ba001407a89de69d64d0959d99bd28cdc4cbbacbcc56e884aa6244b2046c0ff6f6c4374b8edc86016c3c6b9719926a71eb5640092d16d1 SHA512 0142a5df29d4bd1c5a0e8cd37d59242b552dc523966293293fb643f4ce65a004457d81f76823db15bec1508a12c631eec324623cb3b8d60bc14d55b626959b11 EBUILD rakudo-2020.05.1.ebuild 1632 BLAKE2B 986fda7851e41d16434c112fd72056991cc07aaf18104918ae76bd81296866ce16af53a82e22db508f219de9aed5f2c32c7a71ba214d9931c1fa0839b0e054d6 SHA512 7d1f15d9fa94b666b6e4862905e2488ba1fcfcd5a8efd297aa8ceb388359036d329ba5d5bc5d4920094e6dabfa527ca11c5fbc08d556b2ec213bac7b6d648064 +EBUILD rakudo-2020.06.ebuild 1632 BLAKE2B e2bdaaf8c2c1dca93e6c9f5d7c6ff76f2681255d4c55ee60d2edb77833b29f1e2d2b0e947e139e28ba02acbaf35b95a7b99d183ec68d306998e72e49d7fdb6f3 SHA512 1cbf785efeaca5721fd547a1b953d665cf2dd28896324229d2a76252aa720831386a3c677414e81df530ea3ab8ea3e149d29461c668b999d255e845724b6774b +EBUILD rakudo-2020.07.ebuild 1632 BLAKE2B e2bdaaf8c2c1dca93e6c9f5d7c6ff76f2681255d4c55ee60d2edb77833b29f1e2d2b0e947e139e28ba02acbaf35b95a7b99d183ec68d306998e72e49d7fdb6f3 SHA512 1cbf785efeaca5721fd547a1b953d665cf2dd28896324229d2a76252aa720831386a3c677414e81df530ea3ab8ea3e149d29461c668b999d255e845724b6774b +EBUILD rakudo-2020.08.1.ebuild 1632 BLAKE2B e2bdaaf8c2c1dca93e6c9f5d7c6ff76f2681255d4c55ee60d2edb77833b29f1e2d2b0e947e139e28ba02acbaf35b95a7b99d183ec68d306998e72e49d7fdb6f3 SHA512 1cbf785efeaca5721fd547a1b953d665cf2dd28896324229d2a76252aa720831386a3c677414e81df530ea3ab8ea3e149d29461c668b999d255e845724b6774b EBUILD rakudo-9999.ebuild 1746 BLAKE2B 825811a2641e4fa2290771caf47ff2a5c4e6253455bb0b5fec85d1a910e952e597fca38f57aa6b939f4bb55aebbab14a30bad08bda8448d3dc3aa50dea81ccbd SHA512 af56d0da89afb6f506b6fd041692e1d798b7832d5684021aef6b9fd8d5d51336c4751e3cb9a6a906930f3ac115514098a83943cb0ee4a195f6fa5fc5027f7791 MISC metadata.xml 513 BLAKE2B 90fdc5cdf5182b707681ce28a7e4b06c1e8e1a05f848e072de4abc5e8f074ec9becd41c117880bba60e00eebe69a4ab1639b39b0a29307d65d6be09784ee6a18 SHA512 d0144523717581bc13a12b8b8edff0ec03800fe1bda313725a4db37bc70e26c3cf566426e48eb6ecf58f8653f6c51f375ea31d915d75bcf37fc0772251047e7a diff --git a/dev-lang/rakudo/rakudo-2019.11.ebuild b/dev-lang/rakudo/rakudo-2020.06.ebuild index cd8697211547..1353f67155bf 100644 --- a/dev-lang/rakudo/rakudo-2019.11.ebuild +++ b/dev-lang/rakudo/rakudo-2020.06.ebuild @@ -1,7 +1,7 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 inherit java-pkg-opt-2 @@ -13,7 +13,7 @@ if [[ ${PV} == "9999" ]]; then inherit git-r3 KEYWORDS="" else - SRC_URI="https://rakudo.perl6.org/downloads/${PN}/${P}.tar.gz" + SRC_URI="https://rakudo.org/dl/${PN}/${P}.tar.gz" KEYWORDS="~amd64 ~x86" fi @@ -24,7 +24,7 @@ IUSE="clang java +moar test" RESTRICT="!test? ( test )" REQUIRED_USE="|| ( java moar )" -CDEPEND="~dev-lang/nqp-${PV}:${SLOT}=[java?,moar?,clang=]" +CDEPEND="~dev-lang/nqp-${PV/.1/}:${SLOT}=[java?,moar?,clang=]" RDEPEND="${CDEPEND} java? ( >=virtual/jre-1.7 )" DEPEND="${CDEPEND} diff --git a/dev-lang/rakudo/rakudo-2019.03.ebuild b/dev-lang/rakudo/rakudo-2020.07.ebuild index cd8697211547..1353f67155bf 100644 --- a/dev-lang/rakudo/rakudo-2019.03.ebuild +++ b/dev-lang/rakudo/rakudo-2020.07.ebuild @@ -1,7 +1,7 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 inherit java-pkg-opt-2 @@ -13,7 +13,7 @@ if [[ ${PV} == "9999" ]]; then inherit git-r3 KEYWORDS="" else - SRC_URI="https://rakudo.perl6.org/downloads/${PN}/${P}.tar.gz" + SRC_URI="https://rakudo.org/dl/${PN}/${P}.tar.gz" KEYWORDS="~amd64 ~x86" fi @@ -24,7 +24,7 @@ IUSE="clang java +moar test" RESTRICT="!test? ( test )" REQUIRED_USE="|| ( java moar )" -CDEPEND="~dev-lang/nqp-${PV}:${SLOT}=[java?,moar?,clang=]" +CDEPEND="~dev-lang/nqp-${PV/.1/}:${SLOT}=[java?,moar?,clang=]" RDEPEND="${CDEPEND} java? ( >=virtual/jre-1.7 )" DEPEND="${CDEPEND} diff --git a/dev-lang/rakudo/rakudo-2020.08.1.ebuild b/dev-lang/rakudo/rakudo-2020.08.1.ebuild new file mode 100644 index 000000000000..1353f67155bf --- /dev/null +++ b/dev-lang/rakudo/rakudo-2020.08.1.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit java-pkg-opt-2 + +DESCRIPTION="A compiler for the Perl 6 programming language" +HOMEPAGE="https://rakudo.org" + +if [[ ${PV} == "9999" ]]; then + EGIT_REPO_URI="https://github.com/rakudo/${PN}.git" + inherit git-r3 + KEYWORDS="" +else + SRC_URI="https://rakudo.org/dl/${PN}/${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="Artistic-2" +SLOT="0" +# TODO: add USE="javascript" once that's usable in nqp +IUSE="clang java +moar test" +RESTRICT="!test? ( test )" +REQUIRED_USE="|| ( java moar )" + +CDEPEND="~dev-lang/nqp-${PV/.1/}:${SLOT}=[java?,moar?,clang=]" +RDEPEND="${CDEPEND} + java? ( >=virtual/jre-1.7 )" +DEPEND="${CDEPEND} + clang? ( sys-devel/clang ) + java? ( >=virtual/jdk-1.7 ) + >=dev-lang/perl-5.10" + +pkg_pretend() { + if has_version dev-lang/rakudo; then + ewarn "Rakudo is known to fail compilation/installation with Rakudo" + ewarn "already being installed. So if it fails, try unmerging dev-lang/rakudo," + ewarn "then do a new installation." + ewarn "(see Bug #584394)" + fi +} + +src_configure() { + local backends + use moar && backends+="moar," + use java && backends+="jvm" + + local myargs=( + "--prefix=/usr" + "--sysroot=/" + "--sdkroot=/" + "--backends=${backends}" + ) + + perl Configure.pl "${myargs[@]}" || die + + if use java; then + NQP=$(java-pkg_getjars --with-dependencies nqp) + fi +} + +src_compile() { + emake DESTDIR="${D}" NQP_JARS="${NQP}" BLD_NQP_JARS="${NQP}" +} + +src_install() { + emake DESTDIR="${D}" NQP_JARS="${NQP}" BLD_NQP_JARS="${NQP}" install +} + +src_test() { + RAKUDO_PRECOMP_PREFIX=$(mktemp -d) default +} diff --git a/dev-lang/ruby/Manifest b/dev-lang/ruby/Manifest index 8fd2d856d5e7..6dfc5ab1beb4 100644 --- a/dev-lang/ruby/Manifest +++ b/dev-lang/ruby/Manifest @@ -13,11 +13,9 @@ AUX 2.6/005_no-undefined-ext.patch 486 BLAKE2B 715f952cab863847f420afb020cac6819 AUX 2.6/009_no-gems.patch 1261 BLAKE2B 359d0a73c374e5c464eb0343d33272244bb88ba200977007a93f3c3c776779a013174fc2c97717e4ae4a1495011d3baae80e68b07433eab1320955a49aed8b59 SHA512 1607b9c2021e5b5f08cf28c64d3f3ddd077bc47df02a353182a9bc70dc6831ea18e8681d9808bb6841939d64082ae4966081014ee110d2090ec67ffe8faa9b8b AUX 2.6/010-default-gem-location.patch 688 BLAKE2B 4c2074d69b9fe5258a2fe0e38bb501a39f34ad1fa08ef338224edba1f06073138cbe3d831ecdf9910c989a7f0a1c6c6b73ced0d8ff212207a3a3df5f4d90b5de SHA512 65206a6ca42ade0413ae1467f41082f4a93b3166644d2504cff3d280d23da02fd41aea5aca69dd43f6081b436db90a5b1e98725d8fa51519ca302c02ec526ad7 AUX 2.7/010-default-gem-location.patch 688 BLAKE2B 4c2074d69b9fe5258a2fe0e38bb501a39f34ad1fa08ef338224edba1f06073138cbe3d831ecdf9910c989a7f0a1c6c6b73ced0d8ff212207a3a3df5f4d90b5de SHA512 65206a6ca42ade0413ae1467f41082f4a93b3166644d2504cff3d280d23da02fd41aea5aca69dd43f6081b436db90a5b1e98725d8fa51519ca302c02ec526ad7 -DIST ruby-2.4.10.tar.xz 10100664 BLAKE2B 7301f34b94bb6d88c0d049eed4220ddb290c877b130e90c822226bc454b3e72c90ae151db0e828068c8fe02b21cd41c8f3cd43d4e95ab688d2cd6f3f3840ea9d SHA512 11c7a9ea1353f752763b189815ac34674cc8ebf7141517838b7f040823e892780d94ec3091c1f5d1415f9bc1b838b7f6f9de13a706df7bef80ce3b146a7d6660 DIST ruby-2.5.8.tar.xz 11298404 BLAKE2B 3256c0448e72b63c0bd89f89a27fa9c09c8feed54d42cd79899b7d5cfe9dbc29ca708d12c630b3f52ff85b0c6a4011ae7ff0483d64b2fd445700a72a91028035 SHA512 2886be764a454425c5beef2777c64a70ee0d048b07896b327633d904f5077fea4299526689f9e2ac4dcd2fc4811cf9a6c8ce75367ed35d29dfe1a54222872e0d DIST ruby-2.6.6.tar.xz 11567284 BLAKE2B 45e910dd9b128c46bff3003834c4fdcbbc2e2e4d3e44f298ff4356a285de2c375d6b6021a3aa28d89336b32a1655fa4a7c086d07f4a0f6bcd578a11dd4a894da SHA512 86caf93dbf61d03781767ab5375a7edf4761f13ba08ccfefe16c0a7550499237e7390c2f72a95d42670d4fe76b2401b4218936187c62ec1572799e9e04c50d62 DIST ruby-2.7.1.tar.xz 12003684 BLAKE2B 90a35c3e246cfe982a146be29a3d121d6e2c251ed96703dbc46b98c21e0e43e5445132e6119e584ae35f7193f063ff1b14822f947a4e07037c37fbba5e4038da SHA512 79f98b1ea98e0b10ec79da1883e8fc84d48ffe5c09ae945cbebde94365e35a589d919aac965f74d70ca7e21370ecee631ac5a8f9c4eac61d62f5aa629f27bf31 -EBUILD ruby-2.4.10.ebuild 6393 BLAKE2B cc96fa8471ca9f866bde55bc368f3034389095b91daa2e56755ba02a63732d5fac03267112f544bfd1545931ee0c107a171c5d9dfe9cd5b297ad7b85cae5d25d SHA512 2a8148d0cc49889369d2d4c13b01869ceb49d025cf2c3d32d206a8d955e7fc45664892d17df1684d72ec6a163e5cb2e398b48e48fff0145adf71c810591cee40 EBUILD ruby-2.5.8-r1.ebuild 6278 BLAKE2B c14b2405e58a01a7ca7b8af4b9d7d85dc4bbce732277f5393a6bc3bf6895a1dd3c69183f07d73b869a8f0ebcd3a07fdbd8da6d84f7c42072a60f3f69bde6d43c SHA512 f01e6516e7c5b0c7cd2d93dab455143fe90617192b981c79a1184f369720d42cee8c836f4064540447a09ad81d7739e40717d5d9552a9b11e0fc30d5a4ccb1a4 EBUILD ruby-2.5.8.ebuild 6189 BLAKE2B aa04b9f393085468d3452bfcc55a45c721bcbe51c9602d6f44510d1f936369f1c741ade879d24c619b1722270a460ba20bc679f0714a98d310d8293bc84c3678 SHA512 156ac0da5b5e6d1240bcb42ad9a7ce455a17077a3bfd66610d5425216ff7436462e8e1362764c8614900376eef146b168e1dd4691cddd9f13ded5a4a30204c9e EBUILD ruby-2.6.6-r1.ebuild 6614 BLAKE2B b4862b320dbb557bde3b3c6e86b0d178a3421587afdb848ecf5991d48525c20b0012cf88cd31cc5f130088127b6c6ea5dd121cb461c842cab183f3db02260356 SHA512 28f23b21a389e90a59738a4debb38ed0eb30e44eac1dd3df0037fdd37d6e1467ee61beaa5dd35460cd767b743ef48c6c31b243cb207ffdef3b94bb3ef6d6241e diff --git a/dev-lang/ruby/ruby-2.4.10.ebuild b/dev-lang/ruby/ruby-2.4.10.ebuild deleted file mode 100644 index 7ea93eb0344f..000000000000 --- a/dev-lang/ruby/ruby-2.4.10.ebuild +++ /dev/null @@ -1,225 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit autotools flag-o-matic multilib - -MY_P="${PN}-$(ver_cut 1-3)" -S=${WORKDIR}/${MY_P} - -SLOT=$(ver_cut 1-2) -MY_SUFFIX=$(ver_rs 1 '' ${SLOT}) -RUBYVERSION=${SLOT}.0 - -DESCRIPTION="An object-oriented scripting language" -HOMEPAGE="https://www.ruby-lang.org/" -SRC_URI="https://cache.ruby-lang.org/pub/ruby/${SLOT}/${MY_P}.tar.xz" - -LICENSE="|| ( Ruby-BSD BSD-2 )" -KEYWORDS="~alpha amd64 arm arm64 ~mips ppc ppc64 s390 x86" -IUSE="berkdb debug doc examples gdbm ipv6 jemalloc libressl +rdoc rubytests socks5 +ssl static-libs tk xemacs" - -RDEPEND=" - berkdb? ( sys-libs/db:= ) - gdbm? ( sys-libs/gdbm:= ) - jemalloc? ( dev-libs/jemalloc ) - ssl? ( - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl ) - ) - socks5? ( >=net-proxy/dante-1.1.13 ) - tk? ( - dev-lang/tcl:0=[threads] - dev-lang/tk:0=[threads] - ) - dev-libs/libyaml - dev-libs/libffi:= - sys-libs/readline:0= - sys-libs/zlib - >=app-eselect/eselect-ruby-20161226 - !<dev-ruby/rdoc-3.9.4 - !<dev-ruby/rubygems-1.8.10-r1" - -DEPEND="${RDEPEND}" - -BUNDLED_GEMS=" - >=dev-ruby/did_you_mean-1.1.0:2.4[ruby_targets_ruby24] - >=dev-ruby/minitest-5.10.1[ruby_targets_ruby24] - >=dev-ruby/net-telnet-0.1.1[ruby_targets_ruby24] - >=dev-ruby/power_assert-0.4.1[ruby_targets_ruby24] - >=dev-ruby/rake-12.0.0[ruby_targets_ruby24] - >=dev-ruby/test-unit-3.2.3[ruby_targets_ruby24] - >=dev-ruby/xmlrpc-0.2.1[ruby_targets_ruby24] -" - -PDEPEND=" - ${BUNDLED_GEMS} - virtual/rubygems[ruby_targets_ruby24] - >=dev-ruby/json-2.0.2[ruby_targets_ruby24] - rdoc? ( >=dev-ruby/rdoc-5.1.0-r1[ruby_targets_ruby24] ) - xemacs? ( app-xemacs/ruby-modes )" - -src_prepare() { - eapply "${FILESDIR}"/${SLOT}/{002,005,009,012}*.patch - - einfo "Unbundling gems..." - cd "$S" - # Remove bundled gems that we will install via PDEPEND, bug - # 539700. Use explicit version numbers to ensure rm fails when they - # change so we can update dependencies accordingly. - rm -f gems/{did_you_mean-1.1.0,minitest-5.10.1,net-telnet-0.1.1,power_assert-0.4.1,rake-12.0.0,test-unit-3.2.3,xmlrpc-0.2.1}.gem || die - - einfo "Removing bundled libraries..." - rm -fr ext/fiddle/libffi-3.2.1 || die - - # Fix a hardcoded lib path in configure script - sed -i -e "s:\(RUBY_LIB_PREFIX=\"\${prefix}/\)lib:\1$(get_libdir):" \ - configure.in || die "sed failed" - - eapply_user - - eautoreconf -} - -src_configure() { - local modules= myconf= - - # -fomit-frame-pointer makes ruby segfault, see bug #150413. - filter-flags -fomit-frame-pointer - # In many places aliasing rules are broken; play it safe - # as it's risky with newer compilers to leave it as it is. - append-flags -fno-strict-aliasing - - # Socks support via dante - if use socks5 ; then - # Socks support can't be disabled as long as SOCKS_SERVER is - # set and socks library is present, so need to unset - # SOCKS_SERVER in that case. - unset SOCKS_SERVER - fi - - # Increase GC_MALLOC_LIMIT if set (default is 8000000) - if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then - append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}" - fi - - # ipv6 hack, bug 168939. Needs --enable-ipv6. - use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET" - - # Determine which modules *not* to build depending in the USE flags. - if ! use berkdb ; then - modules="${modules},dbm" - fi - if ! use gdbm ; then - modules="${modules},gdbm" - fi - if ! use ssl ; then - modules="${modules},openssl" - fi - if ! use tk ; then - modules="${modules},tk" - fi - - # Provide an empty LIBPATHENV because we disable rpath but we do not - # need LD_LIBRARY_PATH by default since that breaks USE=multitarget - # #564272 - INSTALL="${EPREFIX}/usr/bin/install -c" LIBPATHENV="" econf \ - --program-suffix=${MY_SUFFIX} \ - --with-soname=ruby${MY_SUFFIX} \ - --enable-shared \ - --enable-pthread \ - --disable-rpath \ - --with-out-ext="${modules}" \ - $(use_with jemalloc jemalloc) \ - $(use_enable socks5 socks) \ - $(use_enable doc install-doc) \ - --enable-ipv6 \ - $(use_enable static-libs static) \ - $(use_enable static-libs install-static-library) \ - $(use_with static-libs static-linked-ext) \ - $(use_enable debug) \ - ${myconf} \ - --enable-option-checking=no -} - -src_compile() { - emake V=1 EXTLDFLAGS="${LDFLAGS}" -} - -src_test() { - emake -j1 V=1 test - - elog "Ruby's make test has been run. Ruby also ships with a make check" - elog "that cannot be run until after ruby has been installed." - elog - if use rubytests; then - elog "You have enabled rubytests, so they will be installed to" - elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other" - elog "than root, and you must place them into a writeable directory." - elog "Then call: " - elog - elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb" - else - elog "Enable the rubytests USE flag to install the make check tests" - fi -} - -src_install() { - # Remove the remaining bundled gems. We do this late in the process - # since they are used during the build to e.g. create the - # documentation. - rm -rf ext/json || die - - # Ruby is involved in the install process, we don't want interference here. - unset RUBYOPT - - local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby) - - LD_LIBRARY_PATH="${S}:${ED}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}" - RUBYLIB="${S}:${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}" - for d in $(find "${S}/ext" -type d) ; do - RUBYLIB="${RUBYLIB}:$d" - done - export LD_LIBRARY_PATH RUBYLIB - - emake V=1 DESTDIR="${D}" install - - # Remove installed rubygems and rdoc copy - rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed" - rm -rf "${ED}/usr/bin/"gem"${MY_SUFFIX}" || die "rm rdoc bins failed" - rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed" - rm -rf "${ED}/usr/bin/"{ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed" - - if use doc; then - make DESTDIR="${D}" install-doc || die "make install-doc failed" - fi - - if use examples; then - dodoc -r sample - fi - - dodoc ChangeLog NEWS doc/NEWS* README* - - if use rubytests; then - pushd test - insinto /usr/share/${PN}-${SLOT}/test - doins -r . - popd - fi -} - -pkg_postinst() { - if [[ ! -n $(readlink "${EROOT}"/usr/bin/ruby) ]] ; then - eselect ruby set ruby${MY_SUFFIX} - fi - - elog - elog "To switch between available Ruby profiles, execute as root:" - elog "\teselect ruby set ruby(23|24|...)" - elog -} - -pkg_postrm() { - eselect ruby cleanup -} diff --git a/dev-lang/rust-bin/Manifest b/dev-lang/rust-bin/Manifest index 5db69cfa338c..c4505a3381ce 100644 --- a/dev-lang/rust-bin/Manifest +++ b/dev-lang/rust-bin/Manifest @@ -1,59 +1,3 @@ -DIST rust-1.41.1-aarch64-unknown-linux-gnu.tar.xz 96755608 BLAKE2B f8635737089bb028cfac6d6478c4226a78c2c8a8aa12f28cba267744e2e915e062f49edb505f26b6deaeca0d2fdb4ec4b83e791f87bf1eab6c0536dc41e2c641 SHA512 54eac5c380b418c1714931ead7d6284b225bb427fcc501e147240000b71d31b667e308aea7f38f3299b1311ab04f19011b914d37a4581c7a64028965569cd58e -DIST rust-1.41.1-arm-unknown-linux-gnueabi.tar.xz 98856136 BLAKE2B dbb3996a9ae302290886bf1cd4642d99a9b3f883f9d39817bb15f105565147e416e23d19e0d08314b08ed441f1ac528c20d8bee27ccef68cb585d8ef64a19e45 SHA512 1b01acd430af3cf99d838aa367dec4f6e4bfcec91388d4a2323cd781d53246edae0f14687b087b73b87c349f243e3acabe193538ce31303f07d59c6a03c31565 -DIST rust-1.41.1-arm-unknown-linux-gnueabihf.tar.xz 99107336 BLAKE2B 0dd84e7ad6081b8fdcfcb2691496ed3a493e08db4757e6d3bb2aa9a36fc6f020772a84bc21d0c60efeecf635512f25737b8d6b49a53020c4045c89c5b89881d7 SHA512 462e6d354a4b3b848781bb059decc5eb1ebb4d8a31651623d076a2654e2c8fd02f0f87ddafb124efa40cb134c9438eb252035c2b5bfdf936881b14a23bfbfe9f -DIST rust-1.41.1-armv7-unknown-linux-gnueabihf.tar.xz 103399676 BLAKE2B da35342be05e58c11e6f96ab566b6a2f334d6975d4251deb2f41069d4a549ebf58aba43e1f07b99dedf0426ab0a8e8616b32799ca54a5f601d70910deca3efaf SHA512 400bf8d013fe5030243bc0ccb7066ea3d03a2c10727e04b6830ab91dfe9b04f78cfef10794a1c7bb6276fb00c86f1e1c42a74faba19f3125859b3464726d01c2 -DIST rust-1.41.1-i686-unknown-linux-gnu.tar.xz 120834812 BLAKE2B 4615eeb7c63392f66487243743fc57677654e232c786f9f970a9be9996dcb08e265631f6764e09e0444f8bb767b9c76366a26fe8fca9dcc149c81df5c2a3dd18 SHA512 c6d74b2653c537043eb2ea721095ff053def592b4c330bdc104690cfb51d648f515288cc0451743d94260f18a55d6757bcb8eb1e6c0217da3498d08b681ca6af -DIST rust-1.41.1-mips-unknown-linux-gnu.tar.xz 92620720 BLAKE2B dff1be71d459e0256a19fb88f324e59cbf2e10fda693157802a63a08329c7dd4feca4b260510b3a1d6afb4afc9ed9dc549b741f598f3aedf50a982810d0bd140 SHA512 4fdca72b98a4fd25a2ddf33e0f31d9549c39fae9dfad6f1648556f144f82cfb2a487f6777d61476ad18bb0a0ac63810b99bb09a18719ec5344e89fccb16ac693 -DIST rust-1.41.1-mips64-unknown-linux-gnuabi64.tar.xz 96215100 BLAKE2B c52d564010d56df01bac6b2f447d56c00855c52ed8ebe6a2ac1b7786e8c73a1d529be7e7d5a4f7b427892494782aadcc4c8cc54157287d43f58938b0a57486c6 SHA512 2ed84ade11c6f4961e83e06a61d998a7abc9165cc384cc69470658e8244dc399e30c3f983a9f11b0bf88032d855bc47fe6d71f5db95cc7168e6f810c69095633 -DIST rust-1.41.1-mipsel-unknown-linux-gnu.tar.xz 93365592 BLAKE2B cd0d16f99a0976076530fa601f9bfeb61e1204bc278f78db015bc8d1629ce8f19da61a12573fdf9cf0d3d29e56f6915338aeaea3ef4d9b374eeb4095189fe71c SHA512 a0b7cc55ffeb0911d1d82d93cf2f4ea2a683ee76a783952b2f42c0b3c3d02b2bfc7df6f5762af91e6d02963e22a08ba26f143f594dfd6d41ad8198f7e8a862c0 -DIST rust-1.41.1-powerpc-unknown-linux-gnu.tar.xz 98530136 BLAKE2B 41399fcc9f1d88cc5a6fe0651012e4ebd1addde428c22611c30918a09ddad3640fb326bf48f94e5d12a610d2709eecf95c5d023f10bc6636eb6de1808a104e48 SHA512 545b2a4459bbfa7049755cbb63ad6e2917bf03cb9568eccbf3b01ea8f846263fbdc97ad29b42c440fa92dd9737b398196c1cdaf96c9716bba2f9e1d4a3a20125 -DIST rust-1.41.1-powerpc64-unknown-linux-gnu.tar.xz 104058752 BLAKE2B 10b3e3e4970fc05952f83e80e7d133d308045bdd3342199e885d2e6add113ada7959a93010046f48b1fedfe85f0346793fc54e0bf0c55d096f82622e198a928c SHA512 50367685783085cc384be944d4321dfde850f3a0e94de0625a08f17160af2c0b795276f96574d1bea84092cbc1cd3cde619d97fe2e37b07ead17f49164e1c995 -DIST rust-1.41.1-powerpc64le-unknown-linux-gnu.tar.xz 110594504 BLAKE2B eaf9c92ea9599314d12c5f9d0b654b523ceb8f40cc779cdbc2d50b4b07e0a37cd42d34000f0ace9c19154a1bd17110c097e30ee2b617f3a29de4966bb9303301 SHA512 1b2bf6d35321dd0a0fc9735005317f09f8b9a81b520612484530e29156ea254d5cada583e44f7e4a840edde09d70c34f7ead1208d8aa6037c652540dfa38cede -DIST rust-1.41.1-s390x-unknown-linux-gnu.tar.xz 114814112 BLAKE2B ef22c377e1d89ef4ebe78df19d91bcf042e2e1d8997be80d7d40998b18f6b44f8bb1232b1f72e42e3ffb6d1ff235f3cd2f04854e996bbf7be8f6d5d7299e8514 SHA512 f809adc626876df5c6e050362d59189ede5e3991ac41fd129922540abeb728f618e1a3f3925cee34895de5e037141aabb1f8c2b94d4069945d174e38446e8153 -DIST rust-1.41.1-x86_64-unknown-linux-gnu.tar.xz 111202140 BLAKE2B 226c68b1e97cc9be82e81f6c9e065e08514166a65a57159c2f63527063ae5f514650afc2591e0c4854ecd0239dc82cbc9a97b99412608645aca879a71354d857 SHA512 c75d4a18cf9300c6ab480d34c5e4b41be971535931455239330cb2a0e927bcf9cf102498cad5dd1d5d802fd1d9c9d214b80e8ff15aa6be68d3e7f41420cad666 -DIST rust-1.41.1-x86_64-unknown-linux-musl.tar.xz 96076684 BLAKE2B 3672e24a83c1e4c97a0844f9522a9fced19d5ef01c89d44e54bba8683514a86f7a14ea2e8c2f28d03c65b7e2e0358ff3cea2f85de1e69eb5334c55e18a8c8e4f SHA512 29e7b2aae35017d7f4313e0a482712390ffec752e62d8b1bda95d56a1f93ba882a8f610b469b5d2d7fa3d6d35c2cdc4e45d219ad85b8a3f71ba6ce04b1add48b -DIST rust-1.42.0-aarch64-unknown-linux-gnu.tar.xz 99903344 BLAKE2B 77e64c56c2f3ab505af9d9003d127b8beb3b2204344985faa6de92905c96d92342485e062e0ff1228baf51a67c8c2274078a60cc86e0c67ba99481a5c01d4d0d SHA512 691a11e279efdcafa6bdafacb7fb48ccf653e180e0e85909b6031105a297d47538efb36d63216f6185427f818483a51aa827f351ca2123840d72caf60079fe13 -DIST rust-1.42.0-arm-unknown-linux-gnueabi.tar.xz 102380528 BLAKE2B 5df9a33fa2b1414c9986f01d8dbd85fab2a705818336e1b2c94ca63136be7be63d25a2586efa956cf31aa604106b3c92857e2133169c7f3062da22006f1896bf SHA512 8e1b5351a3289441823ed0ce12f2fb0cedc267efe5c504966aefbc9a74f37ed11f4da1086295d7351c58c2d0bf59c4b7b54b23d5ec0dec4750bd7e38500afeb0 -DIST rust-1.42.0-arm-unknown-linux-gnueabihf.tar.xz 100300920 BLAKE2B eb90db613230e44f5002388d83460b635f33ceee349b094ca2472171d54ce3d459b6a2143a66705ef7ea89dcb0fc9b21e6d2f2f53479098ca8559f7c84ee0697 SHA512 d58c1820f39abfdf74569e26ba4f13347dde16632415d4ec0b54cc99c3b04563ed551ed1ba717b33e9b1a9b13e2502008203472f8ed712e302d1db66909e7ccf -DIST rust-1.42.0-armv7-unknown-linux-gnueabihf.tar.xz 105021972 BLAKE2B 5a04715582193138344ef05700af4ccc90074a1b7d6ed8109993b6c59315e6fd6bc947504fcde36b869da8db4b7b8d8240f908387c8b2d78e21e35f6c27fdef7 SHA512 26768ec530506e20fed8f9ef2c1ca85eec155fc90949f2063836b6109b296a976c8430a698971a8b1c11e8f6ad043d854a36e9f0e849417178411dc5cbd30e59 -DIST rust-1.42.0-i686-unknown-linux-gnu.tar.xz 124258356 BLAKE2B 3e2e0c11e792943be65c989d4b9ba98cc92b2a1dfec7b8506f00d20e439050faf744b991e7e4fa91f0c8a52f7a4e5fb8dc5d383fd0430fa46c4e35dfa5bb26e7 SHA512 7376be5abed573bbf68f73ed5609fa8e22dfa3ead19a3f3d78d553347e3ae01604ab9906f5317f1687a8ab3f9ad9c38cde44ef6f56d7da65a788a74aee9df057 -DIST rust-1.42.0-mips-unknown-linux-gnu.tar.xz 95265764 BLAKE2B b02a340c7689812f7e13286f3dcde893933869c9becb071e9b0455eb68130d74fd67babdf85859ff7b4ef449261be6e09f230a4cf6196041c199d717324c8b21 SHA512 cc19b383ac3dde62750cd247e7fdec9ca4b4ee16880b9b00c42e62c57b46c522950983b500bf8fc70b8198469a18ab92c1ca382e8a07abf8bc937d8f17208d5d -DIST rust-1.42.0-mips64-unknown-linux-gnuabi64.tar.xz 99814476 BLAKE2B 405fa7426a8d21648be97f6b93065b20878419a2c0aa5889ea6a66b9c0f5804d2673a23932a2462965f04e320c4e78f4c79d5b0a6f9877dfe9909d4b4b8864be SHA512 e8933af6290f2cb881fdfc7d2ba3da1c47ef67d847c8a3e659f8f626b7154f202f071ccd4e90555333a3f3dc2bf4101a645b5665dd00a6d72b5acacd6ad317a2 -DIST rust-1.42.0-mipsel-unknown-linux-gnu.tar.xz 95248132 BLAKE2B 875597ba699281d7160ba2f36fe03f3a234d19e5c6e91ce1291ab2369799349a42e1e7e6dcdf524980548a8c499693d6b48967913d4280776da7a921dfd18ab1 SHA512 733307eec1f938385a43b38aadcd84b7d4c1cfc084e070333d955d8b36f3192a7f7e6c05c5c07d782b945acbb261e48db94f2f9f7d3a09e8669055a577c90528 -DIST rust-1.42.0-powerpc-unknown-linux-gnu.tar.xz 100228400 BLAKE2B e05749ab974ffb0dbae332d4f59c8f71047f86c5e33a368555d996ccf14d229b0cda2cfbcf7f05902746fcf9b18a9a1ba4cd8d8cfeb51d3128f04914e8bc062d SHA512 ad2c9d3ebae5ccffd1f70d0a732a3e6cf793b203a8ab7bea3b90d45b63dac84cd513fcc494c7401a6dedcc1e4c3b6fa4ba95a4d3c10411dce5c2a06b84ef934a -DIST rust-1.42.0-powerpc64-unknown-linux-gnu.tar.xz 106116524 BLAKE2B bfa533d3fdeaba4c539f18f205ddaa99c6a6be8f4213cf2d02090cc576ee17c721295262c78d84ec01bc286b59f6a30bf32e7c44e435205908fec03de1a8d60a SHA512 668d1d353bdaf676043ab7f4baad464b202e8ae1be7713e3481b8e9fb5fabd1020e10e178d69d099541cb1b23362b50b826790740156f1c96efa3d2a7457e404 -DIST rust-1.42.0-powerpc64le-unknown-linux-gnu.tar.xz 109926880 BLAKE2B 92a9067ff95bf2293eb5dc3f055275646f9f9764a59ea5dc772b1d8da78c28acfbd93e7a9076dd7ddfb36255cecda0646a7e5cc4ef4767cdb320aaf046f77162 SHA512 e1db9bbef45e88e7d1d5b905379c04786a015c90d0d9de6a6c16276a3e91c342a8231dda7a4d46ecc7adc969d07fd7dd8595975647b9ab69f8997fee74401219 -DIST rust-1.42.0-s390x-unknown-linux-gnu.tar.xz 116937084 BLAKE2B 4d68801c7c40aa0aca24d19d25e80614b5b40aa2715aacddb6b9f5441b1c7e19e7b0d396caea860607df1dc580deadc43d9cd1f988cbe654b3132b665f9032af SHA512 85b1331a9a71cc43a2fa628b8510590ff072e409c2c38ebfd9089ab7a245182e23b52f6221b25c63f6048e1bf4ada0f561dd8f3f810680c9727040bc8a0d8d46 -DIST rust-1.42.0-x86_64-unknown-linux-gnu.tar.xz 110826392 BLAKE2B 8c90bacc9b350d64c4084edf104e9004461d681e19f8e8179ff6eb0b2bc50e25d95e3ed13c83f77224cc60f374f3961f0069dfe20512c844598b8eb2393300b0 SHA512 87c06d4503e7ba12bd3dfc8dd279a3bdf33a24d2c22eec1378b79b2c17ccdad9b4c8dbd0d4704eae1f3476aec5639d3ba143e8c74a296d631b17b57da7447e70 -DIST rust-1.42.0-x86_64-unknown-linux-musl.tar.xz 97471188 BLAKE2B 29e7089a33a20e5c57a68c171e6b049e5dbc97d4c940106bbf7116c970e7ddb2271b1cf33162b4141d89b0b59049e09ca49c848a326036eefbc03e369f3ab18e SHA512 d804a08e38fa6735ce57067a3c39c59e2932943aa8baf43419815e9c743f50e198d88ef80d87fc193b8bcba011c685471146c0741954095eed74e41f86de38c8 -DIST rust-1.43.1-aarch64-unknown-linux-gnu.tar.xz 104148868 BLAKE2B ac5db9eb58c502253d001e0c93aef867bc584d045960a1d3c2caf6772a7c1f4fbad7da579d7c72b3376804f61f1332a54e9fc7099ba5f4a65f7e5435df28894a SHA512 b54fad5493344d2370bd77110f0ffb0231f41ab8aa9707e9303304957c5d9067dc83089432eb175605b78dc771dfcf7abfcce63d7fecdbb759dd224c17d12da0 -DIST rust-1.43.1-arm-unknown-linux-gnueabi.tar.xz 104779424 BLAKE2B 63c05d7403970bd4a237a6b690bcb8e78f310816a953af43da8d258a74102cd560c8674656c2036b1f391dc964ba6d2be2736bc10686c2365cc332b5c76a5502 SHA512 ea2eae6da6c757c07cf9631c706365c743c58f28b514444763ea70fed4c8fcefc5c36d55136afffc2f5e0d25e9b1fdf3243cb9def7e0f57e37b5a4783d44a61b -DIST rust-1.43.1-arm-unknown-linux-gnueabihf.tar.xz 103569032 BLAKE2B fc94eeb777a72fcb1b2821b5d10bb9eaca535d76e8caee3d06aed989107460e00146516c5be5714e9739c49d5170809fc132624f9a035afba146db883346c57a SHA512 1c523dafceb29f916a192261f673048c8f781453bcee237e0e333d694d7d7b71735544906f2edea9e0a8a48fc66a478645ae8ae865a171f4f9a94f0d8e6800c1 -DIST rust-1.43.1-armv7-unknown-linux-gnueabihf.tar.xz 108430484 BLAKE2B a3c57930b4e7096f409a2129abef60fbdfadad59f29e428296f3151187eac286e82bdb2d0ca879db87563cdc707dbcabbb5e9048b54303653209b98268ab9cf3 SHA512 0812b3229dd47f1b5cadb49020e68d28b4267ac0489d0c2e448f21e3b0b6519bbf216ac9b20b747e035033842a6eb3b13a98706f2eddca2c088d9396dcb2c21e -DIST rust-1.43.1-i686-unknown-linux-gnu.tar.xz 125731548 BLAKE2B 3a3278e409a69f3e8195bab39871b5594571c1c8f2ea2a5f8c9786a739f709381c13c1b2a3209ef62cb7c5b8aec47dd769cf3e658ed57e5037522759fa1a244e SHA512 c7423bccfb15f3df6043ec1d81203c9db9b3229dedd347cab09d3cc3b183f53aa0707f59964efccd63418e1c6ad21e7ee7dcc1495eda8c4ecb55ee8e6b3ac034 -DIST rust-1.43.1-mips-unknown-linux-gnu.tar.xz 95924004 BLAKE2B fc1da442dfaa535b81029ed40a85cd0d55766d84c34f0d97bf36376c44e44fd5305b429854b9c964515e10f83a06b36a6ad9daae5714e142491d99e58b1d0a07 SHA512 fe3b11e586d506dc917f0e04009a994a16575ac534a2716b49e66a0344060a26ee6c7e912b6cd7b5f010a97f59604515f899bc1b6c38f0ea86e8cecc20152dd6 -DIST rust-1.43.1-mips64-unknown-linux-gnuabi64.tar.xz 100980364 BLAKE2B 12439df511c3ad43ed24cb0e648a212314a747e203680929ed3e136505eb29af3dcb007162aaa337fbac56a9b1b8f1c405217756ec712c400bc0f4d9aefd64b8 SHA512 6c0d7f172e76e21596d305df7b1a38fde66a946972765de92ccc139cf8f2e8755864b7bd94328b9639023df6be51af08428f41ed78de4ba8d43620673b9f7ecb -DIST rust-1.43.1-mipsel-unknown-linux-gnu.tar.xz 98512180 BLAKE2B b5e8cdf2b8d65cc39bfb325afda9ae75a360967a4f6f413f3b01257bc34130fcc873dc128a4e48bbcad774d69b9a4aae0d4a8182819a4411809af6a0c636b403 SHA512 cb01eac951384fbf2ead5b7d4acbf92485de0bbaa7e3a272a46a8934066d720d248a19a67ffc88b7b239c15478e8691b94302807dc7652e042c9b8edded6da12 -DIST rust-1.43.1-powerpc-unknown-linux-gnu.tar.xz 105007576 BLAKE2B 8392f36025ca91742fad9755c945b42e616272cc97c33087090c6462a5ba9f1de82a0167ed53568b5cdd4c593464ed2858811fd0c9ae8559a1cba37be6db5305 SHA512 d10da49f19b79f843ae369bdff3e5040b93934dc50dac3c09bd346c24dfa7394364da647c08206d5cef4c853b7e59d1062c16e6eeba0ffc01736eeba63dd3eb6 -DIST rust-1.43.1-powerpc64-unknown-linux-gnu.tar.xz 107189572 BLAKE2B ba561d45b8f9a7f446b17313d92db31b30a07d657dbc59667076ee216d66e4b2ec3811821bc6d1fde6bba811d2c46473c6e3bc06162fe4e1ffe040ad23542742 SHA512 695591807892c8f08801cd145ebc6a91ee4222000210baaaa0d6c8acf1ac6a96f4bf2566871def04d15a9965b7e3ea4287e37d7851fb14010518694d8ede75e6 -DIST rust-1.43.1-powerpc64le-unknown-linux-gnu.tar.xz 112921244 BLAKE2B 9fa67664fc90c1f6095d98b756cae747be2ad863b894b393d4e9ecc3a1bd527b0d26f1bae2988981b98d4d582d2b60a18c62b3db3b5fa017439e034f576e7582 SHA512 da447ec44ebf998290a73420437c8d434a6c196cfe1c3331a9adf40abf7acd97a231e352a8626bbfa961da8e0c4f450aa59d573254257f72cce4068eeb8112a1 -DIST rust-1.43.1-s390x-unknown-linux-gnu.tar.xz 119547480 BLAKE2B 8ce0d64e2d47f23cb927f3ea3a0f469e3cafc191ac1d47e580bce6cf0b35887484542f7d1b857d9bace5f696a072adb7e17e8c5f64af9bf1fbcc305707a15f9f SHA512 f087e50a91b1cc4a12bf15aea1cefbda9b89518febcecc0d56ea7d0a6a682be06cff7777d0a0b4812e96f3fb3295e7799bf200c1599c88cb7083a78d5002f14a -DIST rust-1.43.1-x86_64-unknown-linux-gnu.tar.xz 112817212 BLAKE2B c6153889d9872ed5a60bfc43bc8c98e71654fffdd79ce775c3eb4376ed4714c5532e6aaecb769e447f3ae0bb7a11aed75754a5e879404742cb0813080dcf67eb SHA512 2fc573ca2826d9f03044f746ae4d7715b4e31b9ac933289607aa3449a538bb4dfd519540576a1d0d286c0d754a7ba6ce38beef6aded1090d3af3091b6ba2a9ee -DIST rust-1.43.1-x86_64-unknown-linux-musl.tar.xz 103345832 BLAKE2B c16930854ea5e825e1338fdde3966e24d3505230891ab4e10160c5482298996768d8cee9890eadd486bfca41ebd5c9f38f7b7ead35a7848e59e409df8eaf9bdf SHA512 9f6ce2a5eaf98dc20b4ed88dbe60e8fb014ef3e7e82f5c31a28cf0f916d996271929cadeaf39a869f548aafb311f022acb408d51d4312c849c71843bc37ca202 -DIST rust-1.44.0-aarch64-unknown-linux-gnu.tar.xz 100404488 BLAKE2B 9881acb184eeefe6baf79246ed396edc82c28a7db6594d5960c919eb5cc614525bbc785e6fb65fe5ffa309e24c4624d30fe4ec8e837c41145df82a0aac26bc9d SHA512 c853a585bd76730a9ed1e95c12baf2939928fd3c5ba7cc0f95c03ec472c0012f01d0b7d7c37e21dfdcc1d1eca4c7e392709a2585e42bc759b636e95b4ab870d0 -DIST rust-1.44.0-arm-unknown-linux-gnueabi.tar.xz 104325496 BLAKE2B c987580baebe0abdc8cf0d936abe7caf22e8adbf20309daef26b21c1e24da03fc7201abcf3a09f266903c24b77d5df49328069c894de07bb3621783294fbb473 SHA512 d74c9010ad6d0605625bc5e1b416bdba4bb07fbc7fee7aed9571baf25cd6151574ef04c67b0d9289ee580bc54bcfc42bbc184f99abf217e525a42fb14b62bf3a -DIST rust-1.44.0-arm-unknown-linux-gnueabihf.tar.xz 106977028 BLAKE2B d9046bbc5eb1f77fe3859ece0d630c5a8f434638100a180c03682a3813d7795592db6418b6459f56cbae85bd6ec46ef7e803c4a22939c27f4e230f73b774ce25 SHA512 c78ee33800384dc421ea1909d32cfd438ac3f6312ba545e4dcb3eead771d51fa2f93d410aae06ae256976468cd1a71ae72d252255e85483005a7712f20204351 -DIST rust-1.44.0-armv7-unknown-linux-gnueabihf.tar.xz 107108084 BLAKE2B 8b3693590fba9021ef8f4e278fdbe0833503917168c735cce1416635968a1b23b8b6c60c51aa78bf77ce774ed36d6c4b53e8af24c0d56995d37dcb0c31be651f SHA512 59fd1f0dc058118a838c4c3c66dd5a5c2acb1b05ebf4525188846577cb22c4b46a57605d6a9cede5fbd34c0b5c638434a186d1ce3693ace6be8105c265b59b7b -DIST rust-1.44.0-i686-unknown-linux-gnu.tar.xz 123723236 BLAKE2B 5527923b954a1ad5f3e65570d692b1d49547611c875034af478a2e51733045270c3f4c168d84d228d5ad1cf95ae5453c580c5d053b9a7d23149fd989c23ec711 SHA512 85ee1d7cd4581d9cdc18f0cfe89b0c78c32039f658b85c5f6a60ac8047864234bdff955e02d6e15ae40dd98e8e27cb3d83fab978dba6373f9e487cfd2ba0b594 -DIST rust-1.44.0-mips-unknown-linux-gnu.tar.xz 93787568 BLAKE2B 280ce55b802952282dc54ba82937d08e60ed06a12f4b19176c9bc9f454021d3bef2764623b2b24777b64d061e316686a5bbc04352bbafad017de96a9a457e9bd SHA512 584641caaba66848fdc2c11d15a81a4588134c29f00b4c961ed7c51a5864db583ecd434e6c4225761ccd53b5892a562f3d3067d78d8590bd3c01e03522dea08c -DIST rust-1.44.0-mips64-unknown-linux-gnuabi64.tar.xz 99813352 BLAKE2B 5ba6bb4e95d0ab5600b618b563950334ea8e45383eed0ad59791273a7395e7478aa56249b0e84a00ba6abab9952d9b7fe9f67420f110e76a936d43cd8c70a62d SHA512 defaeed53d14d94a6e73a937939f86810ac805a0527dff6f7c663dd2a15db7dd017e5823467eb9b035cd5bf4bab6d27c63abc06b71c5e82558e0f2a59b80efc2 -DIST rust-1.44.0-mipsel-unknown-linux-gnu.tar.xz 96597556 BLAKE2B 7fdcf582ac23149ce374cf069ab69b5b2f5c6024ecd269d786f89e91927b1bf7adb9e513463771328358a7f4c61228ba972cbad26e59916989ec1476b1a79208 SHA512 3339fb9bc1f06d268ebda32e5f151f54fd2c417fddc2fcf333ed52985da06adbd1672f358a578dcfb58123342dbe884e39fe2277701d058d85b6eda56b1bfce9 -DIST rust-1.44.0-powerpc-unknown-linux-gnu.tar.xz 96611064 BLAKE2B 18c80c84813e62b43430e76ab332a0a3d1a7821601c4c29e8143d9d851290c6b675918237afd1b976e5895cb51e920c4ea711e0605e156124164dad705bfd132 SHA512 c6cc690de4e411c4967e2d055a2642ebb5b2639664c1d7901bed9c6840da3d23fbbd52e88f1d9e5e1673902a657c8ca35564934d7730d61845b8676a5e1b339d -DIST rust-1.44.0-powerpc64-unknown-linux-gnu.tar.xz 107127352 BLAKE2B 109dff520dc2f9aabd07c090de67bc5606a9cdf445fcc4c6f26fdb24f322b77381fa28783628417159241cba051f817c52a7327fa8054ed4852fc6ea1044b82e SHA512 dff9aa248cd0efd1b28c6254c040cd30356ce973a3ed525530db783d6f7ebcdd32568bfa5c68c2aba0bb312ee74f03d1c91361e69830fe79ddd4d31e73fc2865 -DIST rust-1.44.0-powerpc64le-unknown-linux-gnu.tar.xz 112746336 BLAKE2B e0a6bd623535a28489acf90c54d188dfaa4bc0e71b90008e28e78482e8b50787e80a6501431f5b86790e12ca93e71499d9f824fd2ba5bb647de2817a6a5036cc SHA512 d74802fc29641d08b5e5d526e91258c71d914daf0f33abea71ad7d300da4ae39d457b9d4e95b0b0811ec8ed5e60e7d0292e8e928f3079189e07887ce115bd466 -DIST rust-1.44.0-s390x-unknown-linux-gnu.tar.xz 118575084 BLAKE2B 9641f2a6fcaa6c1d0b5e552ca5401db2ce5232c5cddd2da081a994a4581ff186922adc1b4a8e0d1e5ff683709df45d0d6f649f0e5a8806c0200ed6a9821736a4 SHA512 39fac45e0c1e8786275ba30ed13d13334c7f0fc03d653a3e0a3e174d18e244d9e4bb99614ed1465e7a21befb2542ed4d3a54d4ea2702da449b1e6a7770a43970 -DIST rust-1.44.0-x86_64-unknown-linux-gnu.tar.xz 111833264 BLAKE2B 9eda334d802f9799bb558f37b7a9f468d068248a89e51a3f8d2e5d7fabebc3d477f65247576a2437845e3157cfeb04fddc7e60573b6ae391c25af7d8dde39e7c SHA512 25c762e07e178ffc1b96b4a113e437541d6dc18bd81fb9933af676e99ca391c6cdd8d420caabcfca1b3ddb987a84ff9eb1d0bdb3cca486e71925555f51ecaa4c -DIST rust-1.44.0-x86_64-unknown-linux-musl.tar.xz 117514932 BLAKE2B 7bb8c7cb894d37f283b38fe7606e5ea2a91ff7f4eda95913d75cdcff04308c62700d67e49be47d3b03d50a2774ab8104ea6de78d98f5f0ce897d0b37998e7bf9 SHA512 1325b3c798f7cd7c5ebd582eb4513eed62e2807bcc3a5d86f3666f2dba97ba0a1f546daa3a3faeb38dd3852f1430effbcbd7751155d7352a464033cfe1802e75 DIST rust-1.44.1-aarch64-unknown-linux-gnu.tar.xz 101259004 BLAKE2B c00274660698c5e980a6fe28839f96783989bc5f102025a5e2b63466928f697afc3c70ff8efd00b525ea4b88823585e801690e6c05b246abf5600af80f911a07 SHA512 97a67addb5995f504d7326a500d1b40c52cc6e6e6f6e946adabcf825ce9b64272232a24bc30ce36e3ea63ccda4b980f3b7b61b0e88a8554f021b731ad79a35f1 DIST rust-1.44.1-arm-unknown-linux-gnueabi.tar.xz 107474900 BLAKE2B 1b21f28b12507cba83ede592670b715365b1ca1fa311dc70108404bc7fa199914716cf7e5560a682ccf4f37bfaf91357f547456a032b4914e75543fdb7e8e84f SHA512 5bb406cc999317a15988b434c3de53d11e3823359fd3dd798de8195fc2e7e7b32830c7cceb1cb7089f47b333346c42fd4153ba1b441799d89fa27207383b7043 DIST rust-1.44.1-arm-unknown-linux-gnueabihf.tar.xz 105267436 BLAKE2B 6e4c13028dc1751970b04b99db64be6e1ddbbc3b754318e3eabe03e7ae65031c4a5ed87582ec0ffa605a7ac69bee32c5fd48c6dcd84f298d73199a7f7d1c731f SHA512 fffadfc6d8317512ed50df97785a7d0094f59b9465ce5e762c45d6a3a484cdb3c04a72ac49c3d61abad898503378d841ed6abaa16a072aa6adc9069619e26a49 @@ -68,9 +12,20 @@ DIST rust-1.44.1-powerpc64le-unknown-linux-gnu.tar.xz 112429740 BLAKE2B 10252623 DIST rust-1.44.1-s390x-unknown-linux-gnu.tar.xz 119312728 BLAKE2B f5e3209990d3cc0181a200448e4bcbf1f6754847cfc36d7355e191fd49e239d3e0c002310743fd063241c5dec47da3a0776c361241facbcc4a1f1e9254eb805d SHA512 84c6ed736bb7d0c10aaceeb2c2c3c97f6188fd7d7f4466c8ef35ffc591d6bde3b273a0d62d50e60f184ccd81c96a31ed2e610e82fb9ed9efd574e4c5a5f25d26 DIST rust-1.44.1-x86_64-unknown-linux-gnu.tar.xz 112133992 BLAKE2B c0af6bf1417bbb69be9f552f60805eb0a5f530b667ca2bbd04db9d567f1eb467a9e72912062a3c22d3922c29809258637dd7568c29e461dbeb5d17aa0699dd45 SHA512 540761fd5246f4a48a7606ac0220f0d61963473b57ef703696871dc23fda8154d45351b8e81018d15899c386b44e43b05028cc797d495e9dc46f127fbea7f093 DIST rust-1.44.1-x86_64-unknown-linux-musl.tar.xz 117456616 BLAKE2B fd2752cf867e1ff701e624caf602fe7a29b47c64e633508e91da1a1b2321f5531441b84cc9f0ad159ef399d38628d60e59f8b7a99e5427df928abceb24f937f2 SHA512 05ca3e07001746511c5fcb5122f487205ffaee771805b0219db018b350d67945f5ab4b0b2cf98b7e7832b53365e3932fef37506a65ecaaf624d0bb8d43cf8427 -EBUILD rust-bin-1.41.1.ebuild 5383 BLAKE2B 866e2af12cc6c37e6df7393bd53f84f269bb9b73400d1669a06cfc64c2d98dd60c0889f58e0463876cabf44db012598957eed6a2fa4d65eb8c6a080d5df8eb17 SHA512 c8da3bfcb3b7358428df06eadb7f60aabe6344c8803d1bfb2923a6b02d20f4ad600288b33658a51a91a957cedc95ecbd9b102bf3e41a8bd026acf2b4bf5767fd -EBUILD rust-bin-1.42.0.ebuild 5387 BLAKE2B 62fcf3605d748d3c2dca31e0a1abb00abb5f2ae03761f8818d06c77a4228cd0a9cedf90611c4580d89f2acfdcb9197fa7a60f4400fe35c9c46c8a1ab94ed1742 SHA512 790d6acb4936dfb453e32d5cb704579a0cca66e316c179e9e969af9aaec6aa0233b0bf2b001000ccce4920b382402bd1d3a8cc14e8458fbbdccec970f0090147 -EBUILD rust-bin-1.43.1.ebuild 5671 BLAKE2B 8d83def44b9d39be66f597e4cebc8acd9ed043adff649b477ef34d3a04c7ea52715f6b00f424a91a3b6a964a939e7bdec7c5b61e90d6f254491ba91cfb85621e SHA512 d17f5fcb9515ed4689e0d3e7e4c8fd686ef423a53687ac76864800e821f70a59cc03cfb049e60ccb8511a383e16e1a13e0600aa5aadb24cf32cfbf5a2266be8c -EBUILD rust-bin-1.44.0.ebuild 5674 BLAKE2B 9f3818ab4cd1c20cd64ce3f798adac4016e30b4eaa1afe0337821f6c726bcc6ad6f9079f6ef50089fdb5fd89228cdbe5d15b253bfff8886d1eb47506b574284a SHA512 80cb77bd341198070ddef223308ac44d68c092acf0cc4d4ed37cc4765b1ad19939afe2a45d066433da5a51437ea2f4f17edaa25aa3921ace330aecbe3aa07a8d -EBUILD rust-bin-1.44.1.ebuild 5674 BLAKE2B 9f3818ab4cd1c20cd64ce3f798adac4016e30b4eaa1afe0337821f6c726bcc6ad6f9079f6ef50089fdb5fd89228cdbe5d15b253bfff8886d1eb47506b574284a SHA512 80cb77bd341198070ddef223308ac44d68c092acf0cc4d4ed37cc4765b1ad19939afe2a45d066433da5a51437ea2f4f17edaa25aa3921ace330aecbe3aa07a8d -MISC metadata.xml 400 BLAKE2B 0d1b68fd1959b1ca32f5e61356ceddfae623872d0fdc4f514922820260df46dec79349c6cb9b0aa36aa38fc790851307f70634a4bf39520dcd50d5c6048c7cc2 SHA512 517ec5f36df802c8299a6957cfddc17af8265b69ab86f46fe762193848bec042d369a2885ceeb61b1725d98c3022ea10202d9cc79f5eb32db2fef2667047f28d +DIST rust-1.45.2-aarch64-unknown-linux-gnu.tar.xz 110433136 BLAKE2B e2aa575c71757ea54b361940ca0813728bc6ef63db491a6891c05ff91d6fb6e2bf49aaebd05daf648cf2ae07b5937e142ab26fd243665bbac202e1237b20900c SHA512 b4b3fb198bf85192563fb8b6017cf07f92b9c26d6e590efa9476aa878871839315db935e3353c664e635a229f17b0979bcfd31488e29e02ce0dc266d252b9e41 +DIST rust-1.45.2-arm-unknown-linux-gnueabi.tar.xz 114729036 BLAKE2B 8169a3827e8192de80bb654a667bcaa01c5f1bb49f2882b781d7d46bd20d5531204a477317c743c772e6067b225b1a3f78d333e2864e4dfcadb18777618d2811 SHA512 ecd79ba14feed330f81555854a7eadd894b9926482a2aad376c1f04aee16df01a3d929ec071e69b0f531466bbe00021c902bbb6b0ea4374c8ea5e2941d09d806 +DIST rust-1.45.2-arm-unknown-linux-gnueabihf.tar.xz 114488160 BLAKE2B 69ee32914d75a0d3f1e84bcf760177d5125e0d989b023cc8f5499c37894949d05b1d5e61340832d248b3a305ba1dcd670280a0e5ed0439984815e5c8e46b8d09 SHA512 e18e53016417ea0d9ae5bee90a3fcf75dc2b7b8b5dd0c71426e353b9ad162353bdb2dd1b071c63bf91342eb803a9eb7fdf348ef15d678d91e6d221a911a3770e +DIST rust-1.45.2-armv7-unknown-linux-gnueabihf.tar.xz 116516572 BLAKE2B 8a658c21cbfa5dfdd25d5890d37581c29b37ca447b54b0bb1bfb929ec80592f873b1ee5a871a0c417d2ed821d6d0fdcdc078ba17ff58636668996f6fbf1274cf SHA512 dbf36643e87fc31cda5c0d5fc8b1589ce80531a94379060106ce81d525cd77c36ac6f89d5ae05d8872020baf31e5391422ed58c01ec6f801428d67e2e10896fb +DIST rust-1.45.2-i686-unknown-linux-gnu.tar.xz 131555580 BLAKE2B b701374ba340aa965a1eacca89a18d7c8547b8c45d07fa1601bea10be7a5c4bf550f4a0dd5e99edc8eda4112b09fc2ec0477d4c1ea063d66263214d0cb283ae0 SHA512 afe81d38d8692e5792e111c3b2c83da4dffa99c9a8a89b5f1e10a6e449e49d4dd19d68c96d7b2f5013054d141bf4b1a08da1c2b877c7bbe87f81c19232020ecb +DIST rust-1.45.2-mips-unknown-linux-gnu.tar.xz 101990496 BLAKE2B cd15ebe38be6774b01fdbf6278aef1f0fba13fac5500e47c8025a84b09e2d9ab953b0d461e01e5d92a2f63aa96f1f0950295079f0065288736a499b12fab2264 SHA512 7ed3d8d3c83515706516a1c85b232dfa5fef578558ccbd394c609fdf1ca8344e696c095d57eae7604aadeabcbb43dc19abac0db2b979690f70ca4b0ed17853e7 +DIST rust-1.45.2-mips64-unknown-linux-gnuabi64.tar.xz 106772956 BLAKE2B 0a9ecf20e3913a65ddfdb3fb90c284ccae5617bfd05af05557201ef8a6b55aaefa871b6763b7d712f90436e2b45f448ab7ac253c240cf3c22b557e82200c3e4a SHA512 6a45dcaf4c69df055e2563a5f8da37da08757e664af777b95f2ff2747b8ef1b5b72a0379b1395e836e3bf3019fdb8dd87da89cbe080bcdb0e59e941d1eaade9f +DIST rust-1.45.2-mipsel-unknown-linux-gnu.tar.xz 104105424 BLAKE2B 88dee69ae51bc8d8200dfae5e7178de753b369c3a358b2713003eefebd135ce498654ee58d42be53db1b689f303bbe979ee29d8e547a4f41aebbb5845f04a424 SHA512 9be8c08a325346513ec5d78c2a555a79acb9b416d41d3d47cb4562a1612cb9e0e53490c2ea32be38fb884cf51bf529e4e8817b9f5ceb19f38ba30a4d512a8970 +DIST rust-1.45.2-powerpc-unknown-linux-gnu.tar.xz 104037748 BLAKE2B ba929a7613ead5edf806b9ce25f40dca308bfbef6a58a9f994e22c2f8e3573d8bedef3a55a5373d34369dd7965d1385623cf6e40f974e2901e684c14e1873e0a SHA512 dab05dbf487197ac95310c950fec92f8f1001d972df7b00f3f8ba58f1761da97b065de33ce19a18e5b2cf09519fc2fc54ef5863c118a7b8812b28ea5447ba857 +DIST rust-1.45.2-powerpc64-unknown-linux-gnu.tar.xz 114778460 BLAKE2B 5731791ff34c211c4008ada25d493b4b6a3331275d70340825b3ccd95d76849c016101ef6130a51bec912824bd86e594905262d7b0657216b4dbccbcdba861db SHA512 fbf909e5f9135d5216dbbc1be0d1e3159000c58b83bcdeb9839a12f5a9ff56261a61edfab93cd21800a90ff56bb9eff8a1ad83c60fa54bf0cf4b149219dbe914 +DIST rust-1.45.2-powerpc64le-unknown-linux-gnu.tar.xz 118941136 BLAKE2B 96b297b08cd2cdb4b25992b6b0eefbdc3c453c31fec5f36597d185d2a43a8e04d0f4d0ec7523c1c79b7d62d89b0f98be01e524d0d69a20d2f50771f97906e3f8 SHA512 6cb169efae4c847ba204fa24c1f40b4320e53928ab8966727971a5bc7a565eaa6142f40904cec93927543b25450db23d816c20653f53d3aa36ac616fe85ee6ba +DIST rust-1.45.2-s390x-unknown-linux-gnu.tar.xz 125144128 BLAKE2B 66d8ee3b94b427cd55f8b662cae9f3b86ea108706c51bedfbc6e68018b40a7d0ad1162eb649b4af3c60e425c46cbdb23ef966d670abd698df383eae834a3b854 SHA512 7727cfbeed29e8a1e79398392332b25b5498900f593f3d08414c70b44da0cd06dca0791a361956c47c3367e6572d59d885085d3cd99fd4a9c28c431a158ddbfd +DIST rust-1.45.2-x86_64-unknown-linux-gnu.tar.xz 118135364 BLAKE2B 0ad1277674284d29c4e4bc1cdf0163794caf37e39d28381f4dac29303381690a0c125fb2a56437ca735746c2bd6de7961dbfd325808939758ee2d4a15d72aec2 SHA512 dfd3ce0cc42ae82a2d13866c5c94c304b031e253a1485ccc1d6ecd62cc05018b01ac7b2183297bc45ada286b5e91d1344aa3d8417694ab834f8265c7838b4fd2 +DIST rust-1.45.2-x86_64-unknown-linux-musl.tar.xz 124782956 BLAKE2B dac6f48204aee39598a5c83c16b6b1bfbd239a8842bc681450645ef4b7f030666694e6f005473933a5613e5545fc80b9090c0aeb3b3db3a213d8899a7e90e5bf SHA512 14f556599b29f85c4bac39774142e580dbbe68268a16d32f539169defc73353a3c9fd44835358bc53262db43345bb139d14143dd5b6ae64823b9c98b25c4eb75 +EBUILD rust-bin-1.44.1.ebuild 6009 BLAKE2B a84f4b3ae5be6dec7ec512748aae668df471a6f116ce535110309457a8c18859b1c60edf22ecb62a4a501280ca476851bcf8617b08acfd6c9ef54884b41fa9e0 SHA512 3fca7c1ff9d338ef6ae4a6fd0ba2fa19b6d6bb2387408da74b37860c527a371598046ee45b9b2c583fed2c3ed3afcf959beeda15d102e4db4bd7cc6ffb1d61c7 +EBUILD rust-bin-1.45.2.ebuild 6014 BLAKE2B d622da6e6eeb3af0125f6f15a87832083cbe41246b9b95bae3e390bae21aa078648d6476296f38fabe832aa72c2b9a67b33e7061f4e3414059d94a5c544bf6ff SHA512 7fae7c0dc5ff1e6071c38d8226eb5892720f472fe742e49837d6f89df2a02acbb822421b02eeb4545715584e871ba80ff8a0cf1e73e91d0f745fd44f8c1afd4d +MISC metadata.xml 489 BLAKE2B b9c157f91a878ec1196183173bb339e9beb832e9b002cd72ac5b0fc8a64e7d7b27d165f79bf34eb1debfa69c2381b5b9a74a9b52cefc9efdfe41c93ed72ecd9a SHA512 814c53f00547b8a2b12cab136c95222480ab34b1cec307029e66c7d712e1e00eb2a725ccdfe73d7f1b154b362867c7150caef3609daba20f8d4c2496c47f6b09 diff --git a/dev-lang/rust-bin/metadata.xml b/dev-lang/rust-bin/metadata.xml index 01ce1ade6f08..85a5a106c378 100644 --- a/dev-lang/rust-bin/metadata.xml +++ b/dev-lang/rust-bin/metadata.xml @@ -1,12 +1,13 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <maintainer type="project"> - <email>rust@gentoo.org</email> - <name>Rust Project</name> - </maintainer> - <use> - <flag name="clippy">Install clippy, Rust code linter</flag> - <flag name="rustfmt">Install rustfmt, Rust code formatter</flag> - </use> + <maintainer type="project"> + <email>rust@gentoo.org</email> + <name>Rust Project</name> + </maintainer> + <use> + <flag name="clippy">Install clippy, Rust code linter</flag> + <flag name="rls">Install rls, Rust Language Server (used with IDEs supporting RLS protocol)</flag> + <flag name="rustfmt">Install rustfmt, Rust code formatter</flag> + </use> </pkgmetadata> diff --git a/dev-lang/rust-bin/rust-bin-1.41.1.ebuild b/dev-lang/rust-bin/rust-bin-1.41.1.ebuild deleted file mode 100644 index 193d17cba945..000000000000 --- a/dev-lang/rust-bin/rust-bin-1.41.1.ebuild +++ /dev/null @@ -1,167 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit bash-completion-r1 rust-toolchain toolchain-funcs - -MY_P="rust-${PV}" - -DESCRIPTION="Systems programming language from Mozilla" -HOMEPAGE="https://www.rust-lang.org/" -SRC_URI="$(rust_all_arch_uris ${MY_P})" - -LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA" -SLOT="stable" -KEYWORDS="amd64 ~arm arm64 ppc64 x86" -IUSE="clippy cpu_flags_x86_sse2 doc libressl rustfmt" - -DEPEND="" -RDEPEND=" - >=app-eselect/eselect-rust-20190311 - sys-libs/zlib - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl:0= ) - net-libs/libssh2 - net-misc/curl[ssl] -" - -REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )" - -QA_PREBUILT=" - opt/${P}/bin/*-${PV} - opt/${P}/lib/*.so - opt/${P}/lib/rustlib/*/bin/* - opt/${P}/lib/rustlib/*/lib/*.so - opt/${P}/lib/rustlib/*/lib/*.rlib* -" - -pkg_pretend() { - if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then - die "${CHOST} is not supported by upstream Rust. You must use a hard float version." - fi -} - -src_unpack() { - default - mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die -} - -src_install() { - local std=$(grep 'std' ./components) - local components="rustc,cargo,${std}" - use doc && components="${components},rust-docs" - use clippy && components="${components},clippy-preview" - use rustfmt && components="${components},rustfmt-preview" - ./install.sh \ - --components="${components}" \ - --disable-verify \ - --prefix="${ED}/opt/${P}" \ - --mandir="${ED}/opt/${P}/man" \ - --disable-ldconfig \ - || die - - local rustc=rustc-bin-${PV} - local rustdoc=rustdoc-bin-${PV} - local rustgdb=rust-gdb-bin-${PV} - local rustgdbgui=rust-gdbgui-bin-${PV} - local rustlldb=rust-lldb-bin-${PV} - - mv "${ED}/opt/${P}/bin/rustc" "${ED}/opt/${P}/bin/${rustc}" || die - mv "${ED}/opt/${P}/bin/rustdoc" "${ED}/opt/${P}/bin/${rustdoc}" || die - mv "${ED}/opt/${P}/bin/rust-gdb" "${ED}/opt/${P}/bin/${rustgdb}" || die - mv "${ED}/opt/${P}/bin/rust-gdbgui" "${ED}/opt/${P}/bin/${rustgdbgui}" || die - mv "${ED}/opt/${P}/bin/rust-lldb" "${ED}/opt/${P}/bin/${rustlldb}" || die - - dosym "${rustc}" "/opt/${P}/bin/rustc" - dosym "${rustdoc}" "/opt/${P}/bin/rustdoc" - dosym "${rustgdb}" "/opt/${P}/bin/rust-gdb" - dosym "${rustgdbgui}" "/opt/${P}/bin/rust-gdbgui" - dosym "${rustlldb}" "/opt/${P}/bin/rust-lldb" - - dosym "../../opt/${P}/bin/${rustc}" "/usr/bin/${rustc}" - dosym "../../opt/${P}/bin/${rustdoc}" "/usr/bin/${rustdoc}" - dosym "../../opt/${P}/bin/${rustgdb}" "/usr/bin/${rustgdb}" - dosym "../../opt/${P}/bin/${rustgdbgui}" "/usr/bin/${rustgdbgui}" - dosym "../../opt/${P}/bin/${rustlldb}" "/usr/bin/${rustlldb}" - - local cargo=cargo-bin-${PV} - mv "${ED}/opt/${P}/bin/cargo" "${ED}/opt/${P}/bin/${cargo}" || die - dosym "${cargo}" "/opt/${P}/bin/cargo" - dosym "../../opt/${P}/bin/${cargo}" "/usr/bin/${cargo}" - - if use clippy; then - local clippy_driver=clippy-driver-bin-${PV} - local cargo_clippy=cargo-clippy-bin-${PV} - mv "${ED}/opt/${P}/bin/clippy-driver" "${ED}/opt/${P}/bin/${clippy_driver}" || die - mv "${ED}/opt/${P}/bin/cargo-clippy" "${ED}/opt/${P}/bin/${cargo_clippy}" || die - dosym "${clippy_driver}" "/opt/${P}/bin/clippy-driver" - dosym "${cargo_clippy}" "/opt/${P}/bin/cargo-clippy" - dosym "../../opt/${P}/bin/${clippy_driver}" "/usr/bin/${clippy_driver}" - dosym "../../opt/${P}/bin/${cargo_clippy}" "/usr/bin/${cargo_clippy}" - fi - if use rustfmt; then - local rustfmt=rustfmt-bin-${PV} - local cargo_fmt=cargo-fmt-bin-${PV} - mv "${ED}/opt/${P}/bin/rustfmt" "${ED}/opt/${P}/bin/${rustfmt}" || die - mv "${ED}/opt/${P}/bin/cargo-fmt" "${ED}/opt/${P}/bin/${cargo_fmt}" || die - dosym "${rustfmt}" "/opt/${P}/bin/rustfmt" - dosym "${cargo_fmt}" "/opt/${P}/bin/cargo-fmt" - dosym "../../opt/${P}/bin/${rustfmt}" "/usr/bin/${rustfmt}" - dosym "../../opt/${P}/bin/${cargo_fmt}" "/usr/bin/${cargo_fmt}" - fi - - cat <<-EOF > "${T}"/50${P} - LDPATH="/opt/${P}/lib" - MANPATH="/opt/${P}/man" - EOF - doenvd "${T}"/50${P} - - # note: eselect-rust adds EROOT to all paths below - cat <<-EOF > "${T}/provider-${P}" - /usr/bin/rustdoc - /usr/bin/rust-gdb - /usr/bin/rust-gdbgui - /usr/bin/rust-lldb - EOF - echo /usr/bin/cargo >> "${T}/provider-${P}" - if use clippy; then - echo /usr/bin/clippy-driver >> "${T}/provider-${P}" - echo /usr/bin/cargo-clippy >> "${T}/provider-${P}" - fi - if use rustfmt; then - echo /usr/bin/rustfmt >> "${T}/provider-${P}" - echo /usr/bin/cargo-fmt >> "${T}/provider-${P}" - fi - - insinto /etc/env.d/rust - doins "${T}/provider-${P}" -} - -pkg_postinst() { - eselect rust update --if-unset - - elog "Rust installs a helper script for calling GDB now," - elog "for your convenience it is installed under /usr/bin/rust-gdb-bin-${PV}," - - if has_version app-editors/emacs; then - elog "install app-emacs/rust-mode to get emacs support for rust." - fi - - if has_version app-editors/gvim || has_version app-editors/vim; then - elog "install app-vim/rust-vim to get vim support for rust." - fi - - if use elibc_musl; then - ewarn "${PN} on *-musl targets is configured with crt-static" - ewarn "" - ewarn "you will need to set RUSTFLAGS=\"-C target-feature=-crt-static\" in make.conf" - ewarn "to use it with portage, otherwise you may see failures like" - ewarn "error: cannot produce proc-macro for serde_derive v1.0.98 as the target " - ewarn "x86_64-unknown-linux-musl does not support these crate types" - fi -} - -pkg_postrm() { - eselect rust cleanup -} diff --git a/dev-lang/rust-bin/rust-bin-1.42.0.ebuild b/dev-lang/rust-bin/rust-bin-1.42.0.ebuild deleted file mode 100644 index 51deede915ab..000000000000 --- a/dev-lang/rust-bin/rust-bin-1.42.0.ebuild +++ /dev/null @@ -1,167 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit bash-completion-r1 rust-toolchain toolchain-funcs - -MY_P="rust-${PV}" - -DESCRIPTION="Systems programming language from Mozilla" -HOMEPAGE="https://www.rust-lang.org/" -SRC_URI="$(rust_all_arch_uris ${MY_P})" - -LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA" -SLOT="stable" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" -IUSE="clippy cpu_flags_x86_sse2 doc libressl rustfmt" - -DEPEND="" -RDEPEND=" - >=app-eselect/eselect-rust-20190311 - sys-libs/zlib - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl:0= ) - net-libs/libssh2 - net-misc/curl[ssl] -" - -REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )" - -QA_PREBUILT=" - opt/${P}/bin/*-${PV} - opt/${P}/lib/*.so - opt/${P}/lib/rustlib/*/bin/* - opt/${P}/lib/rustlib/*/lib/*.so - opt/${P}/lib/rustlib/*/lib/*.rlib* -" - -pkg_pretend() { - if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then - die "${CHOST} is not supported by upstream Rust. You must use a hard float version." - fi -} - -src_unpack() { - default - mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die -} - -src_install() { - local std=$(grep 'std' ./components) - local components="rustc,cargo,${std}" - use doc && components="${components},rust-docs" - use clippy && components="${components},clippy-preview" - use rustfmt && components="${components},rustfmt-preview" - ./install.sh \ - --components="${components}" \ - --disable-verify \ - --prefix="${ED}/opt/${P}" \ - --mandir="${ED}/opt/${P}/man" \ - --disable-ldconfig \ - || die - - local rustc=rustc-bin-${PV} - local rustdoc=rustdoc-bin-${PV} - local rustgdb=rust-gdb-bin-${PV} - local rustgdbgui=rust-gdbgui-bin-${PV} - local rustlldb=rust-lldb-bin-${PV} - - mv "${ED}/opt/${P}/bin/rustc" "${ED}/opt/${P}/bin/${rustc}" || die - mv "${ED}/opt/${P}/bin/rustdoc" "${ED}/opt/${P}/bin/${rustdoc}" || die - mv "${ED}/opt/${P}/bin/rust-gdb" "${ED}/opt/${P}/bin/${rustgdb}" || die - mv "${ED}/opt/${P}/bin/rust-gdbgui" "${ED}/opt/${P}/bin/${rustgdbgui}" || die - mv "${ED}/opt/${P}/bin/rust-lldb" "${ED}/opt/${P}/bin/${rustlldb}" || die - - dosym "${rustc}" "/opt/${P}/bin/rustc" - dosym "${rustdoc}" "/opt/${P}/bin/rustdoc" - dosym "${rustgdb}" "/opt/${P}/bin/rust-gdb" - dosym "${rustgdbgui}" "/opt/${P}/bin/rust-gdbgui" - dosym "${rustlldb}" "/opt/${P}/bin/rust-lldb" - - dosym "../../opt/${P}/bin/${rustc}" "/usr/bin/${rustc}" - dosym "../../opt/${P}/bin/${rustdoc}" "/usr/bin/${rustdoc}" - dosym "../../opt/${P}/bin/${rustgdb}" "/usr/bin/${rustgdb}" - dosym "../../opt/${P}/bin/${rustgdbgui}" "/usr/bin/${rustgdbgui}" - dosym "../../opt/${P}/bin/${rustlldb}" "/usr/bin/${rustlldb}" - - local cargo=cargo-bin-${PV} - mv "${ED}/opt/${P}/bin/cargo" "${ED}/opt/${P}/bin/${cargo}" || die - dosym "${cargo}" "/opt/${P}/bin/cargo" - dosym "../../opt/${P}/bin/${cargo}" "/usr/bin/${cargo}" - - if use clippy; then - local clippy_driver=clippy-driver-bin-${PV} - local cargo_clippy=cargo-clippy-bin-${PV} - mv "${ED}/opt/${P}/bin/clippy-driver" "${ED}/opt/${P}/bin/${clippy_driver}" || die - mv "${ED}/opt/${P}/bin/cargo-clippy" "${ED}/opt/${P}/bin/${cargo_clippy}" || die - dosym "${clippy_driver}" "/opt/${P}/bin/clippy-driver" - dosym "${cargo_clippy}" "/opt/${P}/bin/cargo-clippy" - dosym "../../opt/${P}/bin/${clippy_driver}" "/usr/bin/${clippy_driver}" - dosym "../../opt/${P}/bin/${cargo_clippy}" "/usr/bin/${cargo_clippy}" - fi - if use rustfmt; then - local rustfmt=rustfmt-bin-${PV} - local cargo_fmt=cargo-fmt-bin-${PV} - mv "${ED}/opt/${P}/bin/rustfmt" "${ED}/opt/${P}/bin/${rustfmt}" || die - mv "${ED}/opt/${P}/bin/cargo-fmt" "${ED}/opt/${P}/bin/${cargo_fmt}" || die - dosym "${rustfmt}" "/opt/${P}/bin/rustfmt" - dosym "${cargo_fmt}" "/opt/${P}/bin/cargo-fmt" - dosym "../../opt/${P}/bin/${rustfmt}" "/usr/bin/${rustfmt}" - dosym "../../opt/${P}/bin/${cargo_fmt}" "/usr/bin/${cargo_fmt}" - fi - - cat <<-EOF > "${T}"/50${P} - LDPATH="/opt/${P}/lib" - MANPATH="/opt/${P}/man" - EOF - doenvd "${T}"/50${P} - - # note: eselect-rust adds EROOT to all paths below - cat <<-EOF > "${T}/provider-${P}" - /usr/bin/rustdoc - /usr/bin/rust-gdb - /usr/bin/rust-gdbgui - /usr/bin/rust-lldb - EOF - echo /usr/bin/cargo >> "${T}/provider-${P}" - if use clippy; then - echo /usr/bin/clippy-driver >> "${T}/provider-${P}" - echo /usr/bin/cargo-clippy >> "${T}/provider-${P}" - fi - if use rustfmt; then - echo /usr/bin/rustfmt >> "${T}/provider-${P}" - echo /usr/bin/cargo-fmt >> "${T}/provider-${P}" - fi - - insinto /etc/env.d/rust - doins "${T}/provider-${P}" -} - -pkg_postinst() { - eselect rust update --if-unset - - elog "Rust installs a helper script for calling GDB now," - elog "for your convenience it is installed under /usr/bin/rust-gdb-bin-${PV}," - - if has_version app-editors/emacs; then - elog "install app-emacs/rust-mode to get emacs support for rust." - fi - - if has_version app-editors/gvim || has_version app-editors/vim; then - elog "install app-vim/rust-vim to get vim support for rust." - fi - - if use elibc_musl; then - ewarn "${PN} on *-musl targets is configured with crt-static" - ewarn "" - ewarn "you will need to set RUSTFLAGS=\"-C target-feature=-crt-static\" in make.conf" - ewarn "to use it with portage, otherwise you may see failures like" - ewarn "error: cannot produce proc-macro for serde_derive v1.0.98 as the target " - ewarn "x86_64-unknown-linux-musl does not support these crate types" - fi -} - -pkg_postrm() { - eselect rust cleanup -} diff --git a/dev-lang/rust-bin/rust-bin-1.43.1.ebuild b/dev-lang/rust-bin/rust-bin-1.43.1.ebuild deleted file mode 100644 index 49f22a50239b..000000000000 --- a/dev-lang/rust-bin/rust-bin-1.43.1.ebuild +++ /dev/null @@ -1,175 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit bash-completion-r1 rust-toolchain toolchain-funcs multilib-minimal - -MY_P="rust-${PV}" - -DESCRIPTION="Systems programming language from Mozilla" -HOMEPAGE="https://www.rust-lang.org/" -SRC_URI="$(rust_all_arch_uris ${MY_P})" - -LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA" -SLOT="stable" -KEYWORDS="amd64 ~arm ~arm64 ppc64 x86" -IUSE="clippy cpu_flags_x86_sse2 doc rustfmt" - -DEPEND="" -RDEPEND=">=app-eselect/eselect-rust-20190311" - -REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )" - -QA_PREBUILT=" - opt/${P}/bin/*-${PV} - opt/${P}/lib/*.so - opt/${P}/lib/rustlib/*/bin/* - opt/${P}/lib/rustlib/*/lib/*.so - opt/${P}/lib/rustlib/*/lib/*.rlib* -" - -pkg_pretend() { - if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then - die "${CHOST} is not supported by upstream Rust. You must use a hard float version." - fi -} - -src_unpack() { - default - mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die -} - -multilib_src_install() { - if multilib_is_native_abi; then - - # start native abi install - pushd "${S}" >/dev/null || die - local std - std="$(grep 'std' ./components)" - local components="rustc,cargo,${std}" - use doc && components="${components},rust-docs" - use clippy && components="${components},clippy-preview" - use rustfmt && components="${components},rustfmt-preview" - ./install.sh \ - --components="${components}" \ - --disable-verify \ - --prefix="${ED}/opt/${P}" \ - --mandir="${ED}/opt/${P}/man" \ - --disable-ldconfig \ - || die - - local rustc=rustc-bin-${PV} - local rustdoc=rustdoc-bin-${PV} - local rustgdb=rust-gdb-bin-${PV} - local rustgdbgui=rust-gdbgui-bin-${PV} - local rustlldb=rust-lldb-bin-${PV} - - mv "${ED}/opt/${P}/bin/rustc" "${ED}/opt/${P}/bin/${rustc}" || die - mv "${ED}/opt/${P}/bin/rustdoc" "${ED}/opt/${P}/bin/${rustdoc}" || die - mv "${ED}/opt/${P}/bin/rust-gdb" "${ED}/opt/${P}/bin/${rustgdb}" || die - mv "${ED}/opt/${P}/bin/rust-gdbgui" "${ED}/opt/${P}/bin/${rustgdbgui}" || die - mv "${ED}/opt/${P}/bin/rust-lldb" "${ED}/opt/${P}/bin/${rustlldb}" || die - - dosym "${rustc}" "/opt/${P}/bin/rustc" - dosym "${rustdoc}" "/opt/${P}/bin/rustdoc" - dosym "${rustgdb}" "/opt/${P}/bin/rust-gdb" - dosym "${rustgdbgui}" "/opt/${P}/bin/rust-gdbgui" - dosym "${rustlldb}" "/opt/${P}/bin/rust-lldb" - - dosym "../../opt/${P}/bin/${rustc}" "/usr/bin/${rustc}" - dosym "../../opt/${P}/bin/${rustdoc}" "/usr/bin/${rustdoc}" - dosym "../../opt/${P}/bin/${rustgdb}" "/usr/bin/${rustgdb}" - dosym "../../opt/${P}/bin/${rustgdbgui}" "/usr/bin/${rustgdbgui}" - dosym "../../opt/${P}/bin/${rustlldb}" "/usr/bin/${rustlldb}" - - local cargo=cargo-bin-${PV} - mv "${ED}/opt/${P}/bin/cargo" "${ED}/opt/${P}/bin/${cargo}" || die - dosym "${cargo}" "/opt/${P}/bin/cargo" - dosym "../../opt/${P}/bin/${cargo}" "/usr/bin/${cargo}" - - if use clippy; then - local clippy_driver=clippy-driver-bin-${PV} - local cargo_clippy=cargo-clippy-bin-${PV} - mv "${ED}/opt/${P}/bin/clippy-driver" "${ED}/opt/${P}/bin/${clippy_driver}" || die - mv "${ED}/opt/${P}/bin/cargo-clippy" "${ED}/opt/${P}/bin/${cargo_clippy}" || die - dosym "${clippy_driver}" "/opt/${P}/bin/clippy-driver" - dosym "${cargo_clippy}" "/opt/${P}/bin/cargo-clippy" - dosym "../../opt/${P}/bin/${clippy_driver}" "/usr/bin/${clippy_driver}" - dosym "../../opt/${P}/bin/${cargo_clippy}" "/usr/bin/${cargo_clippy}" - fi - if use rustfmt; then - local rustfmt=rustfmt-bin-${PV} - local cargo_fmt=cargo-fmt-bin-${PV} - mv "${ED}/opt/${P}/bin/rustfmt" "${ED}/opt/${P}/bin/${rustfmt}" || die - mv "${ED}/opt/${P}/bin/cargo-fmt" "${ED}/opt/${P}/bin/${cargo_fmt}" || die - dosym "${rustfmt}" "/opt/${P}/bin/rustfmt" - dosym "${cargo_fmt}" "/opt/${P}/bin/cargo-fmt" - dosym "../../opt/${P}/bin/${rustfmt}" "/usr/bin/${rustfmt}" - dosym "../../opt/${P}/bin/${cargo_fmt}" "/usr/bin/${cargo_fmt}" - fi - - cat <<-EOF > "${T}"/50${P} - LDPATH="/opt/${P}/lib" - MANPATH="/opt/${P}/man" - EOF - doenvd "${T}"/50${P} - - # note: eselect-rust adds EROOT to all paths below - cat <<-EOF > "${T}/provider-${P}" - /usr/bin/rustdoc - /usr/bin/rust-gdb - /usr/bin/rust-gdbgui - /usr/bin/rust-lldb - EOF - echo /usr/bin/cargo >> "${T}/provider-${P}" - if use clippy; then - echo /usr/bin/clippy-driver >> "${T}/provider-${P}" - echo /usr/bin/cargo-clippy >> "${T}/provider-${P}" - fi - if use rustfmt; then - echo /usr/bin/rustfmt >> "${T}/provider-${P}" - echo /usr/bin/cargo-fmt >> "${T}/provider-${P}" - fi - - insinto /etc/env.d/rust - doins "${T}/provider-${P}" - popd >/dev/null || die - #end native abi install - - else - local rust_target - rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))" - dodir "/opt/${P}/lib/rustlib" - cp -vr "${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\ - "${ED}/opt/${P}/lib/rustlib" || die - fi -} - -pkg_postinst() { - eselect rust update --if-unset - - elog "Rust installs a helper script for calling GDB now," - elog "for your convenience it is installed under /usr/bin/rust-gdb-bin-${PV}," - - if has_version app-editors/emacs; then - elog "install app-emacs/rust-mode to get emacs support for rust." - fi - - if has_version app-editors/gvim || has_version app-editors/vim; then - elog "install app-vim/rust-vim to get vim support for rust." - fi - - if use elibc_musl; then - ewarn "${PN} on *-musl targets is configured with crt-static" - ewarn "" - ewarn "you will need to set RUSTFLAGS=\"-C target-feature=-crt-static\" in make.conf" - ewarn "to use it with portage, otherwise you may see failures like" - ewarn "error: cannot produce proc-macro for serde_derive as the target " - ewarn "x86_64-unknown-linux-musl does not support these crate types" - fi -} - -pkg_postrm() { - eselect rust cleanup -} diff --git a/dev-lang/rust-bin/rust-bin-1.44.1.ebuild b/dev-lang/rust-bin/rust-bin-1.44.1.ebuild index b36387480c97..7165b90fd15d 100644 --- a/dev-lang/rust-bin/rust-bin-1.44.1.ebuild +++ b/dev-lang/rust-bin/rust-bin-1.44.1.ebuild @@ -13,8 +13,8 @@ SRC_URI="$(rust_all_arch_uris ${MY_P})" LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA" SLOT="stable" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" -IUSE="clippy cpu_flags_x86_sse2 doc rustfmt" +KEYWORDS="amd64 arm arm64 ppc64 x86" +IUSE="clippy cpu_flags_x86_sse2 doc rls rustfmt" DEPEND="" RDEPEND=">=app-eselect/eselect-rust-20190311" @@ -50,7 +50,8 @@ multilib_src_install() { local components="rustc,cargo,${std}" use doc && components="${components},rust-docs" use clippy && components="${components},clippy-preview" - use rustfmt && components="${components},rustfmt-preview" + use rls && components="${components},rls-preview" + use rustfmt && components="${components},rustfmt-preview,rust-analysis" ./install.sh \ --components="${components}" \ --disable-verify \ @@ -98,6 +99,13 @@ multilib_src_install() { dosym "../../opt/${P}/bin/${clippy_driver}" "/usr/bin/${clippy_driver}" dosym "../../opt/${P}/bin/${cargo_clippy}" "/usr/bin/${cargo_clippy}" fi + if use rls; then + local rls=rls-bin-${PV} + mv "${ED}/opt/${P}/bin/rls" "${ED}/opt/${P}/bin/${rls}" || die + + dosym "${rls}" "/opt/${P}/bin/rls" + dosym "../../opt/${P}/bin/${rls}" "/usr/bin/${rls}" + fi if use rustfmt; then local rustfmt=rustfmt-bin-${PV} local cargo_fmt=cargo-fmt-bin-${PV} @@ -127,6 +135,9 @@ multilib_src_install() { echo /usr/bin/clippy-driver >> "${T}/provider-${P}" echo /usr/bin/cargo-clippy >> "${T}/provider-${P}" fi + if use rls; then + echo /usr/bin/rls >> "${T}/provider-${P}" + fi if use rustfmt; then echo /usr/bin/rustfmt >> "${T}/provider-${P}" echo /usr/bin/cargo-fmt >> "${T}/provider-${P}" diff --git a/dev-lang/rust-bin/rust-bin-1.44.0.ebuild b/dev-lang/rust-bin/rust-bin-1.45.2.ebuild index b36387480c97..3e4fa1104406 100644 --- a/dev-lang/rust-bin/rust-bin-1.44.0.ebuild +++ b/dev-lang/rust-bin/rust-bin-1.45.2.ebuild @@ -14,7 +14,7 @@ SRC_URI="$(rust_all_arch_uris ${MY_P})" LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA" SLOT="stable" KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" -IUSE="clippy cpu_flags_x86_sse2 doc rustfmt" +IUSE="clippy cpu_flags_x86_sse2 doc rls rustfmt" DEPEND="" RDEPEND=">=app-eselect/eselect-rust-20190311" @@ -50,7 +50,8 @@ multilib_src_install() { local components="rustc,cargo,${std}" use doc && components="${components},rust-docs" use clippy && components="${components},clippy-preview" - use rustfmt && components="${components},rustfmt-preview" + use rls && components="${components},rls-preview" + use rustfmt && components="${components},rustfmt-preview,rust-analysis" ./install.sh \ --components="${components}" \ --disable-verify \ @@ -98,6 +99,13 @@ multilib_src_install() { dosym "../../opt/${P}/bin/${clippy_driver}" "/usr/bin/${clippy_driver}" dosym "../../opt/${P}/bin/${cargo_clippy}" "/usr/bin/${cargo_clippy}" fi + if use rls; then + local rls=rls-bin-${PV} + mv "${ED}/opt/${P}/bin/rls" "${ED}/opt/${P}/bin/${rls}" || die + + dosym "${rls}" "/opt/${P}/bin/rls" + dosym "../../opt/${P}/bin/${rls}" "/usr/bin/${rls}" + fi if use rustfmt; then local rustfmt=rustfmt-bin-${PV} local cargo_fmt=cargo-fmt-bin-${PV} @@ -127,6 +135,9 @@ multilib_src_install() { echo /usr/bin/clippy-driver >> "${T}/provider-${P}" echo /usr/bin/cargo-clippy >> "${T}/provider-${P}" fi + if use rls; then + echo /usr/bin/rls >> "${T}/provider-${P}" + fi if use rustfmt; then echo /usr/bin/rustfmt >> "${T}/provider-${P}" echo /usr/bin/cargo-fmt >> "${T}/provider-${P}" diff --git a/dev-lang/rust/Manifest b/dev-lang/rust/Manifest index 34957ae73677..d008b2774708 100644 --- a/dev-lang/rust/Manifest +++ b/dev-lang/rust/Manifest @@ -1,52 +1,5 @@ AUX 0012-Ignore-broken-and-non-applicable-tests.patch 3387 BLAKE2B 6809f3d5c2cf5698d516ccd74dbbf66cc4265200f75567fa197743672895ddee418367751ac3d99a263ff3417ed89718cd3602c609d0dfac7ba2fd5ac18dce76 SHA512 0c41c238dc0b5a7130398d8c1d6bb6987c9bff704c89875830e9d6ad28d49d9b300c1fe7c982ef9be9a92ed0057f6fc04a604d189d1aec2dc2b014d6d50a7d8d -AUX 1.40.0-add-soname.patch 1690 BLAKE2B 87708762c1870789462cbcff2d66aae1321c4a7a2a3442536b497c824132082c260d59a47c74242bd954f6ef174784d73352188077899927b62fa71707cb7aec SHA512 d835699769f5f68d5f92507c03460a6aa84d0c93b03f71b0a5fdf9efbc4cf4761d1e10135ae8240b91f97fa158424fdb5c30b7aea96672c754f1091e80511902 -AUX 1.42.0-fix-bootstrap.patch 17104 BLAKE2B 21b7f7730e32da7dcfc5cbb2ae73d3e3dab59770151e3ff39073a023fd0826b82a1c52bbb2f5d6c2a1d8b4d9eef40aba399dd56e200aea91e4ed8ababcb3b8aa SHA512 47541c5da1f3cf2d92386ed36c4370475cd045ea7797234de6b6ca5f81b28fe786dc6cc5d476aa1c1b61a470c07b5353c419e69a8e55a2a0a1f303af9e141502 -AUX 1.42.0-libressl.patch 8926 BLAKE2B 16e558246768ceaf923b139cb7af55c901e8eece0b4f8d4e5bd47382a4c806cf9f8931f3e5fa315270945bfe297aa98e08b4528e36d3e7f445971043a4e5992f SHA512 6c3dd0d0ff1a975cbefd21e593a16a68061e1b5bc1a31d3d7df7cc800914596e0ca8dc278172ef244ea53e7c9266ac40ef8c38e3de2e8f5e337418dd8f898ca2 -AUX 1.43.0-llvm10.patch 8747 BLAKE2B a34b7b671bd2554a6f5e854f76f3242ab30b38c8d77d5965ab39bd24825ec37ef4980e0078cb3dc058037089dda8d6f51ce284b8fc786bcd4af77ec511a9d967 SHA512 b004d0c8945fcd5c10342086ff5643af615419abddf20f04ebeb8d470b450cda1fbc74aac1609f9f3bcc1ca04db23f704d75ee03d6b1f706ad9d1e4e1c0a367a AUX 1.44.0-libressl.patch 8969 BLAKE2B 1ae707140a93fd76ec825e0e8c49f1408cda5a3b290a07c974d8ba8ba9b82e230bc2a4864cdecc744425d77ded819690da9328af2f648c636e8fd9ba3f0bb131 SHA512 81421ce6a0eb89bb51ff6a95be79159fce18be51c341f29aaf9d18e9b4aa1d3324e0c3472f72881c94a053b6dc4490c16b5ca2ac9cece0ea2d01051e3ed28a56 -AUX llvm-gcc10.patch 1086 BLAKE2B 92e4eb43f6b65d01fd0de1b51bf027e2ca874aa3f07b3b56f22c8e9a36a523625259bc850103fff36f99dd6a866c47d751752e95116ecfcd5281eea3d0475c1f SHA512 2e6edf3b10003ee873cfa7b2e6f25a58699df41a26b51a85472a19373bb2145d1259c26128584ebd56470e53c5f5624495f1848624c7819436846f3ad67cb18f -DIST rust-1.40.0-aarch64-unknown-linux-gnu.tar.xz 80285104 BLAKE2B 857a3148337833a216912b732c017827d0ee2869af41d114f3a743fbc8bd0ad851c4c42dca63cbcb8f15c816a8c45bd60049fb60ea80a85faec23000140acab6 SHA512 f601e4251e08a6d66edb0489b6ab840b57622b506547e81036e6dfe08eb71005a22a2777a0b8b2d07a6f88286d58f513482b863116311a6f43c7284769af6e7f -DIST rust-1.40.0-arm-unknown-linux-gnueabi.tar.xz 82051152 BLAKE2B 33c62780b3f228298217f7a16e00348cf3c29c504f59de414a0e8a3c506c801d87f460a7bf6107bb7856249c5a5b8fad94499f7f059602b99252ef85dc5b973c SHA512 2098ff12393dd99004ce94f49d445dad03184a108ea8249b70e51abd44bd510f8a4ee43eba3b32967b1a543951e8eec5b06c85692312821b5c855c1d5f034e94 -DIST rust-1.40.0-arm-unknown-linux-gnueabihf.tar.xz 82518972 BLAKE2B 2861693efa9bbd54e09bd693886941ec13b09f1901d384f24534b2852f9cb3b59fa0eaac1ec16bc6df49437cf08a09eff6c649729b0b8c2b4d8def6d7111d229 SHA512 994a91704e65e126bf3d53aa5ccbf9f92f05495a68db1917754f8bf078f16b0255797c884b4f2c70033ae0c94d5f41ad73e1af2e963580ebf56c90a6bf76630a -DIST rust-1.40.0-armv7-unknown-linux-gnueabihf.tar.xz 84254100 BLAKE2B 5ec75764435f5b906ed5ac84c6454a8fade0d71a9f9d2b3c799525ebf1e1a6e208e85dffe125e3de163d94a62693241a6ed59651955942edc8cdfad5c354a23d SHA512 d3345946c5a3d5cb3d7fca4d3200710704d64547ebfa4ab11c45ea1a18ca3c49b429783d499845f31dcb150abe2f6836fe203fd9d7aa53e0475b940da5549492 -DIST rust-1.40.0-i686-unknown-linux-gnu.tar.xz 122168896 BLAKE2B c89278bd7af7d167251c122297b4a8045da94951aaba5288a3a47b7d4f7af2af2e5ae672388f5c6192382e800151ad54cb2fc9a4fd66fde3acb8acb877aaa27b SHA512 d727149afbbc3b2709360dd6080ff301e781aaa94459c1348d3e35382bc9c7ad65c4d70f9bfc7b44ac92ddaf89e3aab92b75b9d184eba86916da25bd629592b6 -DIST rust-1.40.0-mips-unknown-linux-gnu.tar.xz 74305992 BLAKE2B cf51e3d843a32a3025232d1bc4374c55d3931d8b8634aed83f3f5e890081d7ed2a09d0aa3f026936d5e2f91fd26b56be704cf2975678db5fa23cf57c34277a89 SHA512 995b875dcbbd8472e3109504e695bf15eca812ea252e5ff1a615fb1c5dd3b66fe637fa4c30618b1584af4b641d4b4d5a4d7e1b6a09cb0ca4ff8fdd8a3488a255 -DIST rust-1.40.0-mips64-unknown-linux-gnuabi64.tar.xz 80925812 BLAKE2B a77123767639e93531fdf30af711a8dafd91c4143e7774edf88a9f513fd6fc928f3c96656ce4d0ede54677077c8eb383d5c37bee6881fd0796fe47257a16d753 SHA512 ebbb01c033c16dd9fe93ce0a532afa39b1459b056896c906f9e561285977e7c569e770c7e624e485cd8014008c9d496dae893921bbc1342c3e2b6520c9b84440 -DIST rust-1.40.0-mipsel-unknown-linux-gnu.tar.xz 76145484 BLAKE2B e06cfc8ac8d6124c4eb7c004c9e792c6ba21de5621d21456a7e47f1cd67f584d480708ddb098d882005953db818da27e396c9409c1e089d7db42844608ba1fe8 SHA512 4d4b52397574cfcbf8e79d71cbf783119b0096ed6d8b1f1a4c191336ac0e616b682342077f3451db477e0271a5ac453ee418314c071e8f922e790eb0e32ae768 -DIST rust-1.40.0-powerpc-unknown-linux-gnu.tar.xz 82846452 BLAKE2B e82e117b0592278b491399f27de4c26b518bf8f7cbb60125fc3ae36ddb033113324222ac7433ac9b02026efe4be477ec9967c55648121869a36ce833c3600afd SHA512 4d71bbf1b29f9ea649f444bafbaa8d6447026d992c264736b50365736c9e2129d28f23e09260aa21be10562727a5f6b298ddaf8f7598b4bad53d65cdd2f9e9f0 -DIST rust-1.40.0-powerpc64-unknown-linux-gnu.tar.xz 85231436 BLAKE2B b307d794e9e849d40a98116851950f76576b5ea6bb159c71830bb4210c40d5b6cc37d67d316d1b289735f83a29393699a49dd0c11cafe8191a64de6384ed69af SHA512 eae2e0ba3a6a9ba07945112c17962ca3c77737fa187759e674e78f626777da85a5ee6107168fe2866b5beb1ecf2e655652cb7d9b51867b247d76e174dfb103ce -DIST rust-1.40.0-powerpc64le-unknown-linux-gnu.tar.xz 87972788 BLAKE2B ad1e460dbd7ee5dbe90bf84a68fbcdd89f3d7a1a898ccd94827327bbb2bfeafeb66d5c50651183e0d429f8d14a41e4e26b8f7cae2ff61b055eddcb2c0fa6aecd SHA512 8b82f3bacc503aa23cfa7a6cd6232e34b734becffbbe02df9f766878d526d24d7409d8c104f39fa791c0f7a8b3fa61f6b8a528e89e8ab94d6a131b2d0ac11f0f -DIST rust-1.40.0-s390x-unknown-linux-gnu.tar.xz 95398844 BLAKE2B e897ac3e1f46a63c7ad14e0e5229b7028ac325256e084439bcad0ced631eb26d50ca72710c46e59accb0e3d0574d08a9c15455be59a8d78173387d35ddd3bed7 SHA512 e71d3a1d85975653b6d972a4854c9e53be7f2d093a601145261c97f7917f869399fbc6322a04f63b782a5a28b91c3be40041a8c77367d19dec8d0e857cbbef14 -DIST rust-1.40.0-x86_64-unknown-linux-gnu.tar.xz 110186516 BLAKE2B ad89d8cecbd565b23c98ec095bad218de971cb4bb89924bbcb012df6c9ecf0db2b50d624abdf6b050fe1f5067aea9311dc01852950a5ca5e993e99f913fc5dbc SHA512 11a2ad1d8b9e91cbe9ee6a1954d46ac75eeaa83f0c2425a8ad70d191727b02e86ead33d6464222effca6f5134c31a165801a854aa57bdb5f12944d605de3c1d1 -DIST rust-1.40.0-x86_64-unknown-linux-musl.tar.xz 96869284 BLAKE2B 61cdf2eab51455e377e079e7013959ee51358c9846f8442f81a3240062af573f452a0f5f007e63cbbcdd0db98ac22ab0d4f3006f6ef30327b609d303410cba8c SHA512 3e6d7cf7b24c09d13266e06f20ab317c5ffb68de3242719c71e95c3d778269c4076e06badfb488e8fc223b822246ebbeb888d4168ddf6e2401793e23e77810bb -DIST rust-1.41.1-aarch64-unknown-linux-gnu.tar.xz 96755608 BLAKE2B f8635737089bb028cfac6d6478c4226a78c2c8a8aa12f28cba267744e2e915e062f49edb505f26b6deaeca0d2fdb4ec4b83e791f87bf1eab6c0536dc41e2c641 SHA512 54eac5c380b418c1714931ead7d6284b225bb427fcc501e147240000b71d31b667e308aea7f38f3299b1311ab04f19011b914d37a4581c7a64028965569cd58e -DIST rust-1.41.1-arm-unknown-linux-gnueabi.tar.xz 98856136 BLAKE2B dbb3996a9ae302290886bf1cd4642d99a9b3f883f9d39817bb15f105565147e416e23d19e0d08314b08ed441f1ac528c20d8bee27ccef68cb585d8ef64a19e45 SHA512 1b01acd430af3cf99d838aa367dec4f6e4bfcec91388d4a2323cd781d53246edae0f14687b087b73b87c349f243e3acabe193538ce31303f07d59c6a03c31565 -DIST rust-1.41.1-arm-unknown-linux-gnueabihf.tar.xz 99107336 BLAKE2B 0dd84e7ad6081b8fdcfcb2691496ed3a493e08db4757e6d3bb2aa9a36fc6f020772a84bc21d0c60efeecf635512f25737b8d6b49a53020c4045c89c5b89881d7 SHA512 462e6d354a4b3b848781bb059decc5eb1ebb4d8a31651623d076a2654e2c8fd02f0f87ddafb124efa40cb134c9438eb252035c2b5bfdf936881b14a23bfbfe9f -DIST rust-1.41.1-armv7-unknown-linux-gnueabihf.tar.xz 103399676 BLAKE2B da35342be05e58c11e6f96ab566b6a2f334d6975d4251deb2f41069d4a549ebf58aba43e1f07b99dedf0426ab0a8e8616b32799ca54a5f601d70910deca3efaf SHA512 400bf8d013fe5030243bc0ccb7066ea3d03a2c10727e04b6830ab91dfe9b04f78cfef10794a1c7bb6276fb00c86f1e1c42a74faba19f3125859b3464726d01c2 -DIST rust-1.41.1-i686-unknown-linux-gnu.tar.xz 120834812 BLAKE2B 4615eeb7c63392f66487243743fc57677654e232c786f9f970a9be9996dcb08e265631f6764e09e0444f8bb767b9c76366a26fe8fca9dcc149c81df5c2a3dd18 SHA512 c6d74b2653c537043eb2ea721095ff053def592b4c330bdc104690cfb51d648f515288cc0451743d94260f18a55d6757bcb8eb1e6c0217da3498d08b681ca6af -DIST rust-1.41.1-mips-unknown-linux-gnu.tar.xz 92620720 BLAKE2B dff1be71d459e0256a19fb88f324e59cbf2e10fda693157802a63a08329c7dd4feca4b260510b3a1d6afb4afc9ed9dc549b741f598f3aedf50a982810d0bd140 SHA512 4fdca72b98a4fd25a2ddf33e0f31d9549c39fae9dfad6f1648556f144f82cfb2a487f6777d61476ad18bb0a0ac63810b99bb09a18719ec5344e89fccb16ac693 -DIST rust-1.41.1-mips64-unknown-linux-gnuabi64.tar.xz 96215100 BLAKE2B c52d564010d56df01bac6b2f447d56c00855c52ed8ebe6a2ac1b7786e8c73a1d529be7e7d5a4f7b427892494782aadcc4c8cc54157287d43f58938b0a57486c6 SHA512 2ed84ade11c6f4961e83e06a61d998a7abc9165cc384cc69470658e8244dc399e30c3f983a9f11b0bf88032d855bc47fe6d71f5db95cc7168e6f810c69095633 -DIST rust-1.41.1-mipsel-unknown-linux-gnu.tar.xz 93365592 BLAKE2B cd0d16f99a0976076530fa601f9bfeb61e1204bc278f78db015bc8d1629ce8f19da61a12573fdf9cf0d3d29e56f6915338aeaea3ef4d9b374eeb4095189fe71c SHA512 a0b7cc55ffeb0911d1d82d93cf2f4ea2a683ee76a783952b2f42c0b3c3d02b2bfc7df6f5762af91e6d02963e22a08ba26f143f594dfd6d41ad8198f7e8a862c0 -DIST rust-1.41.1-powerpc-unknown-linux-gnu.tar.xz 98530136 BLAKE2B 41399fcc9f1d88cc5a6fe0651012e4ebd1addde428c22611c30918a09ddad3640fb326bf48f94e5d12a610d2709eecf95c5d023f10bc6636eb6de1808a104e48 SHA512 545b2a4459bbfa7049755cbb63ad6e2917bf03cb9568eccbf3b01ea8f846263fbdc97ad29b42c440fa92dd9737b398196c1cdaf96c9716bba2f9e1d4a3a20125 -DIST rust-1.41.1-powerpc64-unknown-linux-gnu.tar.xz 104058752 BLAKE2B 10b3e3e4970fc05952f83e80e7d133d308045bdd3342199e885d2e6add113ada7959a93010046f48b1fedfe85f0346793fc54e0bf0c55d096f82622e198a928c SHA512 50367685783085cc384be944d4321dfde850f3a0e94de0625a08f17160af2c0b795276f96574d1bea84092cbc1cd3cde619d97fe2e37b07ead17f49164e1c995 -DIST rust-1.41.1-powerpc64le-unknown-linux-gnu.tar.xz 110594504 BLAKE2B eaf9c92ea9599314d12c5f9d0b654b523ceb8f40cc779cdbc2d50b4b07e0a37cd42d34000f0ace9c19154a1bd17110c097e30ee2b617f3a29de4966bb9303301 SHA512 1b2bf6d35321dd0a0fc9735005317f09f8b9a81b520612484530e29156ea254d5cada583e44f7e4a840edde09d70c34f7ead1208d8aa6037c652540dfa38cede -DIST rust-1.41.1-s390x-unknown-linux-gnu.tar.xz 114814112 BLAKE2B ef22c377e1d89ef4ebe78df19d91bcf042e2e1d8997be80d7d40998b18f6b44f8bb1232b1f72e42e3ffb6d1ff235f3cd2f04854e996bbf7be8f6d5d7299e8514 SHA512 f809adc626876df5c6e050362d59189ede5e3991ac41fd129922540abeb728f618e1a3f3925cee34895de5e037141aabb1f8c2b94d4069945d174e38446e8153 -DIST rust-1.41.1-x86_64-unknown-linux-gnu.tar.xz 111202140 BLAKE2B 226c68b1e97cc9be82e81f6c9e065e08514166a65a57159c2f63527063ae5f514650afc2591e0c4854ecd0239dc82cbc9a97b99412608645aca879a71354d857 SHA512 c75d4a18cf9300c6ab480d34c5e4b41be971535931455239330cb2a0e927bcf9cf102498cad5dd1d5d802fd1d9c9d214b80e8ff15aa6be68d3e7f41420cad666 -DIST rust-1.41.1-x86_64-unknown-linux-musl.tar.xz 96076684 BLAKE2B 3672e24a83c1e4c97a0844f9522a9fced19d5ef01c89d44e54bba8683514a86f7a14ea2e8c2f28d03c65b7e2e0358ff3cea2f85de1e69eb5334c55e18a8c8e4f SHA512 29e7b2aae35017d7f4313e0a482712390ffec752e62d8b1bda95d56a1f93ba882a8f610b469b5d2d7fa3d6d35c2cdc4e45d219ad85b8a3f71ba6ce04b1add48b -DIST rust-1.42.0-aarch64-unknown-linux-gnu.tar.xz 99903344 BLAKE2B 77e64c56c2f3ab505af9d9003d127b8beb3b2204344985faa6de92905c96d92342485e062e0ff1228baf51a67c8c2274078a60cc86e0c67ba99481a5c01d4d0d SHA512 691a11e279efdcafa6bdafacb7fb48ccf653e180e0e85909b6031105a297d47538efb36d63216f6185427f818483a51aa827f351ca2123840d72caf60079fe13 -DIST rust-1.42.0-arm-unknown-linux-gnueabi.tar.xz 102380528 BLAKE2B 5df9a33fa2b1414c9986f01d8dbd85fab2a705818336e1b2c94ca63136be7be63d25a2586efa956cf31aa604106b3c92857e2133169c7f3062da22006f1896bf SHA512 8e1b5351a3289441823ed0ce12f2fb0cedc267efe5c504966aefbc9a74f37ed11f4da1086295d7351c58c2d0bf59c4b7b54b23d5ec0dec4750bd7e38500afeb0 -DIST rust-1.42.0-arm-unknown-linux-gnueabihf.tar.xz 100300920 BLAKE2B eb90db613230e44f5002388d83460b635f33ceee349b094ca2472171d54ce3d459b6a2143a66705ef7ea89dcb0fc9b21e6d2f2f53479098ca8559f7c84ee0697 SHA512 d58c1820f39abfdf74569e26ba4f13347dde16632415d4ec0b54cc99c3b04563ed551ed1ba717b33e9b1a9b13e2502008203472f8ed712e302d1db66909e7ccf -DIST rust-1.42.0-armv7-unknown-linux-gnueabihf.tar.xz 105021972 BLAKE2B 5a04715582193138344ef05700af4ccc90074a1b7d6ed8109993b6c59315e6fd6bc947504fcde36b869da8db4b7b8d8240f908387c8b2d78e21e35f6c27fdef7 SHA512 26768ec530506e20fed8f9ef2c1ca85eec155fc90949f2063836b6109b296a976c8430a698971a8b1c11e8f6ad043d854a36e9f0e849417178411dc5cbd30e59 -DIST rust-1.42.0-i686-unknown-linux-gnu.tar.xz 124258356 BLAKE2B 3e2e0c11e792943be65c989d4b9ba98cc92b2a1dfec7b8506f00d20e439050faf744b991e7e4fa91f0c8a52f7a4e5fb8dc5d383fd0430fa46c4e35dfa5bb26e7 SHA512 7376be5abed573bbf68f73ed5609fa8e22dfa3ead19a3f3d78d553347e3ae01604ab9906f5317f1687a8ab3f9ad9c38cde44ef6f56d7da65a788a74aee9df057 -DIST rust-1.42.0-mips-unknown-linux-gnu.tar.xz 95265764 BLAKE2B b02a340c7689812f7e13286f3dcde893933869c9becb071e9b0455eb68130d74fd67babdf85859ff7b4ef449261be6e09f230a4cf6196041c199d717324c8b21 SHA512 cc19b383ac3dde62750cd247e7fdec9ca4b4ee16880b9b00c42e62c57b46c522950983b500bf8fc70b8198469a18ab92c1ca382e8a07abf8bc937d8f17208d5d -DIST rust-1.42.0-mips64-unknown-linux-gnuabi64.tar.xz 99814476 BLAKE2B 405fa7426a8d21648be97f6b93065b20878419a2c0aa5889ea6a66b9c0f5804d2673a23932a2462965f04e320c4e78f4c79d5b0a6f9877dfe9909d4b4b8864be SHA512 e8933af6290f2cb881fdfc7d2ba3da1c47ef67d847c8a3e659f8f626b7154f202f071ccd4e90555333a3f3dc2bf4101a645b5665dd00a6d72b5acacd6ad317a2 -DIST rust-1.42.0-mipsel-unknown-linux-gnu.tar.xz 95248132 BLAKE2B 875597ba699281d7160ba2f36fe03f3a234d19e5c6e91ce1291ab2369799349a42e1e7e6dcdf524980548a8c499693d6b48967913d4280776da7a921dfd18ab1 SHA512 733307eec1f938385a43b38aadcd84b7d4c1cfc084e070333d955d8b36f3192a7f7e6c05c5c07d782b945acbb261e48db94f2f9f7d3a09e8669055a577c90528 -DIST rust-1.42.0-powerpc-unknown-linux-gnu.tar.xz 100228400 BLAKE2B e05749ab974ffb0dbae332d4f59c8f71047f86c5e33a368555d996ccf14d229b0cda2cfbcf7f05902746fcf9b18a9a1ba4cd8d8cfeb51d3128f04914e8bc062d SHA512 ad2c9d3ebae5ccffd1f70d0a732a3e6cf793b203a8ab7bea3b90d45b63dac84cd513fcc494c7401a6dedcc1e4c3b6fa4ba95a4d3c10411dce5c2a06b84ef934a -DIST rust-1.42.0-powerpc64-unknown-linux-gnu.tar.xz 106116524 BLAKE2B bfa533d3fdeaba4c539f18f205ddaa99c6a6be8f4213cf2d02090cc576ee17c721295262c78d84ec01bc286b59f6a30bf32e7c44e435205908fec03de1a8d60a SHA512 668d1d353bdaf676043ab7f4baad464b202e8ae1be7713e3481b8e9fb5fabd1020e10e178d69d099541cb1b23362b50b826790740156f1c96efa3d2a7457e404 -DIST rust-1.42.0-powerpc64le-unknown-linux-gnu.tar.xz 109926880 BLAKE2B 92a9067ff95bf2293eb5dc3f055275646f9f9764a59ea5dc772b1d8da78c28acfbd93e7a9076dd7ddfb36255cecda0646a7e5cc4ef4767cdb320aaf046f77162 SHA512 e1db9bbef45e88e7d1d5b905379c04786a015c90d0d9de6a6c16276a3e91c342a8231dda7a4d46ecc7adc969d07fd7dd8595975647b9ab69f8997fee74401219 -DIST rust-1.42.0-s390x-unknown-linux-gnu.tar.xz 116937084 BLAKE2B 4d68801c7c40aa0aca24d19d25e80614b5b40aa2715aacddb6b9f5441b1c7e19e7b0d396caea860607df1dc580deadc43d9cd1f988cbe654b3132b665f9032af SHA512 85b1331a9a71cc43a2fa628b8510590ff072e409c2c38ebfd9089ab7a245182e23b52f6221b25c63f6048e1bf4ada0f561dd8f3f810680c9727040bc8a0d8d46 -DIST rust-1.42.0-x86_64-unknown-linux-gnu.tar.xz 110826392 BLAKE2B 8c90bacc9b350d64c4084edf104e9004461d681e19f8e8179ff6eb0b2bc50e25d95e3ed13c83f77224cc60f374f3961f0069dfe20512c844598b8eb2393300b0 SHA512 87c06d4503e7ba12bd3dfc8dd279a3bdf33a24d2c22eec1378b79b2c17ccdad9b4c8dbd0d4704eae1f3476aec5639d3ba143e8c74a296d631b17b57da7447e70 -DIST rust-1.42.0-x86_64-unknown-linux-musl.tar.xz 97471188 BLAKE2B 29e7089a33a20e5c57a68c171e6b049e5dbc97d4c940106bbf7116c970e7ddb2271b1cf33162b4141d89b0b59049e09ca49c848a326036eefbc03e369f3ab18e SHA512 d804a08e38fa6735ce57067a3c39c59e2932943aa8baf43419815e9c743f50e198d88ef80d87fc193b8bcba011c685471146c0741954095eed74e41f86de38c8 DIST rust-1.43.1-aarch64-unknown-linux-gnu.tar.xz 104148868 BLAKE2B ac5db9eb58c502253d001e0c93aef867bc584d045960a1d3c2caf6772a7c1f4fbad7da579d7c72b3376804f61f1332a54e9fc7099ba5f4a65f7e5435df28894a SHA512 b54fad5493344d2370bd77110f0ffb0231f41ab8aa9707e9303304957c5d9067dc83089432eb175605b78dc771dfcf7abfcce63d7fecdbb759dd224c17d12da0 DIST rust-1.43.1-arm-unknown-linux-gnueabi.tar.xz 104779424 BLAKE2B 63c05d7403970bd4a237a6b690bcb8e78f310816a953af43da8d258a74102cd560c8674656c2036b1f391dc964ba6d2be2736bc10686c2365cc332b5c76a5502 SHA512 ea2eae6da6c757c07cf9631c706365c743c58f28b514444763ea70fed4c8fcefc5c36d55136afffc2f5e0d25e9b1fdf3243cb9def7e0f57e37b5a4783d44a61b DIST rust-1.43.1-arm-unknown-linux-gnueabihf.tar.xz 103569032 BLAKE2B fc94eeb777a72fcb1b2821b5d10bb9eaca535d76e8caee3d06aed989107460e00146516c5be5714e9739c49d5170809fc132624f9a035afba146db883346c57a SHA512 1c523dafceb29f916a192261f673048c8f781453bcee237e0e333d694d7d7b71735544906f2edea9e0a8a48fc66a478645ae8ae865a171f4f9a94f0d8e6800c1 @@ -61,14 +14,22 @@ DIST rust-1.43.1-powerpc64le-unknown-linux-gnu.tar.xz 112921244 BLAKE2B 9fa67664 DIST rust-1.43.1-s390x-unknown-linux-gnu.tar.xz 119547480 BLAKE2B 8ce0d64e2d47f23cb927f3ea3a0f469e3cafc191ac1d47e580bce6cf0b35887484542f7d1b857d9bace5f696a072adb7e17e8c5f64af9bf1fbcc305707a15f9f SHA512 f087e50a91b1cc4a12bf15aea1cefbda9b89518febcecc0d56ea7d0a6a682be06cff7777d0a0b4812e96f3fb3295e7799bf200c1599c88cb7083a78d5002f14a DIST rust-1.43.1-x86_64-unknown-linux-gnu.tar.xz 112817212 BLAKE2B c6153889d9872ed5a60bfc43bc8c98e71654fffdd79ce775c3eb4376ed4714c5532e6aaecb769e447f3ae0bb7a11aed75754a5e879404742cb0813080dcf67eb SHA512 2fc573ca2826d9f03044f746ae4d7715b4e31b9ac933289607aa3449a538bb4dfd519540576a1d0d286c0d754a7ba6ce38beef6aded1090d3af3091b6ba2a9ee DIST rust-1.43.1-x86_64-unknown-linux-musl.tar.xz 103345832 BLAKE2B c16930854ea5e825e1338fdde3966e24d3505230891ab4e10160c5482298996768d8cee9890eadd486bfca41ebd5c9f38f7b7ead35a7848e59e409df8eaf9bdf SHA512 9f6ce2a5eaf98dc20b4ed88dbe60e8fb014ef3e7e82f5c31a28cf0f916d996271929cadeaf39a869f548aafb311f022acb408d51d4312c849c71843bc37ca202 -DIST rustc-1.41.1-src.tar.xz 93754192 BLAKE2B 235ece650d0c75e1c8700ce73d3811997cd0d827b850a6dd435a269f3f86d85849d54755ea346c5ddcbe0d1224836fd78213f6abeab4a9a8c4c3e2d8a05ff7b4 SHA512 ef33565c9cf4e27ca279072bfed3301e0276c09407d49727640746ba78d289de285278d64b1cce8708461fd6c97c7ab2ea8d56e7a4c4a23b2e66e2d164c35fc9 -DIST rustc-1.42.0-src.tar.xz 94186592 BLAKE2B 82298ef3da44188546bb945bcbfc1af630e6a4466b643667da08a04a33c6417afd68fc86302bdd22ab36c208fdb13cbc479e762d1217c05507bbfeb13bfbef7e SHA512 589bfdc92deedd33b8ea0df7f7c64c2a9a085fbea64936eff92f81e812309c060ed7a7adc96f6010d7adf62a68434a230da0f6c5b3540df4e0a5c6de05a31b16 -DIST rustc-1.43.1-src.tar.xz 94405276 BLAKE2B 8679fe937abc4f758f3e35c2542d57cc1ad0bb72111597881873b30779b6e7b6711baa52493cb5ff954bf9cd31367b36db4e4fc8676635026059197a33659048 SHA512 24bb01237b1f3f5412109290bb4406b9742cf8956162f4090a98ed3a59a6e2e8dda399452bec1c93c8afdcf5effd98e4825e7f218238e0e88735c1ff4a5b385f -DIST rustc-1.44.0-src.tar.xz 94754392 BLAKE2B e46da2ceab4ba596ef693c2e7433e5faa3c2f60a10cbb56a446d9c3d66d6c7b08a6296df6fbb4b7c54c0762edcded698a7e2f60c3380990f631934aebb75d42c SHA512 03d6a2ec4c80eb436b278677080f360912c60aacffb98b79c91d5a79967ef988b2e62ccff9ab26993f852cebd62cdad48e149c4498f6dcdeb3699cbed19790e4 +DIST rust-1.44.1-aarch64-unknown-linux-gnu.tar.xz 101259004 BLAKE2B c00274660698c5e980a6fe28839f96783989bc5f102025a5e2b63466928f697afc3c70ff8efd00b525ea4b88823585e801690e6c05b246abf5600af80f911a07 SHA512 97a67addb5995f504d7326a500d1b40c52cc6e6e6f6e946adabcf825ce9b64272232a24bc30ce36e3ea63ccda4b980f3b7b61b0e88a8554f021b731ad79a35f1 +DIST rust-1.44.1-arm-unknown-linux-gnueabi.tar.xz 107474900 BLAKE2B 1b21f28b12507cba83ede592670b715365b1ca1fa311dc70108404bc7fa199914716cf7e5560a682ccf4f37bfaf91357f547456a032b4914e75543fdb7e8e84f SHA512 5bb406cc999317a15988b434c3de53d11e3823359fd3dd798de8195fc2e7e7b32830c7cceb1cb7089f47b333346c42fd4153ba1b441799d89fa27207383b7043 +DIST rust-1.44.1-arm-unknown-linux-gnueabihf.tar.xz 105267436 BLAKE2B 6e4c13028dc1751970b04b99db64be6e1ddbbc3b754318e3eabe03e7ae65031c4a5ed87582ec0ffa605a7ac69bee32c5fd48c6dcd84f298d73199a7f7d1c731f SHA512 fffadfc6d8317512ed50df97785a7d0094f59b9465ce5e762c45d6a3a484cdb3c04a72ac49c3d61abad898503378d841ed6abaa16a072aa6adc9069619e26a49 +DIST rust-1.44.1-armv7-unknown-linux-gnueabihf.tar.xz 109724880 BLAKE2B b53eb6441c18c98c12c6e181b499b7e482c9f4eb5e244f6a1fc694371800fe94ec15a9a60ee5e0695e488d3a9d925bc6ef946c23d084e01b43c2bc659874b713 SHA512 6a7bafba9c4d60bb13fac2a7683702352d3a04df24674f993952e9d872b9def47b5f8070925798343f5fd2f83775377ba2ddcf188b8500ec518fe44eb67483eb +DIST rust-1.44.1-i686-unknown-linux-gnu.tar.xz 124915068 BLAKE2B 5de966d60f8e58e435e29aa63b906e117e7d73897ccdcfa692d0e582cf096c200b8c4f9a6ba76397f6ad29cfafaa4841503cf22764ac9517860bf46172539605 SHA512 fc6259c7b55a1ee457e444885c9604d2bcbe937833bdca9bb70fbfb230032c1e497ea04aa5edd761eefe5b48d34928998c6935563e76c82eccb7a03b1d5aaa45 +DIST rust-1.44.1-mips-unknown-linux-gnu.tar.xz 94537064 BLAKE2B 39a829ad9cea0303599cf8de2654f5fc7291af0a41d03c72cc0f1472162347b7ebf4a2cb7b2ad6e64bbca3b7d39ac7d2843d16a9ad205b8b14be48139b84b34f SHA512 e2284a0cfe38b85e41e5c712ca89b2099617a8836695628c509075772d23314b234730bcbeae060c1fc664bf193286493dcd546f672a6053428304e099acd41d +DIST rust-1.44.1-mips64-unknown-linux-gnuabi64.tar.xz 102649752 BLAKE2B bc57e6a532c7806b6e302ab31f2dde7b88496bbadfec7185b8c389fa9cfd4a2baf18dccfe4c1b69d0914b7f481813dc4db72ad5944a9d67000493122228505bf SHA512 ef69913b8f448a41b3454bfda2e120ae58233349b215b9419e6f0bf6e41528521cd7904b02c97ed55fef029c7687d8cf9d3ce21fbd09ef771e961e24d3f2547f +DIST rust-1.44.1-mipsel-unknown-linux-gnu.tar.xz 100002200 BLAKE2B 5befcaab66a965dd9c2dcc5636050099a461270d70102a0a1c489c3a1b721c432d337dec514b685f2710ea4c9e4fe2b9250cd88c55034c82da9b970b8ebdedb6 SHA512 4fef660c68a265da12863b07bcaa1f0fc19d4e377e2404c504047ea1f407e9b47f29f8947f707cfb0fc75216fa44d123c86ed07e261db70d48017cf93b54dfdb +DIST rust-1.44.1-powerpc-unknown-linux-gnu.tar.xz 97722508 BLAKE2B 98a9ae4dc0c0df087bee8bd5c875e63a54b2ca71465386e19f425a9c35108abe9f04b222ef51f8cbeba3d781ae85f9fb4c612b86f263773ff868ae24866c7df7 SHA512 011dcbdfc8847f6a6004349665207ba89ec84a37d649c082588a1256ff992e374f4bad3d1930270a89d35c2386a16c18be301725b44e46dcc8501f0a98d761f5 +DIST rust-1.44.1-powerpc64-unknown-linux-gnu.tar.xz 107393564 BLAKE2B e3c2d6ae58585e020c4d1129ce26b19441b7f7e5df14d80290855f2931febdf4d2b4c30c4bcdc1747b61b4d1263194777ef7193bdc7c7dc4ce3eab91b137f0a0 SHA512 ff6b96b34b9b7dff362f6f2dcdf3b55fe7f2f349692434de5a11b8ca9956e06dbc6531c2457b4d43d5d19851ecbdbb0108e9f7eb449d9c965ed308ddbd0775a2 +DIST rust-1.44.1-powerpc64le-unknown-linux-gnu.tar.xz 112429740 BLAKE2B 10252623cd291c0e95238ac038544b989d94affd2edf173dce4f10847910aaabec99f8574f3141d4af4115ab6e9ed0536b87c8e8c6c899641e585efc9a3c516d SHA512 cf54b52581d393c2694fbefab90c62aa1f57ece8b200bfd656000950005554fda6fc0145af3aca0c526b8e43b100b8efe632929b6c0c1a4c4f4ce6dde4097283 +DIST rust-1.44.1-s390x-unknown-linux-gnu.tar.xz 119312728 BLAKE2B f5e3209990d3cc0181a200448e4bcbf1f6754847cfc36d7355e191fd49e239d3e0c002310743fd063241c5dec47da3a0776c361241facbcc4a1f1e9254eb805d SHA512 84c6ed736bb7d0c10aaceeb2c2c3c97f6188fd7d7f4466c8ef35ffc591d6bde3b273a0d62d50e60f184ccd81c96a31ed2e610e82fb9ed9efd574e4c5a5f25d26 +DIST rust-1.44.1-x86_64-unknown-linux-gnu.tar.xz 112133992 BLAKE2B c0af6bf1417bbb69be9f552f60805eb0a5f530b667ca2bbd04db9d567f1eb467a9e72912062a3c22d3922c29809258637dd7568c29e461dbeb5d17aa0699dd45 SHA512 540761fd5246f4a48a7606ac0220f0d61963473b57ef703696871dc23fda8154d45351b8e81018d15899c386b44e43b05028cc797d495e9dc46f127fbea7f093 +DIST rust-1.44.1-x86_64-unknown-linux-musl.tar.xz 117456616 BLAKE2B fd2752cf867e1ff701e624caf602fe7a29b47c64e633508e91da1a1b2321f5531441b84cc9f0ad159ef399d38628d60e59f8b7a99e5427df928abceb24f937f2 SHA512 05ca3e07001746511c5fcb5122f487205ffaee771805b0219db018b350d67945f5ab4b0b2cf98b7e7832b53365e3932fef37506a65ecaaf624d0bb8d43cf8427 DIST rustc-1.44.1-src.tar.xz 94756856 BLAKE2B 60f536c3ba0fa1fec4b6333ee57809ee5226090ad5041c14a136b4356ff3b898062e06c3fe54effe873e27931ac8fcb902cd48a38615a8de7eebc6ecb3bdc2bd SHA512 1c17002edae844a710db9b144c17171416330dc565343c65af8a6e112fb61555e2025bb4cf33cac1229d7df689e6ff8858b91ae00552400ccacafaf1de11849b -EBUILD rust-1.41.1.ebuild 10136 BLAKE2B aa077fba0ef2427383552eb9166acd6327a64af942756e2ebd745cec97aec030fa30e90e9522001ed2ae83b6965ebdd01635c9f0906d3614ced1337cf4e49507 SHA512 454a6545398497b192b8ee6b42c493f7f93a35121efb3ddf68287992cf40affec1445de538d97771582a8e689d2af58154688cc7439aee1659b95564a8fb2eaf -EBUILD rust-1.42.0.ebuild 10587 BLAKE2B d676f08d08c81b0dd876bece70e66c99979df6a011d09daf1c93d58fc9f6b8bec25a8a5ad8084eaa69f59f07b1b3a22bdd92ff5226bf4af1cc9f872130c051a5 SHA512 06e3e9b74283ae30fbd1ed7747ecb7a77c2f7af6a8f8a56c1ba42499c7d939d0df6e1bd79d6dc25e9b423f4464d899209606fe5d3d4e0fc0e6d4d2308ebec53b -EBUILD rust-1.43.1.ebuild 11453 BLAKE2B 422593c3f78f18fe63b3fded9f04871afb89019fb2e98726f19906fca7a16335d55aa35c7ae967412847fdd776ad88315648f0f132065c6f231ecb4768b51e5a SHA512 3d5902c19cdd7207acad042ded4fa5d7bc5250e07865fd17c5f826fedaa7a2160a8ac3ac483b09604ed5a078d1f1774dba664ba948ab39bfdd41ac6fe7b4a8e2 -EBUILD rust-1.44.0.ebuild 14712 BLAKE2B 369613de5eea49b105ebc645e34935bc1d00ec9ee3a30e525bb6589b993a8812cc33a8f989700d9705e891d33833f488fd7daca07a1225f5226ef00f1c7394bd SHA512 42be3030a795feb652ad70f0b04fce995f76a3ed6f3582698ca40fa127222a496162f0cc50a783dd6f030292df51f66d59bacfa681f974fb3d0d2a551394e85d -EBUILD rust-1.44.1.ebuild 14917 BLAKE2B f57f49337dcc1821d06894d6cdd9a9f2265d22afcda796d3ec9c02d27566086ed896f2dba3d720c62df41f6d700f4d9f69feed0cb111a8b52672fc34b084ae65 SHA512 1ae01e81eb06b24855a749c3ab9ae9a0abf102b4fb89c735136fa947e4d487caf94c4fcb032d7f3c758d6478695a52bd8a77242b9d90b4ce58ba914fc2e2cc57 +DIST rustc-1.45.2-src.tar.xz 98683036 BLAKE2B a4102a5d4744b7ccc9b076aba00c39d69532f777e7d39e0e4ce2033b663b43e27b55034fdb3a1e13379fae9a16bff9e7748865a84507f7388ef0ebf9d421eac7 SHA512 cc6250c0bc844e77ca6dd7ae013e434ed3009b001914114866ed31f28edf3960221454d131e298b15050e3b8153fb8298d509559c2f7307c64611aa8e36b4d25 +EBUILD rust-1.44.1.ebuild 14912 BLAKE2B 107391d3f6cbd0974c06398f7b9fec061cca9dd24ffd72ca903d5b9758edc630070b841a5973b0688ea17dc5afe95141874734bd365fa6d9fb283b97df7bf27e SHA512 78456cbe534f7735d3b2400f52ad07cd1a1dd3db5ae8c834d62f8744e4b4f5205d04b83d462d0a25a82f53158c19c7f625792d8c2cfbbdb63bc41f373b2ebf8f +EBUILD rust-1.45.2.ebuild 16613 BLAKE2B 450bf4e179e90977d8cd659a5153662548fef31a250682ce9ed496aa9d72cadce3b4c1f2b5dc68dbef5e0a6b9176af1b2742f0bd918526f924d1cbedd7e7aca0 SHA512 8fc4238dddd6e7062ea92b214c1481eeed89fbf76c358b815a536e2705d2237695f2ce269f2414ad7829dff1297820da835ec8cc25fb7540ff7f3a4df1a3d48d MISC metadata.xml 1083 BLAKE2B 7a7b093c22dcaef58bd67f9c2fd84a000696b234d2bc27315999bf6751cfd2a79441fd22efc284a542ecc84ce1a12ff9ca3495d249eaffa5bc1722b385c6109e SHA512 bfe8c140753e93db67244c92e9a7d193691ceb67de796c30a851966a1262bc5c897ead6e13d728775fa524215b6851609dcbee582022d9d75bb8d1e6fabc4ef4 diff --git a/dev-lang/rust/files/1.40.0-add-soname.patch b/dev-lang/rust/files/1.40.0-add-soname.patch deleted file mode 100644 index 7a5c0189c68c..000000000000 --- a/dev-lang/rust/files/1.40.0-add-soname.patch +++ /dev/null @@ -1,36 +0,0 @@ -Description: Set DT_SONAME when building dylibs - In Rust, library filenames include a version-specific hash to help - the run-time linker find the correct version. Unlike in C/C++, the - compiler looks for all libraries matching a glob that ignores the - hash and reads embedded metadata to work out versions, etc. - . - The upshot is that there is no need for the usual "libfoo.so -> - libfoo-1.2.3.so" symlink common with C/C++ when building with Rust, - and no need to communicate an alternate filename to use at run-time - vs compile time. If linking to a Rust dylib from C/C++ however, a - "libfoo.so -> libfoo-$hash.so" symlink may well be useful and in - this case DT_SONAME=libfoo-$hash.so would be required. More - mundanely, various tools (eg: dpkg-shlibdeps) complain if they don't - find DT_SONAME on shared libraries in public directories. - . - This patch passes -Wl,-soname=$outfile when building dylibs (and - using a GNU linker). -Author: Angus Lees <gus@debian.org> -Forwarded: no - ---- a/src/librustc_codegen_ssa/back/link.rs -+++ b/src/librustc_codegen_ssa/back/link.rs -@@ -1034,6 +1034,13 @@ - cmd.args(&rpath::get_rpath_flags(&mut rpath_config)); - } - -+ if (crate_type == config::CrateType::Dylib || crate_type == config::CrateType::Cdylib) -+ && t.options.linker_is_gnu { -+ let filename = String::from(out_filename.file_name().unwrap().to_str().unwrap()); -+ let soname = [String::from("-Wl,-soname=") + &filename]; -+ cmd.args(&soname); -+ } -+ - // Finally add all the linker arguments provided on the command line along - // with any #[link_args] attributes found inside the crate - if let Some(ref args) = sess.opts.cg.link_args { diff --git a/dev-lang/rust/files/1.42.0-fix-bootstrap.patch b/dev-lang/rust/files/1.42.0-fix-bootstrap.patch deleted file mode 100644 index 16e4e6dce1c5..000000000000 --- a/dev-lang/rust/files/1.42.0-fix-bootstrap.patch +++ /dev/null @@ -1,440 +0,0 @@ -From 5f979e9afab42dd7536ca93994de66169880361e Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Matthias=20Kr=C3=BCger?= <matthias.krueger@famsik.de> -Date: Mon, 3 Feb 2020 20:13:30 +0100 -Subject: [PATCH] bootstrap: fix clippy warnings - ---- - src/bootstrap/bin/rustc.rs | 6 +++--- - src/bootstrap/bin/rustdoc.rs | 2 +- - src/bootstrap/builder.rs | 24 ++++++++---------------- - src/bootstrap/builder/tests.rs | 1 - - src/bootstrap/compile.rs | 20 ++++++++++---------- - src/bootstrap/config.rs | 7 +++---- - src/bootstrap/dist.rs | 4 ++-- - src/bootstrap/doc.rs | 2 +- - src/bootstrap/flags.rs | 2 +- - src/bootstrap/install.rs | 5 ++--- - src/bootstrap/lib.rs | 6 +++--- - src/bootstrap/metadata.rs | 1 - - src/bootstrap/native.rs | 4 +--- - src/bootstrap/test.rs | 9 +++------ - src/bootstrap/tool.rs | 2 +- - src/bootstrap/toolstate.rs | 2 +- - src/bootstrap/util.rs | 2 +- - 17 files changed, 41 insertions(+), 58 deletions(-) - -diff --git a/src/bootstrap/bin/rustc.rs b/src/bootstrap/bin/rustc.rs -index a34ec44566bc..a8c00c8c3ca8 100644 ---- a/src/bootstrap/bin/rustc.rs -+++ b/src/bootstrap/bin/rustc.rs -@@ -47,7 +47,7 @@ fn main() { - }; - let stage = env::var("RUSTC_STAGE").expect("RUSTC_STAGE was not set"); - let sysroot = env::var_os("RUSTC_SYSROOT").expect("RUSTC_SYSROOT was not set"); -- let on_fail = env::var_os("RUSTC_ON_FAIL").map(|of| Command::new(of)); -+ let on_fail = env::var_os("RUSTC_ON_FAIL").map(Command::new); - - let rustc = env::var_os(rustc).unwrap_or_else(|| panic!("{:?} was not set", rustc)); - let libdir = env::var_os(libdir).unwrap_or_else(|| panic!("{:?} was not set", libdir)); -@@ -64,7 +64,7 @@ fn main() { - if let Some(crate_name) = crate_name { - if let Some(target) = env::var_os("RUSTC_TIME") { - if target == "all" -- || target.into_string().unwrap().split(",").any(|c| c.trim() == crate_name) -+ || target.into_string().unwrap().split(',').any(|c| c.trim() == crate_name) - { - cmd.arg("-Ztime"); - } -@@ -189,7 +189,7 @@ fn main() { - crate_name, - is_test, - dur.as_secs(), -- dur.subsec_nanos() / 1_000_000 -+ dur.subsec_millis() - ); - - match status.code() { -diff --git a/src/bootstrap/bin/rustdoc.rs b/src/bootstrap/bin/rustdoc.rs -index 8c8b33a4e4e0..04345867bf5c 100644 ---- a/src/bootstrap/bin/rustdoc.rs -+++ b/src/bootstrap/bin/rustdoc.rs -@@ -61,7 +61,7 @@ fn main() { - } - - // Needed to be able to run all rustdoc tests. -- if let Some(_) = env::var_os("RUSTDOC_GENERATE_REDIRECT_PAGES") { -+ if env::var_os("RUSTDOC_GENERATE_REDIRECT_PAGES").is_some() { - // This "unstable-options" can be removed when `--generate-redirect-pages` is stabilized - if !has_unstable { - cmd.arg("-Z").arg("unstable-options"); -diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs -index d9c894aa9c6b..18f6fda76084 100644 ---- a/src/bootstrap/builder.rs -+++ b/src/bootstrap/builder.rs -@@ -510,7 +510,7 @@ impl<'a> Builder<'a> { - Subcommand::Format { .. } | Subcommand::Clean { .. } => panic!(), - }; - -- let builder = Builder { -+ Builder { - build, - top_stage: build.config.stage.unwrap_or(2), - kind, -@@ -518,9 +518,7 @@ impl<'a> Builder<'a> { - stack: RefCell::new(Vec::new()), - time_spent_on_dependencies: Cell::new(Duration::new(0, 0)), - paths: paths.to_owned(), -- }; -- -- builder -+ } - } - - pub fn execute_cli(&self) { -@@ -753,13 +751,12 @@ impl<'a> Builder<'a> { - cargo.env("RUST_CHECK", "1"); - } - -- let stage; -- if compiler.stage == 0 && self.local_rebuild { -+ let stage = if compiler.stage == 0 && self.local_rebuild { - // Assume the local-rebuild rustc already has stage1 features. -- stage = 1; -+ 1 - } else { -- stage = compiler.stage; -- } -+ compiler.stage -+ }; - - let mut rustflags = Rustflags::new(&target); - if stage != 0 { -@@ -1252,12 +1249,7 @@ impl<'a> Builder<'a> { - }; - - if self.config.print_step_timings && dur > Duration::from_millis(100) { -- println!( -- "[TIMING] {:?} -- {}.{:03}", -- step, -- dur.as_secs(), -- dur.subsec_nanos() / 1_000_000 -- ); -+ println!("[TIMING] {:?} -- {}.{:03}", step, dur.as_secs(), dur.subsec_millis()); - } - - { -@@ -1302,7 +1294,7 @@ impl Rustflags { - - fn arg(&mut self, arg: &str) -> &mut Self { - assert_eq!(arg.split_whitespace().count(), 1); -- if self.0.len() > 0 { -+ if !self.0.is_empty() { - self.0.push_str(" "); - } - self.0.push_str(arg); -diff --git a/src/bootstrap/builder/tests.rs b/src/bootstrap/builder/tests.rs -index 5fefb972866a..cca8ab80c93b 100644 ---- a/src/bootstrap/builder/tests.rs -+++ b/src/bootstrap/builder/tests.rs -@@ -19,7 +19,6 @@ fn configure(host: &[&str], target: &[&str]) -> Config { - config.out = dir; - config.build = INTERNER.intern_str("A"); - config.hosts = vec![config.build] -- .clone() - .into_iter() - .chain(host.iter().map(|s| INTERNER.intern_str(s))) - .collect::<Vec<_>>(); -diff --git a/src/bootstrap/compile.rs b/src/bootstrap/compile.rs -index eced03506ab9..7dded96e18ef 100644 ---- a/src/bootstrap/compile.rs -+++ b/src/bootstrap/compile.rs -@@ -18,7 +18,6 @@ use std::str; - use build_helper::{output, t, up_to_date}; - use filetime::FileTime; - use serde::Deserialize; --use serde_json; - - use crate::builder::Cargo; - use crate::dist; -@@ -149,7 +148,8 @@ fn copy_third_party_objects( - // which is provided by std for this target. - if target == "x86_64-fortanix-unknown-sgx" { - let src_path_env = "X86_FORTANIX_SGX_LIBS"; -- let src = env::var(src_path_env).expect(&format!("{} not found in env", src_path_env)); -+ let src = -+ env::var(src_path_env).unwrap_or_else(|_| panic!("{} not found in env", src_path_env)); - copy_and_stamp(Path::new(&src), "libunwind.a"); - } - -@@ -361,7 +361,7 @@ impl Step for StartupObjects { - ); - } - -- let target = sysroot_dir.join(file.to_string() + ".o"); -+ let target = sysroot_dir.join((*file).to_string() + ".o"); - builder.copy(dst_file, &target); - target_deps.push(target); - } -@@ -515,7 +515,7 @@ pub fn rustc_cargo_env(builder: &Builder<'_>, cargo: &mut Cargo, target: Interne - .env("CFG_VERSION", builder.rust_version()) - .env("CFG_PREFIX", builder.config.prefix.clone().unwrap_or_default()); - -- let libdir_relative = builder.config.libdir_relative().unwrap_or(Path::new("lib")); -+ let libdir_relative = builder.config.libdir_relative().unwrap_or_else(|| Path::new("lib")); - cargo.env("CFG_LIBDIR_RELATIVE", libdir_relative); - - if let Some(ref ver_date) = builder.rust_info.commit_date() { -@@ -843,11 +843,11 @@ pub fn run_cargo( - }; - for filename in filenames { - // Skip files like executables -- if !filename.ends_with(".rlib") -- && !filename.ends_with(".lib") -- && !filename.ends_with(".a") -- && !is_dylib(&filename) -- && !(is_check && filename.ends_with(".rmeta")) -+ if !(filename.ends_with(".rlib") -+ || filename.ends_with(".lib") -+ || filename.ends_with(".a") -+ || is_dylib(&filename) -+ || (is_check && filename.ends_with(".rmeta"))) - { - continue; - } -@@ -905,7 +905,7 @@ pub fn run_cargo( - for (prefix, extension, expected_len) in toplevel { - let candidates = contents.iter().filter(|&&(_, ref filename, ref meta)| { - filename.starts_with(&prefix[..]) -- && filename[prefix.len()..].starts_with("-") -+ && filename[prefix.len()..].starts_with('-') - && filename.ends_with(&extension[..]) - && meta.len() == expected_len - }); -diff --git a/src/bootstrap/config.rs b/src/bootstrap/config.rs -index 110c8b844d54..709cf2908ead 100644 ---- a/src/bootstrap/config.rs -+++ b/src/bootstrap/config.rs -@@ -16,7 +16,6 @@ use crate::flags::Flags; - pub use crate::flags::Subcommand; - use build_helper::t; - use serde::Deserialize; --use toml; - - /// Global configuration for the entire build and/or bootstrap. - /// -@@ -440,7 +439,7 @@ impl Config { - } - } - }) -- .unwrap_or_else(|| TomlConfig::default()); -+ .unwrap_or_else(TomlConfig::default); - - let build = toml.build.clone().unwrap_or_default(); - // set by bootstrap.py -@@ -539,7 +538,7 @@ impl Config { - config.llvm_ldflags = llvm.ldflags.clone(); - set(&mut config.llvm_use_libcxx, llvm.use_libcxx); - config.llvm_use_linker = llvm.use_linker.clone(); -- config.llvm_allow_old_toolchain = llvm.allow_old_toolchain.clone(); -+ config.llvm_allow_old_toolchain = llvm.allow_old_toolchain; - } - - if let Some(ref rust) = toml.rust { -@@ -606,7 +605,7 @@ impl Config { - target.ar = cfg.ar.clone().map(PathBuf::from); - target.ranlib = cfg.ranlib.clone().map(PathBuf::from); - target.linker = cfg.linker.clone().map(PathBuf::from); -- target.crt_static = cfg.crt_static.clone(); -+ target.crt_static = cfg.crt_static; - target.musl_root = cfg.musl_root.clone().map(PathBuf::from); - target.wasi_root = cfg.wasi_root.clone().map(PathBuf::from); - target.qemu_rootfs = cfg.qemu_rootfs.clone().map(PathBuf::from); -diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs -index 8d13df3ee21a..651506dbaa8a 100644 ---- a/src/bootstrap/dist.rs -+++ b/src/bootstrap/dist.rs -@@ -827,7 +827,7 @@ impl Step for Analysis { - assert!(builder.config.extended); - let name = pkgname(builder, "rust-analysis"); - -- if &compiler.host != builder.config.build { -+ if compiler.host != builder.config.build { - return distdir(builder).join(format!("{}-{}.tar.gz", name, target)); - } - -@@ -876,7 +876,7 @@ fn copy_src_dirs(builder: &Builder<'_>, src_dirs: &[&str], exclude_dirs: &[&str] - Some(path) => path, - None => return false, - }; -- if spath.ends_with("~") || spath.ends_with(".pyc") { -+ if spath.ends_with('~') || spath.ends_with(".pyc") { - return false; - } - -diff --git a/src/bootstrap/doc.rs b/src/bootstrap/doc.rs -index 204056598d90..b0d9a5b94641 100644 ---- a/src/bootstrap/doc.rs -+++ b/src/bootstrap/doc.rs -@@ -560,7 +560,7 @@ impl Step for Rustdoc { - builder.ensure(Rustc { stage, target }); - - // Build rustdoc. -- builder.ensure(tool::Rustdoc { compiler: compiler }); -+ builder.ensure(tool::Rustdoc { compiler }); - - // Symlink compiler docs to the output directory of rustdoc documentation. - let out_dir = builder.stage_out(compiler, Mode::ToolRustc).join(target).join("doc"); -diff --git a/src/bootstrap/flags.rs b/src/bootstrap/flags.rs -index 2101ef27f9d4..516be6a30c23 100644 ---- a/src/bootstrap/flags.rs -+++ b/src/bootstrap/flags.rs -@@ -571,7 +571,7 @@ fn split(s: &[String]) -> Vec<String> { - } - - fn parse_deny_warnings(matches: &getopts::Matches) -> Option<bool> { -- match matches.opt_str("warnings").as_ref().map(|v| v.as_str()) { -+ match matches.opt_str("warnings").as_deref() { - Some("deny") => Some(true), - Some("warn") => Some(false), - Some(value) => { -diff --git a/src/bootstrap/install.rs b/src/bootstrap/install.rs -index f8734ebdf425..6549262811b9 100644 ---- a/src/bootstrap/install.rs -+++ b/src/bootstrap/install.rs -@@ -126,9 +126,8 @@ fn add_destdir(path: &Path, destdir: &Option<PathBuf>) -> PathBuf { - None => return path.to_path_buf(), - }; - for part in path.components() { -- match part { -- Component::Normal(s) => ret.push(s), -- _ => {} -+ if let Component::Normal(s) = part { -+ ret.push(s) - } - } - ret -diff --git a/src/bootstrap/lib.rs b/src/bootstrap/lib.rs -index 1fee3fd9ac1d..0db4fb389010 100644 ---- a/src/bootstrap/lib.rs -+++ b/src/bootstrap/lib.rs -@@ -444,7 +444,7 @@ impl Build { - builder.execute_cli(); - } else { - let builder = builder::Builder::new(&self); -- let _ = builder.execute_cli(); -+ builder.execute_cli(); - } - - // Check for postponed failures from `test --no-fail-fast`. -@@ -839,7 +839,7 @@ impl Build { - .target_config - .get(&target) - .and_then(|t| t.musl_root.as_ref()) -- .or(self.config.musl_root.as_ref()) -+ .or_else(|| self.config.musl_root.as_ref()) - .map(|p| &**p) - } - -@@ -1026,7 +1026,7 @@ impl Build { - } - - fn llvm_link_tools_dynamically(&self, target: Interned<String>) -> bool { -- (target.contains("linux-gnu") || target.contains("apple-darwin")) -+ target.contains("linux-gnu") || target.contains("apple-darwin") - } - - /// Returns the `version` string associated with this compiler for Rust -diff --git a/src/bootstrap/metadata.rs b/src/bootstrap/metadata.rs -index 8a26adc7ed50..292aa3b1e24a 100644 ---- a/src/bootstrap/metadata.rs -+++ b/src/bootstrap/metadata.rs -@@ -5,7 +5,6 @@ use std::process::Command; - - use build_helper::output; - use serde::Deserialize; --use serde_json; - - use crate::cache::INTERNER; - use crate::{Build, Crate}; -diff --git a/src/bootstrap/native.rs b/src/bootstrap/native.rs -index 5bbd9f47fc90..1cfb4b2f63b5 100644 ---- a/src/bootstrap/native.rs -+++ b/src/bootstrap/native.rs -@@ -15,8 +15,6 @@ use std::path::{Path, PathBuf}; - use std::process::Command; - - use build_helper::{output, t}; --use cc; --use cmake; - - use crate::builder::{Builder, RunConfig, ShouldRun, Step}; - use crate::cache::Interned; -@@ -205,7 +203,7 @@ impl Step for Llvm { - cfg.define("LLVM_ENABLE_LIBXML2", "OFF"); - } - -- if enabled_llvm_projects.len() > 0 { -+ if !enabled_llvm_projects.is_empty() { - enabled_llvm_projects.sort(); - enabled_llvm_projects.dedup(); - cfg.define("LLVM_ENABLE_PROJECTS", enabled_llvm_projects.join(";")); -diff --git a/src/bootstrap/test.rs b/src/bootstrap/test.rs -index 6adf9ddaf343..8d9e62010015 100644 ---- a/src/bootstrap/test.rs -+++ b/src/bootstrap/test.rs -@@ -1424,13 +1424,10 @@ impl Step for ErrorIndex { - } - - fn markdown_test(builder: &Builder<'_>, compiler: Compiler, markdown: &Path) -> bool { -- match fs::read_to_string(markdown) { -- Ok(contents) => { -- if !contents.contains("```") { -- return true; -- } -+ if let Ok(contents) = fs::read_to_string(markdown) { -+ if !contents.contains("```") { -+ return true; - } -- Err(_) => {} - } - - builder.info(&format!("doc tests for: {}", markdown.display())); -diff --git a/src/bootstrap/tool.rs b/src/bootstrap/tool.rs -index 7f24768a4f10..67e0ed5c5802 100644 ---- a/src/bootstrap/tool.rs -+++ b/src/bootstrap/tool.rs -@@ -234,7 +234,7 @@ pub fn prepare_tool_cargo( - cargo.env("RUSTC_EXTERNAL_TOOL", "1"); - } - -- let mut features = extra_features.iter().cloned().collect::<Vec<_>>(); -+ let mut features = extra_features.to_vec(); - if builder.build.config.cargo_native_static { - if path.ends_with("cargo") - || path.ends_with("rls") -diff --git a/src/bootstrap/toolstate.rs b/src/bootstrap/toolstate.rs -index b068c8200ace..bb012a388551 100644 ---- a/src/bootstrap/toolstate.rs -+++ b/src/bootstrap/toolstate.rs -@@ -124,7 +124,7 @@ fn check_changed_files(toolstates: &HashMap<Box<str>, ToolState>) { - let output = t!(String::from_utf8(output.stdout)); - - for (tool, submodule) in STABLE_TOOLS.iter().chain(NIGHTLY_TOOLS.iter()) { -- let changed = output.lines().any(|l| l.starts_with("M") && l.ends_with(submodule)); -+ let changed = output.lines().any(|l| l.starts_with('M') && l.ends_with(submodule)); - eprintln!("Verifying status of {}...", tool); - if !changed { - continue; -diff --git a/src/bootstrap/util.rs b/src/bootstrap/util.rs -index 7d1efe4610f9..eac790fe504b 100644 ---- a/src/bootstrap/util.rs -+++ b/src/bootstrap/util.rs -@@ -98,7 +98,7 @@ impl Drop for TimeIt { - fn drop(&mut self) { - let time = self.1.elapsed(); - if !self.0 { -- println!("\tfinished in {}.{:03}", time.as_secs(), time.subsec_nanos() / 1_000_000); -+ println!("\tfinished in {}.{:03}", time.as_secs(), time.subsec_millis()); - } - } - } diff --git a/dev-lang/rust/files/1.42.0-libressl.patch b/dev-lang/rust/files/1.42.0-libressl.patch deleted file mode 100644 index 7d09f88f7665..000000000000 --- a/dev-lang/rust/files/1.42.0-libressl.patch +++ /dev/null @@ -1,44 +0,0 @@ -From 597729ad63b53901da011ebb12ac0f811304bca7 Mon Sep 17 00:00:00 2001 -From: Stefan Strogin <steils@gentoo.org> -Date: Fri, 10 Apr 2020 09:18:41 +0300 -Subject: [PATCH] Support LibreSSL 3.1.x - -Signed-off-by: Stefan Strogin <steils@gentoo.org> ---- - vendor/openssl-sys/.cargo-checksum.json | 2 +- - vendor/openssl-sys/build/main.rs | 4 +++- - 2 files changed, 4 insertions(+), 2 deletions(-) - -diff --git a/vendor/openssl-sys/.cargo-checksum.json b/vendor/openssl-sys/.cargo-checksum.json -index e0bfd3035..0df6df7ef 100644 ---- a/vendor/openssl-sys/.cargo-checksum.json -+++ b/vendor/openssl-sys/.cargo-checksum.json -@@ -1 +1 @@ --{"files":{"CHANGELOG.md":"736f0ad8717294a2ccb82065547f7161aa979eaad38c08c16d74954ece406dde","Cargo.toml":"4dbed0ba08fc7676bf7f6350eaaef6e6edb21b350718c218aae1d6372ec5918c","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"949fb3913ec7f94229242978dfeee5e19261b6d7506fc91dcd153bb0d2a84895","build/cfgs.rs":"4f39735ff73e6a13ff6ad34b9c046546a5887d705a86f68d1a8866fb305f728f","build/expando.c":"c4fa8a4424b2321f1857edfc5ce1ac1f03eda54440367d3142310c0eb5553004","build/find_normal.rs":"0a2dc417eace7fc72c27b9046ebaf53c75e418b27baa877434925a81fe6c23ed","build/find_vendored.rs":"7bf0e59c5646d72ee5a4392ad970fdf5c20288ddaf54dd86a8caff49583b38f5","build/main.rs":"6e800f4dc5c2cbbd54d1b1b995a2915ff941e17e11300d7091858210d3ce788d","src/aes.rs":"822bf666db351fe6ef9607c918081d6ad378fc1cedb05290bb746f86980c6088","src/asn1.rs":"254025cb408dbeff73bee6d06325acba9042cb11db30bdad04eedfb789be84b3","src/bio.rs":"5c6f394a78f258af3babb68330fa3571610476c4c3ba3404359db928f2f706ee","src/bn.rs":"c71b9c79f704a94a889d27bf75e7e5b1f9f10b0df0aeb485aef509cf05d7467f","src/cms.rs":"f21a403fea95e7b7efe0539a429831cfa51c8818adb79c7ebf73ae2a6f2dc87e","src/conf.rs":"511e008c18039f54d856d70b80009426fc7f4ce34fe4304e2c58ebf465031de0","src/crypto.rs":"a1279719ade9704be3d9af55ff679abbe918d525f332ca15810146d45e9080cf","src/dh.rs":"7cc334e86d16b3eae165dfa3a6c8e488bc0fe590c17beda38893d2e9d784d5a6","src/dsa.rs":"ae79baf231681900ea76304285b3ffacf5298c90b8c04d371269cf4adbb5b9fa","src/dtls1.rs":"45e1dbf94a42d587fd948d553dc30187aa6aa2b5b82d554cf725ff36df768aa0","src/ec.rs":"81372dfe497db2fc90457a470a3b8ccb249828b3ce2bf4fd2da8ec42afd6a6b3","src/err.rs":"f6641be5df397086a9db80667e191fb1d92972c29151e617df86672c1a16d3ad","src/evp.rs":"ddd25891a630f4676b16bd63ed3071f1b036722c7cdf1a72ca0a54cd3bf91898","src/hmac.rs":"fa3976d94a1383f300bdec228270afb8b47c97bb019d727c7d59ba783be3c42e","src/lib.rs":"c464eca1beb33844718044946f6ffb1bc27356d65b5b70ebcd2d4082520e7235","src/macros.rs":"638fb9098f6024e82b331eeee50c64cefdb58456dba28ee42560be655a0c2bf6","src/obj_mac.rs":"7203d356f7654c5805600b823eccf8e1d9d9cbce9a01859938612a3f0aae4cdc","src/object.rs":"7539eb2164c3fe2162a339ef5b45f1c835010a1522307803815779a01825eed7","src/ocsp.rs":"1db59566d2f072f7ae981f0c07e1604fcdf60e66845afe0689d588f8e4272115","src/ossl_typ.rs":"fc7366e75c78707650c8667593ed183eca6a8ce8dd6b911e342f644d1bcf98bd","src/pem.rs":"fbe95faaeb5b13ce44eb6574b4e21aa384d60fad079e895acaa61390887240d1","src/pkcs12.rs":"93aab2820008ad90dc346a7dcc02f9201d94bff0bb7d1d71031c097850287c50","src/pkcs7.rs":"5370c8d4bfbf1502fa33aff635cb730e7c87814580f1df9bdb1412a492377813","src/rand.rs":"469601b4fbb56d4dbf5cf5d7bb8483e3bde411edea18601e7d1ed6ef27180fd3","src/rsa.rs":"0e8c1f0bc37620a9208175542143bfd411ae88188974d2d5b37a2b8b77d0e2c8","src/safestack.rs":"6c39e28565d34efad707d77561d4caa99e3f028fcac3a2ef6fd403a78de1190c","src/sha.rs":"1a6b028a63654d2419417a9a8af790cd22409a4643682a0686ecdb9441264eba","src/srtp.rs":"306047f3f31828fe7d15de154b375f071ae07012a94c0b5c909f5fe57962a11b","src/ssl.rs":"215a27daa698c73fa909159a9e88a4302b075c33ebd17699f7f3423de60f5d68","src/ssl3.rs":"9336c816e00847d552dea22587d4ac72ff3cbd469fa5ff750423a19ea11e68eb","src/stack.rs":"1a509907283e5a2bf88cf193ce607f49ce7d2d95547c2ce2abc0fd4567aad334","src/tls1.rs":"60ca3dea1bbfda645bde563b4a878dac129c3f760e3ad572381000fc7a8ef522","src/x509.rs":"20e221731587221aab00aef21b4e4bebb7635603d265d424f3dd3c60d4c511e2","src/x509_vfy.rs":"5609f6300ab37a4d4755c81f7af1e6bb93a2f1a6f333c6e42f1e73ebf83ddc05","src/x509v3.rs":"30c58ce7d80670cc597d041e0f59862c1100e38743fc9dde2aec6dc811a4a558"},"package":"465d16ae7fc0e313318f7de5cecf57b2fbe7511fd213978b457e1c96ff46736f"} -\ No newline at end of file -+{"files":{"CHANGELOG.md":"736f0ad8717294a2ccb82065547f7161aa979eaad38c08c16d74954ece406dde","Cargo.toml":"4dbed0ba08fc7676bf7f6350eaaef6e6edb21b350718c218aae1d6372ec5918c","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"949fb3913ec7f94229242978dfeee5e19261b6d7506fc91dcd153bb0d2a84895","build/cfgs.rs":"4f39735ff73e6a13ff6ad34b9c046546a5887d705a86f68d1a8866fb305f728f","build/expando.c":"c4fa8a4424b2321f1857edfc5ce1ac1f03eda54440367d3142310c0eb5553004","build/find_normal.rs":"0a2dc417eace7fc72c27b9046ebaf53c75e418b27baa877434925a81fe6c23ed","build/find_vendored.rs":"7bf0e59c5646d72ee5a4392ad970fdf5c20288ddaf54dd86a8caff49583b38f5","build/main.rs":"7379da716f13ace24c6782c842fcb08053544475b6401a84735ac6af21b67935","src/aes.rs":"822bf666db351fe6ef9607c918081d6ad378fc1cedb05290bb746f86980c6088","src/asn1.rs":"254025cb408dbeff73bee6d06325acba9042cb11db30bdad04eedfb789be84b3","src/bio.rs":"5c6f394a78f258af3babb68330fa3571610476c4c3ba3404359db928f2f706ee","src/bn.rs":"c71b9c79f704a94a889d27bf75e7e5b1f9f10b0df0aeb485aef509cf05d7467f","src/cms.rs":"f21a403fea95e7b7efe0539a429831cfa51c8818adb79c7ebf73ae2a6f2dc87e","src/conf.rs":"511e008c18039f54d856d70b80009426fc7f4ce34fe4304e2c58ebf465031de0","src/crypto.rs":"a1279719ade9704be3d9af55ff679abbe918d525f332ca15810146d45e9080cf","src/dh.rs":"7cc334e86d16b3eae165dfa3a6c8e488bc0fe590c17beda38893d2e9d784d5a6","src/dsa.rs":"ae79baf231681900ea76304285b3ffacf5298c90b8c04d371269cf4adbb5b9fa","src/dtls1.rs":"45e1dbf94a42d587fd948d553dc30187aa6aa2b5b82d554cf725ff36df768aa0","src/ec.rs":"81372dfe497db2fc90457a470a3b8ccb249828b3ce2bf4fd2da8ec42afd6a6b3","src/err.rs":"f6641be5df397086a9db80667e191fb1d92972c29151e617df86672c1a16d3ad","src/evp.rs":"ddd25891a630f4676b16bd63ed3071f1b036722c7cdf1a72ca0a54cd3bf91898","src/hmac.rs":"fa3976d94a1383f300bdec228270afb8b47c97bb019d727c7d59ba783be3c42e","src/lib.rs":"c464eca1beb33844718044946f6ffb1bc27356d65b5b70ebcd2d4082520e7235","src/macros.rs":"638fb9098f6024e82b331eeee50c64cefdb58456dba28ee42560be655a0c2bf6","src/obj_mac.rs":"7203d356f7654c5805600b823eccf8e1d9d9cbce9a01859938612a3f0aae4cdc","src/object.rs":"7539eb2164c3fe2162a339ef5b45f1c835010a1522307803815779a01825eed7","src/ocsp.rs":"1db59566d2f072f7ae981f0c07e1604fcdf60e66845afe0689d588f8e4272115","src/ossl_typ.rs":"fc7366e75c78707650c8667593ed183eca6a8ce8dd6b911e342f644d1bcf98bd","src/pem.rs":"fbe95faaeb5b13ce44eb6574b4e21aa384d60fad079e895acaa61390887240d1","src/pkcs12.rs":"93aab2820008ad90dc346a7dcc02f9201d94bff0bb7d1d71031c097850287c50","src/pkcs7.rs":"5370c8d4bfbf1502fa33aff635cb730e7c87814580f1df9bdb1412a492377813","src/rand.rs":"469601b4fbb56d4dbf5cf5d7bb8483e3bde411edea18601e7d1ed6ef27180fd3","src/rsa.rs":"0e8c1f0bc37620a9208175542143bfd411ae88188974d2d5b37a2b8b77d0e2c8","src/safestack.rs":"6c39e28565d34efad707d77561d4caa99e3f028fcac3a2ef6fd403a78de1190c","src/sha.rs":"1a6b028a63654d2419417a9a8af790cd22409a4643682a0686ecdb9441264eba","src/srtp.rs":"306047f3f31828fe7d15de154b375f071ae07012a94c0b5c909f5fe57962a11b","src/ssl.rs":"215a27daa698c73fa909159a9e88a4302b075c33ebd17699f7f3423de60f5d68","src/ssl3.rs":"9336c816e00847d552dea22587d4ac72ff3cbd469fa5ff750423a19ea11e68eb","src/stack.rs":"1a509907283e5a2bf88cf193ce607f49ce7d2d95547c2ce2abc0fd4567aad334","src/tls1.rs":"60ca3dea1bbfda645bde563b4a878dac129c3f760e3ad572381000fc7a8ef522","src/x509.rs":"20e221731587221aab00aef21b4e4bebb7635603d265d424f3dd3c60d4c511e2","src/x509_vfy.rs":"5609f6300ab37a4d4755c81f7af1e6bb93a2f1a6f333c6e42f1e73ebf83ddc05","src/x509v3.rs":"30c58ce7d80670cc597d041e0f59862c1100e38743fc9dde2aec6dc811a4a558"},"package":"465d16ae7fc0e313318f7de5cecf57b2fbe7511fd213978b457e1c96ff46736f"} -diff --git a/vendor/openssl-sys/build/main.rs b/vendor/openssl-sys/build/main.rs -index 162e11a66..efac336af 100644 ---- a/vendor/openssl-sys/build/main.rs -+++ b/vendor/openssl-sys/build/main.rs -@@ -204,6 +204,8 @@ See rust-openssl README for more information: - (3, 0, 0) => ('3', '0', '0'), - (3, 0, 1) => ('3', '0', '1'), - (3, 0, _) => ('3', '0', 'x'), -+ (3, 1, 0) => ('3', '1', '0'), -+ (3, 1, _) => ('3', '1', 'x'), - _ => version_error(), - }; - -@@ -244,7 +246,7 @@ fn version_error() -> ! { - " - - This crate is only compatible with OpenSSL 1.0.1 through 1.1.1, or LibreSSL 2.5 --through 3.0.x, but a different version of OpenSSL was found. The build is now aborting -+through 3.1.x, but a different version of OpenSSL was found. The build is now aborting - due to this version mismatch. - - " --- -2.26.2 - diff --git a/dev-lang/rust/files/1.43.0-llvm10.patch b/dev-lang/rust/files/1.43.0-llvm10.patch deleted file mode 100644 index 14940716abf6..000000000000 --- a/dev-lang/rust/files/1.43.0-llvm10.patch +++ /dev/null @@ -1,194 +0,0 @@ -From fe83c6cd5922fd6f964fa40ca704fb7f92426202 Mon Sep 17 00:00:00 2001 -From: Nikita Popov <nikita.ppv@gmail.com> -Date: Tue, 4 Feb 2020 19:23:45 +0100 -Subject: [PATCH 2/7] Remove trailing newline from llvm-config output - ---- - src/bootstrap/test.rs | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/src/bootstrap/test.rs b/src/bootstrap/test.rs -index 4cfda606c4bc8..aaec10ff10b38 100644 ---- a/src/bootstrap/test.rs -+++ b/src/bootstrap/test.rs -@@ -1142,6 +1142,8 @@ impl Step for Compiletest { - let llvm_config = builder.ensure(native::Llvm { target: builder.config.build }); - if !builder.config.dry_run { - let llvm_version = output(Command::new(&llvm_config).arg("--version")); -+ // Remove trailing newline from llvm-config output. -+ let llvm_version = llvm_version.trim_end(); - cmd.arg("--llvm-version").arg(llvm_version); - } - if !builder.is_rust_llvm(target) { - -From 545f18e8f1c2227b74091fbca5c73595f65eeeed Mon Sep 17 00:00:00 2001 -From: Nikita Popov <nikita.ppv@gmail.com> -Date: Sat, 18 Jan 2020 23:00:30 +0100 -Subject: [PATCH 3/7] Fix LLVM version handling in compiletest - -Convert version string to integer before comparing. Otherwise -we get into trouble with double digit versions ;) ---- - src/tools/compiletest/src/header.rs | 27 +++++++++++++++++++++------ - 1 file changed, 21 insertions(+), 6 deletions(-) - -diff --git a/src/tools/compiletest/src/header.rs b/src/tools/compiletest/src/header.rs -index 2a24a8c3c9485..cb648db8830ef 100644 ---- a/src/tools/compiletest/src/header.rs -+++ b/src/tools/compiletest/src/header.rs -@@ -191,6 +191,7 @@ impl EarlyProps { - return true; - } - if let Some(ref actual_version) = config.llvm_version { -+ let actual_version = version_to_int(actual_version); - if line.starts_with("min-llvm-version") { - let min_version = line - .trim_end() -@@ -199,7 +200,7 @@ impl EarlyProps { - .expect("Malformed llvm version directive"); - // Ignore if actual version is smaller the minimum required - // version -- &actual_version[..] < min_version -+ actual_version < version_to_int(min_version) - } else if line.starts_with("min-system-llvm-version") { - let min_version = line - .trim_end() -@@ -208,7 +209,7 @@ impl EarlyProps { - .expect("Malformed llvm version directive"); - // Ignore if using system LLVM and actual version - // is smaller the minimum required version -- config.system_llvm && &actual_version[..] < min_version -+ config.system_llvm && actual_version < version_to_int(min_version) - } else if line.starts_with("ignore-llvm-version") { - // Syntax is: "ignore-llvm-version <version1> [- <version2>]" - let range_components = line -@@ -219,15 +220,15 @@ impl EarlyProps { - .take(3) // 3 or more = invalid, so take at most 3. - .collect::<Vec<&str>>(); - match range_components.len() { -- 1 => &actual_version[..] == range_components[0], -+ 1 => actual_version == version_to_int(range_components[0]), - 2 => { -- let v_min = range_components[0]; -- let v_max = range_components[1]; -+ let v_min = version_to_int(range_components[0]); -+ let v_max = version_to_int(range_components[1]); - if v_max < v_min { - panic!("Malformed LLVM version range: max < min") - } - // Ignore if version lies inside of range. -- &actual_version[..] >= v_min && &actual_version[..] <= v_max -+ actual_version >= v_min && actual_version <= v_max - } - _ => panic!("Malformed LLVM version directive"), - } -@@ -238,6 +239,20 @@ impl EarlyProps { - false - } - } -+ -+ fn version_to_int(version: &str) -> u32 { -+ let version_without_suffix = version.split('-').next().unwrap(); -+ let components: Vec<u32> = version_without_suffix -+ .split('.') -+ .map(|s| s.parse().expect("Malformed version component")) -+ .collect(); -+ match components.len() { -+ 1 => components[0] * 10000, -+ 2 => components[0] * 10000 + components[1] * 100, -+ 3 => components[0] * 10000 + components[1] * 100 + components[2], -+ _ => panic!("Malformed version"), -+ } -+ } - } - } - - -From e06fff0609fedf95b826d82ff32ff836b0e3f3da Mon Sep 17 00:00:00 2001 -From: Nikita Popov <nikita.ppv@gmail.com> -Date: Sun, 19 Jan 2020 22:47:45 +0100 -Subject: [PATCH 4/7] Adjust data layout in test - ---- - .../run-make-fulldeps/target-specs/my-awesome-platform.json | 2 +- - .../target-specs/my-x86_64-unknown-linux-gnu-platform.json | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/test/run-make-fulldeps/target-specs/my-awesome-platform.json b/src/test/run-make-fulldeps/target-specs/my-awesome-platform.json -index 8d028280a8da7..00de3de05f07a 100644 ---- a/src/test/run-make-fulldeps/target-specs/my-awesome-platform.json -+++ b/src/test/run-make-fulldeps/target-specs/my-awesome-platform.json -@@ -1,5 +1,5 @@ - { -- "data-layout": "e-m:e-p:32:32-f64:32:64-f80:32-n8:16:32-S128", -+ "data-layout": "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-f64:32:64-f80:32-n8:16:32-S128", - "linker-flavor": "gcc", - "llvm-target": "i686-unknown-linux-gnu", - "target-endian": "little", -diff --git a/src/test/run-make-fulldeps/target-specs/my-x86_64-unknown-linux-gnu-platform.json b/src/test/run-make-fulldeps/target-specs/my-x86_64-unknown-linux-gnu-platform.json -index 48040ae3da0ef..6d5e964ed4fee 100644 ---- a/src/test/run-make-fulldeps/target-specs/my-x86_64-unknown-linux-gnu-platform.json -+++ b/src/test/run-make-fulldeps/target-specs/my-x86_64-unknown-linux-gnu-platform.json -@@ -1,6 +1,6 @@ - { - "pre-link-args": {"gcc": ["-m64"]}, -- "data-layout": "e-m:e-i64:64-f80:128-n8:16:32:64-S128", -+ "data-layout": "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128", - "linker-flavor": "gcc", - "llvm-target": "x86_64-unknown-linux-gnu", - "target-endian": "little", - -From 724b7ee92f3e83af2a451b726ad990fe7db54528 Mon Sep 17 00:00:00 2001 -From: Nikita Popov <nikita.ppv@gmail.com> -Date: Tue, 4 Feb 2020 20:35:50 +0100 -Subject: [PATCH 5/7] Fix timeTraceProfilerInitialize for LLVM 10 - ---- - src/rustllvm/PassWrapper.cpp | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/src/rustllvm/PassWrapper.cpp b/src/rustllvm/PassWrapper.cpp -index 65071c3ed86e0..ebf4d4017a813 100644 ---- a/src/rustllvm/PassWrapper.cpp -+++ b/src/rustllvm/PassWrapper.cpp -@@ -67,7 +67,11 @@ extern "C" void LLVMInitializePasses() { - } - - extern "C" void LLVMTimeTraceProfilerInitialize() { --#if LLVM_VERSION_GE(9, 0) -+#if LLVM_VERSION_GE(10, 0) -+ timeTraceProfilerInitialize( -+ /* TimeTraceGranularity */ 0, -+ /* ProcName */ "rustc"); -+#elif LLVM_VERSION_GE(9, 0) - timeTraceProfilerInitialize(); - #endif - } - -From aed9cf36bb4b9c6b357e395552dbb5e1802feec9 Mon Sep 17 00:00:00 2001 -From: Nikita Popov <nikita.ppv@gmail.com> -Date: Mon, 2 Mar 2020 22:37:55 +0100 -Subject: [PATCH 6/7] Update CreateMemSet() usage for LLVM 10 - ---- - src/rustllvm/RustWrapper.cpp | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/src/rustllvm/RustWrapper.cpp b/src/rustllvm/RustWrapper.cpp -index 49b6e1bfec38d..002eb031dac64 100644 ---- a/src/rustllvm/RustWrapper.cpp -+++ b/src/rustllvm/RustWrapper.cpp -@@ -1300,8 +1300,13 @@ extern "C" LLVMValueRef LLVMRustBuildMemSet(LLVMBuilderRef B, - LLVMValueRef Dst, unsigned DstAlign, - LLVMValueRef Val, - LLVMValueRef Size, bool IsVolatile) { -+#if LLVM_VERSION_GE(10, 0) -+ return wrap(unwrap(B)->CreateMemSet( -+ unwrap(Dst), unwrap(Val), unwrap(Size), MaybeAlign(DstAlign), IsVolatile)); -+#else - return wrap(unwrap(B)->CreateMemSet( - unwrap(Dst), unwrap(Val), unwrap(Size), DstAlign, IsVolatile)); -+#endif - } - - extern "C" LLVMValueRef diff --git a/dev-lang/rust/files/llvm-gcc10.patch b/dev-lang/rust/files/llvm-gcc10.patch deleted file mode 100644 index 8fbaa923f7c9..000000000000 --- a/dev-lang/rust/files/llvm-gcc10.patch +++ /dev/null @@ -1,34 +0,0 @@ -From b288d90b39f4b905c02092a9bfcfd6d78f99b191 Mon Sep 17 00:00:00 2001 -From: Than McIntosh <thanm@google.com> -Date: Fri, 19 Jul 2019 13:13:54 +0000 -Subject: [PATCH] [NFC] include cstdint/string prior to using uint8_t/string - -Summary: include proper header prior to use of uint8_t typedef -and std::string. - -Subscribers: llvm-commits - -Reviewers: cherry - -Tags: #llvm - -Differential Revision: https://reviews.llvm.org/D64937 - -llvm-svn: 366572 ---- - llvm/include/llvm/Demangle/MicrosoftDemangleNodes.h | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/src/llbm-project/llvm/include/llvm/Demangle/MicrosoftDemangleNodes.h b/src/llvm-project/llvm/include/llvm/Demangle/MicrosoftDemangleNodes.h -index da9d9d5bfdc0..3d47471f0ef0 100644 ---- a/src/llvm-project/llvm/include/llvm/Demangle/MicrosoftDemangleNodes.h -+++ b/src/llvm-project/llvm/include/llvm/Demangle/MicrosoftDemangleNodes.h -@@ -16,6 +16,8 @@ - #include "llvm/Demangle/DemangleConfig.h" - #include "llvm/Demangle/StringView.h" - #include <array> -+#include <cstdint> -+#include <string> - - namespace llvm { - namespace itanium_demangle { diff --git a/dev-lang/rust/rust-1.41.1.ebuild b/dev-lang/rust/rust-1.41.1.ebuild deleted file mode 100644 index cb0c9d685a86..000000000000 --- a/dev-lang/rust/rust-1.41.1.ebuild +++ /dev/null @@ -1,370 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{6,7} ) - -inherit bash-completion-r1 check-reqs estack flag-o-matic llvm multiprocessing multilib-build python-any-r1 rust-toolchain toolchain-funcs - -if [[ ${PV} = *beta* ]]; then - betaver=${PV//*beta} - BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}" - MY_P="rustc-beta" - SLOT="beta/${PV}" - SRC="${BETA_SNAPSHOT}/rustc-beta-src.tar.xz" -else - ABI_VER="$(ver_cut 1-2)" - SLOT="stable/${ABI_VER}" - MY_P="rustc-${PV}" - SRC="${MY_P}-src.tar.xz" - KEYWORDS="amd64 ~arm arm64 ppc64 x86" -fi - -RUST_STAGE0_VERSION="1.$(($(ver_cut 2) - 1)).0" - -DESCRIPTION="Systems programming language from Mozilla" -HOMEPAGE="https://www.rust-lang.org/" - -SRC_URI=" - https://static.rust-lang.org/dist/${SRC} -> rustc-${PV}-src.tar.xz - !system-bootstrap? ( $(rust_all_arch_uris rust-${RUST_STAGE0_VERSION}) ) -" - -ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430 - NVPTX PowerPC RISCV Sparc SystemZ WebAssembly X86 XCore ) -ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" ) -LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/?} - -LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA" - -IUSE="clippy cpu_flags_x86_sse2 debug doc libressl nightly parallel-compiler rls rustfmt system-bootstrap system-llvm wasm ${ALL_LLVM_TARGETS[*]}" - -# Please keep the LLVM dependency block separate. Since LLVM is slotted, -# we need to *really* make sure we're not pulling more than one slot -# simultaneously. - -# How to use it: -# 1. List all the working slots (with min versions) in ||, newest first. -# 2. Update the := to specify *max* version, e.g. < 10. -# 3. Specify LLVM_MAX_SLOT, e.g. 9. -LLVM_DEPEND=" - || ( - sys-devel/llvm:9[llvm_targets_WebAssembly?] - ) - <sys-devel/llvm-10:= - wasm? ( sys-devel/lld ) -" -LLVM_MAX_SLOT=9 - -BOOTSTRAP_DEPEND="|| ( >=dev-lang/rust-1.$(($(ver_cut 2) - 1)).0-r1 >=dev-lang/rust-bin-1.$(($(ver_cut 2) - 1)) )" - -COMMON_DEPEND=" - net-libs/libssh2:= - net-libs/http-parser:= - net-misc/curl:=[ssl] - sys-libs/zlib:= - !libressl? ( dev-libs/openssl:0= ) - libressl? ( <dev-libs/libressl-3.1:0= ) - elibc_musl? ( sys-libs/libunwind ) - system-llvm? ( - ${LLVM_DEPEND} - ) -" - -DEPEND="${COMMON_DEPEND} - ${PYTHON_DEPS} - || ( - >=sys-devel/gcc-4.7 - >=sys-devel/clang-3.5 - ) - system-bootstrap? ( ${BOOTSTRAP_DEPEND} ) - !system-llvm? ( - dev-util/cmake - dev-util/ninja - ) -" - -RDEPEND="${COMMON_DEPEND} - >=app-eselect/eselect-rust-20190311 -" - -REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} ) - parallel-compiler? ( nightly ) - wasm? ( llvm_targets_WebAssembly ) - x86? ( cpu_flags_x86_sse2 ) -" - -QA_FLAGS_IGNORED=" - usr/bin/.*-${PV} - usr/lib.*/lib.*.so - usr/lib/rustlib/.*/codegen-backends/librustc_codegen_llvm-llvm.so - usr/lib/rustlib/.*/lib/lib.*.so -" - -QA_SONAME="usr/lib.*/librustc_macros.*.so" - -PATCHES=( - "${FILESDIR}"/1.40.0-add-soname.patch - "${FILESDIR}"/llvm-gcc10.patch -) - -S="${WORKDIR}/${MY_P}-src" - -toml_usex() { - usex "$1" true false -} - -pre_build_checks() { - CHECKREQS_DISK_BUILD="9G" - eshopts_push -s extglob - if is-flagq '-g?(gdb)?([1-9])'; then - CHECKREQS_DISK_BUILD="15G" - fi - eshopts_pop - check-reqs_pkg_setup -} - -pkg_pretend() { - pre_build_checks -} - -pkg_setup() { - pre_build_checks - python-any-r1_pkg_setup - - # use bundled for now, #707746 - # will need dev-libs/libgit2 slotted dep if re-enabled - #export LIBGIT2_SYS_USE_PKG_CONFIG=1 - export LIBSSH2_SYS_USE_PKG_CONFIG=1 - export PKG_CONFIG_ALLOW_CROSS=1 - - if use system-llvm; then - llvm_pkg_setup - - local llvm_config="$(get_llvm_prefix "$LLVM_MAX_SLOT")/bin/llvm-config" - - export LLVM_LINK_SHARED=1 - export RUSTFLAGS="${RUSTFLAGS} -Lnative=$("${llvm_config}" --libdir)" - fi -} - -src_prepare() { - if ! use system-bootstrap; then - local rust_stage0_root="${WORKDIR}"/rust-stage0 - local rust_stage0="rust-${RUST_STAGE0_VERSION}-$(rust_abi)" - - "${WORKDIR}/${rust_stage0}"/install.sh --disable-ldconfig \ - --destdir="${rust_stage0_root}" --prefix=/ || die - fi - - default -} - -src_configure() { - local rust_target="" rust_targets="" arch_cflags - - # Collect rust target names to compile standard libs for all ABIs. - for v in $(multilib_get_enabled_abi_pairs); do - rust_targets="${rust_targets},\"$(rust_abi $(get_abi_CHOST ${v##*.}))\"" - done - if use wasm; then - rust_targets="${rust_targets},\"wasm32-unknown-unknown\"" - fi - rust_targets="${rust_targets#,}" - - local extended="true" tools="\"cargo\"," - if use clippy; then - tools="\"clippy\",$tools" - fi - if use rls; then - tools="\"rls\",\"analysis\",\"src\",$tools" - fi - if use rustfmt; then - tools="\"rustfmt\",$tools" - fi - - local rust_stage0_root - if use system-bootstrap; then - rust_stage0_root="$(rustc --print sysroot)" - else - rust_stage0_root="${WORKDIR}"/rust-stage0 - fi - - rust_target="$(rust_abi)" - - cat <<- EOF > "${S}"/config.toml - [llvm] - optimize = $(toml_usex !debug) - release-debuginfo = $(toml_usex debug) - assertions = $(toml_usex debug) - targets = "${LLVM_TARGETS// /;}" - experimental-targets = "" - link-shared = $(toml_usex system-llvm) - [build] - build = "${rust_target}" - host = ["${rust_target}"] - target = [${rust_targets}] - cargo = "${rust_stage0_root}/bin/cargo" - rustc = "${rust_stage0_root}/bin/rustc" - docs = $(toml_usex doc) - compiler-docs = $(toml_usex doc) - submodules = false - python = "${EPYTHON}" - locked-deps = true - vendor = true - extended = ${extended} - tools = [${tools}] - verbose = 2 - [install] - prefix = "${EPREFIX}/usr" - libdir = "lib" - docdir = "share/doc/${PF}" - mandir = "share/man" - [rust] - optimize = true - debug = $(toml_usex debug) - debug-assertions = $(toml_usex debug) - default-linker = "$(tc-getCC)" - parallel-compiler = $(toml_usex parallel-compiler) - channel = "$(usex nightly nightly stable)" - rpath = false - lld = $(usex system-llvm false $(toml_usex wasm)) - backtrace-on-ice = true - [dist] - src-tarball = false - EOF - - for v in $(multilib_get_enabled_abi_pairs); do - rust_target=$(rust_abi $(get_abi_CHOST ${v##*.})) - arch_cflags="$(get_abi_CFLAGS ${v##*.})" - - cat <<- EOF >> "${S}"/config.env - CFLAGS_${rust_target}=${arch_cflags} - EOF - - cat <<- EOF >> "${S}"/config.toml - [target.${rust_target}] - cc = "$(tc-getBUILD_CC)" - cxx = "$(tc-getBUILD_CXX)" - linker = "$(tc-getCC)" - ar = "$(tc-getAR)" - EOF - # librustc_target/spec/linux_musl_base.rs sets base.crt_static_default = true; - if use elibc_musl; then - cat <<- EOF >> "${S}"/config.toml - crt-static = false - EOF - fi - if use system-llvm; then - cat <<- EOF >> "${S}"/config.toml - llvm-config = "$(get_llvm_prefix "${LLVM_MAX_SLOT}")/bin/llvm-config" - EOF - fi - done - - if use wasm; then - cat <<- EOF >> "${S}"/config.toml - [target.wasm32-unknown-unknown] - linker = "$(usex system-llvm lld rust-lld)" - EOF - fi -} - -src_compile() { - env $(cat "${S}"/config.env)\ - "${EPYTHON}" ./x.py build -vv --config="${S}"/config.toml -j$(makeopts_jobs) \ - --exclude src/tools/miri || die # https://github.com/rust-lang/rust/issues/52305 -} - -src_install() { - env DESTDIR="${D}" "${EPYTHON}" ./x.py install -vv --config="${S}"/config.toml \ - --exclude src/tools/miri || die - - # bug #689562, #689160 - rm "${D}/etc/bash_completion.d/cargo" || die - rmdir "${D}"/etc{/bash_completion.d,} || die - dobashcomp build/tmp/dist/cargo-image/etc/bash_completion.d/cargo - - mv "${ED}/usr/bin/rustc" "${ED}/usr/bin/rustc-${PV}" || die - mv "${ED}/usr/bin/rustdoc" "${ED}/usr/bin/rustdoc-${PV}" || die - mv "${ED}/usr/bin/rust-gdb" "${ED}/usr/bin/rust-gdb-${PV}" || die - mv "${ED}/usr/bin/rust-gdbgui" "${ED}/usr/bin/rust-gdbgui-${PV}" || die - mv "${ED}/usr/bin/rust-lldb" "${ED}/usr/bin/rust-lldb-${PV}" || die - mv "${ED}/usr/bin/cargo" "${ED}/usr/bin/cargo-${PV}" || die - if use clippy; then - mv "${ED}/usr/bin/clippy-driver" "${ED}/usr/bin/clippy-driver-${PV}" || die - mv "${ED}/usr/bin/cargo-clippy" "${ED}/usr/bin/cargo-clippy-${PV}" || die - fi - if use rls; then - mv "${ED}/usr/bin/rls" "${ED}/usr/bin/rls-${PV}" || die - fi - if use rustfmt; then - mv "${ED}/usr/bin/rustfmt" "${ED}/usr/bin/rustfmt-${PV}" || die - mv "${ED}/usr/bin/cargo-fmt" "${ED}/usr/bin/cargo-fmt-${PV}" || die - fi - - # Move public shared libs to abi specific libdir - # Private and target specific libs MUST stay in /usr/lib/rustlib/${rust_target}/lib - if [[ $(get_libdir) != lib ]]; then - dodir /usr/$(get_libdir) - mv "${ED}/usr/lib"/*.so "${ED}/usr/$(get_libdir)/" || die - fi - - dodoc COPYRIGHT - - # note: eselect-rust adds EROOT to all paths below - cat <<-EOF > "${T}/provider-${P}" - /usr/bin/rustdoc - /usr/bin/rust-gdb - /usr/bin/rust-gdbgui - /usr/bin/rust-lldb - EOF - echo /usr/bin/cargo >> "${T}/provider-${P}" - if use clippy; then - echo /usr/bin/clippy-driver >> "${T}/provider-${P}" - echo /usr/bin/cargo-clippy >> "${T}/provider-${P}" - fi - if use rls; then - echo /usr/bin/rls >> "${T}/provider-${P}" - fi - if use rustfmt; then - echo /usr/bin/rustfmt >> "${T}/provider-${P}" - echo /usr/bin/cargo-fmt >> "${T}/provider-${P}" - fi - - insinto /etc/env.d/rust - doins "${T}/provider-${P}" -} - -pkg_postinst() { - eselect rust update --if-unset - - elog "Rust installs a helper script for calling GDB and LLDB," - elog "for your convenience it is installed under /usr/bin/rust-{gdb,lldb}-${PV}." - - ewarn "cargo is now installed from dev-lang/rust{,-bin} instead of dev-util/cargo." - ewarn "This might have resulted in a dangling symlink for /usr/bin/cargo on some" - ewarn "systems. This can be resolved by calling 'sudo eselect rust set ${P}'." - - if has_version app-editors/emacs; then - elog "install app-emacs/rust-mode to get emacs support for rust." - fi - - if has_version app-editors/gvim || has_version app-editors/vim; then - elog "install app-vim/rust-vim to get vim support for rust." - fi - - if use elibc_musl; then - ewarn "${PN} on *-musl targets is configured with crt-static" - ewarn "" - ewarn "you will need to set RUSTFLAGS=\"-C target-feature=-crt-static\" in make.conf" - ewarn "to use it with portage, otherwise you may see failures like" - ewarn "error: cannot produce proc-macro for serde_derive v1.0.98 as the target " - ewarn "x86_64-unknown-linux-musl does not support these crate types" - fi -} - -pkg_postrm() { - eselect rust cleanup -} diff --git a/dev-lang/rust/rust-1.42.0.ebuild b/dev-lang/rust/rust-1.42.0.ebuild deleted file mode 100644 index 769cc360926b..000000000000 --- a/dev-lang/rust/rust-1.42.0.ebuild +++ /dev/null @@ -1,385 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{6,7,8} ) - -inherit bash-completion-r1 check-reqs estack flag-o-matic llvm multiprocessing multilib-build python-any-r1 rust-toolchain toolchain-funcs - -if [[ ${PV} = *beta* ]]; then - betaver=${PV//*beta} - BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}" - MY_P="rustc-beta" - SLOT="beta/${PV}" - SRC="${BETA_SNAPSHOT}/rustc-beta-src.tar.xz" -else - ABI_VER="$(ver_cut 1-2)" - SLOT="stable/${ABI_VER}" - MY_P="rustc-${PV}" - SRC="${MY_P}-src.tar.xz" - KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" -fi - -RUST_STAGE0_VERSION="1.$(($(ver_cut 2) - 1)).1" - -DESCRIPTION="Systems programming language from Mozilla" -HOMEPAGE="https://www.rust-lang.org/" - -SRC_URI=" - https://static.rust-lang.org/dist/${SRC} -> rustc-${PV}-src.tar.xz - !system-bootstrap? ( $(rust_all_arch_uris rust-${RUST_STAGE0_VERSION}) ) -" - -ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430 - NVPTX PowerPC RISCV Sparc SystemZ WebAssembly X86 XCore ) -ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" ) -LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/?} - -LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA" - -IUSE="clippy cpu_flags_x86_sse2 debug doc libressl miri nightly parallel-compiler rls rustfmt system-bootstrap system-llvm wasm ${ALL_LLVM_TARGETS[*]}" - -# Please keep the LLVM dependency block separate. Since LLVM is slotted, -# we need to *really* make sure we're not pulling more than one slot -# simultaneously. - -# How to use it: -# 1. List all the working slots (with min versions) in ||, newest first. -# 2. Update the := to specify *max* version, e.g. < 11. -# 3. Specify LLVM_MAX_SLOT, e.g. 10. -LLVM_DEPEND=" - || ( - sys-devel/llvm:10[${LLVM_TARGET_USEDEPS// /,}] - sys-devel/llvm:9[${LLVM_TARGET_USEDEPS// /,}] - ) - <sys-devel/llvm-11:= - wasm? ( sys-devel/lld ) -" -LLVM_MAX_SLOT=10 - -BOOTSTRAP_DEPEND="|| ( >=dev-lang/rust-1.$(($(ver_cut 2) - 1)) >=dev-lang/rust-bin-1.$(($(ver_cut 2) - 1)) )" - -COMMON_DEPEND=" - net-libs/libssh2:= - net-libs/http-parser:= - net-misc/curl:=[ssl] - sys-libs/zlib:= - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl:0= ) - elibc_musl? ( sys-libs/libunwind ) - system-llvm? ( - ${LLVM_DEPEND} - ) -" - -DEPEND="${COMMON_DEPEND} - ${PYTHON_DEPS} - || ( - >=sys-devel/gcc-4.7 - >=sys-devel/clang-3.5 - ) - system-bootstrap? ( ${BOOTSTRAP_DEPEND} ) - !system-llvm? ( - dev-util/cmake - dev-util/ninja - ) -" - -RDEPEND="${COMMON_DEPEND} - >=app-eselect/eselect-rust-20190311 -" - -REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} ) - miri? ( nightly ) - parallel-compiler? ( nightly ) - wasm? ( llvm_targets_WebAssembly ) - x86? ( cpu_flags_x86_sse2 ) -" - -QA_FLAGS_IGNORED=" - usr/bin/.*-${PV} - usr/lib.*/lib.*.so - usr/lib/rustlib/.*/codegen-backends/librustc_codegen_llvm-llvm.so - usr/lib/rustlib/.*/lib/lib.*.so -" - -QA_SONAME="usr/lib.*/librustc_macros.*.so" - -PATCHES=( - "${FILESDIR}"/1.40.0-add-soname.patch - "${FILESDIR}"/1.42.0-fix-bootstrap.patch - "${FILESDIR}"/1.42.0-libressl.patch -) - -S="${WORKDIR}/${MY_P}-src" - -toml_usex() { - usex "$1" true false -} - -pre_build_checks() { - CHECKREQS_DISK_BUILD="9G" - eshopts_push -s extglob - if is-flagq '-g?(gdb)?([1-9])'; then - CHECKREQS_DISK_BUILD="15G" - fi - eshopts_pop - check-reqs_pkg_setup -} - -pkg_pretend() { - pre_build_checks -} - -pkg_setup() { - pre_build_checks - python-any-r1_pkg_setup - - # use bundled for now, #707746 - # will need dev-libs/libgit2 slotted dep if re-enabled - #export LIBGIT2_SYS_USE_PKG_CONFIG=1 - export LIBSSH2_SYS_USE_PKG_CONFIG=1 - export PKG_CONFIG_ALLOW_CROSS=1 - - if use system-llvm; then - llvm_pkg_setup - - local llvm_config="$(get_llvm_prefix "$LLVM_MAX_SLOT")/bin/llvm-config" - - export LLVM_LINK_SHARED=1 - export RUSTFLAGS="${RUSTFLAGS} -Lnative=$("${llvm_config}" --libdir)" - fi -} - -src_prepare() { - if ! use system-bootstrap; then - local rust_stage0_root="${WORKDIR}"/rust-stage0 - local rust_stage0="rust-${RUST_STAGE0_VERSION}-$(rust_abi)" - - "${WORKDIR}/${rust_stage0}"/install.sh --disable-ldconfig \ - --destdir="${rust_stage0_root}" --prefix=/ || die - fi - - default -} - -src_configure() { - local rust_target="" rust_targets="" arch_cflags - - # Collect rust target names to compile standard libs for all ABIs. - for v in $(multilib_get_enabled_abi_pairs); do - rust_targets="${rust_targets},\"$(rust_abi $(get_abi_CHOST ${v##*.}))\"" - done - if use wasm; then - rust_targets="${rust_targets},\"wasm32-unknown-unknown\"" - fi - rust_targets="${rust_targets#,}" - - local extended="true" tools="\"cargo\"," - if use clippy; then - tools="\"clippy\",$tools" - fi - if use miri; then - tools="\"miri\",$tools" - fi - if use rls; then - tools="\"rls\",\"analysis\",\"src\",$tools" - fi - if use rustfmt; then - tools="\"rustfmt\",$tools" - fi - - local rust_stage0_root - if use system-bootstrap; then - rust_stage0_root="$(rustc --print sysroot)" - else - rust_stage0_root="${WORKDIR}"/rust-stage0 - fi - - rust_target="$(rust_abi)" - - cat <<- EOF > "${S}"/config.toml - [llvm] - optimize = $(toml_usex !debug) - release-debuginfo = $(toml_usex debug) - assertions = $(toml_usex debug) - targets = "${LLVM_TARGETS// /;}" - experimental-targets = "" - link-shared = $(toml_usex system-llvm) - [build] - build = "${rust_target}" - host = ["${rust_target}"] - target = [${rust_targets}] - cargo = "${rust_stage0_root}/bin/cargo" - rustc = "${rust_stage0_root}/bin/rustc" - docs = $(toml_usex doc) - compiler-docs = $(toml_usex doc) - submodules = false - python = "${EPYTHON}" - locked-deps = true - vendor = true - extended = ${extended} - tools = [${tools}] - verbose = 2 - [install] - prefix = "${EPREFIX}/usr" - libdir = "lib" - docdir = "share/doc/${PF}" - mandir = "share/man" - [rust] - optimize = true - debug = $(toml_usex debug) - debug-assertions = $(toml_usex debug) - default-linker = "$(tc-getCC)" - parallel-compiler = $(toml_usex parallel-compiler) - channel = "$(usex nightly nightly stable)" - rpath = false - lld = $(usex system-llvm false $(toml_usex wasm)) - backtrace-on-ice = true - [dist] - src-tarball = false - EOF - - for v in $(multilib_get_enabled_abi_pairs); do - rust_target=$(rust_abi $(get_abi_CHOST ${v##*.})) - arch_cflags="$(get_abi_CFLAGS ${v##*.})" - - cat <<- EOF >> "${S}"/config.env - CFLAGS_${rust_target}=${arch_cflags} - EOF - - cat <<- EOF >> "${S}"/config.toml - [target.${rust_target}] - cc = "$(tc-getBUILD_CC)" - cxx = "$(tc-getBUILD_CXX)" - linker = "$(tc-getCC)" - ar = "$(tc-getAR)" - EOF - # librustc_target/spec/linux_musl_base.rs sets base.crt_static_default = true; - if use elibc_musl; then - cat <<- EOF >> "${S}"/config.toml - crt-static = false - EOF - fi - if use system-llvm; then - cat <<- EOF >> "${S}"/config.toml - llvm-config = "$(get_llvm_prefix "${LLVM_MAX_SLOT}")/bin/llvm-config" - EOF - fi - done - if use wasm; then - cat <<- EOF >> "${S}"/config.toml - [target.wasm32-unknown-unknown] - linker = "$(usex system-llvm lld rust-lld)" - EOF - fi - - einfo "Rust configured with the following settings:" - cat "${S}"/config.toml || die -} - -src_compile() { - env $(cat "${S}"/config.env)\ - "${EPYTHON}" ./x.py build -vv --config="${S}"/config.toml -j$(makeopts_jobs) || die -} - -src_install() { - env $(cat "${S}"/config.env) DESTDIR="${D}" \ - "${EPYTHON}" ./x.py install -vv --config="${S}"/config.toml || die - - # bug #689562, #689160 - rm "${D}/etc/bash_completion.d/cargo" || die - rmdir "${D}"/etc{/bash_completion.d,} || die - dobashcomp build/tmp/dist/cargo-image/etc/bash_completion.d/cargo - - mv "${ED}/usr/bin/rustc" "${ED}/usr/bin/rustc-${PV}" || die - mv "${ED}/usr/bin/rustdoc" "${ED}/usr/bin/rustdoc-${PV}" || die - mv "${ED}/usr/bin/rust-gdb" "${ED}/usr/bin/rust-gdb-${PV}" || die - mv "${ED}/usr/bin/rust-gdbgui" "${ED}/usr/bin/rust-gdbgui-${PV}" || die - mv "${ED}/usr/bin/rust-lldb" "${ED}/usr/bin/rust-lldb-${PV}" || die - mv "${ED}/usr/bin/cargo" "${ED}/usr/bin/cargo-${PV}" || die - if use clippy; then - mv "${ED}/usr/bin/clippy-driver" "${ED}/usr/bin/clippy-driver-${PV}" || die - mv "${ED}/usr/bin/cargo-clippy" "${ED}/usr/bin/cargo-clippy-${PV}" || die - fi - if use miri; then - mv "${ED}/usr/bin/miri" "${ED}/usr/bin/miri-${PV}" || die - mv "${ED}/usr/bin/cargo-miri" "${ED}/usr/bin/cargo-miri-${PV}" || die - fi - if use rls; then - mv "${ED}/usr/bin/rls" "${ED}/usr/bin/rls-${PV}" || die - fi - if use rustfmt; then - mv "${ED}/usr/bin/rustfmt" "${ED}/usr/bin/rustfmt-${PV}" || die - mv "${ED}/usr/bin/cargo-fmt" "${ED}/usr/bin/cargo-fmt-${PV}" || die - fi - - # Move public shared libs to abi specific libdir - # Private and target specific libs MUST stay in /usr/lib/rustlib/${rust_target}/lib - if [[ $(get_libdir) != lib ]]; then - dodir /usr/$(get_libdir) - mv "${ED}/usr/lib"/*.so "${ED}/usr/$(get_libdir)/" || die - fi - - dodoc COPYRIGHT - - # note: eselect-rust adds EROOT to all paths below - cat <<-EOF > "${T}/provider-${P}" - /usr/bin/rustdoc - /usr/bin/rust-gdb - /usr/bin/rust-gdbgui - /usr/bin/rust-lldb - EOF - echo /usr/bin/cargo >> "${T}/provider-${P}" - if use clippy; then - echo /usr/bin/clippy-driver >> "${T}/provider-${P}" - echo /usr/bin/cargo-clippy >> "${T}/provider-${P}" - fi - if use miri; then - echo /usr/bin/miri >> "${T}/provider-${P}" - echo /usr/bin/cargo-miri >> "${T}/provider-${P}" - fi - if use rls; then - echo /usr/bin/rls >> "${T}/provider-${P}" - fi - if use rustfmt; then - echo /usr/bin/rustfmt >> "${T}/provider-${P}" - echo /usr/bin/cargo-fmt >> "${T}/provider-${P}" - fi - - insinto /etc/env.d/rust - doins "${T}/provider-${P}" -} - -pkg_postinst() { - eselect rust update --if-unset - - elog "Rust installs a helper script for calling GDB and LLDB," - elog "for your convenience it is installed under /usr/bin/rust-{gdb,lldb}-${PV}." - - ewarn "cargo is now installed from dev-lang/rust{,-bin} instead of dev-util/cargo." - ewarn "This might have resulted in a dangling symlink for /usr/bin/cargo on some" - ewarn "systems. This can be resolved by calling 'sudo eselect rust set ${P}'." - - if has_version app-editors/emacs; then - elog "install app-emacs/rust-mode to get emacs support for rust." - fi - - if has_version app-editors/gvim || has_version app-editors/vim; then - elog "install app-vim/rust-vim to get vim support for rust." - fi - - if use elibc_musl; then - ewarn "${PN} on *-musl targets is configured with crt-static" - ewarn "" - ewarn "you will need to set RUSTFLAGS=\"-C target-feature=-crt-static\" in make.conf" - ewarn "to use it with portage, otherwise you may see failures like" - ewarn "error: cannot produce proc-macro for serde_derive v1.0.98 as the target " - ewarn "x86_64-unknown-linux-musl does not support these crate types" - fi -} - -pkg_postrm() { - eselect rust cleanup -} diff --git a/dev-lang/rust/rust-1.43.1.ebuild b/dev-lang/rust/rust-1.43.1.ebuild deleted file mode 100644 index 9f54ed8a0668..000000000000 --- a/dev-lang/rust/rust-1.43.1.ebuild +++ /dev/null @@ -1,419 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{6,7,8} ) - -inherit bash-completion-r1 check-reqs estack flag-o-matic llvm multiprocessing multilib-build python-any-r1 rust-toolchain toolchain-funcs - -if [[ ${PV} = *beta* ]]; then - betaver=${PV//*beta} - BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}" - MY_P="rustc-beta" - SLOT="beta/${PV}" - SRC="${BETA_SNAPSHOT}/rustc-beta-src.tar.xz" -else - ABI_VER="$(ver_cut 1-2)" - SLOT="stable/${ABI_VER}" - MY_P="rustc-${PV}" - SRC="${MY_P}-src.tar.xz" - KEYWORDS="amd64 ~arm ~arm64 ppc64 x86" -fi - -RUST_STAGE0_VERSION="1.$(($(ver_cut 2) - 1)).0" - -DESCRIPTION="Systems programming language from Mozilla" -HOMEPAGE="https://www.rust-lang.org/" - -SRC_URI=" - https://static.rust-lang.org/dist/${SRC} -> rustc-${PV}-src.tar.xz - !system-bootstrap? ( $(rust_all_arch_uris rust-${RUST_STAGE0_VERSION}) ) -" - -ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430 - NVPTX PowerPC RISCV Sparc SystemZ WebAssembly X86 XCore ) -ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" ) -LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/?} - -LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA" - -IUSE="clippy cpu_flags_x86_sse2 debug doc libressl miri nightly parallel-compiler rls rustfmt system-bootstrap system-llvm wasm ${ALL_LLVM_TARGETS[*]}" - -# Please keep the LLVM dependency block separate. Since LLVM is slotted, -# we need to *really* make sure we're not pulling more than one slot -# simultaneously. - -# How to use it: -# 1. List all the working slots (with min versions) in ||, newest first. -# 2. Update the := to specify *max* version, e.g. < 11. -# 3. Specify LLVM_MAX_SLOT, e.g. 10. -LLVM_DEPEND=" - || ( - sys-devel/llvm:10[${LLVM_TARGET_USEDEPS// /,}] - sys-devel/llvm:9[${LLVM_TARGET_USEDEPS// /,}] - ) - <sys-devel/llvm-11:= - wasm? ( sys-devel/lld ) -" -LLVM_MAX_SLOT=10 - -BOOTSTRAP_DEPEND="|| ( >=dev-lang/rust-1.$(($(ver_cut 2) - 1)) >=dev-lang/rust-bin-1.$(($(ver_cut 2) - 1)) )" - -# libgit2 should be at least same as bungled into libgit-sys #707746 -COMMON_DEPEND=" - >=dev-libs/libgit2-0.99:= - net-libs/libssh2:= - net-libs/http-parser:= - net-misc/curl:=[ssl] - sys-libs/zlib:= - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl:0= ) - elibc_musl? ( sys-libs/libunwind ) - system-llvm? ( - ${LLVM_DEPEND} - ) -" - -DEPEND="${COMMON_DEPEND} - ${PYTHON_DEPS} - || ( - >=sys-devel/gcc-4.7 - >=sys-devel/clang-3.5 - ) - system-bootstrap? ( ${BOOTSTRAP_DEPEND} ) - !system-llvm? ( - dev-util/cmake - dev-util/ninja - ) -" - -RDEPEND="${COMMON_DEPEND} - >=app-eselect/eselect-rust-20190311 -" - -REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} ) - miri? ( nightly ) - parallel-compiler? ( nightly ) - wasm? ( llvm_targets_WebAssembly ) - x86? ( cpu_flags_x86_sse2 ) -" - -QA_FLAGS_IGNORED=" - usr/bin/.*-${PV} - usr/lib.*/lib.*.so - usr/lib/rustlib/.*/codegen-backends/librustc_codegen_llvm-llvm.so - usr/lib/rustlib/.*/lib/lib.*.so -" - -# tests need a bit more work, currently they are causing multiple -# re-compilations and somewhat fragile. -RESTRICT="test" - -QA_SONAME="usr/lib.*/librustc_macros.*.so" - -PATCHES=( - "${FILESDIR}"/1.40.0-add-soname.patch - "${FILESDIR}"/0012-Ignore-broken-and-non-applicable-tests.patch - "${FILESDIR}"/1.43.0-llvm10.patch - "${FILESDIR}"/1.42.0-libressl.patch -) - -S="${WORKDIR}/${MY_P}-src" - -toml_usex() { - usex "$1" true false -} - -pre_build_checks() { - CHECKREQS_DISK_BUILD="9G" - eshopts_push -s extglob - if is-flagq '-g?(gdb)?([1-9])'; then - CHECKREQS_DISK_BUILD="15G" - fi - eshopts_pop - check-reqs_pkg_setup -} - -pkg_pretend() { - pre_build_checks -} - -pkg_setup() { - pre_build_checks - python-any-r1_pkg_setup - - # required to link agains system libs, otherwise - # crates use bundled sources and compile own static version - export LIBGIT2_SYS_USE_PKG_CONFIG=1 - export LIBSSH2_SYS_USE_PKG_CONFIG=1 - export PKG_CONFIG_ALLOW_CROSS=1 - - if use system-llvm; then - llvm_pkg_setup - - local llvm_config="$(get_llvm_prefix "$LLVM_MAX_SLOT")/bin/llvm-config" - - export LLVM_LINK_SHARED=1 - export RUSTFLAGS="${RUSTFLAGS} -Lnative=$("${llvm_config}" --libdir)" - fi -} - -src_prepare() { - if ! use system-bootstrap; then - local rust_stage0_root="${WORKDIR}"/rust-stage0 - local rust_stage0="rust-${RUST_STAGE0_VERSION}-$(rust_abi)" - - "${WORKDIR}/${rust_stage0}"/install.sh --disable-ldconfig \ - --destdir="${rust_stage0_root}" --prefix=/ || die - fi - - default -} - -src_configure() { - local rust_target="" rust_targets="" arch_cflags - - # Collect rust target names to compile standard libs for all ABIs. - for v in $(multilib_get_enabled_abi_pairs); do - rust_targets="${rust_targets},\"$(rust_abi $(get_abi_CHOST ${v##*.}))\"" - done - if use wasm; then - rust_targets="${rust_targets},\"wasm32-unknown-unknown\"" - fi - rust_targets="${rust_targets#,}" - - local tools="\"cargo\"," - if use clippy; then - tools="\"clippy\",$tools" - fi - if use miri; then - tools="\"miri\",$tools" - fi - if use rls; then - tools="\"rls\",\"analysis\",\"src\",$tools" - fi - if use rustfmt; then - tools="\"rustfmt\",$tools" - fi - - local rust_stage0_root - if use system-bootstrap; then - rust_stage0_root="$(rustc --print sysroot)" - else - rust_stage0_root="${WORKDIR}"/rust-stage0 - fi - - rust_target="$(rust_abi)" - - cat <<- EOF > "${S}"/config.toml - [llvm] - optimize = $(toml_usex !debug) - release-debuginfo = $(toml_usex debug) - assertions = $(toml_usex debug) - ninja = true - targets = "${LLVM_TARGETS// /;}" - experimental-targets = "" - link-shared = $(toml_usex system-llvm) - [build] - build = "${rust_target}" - host = ["${rust_target}"] - target = [${rust_targets}] - cargo = "${rust_stage0_root}/bin/cargo" - rustc = "${rust_stage0_root}/bin/rustc" - docs = $(toml_usex doc) - compiler-docs = $(toml_usex doc) - submodules = false - python = "${EPYTHON}" - locked-deps = true - vendor = true - extended = true - tools = [${tools}] - verbose = 2 - sanitizers = false - profiler = false - cargo-native-static = false - [install] - prefix = "${EPREFIX}/usr" - libdir = "lib" - docdir = "share/doc/${PF}" - mandir = "share/man" - [rust] - optimize = true - debug = $(toml_usex debug) - debug-assertions = $(toml_usex debug) - debuginfo-level-rustc = 0 - backtrace = true - incremental = false - default-linker = "$(tc-getCC)" - parallel-compiler = $(toml_usex parallel-compiler) - channel = "$(usex nightly nightly stable)" - rpath = false - verbose-tests = true - optimize-tests = $(toml_usex !debug) - codegen-tests = true - dist-src = false - lld = $(usex system-llvm false $(toml_usex wasm)) - backtrace-on-ice = true - jemalloc = false - [dist] - src-tarball = false - EOF - - for v in $(multilib_get_enabled_abi_pairs); do - rust_target=$(rust_abi $(get_abi_CHOST ${v##*.})) - arch_cflags="$(get_abi_CFLAGS ${v##*.})" - - cat <<- EOF >> "${S}"/config.env - CFLAGS_${rust_target}=${arch_cflags} - EOF - - cat <<- EOF >> "${S}"/config.toml - [target.${rust_target}] - cc = "$(tc-getBUILD_CC)" - cxx = "$(tc-getBUILD_CXX)" - linker = "$(tc-getCC)" - ar = "$(tc-getAR)" - EOF - # librustc_target/spec/linux_musl_base.rs sets base.crt_static_default = true; - if use elibc_musl; then - cat <<- EOF >> "${S}"/config.toml - crt-static = false - EOF - fi - if use system-llvm; then - cat <<- EOF >> "${S}"/config.toml - llvm-config = "$(get_llvm_prefix "${LLVM_MAX_SLOT}")/bin/llvm-config" - EOF - fi - done - if use wasm; then - cat <<- EOF >> "${S}"/config.toml - [target.wasm32-unknown-unknown] - linker = "$(usex system-llvm lld rust-lld)" - EOF - fi - - einfo "Rust configured with the following settings:" - cat "${S}"/config.toml || die -} - -src_compile() { - env $(cat "${S}"/config.env) RUST_BACKTRACE=1\ - "${EPYTHON}" ./x.py build -vv --config="${S}"/config.toml -j$(makeopts_jobs) || die -} - -src_test() { - env $(cat "${S}"/config.env) RUST_BACKTRACE=1\ - "${EPYTHON}" ./x.py test -vv --config="${S}"/config.toml -j$(makeopts_jobs) --no-doc --no-fail-fast \ - src/test/codegen \ - src/test/codegen-units \ - src/test/compile-fail \ - src/test/incremental \ - src/test/mir-opt \ - src/test/pretty \ - src/test/run-fail \ - src/test/run-make \ - src/test/run-make-fulldeps \ - src/test/ui \ - src/test/ui-fulldeps || die -} - -src_install() { - env $(cat "${S}"/config.env) DESTDIR="${D}" \ - "${EPYTHON}" ./x.py install -vv --config="${S}"/config.toml || die - - # bug #689562, #689160 - rm "${D}/etc/bash_completion.d/cargo" || die - rmdir "${D}"/etc{/bash_completion.d,} || die - dobashcomp build/tmp/dist/cargo-image/etc/bash_completion.d/cargo - - mv "${ED}/usr/bin/rustc" "${ED}/usr/bin/rustc-${PV}" || die - mv "${ED}/usr/bin/rustdoc" "${ED}/usr/bin/rustdoc-${PV}" || die - mv "${ED}/usr/bin/rust-gdb" "${ED}/usr/bin/rust-gdb-${PV}" || die - mv "${ED}/usr/bin/rust-gdbgui" "${ED}/usr/bin/rust-gdbgui-${PV}" || die - mv "${ED}/usr/bin/rust-lldb" "${ED}/usr/bin/rust-lldb-${PV}" || die - mv "${ED}/usr/bin/cargo" "${ED}/usr/bin/cargo-${PV}" || die - if use clippy; then - mv "${ED}/usr/bin/clippy-driver" "${ED}/usr/bin/clippy-driver-${PV}" || die - mv "${ED}/usr/bin/cargo-clippy" "${ED}/usr/bin/cargo-clippy-${PV}" || die - fi - if use miri; then - mv "${ED}/usr/bin/miri" "${ED}/usr/bin/miri-${PV}" || die - mv "${ED}/usr/bin/cargo-miri" "${ED}/usr/bin/cargo-miri-${PV}" || die - fi - if use rls; then - mv "${ED}/usr/bin/rls" "${ED}/usr/bin/rls-${PV}" || die - fi - if use rustfmt; then - mv "${ED}/usr/bin/rustfmt" "${ED}/usr/bin/rustfmt-${PV}" || die - mv "${ED}/usr/bin/cargo-fmt" "${ED}/usr/bin/cargo-fmt-${PV}" || die - fi - - # Move public shared libs to abi specific libdir - # Private and target specific libs MUST stay in /usr/lib/rustlib/${rust_target}/lib - if [[ $(get_libdir) != lib ]]; then - dodir /usr/$(get_libdir) - mv "${ED}/usr/lib"/*.so "${ED}/usr/$(get_libdir)/" || die - fi - - dodoc COPYRIGHT - rm "${ED}/usr/share/doc/${P}"/*.old || die - rm "${ED}/usr/share/doc/${P}/LICENSE-APACHE" || die - rm "${ED}/usr/share/doc/${P}/LICENSE-MIT" || die - - # note: eselect-rust adds EROOT to all paths below - cat <<-EOF > "${T}/provider-${P}" - /usr/bin/cargo - /usr/bin/rustdoc - /usr/bin/rust-gdb - /usr/bin/rust-gdbgui - /usr/bin/rust-lldb - EOF - if use clippy; then - echo /usr/bin/clippy-driver >> "${T}/provider-${P}" - echo /usr/bin/cargo-clippy >> "${T}/provider-${P}" - fi - if use miri; then - echo /usr/bin/miri >> "${T}/provider-${P}" - echo /usr/bin/cargo-miri >> "${T}/provider-${P}" - fi - if use rls; then - echo /usr/bin/rls >> "${T}/provider-${P}" - fi - if use rustfmt; then - echo /usr/bin/rustfmt >> "${T}/provider-${P}" - echo /usr/bin/cargo-fmt >> "${T}/provider-${P}" - fi - - insinto /etc/env.d/rust - doins "${T}/provider-${P}" -} - -pkg_postinst() { - eselect rust update --if-unset - - elog "Rust installs a helper script for calling GDB and LLDB," - elog "for your convenience it is installed under /usr/bin/rust-{gdb,lldb}-${PV}." - - if has_version app-editors/emacs; then - elog "install app-emacs/rust-mode to get emacs support for rust." - fi - - if has_version app-editors/gvim || has_version app-editors/vim; then - elog "install app-vim/rust-vim to get vim support for rust." - fi - - if use elibc_musl; then - ewarn "${PN} on *-musl targets is configured with crt-static" - ewarn "" - ewarn "you will need to set RUSTFLAGS=\"-C target-feature=-crt-static\" in make.conf" - ewarn "to use it with portage, otherwise you may see failures like" - ewarn "error: cannot produce proc-macro for serde_derive v1.0.98 as the target " - ewarn "x86_64-unknown-linux-musl does not support these crate types" - fi -} - -pkg_postrm() { - eselect rust cleanup -} diff --git a/dev-lang/rust/rust-1.44.1.ebuild b/dev-lang/rust/rust-1.44.1.ebuild index 1ba3a231d20a..3ddcdaa9ee15 100644 --- a/dev-lang/rust/rust-1.44.1.ebuild +++ b/dev-lang/rust/rust-1.44.1.ebuild @@ -18,7 +18,7 @@ else SLOT="stable/${ABI_VER}" MY_P="rustc-${PV}" SRC="${MY_P}-src.tar.xz" - KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + KEYWORDS="amd64 arm arm64 ppc64 x86" fi RUST_STAGE0_VERSION="1.$(($(ver_cut 2) - 1)).1" @@ -60,7 +60,7 @@ LLVM_MAX_SLOT=10 BOOTSTRAP_DEPEND="|| ( >=dev-lang/rust-1.$(($(ver_cut 2) - 1)) >=dev-lang/rust-bin-1.$(($(ver_cut 2) - 1)) )" -# libgit2 should be at least same as bungled into libgit-sys #707746 +# libgit2 should be at least same as bundled into libgit-sys #707746 COMMON_DEPEND=" >=dev-libs/libgit2-0.99:= net-libs/libssh2:= diff --git a/dev-lang/rust/rust-1.44.0.ebuild b/dev-lang/rust/rust-1.45.2.ebuild index bd67db4cdf4b..68cc5bb4cb29 100644 --- a/dev-lang/rust/rust-1.44.0.ebuild +++ b/dev-lang/rust/rust-1.45.2.ebuild @@ -60,12 +60,25 @@ LLVM_MAX_SLOT=10 BOOTSTRAP_DEPEND="|| ( >=dev-lang/rust-1.$(($(ver_cut 2) - 1)) >=dev-lang/rust-bin-1.$(($(ver_cut 2) - 1)) )" -# libgit2 should be at least same as bungled into libgit-sys #707746 -COMMON_DEPEND=" +BDEPEND="${PYTHON_DEPS} + app-eselect/eselect-rust + || ( + >=sys-devel/gcc-4.7 + >=sys-devel/clang-3.5 + ) + system-bootstrap? ( ${BOOTSTRAP_DEPEND} ) + !system-llvm? ( + dev-util/cmake + dev-util/ninja + ) +" + +# libgit2 should be at least same as bundled into libgit-sys #707746 +DEPEND=" >=dev-libs/libgit2-0.99:= net-libs/libssh2:= net-libs/http-parser:= - net-misc/curl:=[ssl] + net-misc/curl:=[http2,ssl] sys-libs/zlib:= !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) @@ -75,21 +88,8 @@ COMMON_DEPEND=" ) " -DEPEND="${COMMON_DEPEND} - ${PYTHON_DEPS} - || ( - >=sys-devel/gcc-4.7 - >=sys-devel/clang-3.5 - ) - system-bootstrap? ( ${BOOTSTRAP_DEPEND} ) - !system-llvm? ( - dev-util/cmake - dev-util/ninja - ) -" - -RDEPEND="${COMMON_DEPEND} - >=app-eselect/eselect-rust-20190311 +RDEPEND="${DEPEND} + app-eselect/eselect-rust " REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} ) @@ -99,16 +99,19 @@ REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} ) x86? ( cpu_flags_x86_sse2 ) " +# we don't use cmake.eclass, but can get a warnin -l +CMAKE_WARN_UNUSED_CLI=no + QA_FLAGS_IGNORED=" usr/bin/.*-${PV} - usr/lib.*/lib.*.so - usr/lib/rustlib/.*/codegen-backends/librustc_codegen_llvm-llvm.so - usr/lib/rustlib/.*/lib/lib.*.so + usr/lib.*/${P}/lib.*.so.* + usr/lib.*/${P}/rustlib/.*/bin/.* + usr/lib.*/${P}/rustlib/.*/lib/lib.*.so.* " QA_SONAME=" - usr/lib.*/lib.*.so - usr/lib.*/librustc_macros.*.s + usr/lib.*/${P}/lib.*.so.* + usr/lib.*/${P}/rustlib/.*/lib/lib.*.so.* " # tests need a bit more work, currently they are causing multiple @@ -126,14 +129,41 @@ toml_usex() { usex "$1" true false } +boostrap_rust_version_check() { + # never call from pkg_pretend. eselect-rust may be not installed yet. + local rustc_wanted="$(ver_cut 1).$(($(ver_cut 2) - 1))" + local rustc_version=( $(eselect --brief rust show 2>/dev/null) ) + rustc_version=${rustc_version[0]#rust-bin-} + rustc_version=${rustc_version#rust-} + + [[ -z "${rustc_version}" ]] && die "Failed to determine rustc version!" + + if ver_test "${rustc_version}" -lt "${rustc_wanted}" ; then + eerror "Rust >=${rustc_wanted} is required" + eerror "please run \'eselect rust\' and set correct rust version" + die + else + einfo "Using rust ${rustc_version} to build" + fi +} + pre_build_checks() { - CHECKREQS_DISK_BUILD="9G" + local M=6144 + M=$(( $(usex clippy 128 0) + ${M} )) + M=$(( $(usex miri 128 0) + ${M} )) + M=$(( $(usex rls 512 0) + ${M} )) + M=$(( $(usex rustfmt 256 0) + ${M} )) + M=$(( $(usex system-llvm 0 2048) + ${M} )) + M=$(( $(usex wasm 256 0) + ${M} )) + M=$(( $(usex debug 15 10) * ${M} / 10 )) eshopts_push -s extglob if is-flagq '-g?(gdb)?([1-9])'; then - CHECKREQS_DISK_BUILD="15G" + M=$(( 15 * ${M} / 10 )) fi eshopts_pop - check-reqs_pkg_setup + M=$(( $(usex system-bootstrap 0 1024) + ${M} )) + M=$(( $(usex doc 256 0) + ${M} )) + CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE} } pkg_pretend() { @@ -143,6 +173,7 @@ pkg_pretend() { pkg_setup() { pre_build_checks python-any-r1_pkg_setup + use system-bootstrap && boostrap_rust_version_check # required to link agains system libs, otherwise # crates use bundled sources and compile own static version @@ -181,6 +212,11 @@ src_configure() { done if use wasm; then rust_targets="${rust_targets},\"wasm32-unknown-unknown\"" + if use system-llvm; then + # un-hardcode rust-lld linker for this target + # https://bugs.gentoo.org/715348 + sed -i '/linker:/ s/rust-lld/wasm-ld/' src/librustc_target/spec/wasm32_base.rs || die + fi fi rust_targets="${rust_targets#,}" @@ -236,9 +272,9 @@ src_configure() { cargo-native-static = false [install] prefix = "${EPREFIX}/usr" - libdir = "lib" + libdir = "$(get_libdir)/${P}" docdir = "share/doc/${PF}" - mandir = "share/man" + mandir = "share/${P}/man" [rust] optimize = true debug = $(toml_usex debug) @@ -254,6 +290,7 @@ src_configure() { optimize-tests = $(toml_usex !debug) codegen-tests = true dist-src = false + remap-debuginfo = true lld = $(usex system-llvm false $(toml_usex wasm)) backtrace-on-ice = true jemalloc = false @@ -312,7 +349,7 @@ src_configure() { # ) # no extra hand holding is done, no target transformations, all # values are passed as-is with just basic checks, so it's up to user to supply correct values - # valid rust targets can be obtained with + # valid rust targets can be obtained with # rustc --print target-list # matching cross toolchain has to be installed # matching LLVM_TARGET has to be enabled for both rust and llvm (if using system one) @@ -356,7 +393,7 @@ src_configure() { sed -i "/^target = \[/ s#\[.*\]#\[${rust_targets}\]#" config.toml || die ewarn - ewarn "Enabled ${rust_target} rust target" + ewarn "Enabled ${cross_rust_target} rust target" ewarn "Using ${cross_toolchain} cross toolchain" ewarn if ! has_version -b 'sys-devel/binutils[multitarget]' ; then @@ -428,14 +465,30 @@ src_install() { mv "${ED}/usr/bin/cargo-fmt" "${ED}/usr/bin/cargo-fmt-${PV}" || die fi - # Move public shared libs to abi specific libdir - # Private and target specific libs MUST stay in /usr/lib/rustlib/${rust_target}/lib - if [[ $(get_libdir) != lib ]]; then - dodir /usr/$(get_libdir) - mv "${ED}/usr/lib"/*.so "${ED}/usr/$(get_libdir)/" || die - fi + # Copy shared library versions of standard libraries for all targets + # into the system's abi-dependent lib directories because the rust + # installer only does so for the native ABI. + + local abi_libdir rust_target + for v in $(multilib_get_enabled_abi_pairs); do + if [ ${v##*.} = ${DEFAULT_ABI} ]; then + continue + fi + abi_libdir=$(get_abi_LIBDIR ${v##*.}) + rust_target=$(rust_abi $(get_abi_CHOST ${v##*.})) + mkdir -p "${ED}/usr/${abi_libdir}/${P}" + cp "${ED}/usr/$(get_libdir)/${P}/rustlib/${rust_target}/lib"/*.so \ + "${ED}/usr/${abi_libdir}/${P}" || die + done + + # versioned libdir/mandir support + newenvd - "50${P}" <<-_EOF_ + LDPATH="${EPREFIX}/usr/$(get_libdir)/${P}" + MANPATH="${EPREFIX}/usr/share/${P}/man" + _EOF_ dodoc COPYRIGHT + rm -rf "${ED}/usr/$(get_libdir)/${P}"/*.old || die rm "${ED}/usr/share/doc/${P}"/*.old || die rm "${ED}/usr/share/doc/${P}/LICENSE-APACHE" || die rm "${ED}/usr/share/doc/${P}/LICENSE-MIT" || die diff --git a/dev-lang/spidermonkey/Manifest b/dev-lang/spidermonkey/Manifest index 59a5908b9b7a..df49ddf8b315 100644 --- a/dev-lang/spidermonkey/Manifest +++ b/dev-lang/spidermonkey/Manifest @@ -1,5 +1,6 @@ AUX moz38-dont-hardcode-libc-soname.patch 637 BLAKE2B d78f53814955c3e0842040f47330d8216b3f496574fadc045294b534f2ec7d049b14564cb495c37ae2d084db2f5671e447d1d98aa19a367f8b96ec97201b4f30 SHA512 f3d447996da3bf445f082a0b5c3018eb618b6b08a49bc43f275dc6cc77d7d906928e99264378472e96213df8f8b5d279a0af72d9d6a0a3417b266d7752c7f1fd AUX spidermonkey-1.8.5-LTO.patch 1886 BLAKE2B 28559662306681570ed7b910190da9042a7724a5d9fda0960ebe36039e994b56b65f103095381a8838db54e2ebdd5b8bc3f0f7d500f338907624ca448695a2f1 SHA512 8c44683370f7a919a930dc505278240164b1bea35cd0408ce7d880f56603abde9799aea3bf35f05bd080b214d5d0b944dd004ef5e157607bbb3e679f3ff2c574 +AUX spidermonkey-17.0.0-unbreak-clang.patch 1154 BLAKE2B e3d76001ca3ee7d4374d349671f6af5a648db16bd5a91b393da6013b513ea7671ba093a2d3e1610374bd75f3373e3cb3fcb805436346927c8dd1456df2174ba3 SHA512 a2b5e7ef252c1b82dd612b1515a1f2013d416a46a4bd10a8c914470eb1815bbf02d51913d75455d57a348b3e217d225b6bb9a680e1ae84d786e43c59bb05992b AUX spidermonkey-52.0-fix-alpha-bitness.patch 836 BLAKE2B bf89aadfdceab9d1460c31b496618dc19d2461d27e0713887d8c59b7a565a70d38cbaa2ca099b50555417beba54c2b207f80cf13ba633da35be7fab6b3c41faf SHA512 67ccafd8e2b84d59d13ff93bd12930b4804f8cf64cc896a4edf99c962481f583866ea6c4f84b3fd9d1093ad8ca7d23712615470dfadb57d293258754dd612484 AUX spidermonkey-52.0-gcc9-overflow.patch 821 BLAKE2B c35c5a37b40e86d1a23588aebd9b53e81e0a70b01e969bc54c24c68a8adef567d03833e1afa8a02d1659f373226958b8ef3ce84982a8ba24d18fa28a96aa6e40 SHA512 6173486c4d28cb727096a470b22b6b98c675ee355934bf134882a5d068ef492e4cd3519e7da293eae756d5b9cb9950ffd4b1723c6a47de6493491a4bc3573f3b AUX spidermonkey-60.5.2-ia64-fix-virtual-address-length.patch 2554 BLAKE2B d5759da22c521e389b8633aa2aa75e0a300af76f431a53c0bd445781002b0b7dd93543657cdf53afb12d87e4be1464584d5c3ccb30a2c9acc608aaeb1b2eb34f SHA512 d767cb00988772a0e5789d5b27aaaf0c0cc0124f4dd78ba67d2c4b4587c26346b01fc5b3d29f346e931dcd037ecefc8cec0d5c48510726a1841a6b6396c5507c @@ -7,7 +8,9 @@ AUX spidermonkey-60.5.2-ia64-support.patch 1615 BLAKE2B bd2ae36194bdb6a17638ec50 AUX spidermonkey-perl-defined-array-check.patch 341 BLAKE2B e11a74cc2afbea5e39ec5f3fb4c108278a8b71b57ce71644184bc4e19188059f6cb9c164ab87877605028241ed0b68a1447414f1aa0f5453fa26a603ecd4f6a6 SHA512 5d178b68cf0744da874624da79cd31555bd882aed205e697a3f0bfc3cb91a149d74da79b7af5883ea5a23e1d1692753ebfda0d83e7a25ac000105849db5c1548 DIST firefox-68.0-patches-12.tar.xz 17476 BLAKE2B bd788e24820f902f4ca908b0cf7a49a4c57e058915af1eb87233d19d91271092676c1ee4c67e88df2411ecccea47c4e735efdf95945954f2d9aac5cc2f9051f2 SHA512 8033a3c445eaddd28188b338534da16a4130b679a5f6673b3094524e47435890e6d454d7b67f81bbe21f80ef1b65fa7e6c27d71191ba70dd8ea87fc68463f9a7 DIST firefox-68.0-patches-14.tar.xz 17488 BLAKE2B 697aecf97b04b45ea17ed1c1eaded95ca5064760cd0468968326f1683c10d91b76458c0f3e1ae7772b0d43c33632c03a69e5b09579284de19ecaaf7603dc2412 SHA512 9a601b80f747eb52ce772ec931d4f5ff0180ca1531c92d46ca116fb8218c829b9be496392e785d79106c76abef149e666cdc65204bdf1ebb7904b65264cfa6b6 +DIST firefox-68.0-patches-15.tar.xz 16060 BLAKE2B f9e6cd58ea51bed1af90a9d30fd551dc7e939afcd1b4d00de1271bd4bda94021c6f1799fd9945962c14ffa1fd0b6a6429369c4e45efc2000f179b9b2e46971e7 SHA512 9cb2479637dd8b84e0ab68dc0fe144acd2dc74feca282fd3c4b485ca6f0de8190244587622713a5421b243ccda153f738e9a8f463e87e15e93e9b725d943e128 DIST firefox-68.10.0esr.source.tar.xz 314526224 BLAKE2B 698367314caa4d8e9fd64e5ec6fd26316a26470f94d095dd212932cb968ecabd492563d661df46be693c8deb16cdb45c6ba756d506a8211f184e4637c7d9e986 SHA512 c5c1833560364851e7cf8ea51659bc4fb60239b960125cdb20fe31f742d757ffdaef8f314f800dc91214ee8e358033dc2af971c08bbba474ef6158b101881653 +DIST firefox-68.11.0esr.source.tar.xz 321294384 BLAKE2B ee44ed20584f5b1e3c41de62a720c6e91784d76503198d8363ce6d6f74454ce101c9b811d8295b81eb6454bdb20e1109c3e9c5cd052e0e9a6f7607d338a97783 SHA512 7dcfa4944945bce184b96643a7afbd0cc97c93e4f727695bd5ee1e1745cff89784e68baf109588ef56791211b4b8f5c7c056ae6ac77f54fd00a5af5d5606f23e DIST firefox-68.7.0esr.source.tar.xz 312235932 BLAKE2B 17030bc74341ecae74d7dadcb0fc0212e61e3f01463671e57f73c90e534db1088d597d43bc362cd083ca26b056bce45684eda121b2cd91c7793c44a7c40efb7a SHA512 a3ddcf8ffe5f568b30b1fc9ddcaa5cebe600bf11ce353c09507d5466f999022d45a0dee9a08f53f37b10202a2e2ce4c180743cd6a2ca38dfea1c3e4487b18593 DIST firefox-68.8.0esr.source.tar.xz 312602308 BLAKE2B 19be922cdadc705a267f35450e742cf9cf2f793a3e74dd9a397f898ff879cf9d7e59ccc148a9fa47f3c637c30887c205f01069e689f0586fb9ef82f4e6b160ce SHA512 139a63dc85ae76a50da6be9a31425f97144e6c7e4a65b0f3009a84eb5c8c9566f6bb331e26590f8aecd5045c4d730ab4e848cf7220f3444a31147b5533c742b3 DIST firefox-68.9.0esr.source.tar.xz 317469120 BLAKE2B f04f8ca1abe802edb6d37c0de5f8024d513331fd80c9b701c93de74cbafc0650b1c0f58e54a2dbe6bee0457698dc386093aab7749c9b0738bf146bfbae6bf4e2 SHA512 98431800d80f7c680aef9eede29df8217810912a319a7f7f8c2e637c43ecd4f4e29223a417afb2a6315e825f979453ff6e6b5a575649aba5cc63ce5956375bb8 @@ -19,6 +22,7 @@ DIST mozjs-52.9.1pre1.tar.bz2 30178574 BLAKE2B 0920432b5140e78297a9bcbccb54268d7 DIST mozjs-60.5.2.tar.bz2 32816585 BLAKE2B 45ac4c9646e1275faf60eeedbf486f802cd106583eb7f640fe2243adc7cbb811dced5cefa94426cceca63468b0112be84078ffcef24cb2b8c1a7b6c8173c0d45 SHA512 5fb73330e7803bdd524fbe7cfdf4e6b72e85d4b22b0c827400317b5d052d1088d36e558ceac376393089e9d03e658b24e69262851fc04a66bbcda47135423dc0 DIST mozjs17.0.0.tar.gz 6778934 BLAKE2B a37debf5079fc4c27bb9edd3172c6e7914f6128fac6ffa97b49ac266c477d0916b180fb68ecd0916a52f935959a83d73254b0ba72b4898adc5e3b85927d17d2a SHA512 39b68aeb9f712f146778d8b68ee795709a1372c8ab893a222af4eb34882427d6f5cf877e743d6cb2f1b4348c194d8f3774f00cb775b03515b34b49560b748be4 DIST spidermonkey-52.0-patches-0.tar.xz 5172 BLAKE2B 8bcf9477de47ef3b882cd3281efa7f77c16ce11fc93f44446a620917adf629fde8290af1dd69f0930a889aacfee3603bf60eb9c1e718a1dfd3e218a1013b6192 SHA512 88ad640fb0efa4972f1b7782bd0abee1751b73914ee51faade93b25c4d8eec64e7693898842a406c49fc2ab43733404efeccb138afb64d2193b9a5eb612578e3 +DIST spidermonkey-52.0-patches-1.tar.xz 3112 BLAKE2B d8f4c44cb2ae290fa51efc4725a2c1b3cd85dd9f04f4ccfa5681ba6df5f37f5d8d4ad6859316a70d0f7647ac2cee014d126f88b7d4ca74a82796f35b141200ef SHA512 5328403e3b9ecd1c456037e7cca374c2453d9331752c48b9466e498e22fd8d4ca6e1804e51140ee0be027fcef7d0c3f26822b1f569305a3b2f03209b7fb15499 DIST spidermonkey-60.0-patches-04.tar.xz 4428 BLAKE2B af78049cd9b3ee6a9b689e6253486c4670fd3b506faade7d745dafaa7af329c0bd15cd35e95528a4c96688230f4803130967fb09b97aae2bda0ce0f73acaaf3e SHA512 fb1326a81512146ba98773d4f7e0c4bc1bff0f076897c13f576fcf63b56f6965efeff633eea9160bca9f9bc4546505901084eabc33bc955de0b7ab3d6334387a DIST spidermonkey-68.6.0-patches-03.tar.xz 4744 BLAKE2B 2a323ea9b6291e427631f986822e779cd3d302b617a827ff020760bb1b19cacbc588d5c76637e386f62b8b64036b0b665bfecae7fdb08477fa5d7fb13630523c SHA512 1465331b61abc9c14245bc6510f1f6996274795853d12d209d7e0a088b37a1a2488cc5cc61a6c2bd0fe05971dad54b19614fb477ec3176b240aa6e0190e89b47 DIST spidermonkey-slot0-patches-01.tar.xz 10488 BLAKE2B 4a5195ac11d1076046424fc10d1416d097fb230cd8b0b28ac8b65d379e0c0518586ced0f48f833dea52b13fb5d300e02664657ab2479bfcc343bc358d394d5d7 SHA512 6c878ed0b50c052989a8b965fed845e9c672b691f4c4b1f98ee82e81a33880e1e6bf1dac8222d71322553282de602a88272dedebbcf50d27967fc172f0a8054a @@ -29,16 +33,18 @@ DIST spidermonkey-slot45-patches-01.tar.xz 5092 BLAKE2B 0188a179fc741ab84a93aae1 EBUILD spidermonkey-1.7.0-r3.ebuild 1525 BLAKE2B bc8709a762377851c1df610f95d4b9c9063a8be171b6eb4900db464b020d053fbff989cd25161590786631f123aa984c7928a8729faafc91c06c4d75da50b4c0 SHA512 45624955dca00e2edd53190e97292f0f2fd5b53fecda15b7397e65c1e9fb4c017cd7858ef0f9cf660cdbeb8bbbf659db02f716b02ae709ce4d35fc7a3dd4ccbb EBUILD spidermonkey-1.8.5-r6.ebuild 4440 BLAKE2B 5f7e466352fc9e4c6493b2119506159bef19fc39e026f528b96973db060c7330a755eb275e8d1dee3c42850493d7d6f85508935c01f30eab93ef18142221e9d6 SHA512 4fff2455f743140b013c4dad85a346eac2321b85a235dfa2f1e5f16f126848b37be3dcd6d45fcefbaf25d446cfed3c33964db51d8744732c9058951eaa1efb00 EBUILD spidermonkey-1.8.5-r7.ebuild 3800 BLAKE2B aeee77c98050d1b3efb7edbfaedc4a9bd26780d1a7a0c06bb7215a526cd2a8dfb0899f1d9ee1283cedd10439e3c7b6cae43724ab7e472a2f7d1c50d3f2f3ff11 SHA512 f4991c454c8cee15e6140038366afdab70ee5b1961e2a8f8bb8a359470c83d40c1cb3d90458acbd0360132389c748a2879ff2d7fcff65d4417b287919562dc61 -EBUILD spidermonkey-1.8.5-r9.ebuild 4003 BLAKE2B 4f06ef3dde6670a087ca0a68ed3a0fba0d4233f90e2039e39189150f420786d98dfb7abbae2ae0bb2fc37619294ee74b226acdaf460c70d8893d50260682c758 SHA512 1e126d85b2b278d195e06e9bae4ab15a4c9aa9bdd416c19dfcb952d352d0b4139dea53cf43af0ab33167ed0c882f2e4720ac9dd22599b911ea537cd53d3391dd -EBUILD spidermonkey-17.0.0-r5.ebuild 3565 BLAKE2B 5691acf4166104ac8d93516b36b4f42c731ed5aac311d2b8236f99be9a115b1753b42215e580fb37a0580870dbf52bc52ad20f5ac97a43dc5caa11bec967c68f SHA512 6291a2dfe0d9c2bb339ac81952406417adb4b87cbd3a9cdec470ee76c7a7f9165438aa5d4739f49ec696842f34ff38829275b47223e630086992f2485f784518 +EBUILD spidermonkey-1.8.5-r9.ebuild 3998 BLAKE2B fc6c2c645f19173699c532321cb594270832d73d68aabf1c152d199dd344abcd1a6f8656c06941c48b5c6739116d98e4cc1d2fb87124763982d7065704613ba9 SHA512 e00e9b001a43fcbb2ebaedb17e692955ab932b4351c14229d0e156b5ab9cdbf4dbe65dddfe972524ed572598ec00773e86d025f9208dc3769ce2c9dec1370e5c +EBUILD spidermonkey-17.0.0-r5.ebuild 3613 BLAKE2B 20de9d6de02d554f0d83b5f097eebd310b535367ae804897cccb34ca9764f19dbce030f296366e87bf2aed9837da95609d13c2f4e5db552c1616675db0c74f98 SHA512 61c069d645f16a1fc1cb98e8baf7c52fa9ff51c86183369655253e760ca5108d5f5cc608e052a3bebcd43a0a9c7530fd1ff870cf0af09dbf44981df096b0f4b7 EBUILD spidermonkey-38.3.0.ebuild 3872 BLAKE2B b0c91e7693a54bc38c1f5067ba870679cbe57bdacfb6fce72deabeef356f55a6e4add8996c38b128cf0c6938abfef87655be7e2bbef0259fd0fa5a688265a67b SHA512 2fc1c3d16c4cc834289b00e8a2bdff2f780f641803300c07ff7e8df73951dfc212d50594642011e2444e5e84c17b4f1c86caa84c7db54d9f962b89fe5fd590d7 EBUILD spidermonkey-45.0.2.ebuild 3978 BLAKE2B f3e2b31ba68559486246701bab34a71dd554f7d50446f5ef328474ad6eaf669bf4580f2d888a949f8426501ad8c5fd48ffc54400b7d687669dcb6e89f31a737b SHA512 31d9de1a4a599f4388f16e11a30da4c0d0aa272211ef6a4f07d14c9b3fd25a7c794cac8731439c20988b3e7d48af66f468aa17df4fdc6fa840b9bba6d2e5b38d EBUILD spidermonkey-52.9.1_pre1-r1.ebuild 4464 BLAKE2B 087b47427dc3bfe0703ef5e573a97430b63220595bb2e35f89f3489cd768b726b640df506fcb9d8b36f1d3559c80cef4253573217f64816caf7674e717dbb4e9 SHA512 ba91245662da115f3bf84b842506af5954b3c85e41a9124eac511f0960118f559ec183e65bc07874563d1d068d35dbcf76b31390608e4cb155cbc2de42d261e2 +EBUILD spidermonkey-52.9.1_pre1-r2.ebuild 4528 BLAKE2B d89054778d6ab9a536781bae52ef6711a066d4463389da4e801038b145eca4f735d3177426149136689d53c6bafb808f5c292be97561f5b9c4d09ddcadb3fc10 SHA512 caf023f7ba0489e1deff21f7a90e368063ddbe300603c46aa1caf1790b1d44bf74e9f15fbc43854a2cee24c14cc62bce13e809c87a12719fdbee206cff6358fc EBUILD spidermonkey-52.9.1_pre1.ebuild 4292 BLAKE2B 36bb6fb32b838f11a18ec536be7f09f45bb1d05cd18a3312eb38512c4c895a17bb2a92721b28eb2e8e937f6112531c3647de1d2dc62637291206367c26350757 SHA512 782df8fdff08dc0f6a984e46be564609fb189014353d18b0f0673000beaded9c5cdba1e63f484ae19f5f6571e66a70b55270adea8876cbcfb1e3d36e5cde285c EBUILD spidermonkey-60.5.2_p0-r2.ebuild 3865 BLAKE2B 81729b277561984a49c27c16c099c105863a6a61198cebe65686787ad180c0b03684398f2f3df31e44edce3e8d35723cc12bb89494ca4f76f76367964af040d7 SHA512 c6dec2360c7faf810b0235f7017a306e9f5a6c935ba081f9646e8195ed3b4aed67d26e8445187c5c3889c858a0ef56abaeecace1894733e589eba11f4769df01 EBUILD spidermonkey-60.5.2_p0-r3.ebuild 4045 BLAKE2B 23dcfb6f020e0b832fb8cb30455d6f2c9be52663961b7ffad74265064a09157dd6c39d2c8957ea57a937c94e3c9bc5623ba6e4d4d7a75073a482c357d4304a0f SHA512 6f7e821c23696220d67ae66a6e06f19b86eef30885909c0c7b6c817bfe412898825db7265b817d06b4d181c2ead503e710142728a1bc7fcdf741a073d94f2c2c EBUILD spidermonkey-60.5.2_p0-r4.ebuild 4172 BLAKE2B 7222b262f9c7d52b28ad215e25c59c1e2d7ab689dbb553b34d2d20ce764de7398042730b1c6a1b74496213292c4e2818f85a9ca18f5e6d2362bd33779b9ab140 SHA512 77e3be2e461e4729596d56d1b84ea36964c65b0fa5708cc93025233a883cff462512a50a70b56bdf8be0fc36d8a1dfdb5cede457a99bcbd680936c979842cdaa EBUILD spidermonkey-68.10.0.ebuild 5940 BLAKE2B 5ac37a755464c99446b47eeb227949d4578aa538ff99141f0db06b52865cfb7bd0d2cf152101bbc4408d111575f944c011c6a8f5d4ee44c1d2677086fc06b8ea SHA512 24c60430fba888dde9a62b0dc50e60d55912ba9cbf854a4d8a6024eb85fd830cbf45d18f39f0242355e5cf428f9d03c2adb0f7899acbe0982cfc95e2234915fe +EBUILD spidermonkey-68.11.0.ebuild 6122 BLAKE2B ed56b6b800a7b40322edba8196d9018d4f6ffef33868d77534d70972adaad7392fd0923e3ae35f1fa2346f1c9880277dd1cd61aeb3ccccd25256efb9fcaefe3d SHA512 758fb0d4b7d2d224fbd4bd3e47e39c659f76728c3662f2056ba35800e27166e8b3bf4f0165848522939f165de5c271e857045758aa0c4a144ff60e9596e8b091 EBUILD spidermonkey-68.7.0.ebuild 5764 BLAKE2B 10992198135286158221c8c0c17b8247a9c21c26f5b1e4f8ee03f986ccd739186fa081d334bd5a9564e8e16c8d2bf829dbbb2674641c2fcdc0f92ccf72e28111 SHA512 d414774437072efd89fb70735ea5c6401ad16121ab2fa797948ee9e50b2bf3d22698a9105d47bb8a27454d8dd9d10327f906a1774c68954ce67fff90dd530e92 EBUILD spidermonkey-68.8.0.ebuild 5764 BLAKE2B f2b33f2a8c1bb2a5087eee95f6f99b50cd58d21bd3230c29a1e4ce8b025a45b73c5e47d0387e952ff7f36486938601ca0776999cf38936e1f0cd6fb2661767dd SHA512 b901798f921e54897e8c462a4d9af376a40b8b038df3b1d60926d62bbed20e3371cb708ea902a29899f802386cd9576c6281be3aba8bf6dbe13aeeb7fb0d6992 EBUILD spidermonkey-68.9.0.ebuild 5764 BLAKE2B f2b33f2a8c1bb2a5087eee95f6f99b50cd58d21bd3230c29a1e4ce8b025a45b73c5e47d0387e952ff7f36486938601ca0776999cf38936e1f0cd6fb2661767dd SHA512 b901798f921e54897e8c462a4d9af376a40b8b038df3b1d60926d62bbed20e3371cb708ea902a29899f802386cd9576c6281be3aba8bf6dbe13aeeb7fb0d6992 diff --git a/dev-lang/spidermonkey/files/spidermonkey-17.0.0-unbreak-clang.patch b/dev-lang/spidermonkey/files/spidermonkey-17.0.0-unbreak-clang.patch new file mode 100644 index 000000000000..ef428e70b52f --- /dev/null +++ b/dev-lang/spidermonkey/files/spidermonkey-17.0.0-unbreak-clang.patch @@ -0,0 +1,32 @@ +commit ad6d8397a05a +Author: Dan Gohman <sunfish@mozilla.com> +Date: Thu May 22 11:15:06 2014 -0700 + + Bug 1012971 - SpiderMonkey: Fix various warnings. r=nbp +--- + js/public/RootingAPI.h | 4 +++- + js/src/configure.in | 1 + + js/src/jit/IonFrames.h | 17 ++++++++--------- + js/src/jit/MIR.h | 12 +++++------- + js/src/jit/PerfSpewer.cpp | 12 ++++++------ + js/src/jit/RegisterSets.h | 2 +- + js/src/jscntxt.h | 2 +- + js/src/jsgcinlines.h | 4 ++-- + js/src/jsopcode.cpp | 2 +- + js/src/jsscript.cpp | 6 +++--- + js/src/shell/js.cpp | 2 +- + js/src/vm/ArrayBufferObject.h | 16 ++++++++-------- + js/src/vm/TypedArrayObject.cpp | 26 +++++++++++++------------- + 13 files changed, 53 insertions(+), 53 deletions(-) + +--- old/js/src/jsopcode.cpp.orig 2013-02-11 22:33:23 UTC ++++ new/js/src/jsopcode.cpp +@@ -6067,7 +6067,7 @@ ExpressionDecompiler::write(JSString *s) + bool + ExpressionDecompiler::quote(JSString *s, uint32_t quote) + { +- return QuoteString(&sprinter, s, quote) >= 0; ++ return QuoteString(&sprinter, s, quote) != NULL; + } + + JSAtom * diff --git a/dev-lang/spidermonkey/spidermonkey-1.8.5-r9.ebuild b/dev-lang/spidermonkey/spidermonkey-1.8.5-r9.ebuild index c22af086cef8..c644ea4bd334 100644 --- a/dev-lang/spidermonkey/spidermonkey-1.8.5-r9.ebuild +++ b/dev-lang/spidermonkey/spidermonkey-1.8.5-r9.ebuild @@ -19,7 +19,7 @@ SRC_URI="https://archive.mozilla.org/pub/js/${TARBALL_P}.tar.gz LICENSE="NPL-1.1" SLOT="0/mozjs185" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~x86 ~x64-macos" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 x86 ~x64-macos" IUSE="debug minimal static-libs test" RESTRICT="!test? ( test )" diff --git a/dev-lang/spidermonkey/spidermonkey-17.0.0-r5.ebuild b/dev-lang/spidermonkey/spidermonkey-17.0.0-r5.ebuild index b5ba36c30932..4bade3f5fcc6 100644 --- a/dev-lang/spidermonkey/spidermonkey-17.0.0-r5.ebuild +++ b/dev-lang/spidermonkey/spidermonkey-17.0.0-r5.ebuild @@ -49,6 +49,7 @@ PATCHES=( "${WORKDIR}"/sm17/${PN}-17-clang.patch "${FILESDIR}"/${PN}-perl-defined-array-check.patch "${WORKDIR}"/sm17/${PN}-17-fix_pointer_dereference.patch + "${FILESDIR}"/${PN}-17.0.0-unbreak-clang.patch ) src_prepare() { diff --git a/dev-lang/spidermonkey/spidermonkey-52.9.1_pre1-r2.ebuild b/dev-lang/spidermonkey/spidermonkey-52.9.1_pre1-r2.ebuild new file mode 100644 index 000000000000..7f328008d901 --- /dev/null +++ b/dev-lang/spidermonkey/spidermonkey-52.9.1_pre1-r2.ebuild @@ -0,0 +1,160 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +WANT_AUTOCONF="2.1" +inherit autotools toolchain-funcs pax-utils mozcoreconf-v5 + +MY_PN="mozjs" +MY_P="${MY_PN}-${PV/_rc/.rc}" +MY_P="${MY_P/_pre/pre}" +DESCRIPTION="Stand-alone JavaScript C++ library" +HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey" +#SRC_URI="https://people.mozilla.org/~sfink/${MY_P}.tar.bz2" +SRC_URI="http://ftp.mozilla.org/pub/spidermonkey/prereleases/52/pre1/mozjs-52.9.1pre1.tar.bz2 -> ${MY_P}.tar.bz2 + https://dev.gentoo.org/~whissi/dist/mozilla/${PN}-52.0-patches-1.tar.xz" + +LICENSE="NPL-1.1" +SLOT="52" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 x86" +IUSE="debug minimal +system-icu test" + +RESTRICT="!test? ( test ) ia64? ( test )" + +S="${WORKDIR}/${MY_P%.rc*}" +BUILDDIR="${S}/jsobj" + +RDEPEND=">=dev-libs/nspr-4.13.1 + virtual/libffi + sys-libs/readline:0= + >=sys-libs/zlib-1.2.3 + system-icu? ( >=dev-libs/icu-58.1:= )" +DEPEND="${RDEPEND}" + +pkg_setup() { + [[ ${MERGE_TYPE} == "binary" ]] || \ + moz_pkgsetup + + export SHELL="${EPREFIX}/bin/bash" +} + +src_prepare() { + # remove patches integrated by upstream + rm -f "${WORKDIR}"/${PN}/0002-build-Add-major-version-to-make-parallel-installable.patch \ + "${WORKDIR}"/${PN}/0005-headers-Fix-symbols-visibility.patch \ + "${WORKDIR}"/${PN}/0007-build-Remove-unnecessary-NSPR-dependency.patch \ + "${WORKDIR}"/${PN}/0008-tests-Skip-on-all-64-bit-archs.patch \ + || die + + eapply "${WORKDIR}/${PN}" + eapply "${FILESDIR}"/moz38-dont-hardcode-libc-soname.patch + eapply "${FILESDIR}"/${PN}-52.0-fix-alpha-bitness.patch + eapply "${FILESDIR}"/${PN}-52.0-gcc9-overflow.patch + + eapply_user + + if [[ ${CHOST} == *-freebsd* ]]; then + # Don't try to be smart, this does not work in cross-compile anyway + ln -sfn "${BUILDDIR}/config/Linux_All.mk" "${S}/config/$(uname -s)$(uname -r).mk" || die + fi + + cd "${S}"/js/src || die + eautoconf old-configure.in + eautoconf + + # remove options that are not correct from js-config + sed '/lib-filenames/d' -i "${S}"/js/src/js-config.in || die "failed to remove invalid option from js-config" + + # there is a default config.cache that messes everything up + rm -f "${S}"/js/src/config.cache || die + + mkdir -p "${BUILDDIR}" || die +} + +src_configure() { + cd "${BUILDDIR}" || die + + tc-export AR RANLIB + + ECONF_SOURCE="${S}/js/src" \ + econf \ + --enable-jemalloc \ + --enable-readline \ + --with-system-nspr \ + --disable-optimize \ + --with-intl-api \ + --with-toolchain-prefix="${CHOST}-" \ + --disable-gold \ + $(use_with system-icu) \ + $(use_enable debug) \ + $(use_enable test tests) \ + XARGS="/usr/bin/xargs" \ + SHELL="${SHELL:-${EPREFIX}/bin/bash}" \ + CC="${CC}" CXX="${CXX}" LD="${LD}" AR="${AR}" RANLIB="${RANLIB}" +} + +cross_make() { + emake \ + CFLAGS="${BUILD_CFLAGS}" \ + CXXFLAGS="${BUILD_CXXFLAGS}" \ + AR="${BUILD_AR}" \ + CC="${BUILD_CC}" \ + CXX="${BUILD_CXX}" \ + RANLIB="${BUILD_RANLIB}" \ + SHELL="${SHELL:-${EPREFIX}/bin/bash}" \ + "$@" +} +src_compile() { + cd "${BUILDDIR}" || die + if tc-is-cross-compiler; then + tc-export_build_env BUILD_{AR,CC,CXX,RANLIB} + cross_make \ + MOZ_OPTIMIZE_FLAGS="" MOZ_DEBUG_FLAGS="" \ + HOST_OPTIMIZE_FLAGS="" MODULE_OPTIMIZE_FLAGS="" \ + MOZ_PGO_OPTIMIZE_FLAGS="" \ + host_jsoplengen host_jskwgen + cross_make \ + MOZ_OPTIMIZE_FLAGS="" MOZ_DEBUG_FLAGS="" HOST_OPTIMIZE_FLAGS="" \ + -C config nsinstall + mv {,native-}host_jskwgen || die + mv {,native-}host_jsoplengen || die + mv config/{,native-}nsinstall || die + sed -i \ + -e 's@./host_jskwgen@./native-host_jskwgen@' \ + -e 's@./host_jsoplengen@./native-host_jsoplengen@' \ + Makefile || die + sed -i -e 's@/nsinstall@/native-nsinstall@' config/config.mk || die + rm -f config/host_nsinstall.o \ + config/host_pathsub.o \ + host_jskwgen.o \ + host_jsoplengen.o || die + fi + + MOZ_MAKE_FLAGS="${MAKEOPTS}" \ + SHELL="${SHELL:-${EPREFIX}/bin/bash}" \ + emake \ + MOZ_OPTIMIZE_FLAGS="" MOZ_DEBUG_FLAGS="" \ + HOST_OPTIMIZE_FLAGS="" MODULE_OPTIMIZE_FLAGS="" \ + MOZ_PGO_OPTIMIZE_FLAGS="" +} + +src_test() { + cd "${BUILDDIR}/js/src/jsapi-tests" || die + ./jsapi-tests || die +} + +src_install() { + cd "${BUILDDIR}" || die + SHELL="${SHELL:-${EPREFIX}/bin/bash}" \ + emake DESTDIR="${D}" install + + if ! use minimal; then + pax-mark m "${ED}"usr/bin/js${SLOT} + else + rm -f "${ED}"usr/bin/js${SLOT} + fi + + # We can't actually disable building of static libraries + # They're used by the tests and in a few other places + find "${D}" -iname '*.a' -o -iname '*.ajs' -delete || die +} diff --git a/dev-lang/spidermonkey/spidermonkey-68.11.0.ebuild b/dev-lang/spidermonkey/spidermonkey-68.11.0.ebuild new file mode 100644 index 000000000000..42affb528472 --- /dev/null +++ b/dev-lang/spidermonkey/spidermonkey-68.11.0.ebuild @@ -0,0 +1,232 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +PYTHON_COMPAT=( python3_{6..9} ) + +WANT_AUTOCONF="2.1" + +inherit autotools check-reqs python-any-r1 + +MY_PN="mozjs" +MY_PV="${PV/_pre*}" # Handle Gentoo pre-releases + +MY_MAJOR=$(ver_cut 1) + +MOZ_ESR="1" + +# Convert the ebuild version to the upstream mozilla version +MOZ_PV="${MY_PV/_alpha/a}" # Handle alpha for SRC_URI +MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI +MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI + +if [[ ${MOZ_ESR} == 1 ]] ; then + # ESR releases have slightly different version numbers + MOZ_PV="${MOZ_PV}esr" +fi + +# Patch version +FIREFOX_PATCHSET="firefox-68.0-patches-15" +SPIDERMONKEY_PATCHSET="${PN}-68.6.0-patches-03" + +MOZ_HTTP_URI="https://archive.mozilla.org/pub/firefox/releases" +MOZ_SRC_URI="${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.xz" + +if [[ "${PV}" == *_rc* ]]; then + MOZ_HTTP_URI="https://archive.mozilla.org/pub/firefox/candidates/${MOZ_PV}-candidates/build${PV##*_rc}" + MOZ_SRC_URI="${MOZ_HTTP_URI}/source/firefox-${MOZ_PV}.source.tar.xz" +fi + +PATCH_URIS=( + https://dev.gentoo.org/~{anarchy,whissi,polynomial-c,axs}/mozilla/patchsets/${FIREFOX_PATCHSET}.tar.xz + https://dev.gentoo.org/~{whissi,polynomial-c,axs}/mozilla/patchsets/${SPIDERMONKEY_PATCHSET}.tar.xz +) + +SRC_URI="${MOZ_SRC_URI} + ${PATCH_URIS[@]}" + +DESCRIPTION="SpiderMonkey is Mozilla's JavaScript engine written in C and C++" +HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey" + +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86" + +SLOT="68" +LICENSE="MPL-2.0" +IUSE="debug +jit test" + +RESTRICT="!test? ( test )" + +BDEPEND="dev-lang/python:2.7 + test? ( ${PYTHON_DEPS} )" + +DEPEND=">=dev-libs/icu-63.1:= + >=dev-libs/nspr-4.21 + sys-libs/readline:0= + >=sys-libs/zlib-1.2.3" +RDEPEND="${DEPEND}" + +S="${WORKDIR}/firefox-${MY_PV}/js/src" + +pkg_pretend() { + if use test ; then + CHECKREQS_DISK_BUILD="6G" + else + CHECKREQS_DISK_BUILD="5G" + fi + + check-reqs_pkg_pretend +} + +pkg_setup() { + if use test ; then + CHECKREQS_DISK_BUILD="6G" + else + CHECKREQS_DISK_BUILD="5G" + fi + + check-reqs_pkg_setup + + use test && python-any-r1_pkg_setup +} + +src_prepare() { + cd ../.. || die + rm "${WORKDIR}"/firefox/2013_avoid_noinline_on_GCC_with_skcms.patch + rm "${WORKDIR}"/firefox/2015_fix_cssparser.patch + eapply "${WORKDIR}"/firefox + eapply "${WORKDIR}"/spidermonkey-patches + + default + + # sed-in toolchain prefix + sed -i \ + -e "s/objdump/${CHOST}-objdump/" \ + python/mozbuild/mozbuild/configure/check_debug_ranges.py \ + || die "sed failed to set toolchain prefix" + + MOZJS_BUILDDIR="${WORKDIR}/build" + mkdir "${MOZJS_BUILDDIR}" || die + + cd "${S}" || die + eautoconf +} + +src_configure() { + tc-export CC CXX LD AR RANLIB + + # backup current active Python version + local PYTHON_OLD=${PYTHON} + + # build system will require Python2.7 + export PYTHON=python2.7 + + cd "${MOZJS_BUILDDIR}" || die + + # ../python/mach/mach/mixin/process.py fails to detect SHELL + export SHELL="${EPREFIX}/bin/bash" + + # forcing system-icu allows us to skip patching bundled ICU for PPC + # and other minor arches + ECONF_SOURCE="${S}" \ + econf \ + --host="${CBUILD:-${CHOST}}" \ + --target="${CHOST}" \ + --disable-jemalloc \ + --disable-optimize \ + --disable-strip \ + --enable-readline \ + --enable-shared-js \ + --with-intl-api \ + --with-system-icu \ + --with-system-nspr \ + --with-system-zlib \ + --with-toolchain-prefix="${CHOST}-" \ + $(use_enable debug) \ + $(use_enable jit ion) \ + $(use_enable test tests) \ + XARGS="${EPREFIX}/usr/bin/xargs" + + # restore PYTHON + export PYTHON=${PYTHON_OLD} +} + +src_compile() { + cd "${MOZJS_BUILDDIR}" || die + default +} + +src_test() { + if "${MOZJS_BUILDDIR}/js/src/js" -e 'print("Hello world!")'; then + einfo "Smoke-test successful, continuing with full test suite" + else + die "Smoke-test failed: did interpreter initialization fail?" + fi + + local -a KNOWN_TESTFAILURES + KNOWN_TESTFAILURES+=( test262/intl402/RelativeTimeFormat/prototype/format/en-us-numeric-auto.js ) + KNOWN_TESTFAILURES+=( non262/Intl/DateTimeFormat/timeZone_backward_links.js ) + KNOWN_TESTFAILURES+=( non262/Intl/DateTimeFormat/tz-environment-variable.js ) + KNOWN_TESTFAILURES+=( non262/Intl/RelativeTimeFormat/format.js ) + KNOWN_TESTFAILURES+=( non262/Date/time-zones-imported.js ) + KNOWN_TESTFAILURES+=( non262/Date/toString-localized.js ) + KNOWN_TESTFAILURES+=( non262/Date/time-zone-path.js ) + KNOWN_TESTFAILURES+=( non262/Date/time-zones-historic.js ) + KNOWN_TESTFAILURES+=( non262/Date/toString-localized-posix.js ) + KNOWN_TESTFAILURES+=( non262/Date/reset-time-zone-cache-same-offset.js ) + + echo "" > "${T}"/known_failures.list || die + + local KNOWN_TESTFAILURE + for KNOWN_TESTFAILURE in ${KNOWN_TESTFAILURES[@]} ; do + echo "${KNOWN_TESTFAILURE}" >> "${T}"/known_failures.list + done + + PYTHONPATH="${S}/tests/lib" \ + ${PYTHON} \ + "${S}"/tests/jstests.py -d -s -t 1800 --wpt=disabled --no-progress \ + --exclude-file="${T}"/known_failures.list \ + "${MOZJS_BUILDDIR}"/js/src/js \ + || die + + if use jit ; then + KNOWN_TESTFAILURES=() + + echo "" > "${T}"/known_failures.list || die + + for KNOWN_TESTFAILURE in ${KNOWN_TESTFAILURES[@]} ; do + echo "${KNOWN_TESTFAILURE}" >> "${T}"/known_failures.list + done + + PYTHONPATH="${S}/tests/lib" \ + ${PYTHON} \ + "${S}"/tests/jstests.py -d -s -t 1800 --wpt=disabled --no-progress \ + --exclude-file="${T}"/known_failures.list \ + "${MOZJS_BUILDDIR}"/js/src/js basic \ + || die + fi +} + +src_install() { + cd "${MOZJS_BUILDDIR}" || die + default + + # fix soname links + pushd "${ED}"/usr/$(get_libdir) &>/dev/null || die + mv lib${MY_PN}-${MY_MAJOR}.so lib${MY_PN}-${MY_MAJOR}.so.0.0.0 || die + ln -s lib${MY_PN}-${MY_MAJOR}.so.0.0.0 lib${MY_PN}-${MY_MAJOR}.so.0 || die + ln -s lib${MY_PN}-${MY_MAJOR}.so.0 lib${MY_PN}-${MY_MAJOR}.so || die + popd &>/dev/null || die + + # remove unneeded files + rm \ + "${ED}"/usr/bin/js${MY_MAJOR}-config \ + "${ED}"/usr/$(get_libdir)/libjs_static.ajs \ + || die + + # fix permissions + chmod -x \ + "${ED}"/usr/$(get_libdir)/pkgconfig/*.pc \ + "${ED}"/usr/include/mozjs-${MY_MAJOR}/js-config.h \ + || die +} diff --git a/dev-lang/squirrel/Manifest b/dev-lang/squirrel/Manifest index 2d4b2dbee3e5..cea75050722b 100644 --- a/dev-lang/squirrel/Manifest +++ b/dev-lang/squirrel/Manifest @@ -1,3 +1,3 @@ -DIST squirrel-3.1.tar.gz 175612 BLAKE2B 48a21b0ecd881dc3bea104e86013c3f3d5a4bc1e590cd67ef7e679e01383b7454aad4ea9b8ecec9b836a0ee44e8c9e470309f9c71050ed6d8deb76caac726aea SHA512 8aec059c801a8f6a1ddb9585cebd51457cfd43743cb0b03494e022fd47392e7b4b88e4703f184f4dcba2be8c0fb756e9b260e2f230e1bd92b37cdcb86d4f1141 -EBUILD squirrel-3.1.ebuild 899 BLAKE2B 8dc403fc9d1832106979b38f63baf4541fc6ac556ec568f42134f8d24d3dc2c59e98b126be88510bba63412fbf9a8ad103cf1055e01477671488737f17015231 SHA512 fb77b462774dd26126e9683e48ead56ed05582e49b4f5ac31fae870010f5c89f038cd51263b137fe16e8196ff3c994bcfacb40cad147f6eae068fae34da4e5c8 +DIST squirrel-3.1_p20200612.tar.gz 181047 BLAKE2B f6965b5e721919c6c33426843a9b73fb27f39b7341763c2ff01421e6b6dce6cb86c6a02df65af9cb2266e8a63d6612c0e857456c4bb6e2546760f937d1979990 SHA512 e9853c92c151ca35e137a91ba4e3c9ad9c4c6d95a22c3686ebbae74cea7c1bf704ec5274d610f9d8158d8662a2b1b1445664f3f33c11689553cfc090a957b204 +EBUILD squirrel-3.1_p20200612.ebuild 969 BLAKE2B 4e3862e00b94df35203c37e6ce4435b91a25af06bae774a777796ec05c5f3531eaa4ada5e02dee16bb53166829a33a9bce2fa0961d86f1ba506c79f777bfc2f9 SHA512 51194be28d9ef6bd7c8d2c3cd374369ddf4fc61112867abeb31655f9d889febd36d938684ea83b80ebbf3faddbbb24240a4d35f56597a4a25baae507f45027ca MISC metadata.xml 395 BLAKE2B 3e9c28568b3d5d1af34d28e3d0da4f765247e2b0b52e9f833ef4c6c9060de915cfff3c8f8d429098a2d49a2bf9ded44d34460de6eaba5799dcf516854094e0f6 SHA512 e7332967d7ada57304e4e9036a61fd27d9fac11dd62a3c4b3627515d4f69cea1b1182132388d480648c469e193fee85bf09220679eb180a9d10c57f78bcb48b4 diff --git a/dev-lang/squirrel/squirrel-3.1.ebuild b/dev-lang/squirrel/squirrel-3.1_p20200612.ebuild index 4a149398eb44..f8d5a1c568fb 100644 --- a/dev-lang/squirrel/squirrel-3.1.ebuild +++ b/dev-lang/squirrel/squirrel-3.1_p20200612.ebuild @@ -1,13 +1,15 @@ -# Copyright 1999-2017 Gentoo Foundation +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 -inherit cmake-utils +inherit cmake vcs-snapshot DESCRIPTION="A interpreted language mainly used for games" HOMEPAGE="http://squirrel-lang.org/" +commit=40050fa249733c85485adde533774ec066d29aca SRC_URI="https://github.com/albertodemichelis/squirrel/archive/v${PV}.tar.gz -> ${P}.tar.gz" +SRC_URI="https://github.com/albertodemichelis/squirrel/archive/${commit}.tar.gz -> ${P}.tar.gz" LICENSE="ZLIB" SLOT="0" @@ -19,19 +21,17 @@ DEPEND="${RDEPEND}" src_configure() { local mycmakeargs=( - -DINSTALL_LIB_DIR="$(get_libdir)" \ - -DINSTALL_INC_DIR=include $(usex static-libs '' -DDISABLE_STATIC=YES) # /usr/bin/sq is used by app-text/ispell # /usr/lib/libsquirrel.so is used by app-shells/squirrelsh -DLONG_OUTPUT_NAMES=YES ) - cmake-utils_src_configure + cmake_src_configure } src_install() { - cmake-utils_src_install + cmake_src_install dodoc HISTORY diff --git a/dev-lang/swi-prolog/Manifest b/dev-lang/swi-prolog/Manifest index 7acb6b9036e5..d70cbe63f9b6 100644 --- a/dev-lang/swi-prolog/Manifest +++ b/dev-lang/swi-prolog/Manifest @@ -1,11 +1,17 @@ DIST swipl-8.0.3.tar.gz 10418553 BLAKE2B d7d381a3070384164f9788060e1c431cc4658dd3e2144fc4c186c9f5395fb7356593766dcaff3ff424f19f917c8a4b56da31b019bd2206a7f794ece549043b76 SHA512 e3a0788befb5499be6f70524ef398dc3282a38891f20519dd23ec92f216fc1919a76656e4b648c3dc9d94e578dc2663439ff976eb52ca0dba5a6594f8d4d3037 DIST swipl-8.2.0.tar.gz 10955744 BLAKE2B 3f1a534a967c86054596fe8ec5fda41ae2ab09d5617de2082f549211dec39674c2d53a210e697a9399be6061f7cea1f0fb241243c9c6226e64aa4ab22c990c85 SHA512 aa0d5e8e8c35e3ff1b6827c9a1ea53de44fa71698b98c974c9e65f2071545d0b71fba7f897327db38791f3cb706072c5dffdb46b4865cc26b9b25ad97522de4b +DIST swipl-8.2.1.tar.gz 10969688 BLAKE2B 754678d9683999b681e62321423df01c4d28ac0aefb5b836134790112a76a2710cc3b433d381f4b11756727037cada026a2778445fe533f51a5543332ca86e82 SHA512 b49fa0832b4bad3b48256c97538172a06e7a4c50b55823dad345360f98055f0702e7a10fb2bfdb636e3fd99557bcb243cfccbaccb7546cb2afd13335f1c09db8 DIST swipl-8.3.0.tar.gz 10955310 BLAKE2B 74fbe2460b4b911281846ee7fffb0ca053e6c1c6650b2b91a19f4a318b6dac7ce7e18be5aeb51fa44ccdec8a8b5f1d48c33fefb50a5975bca56d776d1b633cdc SHA512 07780fff9d44136cf5eda0a60a124d8c34a8ae1fef87bd7a537cbbab63112fe5fbaf816ec724d03b18d4e50c03df6e24b848d20202d1a963f2a56b7cce220c45 DIST swipl-8.3.1.tar.gz 10956733 BLAKE2B 8fab6bb759371af7bf2ed71d7588eeb0694d9f8317a8daff0b663bf883428d0b80ce75196029d87192a82760719bb07086bb11a9969f0700d6dcb232bbd13704 SHA512 8e8e1b65e5e8f7b3ac22e09c9d9700fbdf44ada1470c9a741e3ea98063e096ce859cdfdf0ab1face7c41f1c04b55583ab5a38f91d8fa1fbd26ba1dff199be116 DIST swipl-8.3.2.tar.gz 10971577 BLAKE2B d6dc5b7f4a3133d4fb97b236113c691a4aa4aecaeb9a1f9f2f417fc541a934eb3987ca3413b4d72e14849575aeb6eacd150f1b4e4290e2a62995e1554048509c SHA512 cab637aba1f11be96553bd68a4a7364d407ef600408d607f26ad2bab53f26b1399cd082dce65c1b8c7b73bc63ea16553942234f80d3024ef3ca853457769cda7 +DIST swipl-8.3.3.tar.gz 10983958 BLAKE2B 41243dc83a5bdf17f6b78b18f9da00b691294fcc557c3ae828e4d1d3ac3347019162143243864ff5db78c65ada1a5a07ff0b282bac57c5882f59518a62203771 SHA512 58bb9166e2b4c83b399985bf9b79e6851b76f459e97c6a820872f66b8a211ca490d953ed5815acc939b0b295533e017f31466bacd0be2e0f8d8e2357cf2d2d42 +DIST swipl-8.3.4.tar.gz 10998331 BLAKE2B 3d290b0119a8493f57788afb16c4ee4178a9d295a7e75897f92a13caf35c8638059334984d07c993e03e6eecb8eb37002287b3066c491848fb19ffbdb8e575d1 SHA512 119bcd7229443ef574be0ab420668d1cfab9ad1f90a6b708b3b17a41d7f3af8f8c2493a6c34e7bf0061b300013a0e95a2f1519e313aad081dd5fa7ffa002859e EBUILD swi-prolog-8.0.3.ebuild 2492 BLAKE2B eafab4e38fb1f4cd0102edbd327f8555c09784688ec8ec539edc2c164fb268d522c61da06d1c90bd0ab3d9aff534e6765f5bc518f8f311c5cdd56924651d32ad SHA512 036eae0123ed0286ffef4114c089984500babbb9adbe2acba68f49f2516d749a0ddd5b4eb8b9111746072b87e920401f26366c7b99ad27355580afbf7c3d1307 EBUILD swi-prolog-8.2.0.ebuild 2556 BLAKE2B 43bcdea0f5376225525d556ad229082d7ecbd6adad080a2f2b1facdd464d8ae5eaa3fff057fbfc1f4a42b44b4221138cbfacc8d0de316a83a1dc5eacd76653c4 SHA512 5886a9013cd94f3fac808d7b37dc3d5778359e87de023f55d6088b0a815978c828b9fb7fa08d3c3f5f88b36c6f9df88673ac94fcfd7cc49596ff8fcb47c815c7 +EBUILD swi-prolog-8.2.1.ebuild 2556 BLAKE2B 43bcdea0f5376225525d556ad229082d7ecbd6adad080a2f2b1facdd464d8ae5eaa3fff057fbfc1f4a42b44b4221138cbfacc8d0de316a83a1dc5eacd76653c4 SHA512 5886a9013cd94f3fac808d7b37dc3d5778359e87de023f55d6088b0a815978c828b9fb7fa08d3c3f5f88b36c6f9df88673ac94fcfd7cc49596ff8fcb47c815c7 EBUILD swi-prolog-8.3.0.ebuild 2555 BLAKE2B e58bc85b5e88bef7eb96f3dca8293aed19a5c94407888cab6bafd77d485698efb9f0527a139d57ef526210fe66db3ecc059b774eddfc29a16f4681034172a0cb SHA512 d6469f8f583ebf5e8478d28e35b6bcaa973d2dc9ebef7679eb28c9d923ad461ff6b616d9c70b4183f1e708ce66189ff7a327798d1a00c6aab019ade090d4f017 EBUILD swi-prolog-8.3.1.ebuild 2555 BLAKE2B e58bc85b5e88bef7eb96f3dca8293aed19a5c94407888cab6bafd77d485698efb9f0527a139d57ef526210fe66db3ecc059b774eddfc29a16f4681034172a0cb SHA512 d6469f8f583ebf5e8478d28e35b6bcaa973d2dc9ebef7679eb28c9d923ad461ff6b616d9c70b4183f1e708ce66189ff7a327798d1a00c6aab019ade090d4f017 EBUILD swi-prolog-8.3.2.ebuild 2555 BLAKE2B e58bc85b5e88bef7eb96f3dca8293aed19a5c94407888cab6bafd77d485698efb9f0527a139d57ef526210fe66db3ecc059b774eddfc29a16f4681034172a0cb SHA512 d6469f8f583ebf5e8478d28e35b6bcaa973d2dc9ebef7679eb28c9d923ad461ff6b616d9c70b4183f1e708ce66189ff7a327798d1a00c6aab019ade090d4f017 +EBUILD swi-prolog-8.3.3.ebuild 2553 BLAKE2B 9a4f63d674d380cbae06fd7d67432970e8c5f6f76ddbd77a2ada30dbd0cf8e6f28751cd8fd321bcdb6857a9ee99ba2f1632a8921e68c87ffc168e47ca356f73d SHA512 31745cc81c863c8062743be5960cf253e1c00173c1a11fdd0fa5d90457f94d5c8df615354275af865cd24b982372a35c6c3f45e0fb581e8b20f1183ff3610ef5 +EBUILD swi-prolog-8.3.4.ebuild 2553 BLAKE2B 9a4f63d674d380cbae06fd7d67432970e8c5f6f76ddbd77a2ada30dbd0cf8e6f28751cd8fd321bcdb6857a9ee99ba2f1632a8921e68c87ffc168e47ca356f73d SHA512 31745cc81c863c8062743be5960cf253e1c00173c1a11fdd0fa5d90457f94d5c8df615354275af865cd24b982372a35c6c3f45e0fb581e8b20f1183ff3610ef5 MISC metadata.xml 419 BLAKE2B 6d92e0713ed8da803ff8b6c778e616882af2fdb1426a62ea7bb6a265bbfff9a5c7debb8bf6a25c4ab60ed54a865b79fa3da4a09bc8a9123acf63dcb32107f54e SHA512 f805393c909e4108fe72b94f131d37d45279af1a4b501f9c3ae12d21590ef9c19227ca2a4b2966239ddb84847ce979cfbfcf3f3a2d24b60cb23977c522ff59c3 diff --git a/dev-lang/swi-prolog/swi-prolog-8.2.1.ebuild b/dev-lang/swi-prolog/swi-prolog-8.2.1.ebuild new file mode 100644 index 000000000000..402d9a2877e8 --- /dev/null +++ b/dev-lang/swi-prolog/swi-prolog-8.2.1.ebuild @@ -0,0 +1,103 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit cmake-utils eutils flag-o-matic multilib + +PATCHSET_VER="0" + +DESCRIPTION="versatile implementation of the Prolog programming language" +HOMEPAGE="https://www.swi-prolog.org/" +SRC_URI="https://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" +RESTRICT="!test? ( test )" + +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() { + if [[ -d "${WORKDIR}"/${PV} ]] ; then + eapply "${WORKDIR}"/${PV} + fi + eapply_user + + sed -i -e "s|\(SWIPL_INSTALL_PREFIX\) lib/.*)|\1 $(get_libdir)/swipl)|" CMakeLists.txt || die + + 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_compile() { + XDG_CONFIG_DIRS="${HOME}" \ + XDG_DATA_DIRS="${HOME}" \ + cmake-utils_src_compile +} + +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.3.3.ebuild b/dev-lang/swi-prolog/swi-prolog-8.3.3.ebuild new file mode 100644 index 000000000000..2293c183ae1c --- /dev/null +++ b/dev-lang/swi-prolog/swi-prolog-8.3.3.ebuild @@ -0,0 +1,103 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +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" +RESTRICT="!test? ( test )" + +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() { + if [[ -d "${WORKDIR}"/${PV} ]] ; then + eapply "${WORKDIR}"/${PV} + fi + eapply_user + + sed -i -e "s|\(SWIPL_INSTALL_PREFIX\) lib/.*)|\1 $(get_libdir)/swipl)|" CMakeLists.txt || die + + 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_compile() { + XDG_CONFIG_DIRS="${HOME}" \ + XDG_DATA_DIRS="${HOME}" \ + cmake-utils_src_compile +} + +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.3.4.ebuild b/dev-lang/swi-prolog/swi-prolog-8.3.4.ebuild new file mode 100644 index 000000000000..2293c183ae1c --- /dev/null +++ b/dev-lang/swi-prolog/swi-prolog-8.3.4.ebuild @@ -0,0 +1,103 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +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" +RESTRICT="!test? ( test )" + +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() { + if [[ -d "${WORKDIR}"/${PV} ]] ; then + eapply "${WORKDIR}"/${PV} + fi + eapply_user + + sed -i -e "s|\(SWIPL_INSTALL_PREFIX\) lib/.*)|\1 $(get_libdir)/swipl)|" CMakeLists.txt || die + + 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_compile() { + XDG_CONFIG_DIRS="${HOME}" \ + XDG_DATA_DIRS="${HOME}" \ + cmake-utils_src_compile +} + +src_test() { + USE_PUBLIC_NETWORK_TESTS=false \ + USE_ODBC_TESTS=false \ + cmake-utils_src_test -V +} diff --git a/dev-lang/tcl/Manifest b/dev-lang/tcl/Manifest index 6f65d923b30a..02ea5f2b0bda 100644 --- a/dev-lang/tcl/Manifest +++ b/dev-lang/tcl/Manifest @@ -2,10 +2,11 @@ AUX tcl-8.5.13-multilib.patch 258 BLAKE2B ca0453e8e0f6fdc1302f024ff81a8a6e012d0b AUX tcl-8.5.14-conf.patch 427 BLAKE2B c7d97bccebc45beec003bcf005fab6ed7f544744d81f08778a997b767ea0a60fd07f7b7cbc464ef8252e47717b34c0c42c871331a04740e23caeddbfb351de16 SHA512 e8097acb127966e6f2914c888278acdd9042d881b4d9436853ad7ed2361e8d67a372d4b0b0d5f0333e6bf90220e72df5c5eeffd4b44bc8e94ea9631ddc98cf16 AUX tcl-8.6.8-conf.patch 401 BLAKE2B 278502e983b8c831a2bfe5e61c31d32181558aaebccb2c7a64c52c387ce674ad1543dcedb7b73bfa748e8b40424a59e4696057e3a7f6d0e9f7ddbe838473995f SHA512 8524f80bb54851fc28f1994cbbd9c78756f9f9b1ca31a2f602e2cc557bbb22093bb6cce0ce5099cb90847f3c0ed20503a3d122abb400482869afd2469b3867b8 AUX tcl-8.6.8-libieee.patch 708 BLAKE2B ec8422ce98c68f2dd347bea807059fd8ee94fcd4540bdeb4c8d90cd7f028ff3dbe406ed26593ebd8815e611a1ae40390b4194bf8d3efd1863e8c15d04918681c SHA512 b25d2fbfc753296cef11b1943e19537aaf9f048f033078e516f36bc021107197f77b8f142fc7ace89ae6bdda037871ce7a5c45800ef0bebd04f77a5281bff457 +AUX tcl-8.6.9-include-spec.patch 488 BLAKE2B 06aa49163e8316b409238055d4b2ef67a3b37bdad69a190d39ce46a32dbd38320397b206036428c81e4a001ee0c01ee70f5970f584f919d0e5348000c7f93711 SHA512 ca4fc3ca2b3963d9c1b9b1c716e9c508d8c7aeaaad4b39c502472f3592c60907dbcda656369af371ec6c21f06a6dbc50fa02994a15284bedbdb22616ca9340ba DIST tcl-core8.6.8-src.tar.gz 5887483 BLAKE2B 2b8428652e451b817fe63a811f910001929cdcbc8a8361cdf4f7df8e13cbf9b18c94a91c22c0f09cc46dc0174a66c44774b485539a8f24c14faee6658547b6b8 SHA512 36e6079b582c205e8c89435b361ef96550541357f473aea2ca4e6f01bd84e50ebd1474a75a1ae90640b9a5b392fb01ddfa71f0fa28e409b3569d88c32b4ddb69 DIST tcl-core8.6.9-src.tar.gz 5932010 BLAKE2B ddc0cff12aeeebbf8d1c799db9e154a9ecbe2a2e2afce97c6f15c408301b7a40119bd1c861aa724c178bd9abfe0616c7bcafd9cf6714ed49cf882c9085222cf3 SHA512 306a38a27729b764bae2eae6c4cdd8cd6aee5de6bd924d6a487c8691ee874e4459abc1fa785183c2f6ff4d2d57be98093dd7460c5a668cf994e8f1c31516ae67 DIST tcl8.5.17-src.tar.gz 4546317 BLAKE2B 27031dd3bd5790d03692e77edf91eb7fae8a40d8d193d8c8ce4e79b21f90e683bfc9d5b71764760223987fb163be844e6096d0aea1058b8ce255731d97e2a0ea SHA512 ad5ddb4cd6378fd6bbea8cd85ceb1cf90392b2e8c49fbfb3e4b35c81d3ae3e3f087697c41fcba8c8e06de1d9e7539397e26d58b864dc01ba65abe4ba4efa9568 EBUILD tcl-8.5.17-r1.ebuild 3744 BLAKE2B 29003c3f0cfa65053f5d5cf1edc0efdb715999bd9fd7bac626ed1c48a5d509a9d4f92b638ba7d9b6641d60420c0811a0183fcf60845c9c382e7954b4ae0aff68 SHA512 c7e8b858cbd6aa63d018cf6e7806c166524b32e8fc57ec43688329e8c803546a084d265f681360afd31aa4eebb5e71b47d5459b8beb0f1a643b1dd5960d4320d EBUILD tcl-8.6.8.ebuild 3964 BLAKE2B d8c006d3404047dcb9f9ee120085bbe34889a5bf76dc38ba2ae511d353800ab06f93305d9f95426f3a4af2ab82dab2e15c25d95b81ed655a01790611496b1030 SHA512 715a16e0c5d846007e360fb67ed2168e5fa94411cd696c5ea55a59811499aefd3ec955406aba68447acb6f4f2ad4c64c9c80a80c77c92ae486356dbaab543a5e -EBUILD tcl-8.6.9.ebuild 3883 BLAKE2B 69646211e8b0b956a07d6e055508b66c7d40978e98d565efc70ff1c36483124928695af43280f7f220188da52597c0f59b2b632560a01d07cfd5500f60b8ebdb SHA512 3229f3d64dfc8504af5efc91fe178098a19a8e8b56029c92e499ae94eb4a5a880a6704075e6188fa0933d8348639a1004bbafbe5cb5a53f6fc37e1fe2c8c0b1a +EBUILD tcl-8.6.9-r1.ebuild 3942 BLAKE2B fb6c064cd1b8ef6043f0da8a1b7efa28faee2718c2245a1259207b27eef127d420b1088d0be0d2089d78162478d555ee41ef663f5c435a379d0bdc1c34d2f8ee SHA512 9125bcb8a24b10be93422b89c8e174f42b4b3876d61dac9e144ea4f047d33165c3a81852aa23692333f0a752db7d08ef86fa182b32053a7591975fdae8056e9c MISC metadata.xml 318 BLAKE2B 7ea8e51656c255c3aea3bee8849423604a164efff556974f6032de44d33e38bb0378b69c18821cc76f0284064bc84a1a56e79f522f8d7fb0adc50e2e191b5fca SHA512 61f3feb8311f1babb8a4df8c9fcddaab009ffc6d69248f18cb9e001a1659dfcf47f2699008ab83fb563b3417f6ead8113af20db7e3893f488e8d75bb2a3483cf diff --git a/dev-lang/tcl/files/tcl-8.6.9-include-spec.patch b/dev-lang/tcl/files/tcl-8.6.9-include-spec.patch new file mode 100644 index 000000000000..4b3a1c66d431 --- /dev/null +++ b/dev-lang/tcl/files/tcl-8.6.9-include-spec.patch @@ -0,0 +1,12 @@ +This resolves https://bugs.gentoo.org/731120 +--- a/unix/configure.in ++++ b/unix/configure.in +@@ -895,7 +895,7 @@ TCL_BUILD_STUB_LIB_PATH="`pwd`/${TCL_STUB_LIB_FILE}" + TCL_STUB_LIB_PATH="${TCL_STUB_LIB_DIR}/${TCL_STUB_LIB_FILE}" + + # Install time header dir can be set via --includedir +-eval "TCL_INCLUDE_SPEC=\"-I${includedir}\"" ++eval "TCL_INCLUDE_SPEC=\"\"" + + #------------------------------------------------------------------------ + # tclConfig.sh refers to this by a different name diff --git a/dev-lang/tcl/tcl-8.6.9.ebuild b/dev-lang/tcl/tcl-8.6.9-r1.ebuild index 27b6a02f2715..824abc3e73df 100644 --- a/dev-lang/tcl/tcl-8.6.9.ebuild +++ b/dev-lang/tcl/tcl-8.6.9-r1.ebuild @@ -25,6 +25,7 @@ S="${SPARENT}"/unix PATCHES=( "${FILESDIR}"/${PN}-8.5.13-multilib.patch "${FILESDIR}"/${PN}-8.6.8-conf.patch # Bug 125971 + "${FILESDIR}"/${PN}-8.6.9-include-spec.patch # Bug 731120 ) src_prepare() { diff --git a/dev-lang/tuprolog/Manifest b/dev-lang/tuprolog/Manifest index 274db17ebabf..17c3cc4b7b23 100644 --- a/dev-lang/tuprolog/Manifest +++ b/dev-lang/tuprolog/Manifest @@ -1,15 +1,19 @@ AUX build-2.9.2.xml 2863 BLAKE2B f7c86965edbe1ba6d332b170caab1db5d872174b3b014d25dda12681e8183de1d5de9c3a3a2595d7e6ebd3f44528703f0f7478aa1e4f0fc6b24d182a51f3a88f SHA512 ca4dd0b76ae5a503a07f4c660f8715ff38b1c8e582de52928dad040f42a5fb7a9c774e039d9b7ca4b310b29241da6ab6b43115d741ed6dfbcc8538e384a05673 -AUX build-3.0.1.xml 2968 BLAKE2B e403d134a62504c396842f2fad71cf2aec1786c5d7902d7d08398894eb0dfe709617ae137b2249cf81d5c82f14707364b072990b1cc695b9deb49f6cffb96377 SHA512 4e65ba93141f8c47b2be9f534b05be3c4fa33428df73a23148b8f0f675f617071ad6c14c8aaa1f1ed6de03832f3e26b0b065b2f67834199244fbe55b398f0f20 -AUX build-3.1.0.xml 2968 BLAKE2B e403d134a62504c396842f2fad71cf2aec1786c5d7902d7d08398894eb0dfe709617ae137b2249cf81d5c82f14707364b072990b1cc695b9deb49f6cffb96377 SHA512 4e65ba93141f8c47b2be9f534b05be3c4fa33428df73a23148b8f0f675f617071ad6c14c8aaa1f1ed6de03832f3e26b0b065b2f67834199244fbe55b398f0f20 +AUX build-3.x.xml 2968 BLAKE2B e403d134a62504c396842f2fad71cf2aec1786c5d7902d7d08398894eb0dfe709617ae137b2249cf81d5c82f14707364b072990b1cc695b9deb49f6cffb96377 SHA512 4e65ba93141f8c47b2be9f534b05be3c4fa33428df73a23148b8f0f675f617071ad6c14c8aaa1f1ed6de03832f3e26b0b065b2f67834199244fbe55b398f0f20 AUX tuprolog-2.9.2-no-dynamic-object-test.patch 758 BLAKE2B 8e4ed5b4a5a12e6140c5bdf4074a02061cc82c50b29dfa7d09fc4b2b44b7a6b580abda565d1c1615ae864fcc7fc6a86b6d71e69e3eabec00e2bf92800da06ee8 SHA512 bbaef70b751fe049680826fb82dc46a339f88d7b8062df0865fddb15de2c991939e7e2fae0f889db0c72d802790287487f442316ad6c9e7fa7276b30083b7365 AUX tuprolog-2.9.2-no-ikvm.patch 3929 BLAKE2B 0a6ec1d96c71762fee02b5701e2c445b000fae37eb335ed2a3fecdaabd4f28fbe894b2768a0c01e298accc267ff233e413370e7e744009b364b8b4888635b71f SHA512 a90b55f74841271a6ae9f4143203a9920adee9f7ab32c814d41f8830b7310919fcf035361f87fcd1ba7f7f0f0efe0c0a29ddff704c0d4d14ed2a41b4f7574a74 AUX tuprolog-3.0.1-no-ikvm.patch 4844 BLAKE2B 6518c8821ef06f5b99de779d139b4d23e9e1458622edc267b237e7cb83d64164cd27a321d751423cbd0403a3666096322e80d0fdc6300df51a3ab54d4c1d9412 SHA512 c018d9028a9a4aea6c36057ac2d8b46d41da4961570fff491521c7b6bb816653db54a9e2a1049bd037aede7fa00262089f3787cad4a1e10836aa4f7442c727cd AUX tuprolog-3.0.1-oolibrary-unit-test.patch 762 BLAKE2B 615eb657e9c40a4cec568ae1a8b1868eaaa94d7911386099b65f06dd8002f9d77bce675f79c03db0c900f4b7fb10149b95aa328c582674fefe94ec7af8996d9d SHA512 54e3e9ef7ecc5ff27e687067a057e0c66f37e4d5f268d670210df89435333f7e303e640e12a4afd3c7906e3c52cd2de2466dc81b6cd2113aeb2ee0c7b5ad7a88 AUX tuprolog-3.1.0-no-ikvm.patch 4862 BLAKE2B c5e49ecc13f923157a9287ece06b1ecf1c8a418e449cc9f73ca6a5c2f2bbc7ec567b76ba04a43c6f42fce381941c1f5ee3897a6df20d6600e8d00c550100f9f2 SHA512 ceb45121b4bec54cdd26683ce1e7a63baea9d5c899cd5993d51cbaf8fdbc4b9138f926e164e1dd96eafb2af6b2112c44bf15b1f79c6b9096ac028e02c2dab1a0 +AUX tuprolog-3.1.0-test-suite.patch 518 BLAKE2B 08cfea93b9675826bacb9f7a9970120a02fed2826d8edfa025dfaf4ee03f3bceba32cb197178a9edb1bf2d41354d6ca22c25e3a851578d61735c63c54cd5e6c2 SHA512 58d3ea5c0bb4606c72fa1bb7a1d92974fe9e5229e9674212f8fdbf53d09a345090fda96bf05dd867c01484577bd5f28a56813c8808e072c7c03282afc6d9933a DIST tuprolog-2.9.2.tar.gz 6262268 BLAKE2B 39bbc4dcb2336a713f47252ff6f7d00f15aa0072c4864c2d3e453ec43b2c646f9cdc7a69444e21d9cc20ba283ddee5fd980855811f8f80ba4afe7c37cdd47317 SHA512 831c7390fe33fc57cb01d4b1d61485ac5df1aa8ebf386d5aae5c5d32f7677d46aa5aa6cc0eb1d3bb79989a54f8484ad8b97754b7f75fc21af6116ae170a28316 DIST tuprolog-3.0.1.tar.gz 6326591 BLAKE2B a051eb3f22c01e1c269b167fa7d1daec6e4818229e2035c1140401c38094c53451ea720638adaa6d6fda0ea70daf6f5f1bc9ea84f1e4ba9de9f00ca83529697c SHA512 56fa96f717b5c8e56fd2979f2953744964d844e5abf215456e31309d3d92bde142f9bff55e6442b6de55f219c7f143a275ccf89359ff2f2944459bbc94770afa DIST tuprolog-3.1.0.tar.gz 7201383 BLAKE2B 9d8b610240611cd5b3d0dae104a44c72bb5e7c0512e4dbf3e178204d9d36e461219cd869ca1e16e3054ca3e1ee34d3b2c6fa5c659df16f54e3266c7c826af8d6 SHA512 1093e29a79964cb3991326da14f020cdc8ff64f2444c84dbb6b22aa5c4ecbf48f74dbc26af0af949ccc31020573ce5908684af794db4654fb475efa697a82cbf +DIST tuprolog-3.2.0-gentoo-patchset-0.tar.gz 1813 BLAKE2B 4ed7ffbb752a821a2b2842cfdbc1f4ec92d14b35a1c5a722207b45ec9dbdc44588acc010fb6386e8ed2e7d30d3bc8d425f0f74e8cc953cb7afad8305904e1499 SHA512 454757fc01f3f697510426e7a2a41b57350c1e3f980e381e197616e10eaf88339155226096f1d417397b9bc6f4964a45b3d547c6794ad23a4a014b06212b08f0 +DIST tuprolog-3.2.0.tar.gz 6242286 BLAKE2B 77a3d3f886673aca72fffd9bb60657efcbe7ea5bb0f84eea7a72df513295d572c8116472f8d544240fac676ac9a6a0fcecfc3166e6426ef7d8af80eac4ba8d85 SHA512 e27bd989d66bae26c646cb69670fb75232ebdd18d1dbb9d600f9847921ecd56d17221736b3ec15c087857509272ce89af8bc44924130430db3860870a06bb499 EBUILD tuprolog-2.9.2.ebuild 1301 BLAKE2B 88be118553d16626a1c411017072614889f74b1b23636586c6ccae116cb5561e441c5403e84f606e8ada9cacb7ce2c6f63d3702e149f90e53d336501b33e99aa SHA512 1638295c84bc6c32b695f39b866c299b8375be07d48e061dd08b5d8b6b5763e42477971c6ec3e8bf3af61107997c332b41bf6e7ec24c7089c2ebc4efb6216cd2 -EBUILD tuprolog-3.0.1.ebuild 1349 BLAKE2B f3ef414ffe1e6d0fe734d46d96bda17d1f73ce22d055689dfec42451b1f6c85a51cfb7f6bd3cd5aaa838f06253b63de6aada7d6d2e359a49aafbc71936b6d2bb SHA512 0bb5c9c4e66f3880e2b8cc8822a113332f875f2b961ca2f04106ba91aa446e1a30651a9951ffec0e1707f5ca8528fb49c89b66fd76ea9977d9f40f26186662d1 -EBUILD tuprolog-3.1.0.ebuild 1296 BLAKE2B cc5bcfb25369e7eb60bf65911a0d4c49556eb9e9f1ac91985ac6e0bb4af0996fe35ce39d7b389919b8d801b64eb78647dc49f7afa0c2e858082ac6cc722ee036 SHA512 f4c2b018b1db61ac1447193a1e6964289b046f05a5309c1f2b63d859c25168835122d6cda3af17f310e4a784c2b9a32353bfb68011a37f98ea0710bf126599c5 +EBUILD tuprolog-3.0.1.ebuild 1347 BLAKE2B 93688d55fe1c777e78164da283c356b6371cd4036a6a8d1c917d9801bce70c8278cf0bbfedd9651364a425c7b56b42500cd6f0dd856fbc42742ca955ba630491 SHA512 8137b9e2b4371fc4f3a90a61e3febb4dc4c700db185d9d846f2671fc57353bd6527df8011086ebe6f49cb5ca9890ff9effc06e7c2e1b5689e273c84419f11fa2 +EBUILD tuprolog-3.1.0-r1.ebuild 1362 BLAKE2B a040ed06c1a9aaf8089214f6cdabed345a51d32d9eb259663b9fa590fc6a51232bd8db3f6d3d6f000212965a99d9b36516dade25c061e7cc46b344639062e7c9 SHA512 66a5c8d92a6fa9b0cd845378883524f14942adfcb1c2b817eb0a1c2f03bd2bac90dd2b9c4533c490ac95d36216ff74002a8c36c2da55849bd89ef35cbfbaeedb +EBUILD tuprolog-3.1.0.ebuild 1294 BLAKE2B cd580a5297944c2c897b4adbec8d7e491b0aa44ac62f2413b433933c047f2c3e095d3e0233372919a471a5e662bd6031d79675341e5bf43ce96f286f39512058 SHA512 434ddf51d71489a18298eea3a695b22c8b4be18bec88094750b3822d01b1edb4287a4ff5f9627274dc851a54ce32d7a13800c38c540bfb5509b4bf8a37c74292 +EBUILD tuprolog-3.2.0.ebuild 1442 BLAKE2B b35cbdabc2f62bcf6da14417301b2d00724235478a10c2926d5cd7231af9a4f783ec8ea6ebe85057a18d27c176a21682c9b683ae1e047ff4b8209e3ff2f2a492 SHA512 953441a4b4a231a3aa9b237880a5e626b05ecf936266074a6760010ba858169c1bb7e71d8e8009f0c6eaa4ee46d07f54b5009836f5c1c821c24cb1fcf4095c7b MISC metadata.xml 318 BLAKE2B bbdb9dc3b4feafc27fa6fae1b0740bde801196a214bb96f5815a2a274c89d6208c158c2616e40f17fbef4f8becd03b686410a3ee7b8253cceb70b80bc4b03c5f SHA512 6a43476b9ed9a343488c8a80908e8b4fcb96c75d9a3e6b6c05c22d8ffb87f5c8df8a3cfd2db5297f60236d6740ab0770e68e1acb4c457398a280df9dc4c266a9 diff --git a/dev-lang/tuprolog/files/build-3.1.0.xml b/dev-lang/tuprolog/files/build-3.1.0.xml deleted file mode 100644 index 3b6f5818eaa6..000000000000 --- a/dev-lang/tuprolog/files/build-3.1.0.xml +++ /dev/null @@ -1,110 +0,0 @@ -<?xml version="1.0" ?><project default="jar" name="tuprolog"> - - <!-- some properties --> - <property name="src.dir" value="src"/> - <property name="build.dir" value="build"/> - <property name="docs.dir" value="docs"/> - <property name="dist.dir" value="dist"/> - <property name="test.dir" value="test"/> - <property name="test.build.dir" value="test.build"/> - <property name="jarfile" value="${ant.project.name}.jar"/> - <property file="build.properties"/> - - <path id="compile.classpath"> - <fileset dir="lib" includes="*.jar"/> - <pathelement path="${gentoo.classpath}"/> - </path> - - <!-- init --> - <target name="init"> - <tstamp/> - <mkdir dir="${dist.dir}"/> - <mkdir dir="${build.dir}"/> - <mkdir dir="${docs.dir}"/> - <mkdir dir="${test.build.dir}"/> - </target> - - <!-- compile everything --> - <target depends="init" name="compile"> - <javac deprecation="off" - destdir="${build.dir}" - encoding="ISO-8859-1" - srcdir="${src.dir}" - source="1.8" - target="1.8"> - <classpath> - <path refid="compile.classpath"/> - </classpath> - </javac> - <copy todir="${build.dir}"> - <fileset dir="${src.dir}"> - <exclude name="**/*.java"/> - </fileset> - </copy> - </target> - - <!-- build the jar file --> - <target depends="compile" name="jar"> - <jar basedir="${build.dir}" jarfile="${dist.dir}/${jarfile}"/> - <jar basedir="${build.dir}" jarfile="${dist.dir}/2p.jar"> - <manifest> - <attribute name="Main-Class" value="alice.tuprologx.ide.GUILauncher"/> - <attribute name="Class-Path" value="."/> - </manifest> - <zipgroupfileset dir="lib" includes="*.jar"/> - </jar> - </target> - - <!-- generate javadocs --> - <target depends="init" name="javadoc"> - <javadoc - author="false" - destdir="${docs.dir}" - encoding="ISO-8859-1" - breakiterator="yes" - packagenames="alice.*" - sourcepath="${src.dir}" - use="true" - version="true" - verbose="no" - windowtitle="${ant.project.name} API"> - <classpath> - <path refid="compile.classpath"/> - </classpath> - </javadoc> - </target> - - <!-- clean up --> - <target name="clean"> - <delete dir="${build.dir}"/> - <delete dir="${dist.dir}"/> - <delete dir="${docs.dir}"/> - <delete dir="${test.build.dir}"/> - </target> - - <!-- run testsuite --> - <target name="test"> - <path id="dist.classpath"> - <fileset dir="${dist.dir}"> - <include name="*.jar"/> - </fileset> - </path> - <javac classpathref="dist.classpath" - deprecation="off" - destdir="${test.build.dir}" - encoding="ISO-8859-1" - srcdir="${test.dir}/unit" - source="1.8" - target="1.8"/> - <junit fork="yes" failureproperty="test.failed" printsummary="yes"> - <classpath> - <path refid="dist.classpath"/> - <pathelement path="${test.build.dir}"/> - </classpath> - <formatter type="xml"/> - <test name="alice.tuprolog.TuPrologTestSuite" todir="${test.build.dir}"/> - <test name="alice.tuprolog.ExceptionsTestSuite" todir="${test.build.dir}"/> - </junit> - <fail message="Test failure(s) detected" if="test.failed" /> - </target> -</project> diff --git a/dev-lang/tuprolog/files/build-3.0.1.xml b/dev-lang/tuprolog/files/build-3.x.xml index 3b6f5818eaa6..3b6f5818eaa6 100644 --- a/dev-lang/tuprolog/files/build-3.0.1.xml +++ b/dev-lang/tuprolog/files/build-3.x.xml diff --git a/dev-lang/tuprolog/files/tuprolog-3.1.0-test-suite.patch b/dev-lang/tuprolog/files/tuprolog-3.1.0-test-suite.patch new file mode 100644 index 000000000000..5be70460b6d2 --- /dev/null +++ b/dev-lang/tuprolog/files/tuprolog-3.1.0-test-suite.patch @@ -0,0 +1,13 @@ +--- tuprolog-3.1.0.orig/test/unit/alice/tuprolog/TuPrologTestSuite.java 2020-07-18 15:41:48.236891336 +0200 ++++ tuprolog-3.1.0/test/unit/alice/tuprolog/TuPrologTestSuite.java 2020-07-18 15:42:11.458890364 +0200 +@@ -22,10 +22,8 @@ + ParserTestCase.class, + SpyEventTestCase.class, + VarTestCase.class, +- TestVarIsEqual.class, + JavaDynamicClassLoaderTestCase.class, + ISOIOLibraryTestCase.class, +- SocketLibTestCase.class, + ThreadLibraryTestCase.class + }) + public class TuPrologTestSuite {} diff --git a/dev-lang/tuprolog/tuprolog-3.0.1.ebuild b/dev-lang/tuprolog/tuprolog-3.0.1.ebuild index 8ca8d7d6bb73..411a1f875b0e 100644 --- a/dev-lang/tuprolog/tuprolog-3.0.1.ebuild +++ b/dev-lang/tuprolog/tuprolog-3.0.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=5 @@ -35,7 +35,7 @@ src_prepare() { epatch "${FILESDIR}"/${P}-no-ikvm.patch epatch "${FILESDIR}"/${P}-oolibrary-unit-test.patch - cp "${FILESDIR}"/build-${PV}.xml "${S}"/build.xml || die + cp "${FILESDIR}"/build-3.x.xml "${S}"/build.xml || die } src_compile() { diff --git a/dev-lang/tuprolog/tuprolog-3.1.0-r1.ebuild b/dev-lang/tuprolog/tuprolog-3.1.0-r1.ebuild new file mode 100644 index 000000000000..4f6dd3c988e9 --- /dev/null +++ b/dev-lang/tuprolog/tuprolog-3.1.0-r1.ebuild @@ -0,0 +1,67 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit eutils java-pkg-2 java-ant-2 + +DESCRIPTION="tuProlog is a light-weight Prolog for Internet applications and infrastructures" +HOMEPAGE="http://tuprolog.unibo.it/" +SRC_URI="https://dev.gentoo.org/~keri/distfiles/tuprolog/${P}.tar.gz" + +LICENSE="LGPL-3 BSD" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="doc examples test" +RESTRICT="!test? ( test )" + +RDEPEND=">=virtual/jdk-1.8:= + dev-java/javassist:3 + dev-java/commons-lang:3.1" + +DEPEND="${RDEPEND} + dev-java/ant-core + test? ( + dev-java/ant-junit4:0 + dev-java/junit:4 + dev-java/hamcrest-core:1.3 + )" + +S="${WORKDIR}"/${P} + +EANT_GENTOO_CLASSPATH="javassist:3,commons-lang-3.1" + +src_prepare() { + eapply "${FILESDIR}"/${P}-no-ikvm.patch + eapply "${FILESDIR}"/${P}-test-suite.patch + eapply_user + + cp "${FILESDIR}"/build-3.x.xml "${S}"/build.xml || die +} + +src_compile() { + eant jar $(use_doc) +} + +src_test() { + cd "${S}"/dist + java-pkg_jar-from junit:4 + java-pkg_jar-from hamcrest-core:1.3 + cd "${S}" + ANT_TASKS="ant-junit4" eant test || die "eant test failed" +} + +src_install() { + java-pkg_dojar dist/${PN}.jar + java-pkg_dojar dist/2p.jar + + if use doc ; then + java-pkg_dohtml -r docs/* || die + dodoc doc/tuprolog-guide.pdf + fi + + if use examples ; then + docinto examples + dodoc doc/examples/*.pl + fi +} diff --git a/dev-lang/tuprolog/tuprolog-3.1.0.ebuild b/dev-lang/tuprolog/tuprolog-3.1.0.ebuild index d04f8f0fad18..d22edc7d11f3 100644 --- a/dev-lang/tuprolog/tuprolog-3.1.0.ebuild +++ b/dev-lang/tuprolog/tuprolog-3.1.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=5 @@ -34,7 +34,7 @@ EANT_GENTOO_CLASSPATH="javassist:3,commons-lang-3.1" src_prepare() { epatch "${FILESDIR}"/${P}-no-ikvm.patch - cp "${FILESDIR}"/build-${PV}.xml "${S}"/build.xml || die + cp "${FILESDIR}"/build-3.x.xml "${S}"/build.xml || die } src_compile() { diff --git a/dev-lang/tuprolog/tuprolog-3.2.0.ebuild b/dev-lang/tuprolog/tuprolog-3.2.0.ebuild new file mode 100644 index 000000000000..0dcda3ed7c64 --- /dev/null +++ b/dev-lang/tuprolog/tuprolog-3.2.0.ebuild @@ -0,0 +1,71 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit eutils java-pkg-2 java-ant-2 + +PATCHSET_VER="0" + +DESCRIPTION="tuProlog is a light-weight Prolog for Internet applications and infrastructures" +HOMEPAGE="http://tuprolog.unibo.it/" +SRC_URI="https://dev.gentoo.org/~keri/distfiles/tuprolog/${P}.tar.gz + https://dev.gentoo.org/~keri/distfiles/tuprolog/${P}-gentoo-patchset-${PATCHSET_VER}.tar.gz" + +LICENSE="LGPL-3 BSD" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="doc examples test" +RESTRICT="!test? ( test )" + +RDEPEND=">=virtual/jdk-1.8:= + dev-java/javassist:3 + dev-java/commons-lang:3.1 + dev-java/gson:2.6" + +DEPEND="${RDEPEND} + dev-java/ant-core + test? ( + dev-java/ant-junit4:0 + dev-java/junit:4 + dev-java/hamcrest-core:1.3 + )" + +S="${WORKDIR}"/${P} + +EANT_GENTOO_CLASSPATH="javassist:3,commons-lang:3.1,gson:2.6" + +PATCHES=( "${WORKDIR}/${PV}" ) + +src_prepare() { + default + + cp "${FILESDIR}"/build-3.x.xml "${S}"/build.xml || die +} + +src_compile() { + eant jar $(use_doc) +} + +src_test() { + cd "${S}"/dist + java-pkg_jar-from junit:4 + java-pkg_jar-from hamcrest-core:1.3 + cd "${S}" + ANT_TASKS="ant-junit4" eant test || die "eant test failed" +} + +src_install() { + java-pkg_dojar dist/${PN}.jar + java-pkg_dojar dist/2p.jar + + if use doc ; then + java-pkg_dohtml -r docs/* || die + dodoc doc/tuprolog-guide.pdf + fi + + if use examples ; then + docinto examples + dodoc doc/examples/*.pl + fi +} diff --git a/dev-lang/vala/Manifest b/dev-lang/vala/Manifest index bcb16f345031..f11f8451cd13 100644 --- a/dev-lang/vala/Manifest +++ b/dev-lang/vala/Manifest @@ -6,13 +6,27 @@ DIST vala-0.40.20.tar.xz 3443256 BLAKE2B 4cb53448ffabd29ea2c1411d019aa3749be1133 DIST vala-0.40.23.tar.xz 3462092 BLAKE2B 49eb5f7205d59b0806e807fc0f99771ace4d188222be60f12ef2f503bf8da9116ee7eedb742a6e50400655ae86d1eeb383f3b8ac1832e82f2787b0162c2a4dc2 SHA512 9d5638d44d8a42124fefd02b66454d19cc5d24291ec1525e1fd9c1c8df814d55d2bdc6f5be0168639a8712766cb4828abf3ae70ebfc9e0a72393dd584c25853d DIST vala-0.44.11.tar.xz 3370248 BLAKE2B c111b6175e6339148e30bedc77f62a9ef3ec912ad0621c9303fc5dba31694173b49ccc433d3681303d64a1e442ed9b7b064f27931369cb13fa028bfc25ffa3c9 SHA512 6111699039ed37084426d7603b82dfa9bd497c66ba7353ee22e8541bf15a2cbb634d315593c093f18c20bac877ae34884e5b570cd25237ce12aa73e941c4c540 DIST vala-0.46.10.tar.xz 3417400 BLAKE2B 2f78de3e198f994a148e7ed4c82ef2417b70c19af3ce1874ee80aa7d0160691a50db24ad4898a04520e91d67a41bb508d3854ac2f4d90d2507a5a6558854716c SHA512 ae3734036f6a1b7088bac45083b75a49eee76947219f530493f81aa4ee60807cfa5424cf1b982d8d8f28f56119d66f06a9150b67884d80dd4b6724e152e32e62 +DIST vala-0.46.11.tar.xz 3424380 BLAKE2B b4af8b8345ac14793ba4b67dd2785408aac7c59ee4ea491c6e83c645d25b0cd7b795cdc35edd7f94a7c36eb40acbea7a8d7e08b41370f386f231733a3185e188 SHA512 c2b61f88deb787622680e49078d4caaaf210c19818607ec5b0ccd4564c5127657eeeba24b98c48e78c093456170b7f8aeea232125d702c1d7e624b6af854cec9 +DIST vala-0.46.12.tar.xz 3430948 BLAKE2B ab04291fd1b46053aa3177504ddd954bbc655bfcdb869ffad21b5cbe60cadc2e96dcbe065eb14cfc668c5bc345d1b0509274ecc0b4abfce7b28b89c27b4221c0 SHA512 13a56583743e249724bb0b642e9f22576a16c195b8f61a5dd19d581071217fa73cd73d5db0b44552fe5a5de9710136dd9f0153d3f71377cc5239250a21178af6 +DIST vala-0.46.13.tar.xz 3434196 BLAKE2B 49b7e0b776e185653c1b8c00747a150ceb42cf89006fd55d37e3efd0824dace379d2c72cdb45d481b0545d0b4b37299bc6161b2d083d3221d2d8d8ca7c10d6dc SHA512 6d8d1acebf4706346d5dc986f5c900cfda929ca59ca3f3907cff56892a496bf524b1f74032ac6c8587b236a473124e15c6f83f949636e28141a55c8abeddf004 DIST vala-0.46.7.tar.xz 3402828 BLAKE2B c028875e2c6036a6657244bff62d3a2eec2104c06ec3c993f4d59371f2ec7947cfd36f577d41a2c4ba52f6dd7fb03251cad989e3b2787e2817bd988cc16030ca SHA512 609694c2b773abdd8f47d0e9dd8e1dabac2053f7e0321eac7232b3931b15df30e095541dbb02965fc74f3a29b7562b7a326c56ce7c570e6528f8cfa480363c76 DIST vala-0.48.6.tar.xz 3451004 BLAKE2B 9c880cff885b934e1d82d21285839e040addecb0b3ce81936d5be118a951bd219eea2b8381ea42f13e6e858a1937a3789a3dee6d067735e5ee21eaced38b4646 SHA512 220a916d42cbae3853afdd7c35a72afb446a92fca039d8c660a478fd793686a0c82cbaf90a7c94ae182c1f41eec6df1aedb804013ab38e6e4bcc6d26e40e5375 +DIST vala-0.48.7.tar.xz 3460968 BLAKE2B d2630c3695d3e3915751d74581ed85f493cb1f63c49ef8a2a36c396a86fefee4f9b608d5161f680eff9c4ebee0563fc158b3e1102dbe4ac56e2ab1c2bb938f2e SHA512 93ed6f98ff3be35d327794c5d81f30239c84838d49991b70dced1672f070e4675576da43b7555748d66ecae70102cd422e6af9b562f22bb34b40c07c73bac882 +DIST vala-0.48.8.tar.xz 3470240 BLAKE2B 753c1f4bd1619bb4671f74f3a82ed1919efd5bdfcbc7d2a0797303627214de1b9d22bb9bf4e5d8097773986bf95b27126061cf1ab862837d0ced49e0c860bb90 SHA512 a2a71313161154c3de73fa186728704b2d04ec27eb8cd95954dcfab6287e29c2ee21ecea17bc3e404fcef89c69d6440abca5ae3a526a43c05d3cbafef7ec6e99 +DIST vala-0.48.9.tar.xz 3472540 BLAKE2B 1c85b5d9a1f3819d5b26b521c7da423adee313b2acacb354e324abd9ccf24707dcfcd1a455bab867043f674c4daa5f1a62210847ac271dfce09a288651220f53 SHA512 076fcbea34dde1a84c15e4e2b6acd009c2fea578d48eb28a99a604eb4edc8bb53ac6883ca93ec906968d43d4b341707abc730d6ac8a7b3682a2fa5f0030d5256 +DIST vala-0.49.91.tar.xz 3506404 BLAKE2B 77a4e88d6718112747d6ceb0d70712db818fc175c2c4ef5755bc2c091469e32028d73467a7fda84748b3d29f87fc2f5af9601df8f59d96bcc55ce1bf01b25c7c SHA512 15817b032cce95a360b28a51509259b88e070a7ec6fd7a82452717ef98cd14b1fb60307a5bdd7f4b0627e59575a64c44fb41dad25327cecf8d9a56dbde01a820 EBUILD vala-0.36.20.ebuild 801 BLAKE2B 28a0b45feb749184a38652c09c10e4e10fa89e13ae613394fc89395244249783d5d66e63b9a808a3d2b6d0585f6f03c70d418874ab103032502df7830e64ef0f SHA512 fb5d44393b0ecb62098873f25f16ee9f9f2b268faa5524268923ba88258ada9b6e9d74f3ab4d0d9c11d1972d869ae1e97bae848f4005ebbe29069219a4078d47 EBUILD vala-0.40.20.ebuild 1188 BLAKE2B 9754e3990f8b9d97a9db2d475a8338dbad1ac0daa74118a4966d08709bbb8d713817ae4a163bdc79ef2ce26aad00e633418734a2333a4e2c72b8a10b6a53d814 SHA512 d55a8a950eda084f4d527d090fa768436808922b4adafbd756cdaed73fb7214d9a1f74c77fc1c0d232e3dc6bd7548ded04ff3fbe566c609c7c2677404e757636 EBUILD vala-0.40.23.ebuild 1191 BLAKE2B a82cacb22c6078bfe503634ce4b590600f8a4ca578a5e29dbfda07f5593a72145fb29f0085a357a18216597007e4bafe517a3d60e225db8e26a39efecd31ea81 SHA512 4175518ade299eb51423a7ccfd6011d3ee34b5b3e589059f8503ad0d2a7bb9d86cd6d97ea48ef5c8b3f78c94ea25d558a60d55bc6276cd384ac2ddf0b4563148 EBUILD vala-0.44.11.ebuild 1110 BLAKE2B caa359b186daa04e09b9f3c2185280dfedabd8428ad060304e78cad7fe106ec00c1ec023dcd2f0a7f4239ab5be705413667cfa9683fc30ac88ee2b0b1389e588 SHA512 e14b37221c39f2b50c788c31c28b929251db44e944bae83cb81907c2d304e4b6a9838c7173fc5c74f2ffdecc89d8d0f1ee3cb8d6ffea023491e8f7f92e25c79f EBUILD vala-0.46.10.ebuild 1306 BLAKE2B c808af10340e1c711aa13fcfb1bfbfa0c2e7ef1883c476ae983b2b1a11c4485c4f67a2859dabfb04c02573777a931efb4be90fbc7a1a3992d9b2af2bdc25120a SHA512 761838034394585e4b36bf5ff07590b119dc98af38870357ec93078edf3d1ce9ea7b2098bae6f8da933b6e128cd5e4a18681c372ca98c2cdb1f27c6622972fa9 +EBUILD vala-0.46.11.ebuild 1312 BLAKE2B 4419e7f83b6eff1279058671fbe8ff62e2d1cf562a07f10d22d09e41c5dccf2b3a4b9694c7be6ce2c671efbb258d0e5caa66c5ce5b30edbc04ae534acc4d27b7 SHA512 3edde48c1cef97c1ef17b3c4587bf26763f14ca300017acb178e32fdf40b7dd25ba462b93b870859ec584e3a1ae1bbf935570c0f783df5871194d8ca033c5ae2 +EBUILD vala-0.46.12.ebuild 1312 BLAKE2B 4419e7f83b6eff1279058671fbe8ff62e2d1cf562a07f10d22d09e41c5dccf2b3a4b9694c7be6ce2c671efbb258d0e5caa66c5ce5b30edbc04ae534acc4d27b7 SHA512 3edde48c1cef97c1ef17b3c4587bf26763f14ca300017acb178e32fdf40b7dd25ba462b93b870859ec584e3a1ae1bbf935570c0f783df5871194d8ca033c5ae2 +EBUILD vala-0.46.13.ebuild 1312 BLAKE2B 4419e7f83b6eff1279058671fbe8ff62e2d1cf562a07f10d22d09e41c5dccf2b3a4b9694c7be6ce2c671efbb258d0e5caa66c5ce5b30edbc04ae534acc4d27b7 SHA512 3edde48c1cef97c1ef17b3c4587bf26763f14ca300017acb178e32fdf40b7dd25ba462b93b870859ec584e3a1ae1bbf935570c0f783df5871194d8ca033c5ae2 EBUILD vala-0.46.7.ebuild 1303 BLAKE2B 9eab2887ca949595c7673fb81cd9066bacdcec0a3a3608924ae7d42ce38f8c60609a7ea641d48e379ed882908743d4dd3b62401ec1f97ba12992b5a8ff755efa SHA512 a7d042b51962a8e9d921d2dd04bc4dc6a3e6db4061c894aad3eb60bd142c655f1982f3277224ed85107ee1b20f8d407c2c2f836885f446c9392203cb08b103de EBUILD vala-0.48.6.ebuild 1306 BLAKE2B 7317fc4a69f4a18cdc05c7f8aff2b6f88db9a2d31f94f0166f98f2befe23e386e230b771c3d7f9437ec8bc531e1810ff8f8e791cdc4130507af924e70877faad SHA512 8de37289f6e80d0186ab7cfabce004ab62701f3dc146a433219520a32cd2159ae58066915d1701c84e083a550e57593dd6b8da6acf4532c0d90a9b1dbde8b595 +EBUILD vala-0.48.7.ebuild 1312 BLAKE2B 2a5c969f40a6f1ec8869e5de0e41e16ee78db748069bc0016e9b5b5ecb1dbc2be307995939134fe36a37b94e4a89284478d4704c04f32db9ae9c0a2786b875b8 SHA512 7354b9ffa72a263f0035b6803d6ab4071c7870cc90a1c9a57355ca637392420e78be6d5bedb866f327a522c0f852f1c78ea798ba66c62f8b5753fac9ec21a969 +EBUILD vala-0.48.8.ebuild 1312 BLAKE2B 2a5c969f40a6f1ec8869e5de0e41e16ee78db748069bc0016e9b5b5ecb1dbc2be307995939134fe36a37b94e4a89284478d4704c04f32db9ae9c0a2786b875b8 SHA512 7354b9ffa72a263f0035b6803d6ab4071c7870cc90a1c9a57355ca637392420e78be6d5bedb866f327a522c0f852f1c78ea798ba66c62f8b5753fac9ec21a969 +EBUILD vala-0.48.9.ebuild 1312 BLAKE2B 2a5c969f40a6f1ec8869e5de0e41e16ee78db748069bc0016e9b5b5ecb1dbc2be307995939134fe36a37b94e4a89284478d4704c04f32db9ae9c0a2786b875b8 SHA512 7354b9ffa72a263f0035b6803d6ab4071c7870cc90a1c9a57355ca637392420e78be6d5bedb866f327a522c0f852f1c78ea798ba66c62f8b5753fac9ec21a969 +EBUILD vala-0.49.91.ebuild 1312 BLAKE2B 507ce10645273e1b88b85552e019ac819425b5b483fb0ae2d711d8632e4d6c01da13b9a263455e876634aa9671713dc3b88ec7abe7c8187da3d7430ee75f7d29 SHA512 2d85349c7a4ad95d79e44f4c4fb259edbe4f83e44ceda05ad22d74f2fab9d5d745465537aa6f1a06e771f062a4f19d72f597ede88c4efa52bae9627d60c565e3 MISC metadata.xml 345 BLAKE2B de3110ae281a87f8cb8f6c10d93705f56f0cfed972cd893a063e66c2629150d491498a29b35b4efe19fa5b6baa740f1d989bad440924befc60ef56423096f108 SHA512 163aa55430a075974d504a5bbb71ad9a249cb215de12a82b3141de18bb05f1e0c2078c02c617cf7d98a97c7f8dd407077183754d8c82c77e80dd0d7b2ec38283 diff --git a/dev-lang/vala/vala-0.46.11.ebuild b/dev-lang/vala/vala-0.46.11.ebuild new file mode 100644 index 000000000000..afe20bbc8ab5 --- /dev/null +++ b/dev-lang/vala/vala-0.46.11.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit gnome2 + +DESCRIPTION="Compiler for the GObject type system" +HOMEPAGE="https://wiki.gnome.org/Projects/Vala" + +LICENSE="LGPL-2.1+" +SLOT="0.46" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x86-linux" +IUSE="test valadoc" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-libs/glib-2.48.0:2 + >=dev-libs/vala-common-${PV} + valadoc? ( >=media-gfx/graphviz-2.16 ) + !<net-libs/libsoup-2.66.2[vala] +" # Older libsoup generates a libsoup-2.4.vapi that isn't fine for vala:0.46 anymore +# We block here, so libsoup[vala] consumers wouldn't have to >= it, which would be bad +# as the newer is not required with older vala when those are picked instead of 0.46. +# vala-0.45.91 ships a broken libsoup-2.4.vapi copy too, but that'll be fixed by 0.45.92 +DEPEND="${RDEPEND} + dev-libs/libxslt + sys-devel/flex + virtual/pkgconfig + virtual/yacc + test? ( + dev-libs/dbus-glib + >=dev-libs/glib-2.26:2 + dev-libs/gobject-introspection ) +" + +src_configure() { + # weasyprint enables generation of PDF from HTML + gnome2_src_configure \ + --disable-unversioned \ + $(use_enable valadoc) \ + VALAC=: \ + WEASYPRINT=: +} + +src_install() { + default + find "${D}" -name "*.la" -delete || die +} diff --git a/dev-lang/vala/vala-0.46.12.ebuild b/dev-lang/vala/vala-0.46.12.ebuild new file mode 100644 index 000000000000..afe20bbc8ab5 --- /dev/null +++ b/dev-lang/vala/vala-0.46.12.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit gnome2 + +DESCRIPTION="Compiler for the GObject type system" +HOMEPAGE="https://wiki.gnome.org/Projects/Vala" + +LICENSE="LGPL-2.1+" +SLOT="0.46" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x86-linux" +IUSE="test valadoc" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-libs/glib-2.48.0:2 + >=dev-libs/vala-common-${PV} + valadoc? ( >=media-gfx/graphviz-2.16 ) + !<net-libs/libsoup-2.66.2[vala] +" # Older libsoup generates a libsoup-2.4.vapi that isn't fine for vala:0.46 anymore +# We block here, so libsoup[vala] consumers wouldn't have to >= it, which would be bad +# as the newer is not required with older vala when those are picked instead of 0.46. +# vala-0.45.91 ships a broken libsoup-2.4.vapi copy too, but that'll be fixed by 0.45.92 +DEPEND="${RDEPEND} + dev-libs/libxslt + sys-devel/flex + virtual/pkgconfig + virtual/yacc + test? ( + dev-libs/dbus-glib + >=dev-libs/glib-2.26:2 + dev-libs/gobject-introspection ) +" + +src_configure() { + # weasyprint enables generation of PDF from HTML + gnome2_src_configure \ + --disable-unversioned \ + $(use_enable valadoc) \ + VALAC=: \ + WEASYPRINT=: +} + +src_install() { + default + find "${D}" -name "*.la" -delete || die +} diff --git a/dev-lang/vala/vala-0.46.13.ebuild b/dev-lang/vala/vala-0.46.13.ebuild new file mode 100644 index 000000000000..afe20bbc8ab5 --- /dev/null +++ b/dev-lang/vala/vala-0.46.13.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit gnome2 + +DESCRIPTION="Compiler for the GObject type system" +HOMEPAGE="https://wiki.gnome.org/Projects/Vala" + +LICENSE="LGPL-2.1+" +SLOT="0.46" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x86-linux" +IUSE="test valadoc" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-libs/glib-2.48.0:2 + >=dev-libs/vala-common-${PV} + valadoc? ( >=media-gfx/graphviz-2.16 ) + !<net-libs/libsoup-2.66.2[vala] +" # Older libsoup generates a libsoup-2.4.vapi that isn't fine for vala:0.46 anymore +# We block here, so libsoup[vala] consumers wouldn't have to >= it, which would be bad +# as the newer is not required with older vala when those are picked instead of 0.46. +# vala-0.45.91 ships a broken libsoup-2.4.vapi copy too, but that'll be fixed by 0.45.92 +DEPEND="${RDEPEND} + dev-libs/libxslt + sys-devel/flex + virtual/pkgconfig + virtual/yacc + test? ( + dev-libs/dbus-glib + >=dev-libs/glib-2.26:2 + dev-libs/gobject-introspection ) +" + +src_configure() { + # weasyprint enables generation of PDF from HTML + gnome2_src_configure \ + --disable-unversioned \ + $(use_enable valadoc) \ + VALAC=: \ + WEASYPRINT=: +} + +src_install() { + default + find "${D}" -name "*.la" -delete || die +} diff --git a/dev-lang/vala/vala-0.48.7.ebuild b/dev-lang/vala/vala-0.48.7.ebuild new file mode 100644 index 000000000000..1f7c05bd15c1 --- /dev/null +++ b/dev-lang/vala/vala-0.48.7.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit gnome2 + +DESCRIPTION="Compiler for the GObject type system" +HOMEPAGE="https://wiki.gnome.org/Projects/Vala" + +LICENSE="LGPL-2.1+" +SLOT="0.48" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x86-linux" +IUSE="test valadoc" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-libs/glib-2.48.0:2 + >=dev-libs/vala-common-${PV} + valadoc? ( >=media-gfx/graphviz-2.16 ) + !<net-libs/libsoup-2.66.2[vala] +" # Older libsoup generates a libsoup-2.4.vapi that isn't fine for vala:0.46 anymore +# We block here, so libsoup[vala] consumers wouldn't have to >= it, which would be bad +# as the newer is not required with older vala when those are picked instead of 0.46. +# vala-0.45.91 ships a broken libsoup-2.4.vapi copy too, but that'll be fixed by 0.45.92 +DEPEND="${RDEPEND} + dev-libs/libxslt + sys-devel/flex + virtual/pkgconfig + virtual/yacc + test? ( + dev-libs/dbus-glib + >=dev-libs/glib-2.26:2 + dev-libs/gobject-introspection ) +" + +src_configure() { + # weasyprint enables generation of PDF from HTML + gnome2_src_configure \ + --disable-unversioned \ + $(use_enable valadoc) \ + VALAC=: \ + WEASYPRINT=: +} + +src_install() { + default + find "${D}" -name "*.la" -delete || die +} diff --git a/dev-lang/vala/vala-0.48.8.ebuild b/dev-lang/vala/vala-0.48.8.ebuild new file mode 100644 index 000000000000..1f7c05bd15c1 --- /dev/null +++ b/dev-lang/vala/vala-0.48.8.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit gnome2 + +DESCRIPTION="Compiler for the GObject type system" +HOMEPAGE="https://wiki.gnome.org/Projects/Vala" + +LICENSE="LGPL-2.1+" +SLOT="0.48" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x86-linux" +IUSE="test valadoc" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-libs/glib-2.48.0:2 + >=dev-libs/vala-common-${PV} + valadoc? ( >=media-gfx/graphviz-2.16 ) + !<net-libs/libsoup-2.66.2[vala] +" # Older libsoup generates a libsoup-2.4.vapi that isn't fine for vala:0.46 anymore +# We block here, so libsoup[vala] consumers wouldn't have to >= it, which would be bad +# as the newer is not required with older vala when those are picked instead of 0.46. +# vala-0.45.91 ships a broken libsoup-2.4.vapi copy too, but that'll be fixed by 0.45.92 +DEPEND="${RDEPEND} + dev-libs/libxslt + sys-devel/flex + virtual/pkgconfig + virtual/yacc + test? ( + dev-libs/dbus-glib + >=dev-libs/glib-2.26:2 + dev-libs/gobject-introspection ) +" + +src_configure() { + # weasyprint enables generation of PDF from HTML + gnome2_src_configure \ + --disable-unversioned \ + $(use_enable valadoc) \ + VALAC=: \ + WEASYPRINT=: +} + +src_install() { + default + find "${D}" -name "*.la" -delete || die +} diff --git a/dev-lang/vala/vala-0.48.9.ebuild b/dev-lang/vala/vala-0.48.9.ebuild new file mode 100644 index 000000000000..1f7c05bd15c1 --- /dev/null +++ b/dev-lang/vala/vala-0.48.9.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit gnome2 + +DESCRIPTION="Compiler for the GObject type system" +HOMEPAGE="https://wiki.gnome.org/Projects/Vala" + +LICENSE="LGPL-2.1+" +SLOT="0.48" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x86-linux" +IUSE="test valadoc" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-libs/glib-2.48.0:2 + >=dev-libs/vala-common-${PV} + valadoc? ( >=media-gfx/graphviz-2.16 ) + !<net-libs/libsoup-2.66.2[vala] +" # Older libsoup generates a libsoup-2.4.vapi that isn't fine for vala:0.46 anymore +# We block here, so libsoup[vala] consumers wouldn't have to >= it, which would be bad +# as the newer is not required with older vala when those are picked instead of 0.46. +# vala-0.45.91 ships a broken libsoup-2.4.vapi copy too, but that'll be fixed by 0.45.92 +DEPEND="${RDEPEND} + dev-libs/libxslt + sys-devel/flex + virtual/pkgconfig + virtual/yacc + test? ( + dev-libs/dbus-glib + >=dev-libs/glib-2.26:2 + dev-libs/gobject-introspection ) +" + +src_configure() { + # weasyprint enables generation of PDF from HTML + gnome2_src_configure \ + --disable-unversioned \ + $(use_enable valadoc) \ + VALAC=: \ + WEASYPRINT=: +} + +src_install() { + default + find "${D}" -name "*.la" -delete || die +} diff --git a/dev-lang/vala/vala-0.49.91.ebuild b/dev-lang/vala/vala-0.49.91.ebuild new file mode 100644 index 000000000000..c1a73c907f81 --- /dev/null +++ b/dev-lang/vala/vala-0.49.91.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit gnome2 + +DESCRIPTION="Compiler for the GObject type system" +HOMEPAGE="https://wiki.gnome.org/Projects/Vala" + +LICENSE="LGPL-2.1+" +SLOT="0.50" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x86-linux" +IUSE="test valadoc" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-libs/glib-2.48.0:2 + >=dev-libs/vala-common-${PV} + valadoc? ( >=media-gfx/graphviz-2.16 ) + !<net-libs/libsoup-2.66.2[vala] +" # Older libsoup generates a libsoup-2.4.vapi that isn't fine for vala:0.46 anymore +# We block here, so libsoup[vala] consumers wouldn't have to >= it, which would be bad +# as the newer is not required with older vala when those are picked instead of 0.46. +# vala-0.45.91 ships a broken libsoup-2.4.vapi copy too, but that'll be fixed by 0.45.92 +DEPEND="${RDEPEND} + dev-libs/libxslt + sys-devel/flex + virtual/pkgconfig + virtual/yacc + test? ( + dev-libs/dbus-glib + >=dev-libs/glib-2.26:2 + dev-libs/gobject-introspection ) +" + +src_configure() { + # weasyprint enables generation of PDF from HTML + gnome2_src_configure \ + --disable-unversioned \ + $(use_enable valadoc) \ + VALAC=: \ + WEASYPRINT=: +} + +src_install() { + default + find "${D}" -name "*.la" -delete || die +} diff --git a/dev-lang/xsb/Manifest b/dev-lang/xsb/Manifest index a9310e87300f..cc3c5910e7d7 100644 --- a/dev-lang/xsb/Manifest +++ b/dev-lang/xsb/Manifest @@ -1,8 +1,11 @@ DIST XSB360.tar.gz 12842882 BLAKE2B 734d17a05eb9cb79906a98a77a6562a9445603a884523689c1f2e5e5f9cd4ebfc7182e9ecde9bf9f97c18a90bc4d0d35a2344ac92193d9ee43eb733530571836 SHA512 2ac2f4d4c7501479648b7f618815d4cd996969791a617f2148ef7498cf08bacd67eab298136303b6804cb689129ae3365e1490ec693f2232f9c9f1ad515d9c6c DIST XSB370.tar.gz 12322913 BLAKE2B 64db80704ce656bfaa402d161a94c7b1cd3119a363e848b2c7768665df580b25f1fc43b49b381960d9049d947590b7eb3c846c1a2d6b8a1233d8eb2c4de04f7e SHA512 e2c11b0e5fbbffc2fb6d493e39b7dd74de43509ea1c844f1b3e5d1002c116d6fb8b245905b7b512499e40765a6603d4bef883052bdeec4a3078011c305f85a9f +DIST XSB38.tar.gz 13830570 BLAKE2B 60a6ab38435348d09e2d08bc65ca62c06b38495b72f40a6f3f10fe8d23949bfed0c580c9be0c8304d8a88a53b227bb695870b558d67f33a47543de6c1529180f SHA512 457c691450afcf3ed4e2fffc28deaef0949ef4bbf6fd69b504acc6507fbb144f2c6e427a25da2b6346b15b82e803c02d1b6962af698d16c1fcb9a3d56160ea30 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 +DIST xsb-3.8.0-gentoo-patchset-3.tar.gz 7297 BLAKE2B b3da3b4458e6e97c32fc6318bfa95d9755398572b85fe10a00af327c7cf940e18b8ae49cd2543544b363daf39bdc9db3963487e134c3a1b3a31c05344ed927fd SHA512 96064c2a27c4570b213613b97386bed1dac8082881794b7e18e5ae9ee9c28af78412c793b1fe26a293664ba88236257fbb3804cdda63799fff6fb72ca498b4a4 EBUILD xsb-3.6.0-r1.ebuild 3719 BLAKE2B 3f9ad681420e551346f3d75172e5a1c1bafce0a232d3c5fe2eca73e2c39ed01e82768bac93b6ca79712fe362a9f4c48c4a44daf3461d0aa1a0658a521bd89494 SHA512 52d15ea7b41a1dfca4b12a559a90ba0dab170eb40ec9ac7f6f4cc290396ecb4276b85866fef9dc5fefe20b680a5f282193e876bf1f08ff713d29fbe31064b5d2 EBUILD xsb-3.6.0.ebuild 3701 BLAKE2B 4654f47cf403163d1893f8b2d7d7276d86fae58e15f77143b360787ab5dfd8769165c980cef1d1e4c4a12db3fbba0133bf134fb3db0975d6877367ec959ef8e9 SHA512 ccf6c318f3615a7efa28582c33a79bc27b039821fba01152873eb7e759ab271e8e5c6c3ee0ec335af96bcc6692f489294cd4ed4d990eeac12c366599105b8983 EBUILD xsb-3.7.0-r1.ebuild 3662 BLAKE2B 51219153887a0702feac12dae98ef326a65ec524a32395ec55576c3c1c1ba08031d068b268bf787863b1d2961a82ee15610d4d6dbdf1aa83a0b442c44a604c28 SHA512 146fc16485c95f4b4bcd7ee8735edec39ee76347b9f6b5b8d7690e545ebdfcac141b3cb1ee08067597f815fde6c3c4deee0faffc8e99431a253ab10802420010 +EBUILD xsb-3.8.0.ebuild 3686 BLAKE2B 6cbba76d040b1c7e2724d96ea88d31f2366b39930d0eba1bda145a221b71b73d45f3c4b75daa6d90902a2cf7a48e9c98692ecc7f96623ea07108f9d5a8ac30c1 SHA512 def1f002f37fb5e791ebf842e04b39b0091a23e0fe094fbb6457edb4e8195b96e103f26c878a6bf4d4c020bc09152a0350f1b43ba1616914eedbdf35359c2321 MISC metadata.xml 313 BLAKE2B e6feaeb68ae7144def50a0dff4671b3a9ff070be4d447d45e5b8fbab61940026a5ea9d13c54fb21a808ed67630debf2f55e44d9186e83ea094b26dccab3bf1e6 SHA512 e271dc66bb407abe43ebc5b1fc27c318cc8082b4b14f43f1c33f3453e4a248c83ba2fcc73ba32a63828e172093a00b507f81c629d022799c4cd5a14417fc5ef0 diff --git a/dev-lang/xsb/xsb-3.8.0.ebuild b/dev-lang/xsb/xsb-3.8.0.ebuild new file mode 100644 index 000000000000..eed0e2a02330 --- /dev/null +++ b/dev-lang/xsb/xsb-3.8.0.ebuild @@ -0,0 +1,198 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PATCHSET_VER="3" + +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/XSB38.tar.gz + https://dev.gentoo.org/~keri/distfiles/xsb/${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 \ + --disable-ccmpl \ + --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 + 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/yasm/Manifest b/dev-lang/yasm/Manifest index aa0ccf2f9d69..027943ff1304 100644 --- a/dev-lang/yasm/Manifest +++ b/dev-lang/yasm/Manifest @@ -1,8 +1,5 @@ -AUX yasm-1.2.0-fix_cython_check.patch 790 BLAKE2B 7f3c64676a711c327e4fee6cf1acc75ff6e9d28ebd53e7a5688f85e98e467b6e33a950422ff82a522acd9ec163513b06083e2f7daaf155f6fd81860279bfd142 SHA512 5055949c13c5b4e24863f302f379831fcb26edbcfef48b3f3ee4fe742a95c0db85487a82d72a7e9fc96ad4c9fbeee0423d79032269900aeaf380cc9848ccb07b -DIST yasm-1.2.0-x32.patch.xz 9656 BLAKE2B 61971f72941269e6f9eb30fe58978bdae546eedf8873111ee33f37d63e82135833d8787e23d1f7fb887bf205c1bc9035bb4c8c7f7f0ae13a0cf8b47a8ec9dc7d SHA512 93961d0690c0018a3645bc3d610b1f12172f5311609716fec0efcf8af5d70578a1fc74ab42fcc75f2b75ed8837fa03cbc66ddd6386baeb56a519e7639ff64874 -DIST yasm-1.2.0.tar.gz 1436502 BLAKE2B 7be4f0cb5bd687868451fa6051ce9a621847c4ec87281af2e8e9673a61653f1625b17d41c213b7559b947c3173f29c94c0e397e037e1b339055e06c19ee21fea SHA512 e80ace766e145f6486e76da1a5a9819221b7f406745a02529b4ad220ef7f51ddd67f23d0d8b187bffc9725d9f9742ae5f3a0bb23ee5b2a61153332fb3e286b77 DIST yasm-1.3.0.tar.gz 1492156 BLAKE2B e419a4f9912eb244e9503462dbf0c5e5c95bdfa49583ee205dc4708b42710df8dd2056b2e36e04de04474f4af900916cb64c14a623db1346c3e1cb46a8cc34a5 SHA512 572d3b45568b10f58e48f1188c2d6bcbdd16429c8afaccc8c6d37859b45635e106885d679e41d0bee78c23822108c7ae75aa7475eed5ba58057e0a6fe1b68645 -EBUILD yasm-1.2.0-r1.ebuild 1297 BLAKE2B 58304a9a89220672a1bbee4bf1dbc5e9a06d224aadfd57c6d8a6d76c4a8f446f1525c0e99fd028d1e89dcdf0e349a0105a59da6d41a50717a9c4c62adb55df79 SHA512 d2b6f99c3daae13679c27a5cac1d247b55d233edfb6b9e2105659f2f83ae688425c6b2454532c219b29fbe54bbdb5158d6c0b0f97967aaa58723d1317a7154da +EBUILD yasm-1.3.0-r1.ebuild 1229 BLAKE2B ff9472b50f5a4c7d7d4d67fcff061234d29cf72d2682bc1192f249f2a4989d5a027650fb4d7e1af264a8ae410b6633861d90348f72ae0f846fcbbc1d4859774e SHA512 ffdd0066ec2f101881c248817464daa5dd3c3cab3f89f5eb8beff7f45b7a791484ecfece37fa079aac07c34d70bcf01d3c73fce91e6f768f28c1f163c27b47e5 EBUILD yasm-1.3.0.ebuild 1128 BLAKE2B c8afc041ff08d9cf748c6801b8e4469361c4eb71181f603aca185e154c7bdea3fe3c7de455d53bab6e6481220a07c97f53ea7af402e1e9762467fa21faf2a1f0 SHA512 e7a239a4b2ed31a3eff8ddd00cfa7af7a8abc7147624094d433b9ba409d9df8acf217388a7ec51382aa685b54cd93e93daa0aba2d6e2e91c771450117df8e810 -EBUILD yasm-9999.ebuild 1519 BLAKE2B 09dcf4de46a7015d90b6ebd3427afaed532a49d41c9c9158dd84b1334fece3c64e2e0aec79744b46e87fabf2f9f62553e62c8f8e6652bbe2b43c46eb288220d0 SHA512 a06e1eb56d5ec599be4c9d17c8bd0e439e9a11944e63b89c8c9b42360530d6623a8a1d8304caabdabbd1ad456ba9812b7537db4e6f21fcffb377b5ca2b5c883e +EBUILD yasm-9999.ebuild 1229 BLAKE2B ff9472b50f5a4c7d7d4d67fcff061234d29cf72d2682bc1192f249f2a4989d5a027650fb4d7e1af264a8ae410b6633861d90348f72ae0f846fcbbc1d4859774e SHA512 ffdd0066ec2f101881c248817464daa5dd3c3cab3f89f5eb8beff7f45b7a791484ecfece37fa079aac07c34d70bcf01d3c73fce91e6f768f28c1f163c27b47e5 MISC metadata.xml 261 BLAKE2B c5880d50c9def415b65cade7de2e9f4d5f46c98e4d60cde4c85b45cd0c2b1c65b695b85c6533fb018dc545fbc562284485818cf0b2db3109b088310dc7be53f7 SHA512 d37f5f4f82ac36f200f1df58e8caf7e8bcad7f4d479ad37e0c059d657c50984f44463e765e9cb867c04a2081928f3d603d362930de1f9d326ed4c237a1b0bb0c diff --git a/dev-lang/yasm/files/yasm-1.2.0-fix_cython_check.patch b/dev-lang/yasm/files/yasm-1.2.0-fix_cython_check.patch deleted file mode 100644 index c894f821a2aa..000000000000 --- a/dev-lang/yasm/files/yasm-1.2.0-fix_cython_check.patch +++ /dev/null @@ -1,23 +0,0 @@ -http://tortall.lighthouseapp.com/projects/78676-yasm/tickets/249 - ---- m4/cython.m4 -+++ m4/cython.m4 -@@ -2,13 +2,14 @@ - dnl be set before this function is called. - dnl CYTHON_CHECK_VERSION([MIN-VERSION], [ACTION-IF-TRUE], [ACTION-IF-FALSE]) - AC_DEFUN([CYTHON_CHECK_VERSION], -- [prog="import sys -+ [prog="import re, sys - from Cython.Compiler.Version import version - def get_int(arg): -- try: -- return int(arg) -- except ValueError: -+ matched = re.match(r'\d+', arg) -+ if matched is None: - return 0 -+ else: -+ return int(matched.group(0)) - # split strings by '.' and convert to numeric. Append some zeros - # because we need at least 4 digits for the hex conversion. - ver = map(get_int, version.rstrip('abcdefghijklmnopqrstuvwxyz').split('.')) + [[0, 0, 0]] diff --git a/dev-lang/yasm/yasm-1.2.0-r1.ebuild b/dev-lang/yasm/yasm-1.2.0-r1.ebuild deleted file mode 100644 index 9cd5c98942fb..000000000000 --- a/dev-lang/yasm/yasm-1.2.0-r1.ebuild +++ /dev/null @@ -1,50 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 - -PYTHON_COMPAT=( python2_7 ) - -inherit autotools eutils python-r1 - -DESCRIPTION="An assembler for x86 and x86_64 instruction sets" -HOMEPAGE="http://yasm.tortall.net/" -SRC_URI="http://www.tortall.net/projects/yasm/releases/${P}.tar.gz - mirror://gentoo/${P}-x32.patch.xz" - -LICENSE="BSD-2 BSD || ( Artistic GPL-2 LGPL-2 )" -SLOT="0" -KEYWORDS="-* amd64 ~arm64 x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~x86-solaris" -IUSE="nls python" -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" - -RDEPEND=" - nls? ( virtual/libintl ) - python? ( ${PYTHON_DEPS} )" -DEPEND=" - ${RDEPEND} - nls? ( sys-devel/gettext ) - python? ( >=dev-python/cython-0.14[${PYTHON_USEDEP}] )" - -src_prepare() { - sed -i -e 's:xmlto:&dIsAbLe:' configure.ac || die #459940 - epatch "${WORKDIR}"/${P}-x32.patch #435838 - chmod a+rx modules/objfmts/elf/tests/{gas,}x32/*_test.sh - epatch "${FILESDIR}/${P}-fix_cython_check.patch" - # ksh doesn't grok $(xxx), makes aclocal fail - sed -i -e '1c\#!/usr/bin/env sh' YASM-VERSION-GEN.sh || die - eautoreconf -} - -src_configure() { - use python && python_setup - - econf \ - $(use_enable python) \ - $(use_enable python python-bindings) \ - $(use_enable nls) -} - -src_test() { - emake check -} diff --git a/dev-lang/yasm/yasm-1.3.0-r1.ebuild b/dev-lang/yasm/yasm-1.3.0-r1.ebuild new file mode 100644 index 000000000000..ffd88e2bc667 --- /dev/null +++ b/dev-lang/yasm/yasm-1.3.0-r1.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit toolchain-funcs + +if [[ ${PV} == 9999* ]] ; then + EGIT_REPO_URI="https://github.com/yasm/yasm.git" + inherit autotools git-r3 +else + SRC_URI="http://www.tortall.net/projects/yasm/releases/${P}.tar.gz" + KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris" +fi + +DESCRIPTION="An assembler for x86 and x86_64 instruction sets" +HOMEPAGE="http://yasm.tortall.net/" + +LICENSE="BSD-2 BSD || ( Artistic GPL-2 LGPL-2 )" +SLOT="0" +IUSE="nls" + +BDEPEND=" + nls? ( sys-devel/gettext ) +" +DEPEND=" + nls? ( virtual/libintl ) +" +RDEPEND="${DEPEND} +" + +if [[ ${PV} == 9999* ]]; then + BDEPEND+=" + app-text/xmlto + app-text/docbook-xml-dtd:4.1.2 + dev-lang/python + " +fi + +src_prepare() { + default + + if [[ ${PV} == 9999* ]]; then + eautoreconf + python modules/arch/x86/gen_x86_insn.py || die + fi +} + +src_configure() { + local myconf=( + CC_FOR_BUILD="$(tc-getBUILD_CC)" + CCLD_FOR_BUILD="$(tc-getBUILD_CC)" + --disable-warnerror + --disable-python + --disable-python-bindings + $(use_enable nls) + ) + + econf "${myconf[@]}" +} + +src_test() { + # https://bugs.gentoo.org/718870 + emake -j1 check +} diff --git a/dev-lang/yasm/yasm-9999.ebuild b/dev-lang/yasm/yasm-9999.ebuild index ccd86bc00909..ffd88e2bc667 100644 --- a/dev-lang/yasm/yasm-9999.ebuild +++ b/dev-lang/yasm/yasm-9999.ebuild @@ -2,16 +2,15 @@ # Distributed under the terms of the GNU General Public License v2 EAPI=7 -PYTHON_COMPAT=( python2_7 ) -inherit python-single-r1 toolchain-funcs +inherit toolchain-funcs if [[ ${PV} == 9999* ]] ; then EGIT_REPO_URI="https://github.com/yasm/yasm.git" inherit autotools git-r3 else SRC_URI="http://www.tortall.net/projects/yasm/releases/${P}.tar.gz" - KEYWORDS="-* ~amd64 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~x86-solaris" + KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris" fi DESCRIPTION="An assembler for x86 and x86_64 instruction sets" @@ -19,52 +18,41 @@ HOMEPAGE="http://yasm.tortall.net/" LICENSE="BSD-2 BSD || ( Artistic GPL-2 LGPL-2 )" SLOT="0" -IUSE="nls python" -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" +IUSE="nls" BDEPEND=" nls? ( sys-devel/gettext ) - python? ( - ${PYTHON_DEPS} - $(python_gen_cond_dep '>=dev-python/cython-0.14[${PYTHON_USEDEP}]') - ) " DEPEND=" nls? ( virtual/libintl ) " RDEPEND="${DEPEND} - python? ( ${PYTHON_DEPS} ) " if [[ ${PV} == 9999* ]]; then BDEPEND+=" app-text/xmlto app-text/docbook-xml-dtd:4.1.2 + dev-lang/python " fi -pkg_setup() { - : # Avoid python-single-r1_pkg_setup -} - src_prepare() { default if [[ ${PV} == 9999* ]]; then eautoreconf - ./modules/arch/x86/gen_x86_insn.py || die + python modules/arch/x86/gen_x86_insn.py || die fi } src_configure() { - use python && python_setup - local myconf=( - CC_FOR_BUILD=$(tc-getBUILD_CC) \ - CCLD_FOR_BUILD=$(tc-getBUILD_CC) \ + CC_FOR_BUILD="$(tc-getBUILD_CC)" + CCLD_FOR_BUILD="$(tc-getBUILD_CC)" --disable-warnerror - $(use_enable python) - $(use_enable python python-bindings) + --disable-python + --disable-python-bindings $(use_enable nls) ) diff --git a/dev-lang/zig/Manifest b/dev-lang/zig/Manifest index 9a2d25ad222f..1d679a0485ba 100644 --- a/dev-lang/zig/Manifest +++ b/dev-lang/zig/Manifest @@ -1,8 +1,4 @@ -AUX zig-0.4.0-r1-build-artifacts.patch 2149 BLAKE2B 7d2ac6a9d3cca4a13a4ad932f71d892b18e02e12387593f70ceab87b4ca66faf74bd1f2841ed89adbb4e1e69fe2ccb9fce2071ddcf39e4761aee248d853029f3 SHA512 5a7475eb72d32889db55f5e89a18ce25647ec7e43a716ab2606875fb77e806c05134ee2a482fcc63e152f459d2065635ae9fb75d9228c216b3541d363fd30961 -AUX zig-0.4.0-r1-suppress-warnings.patch 1106 BLAKE2B 3e4cac7325789a3ef954f35814a63e554710afd00d5d913c1ae597913df05409e475cea652b4219f7cf1a8c0233391cf4bd82fec19f98552f66df5dddbb5d4ae SHA512 a401c6c88ab3b1f8e5344502a53b9c2157ff310625735b54d9e91bbc4c726fc5e97ea3a1678cbe1fe6bf7ce3087f6ef68778900c40fb633daee96f2bdef3dc2f -DIST zig-0.4.0.tar.gz 8924757 BLAKE2B 5ca3377f205694ff02360900b49eee7347cdf1cdaef90f1be071eff2610425ed453dfb35928fbe65b25f151b7153ab838c887d362ed3cd746f07833ae42510fd SHA512 423915730bc4ae9a67db3731a96471467826d16e59b87b3541f3e8ed2436f941939f22ccbebdb9a958a195b05360eb65f5be1658b32a01cc8db55c6e581eb039 DIST zig-0.5.0.tar.gz 15743912 BLAKE2B 1a28dffebc24200cf51e1d94ff7203c8de5641e1a299eff58e808a5a8f3257fc8ff771699a0f90733702b90e5536990adc5bf41b973b4ea642081ef788f7a83d SHA512 9fc2ef827421e54e8db98ce3474ba3bbe9119b0b9aa30b4edd78d73277d2384067b5c78f4ebbca350a97ac230131e7f71e6d54c1e75fc74e1833ce6c51c402df -EBUILD zig-0.4.0-r1.ebuild 1250 BLAKE2B 43219ec7395eb7bb27a1d039c97773e76bb0d3b19656b692b804ad5bd991200b89bfd0af7c4b9bdc56f93886533243f3d0cbc411b2d5ce34f63906712a498665 SHA512 d61ca59a5205c8bdcf113ee0f317763808073b9e1480c551b1a71b34fa4e0bc3dc191e8961fdeb0b1ebe283b6f504c9403ca2c138f8afabbbf9200a7729e56f1 EBUILD zig-0.5.0.ebuild 1523 BLAKE2B 1e2d2d2aad86816165f85afb8f1bec72f3cd496506990fc6465959edb4181ebe817f677c31d2aeb192656a0f5bdd388d939757cd2f394e516927e799a134dec8 SHA512 0475818ef4c104fff9a57e197c96bf8423bc4f91d2d08ca80c0af7de0872793c2c07fab57f9d4338a328ab67ef2fe9366fdd7179acf7c44ee5d918fa46b47d42 EBUILD zig-9999.ebuild 1523 BLAKE2B 1e2d2d2aad86816165f85afb8f1bec72f3cd496506990fc6465959edb4181ebe817f677c31d2aeb192656a0f5bdd388d939757cd2f394e516927e799a134dec8 SHA512 0475818ef4c104fff9a57e197c96bf8423bc4f91d2d08ca80c0af7de0872793c2c07fab57f9d4338a328ab67ef2fe9366fdd7179acf7c44ee5d918fa46b47d42 MISC metadata.xml 549 BLAKE2B 1f79da87db9888bc7a1c12163f7ee36dcb37645f5bdeb61034144f76b03b7e464c05f62a8753b0b85fd0ed4fd33ea1066da552d29d28bdd2502918697b3d94a0 SHA512 5867cda8d47f181e93b4aa4763efa5e12d7a6bbf1001e496cd82cc892a43b144a2d8a0a4d26466ac171622acf3590866d9d75a16c8337ae06734d5d4f8b2e908 diff --git a/dev-lang/zig/files/zig-0.4.0-r1-build-artifacts.patch b/dev-lang/zig/files/zig-0.4.0-r1-build-artifacts.patch deleted file mode 100644 index 11868e93a8a4..000000000000 --- a/dev-lang/zig/files/zig-0.4.0-r1-build-artifacts.patch +++ /dev/null @@ -1,61 +0,0 @@ -From 81767a658d07219a402384f98a7553abcbbd2e70 Mon Sep 17 00:00:00 2001 -From: Marc Tiehuis <marctiehuis@gmail.com> -Date: Thu, 18 Apr 2019 18:58:12 +1200 -Subject: [PATCH] Don't install stage2 artifacts - -Fixes #2220. ---- - CMakeLists.txt | 11 ++++++++++- - 1 file changed, 11 insertions(+), 1 deletion(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 1b017a881..047d538e8 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -58,6 +58,16 @@ endif() - - set(ZIG_CPP_LIB_DIR "${CMAKE_BINARY_DIR}/zig_cpp") - -+# Handle multi-config builds and place each into a common lib. The VS generator -+# for example will append a Debug folder by default if not explicitly specified. -+set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${ZIG_CPP_LIB_DIR}) -+set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${ZIG_CPP_LIB_DIR}) -+foreach(CONFIG_TYPE ${CMAKE_CONFIGURATION_TYPES}) -+ string(TOUPPER ${CONFIG_TYPE} CONFIG_TYPE) -+ set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${CONFIG_TYPE} ${ZIG_CPP_LIB_DIR}) -+ set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_${CONFIG_TYPE} ${ZIG_CPP_LIB_DIR}) -+endforeach(CONFIG_TYPE CMAKE_CONFIGURATION_TYPES) -+ - if(ZIG_FORCE_EXTERNAL_LLD) - find_package(lld) - include_directories(${LLVM_INCLUDE_DIRS}) -@@ -253,7 +263,6 @@ else() - embedded_lld_wasm - embedded_lld_lib - ) -- install(TARGETS embedded_lld_elf embedded_lld_coff embedded_lld_mingw embedded_lld_wasm embedded_lld_lib DESTINATION "${ZIG_CPP_LIB_DIR}") - endif() - - # No patches have been applied to SoftFloat-3e - -From 40fe6afdad1a8676b5d3a5dd23d6d50d6ea9f059 Mon Sep 17 00:00:00 2001 -From: Marc Tiehuis <marctiehuis@gmail.com> -Date: Wed, 1 May 2019 17:39:23 +1200 -Subject: [PATCH] Don't install zig_cpp lib for stage2 target - -Missed in last commit. See #2220. ---- - CMakeLists.txt | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 047d538e8..9881ce1de 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -6671,6 +6681,5 @@ - endif() - install(TARGETS zig DESTINATION bin) --install(TARGETS zig_cpp DESTINATION "${ZIG_CPP_LIB_DIR}") - - foreach(file ${ZIG_C_HEADER_FILES}) - get_filename_component(file_dir "${C_HEADERS_DEST}/${file}" DIRECTORY) diff --git a/dev-lang/zig/files/zig-0.4.0-r1-suppress-warnings.patch b/dev-lang/zig/files/zig-0.4.0-r1-suppress-warnings.patch deleted file mode 100644 index 1dc92f88ecb2..000000000000 --- a/dev-lang/zig/files/zig-0.4.0-r1-suppress-warnings.patch +++ /dev/null @@ -1,31 +0,0 @@ -Don't attempt to look for static libraries that we're not going to use. -The warnings are only triggered when building with portage. - ---- a/cmake/Findllvm.cmake -+++ b/cmake/Findllvm.cmake -@@ -50,25 +50,6 @@ - endif() - endfunction(NEED_TARGET) - --if(NOT(CMAKE_BUILD_TYPE STREQUAL "Debug") OR ZIG_STATIC) -- execute_process( -- COMMAND ${LLVM_CONFIG_EXE} --libfiles --link-static -- OUTPUT_VARIABLE LLVM_LIBRARIES_SPACES -- OUTPUT_STRIP_TRAILING_WHITESPACE) -- string(REPLACE " " ";" LLVM_LIBRARIES "${LLVM_LIBRARIES_SPACES}") -- -- execute_process( -- COMMAND ${LLVM_CONFIG_EXE} --system-libs --link-static -- OUTPUT_VARIABLE LLVM_SYSTEM_LIBS_SPACES -- OUTPUT_STRIP_TRAILING_WHITESPACE) -- string(REPLACE " " ";" LLVM_SYSTEM_LIBS "${LLVM_SYSTEM_LIBS_SPACES}") -- -- execute_process( -- COMMAND ${LLVM_CONFIG_EXE} --libdir --link-static -- OUTPUT_VARIABLE LLVM_LIBDIRS_SPACES -- OUTPUT_STRIP_TRAILING_WHITESPACE) -- string(REPLACE " " ";" LLVM_LIBDIRS "${LLVM_LIBDIRS_SPACES}") --endif() - if(NOT LLVM_LIBRARIES) - execute_process( - COMMAND ${LLVM_CONFIG_EXE} --libs diff --git a/dev-lang/zig/zig-0.4.0-r1.ebuild b/dev-lang/zig/zig-0.4.0-r1.ebuild deleted file mode 100644 index bedd9d7ba9b7..000000000000 --- a/dev-lang/zig/zig-0.4.0-r1.ebuild +++ /dev/null @@ -1,49 +0,0 @@ -# Copyright 2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit cmake-utils llvm - -DESCRIPTION="A robust, optimal, and maintainable programming language" -HOMEPAGE="https://ziglang.org/" -LICENSE="MIT" -SLOT="0" -IUSE="+experimental" - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://github.com/ziglang/zig.git" - inherit git-r3 -else - SRC_URI="https://github.com/ziglang/zig/archive/${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~amd64" -fi - -ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430 NVPTX - PowerPC Sparc SystemZ WebAssembly X86 XCore ) -ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" ) -# According to zig's author, zig builds that do not support all targets are not -# supported by the upstream project. -LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]} - -RDEPEND=" - sys-devel/llvm:8 - !experimental? ( sys-devel/llvm:8[${LLVM_TARGET_USEDEPS// /,}] ) -" - -DEPEND="${RDEPEND}" - -PATCHES=( - "${FILESDIR}/zig-0.4.0-r1-build-artifacts.patch" - "${FILESDIR}/zig-0.4.0-r1-suppress-warnings.patch" -) - -LLVM_MAX_SLOT=8 - -src_prepare() { - if use experimental; then - sed -i '/^NEED_TARGET(/d' cmake/Findllvm.cmake || die "unable to modify cmake/Findllvm.cmake" - fi - - cmake-utils_src_prepare -} |