1
0
mirror of https://github.com/postgres/postgres.git synced 2025-11-24 00:23:06 +03:00

Major update part I involving delayed patches, reworked Makefile, and how

the versioning works. There's also a new utils directory used by Makefile
This commit is contained in:
Peter Mount
2000-10-12 08:55:28 +00:00
parent f20d2a87fb
commit f41dcbe4d8
16 changed files with 1405 additions and 279 deletions

View File

@@ -0,0 +1,68 @@
package utils;
/**
* This little app checks to see what version of JVM is being used.
* It does this by checking first the java.vm.version property, and
* if that fails, it looks for certain classes that should be present.
*/
public class CheckVersion
{
/**
* Check for the existence of a class by attempting to load it
*/
public static boolean checkClass(String c) {
try {
Class.forName(c);
} catch(Exception e) {
return false;
}
return true;
}
/**
* This first checks java.vm.version for 1.1, 1.2 or 1.3.
*
* It writes jdbc1 to stdout for the 1.1.x VM.
*
* For 1.2 or 1.3, it checks for the existence of the javax.sql.DataSource
* interface, and if found writes enterprise to stdout. If the interface
* is not found, it writes jdbc2 to stdout.
*
* PS: It also looks for the existence of java.lang.Byte which appeared in
* JDK1.1.0 incase java.vm.version is not heeded by some JVM's.
*
* If it can't work it out, it writes huho to stdout.
*
* The make file uses the written results to determine which rule to run.
*
* Bugs: This needs thorough testing.
*/
public static void main(String args[])
{
String vmversion = System.getProperty("java.vm.version");
// We are running a 1.1 JVM
if(vmversion.startsWith("1.1")) {
System.out.println("jdbc1");
System.exit(0);
}
// We are running a 1.2 or 1.3 JVM
if(vmversion.startsWith("1.2") ||
vmversion.startsWith("1.3") ||
checkClass("java.lang.Byte")
) {
// Check to see if we have the standard extensions. If so, then
// we want the enterprise edition, otherwise the jdbc2 driver.
if(checkClass("javax.sql.DataSource"))
System.out.println("enterprise");
else
System.out.println("jdbc2");
System.exit(0);
}
System.out.println("huho");
System.exit(0);
}
}

View File

@@ -0,0 +1,47 @@
#!/bin/sh
#
# $Id: buildDriver,v 1.1 2000/10/12 08:55:28 peter Exp $
#
# This script generates the org/postgresql/Driver.java file from the template
# org/postgresql/Driver.java.in
#
# We do this because we need to include the version number from Makefile.global
# and some other goodies.
#
# This used to be in Makefile, but as it's now done three times, it's better
# to have it as a separate script.
#
# If you have any problems, please let us know ;-)
#
# Syntax: buildDriver version class
#
# Where:
# version The version string from Makefile.global
# class The class implementing java.sql.Connection
# edition The driver edition being built
# source The file to build. We assume that ${source}.in exists
#
VERSION=$1
CLASS=$2
EDITION=$3
SOURCE=$4
#---------------------------------------------------------------------------
# Extract the version. This will work until version x.9 (and assuming we don't
# have 7.10 etc). We only handle 1 digit for MINORVERSION to handle things like
# 7.1devel etc
#
MAJORVERSION=`echo $VERSION | cut -f1 -d'.'`
MINORVERSION=`echo $VERSION | cut -f2 -d'.' | cut -c1`
#---------------------------------------------------------------------------
# Now finally build the driver
sed \
-e "s/%JDBCCONNECTCLASS%/$CLASS/g" \
-e "s/%VERSION%/$VERSION $EDITION/g" \
-e "s/%MAJORVERSION%/$MAJORVERSION/g" \
-e "s/%MINORVERSION%/$MINORVERSION/g" \
<${SOURCE}.in \
>$SOURCE
#---------------------------------------------------------------------------

View File

@@ -0,0 +1,23 @@
#!/bin/perl
while(<>) {
chomp();
s/\t+/ /g;
if(substr($_,0,3) eq ' - ') {
print "<ul>" if !$inlist;
$inlist=1;
print "<li>".substr($_,3)."\n";
} else {
if($_ eq "" || $_ eq " ") {
print "</ul>" if $inlist;
$inlist=0;
print "<br>\n";
} elsif(substr($_,0,1) eq " ") {
print $_;
} else {
print "</ul>" if $inlist;
$inlist=0;
print "<h4>".$_."</h4>\n";
}
}
}