[61079] trunk/dports/devel

ryandesign at macports.org ryandesign at macports.org
Tue Dec 1 11:38:40 PST 2009


Revision: 61079
          http://trac.macports.org/changeset/61079
Author:   ryandesign at macports.org
Date:     2009-12-01 11:38:35 -0800 (Tue, 01 Dec 2009)
Log Message:
-----------
leiningen: new port, version 0.5.0; see #22720

Added Paths:
-----------
    trunk/dports/devel/leiningen/
    trunk/dports/devel/leiningen/Portfile
    trunk/dports/devel/leiningen/files/
    trunk/dports/devel/leiningen/files/build.xml
    trunk/dports/devel/leiningen/files/patch-bin-lein.diff

Added: trunk/dports/devel/leiningen/Portfile
===================================================================
--- trunk/dports/devel/leiningen/Portfile	                        (rev 0)
+++ trunk/dports/devel/leiningen/Portfile	2009-12-01 19:38:35 UTC (rev 61079)
@@ -0,0 +1,46 @@
+# $Id$
+
+PortSystem          1.0
+
+name                leiningen
+version             0.5.0
+categories          devel java
+maintainers         gmail.com:ian.eure
+platforms           darwin
+description         A build tool for Clojure designed to not set your hair on fire.
+long_description    ${description}
+
+homepage            http://github.com/technomancy/${name}
+master_sites        http://download.github.com/
+
+distname            technomancy-${name}-f97228f
+checksums           md5     9f63981bbcf11272270bdff0747fff2f \
+                    sha1    e312bbf39e02d9272f6b118addf50f580d9aaa20 \
+                    rmd160  617285d1941fdc3945112a035512880b59197a5b
+
+depends_build       port:clojure-devel \
+                    port:clojure-contrib-devel \
+                    port:apache-ant \
+                    port:maven2 \
+                    port:maven-ant-tasks
+
+patchfiles          patch-bin-lein.diff
+patch.pre_args      -p1
+
+post-patch {
+    copy ${filespath}/build.xml ${worksrcpath}
+    reinplace "s|__PREFIX__|${prefix}/share/java|" ${worksrcpath}/build.xml
+}
+
+use_configure       no
+
+build.cmd           ant
+build.target        jar
+
+destroot {
+    set javadir ${prefix}/share/java
+    reinplace "s|__PREFIX__|${javadir}|" ${worksrcpath}/bin/lein
+    xinstall -m 0755 -d ${destroot}${javadir}
+    xinstall -m 0755 ${worksrcpath}/bin/lein ${destroot}${prefix}/bin
+    xinstall -m 0644 ${worksrcpath}/leiningen.jar ${destroot}${javadir}
+}


Property changes on: trunk/dports/devel/leiningen/Portfile
___________________________________________________________________
Added: svn:keywords
   + Id
Added: svn:eol-style
   + native

