[robocode] 01/06: Imported Debian patch 1.6.2+dfsg-3

Markus Koschany apo-guest at moszumanska.debian.org
Mon Oct 20 22:33:23 BST 2014


This is an automated email from the git hooks/post-receive script.

apo-guest pushed a commit to branch master
in repository robocode.

commit 0db9dcc473082d901259b80a9fed0b35abb2f053
Author: Chris Lamb <lamby at debian.org>
Date:   Tue Feb 9 17:09:46 2010 +0000

    Imported Debian patch 1.6.2+dfsg-3
---
 debian/README.Debian-source                        |   9 +
 debian/changelog                                   |  80 +++++++
 debian/codesize/Codesize.java                      |  81 +++++++
 debian/compat                                      |   1 +
 debian/control                                     |  34 +++
 debian/copyright                                   | 246 +++++++++++++++++++++
 debian/manpages/robocode.1                         |  28 +++
 debian/misc/compiler.properties                    |   8 +
 debian/misc/missing-documentation.html             |  16 ++
 debian/misc/robocode                               |  44 ++++
 debian/patches/01-use-sensible-browser.diff        |  16 ++
 .../02-use-versions.txt-from-usr-share-doc.diff    |  18 ++
 .../patches/03-point-api-help-to-robocode-doc.diff |  43 ++++
 debian/patches/04-link-to-local-docs.diff          |  17 ++
 debian/patches/05-codesize-jar.diff                |  52 +++++
 debian/patches/06-update-manager.diff              |  16 ++
 debian/patches/series                              |   6 +
 debian/robocode-doc.install                        |   1 +
 debian/robocode.desktop                            |   9 +
 debian/robocode.install                            |   9 +
 debian/robocode.manpages                           |   1 +
 debian/rules                                       |  81 +++++++
 debian/source/format                               |   1 +
 debian/watch                                       |   3 +
 24 files changed, 820 insertions(+)

