diff options
Diffstat (limited to 'dev-java/ant-ivy')
-rw-r--r-- | dev-java/ant-ivy/Manifest | 4 | ||||
-rw-r--r-- | dev-java/ant-ivy/ant-ivy-2.5.0.ebuild | 182 | ||||
-rw-r--r-- | dev-java/ant-ivy/metadata.xml | 5 |
3 files changed, 190 insertions, 1 deletions
diff --git a/dev-java/ant-ivy/Manifest b/dev-java/ant-ivy/Manifest index 2a5503d0f879..3a36d7256ec6 100644 --- a/dev-java/ant-ivy/Manifest +++ b/dev-java/ant-ivy/Manifest @@ -1,6 +1,8 @@ AUX 1.4.1-javadoc.patch 500 BLAKE2B 9954ccef76c45a403d444a730986c15d9fc5c6106908a209691a04c1e3b24af21eddccf217c46120cc2c89eabe0cfe277fe245b7e174974de29ec2bd5affca2b SHA512 e50463fb7bb7ffd493ad212cf2fbdef89e454de48521c6903ddbd9c7ba1a799172cf36265c6131e3a81136c0872977c63e654b7ce2913aac3672357718b8f93f DIST apache-ivy-2.3.0-src.tar.gz 2790722 BLAKE2B 87a79bad15b9b74517ce240fcfd0ae9e58b67816f0ec1fbd14081a17bd837c497da419d0b45ad63b3782b151e86c85b79cafa11f8c1170ab0287597be78cabe7 SHA512 fde43ff288cd8c77f2bdecdcbf52f180247ed99a8526be9d875d60e209b66155d5526e968400382d2cef22cabb8899c3b0912e049ae7d23e2cb79be8a81fe00f +DIST apache-ivy-2.5.0-src.tar.gz 2719181 BLAKE2B 71c47e3493beac8de1bc4e8c86ae18383938265dd2803a1c4b9ad466306227dab9eeca256516ff94064d902d0694b4f0b35ce152c5f64b95b876e47289b25833 SHA512 59d9458345e3a51e8f527258ba26ebe2cf5cf257401c52fb5f75aced0da5f7bf36f8aa0f202bbc0cf029d1d49bd6634f7cb8b65ccc828eb55ff7084430879268 DIST ivy-1.4.1-src.zip 751792 BLAKE2B 3a6ca8aaa49be9c664c3de4789debfe5770bb32084c548aa49a8d6146b55391729d5d68758e26f29253ab727e8a2a731961ba45419f3c1a212b26d74f33b0a0e SHA512 8ccb4680e8c32178bf12b74f4c6df668bbdd06c6dce6a2d0bf1b9daeec8fb5166d4d510cadb247dc4e2a91b71f5dc7fc429d0d7faed95a2898fd4f9d0888ee8d EBUILD ant-ivy-1.4.1-r2.ebuild 1760 BLAKE2B 042c11aee2720ffaf77877ab6f903026833db5600c98ea4fc70f0534fe33d478ab01d337b4dfcbfb2218a916ee06bbab42a3afffc29b8b60d663e4e51dec8bed SHA512 926b90f406b1be28920cf56b1463765b676fa00c01ddb4fa7d8a7f3b60b99ea009cad9591015fe65dae636827717390a3d4c5c00118c141f65e4e842f7599e2f EBUILD ant-ivy-2.3.0-r3.ebuild 2206 BLAKE2B 81ecc8890da54bcda84c4d74e3125e01a0f390264e1e243172c35cfec6629f00d2deee6441a3dce2d1e2e3dda1148cf63d8dab013f556a02705af0eee15fc8b2 SHA512 2405021491feb8fb173f0d7da0333debdb53f260a6de1b58178d3f2440ecebb21430333c733bc0ee0c298152d5cef34ab77ffb5842d3ccc8e632eb9a1f55435e -MISC metadata.xml 656 BLAKE2B ff71e0e0a685910fe9e57ffe6da1ed7ca52c54e54f4b84cdab29ad1bbe9f2e7073ed0763ee160cf0e27e74ec5800279338375a6233e13c3740535f0cba534962 SHA512 0273600b4e0e451e4e75c2d16e29ca106067748cdd3345043faaec7e22cf6988f013a9393489dc7c6a1f00d5813f86c7a86663a81440178b7f534c6046cd4515 +EBUILD ant-ivy-2.5.0.ebuild 8498 BLAKE2B 6b9d3612a6a4633b52e0d56b7fdbb2ef55861704558cecb3a5185fec0a8c92a3331cc45e2aeef4e4a59b8e055773ac30a2d4e004dcde04deaa8d095c08e44f79 SHA512 708f93401a2e35fa1e49722820984c21f5203ea50b8372e00c43dd5288c6ab96cf58965f99214731e16341100ef0507c4ed412874add0ab48a42bb0ccf853223 +MISC metadata.xml 853 BLAKE2B deb1f7bed1e2828ff976d7a325fdd193fd099d911849bb53320e2093dd9030056b71858ad24bad3308570bf8ef6cf9c4a1d542ce47417683d484327de3a76d0c SHA512 960bc190397b3b2264dbd62b6487c383d11bbe73460ba76791d720fe4f78713158917b45b7e437707ef63dd87c0863caa333b0a9089b66b521792748a52085a1 diff --git a/dev-java/ant-ivy/ant-ivy-2.5.0.ebuild b/dev-java/ant-ivy/ant-ivy-2.5.0.ebuild new file mode 100644 index 000000000000..caa5b3a8f254 --- /dev/null +++ b/dev-java/ant-ivy/ant-ivy-2.5.0.ebuild @@ -0,0 +1,182 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +JAVA_PKG_IUSE="doc source test" +MAVEN_ID="org.apache.ivy:ivy:2.5.0" +JAVA_TESTING_FRAMEWORKS="junit-4" + +inherit java-pkg-2 java-pkg-simple java-osgi + +DESCRIPTION="Ivy is a free java based dependency manager" +HOMEPAGE="https://ant.apache.org/ivy/" +SRC_URI="mirror://apache/ant/ivy/${PV}/apache-ivy-${PV}-src.tar.gz" + +LICENSE="Apache-2.0" +SLOT="2" +KEYWORDS="~amd64 ~ppc64 ~x86" + +PROPERTIES="test_network" +RESTRICT="test" + +CDEPEND=" + dev-java/ant-core:0 + dev-java/bcpg:0 + dev-java/bcprov:0 + dev-java/commons-httpclient:4 + dev-java/commons-vfs:2 + dev-java/httpcore:0 + dev-java/jakarta-oro:2.0 + dev-java/jsch:0 + dev-java/jsch-agent-proxy:0 + test? ( + dev-java/ant-junit:0 + dev-java/ant-junit4:0 + dev-java/ant-junitlauncher:0 + dev-java/ant-testutil:0 + dev-java/hamcrest-core:1.3 + dev-java/hamcrest-library:1.3 + dev-java/xmlunit:1 + )" +DEPEND="${CDEPEND} + >=virtual/jdk-1.8:*" +RDEPEND="${CDEPEND} + >=virtual/jre-1.8:*" + +DOCS=( LICENSE NOTICE README.adoc ) + +S="${WORKDIR}/apache-ivy-${PV}" + +JAVA_GENTOO_CLASSPATH="ant-core,bcpg,bcprov,commons-httpclient-4,commons-vfs-2,httpcore,jakarta-oro-2.0,jsch,jsch-agent-proxy" +JAVA_MAIN_CLASS="org.apache.ivy.Main" +JAVA_SRC_DIR="src/java" +JAVA_RESOURCE_DIRS="resources/java" + +JAVA_TEST_GENTOO_CLASSPATH="ant-junit,ant-junit4,ant-junitlauncher,ant-testutil,hamcrest-core-1.3,hamcrest-library-1.3,junit-4,xmlunit-1" +JAVA_TEST_SRC_DIR="test-src/java" +JAVA_TEST_RESOURCE_DIRS="test" +JAVA_GENTOO_CLASSPATH_EXTRA="ant-ivy.jar:test.jar:custom-resolver.jar" + +# according to 57,60 build-release.xml +# https://github.com/apache/ant-ivy/commit/c0c8df492d2312c983f50cfdc5841e18177f6f7b +JAVA_TEST_EXTRA_ARGS="-Divy.cache.ttl.default=1s -Dskip.download=true -Divy.home=/tmp -D/offline=true" + +# Several tests require a certain treatment to "generate-bundles": +# https://github.com/apache/ant-ivy/blob/48234fc5ede85a865eb874a96c08472ce1751fd1/build.xml#L426-L428 +# <ant dir="${basedir}/test/test-repo" target="generate-bundles"/> +# +# The procedure is coded in https://github.com/apache/ant-ivy/blob/48234fc5ede85a865eb874a96c08472ce1751fd1/test/test-repo/build.xml#L19-L71 +# but appears too difficult to be reprodused with 'java-pkg-simple.eclass'. +# So the failing tests will be excluded, saved for a later attempt. +# +# Not excluding any test classes results in "Tests run: 1109, Failures: 98" +# Excluding those test classes listed below leads to "OK (812 tests)" +JAVA_TEST_EXCLUDES=( + # https://github.com/apache/ant-ivy/blob/083e3f685c1fe29092e59c63b87e81d31fc9babe/build.properties#L56 + # test.class.pattern = *Test + "org.apache.ivy.ant.testutil.AntTaskTestCase" # not in scope + "org.apache.ivy.core.TestPerformance" # not in scope + "org.apache.ivy.util.TestXmlHelper" # not in scope + "org.apache.ivy.TestFixture" # not in scope + "org.apache.ivy.TestHelper" # not in scope + # https://github.com/apache/ant-ivy/blob/48234fc5ede85a865eb874a96c08472ce1751fd1/build.xml#L412-L420 + # <exclude name="**/Abstract*Test.java"/> + "org.apache.ivy.util.url.AbstractURLHandlerTest" + "org.apache.ivy.plugins.resolver.AbstractDependencyResolverTest" + "org.apache.ivy.plugins.matcher.AbstractPatternMatcherTest" + # following excluded tests cause test failures + "org.apache.ivy.ant.BuildOBRTaskTest" # Tests run: 3, Failures: 2 + "org.apache.ivy.core.deliver.DeliverTest" # Tests run: 1, Failures: 1 + "org.apache.ivy.core.module.descriptor.IvyMakePomTest" # Tests run: 1, Failures: 1 + "org.apache.ivy.core.settings.XmlSettingsParserTest" # Tests run: 29, Failures: 1 + "org.apache.ivy.osgi.core.AggregatedOSGiResolverTest" # Tests run: 3, Failures: 1 + "org.apache.ivy.osgi.obr.OBRResolverTest" # Tests run: 16, Failures: 16 + "org.apache.ivy.osgi.repo.BundleRepoTest" # Tests run: 4, Failures: 3 + "org.apache.ivy.plugins.parser.m2.PomModuleDescriptorParserTest" # Tests run: 46, Failures: 1 + "org.apache.ivy.plugins.parser.xml.XmlModuleDescriptorParserTest" # Tests run: 44, Failures: 7 + "org.apache.ivy.plugins.parser.xml.XmlModuleDescriptorWriterTest" # Tests run: 10, Failures: 1 + "org.apache.ivy.plugins.parser.xml.XmlModuleUpdaterTest" # Tests run: 14, Failures: 3 + "org.apache.ivy.plugins.resolver.JarResolverTest" # Tests run: 3, Failures: 3 + # following excluded tests can pass if run individually + "org.apache.ivy.ant.IvyConfigureTest" # OK (14 tests) + "org.apache.ivy.IvyTest" # OK (1 test) + "org.apache.ivy.MainTest" # OK (12 tests) + "org.apache.ivy.plugins.report.XmlReportWriterTest" # OK (3 tests) + "org.apache.ivy.plugins.resolver.BintrayResolverTest" # OK (12 tests) + "org.apache.ivy.plugins.resolver.ChainResolverTest" # OK (15 tests) + "org.apache.ivy.plugins.resolver.FileSystemResolverTest" # OK (27 tests) + "org.apache.ivy.plugins.resolver.IBiblioMavenSnapshotsResolutionTest" # OK (1 test) + "org.apache.ivy.plugins.resolver.IvyRepResolverTest" # OK (3 tests) + "org.apache.ivy.plugins.resolver.Maven2LocalTest" # OK (2 tests) + "org.apache.ivy.plugins.resolver.PackagerResolverTest" # OK (3 tests) + "org.apache.ivy.plugins.resolver.URLResolverTest" # OK (5 tests) + "org.apache.ivy.plugins.trigger.LogTriggerTest" # OK (3 tests) + # Without PROPERTIES="test_network", the following test cause additional failures. + "org.apache.ivy.core.settings.OnlineXmlSettingsParserTest" +# "org.apache.ivy.osgi.updatesite.UpdateSiteAndIbiblioResolverTest" + "org.apache.ivy.osgi.updatesite.UpdateSiteLoaderTest" +# "org.apache.ivy.plugins.resolver.IBiblioResolverTest" +# "org.apache.ivy.plugins.resolver.MirroredURLResolverTest" + "org.apache.ivy.util.url.ArtifactoryListingTest" +# "org.apache.ivy.util.url.BasicURLHandlerTest" +# "org.apache.ivy.util.url.HttpclientURLHandlerTest" +) + +src_prepare() { + default + + mkdir --parents "${JAVA_RESOURCE_DIRS}/META-INF" || die + pushd "${JAVA_RESOURCE_DIRS}" + cp "${S}"/{NOTICE,LICENSE} META-INF/ || die + cp -r "${S}"/src/java/* . || die + + # DEPRECATED: 'ivyconf' element is deprecated, use 'ivysettings' instead + # according to 210,221 build.xml and still in the upstream .jar file + cp org/apache/ivy/core/settings/ivy{settings,conf}-local.xml || die + cp org/apache/ivy/core/settings/ivy{settings,conf}-default-chain.xml || die + cp org/apache/ivy/core/settings/ivy{settings,conf}-main-chain.xml || die + cp org/apache/ivy/core/settings/ivy{settings,conf}-public.xml || die + cp org/apache/ivy/core/settings/ivy{settings,conf}-shared.xml || die + cp org/apache/ivy/core/settings/ivy{settings,conf}.xml || die + + find . -type f -name '*.java' -exec rm -rf {} + || die + popd || die +} + +src_test() { + # https://github.com/apache/ant-ivy/blob/48234fc5ede85a865eb874a96c08472ce1751fd1/build.xml#L396-L407 + # name="build-custom-resolver-jar" + JAVA_SRC_DIR="test/custom-classpath" + JAVA_JAR_FILENAME="test/java/org/apache/ivy/core/settings/custom-resolver.jar" + java-pkg-simple_src_compile + + # Without "license.xml" the tests won't even start. "Tests run: 1109, Failures: 318" + jar -cf test.jar \ + -C test/java org/apache/ivy/plugins/parser/xml/license.xml \ + -C test/java org/apache/ivy/plugins/parser/m2/license.xml || die + + # Reduce number of failures to "Tests run: 1109, Failures: 98" + jar -uf "test.jar" -C test/java . || die + + # Separate *.java files from test resources + # https://github.com/apache/ant-ivy/blob/48234fc5ede85a865eb874a96c08472ce1751fd1/build.xml#L389-L393 + mkdir test-src || die + cp -r test/java test-src/ || die + find test -type f -name '*.java' -exec rm -rf {} + || die + + # https://github.com/apache/ant-ivy/blob/48234fc5ede85a865eb874a96c08472ce1751fd1/build.xml#L430-L438 + # name="prepare-test-jar-repositories" + mkdir test/jar-repos || die + jar -cfM "test/jar-repos/jarrepo1.jar" -C test/repositories/1 . || die +# jar -cfM "test/jar-repos/jarrepo1_subdir.jar" -C test/repositories 1/**/*/ || die + + java-pkg-simple_src_test +} + +src_install() { + default + java-osgi_dojar-fromfile "ant-ivy.jar" "META-INF/MANIFEST.MF" "ant-ivy" + use doc && java-pkg_dojavadoc target/api + use source && java-pkg_dosrc src/* +} diff --git a/dev-java/ant-ivy/metadata.xml b/dev-java/ant-ivy/metadata.xml index 3051d122c6e8..91e2ba1cf10c 100644 --- a/dev-java/ant-ivy/metadata.xml +++ b/dev-java/ant-ivy/metadata.xml @@ -14,4 +14,9 @@ to a local lib dir, and it does it for you by locating the artifacts of your dependencies in repositories, such as ibiblio. </longdescription> + <upstream> + <remote-id type="github">apache/ant-ivy</remote-id> + <doc>https://ant.apache.org/ivy/history/2.5.0</doc> + <bugs-to>https://issues.apache.org/jira/browse/IVY </bugs-to> + </upstream> </pkgmetadata> |