| <?xml version="1.0"?> |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to you under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <!-- ==================================================================== --> |
| <!-- Apache Derby build file --> |
| <!-- ==================================================================== --> |
| |
| <project default="engine" basedir="../.."> |
| |
| <!-- ==================================================================== --> |
| <!-- Set properties --> |
| <!-- ==================================================================== --> |
| |
| <property name="properties.dir" value="tools/ant/properties"/> |
| |
| <!-- User settings --> |
| <property file="${user.home}/ant.properties"/> |
| |
| <!-- Significant dirs --> |
| <property file="${properties.dir}/dirs.properties"/> |
| |
| <!-- Compiler settings --> |
| <property file="${properties.dir}/defaultcompiler.properties"/> |
| <property file="${properties.dir}/${build.compiler}.properties"/> |
| |
| <!-- Parser properties --> |
| <property file="${properties.dir}/parser.properties"/> |
| |
| <!-- Compile-time classpath properties files --> |
| <property file="${properties.dir}/extrapath.properties"/> |
| <property file="${properties.dir}/compilepath.properties"/> |
| |
| <!-- Release and Version info --> |
| <property file="${properties.dir}/release.properties"/> |
| |
| <!-- ============ Begin Targets ============== --> |
| |
| <target name="engine" depends="parser" |
| description="Build Derby engine"> |
| |
| <javac |
| source="${min.version}" |
| target="${min.version}" |
| nowarn="on" |
| debug="${debug}" debuglevel="${debuglevel}" |
| depend="${depend}" |
| deprecation="${deprecation}" |
| optimize="${optimize}" |
| proceed="${proceed}" |
| verbose="${verbose}" |
| srcdir="${derby.engine.src.dir}:${generated.src.engine.dir}" |
| destdir="${out.engine.dir}"> |
| <compilerarg value="-Xlint:unchecked"/> |
| <modulepath> |
| <pathelement location="${out.shared.dir}"/> |
| <pathelement location="${osgi}"/> |
| </modulepath> |
| </javac> |
| |
| <ant dir="${derby.build.src.dir}"/> |
| <ant dir="${derby.locales.dir}"/> |
| |
| <copy todir="${out.engine.dir}/${derby.dir}"> |
| <fileset dir="${derby.engine.dir}"> |
| <include name="modules.properties"/> |
| </fileset> |
| </copy> |
| |
| <copy |
| file="${derby.engine.src.dir}/org/apache/derby/impl/jdbc/metadata.properties" |
| tofile="${out.engine.dir}/org/apache/derby/impl/jdbc/metadata.properties"/> |
| |
| <copy |
| file="${derby.engine.src.dir}/org/apache/derby/impl/sql/catalog/metadata_net.properties" |
| tofile="${out.engine.dir}/org/apache/derby/impl/sql/catalog/metadata_net.properties"/> |
| |
| </target> |
| |
| <target name="parser" > |
| <ant antfile="${src.dir}/build.xml" target="genParser"> |
| <property name="msg" value="Generating SQL parser..."/> |
| <property name="outroot" value="${generated.src.engine.dir}"/> |
| <property name="srcroot" value="org.apache.derby.engine"/> |
| <property name="directory" value="${derby.dir}/impl/sql/compile"/> |
| <property name="rmfiles" value="implparser_rm.files"/> |
| <property name="jjfile" value="sqlgrammar.jj"/> |
| <property name="chkfile" value="SQLParser.java"/> |
| <property name="constantsfile" value="SQLParserConstants"/> |
| </ant> |
| |
| <!-- |
| The following files were generated: |
| |
| CharStream.java |
| ParseException.java |
| SQLParser.java |
| SQLParserConstants.java |
| SQLParserTokenManager.java |
| Token.java |
| TokenMgrError.java |
| |
| 3 of those files are checked into the codeline: |
| |
| CharStream.java |
| ParseException.java |
| Token.java |
| |
| We don't want generated code to clash with the checked-in versions. So |
| we delete the conflicting classes here. |
| --> |
| <delete> |
| <fileset dir="${generated.src.engine.dir}/${derby.dir}/impl/sql/compile"> |
| <include name="CharStream.java"/> |
| <include name="ParseException.java"/> |
| <include name="Token.java"/> |
| </fileset> |
| </delete> |
| |
| <!-- Reduce the visibility of these files from public to package. --> |
| <replaceregexp match="^public (class|interface)" replace="\1" flags="m"> |
| <fileset dir="${generated.src.engine.dir}/${derby.dir}/impl/sql/compile"> |
| <include name="SQLParser.java"/> |
| <include name="SQLParserConstants.java"/> |
| <include name="SQLParserTokenManager.java"/> |
| <include name="TokenMgrError.java"/> |
| </fileset> |
| </replaceregexp> |
| |
| </target> |
| |
| |
| <!-- ============= End Targets ============== --> |
| |
| <!-- ============= End Project ============== --> |
| |
| </project> |
| |