diff --git a/debian/README.Debian-source b/debian/README.Debian-source
new file mode 100644
index 0000000..168516a
--- /dev/null
+++ b/debian/README.Debian-source
@@ -0,0 +1,9 @@
+Robocode README for Debian
+==========================
+
+The upstream Robocode tarball has been repacked from .zip to .tar.gz. CVS
+directories and the Jikes .jars were removed during this process.
+
+One can use the 'upstream' target in debian/rules to replicate the process.
+
+ -- Chris Lamb <chris at chris-lamb.co.uk>  Fri, 21 Dec 2007 02:49:03 +0000
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..e038288
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,80 @@
+robocode (1.6.2+dfsg-3) unstable; urgency=low
+
+  * Update debian/watch regex. Thanks to Rafal Krypa <rafal at krypa.net>.
+    (Closes: #551876)
+  * Bump Standards-Version to 3.8.4
+  * Switch to dpkg-source 3.0 (quilt) format
+    - Add all context to diffs as quilt format does not permit any fuzz.
+  * Depend on default-jdk-doc instead of classpath-doc and update patches and
+    links to match. (Closes: #567292)
+
+ -- Chris Lamb <lamby at debian.org>  Tue, 09 Feb 2010 17:09:46 +0000
+
+robocode (1.6.2+dfsg-2) unstable; urgency=low
+
+  * Add "java2-runtime" as an alternate Depends for people still using
+    sun-java6-jdk. (Closes: #545225)
+  * Bump Standards-Version to 3.8.3.
+
+ -- Chris Lamb <lamby at debian.org>  Sun, 06 Sep 2009 21:45:49 +0100
+
+robocode (1.6.2+dfsg-1) unstable; urgency=low
+
+  * Repack tarball without codesize.jar (Closes: #527979)
+    - Add libbcel-java to Build-Depends-Indep and binary Depends.
+    - Patch build.xml to use bcel.jar over codesize.jar.
+    - Add a shim codesize layer to use libbcel-java to calculate robot size.
+    - Add dversionmangle line to debian/watch.
+  * Add patch to disable update manager.
+  * Update location of Git repositories.
+  * Don't refer to versionless /usr/share/common-licenses/GPL.
+  * Bump Standards-Version to 3.8.1.
+  * Move to debhelper 7.
+    - Add ${misc:Depends} to robocode-doc's Depends.
+
+ -- Chris Lamb <lamby at debian.org>  Sun, 10 May 2009 12:51:55 +0100
+
+robocode (1.6.2-1) unstable; urgency=low
+
+  * New upstream release.
+  * New maintainer email address.
+  * Move ant from Build-Depends-Indep to Build-Depends so that it's satisfied
+    in clean target.
+  * Refresh 01-use-sensible-browser.diff.
+  * Move from (C) and (c) to "©" in debian/copyright to please Lintian.
+
+ -- Chris Lamb <lamby at debian.org>  Tue, 06 Jan 2009 08:52:35 +0000
+
+robocode (1.6.1~beta2-2) unstable; urgency=low
+
+  * Build-Depend on classpath-doc and patch upstream's build.xml to link
+    documentation there instead of on the web to prevent FTBFS when building
+    with no internet connection (Closes: #494222)
+
+ -- Chris Lamb <chris at chris-lamb.co.uk>  Fri, 08 Aug 2008 22:21:12 +0100
+
+robocode (1.6.1~beta2-1) unstable; urgency=low
+
+  * New upstream release.
+  * Depend on openjdk6-jre instead of sun-javaX-jre - upload to main.
+  * Tidy /usr/bin/robocode wrapper and add support for openjdk-6-jre.
+  * Remove "Encoding" key from robocode.desktop.
+  * debian/control:
+    - Bump Standards-Version to 3.8.0.
+    - Move imagemagick to Build-Depends-Indep.
+  * Move to quilt patch system.
+  * Rename 'upstream' target in debian/rules to 'get-orig-source'.
+
+ -- Chris Lamb <chris at chris-lamb.co.uk>  Wed, 16 Jul 2008 13:30:35 +0100
+
+robocode (1.6.0~beta2-1) unstable; urgency=low
+
+  * New upstream release.
+
+ -- Chris Lamb <chris at chris-lamb.co.uk>  Fri, 18 Apr 2008 23:44:46 +0100
+
+robocode (1.5.2-1) unstable; urgency=low
+
+  * Initial release. (Closes: #455519)
+
+ -- Chris Lamb <chris at chris-lamb.co.uk>  Thu, 24 Jan 2008 19:37:42 +0000
diff --git a/debian/codesize/Codesize.java b/debian/codesize/Codesize.java
new file mode 100644
index 0000000..6fb0703
--- /dev/null
+++ b/debian/codesize/Codesize.java
@@ -0,0 +1,81 @@
+package codesize;
+
+import java.io.*;
+import java.util.*;
+import java.util.zip.*;
+import org.apache.bcel.classfile.*;
+
+public class Codesize
+{
+  static byte buf[] = new byte[2048];
+  static ByteArrayOutputStream bufOutputStream = new ByteArrayOutputStream();
+
+  public static class Item {
+    int ttlCodeSize;
+
+    Item(int ttlCodeSize) {
+      this.ttlCodeSize = ttlCodeSize;
+    }
+
+    public int getCodeSize() { return ttlCodeSize; }
+  }
+
+  static int processClassInputStream(InputStream inputStream, String filename)
+    throws IOException
+  {
+    int result = 0;
+
+    ClassParser classParser = new ClassParser(inputStream, filename);
+    Method methods[] = classParser.parse().getMethods();
+    for(int i=0; i<methods.length; i++) {
+      Code code = methods[i].getCode();
+      if(code != null)
+        result += code.getCode().length;
+    }
+
+    return result;
+  }
+
+  public static Item processZipFile(File zipFile)
+  {
+    try {
+      ZipInputStream inputStream = new ZipInputStream(
+        new BufferedInputStream(new FileInputStream(zipFile))
+      );
+      try {
+        return processZipFile(zipFile, inputStream);
+      } finally {
+        inputStream.close();
+      }
+    } catch(IOException e) {
+      System.err.println("Ignoring " + zipFile + ": " + e.getMessage());
+    }
+    return null;
+  }
+
+  public static Item processZipFile(File zipFile, ZipInputStream inputStream)
+    throws IOException
+  {
+    int ttlCodeSize = 0;
+
+    ZipEntry zipEntry;
+    while((zipEntry = inputStream.getNextEntry()) != null) {
+      if(zipEntry.getName().toLowerCase().endsWith(".class")) {
+      bufOutputStream.reset();
+        int nRead;
+        while((nRead = inputStream.read(buf, 0, buf.length)) > -1)
+          bufOutputStream.write(buf, 0, nRead);
+
+        ttlCodeSize += processClassInputStream(
+          new ByteArrayInputStream(bufOutputStream.toByteArray()),
+          zipEntry.getName()
+        );
+      }
+    }
+
+    if(ttlCodeSize == 0)
+      throw new IOException("total code size is 0");
+
+    return new Item(ttlCodeSize);
+  }
+}
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 0000000..7f8f011
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+7
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..07e468b
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,34 @@
+Source: robocode
+Section: games
+Priority: optional
+Maintainer: Chris Lamb <lamby at debian.org>
+Build-Depends: debhelper (>= 7), quilt, ant
+Build-Depends-Indep: java-gcj-compat-dev, imagemagick, default-jdk-doc, libbcel-java
+Standards-Version: 3.8.4
+Homepage: http://robocode.sf.net/
+Vcs-Git: git://git.chris-lamb.co.uk/debian/pkg-robocode.git
+Vcs-Browser: http://git.chris-lamb.co.uk/?p=debian/pkg-robocode.git
+
+Package: robocode
+Architecture: all
+Depends: ${misc:Depends}, openjdk-6-jre | java2-runtime, libbcel-java
+Recommends: java2-compiler | openjdk-6-jdk | java-gcj-compat-dev
+Suggests: robocode-doc
+Description: Java programming game based on battle tanks
+ Robocode is a Java programming game where the goal is to develop a robot
+ battle tank to battle against other tanks. The robot battles are running in
+ real-time and on-screen. The motto of Robocode is: Build the best, destroy
+ the rest!
+
+Package: robocode-doc
+Architecture: all
+Depends: ${misc:Depends}
+Suggests: robocode
+Section: doc
+Description: Java programming game based on battle tanks (documentation)
+ Robocode is a Java programming game where the goal is to develop a robot
+ battle tank to battle against other tanks. The robot battles are running in
+ real-time and on-screen. The motto of Robocode is: Build the best, destroy
+ the rest!
+ .
+ This package contains Javadoc HTML documentation.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..071b79b
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,246 @@
+This package was debianized by Chris Lamb <chris at chris-lamb.co.uk> on
+Fri, 21 Dec 2007 16:33:32 +0000.
+
+It was downloaded from <http://robocode.sf.net/>.
+
+Upstream Authors:
+
+   Matthew A. Nelson and Robocode contributors.
+
+License:
+
+   Copyright © 2001, 2007  Matthew A. Nelson and Robocode contributors
+   Copyright © 2003, 2007  Albert Perez and RoboRumble contributors
+
+
+Common Public License Version 1.0
+
+	THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS COMMON
+	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 a Contributor with
+	respect to a patent applicable to software (including a cross-claim or
+	counterclaim in a lawsuit), then any patent licenses granted by that
+	Contributor to such Recipient under this Agreement shall terminate as of
+	the date such litigation is filed. In addition, 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. IBM is the initial Agreement
+	Steward. IBM 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.
+
+The Debian packaging is © 2007, Chris Lamb <chris at chris-lamb.co.uk> and
+is licensed under the GPL, see `/usr/share/common-licenses/GPL-3'.
diff --git a/debian/manpages/robocode.1 b/debian/manpages/robocode.1
new file mode 100644
index 0000000..670dc2b
--- /dev/null
+++ b/debian/manpages/robocode.1
@@ -0,0 +1,28 @@
+.TH ROBOCODE 1 "December 22, 2007"
+
+.SH NAME
+robocode \- Java programming game based on battle tanks.
+
+.SH SYNOPSIS
+.B robocode
+
+.SH DESCRIPTION
+.B robocode
+is a Java programming game, where the goal is to develop a robot battle tank
+to battle against other tanks. The robot battles are running in real-time and
+on-screen. The motto of Robocode is: Build the best, destroy the rest!
+
+.PP
+The first time Robocode is run a small introductory battle commences.
+
+.SH ENVIRONMENT
+.B ROBOCODE
+specifies the location of your robots and various configuration files. If the
+directory does not exist, it will be created and initialised with sample robots
+and battles.
+
+.SH AUTHORS
+Matthew A. Nelson, Albert Perez, Robocode and RoboRumble contributors.
+.PP
+This manual page was written by Chris Lamb <chris at chris-lamb.co.uk>,
+for the Debian project (but may be used by others).
diff --git a/debian/misc/compiler.properties b/debian/misc/compiler.properties
new file mode 100644
index 0000000..f1b0f3e
--- /dev/null
+++ b/debian/misc/compiler.properties
@@ -0,0 +1,8 @@
+
+# Debian default compiler.properties
+#  -- Chris Lamb <chris at chris-lamb.co.uk>  Fri, 21 Dec 2007 16:17:45 +0000
+
+robocode.version=1.5.1
+compiler.options=-deprecation -g
+compiler.classpath=-classpath /usr/share/java/robocode.jar\:robots
+compiler.binary=javac
diff --git a/debian/misc/missing-documentation.html b/debian/misc/missing-documentation.html
new file mode 100644
index 0000000..bcf0c3a
--- /dev/null
+++ b/debian/misc/missing-documentation.html
@@ -0,0 +1,16 @@
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
+<head>
+<title>Missing robocode-doc package</title>
+</head>
+
+<body>
+
+<h1>Missing robocode-doc package</h1>
+
+<p>You should install the <strong>robocode-doc</strong> package to view the Robocode API documentation.</p>
+
+<p>Once you have installed it, it will appear at: <a href="file:///usr/share/doc/robocode-doc/html/index.html">/usr/share/doc/robocode-doc/html/index.html</a>.</p>
+
+</body>
+</html>
diff --git a/debian/misc/robocode b/debian/misc/robocode
new file mode 100644
index 0000000..9c4f155
--- /dev/null
+++ b/debian/misc/robocode
@@ -0,0 +1,44 @@
+#!/bin/sh
+
+set -eu
+
+ROBOCODE_HOME=${ROBOCODE_HOME:-~/.robocode}
+
+if [ ! -d "${ROBOCODE_HOME}" ];
+then
+	mkdir -p "${ROBOCODE_HOME}/battles"
+	mkdir -p "${ROBOCODE_HOME}/robots"
+	mkdir -p "${ROBOCODE_HOME}/compilers"
+	mkdir -p "${ROBOCODE_HOME}/config"
+	cp /usr/share/robocode/compiler.properties "${ROBOCODE_HOME}/config"
+	ln -s /usr/share/robocode/templates "${ROBOCODE_HOME}/templates"
+	ln -s /usr/share/robocode/robots/sample "${ROBOCODE_HOME}/robots"
+	ln -s /usr/share/robocode/robots/sampleteam "${ROBOCODE_HOME}/robots"
+	ln -s /usr/share/robocode/intro.battle "${ROBOCODE_HOME}/battles"
+	ln -s /usr/share/robocode/CompilerTest.java "${ROBOCODE_HOME}/compilers"
+fi
+
+for JAVA_VERSION in java-6-openjdk java-5-sun java-6-sun
+do
+	BINARY="/usr/lib/jvm/${JAVA_VERSION}/bin/java"
+
+	if [ -x "${BINARY}" ];
+	then
+		ROBOCODE_JAVA="${BINARY}"
+		break
+	fi
+done
+
+if [ -z "${ROBOCODE_JAVA:-}" ];
+then
+	echo "E: Cannot find JRE, exiting.." 1>&2
+	exit 1
+fi
+
+cd "${ROBOCODE_HOME}"
+
+exec ${ROBOCODE_JAVA} \
+	-Xmx512M -Dsun.io.useCanonCaches=false \
+	-cp /usr/share/java/robocode.jar:/usr/share/java/bcel.jar:/usr/share/java/cachecleaner.jar \
+	robocode.Robocode \
+	"$@"
diff --git a/debian/patches/01-use-sensible-browser.diff b/debian/patches/01-use-sensible-browser.diff
new file mode 100644
index 0000000..f8c2553
--- /dev/null
+++ b/debian/patches/01-use-sensible-browser.diff
@@ -0,0 +1,16 @@
+## use-sensible-browser.diff by Chris Lamb <chris at chris-lamb.co.uk>
+##
+## Use Debian's /usr/bin/sensible-browser over Robocode's browser.sh
+
+diff -urNad robocode~/robocode/robocode/manager/BrowserManager.java robocode/robocode/robocode/manager/BrowserManager.java
+--- robocode~/robocode/robocode/manager/BrowserManager.java	2007-02-11 00:40:12.000000000 +0000
++++ robocode/robocode/robocode/manager/BrowserManager.java	2007-12-21 03:50:19.000000000 +0000
+@@ -32,7 +32,7 @@
+ 		if (System.getProperty("os.name").toLowerCase().startsWith("windows")) {
+ 			browserCommand = "rundll32 url.dll, FileProtocolHandler";
+ 		} else {
+-			browserCommand = "browser.sh";
++			browserCommand = "sensible-browser";
+ 		}
+ 	}
+ 
diff --git a/debian/patches/02-use-versions.txt-from-usr-share-doc.diff b/debian/patches/02-use-versions.txt-from-usr-share-doc.diff
new file mode 100644
index 0000000..c4c744a
--- /dev/null
+++ b/debian/patches/02-use-versions.txt-from-usr-share-doc.diff
@@ -0,0 +1,18 @@
+## 02-use-versions.txt-from-usr-share-doc.diff by Chris Lamb <chris at chris-lamb.co.uk>
+##
+## Use the versions.txt installed by dh_installchangelogs
+
+diff -urNad robocode~/robocode/robocode/manager/WindowManager.java robocode/robocode/robocode/manager/WindowManager.java
+--- robocode.orig/robocode/robocode/manager/WindowManager.java	2010-02-09 16:48:11.000000000 +0000
++++ robocode/robocode/robocode/manager/WindowManager.java	2010-02-09 16:48:44.000000000 +0000
+@@ -178,8 +178,7 @@
+ 
+ 	public void showVersionsTxt() {
+ 		showInBrowser(
+-				"file://" + new File(FileUtil.getCwd(), "").getAbsoluteFile() + System.getProperty("file.separator")
+-				+ "versions.txt");
++				"file:///usr/share/doc/robocode/changelog.gz");
+ 	}
+ 
+ 	public void showHelpApi() {
+
diff --git a/debian/patches/03-point-api-help-to-robocode-doc.diff b/debian/patches/03-point-api-help-to-robocode-doc.diff
new file mode 100644
index 0000000..546e5a0
--- /dev/null
+++ b/debian/patches/03-point-api-help-to-robocode-doc.diff
@@ -0,0 +1,43 @@
+## 03-point-api-help-to-robocode-doc.diff by Chris Lamb <chris at chris-lamb.co.uk>
+##
+## Ensure that "Robocode API" entries in the GUI load from the correct place,
+## or display a message detailing how to obtain the documentation.
+
+diff -urNad robocode~/robocode/robocode/manager/WindowManager.java robocode/robocode/robocode/manager/WindowManager.java
+--- robocode~/robocode/robocode/manager/WindowManager.java	2007-09-24 00:31:38.000000000 +0100
++++ robocode/robocode/robocode/manager/WindowManager.java	2007-12-21 14:56:39.000000000 +0000
+@@ -136,9 +136,12 @@
+ 	}
+ 
+ 	public void showHelpApi() {
+-		showInBrowser(
+-				"file://" + new File(FileUtil.getCwd(), "").getAbsoluteFile() + System.getProperty("file.separator")
+-				+ "javadoc" + System.getProperty("file.separator") + "index.html");
++		File f = new File("/usr/share/doc/robocode-doc/html/index.html");
++		if (f.exists()) {
++			showInBrowser(f.toString());
++		} else {
++			showInBrowser("/usr/share/doc/robocode/html/missing-documentation.html");
++		}
+ 	}
+ 
+ 	public void showFaq() {
+diff -urNad robocode~/robocode/robocode/editor/RobocodeEditor.java robocode/robocode/robocode/editor/RobocodeEditor.java
+--- robocode~/robocode/robocode/editor/RobocodeEditor.java	2007-11-19 22:58:58.000000000 +0000
++++ robocode/robocode/robocode/editor/RobocodeEditor.java	2007-12-21 16:22:07.000000000 +0000
+@@ -763,8 +763,13 @@
+ 	}
+ 
+ 	public void showHelpApi() {
+-		String helpurl = "file:" + new File(FileUtil.getCwd(), "").getAbsoluteFile() // System.getProperty("user.dir")
+-				+ System.getProperty("file.separator") + "javadoc" + System.getProperty("file.separator") + "index.html";
++		String helpurl;
++		File f = new File("/usr/share/doc/robocode-doc/html/index.html");
++		if (f.exists()) {
++			helpurl = "file:" + f.toString();
++		} else {
++			helpurl = "file:" + "/usr/share/doc/robocode/html/missing-documentation.html";
++		}
+ 
+ 		try {
+ 			BrowserManager.openURL(helpurl);
diff --git a/debian/patches/04-link-to-local-docs.diff b/debian/patches/04-link-to-local-docs.diff
new file mode 100644
index 0000000..8dc186f
--- /dev/null
+++ b/debian/patches/04-link-to-local-docs.diff
@@ -0,0 +1,17 @@
+## 04-link-to-local-docs.diff by Chris Lamb <chris at chris-lamb.co.uk>
+##
+## Link to the Java documentation from classpath-doc instead of on the web
+## to prevent FTBFS when building with no internet connection.
+
+diff -urNad robocode.orig/build/build.xml robocode/build/build.xml
+--- robocode.orig/build/build.xml	2008-08-08 22:18:41.000000000 +0100
++++ robocode/build/build.xml	2008-08-08 22:19:05.000000000 +0100
+@@ -482,7 +482,7 @@
+         sourcepath="${src.robocode}"
+     	excludepackagenames="robocode.*, codesize.*, ar.*"
+         windowtitle="Robocode ${version} API"
+-    	link="http://java.sun.com/j2se/1.5.0/docs/api">
++    	link="/usr/share/doc/default-jdk-doc/api/">
+       <fileset dir="${src.robocode}" defaultexcludes="yes">
+         <include name="robocode/*.java"/>
+         <exclude name="robocode/_*.java"/>
diff --git a/debian/patches/05-codesize-jar.diff b/debian/patches/05-codesize-jar.diff
new file mode 100644
index 0000000..33845a4
--- /dev/null
+++ b/debian/patches/05-codesize-jar.diff
@@ -0,0 +1,52 @@
+
+ Don't embed a sourceless copy of codesize.jar; use bcel.jar instead.
+
+    -- Chris Lamb <lamby at debian.org>  Sun, 10 May 2009 12:28:18 +0100
+
+diff -urNad /tmp/bp-build/robocode.orig/build/build.xml /tmp/bp-build/robocode/build/build.xml
+--- robocode.orig/build/build.xml	2009-05-10 12:22:28.000000000 +0100
++++ robocode/build/build.xml	2009-05-10 12:23:15.000000000 +0100
+@@ -143,11 +143,8 @@
+ 
+     <echo message="Compiling Robocode..."/>
+  
+-  	<!-- Copy libs into the build folder -->
+-  	<copy file="${src.extract}/libs/codesize.jar" toDir="${build}/libs"/>
+- 
+     <!-- Compile Robocode -->
+-    <compile srcdir="${src.robocode}" destdir="${build}" classpath="${build}/libs/codesize.jar"/>
++    <compile srcdir="${src.robocode}" destdir="${build}" classpath="bcel.jar"/>
+ 
+     <!-- Flag that Robocode has been built -->
+     <touch file="${build}/.robocode_build"/>
+@@ -217,7 +214,7 @@
+       <echo message="Compiling tests..."/>
+ 
+       <!-- Compile Robocode -->
+-      <compile srcdir="${src.tests}/tests" destdir="${build}/tests" classpath="${build}/libs/codesize.jar;${build}/libs/robocode.jar;${src.tests}/libs/junit-4.4.jar"/>
++      <compile srcdir="${src.tests}/tests" destdir="${build}/tests" classpath="bcel.jar;${build}/libs/robocode.jar;${src.tests}/libs/junit-4.4.jar"/>
+ 
+       <!-- Flag that Robocode has been built -->
+       <touch file="${build}/.tests_build"/>
+@@ -257,11 +254,8 @@
+ 
+     <echo message="Compiling RoboRumble..."/>
+  
+-  	<!-- Copy libs into the build folder -->
+-  	<copy file="${src.extract}/libs/codesize.jar" toDir="${build}/libs"/>
+-
+   	<!-- Compile RoboRumble -->
+-    <compile srcdir="${src.roborumble}" destdir="${build}" classpath="${build}/libs/codesize.jar"/>
++    <compile srcdir="${src.roborumble}" destdir="${build}" classpath="bcel.jar"/>
+ 
+     <!-- Flag that RoboRumble has been built -->
+     <touch file="${build}/.roborumble_build"/>
+@@ -443,7 +437,7 @@
+       <classpath>
+           <pathelement location="${build}/tests"/>
+           <pathelement location="${build}/libs/robocode.jar"/>
+-          <pathelement location="${build}/libs/codesize.jar"/>
++          <pathelement location="bcel.jar"/>
+           <pathelement location="${src.tests}/libs/junit-4.4.jar"/>
+       </classpath>
+       <formatter type="plain"/>
diff --git a/debian/patches/06-update-manager.diff b/debian/patches/06-update-manager.diff
new file mode 100644
index 0000000..c25693b
--- /dev/null
+++ b/debian/patches/06-update-manager.diff
@@ -0,0 +1,16 @@
+
+ Disable startup update manager.
+
+diff -urNad /tmp/bp-build/robocode.orig/robocode/robocode/manager/VersionManager.java /tmp/bp-build/robocode/robocode/robocode/manager/VersionManager.java
+--- robocode.orig/robocode/robocode/manager/VersionManager.java	2009-05-10 12:45:12.000000000 +0100
++++ robocode/robocode/robocode/manager/VersionManager.java	2009-05-10 12:46:23.000000000 +0100
+@@ -77,6 +77,9 @@
+ 	public boolean checkForNewVersion(boolean notifyNoUpdate) {
+ 		URL url;
+ 
++		if (notifyNoUpdate == false)
++			return false;
++
+ 		try {
+ 			url = new URL("http://robocode.sourceforge.net/version/version.html");
+ 		} catch (MalformedURLException e) {
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..fa6bdfb
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,6 @@
+01-use-sensible-browser.diff
+02-use-versions.txt-from-usr-share-doc.diff
+03-point-api-help-to-robocode-doc.diff
+04-link-to-local-docs.diff
+05-codesize-jar.diff
+06-update-manager.diff
diff --git a/debian/robocode-doc.install b/debian/robocode-doc.install
new file mode 100644
index 0000000..6e8af69
--- /dev/null
+++ b/debian/robocode-doc.install
@@ -0,0 +1 @@
+build/build/javadoc/* usr/share/doc/robocode-doc/html/
diff --git a/debian/robocode.desktop b/debian/robocode.desktop
new file mode 100644
index 0000000..09b4749
--- /dev/null
+++ b/debian/robocode.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Type=Application
+Name=Robocode
+GenericName=
+Comment=Java programming game based on battle tanks
+Icon=robocode
+Exec=robocode
+Categories=Game;Development;Java;
+Terminal=false
diff --git a/debian/robocode.install b/debian/robocode.install
new file mode 100644
index 0000000..d9819d7
--- /dev/null
+++ b/debian/robocode.install
@@ -0,0 +1,9 @@
+build/build/libs/*.jar usr/share/java
+build/build/robots usr/share/robocode
+robocodeextract/battles/intro.battle usr/share/robocode
+robocodeextract/compilers/CompilerTest.java usr/share/robocode
+robocodeextract/templates usr/share/robocode
+debian/misc/compiler.properties usr/share/robocode
+debian/misc/missing-documentation.html usr/share/doc/robocode/html
+debian/misc/robocode usr/games
+debian/robocode.desktop usr/share/applications
diff --git a/debian/robocode.manpages b/debian/robocode.manpages
new file mode 100644
index 0000000..2fb19fb
--- /dev/null
+++ b/debian/robocode.manpages
@@ -0,0 +1 @@
+debian/manpages/*
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..dbdc68b
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,81 @@
+#!/usr/bin/make -f
+
+include /usr/share/quilt/quilt.make
+
+export DH_OPTIONS
+export JAVA_HOME=/usr/lib/jvm/java-gcj
+
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+    export ANT_OPTS=-Dcompile.debug=true -Dcompile.optimize=false
+else
+    export ANT_OPTS=-Dcompile.debug=true -Dcompile.optimize=true
+endif
+
+get-orig-source:
+	# Requires: unzip
+	set -e; VERSION=`dpkg-parsechangelog | awk '/Version:/ {print $$2}' | sed 's/-[0-9]*$$//g'`; \
+		REMOTE_VERSION=`echo $$VERSION | sed -e 's/+dfsg//' -e 's/beta/Beta-/' -e 's/~/-/'`; \
+		TAR=robocode_$$VERSION.orig.tar; \
+		ZIP=robocode-src-$$REMOTE_VERSION.zip; \
+		TEMPDIR=`mktemp -d`; \
+		cd $$TEMPDIR; \
+		mkdir robocode; \
+		cd robocode; \
+		wget http://heanet.dl.sourceforge.net/sourceforge/robocode/$$ZIP; \
+		unzip $$ZIP; \
+		find . -depth -type d -name "CVS" | xargs rm -rf; \
+		find . -type f -name "jikes*.jar" | xargs rm -rf; \
+		find . -type f -name "codesize.jar" | xargs rm -rf; \
+		rm $$ZIP ;\
+		cd ..; \
+		tar cvvf $$TAR robocode; \
+		gzip -9 $$TAR; \
+		rm -rf robocode/; \
+		echo "Upstream tarball: $$TEMPDIR/$$TAR.gz"
+
+build: patch build-stamp
+build-stamp:
+	cp -r debian/codesize robocode/
+	ant -f build/build.xml
+	touch $@
+
+clean: unpatch
+	dh_testdir
+	dh_testroot
+	rm -rf build-stamp
+	ant clean -f build/build.xml
+	rm -rf robocode/codesize
+	dh_clean
+
+install: build
+	dh_testdir
+	dh_testroot
+	dh_clean
+	dh_installdirs -i
+	dh_install
+
+	# Create icon for .desktop file
+	mkdir -p debian/robocode/usr/share/pixmaps
+	convert robocode/resources/icons/robocode-icon.png -resize 32x32 \
+		debian/robocode/usr/share/pixmaps/robocode.xpm
+
+	# Remove empty "package-list" files
+	find debian/robocode-doc -type f -size 0 | xargs rm -vf
+
+binary-indep: build install
+	dh_testdir
+	dh_testroot
+	dh_installchangelogs robocode/resources/versions.txt
+	dh_installdocs
+	dh_installman
+	dh_compress
+	dh_fixperms
+	dh_installdeb
+	dh_gencontrol
+	dh_md5sums
+	dh_builddeb
+
+binary-arch:
+
+binary: binary-arch binary-indep
+.PHONY: build clean binary-indep binary-arch binary install patch unpatch get-orig-source
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 0000000..163aaf8
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/debian/watch b/debian/watch
new file mode 100644
index 0000000..decb547
--- /dev/null
+++ b/debian/watch
@@ -0,0 +1,3 @@
+version=3
+opts=dversionmangle=s/\+dfsg// \
+http://sf.net/robocode/robocode-([\d\.]+)-src\.zip

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/robocode.git



More information about the pkg-java-commits mailing list