#
# Copyright (c) 2001, PostgreSQL Global Development Group
#
-# $Header: /cvsroot/pgsql/src/interfaces/jdbc/Attic/Makefile,v 1.36 2002/10/20 02:55:50 barry Exp $
+# $Header: /cvsroot/pgsql/src/interfaces/jdbc/Attic/Makefile,v 1.37 2002/12/11 12:27:47 davec Exp $
#
#-------------------------------------------------------------------------
top_builddir = ../../..
include $(top_builddir)/src/Makefile.global
-majorversion := $(shell echo $(VERSION) | sed 's/^\([0-9][0-9]*\)\..*$$/\1/')
-minorversion := $(shell echo $(VERSION) | sed 's/^[0-9][0-9]*\.\([0-9][0-9]*\).*$$/\1/')
+majorversion:= $(shell echo $(VERSION) | sed 's/^\([0-9][0-9]*\)\..*$$/\1/')
+minorversion:= $(shell echo $(VERSION) | sed 's/^[0-9][0-9]*\.\([0-9][0-9]*\).*$$/\1/')
-properties := -Dmajor=$(majorversion) -Dminor=$(minorversion) \
- -Dfullversion=$(VERSION) \
- -Ddef_pgport=$(DEF_PGPORT) \
- -Denable_debug=$(enable_debug)
+build.properties: $(top_builddir)/src/Makefile.global
+ echo "# This file was created by 'make build.properties'." > build.properties
+ echo major=$(majorversion) >> build.properties
+ echo minor=$(minorversion) >> build.properties
+ echo fullversion=$(VERSION) >> build.properties
+ echo def_pgport=$(DEF_PGPORT) >> build.properties
+ echo enable_debug=$(enable_debug) >> build.properties
-all:
- $(ANT) -buildfile $(srcdir)/build.xml all \
- $(properties)
+all: build.properties
+ $(ANT) -buildfile $(srcdir)/build.xml all
-install: installdirs
+install: installdirs build.properties
$(ANT) -buildfile $(srcdir)/build.xml install \
- -Dinstall.directory=$(javadir) $(properties)
+ -Dinstall.directory=$(javadir)
installdirs:
$(mkinstalldirs) $(javadir)
-Dinstall.directory=$(javadir)
clean distclean maintainer-clean:
- $(ANT) -buildfile $(srcdir)/build.xml clean
+ $(ANT) -buildfile $(srcdir)/build.xml clean_all
-check: all
- $(ANT) -buildfile $(srcdir)/build.xml test $(properties)
+check: build.properties
+ $(ANT) -buildfile $(srcdir)/build.xml test
That jar file will contain the driver for _your_ version of the JDK.
+If you would like to use ANT directly, first invoke 'make build.properties'
+after running the configure script with the java option. This will create a
+needed Java properties file from the configured information.
+
REMEMBER: Once you have compiled the driver, it will work on ALL platforms
that support that version of the API. You don't need to build it for each
platform.
This file now requires Ant 1.4.1. 2002-04-18
- $Header: /cvsroot/pgsql/src/interfaces/jdbc/Attic/build.xml,v 1.30 2002/10/20 00:10:55 barry Exp $
+ $Header: /cvsroot/pgsql/src/interfaces/jdbc/Attic/build.xml,v 1.31 2002/12/11 12:27:47 davec Exp $
-->
<property name="package" value="org/postgresql" />
<property name="debug" value="on" />
+ <property file="build.properties"/>
+
<!--
This is a simpler method than utils.CheckVersion
It defaults to jdbc1, but builds jdbc2 if the java.lang.Byte class is
</javac>
</target>
+ <target name="check_driver">
+ <uptodate targetfile="${package}/Driver.java" property="driver.uptodate">
+ <srcfiles dir=".">
+ <include name="${package}/Driver.java.in"/>
+ <include name="build.properties"/>
+ </srcfiles>
+ </uptodate>
+ </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">
+ <target name="driver" depends="prepare,check_versions,check_driver"
+ unless="driver.uptodate">
<!-- determine the edition text -->
<condition property="edition" value="JDBC1">
<equals arg1="${jdbc1}" arg2="true"/>
<fail unless="major" message="'major' undefined. Please follow the directions in README."/>
<fail unless="minor" message="'minor' undefined. Please follow the directions in README."/>
+ <fail unless="fullversion" message="'fullversion' undefined. Please follow the directions in README."/>
+ <fail unless="def_pgport" message="'def_pgport' undefined. Please follow the directions in README."/>
+ <fail unless="enable_debug" message="'enable_debug' undefined. Please follow the directions in README."/>
<!-- Put a check for the current version here -->
<delete quiet="true" file="${package}/Driver.java" />
</target>
+ <target name="clean_all" depends="clean">
+ <delete quiet="true" file="build.properties" />
+ </target>
<!-- This compiles and executes the JUnit tests -->