From 499e44455e1c37f89dfb9be9e8a970c26e1311d0 Mon Sep 17 00:00:00 2001 From: Henning Heinold Date: Fri, 5 Apr 2013 10:03:05 +0200 Subject: recipes-extended: split out recipes which are not needed for compiling openjdk Signed-off-by: Henning Heinold --- .../rxtx/files/multiple_property_dirs.patch | 168 +++++++++++++++++++++ 1 file changed, 168 insertions(+) create mode 100644 recipes-extended/rxtx/files/multiple_property_dirs.patch (limited to 'recipes-extended/rxtx/files/multiple_property_dirs.patch') diff --git a/recipes-extended/rxtx/files/multiple_property_dirs.patch b/recipes-extended/rxtx/files/multiple_property_dirs.patch new file mode 100644 index 0000000..6664966 --- /dev/null +++ b/recipes-extended/rxtx/files/multiple_property_dirs.patch @@ -0,0 +1,168 @@ +Description: Handles the case when "java.ext.dirs" system property contains + more than one directory. +Author: Philip Ashmore +Bug: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=646069 +Index: rxtx/src/gnu/io/RXTXCommDriver.java +=================================================================== +--- rxtx.orig/src/gnu/io/RXTXCommDriver.java 2011-10-28 13:02:43.046717064 -0400 ++++ rxtx/src/gnu/io/RXTXCommDriver.java 2011-10-28 13:02:43.186717068 -0400 +@@ -356,7 +356,7 @@ + First try to register ports specified in the properties + file. If that doesn't exist, then scan for ports. + */ +- for (int PortType=CommPortIdentifier.PORT_SERIAL;PortType<=CommPortIdentifier.PORT_PARALLEL;PortType++) { ++ for (int PortType=CommPortIdentifier.PORT_SERIAL; PortType<=CommPortIdentifier.PORT_PARALLEL; PortType++) { + if (!registerSpecifiedPorts(PortType)) { + if (!registerKnownPorts(PortType)) { + registerScannedPorts(PortType); +@@ -375,10 +375,18 @@ + while (tok.hasMoreElements()) + { + String PortName = tok.nextToken(); +- +- if (testRead(PortName, PortType)) ++ if(debug) ++ System.out.println("Trying " + PortName + "."); ++ if (testRead(PortName, PortType)) { + CommPortIdentifier.addPortName(PortName, + PortType, this); ++ if(debug) ++ System.out.println("Success: Read from " + PortName + "."); ++ }else{ ++ if(debug) ++ System.out.println("Fail: Cannot read from " + PortName ++ + "."); ++ } + } + } + +@@ -402,26 +410,39 @@ + private boolean registerSpecifiedPorts(int PortType) + { + String val = null; +- Properties origp = System.getProperties();//save system properties +- +- try +- { ++ Properties origp = System.getProperties(); // save system properties + +- String ext_dir=System.getProperty("java.ext.dirs")+System.getProperty("file.separator"); +- FileInputStream rxtx_prop=new FileInputStream(ext_dir+"gnu.io.rxtx.properties"); +- Properties p=new Properties(); +- p.load(rxtx_prop); +- System.setProperties(p); +- for (Iterator it = p.keySet().iterator(); it.hasNext();) { +- String key = (String) it.next(); +- System.setProperty(key, p.getProperty(key)); +- } +- }catch(Exception e){ +- if (debug){ +- System.out.println("The file: gnu.io.rxtx.properties doesn't exists."); +- System.out.println(e.toString()); +- }//end if ++ String [] ext_dirs = System.getProperty("java.ext.dirs").split(":"); ++ String fs = System.getProperty("file.separator"); ++ for (int n = 0; n < ext_dirs.length; ++n) { ++ String ext_file = "?"; ++ try{ ++ ext_file = ext_dirs[n] + fs + "gnu.io.rxtx.properties"; ++ FileInputStream rxtx_prop = new FileInputStream(ext_file); ++ Properties p=new Properties(); ++ p.load(rxtx_prop); ++ System.setProperties(p); ++ for (Iterator it = p.keySet().iterator(); it.hasNext();) { ++ String key = (String) it.next(); ++ String value = p.getProperty(key); ++ if(debug) { ++ System.out.println(key + " -> " + value); ++ } ++ System.setProperty(key, value); ++ } ++ }catch(Exception e){ ++ if (debug){ ++ System.out.println("The file \"" + ext_file ++ + "\" doesn't exist."); ++ System.out.println(e.toString()); ++ }//end if ++ continue; + }//end catch ++ if (debug){ ++ System.out.println("Read properties from \"" + ext_file ++ + "\"."); ++ }//end if ++ }//end for + + if (debug) + System.out.println("checking for system-known ports of type "+PortType); +Index: rxtx/src/SerialImp.c +=================================================================== +--- rxtx.orig/src/SerialImp.c 2011-10-28 13:02:43.078717065 -0400 ++++ rxtx/src/SerialImp.c 2011-10-28 13:02:43.190717067 -0400 +@@ -4359,7 +4359,11 @@ + + if( fd < 0 ) + { +- report_verbose( "testRead() open failed\n" ); ++ report_verbose( "testRead() open \"" ); ++ report_verbose( name ); ++ report_verbose( "\" failed: " ); ++ report_verbose( strerror(errno) ); ++ report_verbose( "\n" ); + ret = JNI_FALSE; + goto END; + } +@@ -5095,7 +5099,7 @@ + exceptions: none + comments: + ----------------------------------------------------------*/ +-void report_warning(char *msg) ++void report_warning(const char *msg) + { + #ifndef DEBUG_MW + fprintf(stderr, msg); +@@ -5113,7 +5117,7 @@ + exceptions: none + comments: + ----------------------------------------------------------*/ +-void report_verbose(char *msg) ++void report_verbose(const char *msg) + { + #ifdef DEBUG_VERBOSE + #ifdef DEBUG_MW +@@ -5132,7 +5136,7 @@ + exceptions: none + comments: + ----------------------------------------------------------*/ +-void report_error(char *msg) ++void report_error(const char *msg) + { + #ifndef DEBUG_MW + fprintf(stderr, msg); +@@ -5150,7 +5154,7 @@ + exceptions: none + comments: + ----------------------------------------------------------*/ +-void report(char *msg) ++void report(const char *msg) + { + #ifdef DEBUG + # ifndef DEBUG_MW +Index: rxtx/src/SerialImp.h +=================================================================== +--- rxtx.orig/src/SerialImp.h 2011-10-28 13:02:43.162717067 -0400 ++++ rxtx/src/SerialImp.h 2011-10-28 13:02:43.194717067 -0400 +@@ -467,10 +467,10 @@ + jboolean is_interrupted( struct event_info_struct * ); + int send_event(struct event_info_struct *, jint, int ); + void dump_termios(char *,struct termios *); +-void report_verbose(char *); +-void report_error(char *); +-void report_warning(char *); +-void report(char *); ++void report_verbose(const char *); ++void report_error(const char *); ++void report_warning(const char *); ++void report(const char *); + void throw_java_exception( JNIEnv *, char *, char *, char * ); + int lock_device( const char * ); + void unlock_device( const char * ); -- cgit v1.2.3-54-g00ecf