diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 05:54:39 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 05:54:39 +0000 |
commit | 267c6f2ac71f92999e969232431ba04678e7437e (patch) | |
tree | 358c9467650e1d0a1d7227a21dac2e3d08b622b2 /external/hsqldb | |
parent | Initial commit. (diff) | |
download | libreoffice-267c6f2ac71f92999e969232431ba04678e7437e.tar.xz libreoffice-267c6f2ac71f92999e969232431ba04678e7437e.zip |
Adding upstream version 4:24.2.0.upstream/4%24.2.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'external/hsqldb')
-rw-r--r-- | external/hsqldb/ExternalPackage_hsqldb.mk | 16 | ||||
-rw-r--r-- | external/hsqldb/ExternalProject_hsqldb.mk | 38 | ||||
-rw-r--r-- | external/hsqldb/Makefile | 7 | ||||
-rw-r--r-- | external/hsqldb/Module_hsqldb.mk | 18 | ||||
-rw-r--r-- | external/hsqldb/README | 11 | ||||
-rw-r--r-- | external/hsqldb/UnpackedTarball_hsqldb.mk | 33 | ||||
-rw-r--r-- | external/hsqldb/patches/disable-dump-script.patch | 14 | ||||
-rw-r--r-- | external/hsqldb/patches/fdo36824.patch | 11 | ||||
-rw-r--r-- | external/hsqldb/patches/hsqldb-runFinalizersOnExit.patch | 14 | ||||
-rw-r--r-- | external/hsqldb/patches/i103528.patch | 11 | ||||
-rw-r--r-- | external/hsqldb/patches/i104901.patch | 27 | ||||
-rw-r--r-- | external/hsqldb/patches/i96823.patch | 94 | ||||
-rw-r--r-- | external/hsqldb/patches/i97032.patch | 10 | ||||
-rw-r--r-- | external/hsqldb/patches/jdbc-4.1.patch | 320 | ||||
-rw-r--r-- | external/hsqldb/patches/limit_as_table_alias.patch | 11 | ||||
-rw-r--r-- | external/hsqldb/patches/multipleResultSets.patch | 11 |
16 files changed, 646 insertions, 0 deletions
diff --git a/external/hsqldb/ExternalPackage_hsqldb.mk b/external/hsqldb/ExternalPackage_hsqldb.mk new file mode 100644 index 0000000000..e4dbb363b7 --- /dev/null +++ b/external/hsqldb/ExternalPackage_hsqldb.mk @@ -0,0 +1,16 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# + +$(eval $(call gb_ExternalPackage_ExternalPackage,hsqldb_project,hsqldb)) + +$(eval $(call gb_ExternalPackage_use_external_project,hsqldb_project,hsqldb)) + +$(eval $(call gb_ExternalPackage_add_file,hsqldb_project,$(LIBO_SHARE_JAVA_FOLDER)/hsqldb.jar,lib/hsqldb.jar)) + +# vim: set noet sw=4 ts=4: diff --git a/external/hsqldb/ExternalProject_hsqldb.mk b/external/hsqldb/ExternalProject_hsqldb.mk new file mode 100644 index 0000000000..67ae75106b --- /dev/null +++ b/external/hsqldb/ExternalProject_hsqldb.mk @@ -0,0 +1,38 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# + +$(eval $(call gb_ExternalProject_ExternalProject,hsqldb)) + +$(eval $(call gb_ExternalProject_register_targets,hsqldb,\ + build \ +)) + +# ANT_OPTS -Djava.security.manager=allow allows latest Apache Ant 1.10.12 to still run under +# Java 18, where java.lang.System.setSecurityManager (as called from +# org.apache.tools.ant.types.Permissions.setSecurityManager) would otherwise throw an +# UnsupportedOperationException (see <https://openjdk.java.net/jeps/411> "Deprecate the Security +# Manager for Removal"): +$(call gb_ExternalProject_get_state_target,hsqldb,build) : + $(call gb_Trace_StartRange,hsqldb,EXTERNAL) + $(call gb_ExternalProject_run,build,\ + JAVA_HOME=$(JAVA_HOME_FOR_BUILD) \ + $(if $(JDK_SECURITYMANAGER_DISALLOWED_FOR_BUILD), \ + ANT_OPTS="$$ANT_OPTS -Djava.security.manager=allow") \ + $(ICECREAM_RUN) "$(ANT)" \ + $(if $(verbose),-v,-q) \ + -f build/build.xml \ + -Dbuild.label="build-$(LIBO_VERSION_MAJOR).$(LIBO_VERSION_MINOR).$(LIBO_VERSION_MICRO).$(LIBO_VERSION_PATCH)" \ + -Dant.build.javac.source=$(JAVA_SOURCE_VER) \ + -Dant.build.javac.target=$(JAVA_TARGET_VER) \ + $(if $(debug),-Dbuild.debug="on") \ + jar \ + ) + $(call gb_Trace_EndRange,hsqldb,EXTERNAL) + +# vim: set noet sw=4 ts=4: diff --git a/external/hsqldb/Makefile b/external/hsqldb/Makefile new file mode 100644 index 0000000000..e4968cf85f --- /dev/null +++ b/external/hsqldb/Makefile @@ -0,0 +1,7 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- + +module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST)))) + +include $(module_directory)/../../solenv/gbuild/partial_build.mk + +# vim: set noet sw=4 ts=4: diff --git a/external/hsqldb/Module_hsqldb.mk b/external/hsqldb/Module_hsqldb.mk new file mode 100644 index 0000000000..d748faa2e0 --- /dev/null +++ b/external/hsqldb/Module_hsqldb.mk @@ -0,0 +1,18 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# + +$(eval $(call gb_Module_Module,hsqldb)) + +$(eval $(call gb_Module_add_targets,hsqldb,\ + ExternalPackage_hsqldb \ + ExternalProject_hsqldb \ + UnpackedTarball_hsqldb \ +)) + +# vim: set noet sw=4 ts=4: diff --git a/external/hsqldb/README b/external/hsqldb/README new file mode 100644 index 0000000000..7d7f89f040 --- /dev/null +++ b/external/hsqldb/README @@ -0,0 +1,11 @@ +Java database engine from [http://hsqldb.org/]. + +Default database format for LibreOffice. + +At some point the plan was to replace it as default by Firebird, but +that seems increasingly unlikely to happen. + +See: +https://bugs.freedesktop.org/show_bug.cgi?id=51781 +http://www.firebirdsql.org + diff --git a/external/hsqldb/UnpackedTarball_hsqldb.mk b/external/hsqldb/UnpackedTarball_hsqldb.mk new file mode 100644 index 0000000000..0b05b45ba3 --- /dev/null +++ b/external/hsqldb/UnpackedTarball_hsqldb.mk @@ -0,0 +1,33 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# + +$(eval $(call gb_UnpackedTarball_UnpackedTarball,hsqldb)) + +$(eval $(call gb_UnpackedTarball_set_tarball,hsqldb,$(HSQLDB_TARBALL),,hsqldb)) + +$(eval $(call gb_UnpackedTarball_fix_end_of_line,hsqldb,\ + build/build.xml \ + src/org/hsqldb/Library.java \ + src/org/hsqldb/persist/HsqlDatabaseProperties.java \ +)) + +$(eval $(call gb_UnpackedTarball_add_patches,hsqldb,\ + external/hsqldb/patches/i96823.patch \ + external/hsqldb/patches/i97032.patch \ + external/hsqldb/patches/i103528.patch \ + external/hsqldb/patches/i104901.patch \ + external/hsqldb/patches/fdo36824.patch \ + external/hsqldb/patches/limit_as_table_alias.patch \ + external/hsqldb/patches/hsqldb-runFinalizersOnExit.patch \ + external/hsqldb/patches/jdbc-4.1.patch \ + external/hsqldb/patches/multipleResultSets.patch \ + external/hsqldb/patches/disable-dump-script.patch \ +)) + +# vim: set noet sw=4 ts=4: diff --git a/external/hsqldb/patches/disable-dump-script.patch b/external/hsqldb/patches/disable-dump-script.patch new file mode 100644 index 0000000000..401dd38abc --- /dev/null +++ b/external/hsqldb/patches/disable-dump-script.patch @@ -0,0 +1,14 @@ +--- a/hsqldb/src/org/hsqldb/DatabaseCommandInterpreter.java 2023-02-13 11:08:11.297243034 +0000 ++++ b/hsqldb/src/org/hsqldb/DatabaseCommandInterpreter.java 2023-02-13 13:49:17.973089433 +0000 +@@ -403,6 +403,11 @@ + throw Trace.error(Trace.INVALID_IDENTIFIER); + } + ++ // added condition to avoid execution of spurious command in .script or .log file ++ if (session.isProcessingScript() || session.isProcessingLog()) { ++ return new Result(ResultConstants.UPDATECOUNT); ++ } ++ + dsw = new ScriptWriterText(database, token, true, true, true); + + dsw.writeAll(); diff --git a/external/hsqldb/patches/fdo36824.patch b/external/hsqldb/patches/fdo36824.patch new file mode 100644 index 0000000000..ad753e335b --- /dev/null +++ b/external/hsqldb/patches/fdo36824.patch @@ -0,0 +1,11 @@ +--- misc/hsqldb/src/org/hsqldb/Expression.java 2012-07-03 19:49:00.000000000 +0200 ++++ misc/build/hsqldb/src/org/hsqldb/Expression.java 2012-07-03 19:39:00.000000000 +0200 +@@ -1552,7 +1552,7 @@ + return columnQuoted; + } + +- return false; ++ return true; + } + + /** diff --git a/external/hsqldb/patches/hsqldb-runFinalizersOnExit.patch b/external/hsqldb/patches/hsqldb-runFinalizersOnExit.patch new file mode 100644 index 0000000000..214dc2c2b2 --- /dev/null +++ b/external/hsqldb/patches/hsqldb-runFinalizersOnExit.patch @@ -0,0 +1,14 @@ +--- misc/hsqldb/src/org/hsqldb/lib/java/JavaSystem.java 2008-03-16 23:51:35.000000000 +0100 ++++ misc/build/hsqldb/src/org/hsqldb/lib/java/JavaSystem.java 2018-07-12 11:46:57.997837180 +0200 +@@ -160,8 +160,9 @@ + public static void runFinalizers() { + + //#ifdef JAVA2FULL +- System.runFinalizersOnExit(true); +- ++ try { ++ System.class.getMethod("runFinalizersOnExit", boolean.class).invoke(null, true); ++ } catch (Exception e) {} + //#endif + } + diff --git a/external/hsqldb/patches/i103528.patch b/external/hsqldb/patches/i103528.patch new file mode 100644 index 0000000000..3cc7d2f1d8 --- /dev/null +++ b/external/hsqldb/patches/i103528.patch @@ -0,0 +1,11 @@ +--- misc/hsqldb/src/org/hsqldb/Library.java ++++ misc/build/hsqldb/src/org/hsqldb/Library.java +@@ -1957,7 +1957,7 @@ + functionMap.put("bitand", bitand); + functionMap.put("bitlength", bitLength); + functionMap.put("bitor", bitor); +- functionMap.put("bitxor", bitor); ++ functionMap.put("bitxor", bitxor); + functionMap.put("character", character); + functionMap.put("concat", concat); + functionMap.put("cot", cot); diff --git a/external/hsqldb/patches/i104901.patch b/external/hsqldb/patches/i104901.patch new file mode 100644 index 0000000000..a38773f4ba --- /dev/null +++ b/external/hsqldb/patches/i104901.patch @@ -0,0 +1,27 @@ +--- misc/hsqldb/src/org/hsqldb/Table.java 2007-10-19 23:59:07.000000000 +0200 ++++ misc/build/hsqldb/src/org/hsqldb/Table.java 2009-09-11 13:45:42.939231519 +0200 +@@ -149,10 +149,10 @@ + Constraint[] constraintList; // constrainst for the table + HsqlArrayList[] triggerLists; // array of trigger lists + private int[] colTypes; // fredt - types of columns +- private int[] colSizes; // fredt - copy of SIZE values for columns ++ int[] colSizes; // fredt - copy of SIZE values for columns + private int[] colScales; // fredt - copy of SCALE values for columns + private boolean[] colNullable; // fredt - modified copy of isNullable() values +- private Expression[] colDefaults; // fredt - expressions of DEFAULT values ++ Expression[] colDefaults; // fredt - expressions of DEFAULT values + private int[] defaultColumnMap; // fred - holding 0,1,2,3,... + private boolean hasDefaultValues; //fredt - shortcut for above + boolean sqlEnforceSize; // inherited from the database - +--- misc/hsqldb/src/org/hsqldb/TableWorks.java 2007-01-14 06:48:16.000000000 +0100 ++++ misc/build/hsqldb/src/org/hsqldb/TableWorks.java 2009-09-11 13:47:50.328667463 +0200 +@@ -670,7 +670,8 @@ + // default expressions can change + oldCol.setType(newCol); + oldCol.setDefaultExpression(newCol.getDefaultExpression()); +- table.setColumnTypeVars(colIndex); ++ table.colSizes[colIndex] = oldCol.getSize(); ++ table.colDefaults[colIndex] = oldCol.getDefaultExpression(); + table.resetDefaultsFlag(); + + return; diff --git a/external/hsqldb/patches/i96823.patch b/external/hsqldb/patches/i96823.patch new file mode 100644 index 0000000000..bea4a2b7e4 --- /dev/null +++ b/external/hsqldb/patches/i96823.patch @@ -0,0 +1,94 @@ +--- misc/hsqldb/src/org/hsqldb/Expression.java 2008-05-27 17:15:05.000000000 +0200 ++++ misc/build/hsqldb/src/org/hsqldb/Expression.java 2009-01-27 11:42:16.890625000 +0100 +@@ -803,61 +803,62 @@ + + case EXISTS : + buf.append(' ').append(Token.T_EXISTS).append(' '); +- break; ++ ++ return buf.toString(); + + case COUNT : + buf.append(' ').append(Token.T_COUNT).append('('); +- break; ++ if ( "(*)".equals(left))buf.append('*');else buf.append(left); buf.append(')'); return buf.toString(); + + case SUM : + buf.append(' ').append(Token.T_SUM).append('('); + buf.append(left).append(')'); +- break; ++ return buf.toString(); + + case MIN : + buf.append(' ').append(Token.T_MIN).append('('); + buf.append(left).append(')'); +- break; ++ return buf.toString(); + + case MAX : + buf.append(' ').append(Token.T_MAX).append('('); + buf.append(left).append(')'); +- break; ++ return buf.toString(); + + case AVG : + buf.append(' ').append(Token.T_AVG).append('('); + buf.append(left).append(')'); +- break; ++ return buf.toString(); + + case EVERY : + buf.append(' ').append(Token.T_EVERY).append('('); + buf.append(left).append(')'); +- break; ++ return buf.toString(); + + case SOME : + buf.append(' ').append(Token.T_SOME).append('('); + buf.append(left).append(')'); +- break; ++ return buf.toString(); + + case STDDEV_POP : + buf.append(' ').append(Token.T_STDDEV_POP).append('('); + buf.append(left).append(')'); +- break; ++ return buf.toString(); + + case STDDEV_SAMP : + buf.append(' ').append(Token.T_STDDEV_SAMP).append('('); + buf.append(left).append(')'); +- break; ++ return buf.toString(); + + case VAR_POP : + buf.append(' ').append(Token.T_VAR_POP).append('('); + buf.append(left).append(')'); +- break; ++ return buf.toString(); + + case VAR_SAMP : + buf.append(' ').append(Token.T_VAR_SAMP).append('('); + buf.append(left).append(')'); +- break; ++ return buf.toString(); + } + + throw Trace.error(Trace.EXPRESSION_NOT_SUPPORTED); +@@ -1522,6 +1523,16 @@ + if (exprType == COLUMN) { + return columnName; + } ++ if ( isAggregate(exprType) ) ++ { ++ try ++ { ++ return getDDL(); ++ } ++ catch(Exception e) ++ { ++ } ++ } + + return ""; + } diff --git a/external/hsqldb/patches/i97032.patch b/external/hsqldb/patches/i97032.patch new file mode 100644 index 0000000000..9703b89613 --- /dev/null +++ b/external/hsqldb/patches/i97032.patch @@ -0,0 +1,10 @@ +--- misc/hsqldb/src/org/hsqldb/persist/HsqlDatabaseProperties.java 2008-03-17 17:05:41.000000000 +0100 ++++ misc/build/hsqldb/src/org/hsqldb/persist/HsqlDatabaseProperties.java 2009-01-21 13:09:24.493470142 +0100 +@@ -429,6 +429,7 @@ + setProperty(hsqldb_log_size, 10); + setProperty(sql_enforce_strict_size, true); + setProperty(hsqldb_nio_data_file, false); ++ setProperty(hsqldb_lock_file, true); + } + + // OOo end diff --git a/external/hsqldb/patches/jdbc-4.1.patch b/external/hsqldb/patches/jdbc-4.1.patch new file mode 100644 index 0000000000..7884148c5f --- /dev/null +++ b/external/hsqldb/patches/jdbc-4.1.patch @@ -0,0 +1,320 @@ +--- misc/hsqldb/build/build.xml 2012-07-12 10:58:11.000000000 +0200 ++++ misc/build/hsqldb/build/build.xml 2012-07-12 10:49:28.000000000 +0200 +@@ -98,16 +98,24 @@ + <echo message="ant.java.hasjsse=${ant.java.hasjsse}" /> + </target> + +- <target name="javaversion6"> ++ <target name="javaversion7" unless="ant.java.iscjavaset"> ++ <available classname="java.util.Objects" property="ant.java.iscjava17"/> ++ <available classname="java.util.Objects" property="ant.java.iscjavaset"/> ++ </target> ++ ++ <target name="javaversion6" depends="javaversion7" unless="ant.java.iscjavaset"> + <available classname="java.net.IDN" property="ant.java.iscjava16"/> ++ <available classname="java.net.IDN" property="ant.java.iscjavaset"/> + </target> + +- <target name="javaversion4" depends="javaversion6" unless="ant.java.iscjava16"> ++ <target name="javaversion4" depends="javaversion6" unless="ant.java.iscjavaset"> + <available classname="java.nio.Buffer" property="ant.java.iscjava14"/> ++ <available classname="java.nio.Buffer" property="ant.java.iscjavaset"/> + </target> + +- <target name="javaversion2" depends="javaversion4" unless="ant.java.iscjava14"> ++ <target name="javaversion2" depends="javaversion4" unless="ant.java.iscjavaset"> + <available classname="java.lang.ref.Reference" property="ant.java.iscjava12"/> ++ <available classname="java.lang.ref.Reference" property="ant.java.iscjavaset"/> + </target> + + <target name="-prepare" depends="init,javaversion2"> +@@ -166,6 +177,7 @@ + <java classname="org.hsqldb.util.CodeSwitcher" classpath="classes" > + <arg file="${src}/org/hsqldb/lib/java/JavaSystem.java"/> + <arg file="${src}/org/hsqldb/lib/HsqlTimer.java"/> ++ <arg file="${src}/org/hsqldb/jdbcDriver.java"/> + <arg file="${src}/org/hsqldb/jdbc/jdbcStatement.java"/> + <arg file="${src}/org/hsqldb/persist/LockFile.java"/> + <arg file="${src}/org/hsqldb/persist/Logger.java"/> +@@ -183,6 +195,7 @@ + <java classname="org.hsqldb.util.CodeSwitcher" classpath="classes" > + <arg file="${src}/org/hsqldb/lib/java/JavaSystem.java"/> + <arg file="${src}/org/hsqldb/lib/HsqlTimer.java"/> ++ <arg file="${src}/org/hsqldb/jdbcDriver.java"/> + <arg file="${src}/org/hsqldb/jdbc/jdbcBlob.java"/> + <arg file="${src}/org/hsqldb/jdbc/jdbcDatabaseMetaData.java"/> + <arg file="${src}/org/hsqldb/jdbc/jdbcDataSource.java"/> +@@ -210,6 +223,7 @@ + <arg value="+JAVA2FULL"/> + <arg value="-JAVA4"/> + <arg value="-JAVA6"/> ++ <arg value="-JAVA7"/> + </java> + </target> + +@@ -218,6 +232,7 @@ + <java classname="org.hsqldb.util.CodeSwitcher" classpath="classes" > + <arg file="${src}/org/hsqldb/lib/java/JavaSystem.java"/> + <arg file="${src}/org/hsqldb/lib/HsqlTimer.java"/> ++ <arg file="${src}/org/hsqldb/jdbcDriver.java"/> + <arg file="${src}/org/hsqldb/jdbc/jdbcBlob.java"/> + <arg file="${src}/org/hsqldb/jdbc/jdbcDatabaseMetaData.java"/> + <arg file="${src}/org/hsqldb/jdbc/jdbcDataSource.java"/> +@@ -244,6 +259,7 @@ + <arg value="+JAVA2FULL"/> + <arg value="+JAVA4"/> + <arg value="-JAVA6"/> ++ <arg value="-JAVA7"/> + </java> + </target> + +@@ -253,6 +269,43 @@ + <java classname="org.hsqldb.util.CodeSwitcher" classpath="classes" > + <arg file="${src}/org/hsqldb/lib/java/JavaSystem.java"/> + <arg file="${src}/org/hsqldb/lib/HsqlTimer.java"/> ++ <arg file="${src}/org/hsqldb/jdbcDriver.java"/> ++ <arg file="${src}/org/hsqldb/jdbc/jdbcBlob.java"/> ++ <arg file="${src}/org/hsqldb/jdbc/jdbcDatabaseMetaData.java"/> ++ <arg file="${src}/org/hsqldb/jdbc/jdbcDataSource.java"/> ++ <arg file="${src}/org/hsqldb/jdbc/jdbcCallableStatement.java"/> ++ <arg file="${src}/org/hsqldb/jdbc/jdbcClob.java"/> ++ <arg file="${src}/org/hsqldb/jdbc/jdbcConnection.java"/> ++ <arg file="${src}/org/hsqldb/jdbc/jdbcParameterMetaData.java"/> ++ <arg file="${src}/org/hsqldb/jdbc/jdbcPreparedStatement.java"/> ++ <arg file="${src}/org/hsqldb/jdbc/jdbcResultSet.java"/> ++ <arg file="${src}/org/hsqldb/jdbc/jdbcResultSetMetaData.java"/> ++ <arg file="${src}/org/hsqldb/jdbc/jdbcStatement.java"/> ++ <arg file="${src}/org/hsqldb/persist/LockFile.java"/> ++ <arg file="${src}/org/hsqldb/persist/Logger.java"/> ++ <arg file="${src}/org/hsqldb/persist/ScaledRAFile.java"/> ++ <arg file="${src}/org/hsqldb/rowio/RowInputTextLog.java"/> ++ <arg file="${src}/org/hsqldb/util/DatabaseManager.java"/> ++ <arg file="${src}/org/hsqldb/util/ConnectionDialogCommon.java"/> ++ <arg file="${src}/org/hsqldb/lib/SimpleLog.java"/> ++ <arg file="${src}/org/hsqldb/rowio/RowInputTextLog.java"/> ++ <arg file="${src}/org/hsqldb/lib/SimpleLog.java"/> ++ <arg file="${src}/org/hsqldb/rowio/RowInputTextLog.java"/> ++ <arg file="${src}/org/hsqldb/HsqlDateTime.java"/> ++ <arg value="+JAVA2"/> ++ <arg value="+JAVA2FULL"/> ++ <arg value="+JAVA4"/> ++ <arg value="+JAVA6"/> ++ <arg value="-JAVA7"/> ++ </java> ++ </target> ++ ++ <target name="switchtojdk17" depends="switchtojdk16" ++ description="self explanatory" if="ant.java.iscjava17"> ++ <java classname="org.hsqldb.util.CodeSwitcher" classpath="classes" > ++ <arg file="${src}/org/hsqldb/lib/java/JavaSystem.java"/> ++ <arg file="${src}/org/hsqldb/lib/HsqlTimer.java"/> ++ <arg file="${src}/org/hsqldb/jdbcDriver.java"/> + <arg file="${src}/org/hsqldb/jdbc/jdbcBlob.java"/> + <arg file="${src}/org/hsqldb/jdbc/jdbcDatabaseMetaData.java"/> + <arg file="${src}/org/hsqldb/jdbc/jdbcDataSource.java"/> +@@ -279,10 +332,11 @@ + <arg value="+JAVA2FULL"/> + <arg value="+JAVA4"/> + <arg value="+JAVA6"/> ++ <arg value="+JAVA7"/> + </java> + </target> + +- <target name="store" depends="switchtojdk16" ++ <target name="store" depends="switchtojdk17" + description="compiles the /store folder"> + <javac srcdir="${src}" + destdir="classes" +--- misc/hsqldb/src/org/hsqldb/jdbc/jdbcCallableStatement.java 2012-02-08 15:14:42.802123563 +0000 ++++ misc/build/hsqldb/src/org/hsqldb/jdbc/jdbcCallableStatement.java 2012-02-08 15:47:35.842635642 +0000 +@@ -3375,4 +3375,18 @@ + */ + + //#endif JAVA6 ++ ++//#ifdef JAVA7 ++ public <T> T getObject(String columnLabel, Class<T> type) throws SQLException ++ { ++ throw new UnsupportedOperationException("Not supported yet."); ++ } ++ ++ public <T> T getObject(int ColumnIndex, Class<T> type) throws SQLException ++ { ++ throw new UnsupportedOperationException("Not supported yet."); ++ } ++ ++ ++//#endif JAVA7 + } +--- misc/hsqldb/src/org/hsqldb/jdbc/jdbcConnection.java 2012-02-08 15:14:42.802123563 +0000 ++++ misc/build/hsqldb/src/org/hsqldb/jdbc/jdbcConnection.java 2012-02-08 15:47:35.851635628 +0000 +@@ -48,6 +48,12 @@ + */ + + //#endif JAVA6 ++ ++//#ifdef JAVA7 ++import java.util.concurrent.Executor; ++ ++//#endif JAVA7 ++ + import java.sql.PreparedStatement; + import java.sql.SQLException; + import java.sql.SQLWarning; +@@ -2793,4 +2799,31 @@ + */ + + //#endif JAVA6 ++ ++//#ifdef JAVA7 ++ public int getNetworkTimeout() throws SQLException ++ { ++ throw new UnsupportedOperationException("Not supported yet."); ++ } ++ ++ public void setNetworkTimeout(Executor executor, int millis) throws SQLException ++ { ++ throw new UnsupportedOperationException("Not supported yet."); ++ } ++ ++ public void abort(Executor executor) throws SQLException ++ { ++ throw new UnsupportedOperationException("Not supported yet."); ++ } ++ ++ public String getSchema() throws SQLException ++ { ++ throw new UnsupportedOperationException("Not supported yet."); ++ } ++ ++ public void setSchema(String schema) throws SQLException ++ { ++ throw new UnsupportedOperationException("Not supported yet."); ++ } ++//#endif JAVA7 + } +--- misc/hsqldb/src/org/hsqldb/jdbc/jdbcDatabaseMetaData.java 2012-02-08 15:14:42.802123563 +0000 ++++ misc/build/hsqldb/src/org/hsqldb/jdbc/jdbcDatabaseMetaData.java 2012-02-08 15:47:35.835635654 +0000 +@@ -5693,4 +5693,21 @@ + */ + + //#endif JAVA6 ++ ++ ++//#ifdef JAVA7 ++ public boolean generatedKeyAlwaysReturned() throws SQLException ++ { ++ throw new UnsupportedOperationException("Not supported yet."); ++ } ++ ++ public ResultSet getPseudoColumns(String catalog, String schemaPattern, ++ String tableNamePattern, String columnNamePattern) throws SQLException ++ { ++ throw new UnsupportedOperationException("Not supported yet."); ++ } ++ ++ ++//#endif JAVA7 ++ + } +--- misc/hsqldb/src/org/hsqldb/jdbc/jdbcDataSource.java 2012-02-08 15:14:42.802123563 +0000 ++++ misc/build/hsqldb/src/org/hsqldb/jdbc/jdbcDataSource.java 2012-02-08 15:47:35.836635653 +0000 +@@ -47,6 +47,11 @@ + //#endif JAVA4 + import org.hsqldb.jdbcDriver; + ++//#ifdef JAVA7 ++import java.sql.SQLFeatureNotSupportedException; ++import java.util.logging.Logger; ++//#endif JAVA7 ++ + // boucherb@users 20040411 - doc 1.7.2 - javadoc updates toward 1.7.2 final + + /** +@@ -323,4 +328,15 @@ + */ + + //#endif JAVA6 ++ ++//#ifdef JAVA7 ++ public Logger getParentLogger() throws SQLFeatureNotSupportedException ++ { ++ throw new AbstractMethodError( ++ "org.hsqldb.jdbc.jdbcDataSource.getParentLogger should throw" + ++ " SQLFeatureNotSupportedException, but that is not yet available" + ++ " in Java 5"); ++ } ++ ++//#endif JAVA7 + } +--- misc/hsqldb/src/org/hsqldb/jdbc/jdbcResultSet.java 2012-02-08 15:14:42.802123563 +0000 ++++ misc/build/hsqldb/src/org/hsqldb/jdbc/jdbcResultSet.java 2012-02-08 15:47:35.866635606 +0000 +@@ -5324,4 +5324,19 @@ + */ + + //#endif JAVA6 ++ ++//#ifdef JAVA7 ++ ++ public <T> T getObject(String columnLabel, Class<T> type) throws SQLException ++ { ++ throw new UnsupportedOperationException("Not supported yet."); ++ } ++ ++ public <T> T getObject(int columnNum, Class<T> type) throws SQLException ++ { ++ throw new UnsupportedOperationException("Not supported yet."); ++ } ++ ++//#endif JAVA7 ++ + } +--- misc/hsqldb/src/org/hsqldb/jdbc/jdbcStatement.java 2012-02-08 15:14:42.802123563 +0000 ++++ misc/build/hsqldb/src/org/hsqldb/jdbc/jdbcStatement.java 2012-02-08 15:47:35.872635595 +0000 +@@ -1608,4 +1608,16 @@ + } + */ + //#endif JAVA6 ++ ++//#ifdef JAVA7 ++ public boolean isCloseOnCompletion() throws SQLException ++ { ++ throw new UnsupportedOperationException("Not supported yet."); ++ } ++ ++ public void closeOnCompletion() throws SQLException ++ { ++ throw new UnsupportedOperationException("Not supported yet."); ++ } ++//#endif JAVA7 + } +--- misc/hsqldb/src/org/hsqldb/jdbcDriver.java 2012-02-08 15:14:42.800123566 +0000 ++++ misc/build/hsqldb/src/org/hsqldb/jdbcDriver.java 2012-02-08 15:47:35.826635667 +0000 +@@ -42,6 +42,11 @@ + import org.hsqldb.persist.HsqlDatabaseProperties; + import org.hsqldb.persist.HsqlProperties; + ++//#ifdef JAVA7 ++import java.sql.SQLFeatureNotSupportedException; ++import java.util.logging.Logger; ++//#endif JAVA7 ++ + // fredt@users 20011220 - patch 1.7.0 by fredt + // new version numbering scheme + // fredt@users 20020320 - patch 1.7.0 - JDBC 2 support and error trapping +@@ -321,4 +326,15 @@ + DriverManager.registerDriver(new jdbcDriver()); + } catch (Exception e) {} + } ++ ++//#ifdef JAVA7 ++ public Logger getParentLogger() throws SQLFeatureNotSupportedException ++ { ++ throw new AbstractMethodError( ++ "org.hsqldb.jdbcDriver.getParentLogger should throw" + ++ " SQLFeatureNotSupportedException, but that is not yet available" + ++ " in Java 5"); ++ } ++ ++//#endif JAVA7 + } diff --git a/external/hsqldb/patches/limit_as_table_alias.patch b/external/hsqldb/patches/limit_as_table_alias.patch new file mode 100644 index 0000000000..09f49ccd56 --- /dev/null +++ b/external/hsqldb/patches/limit_as_table_alias.patch @@ -0,0 +1,11 @@ +--- misc/hsqldb/src/org/hsqldb/Token.java 2013-06-13 10:04:28.975934479 +0200 ++++ misc/build/hsqldb/src/org/hsqldb/Token.java 2013-06-13 10:06:09.915931966 +0200 +@@ -819,7 +819,7 @@ + Token.T_EXTRACT, Token.T_FOR, Token.T_FROM, Token.T_GROUP, + Token.T_HAVING, Token.T_IF, Token.T_INTO, Token.T_IFNULL, + Token.T_IS, Token.T_IN, Token.T_INTERSECT, Token.T_JOIN, +- Token.T_INNER, Token.T_LEADING, Token.T_LIKE, Token.T_MAX, ++ Token.T_INNER, Token.T_LEADING, Token.T_LIKE, Token.T_LIMIT, Token.T_MAX, + Token.T_MIN, Token.T_NEXT, Token.T_NULLIF, Token.T_NOT, + Token.T_NVL, Token.T_MINUS, Token.T_ON, Token.T_ORDER, Token.T_OR, + Token.T_OUTER, Token.T_POSITION, Token.T_PRIMARY, Token.T_SELECT, diff --git a/external/hsqldb/patches/multipleResultSets.patch b/external/hsqldb/patches/multipleResultSets.patch new file mode 100644 index 0000000000..56ddb13b44 --- /dev/null +++ b/external/hsqldb/patches/multipleResultSets.patch @@ -0,0 +1,11 @@ +--- misc/hsqldb/src/org/hsqldb/jdbc/jdbcDatabaseMetaData.java 2012-02-08 15:14:42.802123563 +0000 ++++ misc/build/hsqldb/src/org/hsqldb/jdbc/jdbcDatabaseMetaData.java 2012-02-08 15:47:35.835635654 +0000 +@@ -1347,7 +1347,7 @@ + * @exception SQLException if a database access error occurs + */ + public boolean supportsMultipleResultSets() throws SQLException { +- return false; ++ return true; + } + + /** |