At this moment, --enable-debug adds debugging information to most of the
parts o f postgresql. The jdbc drivers are never compiled with debugging support. This p atch make sure that debugging information is added to the jdbc jar when the --en able-debug is added. This was usefull for me for debugging some java jdbc poolin g objects but this might perhaps be usefull for other people too? Dries Verachtert
This commit is contained in:
parent
af41101a40
commit
0416641baa
4 changed files with 247 additions and 239 deletions
|
@ -259,7 +259,7 @@ AC_SUBST(enable_rpath)
|
|||
#
|
||||
PGAC_ARG_BOOL(enable, debug, no,
|
||||
[ --enable-debug build with debugging symbols (-g)])
|
||||
|
||||
AC_SUBST(enable_debug)
|
||||
|
||||
#
|
||||
# C compiler
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# -*-makefile-*-
|
||||
# $Header: /cvsroot/pgsql/src/Makefile.global.in,v 1.141 2001/12/20 21:23:05 momjian Exp $
|
||||
# $Header: /cvsroot/pgsql/src/Makefile.global.in,v 1.142 2002/03/05 17:55:22 momjian Exp $
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# All PostgreSQL makefiles include this file and use the variables it sets,
|
||||
|
@ -132,6 +132,7 @@ MULTIBYTE = @MULTIBYTE@
|
|||
enable_shared = @enable_shared@
|
||||
enable_rpath = @enable_rpath@
|
||||
enable_nls = @enable_nls@
|
||||
enable_debug = @enable_debug@
|
||||
|
||||
python_version = @python_version@
|
||||
python_includespec = @python_includespec@
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
#
|
||||
# Copyright (c) 2001, PostgreSQL Global Development Group
|
||||
#
|
||||
# $Header: /cvsroot/pgsql/src/interfaces/jdbc/Attic/Makefile,v 1.33 2001/07/06 23:07:20 petere Exp $
|
||||
# $Header: /cvsroot/pgsql/src/interfaces/jdbc/Attic/Makefile,v 1.34 2002/03/05 17:55:23 momjian Exp $
|
||||
#
|
||||
#-------------------------------------------------------------------------
|
||||
|
||||
|
@ -17,7 +17,8 @@ minorversion := $(shell echo $(VERSION) | sed 's/^[0-9][0-9]*\.\([0-9][0-9]*\).*
|
|||
|
||||
properties := -Dmajor=$(majorversion) -Dminor=$(minorversion) \
|
||||
-Dfullversion=$(VERSION) \
|
||||
-Ddef_pgport=$(DEF_PGPORT)
|
||||
-Ddef_pgport=$(DEF_PGPORT) \
|
||||
-Denable_debug=$(enable_debug)
|
||||
|
||||
all:
|
||||
$(ANT) -buildfile $(srcdir)/build.xml all \
|
||||
|
|
|
@ -1,235 +1,241 @@
|
|||
<?xml version="1.0"?>
|
||||
<!--
|
||||
|
||||
build file to allow ant (http://jakarta.apache.org/ant/) to be used
|
||||
to build the PostgreSQL JDBC Driver
|
||||
|
||||
$Header: /cvsroot/pgsql/src/interfaces/jdbc/Attic/build.xml,v 1.20 2002/02/24 16:12:51 davec Exp $
|
||||
|
||||
-->
|
||||
|
||||
<!DOCTYPE project [
|
||||
<!ENTITY jarfiles "postgresql.jar,postgresql-examples.jar">
|
||||
]>
|
||||
|
||||
<project name="postgresqlJDBC" default="all" basedir=".">
|
||||
|
||||
<!-- set global properties for this build -->
|
||||
<property name="srcdir" value="." />
|
||||
<property name="jardir" value="jars" />
|
||||
<property name="builddir" value="build" />
|
||||
<property name="package" value="org/postgresql" />
|
||||
<property name="debug" value="yes" />
|
||||
|
||||
<!--
|
||||
This is a simpler method than utils.CheckVersion
|
||||
It defaults to jdbc1, but builds jdbc2 if the java.lang.Byte class is
|
||||
in the CLASSPATH (ie JDK1.2 or later), and then enterprise if the
|
||||
javax.sql.DataSource class is present.
|
||||
|
||||
Important: This must have the following order: jdbc1, jdbc2, enterprise
|
||||
-->
|
||||
<target name="check_versions">
|
||||
<condition property="jdbc1">
|
||||
<equals arg1="${ant.java.version}" arg2="1.1"/>
|
||||
</condition>
|
||||
<condition property="jdbc2">
|
||||
<or>
|
||||
<equals arg1="${ant.java.version}" arg2="1.2"/>
|
||||
<equals arg1="${ant.java.version}" arg2="1.3"/>
|
||||
<equals arg1="${ant.java.version}" arg2="1.4"/>
|
||||
</or>
|
||||
</condition>
|
||||
<condition property="datasource">
|
||||
<and>
|
||||
<or>
|
||||
<equals arg1="${ant.java.version}" arg2="1.2"/>
|
||||
<equals arg1="${ant.java.version}" arg2="1.3"/>
|
||||
</or>
|
||||
<available classname="javax.sql.DataSource"/>
|
||||
</and>
|
||||
</condition>
|
||||
<available property="junit" classname="junit.framework.Test" />
|
||||
</target>
|
||||
|
||||
|
||||
<!-- default target -->
|
||||
<target name="all">
|
||||
<antcall target="jar" />
|
||||
</target>
|
||||
|
||||
|
||||
<!-- create the jar file -->
|
||||
<target name="jar" depends="compile,examples">
|
||||
<jar jarfile="${jardir}/postgresql.jar" whenempty="fail">
|
||||
<fileset dir="${builddir}">
|
||||
<include name="${package}/**/*.class" />
|
||||
<exclude name="${package}/test/**" />
|
||||
</fileset>
|
||||
|
||||
<fileset dir="${srcdir}">
|
||||
<include name="${package}/*.properties" />
|
||||
</fileset>
|
||||
</jar>
|
||||
|
||||
<jar jarfile="${jardir}/postgresql-examples.jar" whenempty="fail">
|
||||
<fileset dir="${builddir}">
|
||||
<include name="example/**/*.class" />
|
||||
</fileset>
|
||||
|
||||
<fileset dir="${srcdir}">
|
||||
<include name="example/*.properties" />
|
||||
</fileset>
|
||||
</jar>
|
||||
</target>
|
||||
|
||||
|
||||
<!-- This is the core of the driver. It is common for all three versions. -->
|
||||
<target name="compile" depends="prepare,check_versions,driver">
|
||||
<javac srcdir="${srcdir}" destdir="${builddir}" debug="${debug}">
|
||||
<include name="${package}/**" />
|
||||
|
||||
<exclude name="${package}/jdbc1/**" unless="jdbc1"/>
|
||||
<exclude name="${package}/jdbc2/**" unless="jdbc2"/>
|
||||
|
||||
<exclude name="${package}/largeobject/PGblob.java" unless="jdbc2" />
|
||||
<exclude name="${package}/largeobject/PGclob.java" unless="jdbc2" />
|
||||
|
||||
<exclude name="${package}/PostgresqlDataSource.java" unless="datasource" />
|
||||
<exclude name="${package}/xa/**" unless="datasource" />
|
||||
|
||||
<exclude name="${package}/test/**" unless="junit" />
|
||||
</javac>
|
||||
</target>
|
||||
|
||||
|
||||
<!--
|
||||
This generates Driver.java from Driver.java.in
|
||||
It's required for importing the driver version properties
|
||||
-->
|
||||
<target name="driver" depends="prepare,check_versions">
|
||||
<!-- determine the edition text -->
|
||||
<property name="edition" value="JDBC1" />
|
||||
<condition property="edition" value="JDBC2">
|
||||
<or>
|
||||
<equals arg1="${jdbc2}" arg2="true"/>
|
||||
<equals arg1="${jdbc3}" arg2="true"/> <!-- fake it for now -->
|
||||
|
||||
</or>
|
||||
</condition>
|
||||
|
||||
<condition property="edition" value="JDBC2 Enterprise">
|
||||
<and>
|
||||
<available classname="javax.sql.DataSource" />
|
||||
<equals arg1="${jdbc2}" arg2="true"/>
|
||||
</and>
|
||||
</condition>
|
||||
|
||||
<!-- determine the connection class -->
|
||||
<property name="connectclass" value="org.postgresql.jdbc1.Connection" />
|
||||
<available property="connectclass" value="org.postgresql.jdbc2.Connection" classname="java.lang.ThreadLocal" />
|
||||
|
||||
<!-- Some defaults -->
|
||||
<filter token="MAJORVERSION" value="${major}" />
|
||||
<filter token="MINORVERSION" value="${minor}" />
|
||||
<filter token="VERSION" value="PostgreSQL ${fullversion} ${edition}" />
|
||||
<filter token="JDBCCONNECTCLASS" value="${connectclass}" />
|
||||
<filter token="DEF_PGPORT" value="${def_pgport}" />
|
||||
|
||||
<!-- Put a check for the current version here -->
|
||||
|
||||
<!-- now copy and filter the file -->
|
||||
<copy file="${package}/Driver.java.in"
|
||||
tofile="${package}/Driver.java"
|
||||
filtering="yes" />
|
||||
|
||||
<echo message="Configured build for the ${edition} edition driver" />
|
||||
</target>
|
||||
|
||||
|
||||
<!-- Prepares the build directory -->
|
||||
<target name="prepare">
|
||||
<mkdir dir="${builddir}" />
|
||||
<mkdir dir="${jardir}" />
|
||||
</target>
|
||||
|
||||
|
||||
<!-- This builds the examples -->
|
||||
<target name="examples" depends="compile">
|
||||
<javac srcdir="${srcdir}" destdir="${builddir}">
|
||||
<include name="example/**" />
|
||||
<exclude name="example/corba/**"/>
|
||||
<exclude name="example/blobtest.java" unless="jdk1.2+"/>
|
||||
</javac>
|
||||
</target>
|
||||
|
||||
|
||||
<!-- Builds the corba example -->
|
||||
<target name="corba" if="jdk1.2+">
|
||||
<exec dir="${srcdir}/example/corba" executable="idl2java">
|
||||
<arg value="stock.idl" />
|
||||
</exec>
|
||||
|
||||
<javac srcdir="${srcdir}" destdir="${builddir}">
|
||||
<include name="example/corba/**" />
|
||||
</javac>
|
||||
</target>
|
||||
|
||||
|
||||
|
||||
<!-- Install the jar files -->
|
||||
<target name="install" depends="all" if="install.directory">
|
||||
<copy todir="${install.directory}" overwrite="true">
|
||||
<fileset dir="${jardir}" includes="&jarfiles;" />
|
||||
</copy>
|
||||
</target>
|
||||
|
||||
|
||||
<!-- Uninstall the jar file -->
|
||||
<target name="uninstall" if="install.directory">
|
||||
<delete>
|
||||
<fileset dir="${install.directory}" includes="&jarfiles;" />
|
||||
</delete>
|
||||
</target>
|
||||
|
||||
|
||||
|
||||
<!-- This target removes any class files from the build directory -->
|
||||
<target name="clean">
|
||||
<delete quiet="true" dir="${builddir}" />
|
||||
<delete quiet="true" dir="${jardir}" />
|
||||
<delete quiet="true" file="${package}/Driver.java" />
|
||||
</target>
|
||||
|
||||
|
||||
|
||||
<!-- This compiles and executes the JUnit tests -->
|
||||
|
||||
<!-- defaults for the tests - override these if required -->
|
||||
<property name="database" value="jdbc:postgresql:test" />
|
||||
<property name="username" value="test" />
|
||||
<!-- Password must be something. Doesn't matter if trust is used! -->
|
||||
<property name="password" value="password" />
|
||||
<!-- junit.ui is one of textui, awtui, or swingui -->
|
||||
<property name="junit.ui" value="textui" />
|
||||
|
||||
|
||||
<target name="test" depends="jar" if="junit">
|
||||
<javac srcdir="${srcdir}" destdir="${builddir}">
|
||||
<include name="${package}/test/jdbc2/**" if="jdk1.2+" />
|
||||
<include name="${package}/test/java2ee/**" if="jdk1.2e+" />
|
||||
</javac>
|
||||
|
||||
<java fork="yes" classname="junit.${junit.ui}.TestRunner" taskname="junit" failonerror="true">
|
||||
<arg value="org.postgresql.test.JDBC2Tests" />
|
||||
<sysproperty key="database" value="${database}" />
|
||||
<sysproperty key="username" value="${username}" />
|
||||
<sysproperty key="password" value="${password}" />
|
||||
<classpath>
|
||||
<pathelement location="${builddir}" />
|
||||
<pathelement path="${java.class.path}" />
|
||||
</classpath>
|
||||
</java>
|
||||
</target>
|
||||
|
||||
</project>
|
||||
<?xml version="1.0"?>
|
||||
<!--
|
||||
|
||||
build file to allow ant (http://jakarta.apache.org/ant/) to be used
|
||||
to build the PostgreSQL JDBC Driver
|
||||
|
||||
$Header: /cvsroot/pgsql/src/interfaces/jdbc/Attic/build.xml,v 1.21 2002/03/05 17:55:23 momjian Exp $
|
||||
|
||||
-->
|
||||
|
||||
<!DOCTYPE project [
|
||||
<!ENTITY jarfiles "postgresql.jar,postgresql-examples.jar">
|
||||
]>
|
||||
|
||||
<project name="postgresqlJDBC" default="all" basedir=".">
|
||||
|
||||
<!-- set global properties for this build -->
|
||||
<property name="srcdir" value="." />
|
||||
<property name="jardir" value="jars" />
|
||||
<property name="builddir" value="build" />
|
||||
<property name="package" value="org/postgresql" />
|
||||
<property name="debug" value="off" />
|
||||
|
||||
<!--
|
||||
This is a simpler method than utils.CheckVersion
|
||||
It defaults to jdbc1, but builds jdbc2 if the java.lang.Byte class is
|
||||
in the CLASSPATH (ie JDK1.2 or later), and then enterprise if the
|
||||
javax.sql.DataSource class is present.
|
||||
|
||||
Important: This must have the following order: jdbc1, jdbc2, enterprise
|
||||
-->
|
||||
<target name="check_versions">
|
||||
<condition property="jdbc1">
|
||||
<equals arg1="${ant.java.version}" arg2="1.1"/>
|
||||
</condition>
|
||||
<condition property="jdbc2">
|
||||
<or>
|
||||
<equals arg1="${ant.java.version}" arg2="1.2"/>
|
||||
<equals arg1="${ant.java.version}" arg2="1.3"/>
|
||||
<equals arg1="${ant.java.version}" arg2="1.4"/>
|
||||
</or>
|
||||
</condition>
|
||||
<condition property="datasource">
|
||||
<and>
|
||||
<or>
|
||||
<equals arg1="${ant.java.version}" arg2="1.2"/>
|
||||
<equals arg1="${ant.java.version}" arg2="1.3"/>
|
||||
</or>
|
||||
<available classname="javax.sql.DataSource"/>
|
||||
</and>
|
||||
</condition>
|
||||
<available property="junit" classname="junit.framework.Test" />
|
||||
</target>
|
||||
|
||||
|
||||
<!-- default target -->
|
||||
<target name="all">
|
||||
<antcall target="jar" />
|
||||
</target>
|
||||
|
||||
|
||||
<!-- create the jar file -->
|
||||
<target name="jar" depends="compile,examples">
|
||||
<jar jarfile="${jardir}/postgresql.jar" whenempty="fail">
|
||||
<fileset dir="${builddir}">
|
||||
<include name="${package}/**/*.class" />
|
||||
<exclude name="${package}/test/**" />
|
||||
</fileset>
|
||||
|
||||
<fileset dir="${srcdir}">
|
||||
<include name="${package}/*.properties" />
|
||||
</fileset>
|
||||
</jar>
|
||||
|
||||
<jar jarfile="${jardir}/postgresql-examples.jar" whenempty="fail">
|
||||
<fileset dir="${builddir}">
|
||||
<include name="example/**/*.class" />
|
||||
</fileset>
|
||||
|
||||
<fileset dir="${srcdir}">
|
||||
<include name="example/*.properties" />
|
||||
</fileset>
|
||||
</jar>
|
||||
</target>
|
||||
|
||||
|
||||
<!-- This is the core of the driver. It is common for all three versions. -->
|
||||
<target name="compile" depends="prepare,check_versions,driver">
|
||||
<javac srcdir="${srcdir}" destdir="${builddir}" debug="${debug}">
|
||||
<include name="${package}/**" />
|
||||
|
||||
<exclude name="${package}/jdbc1/**" unless="jdbc1"/>
|
||||
<exclude name="${package}/jdbc2/**" unless="jdbc2"/>
|
||||
|
||||
<exclude name="${package}/largeobject/PGblob.java" unless="jdbc2" />
|
||||
<exclude name="${package}/largeobject/PGclob.java" unless="jdbc2" />
|
||||
|
||||
<exclude name="${package}/PostgresqlDataSource.java" unless="datasource" />
|
||||
<exclude name="${package}/xa/**" unless="datasource" />
|
||||
|
||||
<exclude name="${package}/test/**" unless="junit" />
|
||||
</javac>
|
||||
</target>
|
||||
|
||||
|
||||
<!--
|
||||
This generates Driver.java from Driver.java.in
|
||||
It's required for importing the driver version properties
|
||||
-->
|
||||
<target name="driver" depends="prepare,check_versions">
|
||||
<!-- determine the edition text -->
|
||||
<property name="edition" value="JDBC1" />
|
||||
<condition property="edition" value="JDBC2">
|
||||
<or>
|
||||
<equals arg1="${jdbc2}" arg2="true"/>
|
||||
<equals arg1="${jdbc3}" arg2="true"/> <!-- fake it for now -->
|
||||
|
||||
</or>
|
||||
</condition>
|
||||
|
||||
<condition property="edition" value="JDBC2 Enterprise">
|
||||
<and>
|
||||
<available classname="javax.sql.DataSource" />
|
||||
<equals arg1="${jdbc2}" arg2="true"/>
|
||||
</and>
|
||||
</condition>
|
||||
|
||||
<!-- determine the connection class -->
|
||||
<property name="connectclass" value="org.postgresql.jdbc1.Connection" />
|
||||
<available property="connectclass" value="org.postgresql.jdbc2.Connection" classname="java.lang.ThreadLocal" />
|
||||
|
||||
<!-- Some defaults -->
|
||||
<filter token="MAJORVERSION" value="${major}" />
|
||||
<filter token="MINORVERSION" value="${minor}" />
|
||||
<filter token="VERSION" value="PostgreSQL ${fullversion} ${edition}" />
|
||||
<filter token="JDBCCONNECTCLASS" value="${connectclass}" />
|
||||
<filter token="DEF_PGPORT" value="${def_pgport}" />
|
||||
|
||||
<!-- Put a check for the current version here -->
|
||||
|
||||
<!-- now copy and filter the file -->
|
||||
<copy file="${package}/Driver.java.in"
|
||||
tofile="${package}/Driver.java"
|
||||
filtering="yes" />
|
||||
|
||||
<echo message="Configured build for the ${edition} edition driver" />
|
||||
</target>
|
||||
|
||||
|
||||
<!-- Prepares the build directory -->
|
||||
<target name="prepare">
|
||||
<!-- use the enable_debug option from configure -->
|
||||
<condition property="debug" value="on">
|
||||
<and>
|
||||
<equals arg1="${enable_debug}" arg2="yes" />
|
||||
</and>
|
||||
</condition>
|
||||
<mkdir dir="${builddir}" />
|
||||
<mkdir dir="${jardir}" />
|
||||
</target>
|
||||
|
||||
|
||||
<!-- This builds the examples -->
|
||||
<target name="examples" depends="compile">
|
||||
<javac srcdir="${srcdir}" destdir="${builddir}" debug="${debug}">
|
||||
<include name="example/**" />
|
||||
<exclude name="example/corba/**"/>
|
||||
<exclude name="example/blobtest.java" unless="jdk1.2+"/>
|
||||
</javac>
|
||||
</target>
|
||||
|
||||
|
||||
<!-- Builds the corba example -->
|
||||
<target name="corba" if="jdk1.2+">
|
||||
<exec dir="${srcdir}/example/corba" executable="idl2java">
|
||||
<arg value="stock.idl" />
|
||||
</exec>
|
||||
|
||||
<javac srcdir="${srcdir}" destdir="${builddir}" debug="${debug}">
|
||||
<include name="example/corba/**" />
|
||||
</javac>
|
||||
</target>
|
||||
|
||||
|
||||
|
||||
<!-- Install the jar files -->
|
||||
<target name="install" depends="all" if="install.directory">
|
||||
<copy todir="${install.directory}" overwrite="true">
|
||||
<fileset dir="${jardir}" includes="&jarfiles;" />
|
||||
</copy>
|
||||
</target>
|
||||
|
||||
|
||||
<!-- Uninstall the jar file -->
|
||||
<target name="uninstall" if="install.directory">
|
||||
<delete>
|
||||
<fileset dir="${install.directory}" includes="&jarfiles;" />
|
||||
</delete>
|
||||
</target>
|
||||
|
||||
|
||||
|
||||
<!-- This target removes any class files from the build directory -->
|
||||
<target name="clean">
|
||||
<delete quiet="true" dir="${builddir}" />
|
||||
<delete quiet="true" dir="${jardir}" />
|
||||
<delete quiet="true" file="${package}/Driver.java" />
|
||||
</target>
|
||||
|
||||
|
||||
|
||||
<!-- This compiles and executes the JUnit tests -->
|
||||
|
||||
<!-- defaults for the tests - override these if required -->
|
||||
<property name="database" value="jdbc:postgresql:test" />
|
||||
<property name="username" value="test" />
|
||||
<!-- Password must be something. Doesn't matter if trust is used! -->
|
||||
<property name="password" value="password" />
|
||||
<!-- junit.ui is one of textui, awtui, or swingui -->
|
||||
<property name="junit.ui" value="textui" />
|
||||
|
||||
|
||||
<target name="test" depends="jar" if="junit">
|
||||
<javac srcdir="${srcdir}" destdir="${builddir}" debug="${debug}">
|
||||
<include name="${package}/test/jdbc2/**" if="jdk1.2+" />
|
||||
<include name="${package}/test/java2ee/**" if="jdk1.2e+" />
|
||||
</javac>
|
||||
|
||||
<java fork="yes" classname="junit.${junit.ui}.TestRunner" taskname="junit" failonerror="true">
|
||||
<arg value="org.postgresql.test.JDBC2Tests" />
|
||||
<sysproperty key="database" value="${database}" />
|
||||
<sysproperty key="username" value="${username}" />
|
||||
<sysproperty key="password" value="${password}" />
|
||||
<classpath>
|
||||
<pathelement location="${builddir}" />
|
||||
<pathelement path="${java.class.path}" />
|
||||
</classpath>
|
||||
</java>
|
||||
</target>
|
||||
|
||||
</project>
|
||||
|
|
Loading…
Reference in a new issue