diff --git a/debian/changelog b/debian/changelog index 22afebb..378da36 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +core-async-clojure (1.3.610-2) UNRELEASED; urgency=medium + + * d/rules: build using leiningen. (Closes: #976415) + + -- Louis-Philippe VĂ©ronneau Mon, 07 Dec 2020 12:26:22 -0500 + core-async-clojure (1.3.610-1) unstable; urgency=medium * Team upload. diff --git a/debian/control b/debian/control index 6c34d51..6fa0745 100644 --- a/debian/control +++ b/debian/control @@ -6,9 +6,10 @@ Build-Depends: debhelper-compat (= 13), javahelper, maven-repo-helper, - clojure, default-jdk, - libtools-analyzer-jvm-clojure + libclojure-java, + libtools-analyzer-jvm-clojure, + leiningen, Standards-Version: 4.5.0 Vcs-Git: https://salsa.debian.org/clojure-team/core-async-clojure.git Vcs-Browser: https://salsa.debian.org/clojure-team/core-async-clojure @@ -17,7 +18,11 @@ Package: libcore-async-clojure Architecture: all -Depends: ${java:Depends}, ${misc:Depends} +Depends: ${java:Depends}, + ${misc:Depends}, + libclojure-java, + libtools-analyzer-jvm-clojure, + leiningen, Recommends: ${java:Recommends} Description: asynchronous programming using channels for Clojure core.async is a Clojure library designed to provide facilities for async diff --git a/debian/libcore-async-clojure.jlibs b/debian/libcore-async-clojure.jlibs deleted file mode 100644 index 4b702d1..0000000 --- a/debian/libcore-async-clojure.jlibs +++ /dev/null @@ -1 +0,0 @@ -core.async.jar diff --git a/debian/libcore-async-clojure.poms b/debian/libcore-async-clojure.poms index e2a2659..eb809c1 100644 --- a/debian/libcore-async-clojure.poms +++ b/debian/libcore-async-clojure.poms @@ -1 +1 @@ -pom.xml --artifact=core.async.jar --usj-name=core.async +debian/pom.xml --artifact=target/core.async.jar --usj-name=core.async diff --git a/debian/patches/0001_Lein_Local.patch b/debian/patches/0001_Lein_Local.patch new file mode 100644 index 0000000..464d43a --- /dev/null +++ b/debian/patches/0001_Lein_Local.patch @@ -0,0 +1,37 @@ +Patch project.clj so we can build using lein locally. +Index: core-async-clojure/project.clj +=================================================================== +--- core-async-clojure.orig/project.clj ++++ core-async-clojure/project.clj +@@ -1,12 +1,10 @@ +-(defproject org.clojure/core.async "0.1.0-SNAPSHOT" ++(defproject org.clojure/core.async "1.3.610" + :description "Facilities for async programming and communication in Clojure" + :url "https://github.com/clojure/core.async" + :license {:name "Eclipse Public License" + :url "http://www.eclipse.org/legal/epl-v10.html"} +- :parent [org.clojure/pom.contrib "1.0.0"] +- :dependencies [[org.clojure/clojure "1.9.0"] +- [org.clojure/tools.analyzer.jvm "1.0.0"] +- [org.clojure/clojurescript "1.10.597" :scope "provided"]] ++ :dependencies [[org.clojure/clojure "1.10.x"] ++ [org.clojure/tools.analyzer.jvm "debian"]] + :global-vars {*warn-on-reflection* true} + :source-paths ["src/main/clojure"] + :test-paths ["src/test/clojure"] +@@ -14,8 +12,6 @@ + :java-source-paths ["src/main/java"] + :profiles {:dev {:source-paths ["examples"]}} + +- :plugins [[lein-cljsbuild "1.1.7"]] +- + :clean-targets ["tests.js" "tests.js.map" + "out" "out-simp" "out-simp-node" + "out-adv" "out-adv-node"] +@@ -59,4 +55,5 @@ + :pretty-print false + :output-dir "out-adv-node" + :output-to "tests.js" +- :source-map "tests.js.map"}}]}) ++ :source-map "tests.js.map"}}]} ++ :local-repo "debian/maven-repo") diff --git a/debian/patches/series b/debian/patches/series new file mode 100644 index 0000000..f6005e4 --- /dev/null +++ b/debian/patches/series @@ -0,0 +1 @@ +0001_Lein_Local.patch diff --git a/debian/pom.xml b/debian/pom.xml new file mode 100644 index 0000000..2614b98 --- /dev/null +++ b/debian/pom.xml @@ -0,0 +1,98 @@ + + 4.0.0 + org.clojure + core.async + jar + 1.3.610 + core.async + Facilities for async programming and communication in Clojure + https://github.com/clojure/core.async + + + Eclipse Public License + http://www.eclipse.org/legal/epl-v10.html + + + + 9454d6bb09b26eb34f097de2a27883adee44a7f7 + + + src/main/clojure + src/test/clojure + + + resources + + + + + resources + + + target + target/classes + + + org.codehaus.mojo + build-helper-maven-plugin + 1.7 + + + add-source + generate-sources + + add-source + + + + src/main/java + + + + + + + + + + central + https://repo1.maven.org/maven2/ + + false + + + true + + + + clojars + https://repo.clojars.org/ + + true + + + true + + + + + + + + + org.clojure + clojure + 1.10.x + + + org.clojure + tools.analyzer.jvm + debian + + + + + diff --git a/debian/rules b/debian/rules index 8f13429..dc3b594 100755 --- a/debian/rules +++ b/debian/rules @@ -1,24 +1,30 @@ #!/usr/bin/make -f +include /usr/share/dpkg/pkg-info.mk include /usr/share/javahelper/java-vars.mk -PRODUCED_JAR=core.async.jar -export CLASSPATH=/usr/share/java/clojure.jar:/usr/share/java/tools.analyzer.jvm.jar +export LEIN_HOME=$(CURDIR)/.lein +export LEIN_OFFLINE=true +NAME=core.async %: - dh $@ --with javahelper,jh_maven_repo_helper + dh $@ --with javahelper --with maven_repo_helper -override_jh_build: - jar cf $(PRODUCED_JAR) -C src/main/clojure . +override_dh_auto_configure: + cd debian && ln -sf /usr/share/maven-repo . -override_jh_clean: - jh_clean - rm -f $(CURDIR)/$(PRODUCED_JAR) - -override_jh_classpath: - jh_classpath $(PRODUCED_JAR) +override_dh_auto_build: + lein jar + # symlink so we don't need a version in debian/*.poms + cd target && ln -sf $(NAME)-$(DEB_VERSION_UPSTREAM).jar $(NAME).jar override_dh_auto_test: - dh_auto_test - (cd src/test/clojure && find . -name '*.clj' | \ - xargs clojure -cp $(CLASSPATH):$(CURDIR)/$(PRODUCED_JAR)) + lein test + +override_jh_installlibs: + jh_installlibs target/$(NAME).jar + +override_dh_clean: + rm -f debian/maven-repo + rm -Rf target + dh_clean