diff options
Diffstat (limited to 'dev-ml')
-rw-r--r-- | dev-ml/Manifest.gz | bin | 29095 -> 29102 bytes | |||
-rw-r--r-- | dev-ml/llvm-ocaml/Manifest | 10 | ||||
-rw-r--r-- | dev-ml/llvm-ocaml/llvm-ocaml-12.0.1.9999.ebuild | 2 | ||||
-rw-r--r-- | dev-ml/llvm-ocaml/llvm-ocaml-12.0.1_rc2.ebuild | 124 | ||||
-rw-r--r-- | dev-ml/llvm-ocaml/llvm-ocaml-12.0.1_rc4.ebuild (renamed from dev-ml/llvm-ocaml/llvm-ocaml-12.0.1_rc1.ebuild) | 2 | ||||
-rw-r--r-- | dev-ml/llvm-ocaml/llvm-ocaml-13.0.0.9999.ebuild | 2 | ||||
-rw-r--r-- | dev-ml/seq/Manifest | 2 | ||||
-rw-r--r-- | dev-ml/seq/seq-0.2.2.ebuild | 15 | ||||
-rw-r--r-- | dev-ml/uutf/Manifest | 2 | ||||
-rw-r--r-- | dev-ml/uutf/uutf-1.0.2.ebuild | 63 |
10 files changed, 89 insertions, 133 deletions
diff --git a/dev-ml/Manifest.gz b/dev-ml/Manifest.gz Binary files differindex 2a78a7a2cf4f..a82b0b4f7dfd 100644 --- a/dev-ml/Manifest.gz +++ b/dev-ml/Manifest.gz diff --git a/dev-ml/llvm-ocaml/Manifest b/dev-ml/llvm-ocaml/Manifest index 24cb66e11fa3..ecc9c3379470 100644 --- a/dev-ml/llvm-ocaml/Manifest +++ b/dev-ml/llvm-ocaml/Manifest @@ -1,13 +1,11 @@ DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3c8a6ff1a1f152f94bfe362c07884339fe571ff7fe903ed3b3deb150b2fa868c387887a0dea2930dc08b81db71a5b1 SHA512 48078fff9293a87f1a973f3348f79506f04c3da774295f5eb67d74dd2d1aa94f0973f8ced3f4ab9e8339902071f82c603b43d5608ad7227046c4da769c5d2151 DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.0.tar.gz 134226215 BLAKE2B f9c3ba8c58571855caa4f206fd285c9b5be66672fb0814cb8bc0964a051f57f5d35013aa1e27cbda502652b37df1ec23474129109e76a42066847860db441dbe SHA512 0cff02155c5ac0d6db2b72d60d9819d5b5dd859663b45f721b1c7540239c2fceb1f57d9173f6870c49de851c242ed8e85c5c6d6577a1f8092a7c5dcd12513b26 -DIST llvmorg-12.0.1-rc1.tar.gz 134261735 BLAKE2B d29510495641c06e6d7a5ac165e6d34e0ba15d1a5b786534e186e341e3a0550cdd3d8a2b61deb3e2bf44c0b0ff8561224bf7f8cebc2ce9415639cb67ceae289e SHA512 4595a26df56eed7d5941240fe92116ad2f1c61639f0f464697c2c530a601347032fbad6802d1fa915ced8574c7b30ef05bc8c0be737784c844d3860892817e6e -DIST llvmorg-12.0.1-rc2.tar.gz 134274147 BLAKE2B 2d3f6ce8d5239cf2e5ea52f4b9020d6a8fedb8d6a4df02ca0d8e4398237f4eb967865e1e65570d16cd191865281b9619a63905c1e1c47b31183b881e97e49867 SHA512 cdebb954016dc92251cd9c6281804f7a36e7bc8c6f101a6817d96cc121aba4d361fb99501c259409a29c90d7749b224be670c41177fe43fa64b730ff294831b8 +DIST llvmorg-12.0.1-rc4.tar.gz 134278617 BLAKE2B d407421c7244bb125151e69e2a341f1af0a0cf8c1fda3b8ae3d4114c3a285d6307620bbf82b22d96d2c7782b37b0975e87be80c24e3ce1fdc71152734be1e8f8 SHA512 1a2c18435a970491eb9fc9381ba66af726e17dcbd5bf6774f9341b1e82fd35f2e5686844743f5317ebd2106b902c39e09aa98102e58a86e290b29102241c949f EBUILD llvm-ocaml-10.0.1.ebuild 2991 BLAKE2B 8f6847347faf4ba2afd66e3b2f8052b27662a9db05ca3d03e5c1ba44ce77ef9731dca1632e21a5bda21ae963531d85db9633f92c33bb9713e0a4b9fdf19ea775 SHA512 2d43e10b0a15ea9b438f93a15bf32575e2d111eea1954c8c36f7ce949774055ee720d448cfd7e08a7627539ca8095d81c8f65e69de926475b8f40d5dbcc75db0 EBUILD llvm-ocaml-11.1.0.ebuild 3054 BLAKE2B 0498a14f644a956cf1a495c4b10687328cdd7044b4cf90e09d51c3c93c3f8e7eae29e93b605e7079975cf9b585e14e0c50c85f6b210d6516395f3278f0c2cace SHA512 28ac245ce6fb5caafec11a501e4a8e7a39bf15bad171b445f9b6faf82b8c3a4416925c42ac022bddf262332ca275de3969735b99e642df8c3b64ab3b7d04f85a EBUILD llvm-ocaml-12.0.0.ebuild 3059 BLAKE2B a3a9b1a45127499e7212d30ce699c7a23229895e0e4ac14fe5f9e02d1bd401350b6f419eada422cf66f9301dc180d16ad126e43267a4ef7db797eab184dc7eb5 SHA512 2208b0de0343ae1d33385226eef2e5bef2185a3799a30ea74094c5b004d7b9d7f97f73a97191f46ecc6d3be5b05d647300e0eab5ee5b4649051a98135b2bfa91 -EBUILD llvm-ocaml-12.0.1.9999.ebuild 3043 BLAKE2B 579eeb6491b8eb85e94b5c3f1efb873d04b7aac517747661a3b34641c47e87997139dc2784e8c2c91461fe2db9f21f25ecc86695b51bbf6b81d5b325b2827df9 SHA512 ae470c4552ec701f5b32f1bc6c3efa9a0c75779dfa48b60b7c5df1bc203be7b4656048452109146fd12c8c7b3b0b8b15bf8ffd47afdb40dde42f8e4b6cda82e3 -EBUILD llvm-ocaml-12.0.1_rc1.ebuild 3043 BLAKE2B 579eeb6491b8eb85e94b5c3f1efb873d04b7aac517747661a3b34641c47e87997139dc2784e8c2c91461fe2db9f21f25ecc86695b51bbf6b81d5b325b2827df9 SHA512 ae470c4552ec701f5b32f1bc6c3efa9a0c75779dfa48b60b7c5df1bc203be7b4656048452109146fd12c8c7b3b0b8b15bf8ffd47afdb40dde42f8e4b6cda82e3 -EBUILD llvm-ocaml-12.0.1_rc2.ebuild 3043 BLAKE2B 579eeb6491b8eb85e94b5c3f1efb873d04b7aac517747661a3b34641c47e87997139dc2784e8c2c91461fe2db9f21f25ecc86695b51bbf6b81d5b325b2827df9 SHA512 ae470c4552ec701f5b32f1bc6c3efa9a0c75779dfa48b60b7c5df1bc203be7b4656048452109146fd12c8c7b3b0b8b15bf8ffd47afdb40dde42f8e4b6cda82e3 -EBUILD llvm-ocaml-13.0.0.9999.ebuild 3048 BLAKE2B 7be8fdfb701b0d1ac20c3fe032d49602394008b102101846bfcf751161fb239c5ef17f37005449ad7cb86095cbf872ca98083800aa216eac98d0af488f4e334e SHA512 bb86ebc2b8d8dd2c3656bbe339f690eaa6b5c8faad7ccebe0fbae48924a96619bccdeaf56805f8d3a0927f38b9228506a60ddab4a2c2ddd50d78e3f78cbd2ed7 +EBUILD llvm-ocaml-12.0.1.9999.ebuild 3044 BLAKE2B 62cddf5891f84c725f8c54f39cd84929548be6dcf16858a88f2037562f32f1b3bbf3d8e50c9df51b4a8316cab6056f1993b8561f68a2cd4a54ad9b9c308f769c SHA512 3a6448a954d6ef26a5b448e0f27c5640adaf9b3c7ef1ecac04d9dab1afac928edfd3f43d51ba5c49ca1e4df2d3d695a2515a945a22c4f4d806627978391e2bfa +EBUILD llvm-ocaml-12.0.1_rc4.ebuild 3044 BLAKE2B 62cddf5891f84c725f8c54f39cd84929548be6dcf16858a88f2037562f32f1b3bbf3d8e50c9df51b4a8316cab6056f1993b8561f68a2cd4a54ad9b9c308f769c SHA512 3a6448a954d6ef26a5b448e0f27c5640adaf9b3c7ef1ecac04d9dab1afac928edfd3f43d51ba5c49ca1e4df2d3d695a2515a945a22c4f4d806627978391e2bfa +EBUILD llvm-ocaml-13.0.0.9999.ebuild 3049 BLAKE2B b98f105c8171cea5be884b9dcaa58487d659ac0142c9d5e92d5b5cc6f6e338e6e8869a4a4aaa05078b4dc7185c87ecaf2fcaf4c5371974080358707801a422bc SHA512 846c778216f2295fa8ee87552317dd9260a87f39261bbee1e81a1d636d500fe57ac48b650bed6711db80ab936cec6a0a8c689a177ff7bf8227ebdfa048cd041b MISC metadata.xml 216 BLAKE2B fe5e49887842aa513fbf1f2e09bed09a884d531fd21bdaeb2d389e8bf590b6c0e7063f0af98f66e2db129308ab0f0804ba327c3c752bbb4c900c59ac109d99aa SHA512 3485598147c953e72e1785693a489a7e7d73d59620b76054db9c0ce95d8bfa0e8ffec29da7f7a9d73a32e5b77eac07ca3306c56a972dc57fd89d477edaebf3d5 diff --git a/dev-ml/llvm-ocaml/llvm-ocaml-12.0.1.9999.ebuild b/dev-ml/llvm-ocaml/llvm-ocaml-12.0.1.9999.ebuild index 3fc4ee845be9..f1bf9cd09e2e 100644 --- a/dev-ml/llvm-ocaml/llvm-ocaml-12.0.1.9999.ebuild +++ b/dev-ml/llvm-ocaml/llvm-ocaml-12.0.1.9999.ebuild @@ -3,7 +3,7 @@ EAPI=7 -PYTHON_COMPAT=( python3_{7..9} ) +PYTHON_COMPAT=( python3_{8..10} ) inherit cmake llvm llvm.org python-any-r1 DESCRIPTION="OCaml bindings for LLVM" diff --git a/dev-ml/llvm-ocaml/llvm-ocaml-12.0.1_rc2.ebuild b/dev-ml/llvm-ocaml/llvm-ocaml-12.0.1_rc2.ebuild deleted file mode 100644 index 3fc4ee845be9..000000000000 --- a/dev-ml/llvm-ocaml/llvm-ocaml-12.0.1_rc2.ebuild +++ /dev/null @@ -1,124 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7..9} ) -inherit cmake llvm llvm.org python-any-r1 - -DESCRIPTION="OCaml bindings for LLVM" -HOMEPAGE="https://llvm.org/" - -# Keep in sync with sys-devel/llvm -ALL_LLVM_EXPERIMENTAL_TARGETS=( ARC CSKY VE ) -ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM AVR BPF Hexagon Lanai Mips MSP430 - NVPTX PowerPC RISCV Sparc SystemZ WebAssembly X86 XCore - "${ALL_LLVM_EXPERIMENTAL_TARGETS[@]}" ) -ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" ) - -LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" -SLOT="0/${PV}" -KEYWORDS="" -IUSE="debug test ${ALL_LLVM_TARGETS[*]}" -REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )" -RESTRICT="!test? ( test )" - -RDEPEND=" - >=dev-lang/ocaml-4.00.0:0= - dev-ml/ocaml-ctypes:= - ~sys-devel/llvm-${PV}:=[debug?] - !sys-devel/llvm[ocaml(-)]" -for x in "${ALL_LLVM_TARGETS[@]}"; do - RDEPEND+=" - ${x}? ( ~sys-devel/llvm-${PV}[${x}] )" -done -unset x - -DEPEND="${RDEPEND}" -BDEPEND=" - dev-lang/perl - dev-ml/findlib - >=dev-util/cmake-3.16 - test? ( dev-ml/ounit2 ) - ${PYTHON_DEPS}" - -LLVM_COMPONENTS=( llvm ) -llvm.org_set_globals - -pkg_setup() { - LLVM_MAX_SLOT=${PV%%.*} llvm_pkg_setup - python-any-r1_pkg_setup -} - -src_configure() { - local libdir=$(get_libdir) - local mycmakeargs=( - -DLLVM_LIBDIR_SUFFIX=${libdir#lib} - - -DBUILD_SHARED_LIBS=OFF - -DLLVM_BUILD_LLVM_DYLIB=ON - -DLLVM_LINK_LLVM_DYLIB=ON - -DLLVM_OCAML_OUT_OF_TREE=ON - - # cheap hack: LLVM combines both anyway, and the only difference - # is that the former list is explicitly verified at cmake time - -DLLVM_TARGETS_TO_BUILD="" - -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}" - -DLLVM_BUILD_TESTS=$(usex test) - - # disable various irrelevant deps and settings - -DLLVM_ENABLE_FFI=OFF - -DLLVM_ENABLE_TERMINFO=OFF - -DHAVE_HISTEDIT_H=NO - -DLLVM_ENABLE_ASSERTIONS=$(usex debug) - -DLLVM_ENABLE_EH=ON - -DLLVM_ENABLE_RTTI=ON - - -DLLVM_HOST_TRIPLE="${CHOST}" - - -DPython3_EXECUTABLE="${PYTHON}" - - # disable go bindings - -DGO_EXECUTABLE=GO_EXECUTABLE-NOTFOUND - - # TODO: ocamldoc - ) - - use test && mycmakeargs+=( - -DLLVM_LIT_ARGS="$(get_lit_flags)" - ) - - # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 - # also: custom rules for OCaml do not work for CPPFLAGS - use debug || local -x CFLAGS="${CFLAGS} -DNDEBUG" - cmake_src_configure - - local llvm_libdir=$(llvm-config --libdir) - # an ugly hack; TODO: figure out a way to pass -L to ocaml... - cd "${BUILD_DIR}/${libdir}" || die - ln -s "${llvm_libdir}"/*.so . || die - - if use test; then - local llvm_bindir=$(llvm-config --bindir) - # Force using system-installed tools. - sed -i -e "/llvm_tools_dir/s@\".*\"@\"${llvm_bindir}\"@" \ - "${BUILD_DIR}"/test/lit.site.cfg.py || die - fi -} - -src_compile() { - cmake_build ocaml_all -} - -src_test() { - # respect TMPDIR! - local -x LIT_PRESERVES_TMP=1 - cmake_build check-llvm-bindings-ocaml -} - -src_install() { - DESTDIR="${D}" \ - cmake -P "${BUILD_DIR}"/bindings/ocaml/cmake_install.cmake || die - - dodoc bindings/ocaml/README.txt -} diff --git a/dev-ml/llvm-ocaml/llvm-ocaml-12.0.1_rc1.ebuild b/dev-ml/llvm-ocaml/llvm-ocaml-12.0.1_rc4.ebuild index 3fc4ee845be9..f1bf9cd09e2e 100644 --- a/dev-ml/llvm-ocaml/llvm-ocaml-12.0.1_rc1.ebuild +++ b/dev-ml/llvm-ocaml/llvm-ocaml-12.0.1_rc4.ebuild @@ -3,7 +3,7 @@ EAPI=7 -PYTHON_COMPAT=( python3_{7..9} ) +PYTHON_COMPAT=( python3_{8..10} ) inherit cmake llvm llvm.org python-any-r1 DESCRIPTION="OCaml bindings for LLVM" diff --git a/dev-ml/llvm-ocaml/llvm-ocaml-13.0.0.9999.ebuild b/dev-ml/llvm-ocaml/llvm-ocaml-13.0.0.9999.ebuild index 279c620cde8a..d082ba50ed27 100644 --- a/dev-ml/llvm-ocaml/llvm-ocaml-13.0.0.9999.ebuild +++ b/dev-ml/llvm-ocaml/llvm-ocaml-13.0.0.9999.ebuild @@ -3,7 +3,7 @@ EAPI=7 -PYTHON_COMPAT=( python3_{7..9} ) +PYTHON_COMPAT=( python3_{8..10} ) inherit cmake llvm llvm.org python-any-r1 DESCRIPTION="OCaml bindings for LLVM" diff --git a/dev-ml/seq/Manifest b/dev-ml/seq/Manifest index 42653807674f..d7c9cef67833 100644 --- a/dev-ml/seq/Manifest +++ b/dev-ml/seq/Manifest @@ -1,3 +1,5 @@ +DIST seq-0.2.2.tar.gz 12240 BLAKE2B 0f7c64e26593b012b60cfdcba02dc2748558c46a72789c77eaff70bcb24ab601895c429aa16dc066151323a48c312a372af5e19cebe0886e9203d55436c09cb1 SHA512 cab0eb4cb6d9788b7cbd7acbefefc15689d706c97ff7f75dd97faf3c21e466af4d0ff110541a24729db587e7172b1a30a3c2967e17ec2e49cbd923360052c07c DIST seq-0.2.tar.gz 12012 BLAKE2B 2321caabaefd98d4237d6ede034007ae5a4295765df4df21d4f0d475f097461992e4619f817ea7ebb20a3023e9d175237d636ed99bb8b1ca7b097c805daffbe8 SHA512 b2571225a18e624b79dad5e1aab91b22e2fda17702f2e23c438b75d2a71e24c55ee8672005f5cc4b17ae79e3b277b1918b71b5d0d674b8b12ea19b3fb2d747cb +EBUILD seq-0.2.2.ebuild 409 BLAKE2B 63ebca61b463b5fd8eade670d9f8a2db5093979644d5e8de59042ab30a7a0ce795dece0c3f2751495ca5215d6c3d85608ec3274c1add1ebb0c42829961cc14a6 SHA512 0b4667195eb9016a46ea4ebb32014fbf8638e4eea0641a9e41b133c6c72f5c251dc54063db4caeb119c82f1b1b48ca2ecfa12baf4d4391631ae721f0aca595ea EBUILD seq-0.2.ebuild 403 BLAKE2B 8c58bed29e07e93c0515e0208748dbc147a8acbfd0607ad2af1c49fb2981916f01601691e27c0f644c980c984627758a5fa50754b8c3e9d2137cefa3376340ef SHA512 b3cc81ebfe29d816a852cf708da2a0991fc10e2c595031c700736206d80d1c78c0dff59c04f56d3ce0862c06d53fd23e8c31f1f6ad8ba63934f20d7a5e2084da MISC metadata.xml 337 BLAKE2B a5226f08e396ac186d438cd68a253580cc27d9bb0748e8afc49b7f2eafc3eda15d6add9c16bac268b75fd7cbb0ab160a1be8fe56e0ed3d902184157d581ab1c1 SHA512 5b913612f28ef5235ce57b6ec586f1b20d0ccaadfc760fe7cf8e186aeb4be261f8cd17f045de61edfda6c31f347ed965653c917b23523e3fd8d0071a3e845b4b diff --git a/dev-ml/seq/seq-0.2.2.ebuild b/dev-ml/seq/seq-0.2.2.ebuild new file mode 100644 index 000000000000..0027a100131d --- /dev/null +++ b/dev-ml/seq/seq-0.2.2.ebuild @@ -0,0 +1,15 @@ +# Copyright 2020-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit dune + +DESCRIPTION="Compatibility package for the standard OCaml iterator type" +HOMEPAGE="https://github.com/c-cube/seq" +SRC_URI="https://github.com/c-cube/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" +IUSE="+ocamlopt" diff --git a/dev-ml/uutf/Manifest b/dev-ml/uutf/Manifest index ddcef2b5e763..b750f058df47 100644 --- a/dev-ml/uutf/Manifest +++ b/dev-ml/uutf/Manifest @@ -1,3 +1,5 @@ DIST uutf-1.0.1.tbz 22215 BLAKE2B 58cbb8db94024ddaa02c213df4e5321ad33513370c6d1d54ac09f57821df8ac3b330c2659f9aeb0e78dfd15d2f50be714a5a5d6e6d3dcc3f81539c1a6c8c3771 SHA512 35cbee8c82a566f2fe4fcd549936d4c4dc67f5b71bfd3ea97ff25d7cf21cfb77cb5ee313c95ad26a2a61bb84aa48c300bbb79a1a7128c6161e9abe9c390a7d18 +DIST uutf-1.0.2.tbz 22420 BLAKE2B 8391f6c3cde40db3fa86b9243d8ea8fb52409aa958d1020f302d602bf7c06c44b7d93f7a6a64a1b0964c7bb5856e15178957bba48102dbd36d8efe9581db3787 SHA512 5f2dbe78eaf73a292438d84c7185c839a7ac13cee9616a7b5006990314c6a0d42b212854cc2e89d815d3c45804f94bb40af75ecb60da7092887d8dc21e968bdd EBUILD uutf-1.0.1.ebuild 1589 BLAKE2B 97df4d6bd39a80eaa5e1cf303b2a7ce5735cf4df7564282b6d0b98b23f6f51063c20f120eda76220aae96c80a95bdb9523bb3494149ea5cb91572b60962b465e SHA512 c56f090492fab0564607595faa7e5765ffd7e13d3bda71e0ed99841bb01183c286b7e7c552e5766626674169bcf88604a6ff9ffa720d21fdd46bd8e38cbc1f65 +EBUILD uutf-1.0.2.ebuild 1595 BLAKE2B a9958781ecb69f2e8e160ee23607ed0b6f3fe9501ec9ab3146e59e30fc475d81992976955d33a78a10f04ee895d3bf0c312dbdba97a50cc3c5c4bca40baa7afd SHA512 f233de55edd0e346bf851a824e4ce31923cf02153a874f46b46dcbf1666a1059d88170c555891e2fc52d57cb304bad6835a77a93423825e105cc8b75172187ed MISC metadata.xml 390 BLAKE2B c7f6ffb069cf171a47ffaf90b0bbd742d50baa96260e98b21738651722d3006e176f4bc5223932986b2640aa1f091861c7a027f5b4130ed2af77b7ae1e2701bb SHA512 b23f82ba753956db53103340358857cbdee18bc34ee5d5db86d68dc6f04ea419b3f64df7e5fa54ac84e6122eef7236daebda8fbd60aaa7fa59d45714d21aec4a diff --git a/dev-ml/uutf/uutf-1.0.2.ebuild b/dev-ml/uutf/uutf-1.0.2.ebuild new file mode 100644 index 000000000000..320c6dea77ec --- /dev/null +++ b/dev-ml/uutf/uutf-1.0.2.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit findlib + +DESCRIPTION="Non-blocking streaming Unicode codec for OCaml" +HOMEPAGE="https://erratique.ch/software/uutf" +SRC_URI="https://erratique.ch/software/uutf/releases/${P}.tbz" + +LICENSE="ISC" +SLOT="0/${PV}" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" +IUSE="doc utftrip +ocamlopt test" +RESTRICT="!test? ( test )" +REQUIRED_USE="utftrip? ( ocamlopt )" + +RDEPEND=">=dev-lang/ocaml-3.12:=[ocamlopt?] + dev-ml/uchar:= + utftrip? ( dev-ml/cmdliner:= )" +DEPEND="${RDEPEND} + dev-ml/ocamlbuild + dev-ml/topkg + test? ( dev-ml/cmdliner )" + +src_compile() { + ocaml pkg/pkg.ml build \ + --with-cmdliner "$(usex utftrip true false)" \ + || die +} + +src_test() { + if use ocamlopt ; then + ocamlbuild -use-ocamlfind tests.otarget || die + pushd _build/test || die + ./test.native || die + # Rebuild to avoid mismatches between installed files, bug #604674 + popd || die + ocaml pkg/pkg.ml build \ + --with-cmdliner "$(usex utftrip true false)" \ + || die + else + ewarn "Sorry, ${PN} tests require native support (ocamlopt)" + fi +} + +src_install() { + # Can't use opam-installer here as it is an opam dep... + findlib_src_preinst + local nativelibs="" + + use ocamlopt && nativelibs="$(echo _build/src/uutf.cm{x,xa,xs} _build/src/uutf.a)" + ocamlfind install uutf _build/pkg/META _build/src/uutf.mli _build/src/uutf.cm{a,i} ${nativelibs} || die + + use utftrip && newbin utftrip.$(usex ocamlopt native byte) utftrip + dodoc CHANGES.md README.md + + if use doc ; then + docinto html + dodoc -r doc/* + fi +} |