Added: trunk/dports/devel/leiningen/files/build.xml
===================================================================
--- trunk/dports/devel/leiningen/files/build.xml	                        (rev 0)
+++ trunk/dports/devel/leiningen/files/build.xml	2009-12-01 19:38:35 UTC (rev 61079)
@@ -0,0 +1,78 @@
+<project name="leiningen" default="jar">
+    <description>
+        Pack all leiningen sources into a JAR.
+    </description>
+
+    <property name="src"   location="src"/>
+    <property name="build" location="classes"/>
+    <property name="dist"  location="dist"/>
+    <property name="prefix" location="__PREFIX__"/>
+
+    <property name="clojure.jar"
+              location="${prefix}/clojure/lib/clojure.jar"/>
+    <property name="clojure-contrib.jar"
+              location="${prefix}/clojure/lib/clojure-contrib.jar"/>
+    <property name="ant.jar"
+              location="${prefix}/apache-ant/lib/ant.jar"/>
+    <property name="ant-launcher.jar"
+              location="${prefix}/apache-ant/lib/ant-launcher.jar"/>
+    <property name="maven.jar"
+              location="${prefix}/maven2/lib/maven-2.2.0-uber.jar"/>
+    <property name="maven-ant-tasks.jar"
+              location="${prefix}/maven-ant-tasks.jar"/>
+
+    <!-- The JAR file to create. -->
+    <property name="jarfile" location="leiningen.jar"/>
+
+    <target name="init">
+        <tstamp/>
+        <mkdir dir="${build}"/>
+        <mkdir dir="${dist}"/>
+    </target>
+
+    <target name="clean" description="Remove generated files and directories.">
+        <delete file="${jarfile}"/>
+        <delete dir="${build}"/>
+        <delete dir="${dist}"/>
+    </target>
+
+    <target name="compile_clojure" depends="init"
+            description="Compile Clojure sources.">
+        <java classname="clojure.lang.Compile">
+            <classpath>
+                <path location="${build}"/>
+                <path location="${src}"/>
+                <path location="${clojure.jar}"/>
+                <path location="${clojure-contrib.jar}"/>
+                <path location="${ant.jar}"/>
+                <path location="${ant-launcher.jar}"/>
+                <path location="${maven.jar}"/>
+                <path location="${maven-ant-tasks.jar}"/>
+            </classpath>
+            <sysproperty key="clojure.compile.path" value="${build}"/>
+            <sysproperty key="java.awt.headless" value="true"/>
+
+            <arg value="leiningen.clean"/>
+            <arg value="leiningen.compile"/>
+            <arg value="leiningen.core"/>
+            <arg value="leiningen.deps"/>
+            <arg value="leiningen.help"/>
+            <arg value="leiningen.install"/>
+            <arg value="leiningen.jar"/>
+            <arg value="leiningen.pom"/>
+            <arg value="leiningen.test"/>
+            <arg value="leiningen.uberjar"/>
+        </java>
+    </target>
+
+    <target name="jar" description="Create jar file."
+            depends="init,compile_clojure">
+        <jar jarfile="${jarfile}">
+            <fileset dir="${src}" includes="**/*.clj"/>
+            <fileset dir="${build}" includes="**/*.class"/>
+            <manifest>
+                <attribute name="Class-Path" value="."/>
+            </manifest>
+        </jar>
+    </target>
+</project>


Property changes on: trunk/dports/devel/leiningen/files/build.xml
___________________________________________________________________
Added: svn:eol-style
   + native

Added: trunk/dports/devel/leiningen/files/patch-bin-lein.diff
===================================================================
--- trunk/dports/devel/leiningen/files/patch-bin-lein.diff	                        (rev 0)
+++ trunk/dports/devel/leiningen/files/patch-bin-lein.diff	2009-12-01 19:38:35 UTC (rev 61079)
@@ -0,0 +1,46 @@
+diff --git a/bin/lein b/bin/lein
+index 92546b1..a90c43f 100755
+--- a/bin/lein
++++ b/bin/lein
+@@ -2,23 +2,13 @@
+ 
+ # TODO: this gives us a trailing colon
+ VERSION=0.5.0
+-LIBS="$(find -H lib/ -mindepth 2> /dev/null 1 -maxdepth 1 -print0 | tr \\0 \:)"
++PREFIX=__PREFIX__
++LIBS="$(find -H $PREFIX -name \*.jar -print0 | tr \\0 \:)"
+ CLASSPATH="src/:classes/:$LIBS"
+-LEIN_JAR=$HOME/.m2/repository/leiningen/leiningen/$VERSION/leiningen-$VERSION.jar
+ 
+ # this needs to exist before the JVM is launched apparently
+ mkdir -p classes
+ 
+-# If we are not running from a checkout
+-if [ ! -r "bin/lein" ]; then
+-    if [ ! -r "$LEIN_JAR" -a "$1" != "self-install" ]; then
+-        echo "Leiningen is not installed. Please run \"lein self-install\"."
+-        exit 1
+-    fi
+-
+-    CLASSPATH="$CLASSPATH:$LEIN_JAR"
+-fi
+-
+ if [ "$1" = "test" ]; then
+     CLASSPATH=test/:$CLASSPATH
+ fi
+@@ -37,15 +27,6 @@ fi
+ if [ "$1" = "repl" ]; then
+     # If repl used leiningen.core then there'd be no way to bootstrap AOT
+     java -cp "$CLASSPATH" clojure.main
+-elif [ "$1" = "self-install" ]; then
+-    echo "Downloading Leiningen now..."
+-    mkdir -p `dirname "$LEIN_JAR"`
+-    LEIN_URL=http://repo.technomancy.us/leiningen-$VERSION.jar
+-    if type -p curl >/dev/null 2>&1; then
+-        exec curl -o "$LEIN_JAR" "$LEIN_URL"
+-    else
+-        exec wget -O "$LEIN_JAR" "$LEIN_URL"
+-    fi
+ else
+     if [ -z "$1" ]; then
+         echo "$0 missing task"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20091201/327384a0/attachment-0001.html>


More information about the macports-changes mailing list