[pkg-java] r7895 - in trunk/clojure: . debian debian/patches debian/scripts

pcc-guest at alioth.debian.org pcc-guest at alioth.debian.org
Wed Jan 28 14:01:46 UTC 2009


Author: pcc-guest
Date: 2009-01-28 14:01:46 +0000 (Wed, 28 Jan 2009)
New Revision: 7895

Added:
   trunk/clojure/debian/
   trunk/clojure/debian/README.Debian
   trunk/clojure/debian/changelog
   trunk/clojure/debian/clojure-repl.1
   trunk/clojure/debian/clojure.1
   trunk/clojure/debian/clojurec.1
   trunk/clojure/debian/compat
   trunk/clojure/debian/control
   trunk/clojure/debian/copyright
   trunk/clojure/debian/docs
   trunk/clojure/debian/install
   trunk/clojure/debian/manpages
   trunk/clojure/debian/patches/
   trunk/clojure/debian/patches/01-system-asm.patch
   trunk/clojure/debian/patches/02-better-bytecode.patch
   trunk/clojure/debian/rules
   trunk/clojure/debian/scripts/
   trunk/clojure/debian/scripts/clojure
   trunk/clojure/debian/scripts/clojure-repl
   trunk/clojure/debian/scripts/clojurec
   trunk/clojure/debian/watch
Log:
[svn-inject] Applying Debian modifications to trunk


Property changes on: trunk/clojure/debian
___________________________________________________________________
Name: mergeWithUpstream
   + 1

Added: trunk/clojure/debian/README.Debian
===================================================================
--- trunk/clojure/debian/README.Debian	                        (rev 0)
+++ trunk/clojure/debian/README.Debian	2009-01-28 14:01:46 UTC (rev 7895)
@@ -0,0 +1,19 @@
+clojure for Debian
+------------------
+
+To avoid code duplication, this package uses the libasm3-java
+package rather than Clojure's private version of asm.  Therefore
+/usr/share/java/asm3.jar and /usr/share/java/asm3-commons.jar must be
+included in the classpath together with /usr/share/java/clojure.jar
+when Clojure is invoked manually.
+
+This package includes three convenience scripts that correspond with
+Clojure's three main entry points: clojure (clojure.lang.Script),
+clojurec (clojure.lang.Compile) and clojure-repl (clojure.lang.Repl).
+
+The clojurec script has a -d option as a substitute for the system
+property clojure.compile.path, which specifies the destination
+directory for compiled class files.  The value of this option is
+automatically provided as a classpath, however it is still necessary
+to specify the source directory on the classpath.
+

