summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-lang/clojure/clojure-1.12.0.ebuild')
-rw-r--r--dev-lang/clojure/clojure-1.12.0.ebuild113
1 files changed, 113 insertions, 0 deletions
diff --git a/dev-lang/clojure/clojure-1.12.0.ebuild b/dev-lang/clojure/clojure-1.12.0.ebuild
new file mode 100644
index 000000000000..c731309a6b30
--- /dev/null
+++ b/dev-lang/clojure/clojure-1.12.0.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+SPEC_ALPHA_VER="0.5.238" # https://github.com/clojure/spec.alpha/tags/
+CORE_SPECS_ALPHA_VER="0.4.74" # https://github.com/clojure/core.specs.alpha/tags/
+
+TOOLS_NAMESPACE_VER="1.5.0" # https://github.com/clojure/tools.namespace/tags/
+JAVA_CLASSPATH_VER="1.1.0" # https://github.com/clojure/java.classpath/tags/
+TOOLS_READER_VER="1.4.0" # https://github.com/clojure/tools.reader/tags/
+TEST_GENERATIVE_VER="1.1.0" # https://github.com/clojure/test.generative/tags/
+DATA_GENERATORS_VER="1.1.0" # https://github.com/clojure/data.generators/tags/
+TEST_CHECK_VER="1.1.1" # https://github.com/clojure/test.check/tags/
+
+JAVA_PKG_IUSE="test"
+
+inherit java-pkg-2
+
+DESCRIPTION="General-purpose programming language with an emphasis on functional programming"
+HOMEPAGE="https://clojure.org/
+ https://github.com/clojure/clojure/"
+SRC_URI="
+ https://github.com/${PN}/${PN}/archive/${P}.tar.gz
+
+ https://github.com/clojure/spec.alpha/archive/v${SPEC_ALPHA_VER}.tar.gz
+ -> spec.alpha-${SPEC_ALPHA_VER}.tar.gz
+ https://github.com/clojure/core.specs.alpha/archive/v${CORE_SPECS_ALPHA_VER}.tar.gz
+ -> core.specs.alpha-${CORE_SPECS_ALPHA_VER}.tar.gz
+
+ test? (
+ https://github.com/clojure/tools.namespace/archive/v${TOOLS_NAMESPACE_VER}.tar.gz
+ -> tools.namespace-${TOOLS_NAMESPACE_VER}.tar.gz
+ https://github.com/clojure/java.classpath/archive/v${JAVA_CLASSPATH_VER}.tar.gz
+ -> java.classpath-${JAVA_CLASSPATH_VER}.tar.gz
+ https://github.com/clojure/tools.reader/archive/v${TOOLS_READER_VER}.tar.gz
+ -> tools.reader-${TOOLS_READER_VER}.tar.gz
+ https://github.com/clojure/test.generative/archive/v${TEST_GENERATIVE_VER}.tar.gz
+ -> test.generative-${TEST_GENERATIVE_VER}.tar.gz
+ https://github.com/clojure/data.generators/archive/v${DATA_GENERATORS_VER}.tar.gz
+ -> data.generators-${DATA_GENERATORS_VER}.tar.gz
+ https://github.com/clojure/test.check/archive/v${TEST_CHECK_VER}.tar.gz
+ -> test.check-${TEST_CHECK_VER}.tar.gz
+ )
+"
+S="${WORKDIR}/${PN}-${P}"
+
+LICENSE="EPL-1.0 Apache-2.0 BSD"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~x86 ~x86-linux"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ >=dev-java/ant-1.10.14-r3
+"
+RDEPEND="
+ >=virtual/jre-1.8:*
+"
+DEPEND="
+ >=virtual/jdk-1.8:*
+"
+
+PATCHES=(
+ "${FILESDIR}/add-compile-spec-ant-build-target.patch"
+)
+
+DOCS=( changes.md CONTRIBUTING.md readme.txt )
+
+src_prepare() {
+ default
+ java-pkg-2_src_prepare
+
+ ln -rs \
+ ../spec.alpha-${SPEC_ALPHA_VER}/src/main/clojure/clojure/spec \
+ src/clj/clojure/spec || die "Could not create symbolic link for spec-alpha"
+ ln -rs \
+ ../core.specs.alpha-${CORE_SPECS_ALPHA_VER}/src/main/clojure/clojure/core/specs \
+ src/clj/clojure/core/specs || die "Could not create symbolic link for core-specs-alpha"
+}
+
+src_compile() {
+ eant -f build.xml jar
+}
+
+src_test() {
+ cp -r \
+ ../tools.namespace-${TOOLS_NAMESPACE_VER}/src/main/clojure/clojure/tools/* \
+ src/clj/clojure/tools || die "Could not create symbolic link for tools-namespace"
+ cp -r \
+ ../java.classpath-${JAVA_CLASSPATH_VER}/src/main/clojure/clojure/java/* \
+ src/clj/clojure/java || die "Could not move java-classpath"
+ cp -r \
+ ../tools.reader-${TOOLS_READER_VER}/src/main/clojure/clojure/tools/* \
+ src/clj/clojure/tools || die "Could not move tools-reader"
+ cp -r \
+ ../test.generative-${TEST_GENERATIVE_VER}/src/main/clojure/clojure/test/* \
+ src/clj/clojure/test || die "Could not move test-generative"
+ ln -rs \
+ ../data.generators-${DATA_GENERATORS_VER}/src/main/clojure/clojure/data/ \
+ src/clj/clojure/data || die "Could not create symbolic link for data-generators"
+ cp -r \
+ ../test.check-${TEST_CHECK_VER}/src/main/clojure/clojure/test/* \
+ src/clj/clojure/test || die "Could not move test-check"
+
+ eant -f build.xml test
+}
+
+src_install() {
+ java-pkg_newjar "${PN}.jar"
+ java-pkg_dolauncher "${PN}" --main clojure.main
+
+ einstalldocs
+}