# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4 PortSystem 1.0 PortGroup select 1.0 PortGroup java 1.0 name maven4 # Until the final 4.0.0 release is out, we use a version that sorts before 4.0.0 to avoid upgrade problems version 3.9.9-rc2 set real_version 4.0.0-rc-2 revision 0 categories java devel license Apache-2 maintainers {breun.nl:nils @breun} openmaintainer platforms any supported_archs noarch description Apache Maven 4 long_description \ Apache Maven is a software project management and \ comprehension tool. Based on the concept of a project object \ model (POM), Maven can manage a project's build, reporting \ and documentation from a central piece of information. homepage https://maven.apache.org/ master_sites apache:maven/maven-4/${real_version}/binaries distname apache-maven-${real_version}-bin worksrcdir apache-maven-${real_version} checksums rmd160 a5cb3f0a5a0962149c53bf7ec1d2ecbf1859aafc \ sha256 9c88de0dd0b63e52dd2132d9808e35c00ea20c8458ba191c63109315d16771bb \ size 13913709 java.version 17+ java.fallback openjdk21 depends_run port:maven_select use_configure no select.group maven select.file ${filespath}/${name} # Source builds of maven are not possible. So, the default build is a binary # install of the jars. build { } destroot { set mavendir ${destroot}${prefix}/share/java/${name} # Create the target java directory exists xinstall -m 755 -d ${mavendir} # Copy over the needed elements of our directory tree file copy \ ${worksrcpath}/bin \ ${worksrcpath}/boot \ ${worksrcpath}/conf \ ${worksrcpath}/lib \ ${mavendir} # Reduce the permissions on the distribution files. file attributes ${mavendir}/conf -permissions 0755 file attributes ${mavendir}/conf/settings.xml -permissions 0644 foreach f [glob -directory ${mavendir}/boot *.jar] { file attributes $f -permissions 0644 } foreach f [glob -directory ${mavendir}/lib *.jar] { file attributes $f -permissions 0644 } # Symlink maven into the bin directory ln -s ../share/java/${name}/bin/mvn ${destroot}${prefix}/bin/mvn4 ln -s ../share/java/${name}/bin/mvnDebug ${destroot}${prefix}/bin/mvnDebug4 } test.run yes test.cmd bin/mvn test.target test.args --version notes \ "- To make maven ${real_version} the default, please run: sudo port select --set ${select.group} ${name} - To add bash completions, install port maven-completion" livecheck.type regex livecheck.url ${homepage}docs/history.html livecheck.regex >(4\\.\[0-9.\]+\\.\[0-9.\]+)