1- distributable :
2- url : https://github.com/clojure/clojure/archive/refs/tags/clojure-{{version}}.tar.gz
3- strip-components : 1
1+ distributable : ~
2+
3+ warnings :
4+ - vendored
45
56versions :
6- github : clojure/clojure/releases/tags
7- strip : /^clojure-/
7+ github : clojure/brew-install/releases/tags
88
9- dependencies :
10- openjdk.org : " >=11 "
11- maven.apache.org : " ^3.8 "
9+ provides :
10+ - bin/clj
11+ - bin/clojure
1212
1313build :
1414 dependencies :
15- openjdk.org : " >=11"
16- maven.apache.org : " ^3.8"
17-
15+ curl.se : " *"
16+ working-directory : ${{prefix}}
1817 script : |
19- # Ensure we're using the correct Java version
20- export JAVA_HOME=$(pkgx which java | xargs dirname | xargs dirname)
18+ curl -LsSO https://github.com/clojure/brew-install/releases/download/{{ version}}/clojure-tools-{{version}}.tar.gz
19+ tar xzf clojure-tools-{{version}}.tar.gz
2120
22- # Build the Clojure JAR
23- mvn clean package -DskipTests -Dproject.build.sourceEncoding=UTF-8
21+ mkdir -p {{prefix}}/bin \
22+ {{prefix}}/lib/clojure/libexec \
23+ {{prefix}}/share/man/man1
2424
25- # Create the clojure CLI script wrapper
26- mkdir -p $PKGX_INSTALL_DIR/bin
25+ cp clojure-tools/deps.edn {{prefix}}/lib/clojure/
26+ cp clojure-tools/example-deps.edn {{prefix}}/lib/clojure/
27+ cp clojure-tools/tools.edn {{prefix}}/lib/clojure/
28+ cp clojure-tools/exec.jar {{prefix}}/lib/clojure/libexec/
29+ cp clojure-tools/clojure-tools-{{version}}.jar {{prefix}}/lib/clojure/libexec/
2730
28- # Copy the built JAR
29- cp target/clojure-*.jar $PKGX_INSTALL_DIR/lib/clojure.jar
31+ # Strip +brewing to get the final installed path
32+ brewing_prefix="{{prefix}}"
33+ final_prefix="${brewing_prefix%+brewing}"
3034
31- # Create the clj wrapper script
32- cat > $PKGX_INSTALL_DIR/bin/clj << 'EOF'
33- #!/bin/bash
34- # Clojure REPL wrapper
35- exec java -cp "{{PKGX_INSTALL_DIR}}/lib/clojure.jar" clojure.main "$@"
36- EOF
37- chmod +x $PKGX_INSTALL_DIR/bin/clj
35+ sed -e "s@PREFIX@${final_prefix}/lib/clojure@g" clojure-tools/clojure > {{prefix}}/bin/clojure
36+ sed -e "s@BINDIR@${final_prefix}/bin@g" clojure-tools/clj > {{prefix}}/bin/clj
37+ chmod 755 {{prefix}}/bin/clojure {{prefix}}/bin/clj
3838
39- # Create clojure alias
40- cat > $PKGX_INSTALL_DIR/bin/clojure << 'EOF'
41- #!/bin/bash
42- exec java -cp "{{PKGX_INSTALL_DIR}}/lib/clojure.jar" clojure.main "$@"
43- EOF
44- chmod +x $PKGX_INSTALL_DIR/bin/clojure
39+ cp clojure-tools/clojure.1 {{prefix}}/share/man/man1/
40+ cp clojure-tools/clj.1 {{prefix}}/share/man/man1/
4541
46- provides :
47- - bin/clj
48- - bin/clojure
42+ rm -rf clojure-tools clojure-tools-{{version}}.tar.gz
4943
50- test :
51- script : |
52- clj --version 2>&1 | grep -q "Clojure"
53- clojure -e "(println (+ 1 2))" | grep -q "3"
44+ test : clojure --version
0 commit comments