Added: trunk/clojure/debian/changelog
===================================================================
--- trunk/clojure/debian/changelog	                        (rev 0)
+++ trunk/clojure/debian/changelog	2009-01-28 14:01:46 UTC (rev 7895)
@@ -0,0 +1,5 @@
+clojure (0.0.20081217-1) unstable; urgency=low
+
+  * Initial release (closes: #454566, #510356)
+
+ -- Peter Collingbourne <peter at pcc.me.uk>  Fri, 02 Jan 2009 18:50:41 +0000

Added: trunk/clojure/debian/clojure-repl.1
===================================================================
--- trunk/clojure/debian/clojure-repl.1	                        (rev 0)
+++ trunk/clojure/debian/clojure-repl.1	2009-01-28 14:01:46 UTC (rev 7895)
@@ -0,0 +1,41 @@
+.TH CLOJURE-REPL 1 "January 2, 2009"
+.SH NAME
+clojure-repl \- Clojure read-eval-print loop
+.SH SYNOPSIS
+.B clojure-repl
+[\fI-cp/-classpath classpath\fP] 
+[script.clj \fI...\fP] [\-\- \fIargs ...\fP]
+.SH DESCRIPTION
+This manual page documents briefly the
+.B clojure-repl
+command.
+.PP
+.B clojure-repl
+provides a read-eval-print loop (REPL) for the Clojure language.
+Any number of Clojure files can be provided as path arguments; these
+files are loaded in order, as if via \fIload-file\fP, before control
+is passed to the REPL.  Script files are loaded into the same namespace
+in which the REPL runs.
+.PP
+\fBclojure-repl\fP binds \fI*command\-line\-args*\fP to a seq
+containing the (optional) arguments provided after the two dashes
+(\-\-).
+.SH OPTIONS
+A summary of options is included below.
+.TP
+.B \-cp \fIclasspath\fP, \-classpath \fIclasspath\fP
+Specifies additional classpath elements.  This option overrides the $CLASSPATH environment variable.
+.SH ENVIRONMENT
+A listing of recognised environment variables is included below.
+.TP
+.B CLASSPATH
+Specifies additional classpath elements.
+.SH SEE ALSO
+.BR clojure (1),
+.BR clojurec (1).
+.SH AUTHOR
+\fBclojure-repl\fP is a wrapper script around a Java implementation by Rich Hickey <richhickey at gmail.com>.
+The wrapper script was written by Peter Collingbourne <peter at pcc.me.uk>.
+.PP
+This manual page was written by Peter Collingbourne <peter at pcc.me.uk>,
+for the Debian project (but may be used by others).

Added: trunk/clojure/debian/clojure.1
===================================================================
--- trunk/clojure/debian/clojure.1	                        (rev 0)
+++ trunk/clojure/debian/clojure.1	2009-01-28 14:01:46 UTC (rev 7895)
@@ -0,0 +1,46 @@
+.TH CLOJURE 1 "January 2, 2009"
+.SH NAME
+clojure \- Clojure script interpreter
+.SH SYNOPSIS
+.B clojure
+[\fI-cp/-classpath classpath\fP] 
+script1.clj [script2.clj \fI...\fP] [\-\- \fIargs ...\fP]
+.SH DESCRIPTION
+This manual page documents briefly the
+.B clojure
+command.
+.PP
+.B clojure
+provides a way to run one or more Clojure files from a command line.
+Any number of Clojure files can be provided as path arguments; these
+files are loaded in order, as if via \fIload-file\fP.  Files to be
+loaded from the classpath must be prefixed with a `@' character, and
+must be an absolute path to the classpath resource.  Note that the
+path will be treated as absolute within the classpath, whether it
+is prefixed with a slash or not.  Filesystem and classpath paths may
+be provided in any order, and be intermixed as necessary.
+.PP
+\fBclojure\fP binds \fI*command\-line\-args*\fP to a seq containing
+the (optional) arguments provided after the two dashes (\-\-); this
+provides a way to provide command-line arguments to your scripts.
+.PP
+Once the final script path has been loaded, \fBclojure\fP exits.
+.SH OPTIONS
+A summary of options is included below.
+.TP
+.B \-cp \fIclasspath\fP, \-classpath \fIclasspath\fP
+Specifies additional classpath elements.  This option overrides the $CLASSPATH environment variable.
+.SH ENVIRONMENT
+A listing of recognised environment variables is included below.
+.TP
+.B CLASSPATH
+Specifies additional classpath elements.
+.SH SEE ALSO
+.BR clojurec (1),
+.BR clojure-repl (1).
+.SH AUTHOR
+\fBclojure\fP is a wrapper script around a Java implementation by Rich Hickey <richhickey at gmail.com>.
+The wrapper script was written by Peter Collingbourne <peter at pcc.me.uk>.
+.PP
+This manual page was written by Peter Collingbourne <peter at pcc.me.uk>,
+for the Debian project (but may be used by others).

Added: trunk/clojure/debian/clojurec.1
===================================================================
--- trunk/clojure/debian/clojurec.1	                        (rev 0)
+++ trunk/clojure/debian/clojurec.1	2009-01-28 14:01:46 UTC (rev 7895)
@@ -0,0 +1,41 @@
+.TH CLOJUREC 1 "January 2, 2009"
+.SH NAME
+clojurec \- Clojure compiler
+.SH SYNOPSIS
+.B clojurec
+[\fI-d destination-directory\fP] 
+[\fI-cp/-classpath classpath\fP] 
+lib1 [lib2 \fI...\fP]
+.SH DESCRIPTION
+This manual page documents briefly the
+.B clojurec
+command.
+.PP
+.B clojurec
+compiles libs and generates class files stored within the directory
+named by the \fB\-d\fP option, or . if not specified.  Arguments are
+strings naming the libs to be compiled.  Note that libs are specified
+in dotted notation and are loaded from a classpath, for example my.lib
+refers to a file my/lib.clj contained within a classpath.
+.SH OPTIONS
+A summary of options is included below.
+.TP
+.B \-d \fIdestination-directory\fP
+Specifies the destination directory for compiled class files.
+.TP
+.B \-cp \fIclasspath\fP, \-classpath \fIclasspath\fP
+Specifies additional classpath elements.  This option overrides the $CLASSPATH environment variable.
+.SH ENVIRONMENT
+A listing of recognised environment variables is included below.
+.TP
+.B CLASSPATH
+Specifies additional classpath elements.
+.SH SEE ALSO
+.BR clojure (1),
+.BR clojure-repl (1).
+.SH AUTHOR
+\fBclojurec\fP is a wrapper script around a Java implementation by Rich Hickey <richhickey at gmail.com>.
+The wrapper script was written by Peter Collingbourne <peter at pcc.me.uk>.
+.PP
+This manual page was written by Peter Collingbourne <peter at pcc.me.uk>,
+for the Debian project (but may be used by others).

Added: trunk/clojure/debian/compat
===================================================================
--- trunk/clojure/debian/compat	                        (rev 0)
+++ trunk/clojure/debian/compat	2009-01-28 14:01:46 UTC (rev 7895)
@@ -0,0 +1 @@
+5

Added: trunk/clojure/debian/control
===================================================================
--- trunk/clojure/debian/control	                        (rev 0)
+++ trunk/clojure/debian/control	2009-01-28 14:01:46 UTC (rev 7895)
@@ -0,0 +1,32 @@
+Source: clojure
+Section: devel
+Priority: optional
+Maintainer: Peter Collingbourne <peter at pcc.me.uk>
+Uploaders: Debian Java Maintainers <pkg-java-maintainers at lists.alioth.debian.org>
+Build-Depends: debhelper (>= 5), cdbs, patchutils
+Build-Depends-Indep: ant, openjdk-6-jdk, libasm3-java
+Standards-Version: 3.8.0
+Homepage: http://clojure.org
+Vcs-Svn: svn+ssh://svn.debian.org/svn/pkg-java/trunk/clojure
+Vcs-Browser: http://svn.debian.org/wsvn/pkg-java/trunk/clojure
+
+Package: clojure
+Architecture: all
+Depends: ${misc:Depends}, openjdk-6-jre | java2-runtime, libasm3-java
+Description: a Lisp dialect for the JVM
+ Clojure is a dynamic programming language that targets the Java Virtual
+ Machine. It is designed to be a general-purpose language, combining the
+ approachability and interactive development of a scripting language with
+ an efficient and robust infrastructure for multithreaded programming.
+ Clojure is a compiled language - it compiles directly to JVM bytecode,
+ yet remains completely dynamic. Every feature supported by Clojure is
+ supported at runtime. Clojure provides easy access to the Java
+ frameworks, with optional type hints and type inference, to ensure that
+ calls to Java can avoid reflection.
+ .
+ Clojure is a dialect of Lisp, and shares with Lisp the code-as-data
+ philosophy and a powerful macro system. Clojure is predominantly a
+ functional programming language, and features a rich set of immutable,
+ persistent data structures. When mutable state is needed, Clojure offers
+ a software transactional memory system and reactive Agent system that
+ ensure clean, correct, multithreaded designs.

Added: trunk/clojure/debian/copyright
===================================================================
--- trunk/clojure/debian/copyright	                        (rev 0)
+++ trunk/clojure/debian/copyright	2009-01-28 14:01:46 UTC (rev 7895)
@@ -0,0 +1,315 @@
+This package was debianized by Peter Collingbourne <peter at pcc.me.uk> on
+Thu, 01 Jan 2009 19:12:25 +0000.
+
+It was downloaded from http://code.google.com/p/clojure/downloads/list
+
+The source code files in src/jvm/clojure/lang (excluding
+PersistentHashMap.java and PersistentVector.java) and src/clj are
+licensed as follows:
+
+ *   Clojure
+ *   Copyright (c) Rich Hickey. All rights reserved.
+ *   The use and distribution terms for this software are covered by the
+ *   Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php)
+ *   which can be found in the file epl-v10.html at the root of this distribution.
+ *   By using this software in any fashion, you are agreeing to be bound by
+ *       the terms of this license.
+ *   You must not remove this notice, or any other, from this software.
+
+The complete text of the Eclipse Public License - v 1.0 is also found
+at the end of this file.
+
+The source code files src/jvm/clojure/lang/PersistentHashMap.java
+and src/jvm/clojure/lang/PersistentVector.java are licensed as follows:
+
+ Copyright (c) 2007-2008, Rich Hickey
+ All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions
+ are met:
+
+ * Redistributions of source code must retain the above copyright
+   notice, this list of conditions and the following disclaimer.
+
+ * Redistributions in binary form must reproduce the above
+   copyright notice, this list of conditions and the following
+   disclaimer in the documentation and/or other materials provided
+   with the distribution.
+
+ * Neither the name of Clojure nor the names of its contributors
+   may be used to endorse or promote products derived from this
+   software without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ POSSIBILITY OF SUCH DAMAGE.
+
+The source code files in src/jvm/clojure/asm are licensed as follows,
+however their binary forms are not included with the binary version
+of this package:
+
+ * ASM: a very small and fast Java bytecode manipulation framework
+ * Copyright (c) 2000-2005 INRIA, France Telecom
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the copyright holders nor the names of its
+ *    contributors may be used to endorse or promote products derived from
+ *    this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+
+The Debian packaging is Copyright (C) 2009 Peter Collingbourne
+<peter at pcc.me.uk> and is licensed under the GNU General Public License
+version 2 or above, excluding the patches located in the debian/patches
+directory, which are licensed under the Eclipse Public License - v
+1.0. On Debian systems, the complete text of the GNU General Public
+License version 2 can be found in '/usr/share/common-licenses/GPL-2'.
+
+                      Eclipse Public License - v 1.0
+
+THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
+PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE
+PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
+
+1. DEFINITIONS
+
+"Contribution" means:
+
+a) in the case of the initial Contributor, the initial code and
+documentation distributed under this Agreement, and
+
+b) in the case of each subsequent Contributor:
+
+i) changes to the Program, and
+
+ii) additions to the Program;
+
+where such changes and/or additions to the Program originate from and are
+distributed by that particular Contributor. A Contribution 'originates'
+from a Contributor if it was added to the Program by such Contributor
+itself or anyone acting on such Contributor's behalf. Contributions do not
+include additions to the Program which: (i) are separate modules of
+software distributed in conjunction with the Program under their own
+license agreement, and (ii) are not derivative works of the Program.
+
+"Contributor" means any person or entity that distributes the Program.
+
+"Licensed Patents" mean patent claims licensable by a Contributor which
+are necessarily infringed by the use or sale of its Contribution alone or
+when combined with the Program.
+
+"Program" means the Contributions distributed in accordance with this
+Agreement.
+
+"Recipient" means anyone who receives the Program under this Agreement,
+including all Contributors.
+
+2. GRANT OF RIGHTS
+
+a) Subject to the terms of this Agreement, each Contributor hereby grants
+Recipient a non-exclusive, worldwide, royalty-free copyright license to
+reproduce, prepare derivative works of, publicly display, publicly
+perform, distribute and sublicense the Contribution of such Contributor,
+if any, and such derivative works, in source code and object code form.
+
+b) Subject to the terms of this Agreement, each Contributor hereby grants
+Recipient a non-exclusive, worldwide, royalty-free patent license under
+Licensed Patents to make, use, sell, offer to sell, import and otherwise
+transfer the Contribution of such Contributor, if any, in source code and
+object code form. This patent license shall apply to the combination of
+the Contribution and the Program if, at the time the Contribution is added
+by the Contributor, such addition of the Contribution causes such
+combination to be covered by the Licensed Patents. The patent license
+shall not apply to any other combinations which include the Contribution.
+No hardware per se is licensed hereunder.
+
+c) Recipient understands that although each Contributor grants the
+licenses to its Contributions set forth herein, no assurances are provided
+by any Contributor that the Program does not infringe the patent or other
+intellectual property rights of any other entity. Each Contributor
+disclaims any liability to Recipient for claims brought by any other
+entity based on infringement of intellectual property rights or otherwise.
+As a condition to exercising the rights and licenses granted hereunder,
+each Recipient hereby assumes sole responsibility to secure any other
+intellectual property rights needed, if any. For example, if a third party
+patent license is required to allow Recipient to distribute the Program,
+it is Recipient's responsibility to acquire that license before
+distributing the Program.
+
+d) Each Contributor represents that to its knowledge it has sufficient
+copyright rights in its Contribution, if any, to grant the copyright
+license set forth in this Agreement.
+
+3. REQUIREMENTS
+
+A Contributor may choose to distribute the Program in object code form
+under its own license agreement, provided that:
+
+a) it complies with the terms and conditions of this Agreement; and
+
+b) its license agreement:
+
+i) effectively disclaims on behalf of all Contributors all warranties and
+conditions, express and implied, including warranties or conditions of
+title and non-infringement, and implied warranties or conditions of
+merchantability and fitness for a particular purpose;
+
+ii) effectively excludes on behalf of all Contributors all liability for
+damages, including direct, indirect, special, incidental and consequential
+damages, such as lost profits;
+
+iii) states that any provisions which differ from this Agreement are
+offered by that Contributor alone and not by any other party; and
+
+iv) states that source code for the Program is available from such
+Contributor, and informs licensees how to obtain it in a reasonable manner
+on or through a medium customarily used for software exchange.
+
+When the Program is made available in source code form:
+
+a) it must be made available under this Agreement; and
+
+b) a copy of this Agreement must be included with each copy of the
+Program.
+
+Contributors may not remove or alter any copyright notices contained
+within the Program.
+
+Each Contributor must identify itself as the originator of its
+Contribution, if any, in a manner that reasonably allows subsequent
+Recipients to identify the originator of the Contribution.
+
+4. COMMERCIAL DISTRIBUTION
+
+Commercial distributors of software may accept certain responsibilities
+with respect to end users, business partners and the like. While this
+license is intended to facilitate the commercial use of the Program, the
+Contributor who includes the Program in a commercial product offering
+should do so in a manner which does not create potential liability for
+other Contributors. Therefore, if a Contributor includes the Program in a
+commercial product offering, such Contributor ("Commercial Contributor")
+hereby agrees to defend and indemnify every other Contributor
+("Indemnified Contributor") against any losses, damages and costs
+(collectively "Losses") arising from claims, lawsuits and other legal
+actions brought by a third party against the Indemnified Contributor to
+the extent caused by the acts or omissions of such Commercial Contributor
+in connection with its distribution of the Program in a commercial product
+offering. The obligations in this section do not apply to any claims or
+Losses relating to any actual or alleged intellectual property
+infringement. In order to qualify, an Indemnified Contributor must: a)
+promptly notify the Commercial Contributor in writing of such claim, and
+b) allow the Commercial Contributor to control, and cooperate with the
+Commercial Contributor in, the defense and any related settlement
+negotiations. The Indemnified Contributor may participate in any such
+claim at its own expense.
+
+For example, a Contributor might include the Program in a commercial
+product offering, Product X. That Contributor is then a Commercial
+Contributor. If that Commercial Contributor then makes performance claims,
+or offers warranties related to Product X, those performance claims and
+warranties are such Commercial Contributor's responsibility alone. Under
+this section, the Commercial Contributor would have to defend claims
+against the other Contributors related to those performance claims and
+warranties, and if a court requires any other Contributor to pay any
+damages as a result, the Commercial Contributor must pay those damages.
+
+5. NO WARRANTY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED
+ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER
+EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR
+CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A
+PARTICULAR PURPOSE. Each Recipient is solely responsible for determining
+the appropriateness of using and distributing the Program and assumes all
+risks associated with its exercise of rights under this Agreement ,
+including but not limited to the risks and costs of program errors,
+compliance with applicable laws, damage to or loss of data, programs or
+equipment, and unavailability or interruption of operations.
+
+6. DISCLAIMER OF LIABILITY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY
+CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
+INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
+WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION
+OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF
+ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+7. GENERAL
+
+If any provision of this Agreement is invalid or unenforceable under
+applicable law, it shall not affect the validity or enforceability of the
+remainder of the terms of this Agreement, and without further action by
+the parties hereto, such provision shall be reformed to the minimum extent
+necessary to make such provision valid and enforceable.
+
+If Recipient institutes patent litigation against any entity (including a
+cross-claim or counterclaim in a lawsuit) alleging that the Program itself
+(excluding combinations of the Program with other software or hardware)
+infringes such Recipient's patent(s), then such Recipient's rights granted
+under Section 2(b) shall terminate as of the date such litigation is
+filed.
+
+All Recipient's rights under this Agreement shall terminate if it fails to
+comply with any of the material terms or conditions of this Agreement and
+does not cure such failure in a reasonable period of time after becoming
+aware of such noncompliance. If all Recipient's rights under this
+Agreement terminate, Recipient agrees to cease use and distribution of the
+Program as soon as reasonably practicable. However, Recipient's
+obligations under this Agreement and any licenses granted by Recipient
+relating to the Program shall continue and survive.
+
+Everyone is permitted to copy and distribute copies of this Agreement, but
+in order to avoid inconsistency the Agreement is copyrighted and may only
+be modified in the following manner. The Agreement Steward reserves the
+right to publish new versions (including revisions) of this Agreement from
+time to time. No one other than the Agreement Steward has the right to
+modify this Agreement. The Eclipse Foundation is the initial Agreement
+Steward. The Eclipse Foundation may assign the responsibility to serve as
+the Agreement Steward to a suitable separate entity. Each new version of
+the Agreement will be given a distinguishing version number. The Program
+(including Contributions) may always be distributed subject to the version
+of the Agreement under which it was received. In addition, after a new
+version of the Agreement is published, Contributor may elect to distribute
+the Program (including its Contributions) under the new version. Except as
+expressly stated in Sections 2(a) and 2(b) above, Recipient receives no
+rights or licenses to the intellectual property of any Contributor under
+this Agreement, whether expressly, by implication, estoppel or otherwise.
+All rights in the Program not expressly granted under this Agreement are
+reserved.
+
+This Agreement is governed by the laws of the State of New York and the
+intellectual property laws of the United States of America. No party to
+this Agreement will bring a legal action under this Agreement more than
+one year after the cause of action arose. Each party waives its rights to
+a jury trial in any resulting litigation.

Added: trunk/clojure/debian/docs
===================================================================
--- trunk/clojure/debian/docs	                        (rev 0)
+++ trunk/clojure/debian/docs	2009-01-28 14:01:46 UTC (rev 7895)
@@ -0,0 +1 @@
+readme.txt

Added: trunk/clojure/debian/install
===================================================================
--- trunk/clojure/debian/install	                        (rev 0)
+++ trunk/clojure/debian/install	2009-01-28 14:01:46 UTC (rev 7895)
@@ -0,0 +1,2 @@
+debian/scripts/* usr/bin
+clojure.jar usr/share/java

Added: trunk/clojure/debian/manpages
===================================================================
--- trunk/clojure/debian/manpages	                        (rev 0)
+++ trunk/clojure/debian/manpages	2009-01-28 14:01:46 UTC (rev 7895)
@@ -0,0 +1,3 @@
+debian/clojure.1
+debian/clojurec.1
+debian/clojure-repl.1

Added: trunk/clojure/debian/patches/01-system-asm.patch
===================================================================
--- trunk/clojure/debian/patches/01-system-asm.patch	                        (rev 0)
+++ trunk/clojure/debian/patches/01-system-asm.patch	2009-01-28 14:01:46 UTC (rev 7895)
@@ -0,0 +1,64 @@
+diff -ur clojure.orig/build.xml clojure/build.xml
+--- clojure.orig/build.xml	2008-12-16 20:51:46.000000000 +0000
++++ clojure/build.xml	2009-01-01 04:52:54.000000000 +0000
+@@ -19,13 +19,13 @@
+   <target name="compile_java" depends="init"
+           description="Compile Java sources.">
+     <javac srcdir="${jsrc}" destdir="${build}" includeJavaRuntime="yes"
+-           debug="true" target="1.5"/>
++           debug="true" target="1.5" includes="clojure/lang/**"/>
+   </target>
+ 
+   <target name="compile_clojure" depends="compile_java"
+           description="Compile Clojure sources.">
+     <java classname="clojure.lang.Compile"
+-          classpath="${build}:${cljsrc}">
++          classpath="${build}:${cljsrc}:${java.class.path}">
+       <sysproperty key="clojure.compile.path" value="${build}"/>
+       <arg value="clojure.core"/>
+       <arg value="clojure.main"/>
+diff -ur clojure.orig/src/clj/clojure/core_proxy.clj clojure/src/clj/clojure/core_proxy.clj
+--- clojure.orig/src/clj/clojure/core_proxy.clj	2008-12-16 20:51:42.000000000 +0000
++++ clojure/src/clj/clojure/core_proxy.clj	2009-01-01 04:58:35.000000000 +0000
+@@ -11,9 +11,9 @@
+ ;;;;;;;;;;;;;;;;;;;;;;;;;;;; proxy ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+ 
+ (import
+- '(clojure.asm ClassWriter ClassVisitor Opcodes Type) 
++ '(org.objectweb.asm ClassWriter ClassVisitor Opcodes Type) 
+  '(java.lang.reflect Modifier Constructor)
+- '(clojure.asm.commons Method GeneratorAdapter)
++ '(org.objectweb.asm.commons Method GeneratorAdapter)
+  '(clojure.lang IProxy Reflector DynamicClassLoader IPersistentMap PersistentHashMap RT))
+ 
+ (defn method-sig [#^java.lang.reflect.Method meth]
+diff -ur clojure.orig/src/clj/clojure/genclass.clj clojure/src/clj/clojure/genclass.clj
+--- clojure.orig/src/clj/clojure/genclass.clj	2008-12-16 20:51:42.000000000 +0000
++++ clojure/src/clj/clojure/genclass.clj	2009-01-01 04:58:05.000000000 +0000
+@@ -9,8 +9,8 @@
+ (in-ns 'clojure.core)
+ 
+ (import '(java.lang.reflect Modifier Constructor)
+-        '(clojure.asm ClassWriter ClassVisitor Opcodes Type)
+-        '(clojure.asm.commons Method GeneratorAdapter)
++        '(org.objectweb.asm ClassWriter ClassVisitor Opcodes Type)
++        '(org.objectweb.asm.commons Method GeneratorAdapter)
+         '(clojure.lang IPersistentMap))
+ 
+ ;(defn method-sig [#^java.lang.reflect.Method meth]
+diff -ur clojure.orig/src/jvm/clojure/lang/Compiler.java clojure/src/jvm/clojure/lang/Compiler.java
+--- clojure.orig/src/jvm/clojure/lang/Compiler.java	2008-12-16 20:51:46.000000000 +0000
++++ clojure/src/jvm/clojure/lang/Compiler.java	2009-01-01 04:22:43.000000000 +0000
+@@ -14,9 +14,9 @@
+ 
+ //*
+ 
+-import clojure.asm.*;
+-import clojure.asm.commons.Method;
+-import clojure.asm.commons.GeneratorAdapter;
++import org.objectweb.asm.*;
++import org.objectweb.asm.commons.Method;
++import org.objectweb.asm.commons.GeneratorAdapter;
+ //*/
+ /*
+ 

Added: trunk/clojure/debian/patches/02-better-bytecode.patch
===================================================================
--- trunk/clojure/debian/patches/02-better-bytecode.patch	                        (rev 0)
+++ trunk/clojure/debian/patches/02-better-bytecode.patch	2009-01-28 14:01:46 UTC (rev 7895)
@@ -0,0 +1,86 @@
+From 9c991e251cbc27947737445847a4103b371737ae Mon Sep 17 00:00:00 2001
+From: Peter Collingbourne <peter at pcc.me.uk>
+Date: Mon, 29 Dec 2008 01:40:19 +0000
+Subject: [PATCH] Generate bytecode compatible with stricter JVMs (e.g. gij)
+
+---
+ src/clj/clojure/core_proxy.clj     |    2 ++
+ src/clj/clojure/genclass.clj       |    3 +++
+ src/jvm/clojure/lang/Compiler.java |    6 ++----
+ 3 files changed, 7 insertions(+), 4 deletions(-)
+
+diff --git a/src/clj/clojure/core_proxy.clj b/src/clj/clojure/core_proxy.clj
+index 8a77734..fc20cf7 100644
+--- a/src/clj/clojure/core_proxy.clj
++++ b/src/clj/clojure/core_proxy.clj
+@@ -62,6 +62,7 @@
+               (. gen (dup))
+               (. gen (ifNull else-label))
+                                         ;if found
++              (. gen (checkCast ifn-type))
+               (. gen (loadThis))
+                                         ;box args
+               (dotimes [i (count ptypes)]
+@@ -125,6 +126,7 @@
+       (. gen (loadThis))
+       (. gen (dup))
+       (. gen (getField ctype fmap imap-type))
++      (. gen (checkCast (totype clojure.lang.IPersistentCollection)))
+       (. gen (loadArgs))
+       (. gen (invokeInterface (totype clojure.lang.IPersistentCollection)
+                               (. Method (getMethod "clojure.lang.IPersistentCollection cons(Object)"))))
+diff --git a/src/clj/clojure/genclass.clj b/src/clj/clojure/genclass.clj
+index e293fe0..e8f55b6 100644
+--- a/src/clj/clojure/genclass.clj
++++ b/src/clj/clojure/genclass.clj
+@@ -181,6 +181,7 @@
+                 (when is-overload
+                   (. gen (mark found-label)))
+                                         ;if found
++                (. gen (checkCast ifn-type))
+                 (when-not as-static
+                   (. gen (loadThis)))
+                                         ;box args
+@@ -274,6 +275,7 @@
+             (emit-get-var gen init-name)
+             (. gen dup)
+             (. gen ifNull no-init-label)
++            (. gen (checkCast ifn-type))
+                                         ;box init args
+             (dotimes [i (count pclasses)]
+               (. gen (loadArg i))
+@@ -386,6 +388,7 @@
+         (emit-get-var gen main-name)
+         (. gen dup)
+         (. gen ifNull no-main-label)
++        (. gen (checkCast ifn-type))
+         (. gen loadArgs)
+         (. gen (invokeStatic rt-type (. Method (getMethod "clojure.lang.ISeq seq(Object)"))))
+         (. gen (invokeInterface ifn-type (new Method "applyTo" obj-type 
+diff --git a/src/jvm/clojure/lang/Compiler.java b/src/jvm/clojure/lang/Compiler.java
+index bb62536..961e16a 100644
+--- a/src/jvm/clojure/lang/Compiler.java
++++ b/src/jvm/clojure/lang/Compiler.java
+@@ -1155,8 +1155,7 @@ static class InstanceMethodExpr extends MethodExpr{
+ 			{
+ 			Type type = Type.getType(method.getDeclaringClass());
+ 			target.emit(C.EXPRESSION, fn, gen);
+-			if(!method.getDeclaringClass().isInterface())
+-				gen.checkCast(type);
++			gen.checkCast(type);
+ 			MethodExpr.emitTypedArgs(fn, gen, method.getParameterTypes(), args);
+ 			if(context == C.RETURN)
+ 				{
+@@ -1179,8 +1178,7 @@ static class InstanceMethodExpr extends MethodExpr{
+ 			{
+ 			Type type = Type.getType(method.getDeclaringClass());
+ 			target.emit(C.EXPRESSION, fn, gen);
+-			if(!method.getDeclaringClass().isInterface())
+-				gen.checkCast(type);
++			gen.checkCast(type);
+ 			MethodExpr.emitTypedArgs(fn, gen, method.getParameterTypes(), args);
+ 			if(context == C.RETURN)
+ 				{
+-- 
+1.5.6.5
+

Added: trunk/clojure/debian/rules
===================================================================
--- trunk/clojure/debian/rules	                        (rev 0)
+++ trunk/clojure/debian/rules	2009-01-28 14:01:46 UTC (rev 7895)
@@ -0,0 +1,22 @@
+#!/usr/bin/make -f
+
+VERSION = $(shell dpkg-parsechangelog | grep ^Version | sed "s/Version: //")
+UPSTREAM_VERSION = $(shell echo $(VERSION) | sed s/-.*//)
+
+include /usr/share/cdbs/1/class/ant.mk
+include /usr/share/cdbs/1/rules/debhelper.mk
+include /usr/share/cdbs/1/rules/simple-patchsys.mk
+
+DEB_INSTALL_CHANGELOGS_ALL := changes.txt
+
+JAVA_HOME := /usr/lib/jvm/java-6-openjdk
+DEB_JARS  := asm3 asm3-commons
+
+get-orig-source:
+	-uscan --verbose --force-download --repack --upstream-version $(UPSTREAM_VERSION)
+
+makebuilddir/clojure::
+	if [ ! -e clojure.jar.dist ] ; then mv clojure.jar clojure.jar.dist ; fi
+
+cleanbuilddir/clojure::
+	if [ -e clojure.jar.dist ] ; then mv clojure.jar.dist clojure.jar ; fi


Property changes on: trunk/clojure/debian/rules
___________________________________________________________________
Name: svn:executable
   + *

Added: trunk/clojure/debian/scripts/clojure
===================================================================
--- trunk/clojure/debian/scripts/clojure	                        (rev 0)
+++ trunk/clojure/debian/scripts/clojure	2009-01-28 14:01:46 UTC (rev 7895)
@@ -0,0 +1,27 @@
+#!/bin/sh
+
+if [ $# -eq 0 ] ; then
+	echo "usage: $0 [-cp/-classpath <classpath>] file.clj [@classpathfile.clj ...] [-- args]"
+	exit 1
+fi
+
+if [ "x$CLASSPATH" = "x" ] ; then
+	extra_classpath=""
+else
+	extra_classpath=":$CLASSPATH"
+fi
+
+while true ; do
+	case "$1" in
+		-cp | -classpath)
+			extra_classpath=":$2"
+			shift 2 ;;
+		--)
+			shift
+			break ;;
+		*)
+			break ;;
+	esac
+done
+
+exec java -cp /usr/share/java/asm3.jar:/usr/share/java/asm3-commons.jar:/usr/share/java/clojure.jar"$extra_classpath" clojure.lang.Script "$@"

Added: trunk/clojure/debian/scripts/clojure-repl
===================================================================
--- trunk/clojure/debian/scripts/clojure-repl	                        (rev 0)
+++ trunk/clojure/debian/scripts/clojure-repl	2009-01-28 14:01:46 UTC (rev 7895)
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+if [ "x$CLASSPATH" = "x" ] ; then
+	extra_classpath=""
+else
+	extra_classpath=":$CLASSPATH"
+fi
+
+while true ; do
+	case "$1" in
+		-cp | -classpath)
+			extra_classpath=":$2"
+			shift 2 ;;
+		--)
+			shift
+			break ;;
+		*)
+			break ;;
+	esac
+done
+
+exec java -cp /usr/share/java/asm3.jar:/usr/share/java/asm3-commons.jar:/usr/share/java/clojure.jar"$extra_classpath" clojure.lang.Repl "$@"

Added: trunk/clojure/debian/scripts/clojurec
===================================================================
--- trunk/clojure/debian/scripts/clojurec	                        (rev 0)
+++ trunk/clojure/debian/scripts/clojurec	2009-01-28 14:01:46 UTC (rev 7895)
@@ -0,0 +1,32 @@
+#!/bin/sh
+
+dest_dir=.
+
+if [ $# -eq 0 ] ; then
+	echo "usage: $0 [-d <destination-directory>] [-cp/-classpath <classpath>] lib1 lib2 ..."
+	exit 1
+fi
+
+if [ "x$CLASSPATH" = "x" ] ; then
+	extra_classpath=""
+else
+	extra_classpath=":$CLASSPATH"
+fi
+
+while true ; do
+	case "$1" in
+		-d)
+			dest_dir="$2"
+			shift 2 ;;
+		-cp | -classpath)
+			extra_classpath=":$2"
+			shift 2 ;;
+		--)
+			shift
+			break ;;
+		*)
+			break ;;
+	esac
+done
+
+exec java -cp /usr/share/java/asm3.jar:/usr/share/java/asm3-commons.jar:/usr/share/java/clojure.jar:"$dest_dir$extra_classpath" -Dclojure.compile.path="$dest_dir" clojure.lang.Compile "$@"

Added: trunk/clojure/debian/watch
===================================================================
--- trunk/clojure/debian/watch	                        (rev 0)
+++ trunk/clojure/debian/watch	2009-01-28 14:01:46 UTC (rev 7895)
@@ -0,0 +1,2 @@
+version=3
+opts="uversionmangle=s/^/0.0./" http://code.google.com/p/clojure/downloads/list .*clojure_([\d]*)\.zip




More information about the pkg-java-commits mailing list