diff options
| author | Henning Heinold <heinold@inf.fu-berlin.de> | 2011-11-12 20:58:34 +0100 |
|---|---|---|
| committer | Henning Heinold <heinold@inf.fu-berlin.de> | 2011-11-26 23:41:44 +0100 |
| commit | 57e069cde6617f00ca8834a82c6f360af43d5067 (patch) | |
| tree | 48cbe15e96d217c45acfa64b0c13aad8c6424980 /recipes-core/classpath | |
| download | meta-java-57e069cde6617f00ca8834a82c6f360af43d5067.tar.gz | |
meta-java: initial commit
* taken over mostly stuff from oe classic
* cleaned up recipes
* added license checksums
* bump icedtea6-native to 1.8.11
* use jamvm from git as native
Diffstat (limited to 'recipes-core/classpath')
14 files changed, 957 insertions, 0 deletions
diff --git a/recipes-core/classpath/classpath-0.98/SimpleName.diff b/recipes-core/classpath/classpath-0.98/SimpleName.diff new file mode 100644 index 0000000..ff2bec0 --- /dev/null +++ b/recipes-core/classpath/classpath-0.98/SimpleName.diff | |||
| @@ -0,0 +1,66 @@ | |||
| 1 | Index: vm/reference/java/lang/VMClass.java | ||
| 2 | =================================================================== | ||
| 3 | RCS file: /sources/classpath/classpath/vm/reference/java/lang/VMClass.java,v | ||
| 4 | retrieving revision 1.20 | ||
| 5 | diff -u -r1.20 VMClass.java | ||
| 6 | --- vm/reference/java/lang/VMClass.java 18 Sep 2007 21:52:38 -0000 1.20 | ||
| 7 | +++ vm/reference/java/lang/VMClass.java 19 Apr 2008 15:19:00 -0000 | ||
| 8 | @@ -296,27 +296,43 @@ | ||
| 9 | */ | ||
| 10 | static String getSimpleName(Class klass) | ||
| 11 | { | ||
| 12 | + int arrayCount = 0; | ||
| 13 | + while (klass.isArray()) | ||
| 14 | + { | ||
| 15 | + klass = klass.getComponentType(); | ||
| 16 | + ++arrayCount; | ||
| 17 | + } | ||
| 18 | + // now klass is the component type | ||
| 19 | + | ||
| 20 | + String simpleComponentName = null; | ||
| 21 | if (isAnonymousClass(klass)) | ||
| 22 | - return ""; | ||
| 23 | - if (isArray(klass)) | ||
| 24 | { | ||
| 25 | - return getComponentType(klass).getSimpleName() + "[]"; | ||
| 26 | + simpleComponentName = ""; | ||
| 27 | } | ||
| 28 | - String fullName = getName(klass); | ||
| 29 | - int pos = fullName.lastIndexOf("$"); | ||
| 30 | - if (pos == -1) | ||
| 31 | - pos = 0; | ||
| 32 | else | ||
| 33 | { | ||
| 34 | - ++pos; | ||
| 35 | - while (Character.isDigit(fullName.charAt(pos))) | ||
| 36 | - ++pos; | ||
| 37 | + String fullName = getName(klass); | ||
| 38 | + int pos = fullName.lastIndexOf("$"); | ||
| 39 | + if (pos != -1) | ||
| 40 | + { //inner class or local class | ||
| 41 | + // skip digits of local classes | ||
| 42 | + while (Character.isDigit(fullName.charAt(pos+1))) | ||
| 43 | + pos++; | ||
| 44 | + } | ||
| 45 | + else | ||
| 46 | + { | ||
| 47 | + pos = fullName.lastIndexOf("."); | ||
| 48 | + } | ||
| 49 | + simpleComponentName = fullName.substring(pos+1); | ||
| 50 | } | ||
| 51 | - int packagePos = fullName.lastIndexOf(".", pos); | ||
| 52 | - if (packagePos == -1) | ||
| 53 | - return fullName.substring(pos); | ||
| 54 | - else | ||
| 55 | - return fullName.substring(packagePos + 1); | ||
| 56 | + | ||
| 57 | + if (arrayCount == 0) | ||
| 58 | + return simpleComponentName; | ||
| 59 | + | ||
| 60 | + StringBuffer sb = new StringBuffer(simpleComponentName); | ||
| 61 | + while (arrayCount-- > 0) | ||
| 62 | + sb.append("[]"); | ||
| 63 | + return sb.toString(); | ||
| 64 | } | ||
| 65 | |||
| 66 | /** | ||
diff --git a/recipes-core/classpath/classpath-0.98/ecj_java_dir.patch b/recipes-core/classpath/classpath-0.98/ecj_java_dir.patch new file mode 100644 index 0000000..1455a24 --- /dev/null +++ b/recipes-core/classpath/classpath-0.98/ecj_java_dir.patch | |||
| @@ -0,0 +1,37 @@ | |||
| 1 | Index: classpath-0.98/lib/gen-classlist.sh.in | ||
| 2 | =================================================================== | ||
| 3 | --- classpath-0.98.orig/lib/gen-classlist.sh.in 2010-06-24 21:18:02.776819217 +0200 | ||
| 4 | +++ classpath-0.98/lib/gen-classlist.sh.in 2010-06-24 21:18:35.625566191 +0200 | ||
| 5 | @@ -148,4 +148,7 @@ | ||
| 6 | done | ||
| 7 | fi | ||
| 8 | |||
| 9 | +# hack for javac that uses -d and do not make the directories | ||
| 10 | +@AWK@ -F " " '{print $1}' classes.1 | uniq | awk -F " " '{system("mkdir -p " $0)}' | ||
| 11 | + | ||
| 12 | exit 0 | ||
| 13 | Index: classpath-0.98/tools/Makefile.am | ||
| 14 | =================================================================== | ||
| 15 | --- classpath-0.98.orig/tools/Makefile.am 2010-06-24 21:18:02.783479881 +0200 | ||
| 16 | +++ classpath-0.98/tools/Makefile.am 2010-06-24 21:20:04.925557253 +0200 | ||
| 17 | @@ -323,6 +323,8 @@ | ||
| 18 | endif | ||
| 19 | ## Compile ASM separately as it is latin-1 encoded. | ||
| 20 | find $(srcdir)/external/asm -name '*.java' -print > asm.lst | ||
| 21 | + @AWK@ -F "/" '{OFS=FS;gsub("/"$$2"/"$$3,"",$$0);gsub("/"$$NF,"",$$0); print $$0}' asm.lst | \ | ||
| 22 | + sort | uniq | @AWK@ -F " " '{system("mkdir -p asm/" $$0)}' | ||
| 23 | AC=`echo $(JCOMPILER) | sed -e 's/UTF-8/ISO-8859-1/g'`; \ | ||
| 24 | $$AC -g -d asm @asm.lst | ||
| 25 | find $(srcdir)/gnu/classpath/tools \ | ||
| 26 | @@ -334,7 +336,10 @@ | ||
| 27 | $(srcdir)/sun/rmi/rmic \ | ||
| 28 | $(GJDOC_EX) \ | ||
| 29 | -name '*.java' -print > classes.lst | ||
| 30 | - $(JCOMPILER) -g -d classes @classes.lst | ||
| 31 | + @AWK@ -F "/" '{OFS=FS;gsub("/"$$NF,"",$$0); print $$0}' classes.lst | \ | ||
| 32 | + sort | uniq | @AWK@ -F " " '{system("mkdir -p classes/" $$0)}' | ||
| 33 | + BC=`echo $(JCOMPILER) | sed -e 's/UTF-8/ISO-8859-1/g'`; \ | ||
| 34 | + $$BC -g -d classes @classes.lst | ||
| 35 | cat classes.lst asm.lst > all-classes.lst | ||
| 36 | ## Copy over tools resource files. | ||
| 37 | @list=`cd $(srcdir)/resource && find gnu/classpath/tools com/sun/tools/javac \ | ||
diff --git a/recipes-core/classpath/classpath-0.98/fix-gmp.patch b/recipes-core/classpath/classpath-0.98/fix-gmp.patch new file mode 100644 index 0000000..3f0dfbe --- /dev/null +++ b/recipes-core/classpath/classpath-0.98/fix-gmp.patch | |||
| @@ -0,0 +1,19 @@ | |||
| 1 | --- | ||
| 2 | configure.ac | 2 +- | ||
| 3 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 4 | |||
| 5 | --- classpath-0.98.orig/configure.ac | ||
| 6 | +++ classpath-0.98/configure.ac | ||
| 7 | @@ -766,11 +766,11 @@ if test "x${COMPILE_JNI}" = xyes; then | ||
| 8 | dnl __gmpz_mul_si for earlier versions (>= 3.1). | ||
| 9 | dnl IMPORTANT: if you decide to look for __gmpz_combit, don't forget to | ||
| 10 | dnl change the name of the corresponding ac_ variable on lines 860... | ||
| 11 | if test "x${COMPILE_GMP}" = xyes; then | ||
| 12 | AC_CHECK_LIB(gmp, __gmpz_mul_si, | ||
| 13 | - [GMP_CFLAGS=-I/usr/include | ||
| 14 | + [GMP_CFLAGS= | ||
| 15 | GMP_LIBS=-lgmp ], | ||
| 16 | [GMP_CFLAGS= | ||
| 17 | GMP_LIBS= ]) | ||
| 18 | AC_SUBST(GMP_CFLAGS) | ||
| 19 | AC_SUBST(GMP_LIBS) | ||
diff --git a/recipes-core/classpath/classpath-0.98/javanet-local.patch b/recipes-core/classpath/classpath-0.98/javanet-local.patch new file mode 100644 index 0000000..b8d1584 --- /dev/null +++ b/recipes-core/classpath/classpath-0.98/javanet-local.patch | |||
| @@ -0,0 +1,37 @@ | |||
| 1 | Index: native/jni/java-net/local.c | ||
| 2 | =================================================================== | ||
| 3 | RCS file: /sources/classpath/classpath/native/jni/java-net/local.c,v | ||
| 4 | retrieving revision 1.4 | ||
| 5 | diff -u -r1.4 local.c | ||
| 6 | --- native/jni/java-net/local.c 17 Apr 2007 21:46:27 -0000 1.4 | ||
| 7 | +++ native/jni/java-net/local.c 27 Jun 2008 13:14:40 -0000 | ||
| 8 | @@ -73,27 +73,18 @@ | ||
| 9 | return socket (PF_UNIX, stream ? SOCK_STREAM : SOCK_DGRAM, 0); | ||
| 10 | } | ||
| 11 | |||
| 12 | -static int gcc_sucks = 0; | ||
| 13 | - | ||
| 14 | int | ||
| 15 | local_bind (int fd, const char *addr) | ||
| 16 | { | ||
| 17 | struct sockaddr_un saddr; | ||
| 18 | |||
| 19 | - /* For some reason, GCC 4.0.1 on Darwin/x86 MODIFIES the `addr' | ||
| 20 | - pointer in the CALLER's STACK FRAME after calling this function, | ||
| 21 | - but if we add this statement below, it doesn't! */ | ||
| 22 | - if (gcc_sucks) | ||
| 23 | - fprintf (stderr, "bind %p\n", addr); | ||
| 24 | - | ||
| 25 | - if (strlen (addr) > sizeof (saddr.sun_path)) | ||
| 26 | + if (strlen (addr) >= sizeof (saddr.sun_path)) | ||
| 27 | { | ||
| 28 | errno = ENAMETOOLONG; | ||
| 29 | return -1; | ||
| 30 | } | ||
| 31 | |||
| 32 | - strncpy (saddr.sun_path, addr, sizeof (saddr.sun_path)); | ||
| 33 | - saddr.sun_path[sizeof (saddr.sun_path)] = '\0'; | ||
| 34 | + strcpy (saddr.sun_path, addr); | ||
| 35 | saddr.sun_family = AF_LOCAL; | ||
| 36 | |||
| 37 | return bind (fd, (struct sockaddr *) &saddr, SUN_LEN (&saddr)); | ||
diff --git a/recipes-core/classpath/classpath-0.98/miscompilation.patch b/recipes-core/classpath/classpath-0.98/miscompilation.patch new file mode 100644 index 0000000..c61b214 --- /dev/null +++ b/recipes-core/classpath/classpath-0.98/miscompilation.patch | |||
| @@ -0,0 +1,13 @@ | |||
| 1 | Index: classpath-0.97.2/native/jni/java-io/java_io_VMFile.c | ||
| 2 | =================================================================== | ||
| 3 | --- classpath-0.97.2.orig/native/jni/java-io/java_io_VMFile.c 2008-10-10 15:24:54.000000000 +0200 | ||
| 4 | +++ classpath-0.97.2/native/jni/java-io/java_io_VMFile.c 2008-10-10 15:25:36.000000000 +0200 | ||
| 5 | @@ -439,7 +439,7 @@ | ||
| 6 | { | ||
| 7 | #ifndef WITHOUT_FILESYSTEM | ||
| 8 | const char *filename; | ||
| 9 | - int result; | ||
| 10 | + volatile int result; | ||
| 11 | |||
| 12 | /* Don't use the JCL convert function because it throws an exception | ||
| 13 | on failure */ | ||
diff --git a/recipes-core/classpath/classpath-0.98/sun-security-getproperty.patch b/recipes-core/classpath/classpath-0.98/sun-security-getproperty.patch new file mode 100644 index 0000000..fb9cd9d --- /dev/null +++ b/recipes-core/classpath/classpath-0.98/sun-security-getproperty.patch | |||
| @@ -0,0 +1,503 @@ | |||
| 1 | Index: gnu/classpath/debug/Simple1LineFormatter.java | ||
| 2 | =================================================================== | ||
| 3 | --- gnu/classpath/debug/Simple1LineFormatter.java.orig 2006-07-11 18:03:59.000000000 +0200 | ||
| 4 | +++ gnu/classpath/debug/Simple1LineFormatter.java 2009-03-19 19:00:47.000000000 +0100 | ||
| 5 | @@ -38,8 +38,6 @@ | ||
| 6 | |||
| 7 | package gnu.classpath.debug; | ||
| 8 | |||
| 9 | -import gnu.java.security.action.GetPropertyAction; | ||
| 10 | - | ||
| 11 | import java.io.PrintWriter; | ||
| 12 | import java.io.StringWriter; | ||
| 13 | import java.security.AccessController; | ||
| 14 | @@ -51,6 +49,8 @@ | ||
| 15 | import java.util.logging.Formatter; | ||
| 16 | import java.util.logging.LogRecord; | ||
| 17 | |||
| 18 | +import sun.security.action.GetPropertyAction; | ||
| 19 | + | ||
| 20 | /** | ||
| 21 | * A simple 1-line formatter to use instead of the 2-line SimpleFormatter used | ||
| 22 | * by default in the JDK logging handlers. | ||
| 23 | Index: gnu/classpath/debug/SystemLogger.java | ||
| 24 | =================================================================== | ||
| 25 | --- gnu/classpath/debug/SystemLogger.java.orig 2006-12-10 21:25:41.000000000 +0100 | ||
| 26 | +++ gnu/classpath/debug/SystemLogger.java 2009-03-19 19:00:47.000000000 +0100 | ||
| 27 | @@ -38,13 +38,13 @@ | ||
| 28 | |||
| 29 | package gnu.classpath.debug; | ||
| 30 | |||
| 31 | -import gnu.java.security.action.GetPropertyAction; | ||
| 32 | - | ||
| 33 | import java.security.AccessController; | ||
| 34 | import java.util.StringTokenizer; | ||
| 35 | import java.util.logging.Level; | ||
| 36 | import java.util.logging.Logger; | ||
| 37 | |||
| 38 | +import sun.security.action.GetPropertyAction; | ||
| 39 | + | ||
| 40 | public final class SystemLogger extends Logger | ||
| 41 | { | ||
| 42 | public static final SystemLogger SYSTEM = new SystemLogger(); | ||
| 43 | Index: gnu/java/security/PolicyFile.java | ||
| 44 | =================================================================== | ||
| 45 | --- gnu/java/security/PolicyFile.java.orig 2008-06-16 00:07:30.000000000 +0200 | ||
| 46 | +++ gnu/java/security/PolicyFile.java 2009-03-19 19:01:31.000000000 +0100 | ||
| 47 | @@ -41,7 +41,6 @@ | ||
| 48 | import gnu.classpath.debug.SystemLogger; | ||
| 49 | |||
| 50 | import gnu.java.lang.CPStringBuilder; | ||
| 51 | -import gnu.java.security.action.GetPropertyAction; | ||
| 52 | |||
| 53 | import java.io.File; | ||
| 54 | import java.io.IOException; | ||
| 55 | @@ -74,6 +73,8 @@ | ||
| 56 | import java.util.StringTokenizer; | ||
| 57 | import java.util.logging.Logger; | ||
| 58 | |||
| 59 | +import sun.security.action.GetPropertyAction; | ||
| 60 | + | ||
| 61 | /** | ||
| 62 | * An implementation of a {@link java.security.Policy} object whose | ||
| 63 | * permissions are specified by a <em>policy file</em>. | ||
| 64 | Index: gnu/java/security/action/GetPropertyAction.java | ||
| 65 | =================================================================== | ||
| 66 | --- gnu/java/security/action/GetPropertyAction.java 2006-12-10 21:25:42.000000000 +0100 | ||
| 67 | +++ /dev/null 1970-01-01 00:00:00.000000000 +0000 | ||
| 68 | @@ -1,89 +0,0 @@ | ||
| 69 | -/* GetPropertyAction.java | ||
| 70 | - Copyright (C) 2004 Free Software Foundation, Inc. | ||
| 71 | - | ||
| 72 | -This file is part of GNU Classpath. | ||
| 73 | - | ||
| 74 | -GNU Classpath is free software; you can redistribute it and/or modify | ||
| 75 | -it under the terms of the GNU General Public License as published by | ||
| 76 | -the Free Software Foundation; either version 2, or (at your option) | ||
| 77 | -any later version. | ||
| 78 | - | ||
| 79 | -GNU Classpath is distributed in the hope that it will be useful, but | ||
| 80 | -WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 81 | -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 82 | -General Public License for more details. | ||
| 83 | - | ||
| 84 | -You should have received a copy of the GNU General Public License | ||
| 85 | -along with GNU Classpath; see the file COPYING. If not, write to the | ||
| 86 | -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA | ||
| 87 | -02110-1301 USA. | ||
| 88 | - | ||
| 89 | -Linking this library statically or dynamically with other modules is | ||
| 90 | -making a combined work based on this library. Thus, the terms and | ||
| 91 | -conditions of the GNU General Public License cover the whole | ||
| 92 | -combination. | ||
| 93 | - | ||
| 94 | -As a special exception, the copyright holders of this library give you | ||
| 95 | -permission to link this library with independent modules to produce an | ||
| 96 | -executable, regardless of the license terms of these independent | ||
| 97 | -modules, and to copy and distribute the resulting executable under | ||
| 98 | -terms of your choice, provided that you also meet, for each linked | ||
| 99 | -independent module, the terms and conditions of the license of that | ||
| 100 | -module. An independent module is a module which is not derived from | ||
| 101 | -or based on this library. If you modify this library, you may extend | ||
| 102 | -this exception to your version of the library, but you are not | ||
| 103 | -obligated to do so. If you do not wish to do so, delete this | ||
| 104 | -exception statement from your version. */ | ||
| 105 | - | ||
| 106 | -package gnu.java.security.action; | ||
| 107 | - | ||
| 108 | -import java.security.PrivilegedAction; | ||
| 109 | - | ||
| 110 | -/** | ||
| 111 | - * PrivilegedAction implementation that calls System.getProperty() with | ||
| 112 | - * the property name passed to its constructor. | ||
| 113 | - * | ||
| 114 | - * Example of use: | ||
| 115 | - * <code> | ||
| 116 | - * GetPropertyAction action = new GetPropertyAction("http.proxyPort"); | ||
| 117 | - * String port = AccessController.doPrivileged(action); | ||
| 118 | - * </code> | ||
| 119 | - */ | ||
| 120 | -public class GetPropertyAction implements PrivilegedAction<String> | ||
| 121 | -{ | ||
| 122 | - String name; | ||
| 123 | - String value = null; | ||
| 124 | - | ||
| 125 | - public GetPropertyAction() | ||
| 126 | - { | ||
| 127 | - } | ||
| 128 | - | ||
| 129 | - public GetPropertyAction(String propName) | ||
| 130 | - { | ||
| 131 | - setParameters(propName); | ||
| 132 | - } | ||
| 133 | - | ||
| 134 | - public GetPropertyAction(String propName, String defaultValue) | ||
| 135 | - { | ||
| 136 | - setParameters(propName, defaultValue); | ||
| 137 | - } | ||
| 138 | - | ||
| 139 | - public String run() | ||
| 140 | - { | ||
| 141 | - return System.getProperty(name, value); | ||
| 142 | - } | ||
| 143 | - | ||
| 144 | - public GetPropertyAction setParameters(String propName) | ||
| 145 | - { | ||
| 146 | - this.name = propName; | ||
| 147 | - this.value = null; | ||
| 148 | - return this; | ||
| 149 | - } | ||
| 150 | - | ||
| 151 | - public GetPropertyAction setParameters(String propName, String defaultValue) | ||
| 152 | - { | ||
| 153 | - this.name = propName; | ||
| 154 | - this.value = defaultValue; | ||
| 155 | - return this; | ||
| 156 | - } | ||
| 157 | -} | ||
| 158 | Index: gnu/java/security/key/dss/DSSKey.java | ||
| 159 | =================================================================== | ||
| 160 | --- gnu/java/security/key/dss/DSSKey.java.orig 2008-03-16 23:04:49.000000000 +0100 | ||
| 161 | +++ gnu/java/security/key/dss/DSSKey.java 2009-03-19 19:00:47.000000000 +0100 | ||
| 162 | @@ -41,7 +41,6 @@ | ||
| 163 | import gnu.java.lang.CPStringBuilder; | ||
| 164 | |||
| 165 | import gnu.java.security.Registry; | ||
| 166 | -import gnu.java.security.action.GetPropertyAction; | ||
| 167 | import gnu.java.security.util.FormatUtil; | ||
| 168 | |||
| 169 | import java.math.BigInteger; | ||
| 170 | @@ -51,6 +50,8 @@ | ||
| 171 | import java.security.interfaces.DSAParams; | ||
| 172 | import java.security.spec.DSAParameterSpec; | ||
| 173 | |||
| 174 | +import sun.security.action.GetPropertyAction; | ||
| 175 | + | ||
| 176 | /** | ||
| 177 | * A base asbtract class for both public and private DSS (Digital Signature | ||
| 178 | * Standard) keys. It encapsulates the three DSS numbers: <code>p</code>, | ||
| 179 | Index: gnu/java/security/key/dss/DSSPrivateKey.java | ||
| 180 | =================================================================== | ||
| 181 | --- gnu/java/security/key/dss/DSSPrivateKey.java.orig 2008-03-16 23:04:49.000000000 +0100 | ||
| 182 | +++ gnu/java/security/key/dss/DSSPrivateKey.java 2009-03-19 19:00:47.000000000 +0100 | ||
| 183 | @@ -42,7 +42,6 @@ | ||
| 184 | |||
| 185 | import gnu.java.security.Configuration; | ||
| 186 | import gnu.java.security.Registry; | ||
| 187 | -import gnu.java.security.action.GetPropertyAction; | ||
| 188 | import gnu.java.security.key.IKeyPairCodec; | ||
| 189 | |||
| 190 | import java.math.BigInteger; | ||
| 191 | @@ -50,6 +49,8 @@ | ||
| 192 | import java.security.PrivateKey; | ||
| 193 | import java.security.interfaces.DSAPrivateKey; | ||
| 194 | |||
| 195 | +import sun.security.action.GetPropertyAction; | ||
| 196 | + | ||
| 197 | /** | ||
| 198 | * An object that embodies a DSS (Digital Signature Standard) private key. | ||
| 199 | * | ||
| 200 | Index: gnu/java/security/key/dss/DSSPublicKey.java | ||
| 201 | =================================================================== | ||
| 202 | --- gnu/java/security/key/dss/DSSPublicKey.java.orig 2008-03-16 23:04:49.000000000 +0100 | ||
| 203 | +++ gnu/java/security/key/dss/DSSPublicKey.java 2009-03-19 19:00:47.000000000 +0100 | ||
| 204 | @@ -41,7 +41,6 @@ | ||
| 205 | import gnu.java.lang.CPStringBuilder; | ||
| 206 | |||
| 207 | import gnu.java.security.Registry; | ||
| 208 | -import gnu.java.security.action.GetPropertyAction; | ||
| 209 | import gnu.java.security.key.IKeyPairCodec; | ||
| 210 | |||
| 211 | import java.math.BigInteger; | ||
| 212 | @@ -49,6 +48,8 @@ | ||
| 213 | import java.security.PublicKey; | ||
| 214 | import java.security.interfaces.DSAPublicKey; | ||
| 215 | |||
| 216 | +import sun.security.action.GetPropertyAction; | ||
| 217 | + | ||
| 218 | /** | ||
| 219 | * An object that embodies a DSS (Digital Signature Standard) public key. | ||
| 220 | * | ||
| 221 | Index: gnu/java/security/key/rsa/GnuRSAKey.java | ||
| 222 | =================================================================== | ||
| 223 | --- gnu/java/security/key/rsa/GnuRSAKey.java.orig 2008-03-16 23:04:49.000000000 +0100 | ||
| 224 | +++ gnu/java/security/key/rsa/GnuRSAKey.java 2009-03-19 19:00:47.000000000 +0100 | ||
| 225 | @@ -41,7 +41,6 @@ | ||
| 226 | import gnu.java.lang.CPStringBuilder; | ||
| 227 | |||
| 228 | import gnu.java.security.Registry; | ||
| 229 | -import gnu.java.security.action.GetPropertyAction; | ||
| 230 | import gnu.java.security.util.FormatUtil; | ||
| 231 | |||
| 232 | import java.math.BigInteger; | ||
| 233 | @@ -49,6 +48,8 @@ | ||
| 234 | import java.security.Key; | ||
| 235 | import java.security.interfaces.RSAKey; | ||
| 236 | |||
| 237 | +import sun.security.action.GetPropertyAction; | ||
| 238 | + | ||
| 239 | /** | ||
| 240 | * A base asbtract class for both public and private RSA keys. | ||
| 241 | */ | ||
| 242 | Index: gnu/java/security/key/rsa/GnuRSAPrivateKey.java | ||
| 243 | =================================================================== | ||
| 244 | --- gnu/java/security/key/rsa/GnuRSAPrivateKey.java.orig 2008-03-16 23:04:50.000000000 +0100 | ||
| 245 | +++ gnu/java/security/key/rsa/GnuRSAPrivateKey.java 2009-03-19 19:00:47.000000000 +0100 | ||
| 246 | @@ -41,7 +41,6 @@ | ||
| 247 | import gnu.java.lang.CPStringBuilder; | ||
| 248 | |||
| 249 | import gnu.java.security.Configuration; | ||
| 250 | -import gnu.java.security.action.GetPropertyAction; | ||
| 251 | import gnu.java.security.Registry; | ||
| 252 | import gnu.java.security.key.IKeyPairCodec; | ||
| 253 | |||
| 254 | @@ -51,6 +50,8 @@ | ||
| 255 | import java.security.interfaces.RSAPrivateCrtKey; | ||
| 256 | import java.security.interfaces.RSAPrivateKey; | ||
| 257 | |||
| 258 | +import sun.security.action.GetPropertyAction; | ||
| 259 | + | ||
| 260 | /** | ||
| 261 | * An object that embodies an RSA private key. | ||
| 262 | * <p> | ||
| 263 | Index: gnu/java/security/key/rsa/GnuRSAPublicKey.java | ||
| 264 | =================================================================== | ||
| 265 | --- gnu/java/security/key/rsa/GnuRSAPublicKey.java.orig 2008-03-16 23:04:50.000000000 +0100 | ||
| 266 | +++ gnu/java/security/key/rsa/GnuRSAPublicKey.java 2009-03-19 19:00:47.000000000 +0100 | ||
| 267 | @@ -41,7 +41,6 @@ | ||
| 268 | import gnu.java.lang.CPStringBuilder; | ||
| 269 | |||
| 270 | import gnu.java.security.Registry; | ||
| 271 | -import gnu.java.security.action.GetPropertyAction; | ||
| 272 | import gnu.java.security.key.IKeyPairCodec; | ||
| 273 | |||
| 274 | import java.math.BigInteger; | ||
| 275 | @@ -49,6 +48,8 @@ | ||
| 276 | import java.security.PublicKey; | ||
| 277 | import java.security.interfaces.RSAPublicKey; | ||
| 278 | |||
| 279 | +import sun.security.action.GetPropertyAction; | ||
| 280 | + | ||
| 281 | /** | ||
| 282 | * An object that encapsulates an RSA public key. | ||
| 283 | * <p> | ||
| 284 | Index: gnu/javax/crypto/key/dh/GnuDHKey.java | ||
| 285 | =================================================================== | ||
| 286 | --- gnu/javax/crypto/key/dh/GnuDHKey.java.orig 2006-07-11 18:03:59.000000000 +0200 | ||
| 287 | +++ gnu/javax/crypto/key/dh/GnuDHKey.java 2009-03-19 19:00:47.000000000 +0100 | ||
| 288 | @@ -39,7 +39,6 @@ | ||
| 289 | package gnu.javax.crypto.key.dh; | ||
| 290 | |||
| 291 | import gnu.java.security.Registry; | ||
| 292 | -import gnu.java.security.action.GetPropertyAction; | ||
| 293 | import gnu.java.security.util.FormatUtil; | ||
| 294 | |||
| 295 | import java.math.BigInteger; | ||
| 296 | @@ -49,6 +48,8 @@ | ||
| 297 | import javax.crypto.interfaces.DHKey; | ||
| 298 | import javax.crypto.spec.DHParameterSpec; | ||
| 299 | |||
| 300 | +import sun.security.action.GetPropertyAction; | ||
| 301 | + | ||
| 302 | /** | ||
| 303 | * A base asbtract class for both public and private Diffie-Hellman keys. It | ||
| 304 | * encapsulates the two DH numbers: <code>p</code>, and <code>g</code>. | ||
| 305 | Index: gnu/javax/crypto/key/dh/GnuDHPrivateKey.java | ||
| 306 | =================================================================== | ||
| 307 | --- gnu/javax/crypto/key/dh/GnuDHPrivateKey.java.orig 2006-07-11 18:03:59.000000000 +0200 | ||
| 308 | +++ gnu/javax/crypto/key/dh/GnuDHPrivateKey.java 2009-03-19 19:00:47.000000000 +0100 | ||
| 309 | @@ -40,7 +40,6 @@ | ||
| 310 | |||
| 311 | import gnu.java.security.Configuration; | ||
| 312 | import gnu.java.security.Registry; | ||
| 313 | -import gnu.java.security.action.GetPropertyAction; | ||
| 314 | import gnu.java.security.key.IKeyPairCodec; | ||
| 315 | |||
| 316 | import java.math.BigInteger; | ||
| 317 | @@ -48,6 +47,8 @@ | ||
| 318 | |||
| 319 | import javax.crypto.interfaces.DHPrivateKey; | ||
| 320 | |||
| 321 | +import sun.security.action.GetPropertyAction; | ||
| 322 | + | ||
| 323 | /** | ||
| 324 | * An implementation of the Diffie-Hellman private key. | ||
| 325 | * <p> | ||
| 326 | Index: gnu/javax/crypto/key/dh/GnuDHPublicKey.java | ||
| 327 | =================================================================== | ||
| 328 | --- gnu/javax/crypto/key/dh/GnuDHPublicKey.java.orig 2006-07-11 18:03:59.000000000 +0200 | ||
| 329 | +++ gnu/javax/crypto/key/dh/GnuDHPublicKey.java 2009-03-19 19:00:47.000000000 +0100 | ||
| 330 | @@ -39,7 +39,6 @@ | ||
| 331 | package gnu.javax.crypto.key.dh; | ||
| 332 | |||
| 333 | import gnu.java.security.Registry; | ||
| 334 | -import gnu.java.security.action.GetPropertyAction; | ||
| 335 | import gnu.java.security.key.IKeyPairCodec; | ||
| 336 | |||
| 337 | import java.math.BigInteger; | ||
| 338 | @@ -47,6 +46,8 @@ | ||
| 339 | |||
| 340 | import javax.crypto.interfaces.DHPublicKey; | ||
| 341 | |||
| 342 | +import sun.security.action.GetPropertyAction; | ||
| 343 | + | ||
| 344 | /** | ||
| 345 | * An implementation of the Diffie-Hellman public key. | ||
| 346 | * <p> | ||
| 347 | Index: gnu/javax/crypto/sasl/plain/PasswordFile.java | ||
| 348 | =================================================================== | ||
| 349 | --- gnu/javax/crypto/sasl/plain/PasswordFile.java.orig 2008-05-05 23:29:46.000000000 +0200 | ||
| 350 | +++ gnu/javax/crypto/sasl/plain/PasswordFile.java 2009-03-19 19:00:47.000000000 +0100 | ||
| 351 | @@ -40,7 +40,6 @@ | ||
| 352 | |||
| 353 | import gnu.java.lang.CPStringBuilder; | ||
| 354 | |||
| 355 | -import gnu.java.security.action.GetPropertyAction; | ||
| 356 | import gnu.javax.crypto.sasl.NoSuchUserException; | ||
| 357 | import gnu.javax.crypto.sasl.UserAlreadyExistsException; | ||
| 358 | |||
| 359 | @@ -58,6 +57,8 @@ | ||
| 360 | import java.util.NoSuchElementException; | ||
| 361 | import java.util.StringTokenizer; | ||
| 362 | |||
| 363 | +import sun.security.action.GetPropertyAction; | ||
| 364 | + | ||
| 365 | /** | ||
| 366 | * A representation of a Plain password file. | ||
| 367 | */ | ||
| 368 | Index: gnu/javax/net/ssl/provider/X509TrustManagerFactory.java | ||
| 369 | =================================================================== | ||
| 370 | --- gnu/javax/net/ssl/provider/X509TrustManagerFactory.java.orig 2006-12-10 21:25:43.000000000 +0100 | ||
| 371 | +++ gnu/javax/net/ssl/provider/X509TrustManagerFactory.java 2009-03-19 19:00:47.000000000 +0100 | ||
| 372 | @@ -66,11 +66,12 @@ | ||
| 373 | import javax.net.ssl.TrustManagerFactorySpi; | ||
| 374 | import javax.net.ssl.X509TrustManager; | ||
| 375 | |||
| 376 | -import gnu.java.security.action.GetPropertyAction; | ||
| 377 | import gnu.java.security.x509.X509CertPath; | ||
| 378 | import gnu.javax.net.ssl.NullManagerParameters; | ||
| 379 | import gnu.javax.net.ssl.StaticTrustAnchors; | ||
| 380 | |||
| 381 | +import sun.security.action.GetPropertyAction; | ||
| 382 | + | ||
| 383 | /** | ||
| 384 | * This class implements a {@link javax.net.ssl.TrustManagerFactory} engine | ||
| 385 | * for the ``JessieX509'' algorithm. | ||
| 386 | Index: gnu/xml/aelfred2/XmlParser.java | ||
| 387 | =================================================================== | ||
| 388 | --- gnu/xml/aelfred2/XmlParser.java.orig 2008-01-11 22:22:59.000000000 +0100 | ||
| 389 | +++ gnu/xml/aelfred2/XmlParser.java 2009-03-19 19:00:47.000000000 +0100 | ||
| 390 | @@ -53,8 +53,6 @@ | ||
| 391 | |||
| 392 | package gnu.xml.aelfred2; | ||
| 393 | |||
| 394 | -import gnu.java.security.action.GetPropertyAction; | ||
| 395 | - | ||
| 396 | import java.io.BufferedInputStream; | ||
| 397 | import java.io.CharConversionException; | ||
| 398 | import java.io.EOFException; | ||
| 399 | @@ -74,6 +72,7 @@ | ||
| 400 | import org.xml.sax.InputSource; | ||
| 401 | import org.xml.sax.SAXException; | ||
| 402 | |||
| 403 | +import sun.security.action.GetPropertyAction; | ||
| 404 | |||
| 405 | /** | ||
| 406 | * Parse XML documents and return parse events through call-backs. | ||
| 407 | Index: sun/security/action/GetPropertyAction.java | ||
| 408 | =================================================================== | ||
| 409 | --- /dev/null 1970-01-01 00:00:00.000000000 +0000 | ||
| 410 | +++ sun/security/action/GetPropertyAction.java 2009-03-19 19:00:47.000000000 +0100 | ||
| 411 | @@ -0,0 +1,92 @@ | ||
| 412 | +/* GetPropertyAction.java | ||
| 413 | + Copyright (C) 2004, 2008 Free Software Foundation, Inc. | ||
| 414 | + | ||
| 415 | +This file is part of GNU Classpath. | ||
| 416 | + | ||
| 417 | +GNU Classpath is free software; you can redistribute it and/or modify | ||
| 418 | +it under the terms of the GNU General Public License as published by | ||
| 419 | +the Free Software Foundation; either version 2, or (at your option) | ||
| 420 | +any later version. | ||
| 421 | + | ||
| 422 | +GNU Classpath is distributed in the hope that it will be useful, but | ||
| 423 | +WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 424 | +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 425 | +General Public License for more details. | ||
| 426 | + | ||
| 427 | +You should have received a copy of the GNU General Public License | ||
| 428 | +along with GNU Classpath; see the file COPYING. If not, write to the | ||
| 429 | +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA | ||
| 430 | +02110-1301 USA. | ||
| 431 | + | ||
| 432 | +Linking this library statically or dynamically with other modules is | ||
| 433 | +making a combined work based on this library. Thus, the terms and | ||
| 434 | +conditions of the GNU General Public License cover the whole | ||
| 435 | +combination. | ||
| 436 | + | ||
| 437 | +As a special exception, the copyright holders of this library give you | ||
| 438 | +permission to link this library with independent modules to produce an | ||
| 439 | +executable, regardless of the license terms of these independent | ||
| 440 | +modules, and to copy and distribute the resulting executable under | ||
| 441 | +terms of your choice, provided that you also meet, for each linked | ||
| 442 | +independent module, the terms and conditions of the license of that | ||
| 443 | +module. An independent module is a module which is not derived from | ||
| 444 | +or based on this library. If you modify this library, you may extend | ||
| 445 | +this exception to your version of the library, but you are not | ||
| 446 | +obligated to do so. If you do not wish to do so, delete this | ||
| 447 | +exception statement from your version. */ | ||
| 448 | + | ||
| 449 | +package sun.security.action; | ||
| 450 | + | ||
| 451 | +import java.security.PrivilegedAction; | ||
| 452 | + | ||
| 453 | +/** | ||
| 454 | + * PrivilegedAction implementation that calls System.getProperty() with | ||
| 455 | + * the property name passed to its constructor. | ||
| 456 | + * | ||
| 457 | + * Example of use: | ||
| 458 | + * <code> | ||
| 459 | + * GetPropertyAction action = new GetPropertyAction("http.proxyPort"); | ||
| 460 | + * String port = AccessController.doPrivileged(action); | ||
| 461 | + * </code> | ||
| 462 | + * | ||
| 463 | + * Note: Usage of this class is discouraged as it is not a part of the | ||
| 464 | + * J2SE API. | ||
| 465 | + */ | ||
| 466 | +public class GetPropertyAction implements PrivilegedAction<String> | ||
| 467 | +{ | ||
| 468 | + String name; | ||
| 469 | + String value = null; | ||
| 470 | + | ||
| 471 | + public GetPropertyAction() | ||
| 472 | + { | ||
| 473 | + } | ||
| 474 | + | ||
| 475 | + public GetPropertyAction(String propName) | ||
| 476 | + { | ||
| 477 | + setParameters(propName); | ||
| 478 | + } | ||
| 479 | + | ||
| 480 | + public GetPropertyAction(String propName, String defaultValue) | ||
| 481 | + { | ||
| 482 | + setParameters(propName, defaultValue); | ||
| 483 | + } | ||
| 484 | + | ||
| 485 | + public String run() | ||
| 486 | + { | ||
| 487 | + return System.getProperty(name, value); | ||
| 488 | + } | ||
| 489 | + | ||
| 490 | + public GetPropertyAction setParameters(String propName) | ||
| 491 | + { | ||
| 492 | + this.name = propName; | ||
| 493 | + this.value = null; | ||
| 494 | + return this; | ||
| 495 | + } | ||
| 496 | + | ||
| 497 | + public GetPropertyAction setParameters(String propName, String defaultValue) | ||
| 498 | + { | ||
| 499 | + this.name = propName; | ||
| 500 | + this.value = defaultValue; | ||
| 501 | + return this; | ||
| 502 | + } | ||
| 503 | +} | ||
diff --git a/recipes-core/classpath/classpath-0.98/toolwrapper-exithook.patch b/recipes-core/classpath/classpath-0.98/toolwrapper-exithook.patch new file mode 100644 index 0000000..49b6631 --- /dev/null +++ b/recipes-core/classpath/classpath-0.98/toolwrapper-exithook.patch | |||
| @@ -0,0 +1,46 @@ | |||
| 1 | Index: classpath-0.97.2/tools/toolwrapper.c | ||
| 2 | =================================================================== | ||
| 3 | --- classpath-0.97.2.orig/tools/toolwrapper.c 2006-12-13 18:56:44.000000000 +0100 | ||
| 4 | +++ classpath-0.97.2/tools/toolwrapper.c 2009-12-24 13:16:44.295000627 +0100 | ||
| 5 | @@ -59,6 +59,10 @@ | ||
| 6 | /* Typedef for JNI_CreateJavaVM dlopen call. */ | ||
| 7 | typedef jint createVM (JavaVM **, void **, void *); | ||
| 8 | |||
| 9 | +void exit_hook(jint); | ||
| 10 | + | ||
| 11 | +int return_code = 1; | ||
| 12 | + | ||
| 13 | int | ||
| 14 | main (int argc, const char** argv) | ||
| 15 | { | ||
| 16 | @@ -143,6 +147,17 @@ | ||
| 17 | vm_args.options[vm_args.nOptions++].optionString = "-Xbootclasspath/p:" TOOLS_ZIP; | ||
| 18 | } | ||
| 19 | |||
| 20 | + /* Set the exit hook */ | ||
| 21 | + vm_args.options = (JavaVMOption*) realloc (vm_args.options, (vm_args.nOptions + 1) * sizeof (JavaVMOption)); | ||
| 22 | + | ||
| 23 | + if (vm_args.options == NULL) | ||
| 24 | + { | ||
| 25 | + fprintf (stderr, TOOLNAME ": realloc failed.\n"); | ||
| 26 | + goto destroy; | ||
| 27 | + } | ||
| 28 | + vm_args.options[vm_args.nOptions].optionString = "exit"; | ||
| 29 | + vm_args.options[vm_args.nOptions++].extraInfo = (void *) exit_hook; | ||
| 30 | + | ||
| 31 | /* Terminate vm_args.options with a NULL element. */ | ||
| 32 | vm_args.options = (JavaVMOption*) realloc (vm_args.options, (vm_args.nOptions + 1) * sizeof (JavaVMOption)); | ||
| 33 | if (vm_args.options == NULL) | ||
| 34 | @@ -260,5 +275,11 @@ | ||
| 35 | if (lt_dlexit () != 0) | ||
| 36 | fprintf (stderr, TOOLNAME ": lt_dlexit failed.\n"); | ||
| 37 | |||
| 38 | - return 1; | ||
| 39 | + return return_code; | ||
| 40 | +} | ||
| 41 | + | ||
| 42 | +void exit_hook(jint code) | ||
| 43 | +{ | ||
| 44 | + return_code = code; | ||
| 45 | } | ||
| 46 | + | ||
diff --git a/recipes-core/classpath/classpath-initial-0.93/miscompilation.patch b/recipes-core/classpath/classpath-initial-0.93/miscompilation.patch new file mode 100644 index 0000000..99db6f3 --- /dev/null +++ b/recipes-core/classpath/classpath-initial-0.93/miscompilation.patch | |||
| @@ -0,0 +1,13 @@ | |||
| 1 | Index: classpath-0.93/native/jni/java-io/java_io_VMFile.c | ||
| 2 | =================================================================== | ||
| 3 | --- classpath-0.93.orig/native/jni/java-io/java_io_VMFile.c 2006-09-23 07:17:45.000000000 +0200 | ||
| 4 | +++ classpath-0.93/native/jni/java-io/java_io_VMFile.c 2008-11-14 13:41:27.000000000 +0100 | ||
| 5 | @@ -239,7 +239,7 @@ | ||
| 6 | { | ||
| 7 | #ifndef WITHOUT_FILESYSTEM | ||
| 8 | const char *filename; | ||
| 9 | - int result; | ||
| 10 | + volatile int result; | ||
| 11 | |||
| 12 | /* Don't use the JCL convert function because it throws an exception | ||
| 13 | on failure */ | ||
diff --git a/recipes-core/classpath/classpath-initial_0.93.bb b/recipes-core/classpath/classpath-initial_0.93.bb new file mode 100644 index 0000000..77831c1 --- /dev/null +++ b/recipes-core/classpath/classpath-initial_0.93.bb | |||
| @@ -0,0 +1,37 @@ | |||
| 1 | # No later version of Classpath may be used because this is the latest that can be compiled | ||
| 2 | # by jikes! | ||
| 3 | |||
| 4 | require classpath-native.inc | ||
| 5 | |||
| 6 | DESCRIPTION="Java1.4-compatible GNU Classpath variant that is used as bootclasspath for jikes-native." | ||
| 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=af0004801732bc4b20d90f351cf80510" | ||
| 8 | |||
| 9 | DEPENDS = "zip-native fastjar-native jikes-native gettext-native" | ||
| 10 | |||
| 11 | SRC_URI += " \ | ||
| 12 | file://autotools.patch \ | ||
| 13 | file://miscompilation.patch \ | ||
| 14 | " | ||
| 15 | |||
| 16 | EXTRA_OECONF = " \ | ||
| 17 | --with-jikes=jikes \ | ||
| 18 | --with-fastjar=fastjar \ | ||
| 19 | --with-glibj \ | ||
| 20 | --disable-Werror \ | ||
| 21 | --disable-local-sockets \ | ||
| 22 | --disable-alsa \ | ||
| 23 | --disable-gconf-peer \ | ||
| 24 | --disable-gtk-peer \ | ||
| 25 | --disable-plugin \ | ||
| 26 | --disable-dssi \ | ||
| 27 | --disable-examples \ | ||
| 28 | --disable-tools \ | ||
| 29 | --with-glibj-dir=${STAGING_DATADIR_NATIVE}/classpath-initial \ | ||
| 30 | --with-native-libdir=${STAGING_LIBDIR_NATIVE}/classpath-initial \ | ||
| 31 | --includedir=${STAGING_INCDIR_NATIVE}/classpath-initial \ | ||
| 32 | --with-vm=java \ | ||
| 33 | " | ||
| 34 | |||
| 35 | SRC_URI[md5sum] = "ffa9e9cac31c5acbf0ea9eff9efa923d" | ||
| 36 | SRC_URI[sha256sum] = "df2d093612abd23fe67e9409d89bb2a8e79b1664fe2b2da40e1c8ed693e32945" | ||
| 37 | |||
diff --git a/recipes-core/classpath/classpath-native.inc b/recipes-core/classpath/classpath-native.inc new file mode 100644 index 0000000..aefbf6d --- /dev/null +++ b/recipes-core/classpath/classpath-native.inc | |||
| @@ -0,0 +1,34 @@ | |||
| 1 | DESCRIPTION = "GNU Classpath standard Java libraries - For native Java-dependent programs" | ||
| 2 | HOMEPAGE = "http://www.gnu.org/software/classpath/" | ||
| 3 | LICENSE = "Classpath" | ||
| 4 | |||
| 5 | DEPENDS = "ecj-initial fastjar-native zip-native gettext-native" | ||
| 6 | |||
| 7 | inherit autotools native | ||
| 8 | |||
| 9 | SRC_URI = "${GNU_MIRROR}/classpath/classpath-${PV}.tar.gz" | ||
| 10 | |||
| 11 | do_configure_prepend () { | ||
| 12 | |||
| 13 | cp ${STAGING_DATADIR_NATIVE}/gettext/config.rpath ${S} | ||
| 14 | } | ||
| 15 | |||
| 16 | export JAVA="${STAGING_BINDIR_NATIVE}/java-initial" | ||
| 17 | export JAVAC="${STAGING_BINDIR_NATIVE}/ecj-initial" | ||
| 18 | export JAVACFLAGS="-nowarn" | ||
| 19 | |||
| 20 | EXTRA_OECONF = " \ | ||
| 21 | --with-glibj \ | ||
| 22 | --enable-local-sockets \ | ||
| 23 | --disable-Werror \ | ||
| 24 | --disable-alsa \ | ||
| 25 | --disable-gconf-peer \ | ||
| 26 | --disable-gtk-peer \ | ||
| 27 | --disable-plugin \ | ||
| 28 | --disable-dssi \ | ||
| 29 | --disable-gjdoc \ | ||
| 30 | --disable-examples \ | ||
| 31 | --enable-tools \ | ||
| 32 | --includedir=${STAGING_INCDIR}/classpath \ | ||
| 33 | " | ||
| 34 | |||
diff --git a/recipes-core/classpath/classpath-native_0.98.bb b/recipes-core/classpath/classpath-native_0.98.bb new file mode 100644 index 0000000..55022fb --- /dev/null +++ b/recipes-core/classpath/classpath-native_0.98.bb | |||
| @@ -0,0 +1,29 @@ | |||
| 1 | require classpath-native.inc | ||
| 2 | |||
| 3 | LIC_FILES_CHKSUM = "file://COPYING;md5=af0004801732bc4b20d90f351cf80510" | ||
| 4 | |||
| 5 | SRC_URI += " \ | ||
| 6 | file://SimpleName.diff;striplevel=0 \ | ||
| 7 | file://sun-security-getproperty.patch;striplevel=0 \ | ||
| 8 | file://ecj_java_dir.patch \ | ||
| 9 | file://autotools.patch \ | ||
| 10 | file://miscompilation.patch \ | ||
| 11 | file://toolwrapper-exithook.patch \ | ||
| 12 | " | ||
| 13 | |||
| 14 | do_unpackpost() { | ||
| 15 | # Kind of patch: Moves package "org.w3c.dom.html2" to "org.w3c.dom.html" | ||
| 16 | mv external/w3c_dom/org/w3c/dom/html2 \ | ||
| 17 | external/w3c_dom/org/w3c/dom/html | ||
| 18 | |||
| 19 | find examples/gnu/classpath/examples/html gnu/xml/dom/html2 external/w3c_dom/org/w3c/dom/html -name "*.java" \ | ||
| 20 | -exec sed -i -e"s|org.w3c.dom.html2|org.w3c.dom.html|" {} \; | ||
| 21 | |||
| 22 | sed -i -e"s|org/w3c/dom/html2|org/w3c/dom/html|" external/w3c_dom/Makefile.am | ||
| 23 | } | ||
| 24 | |||
| 25 | addtask unpackpost after do_unpack before do_patch | ||
| 26 | |||
| 27 | SRC_URI[md5sum] = "90c6571b8b0309e372faa0f9f6255ea9" | ||
| 28 | SRC_URI[sha256sum] = "501b5acd4dff79b6100da22cef15080f31071821ce3cea6f1b739bc1b56fac3f" | ||
| 29 | |||
diff --git a/recipes-core/classpath/classpath.inc b/recipes-core/classpath/classpath.inc new file mode 100644 index 0000000..dfe4a68 --- /dev/null +++ b/recipes-core/classpath/classpath.inc | |||
| @@ -0,0 +1,86 @@ | |||
| 1 | DESCRIPTION = "GNU Classpath standard Java libraries" | ||
| 2 | HOMEPAGE = "http://www.gnu.org/software/classpath/" | ||
| 3 | SECTION = "libs" | ||
| 4 | PRIORITY = "optional" | ||
| 5 | LICENSE = "Classpath" | ||
| 6 | PBN = "classpath" | ||
| 7 | |||
| 8 | |||
| 9 | inherit autotools java | ||
| 10 | |||
| 11 | DEPENDS = "virtual/javac-native fastjar-native zip-native gettext-native gmp antlr-native gtk+ gconf libxtst" | ||
| 12 | |||
| 13 | RPROVIDES_${PN} = "" | ||
| 14 | |||
| 15 | RDEPENDS_${PN} = "${PBN}-common (>= ${PV})" | ||
| 16 | RDEPENDS_${PN}-examples = "java2-runtime ${PN}-awt" | ||
| 17 | RDEPENDS_${PN}-tools = "java2-runtime" | ||
| 18 | |||
| 19 | RPROVIDES_${PN} = "${PBN}" | ||
| 20 | RPROVIDES_${PN}-common = "${PBN}-common" | ||
| 21 | RPROVIDES_${PN}-gtk = "${PBN}-awt" | ||
| 22 | |||
| 23 | SRC_URI = "${GNU_MIRROR}/classpath/classpath-${PV}.tar.gz" | ||
| 24 | |||
| 25 | S = "${WORKDIR}/${PBN}-${PV}" | ||
| 26 | |||
| 27 | export JAVA = "java" | ||
| 28 | |||
| 29 | EXTRA_OECONF = "\ | ||
| 30 | --with-glibj \ | ||
| 31 | --with-ecj=javac \ | ||
| 32 | --with-fastjar=fastjar \ | ||
| 33 | --includedir=${includedir}/classpath \ | ||
| 34 | --with-vm=java \ | ||
| 35 | --disable-Werror \ | ||
| 36 | --with-antlr-jar=${STAGING_DATADIR_JAVA_NATIVE}/antlr.jar \ | ||
| 37 | --disable-alsa \ | ||
| 38 | --disable-dssi \ | ||
| 39 | --disable-qt4-peer \ | ||
| 40 | --disable-plugin \ | ||
| 41 | --enable-gconf-peer \ | ||
| 42 | --enable-gtk-peer \ | ||
| 43 | --enable-local-sockets \ | ||
| 44 | --with-vm=java \ | ||
| 45 | " | ||
| 46 | |||
| 47 | |||
| 48 | EXTRA_OECONF += "\ | ||
| 49 | " | ||
| 50 | |||
| 51 | do_configure_prepend () { | ||
| 52 | cp ${STAGING_DATADIR_NATIVE}/gettext/config.rpath ${S} | ||
| 53 | } | ||
| 54 | |||
| 55 | |||
| 56 | do_install() { | ||
| 57 | autotools_do_install | ||
| 58 | mv ${D}${libdir}/security ${D}${libdir}/${PBN} | ||
| 59 | } | ||
| 60 | |||
| 61 | # Defines the packages that this classpath recipe creates. | ||
| 62 | # This allows the classpath-minimal variants to override this | ||
| 63 | # again. | ||
| 64 | CPPACKAGES = "${PBN}-common ${PN}-examples \ | ||
| 65 | ${PN}-tools ${PN}-tools-doc \ | ||
| 66 | ${PN}-gtk ${PN}-gconf" | ||
| 67 | |||
| 68 | PACKAGES =+ "${CPPACKAGES}" | ||
| 69 | |||
| 70 | FILES_${PN}-dev += "${libdir}/${PBN}/*.la ${incdir}/${PBN}" | ||
| 71 | |||
| 72 | FILES_${PBN}-common = "${datadir}/${PBN}/glibj.zip ${libdir}/logging.properties ${libdir}/${PBN}/security" | ||
| 73 | FILES_${PN}-examples = "${datadir}/${PBN}/examples" | ||
| 74 | |||
| 75 | FILES_${PN}-tools = "${datadir}/${PBN}/tools.zip ${bindir}" | ||
| 76 | FILES_${PN}-tools-doc = "${mandir}" | ||
| 77 | |||
| 78 | FILES_${PN}-dbg += "${libdir}/${PBN}/.debug" | ||
| 79 | FILES_${PN}-doc = "${infodir}" | ||
| 80 | |||
| 81 | # gcjwebplugin - not built yet | ||
| 82 | #FILES_${PN}-gcjwebplugin = "${libdir}/${PBN}/libgcjwebplugin.so" | ||
| 83 | FILES_${PN}-gtk = "${libdir}/${PBN}/libgtkpeer.so ${libdir}/${PBN}/libjawt.so" | ||
| 84 | FILES_${PN}-gconf = "${libdir}/${PBN}/libgconfpeer.so" | ||
| 85 | FILES_${PN} = "${libdir}/${PBN}/lib*so*" | ||
| 86 | |||
diff --git a/recipes-core/classpath/classpath_0.98.bb b/recipes-core/classpath/classpath_0.98.bb new file mode 100644 index 0000000..21223c9 --- /dev/null +++ b/recipes-core/classpath/classpath_0.98.bb | |||
| @@ -0,0 +1,13 @@ | |||
| 1 | require classpath.inc | ||
| 2 | |||
| 3 | SRC_URI += " \ | ||
| 4 | file://SimpleName.diff;striplevel=0 \ | ||
| 5 | file://ecj_java_dir.patch \ | ||
| 6 | file://autotools.patch \ | ||
| 7 | file://fix-gmp.patch \ | ||
| 8 | file://toolwrapper-exithook.patch \ | ||
| 9 | " | ||
| 10 | |||
| 11 | SRC_URI[md5sum] = "90c6571b8b0309e372faa0f9f6255ea9" | ||
| 12 | SRC_URI[sha256sum] = "501b5acd4dff79b6100da22cef15080f31071821ce3cea6f1b739bc1b56fac3f" | ||
| 13 | |||
diff --git a/recipes-core/classpath/files/autotools.patch b/recipes-core/classpath/files/autotools.patch new file mode 100644 index 0000000..663c034 --- /dev/null +++ b/recipes-core/classpath/files/autotools.patch | |||
| @@ -0,0 +1,24 @@ | |||
| 1 | Index: classpath-0.93/configure.ac | ||
| 2 | =================================================================== | ||
| 3 | --- classpath-0.93.orig/configure.ac 2006-12-08 20:22:50.000000000 +0100 | ||
| 4 | +++ classpath-0.93/configure.ac 2008-08-25 22:07:40.711946598 +0200 | ||
| 5 | @@ -41,6 +41,11 @@ | ||
| 6 | AC_CONFIG_HEADERS([include/config.h]) | ||
| 7 | AC_PREFIX_DEFAULT(/usr/local/classpath) | ||
| 8 | |||
| 9 | +AC_CONFIG_MACRO_DIR([m4]) | ||
| 10 | + | ||
| 11 | + | ||
| 12 | +AM_ICONV_LINK | ||
| 13 | + | ||
| 14 | dnl ----------------------------------------------------------- | ||
| 15 | dnl Enable collections.jar (disabled by default) | ||
| 16 | dnl ----------------------------------------------------------- | ||
| 17 | @@ -312,6 +317,7 @@ | ||
| 18 | dnl AC_PROG_AWK | ||
| 19 | AC_PROG_CC | ||
| 20 | AC_PROG_CPP | ||
| 21 | +AM_PROG_CC_C_O | ||
| 22 | |||
| 23 | # Handle -Werror default case. | ||
| 24 | if test "$ENABLE_WERROR" = default; then | ||
