From 54df2afaa61c6a03cbb4a33c9b90fa572b6d07b8 Mon Sep 17 00:00:00 2001 From: Jesse Morgan Date: Sat, 17 Dec 2016 21:28:53 -0800 Subject: Berkeley DB 4.8 with rust build script for linux. --- db-4.8.30/dist/s_java_swig | 73 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100755 db-4.8.30/dist/s_java_swig (limited to 'db-4.8.30/dist/s_java_swig') diff --git a/db-4.8.30/dist/s_java_swig b/db-4.8.30/dist/s_java_swig new file mode 100755 index 0000000..686c521 --- /dev/null +++ b/db-4.8.30/dist/s_java_swig @@ -0,0 +1,73 @@ +#!/bin/sh - +# $Id$ +# +# Run SWIG to generate the Java APIs + +t=/tmp/__db_a +trap 'rm -f $t ; exit 0' 0 +trap 'rm -f $t ; exit 1' 1 2 3 13 15 + +SWIG=swig +SWIG_DIR=../libdb_java +SWIG_FILE=$SWIG_DIR/db.i +PACKAGE="com.sleepycat.db.internal" + +die() { + echo "$@" >&2 + exit 1 +} + +[ -f $SWIG_FILE ] || die "Must be run from the dist directory" + +for api in java ; do + echo "Building $api API" + + swig_args="" + case $api in + java) + swig_args="-nodefaultctor -nodefaultdtor -package $PACKAGE $args" + ;; + esac + + $SWIG -Wall -$api $swig_args -I$SWIG_DIR \ + -o ../libdb_$api/db_${api}_wrap.c $SWIG_FILE || exit $? +done + +# Skip Java sources if run with "-n" +if [ "x$1" = "x-n" ] ; then + rm -f $SWIG_DIR/*.java + exit 0 +fi + +# Fixups for Java +JAVA_SRCTOP=../java/src +JAVA_PKGDIR=com/sleepycat/db/internal +JAVA_SRCDIR=$JAVA_SRCTOP/$JAVA_PKGDIR + +# SWIG 1.3.18 puts the Java files in the same directory as the native code. +cd $SWIG_DIR +[ -f Db.java ] || exit 1 + +for f in *.java ; do + case $f in + SWIGTYPE*) + die "Interface contains unresolved types: $f" + esac + rm -f $JAVA_SRCDIR/$f + perl -p $SWIG_DIR/java-post.pl < $f > $JAVA_SRCDIR/$f || exit $? + rm -f $f +done + +# db_config.h must be the first #include, move it to the top of the file. +( + echo '#include "db_config.h"' + sed '/#include "db_config.h"/d' < db_java_wrap.c +) > $t && cp $t db_java_wrap.c + +# The following might become redundant with newer swig versions. +# builds usually already define _CRT_SECURE_NO_DEPRECATE +( + sed -e '/# define _CRT_SECURE_NO_DEPRECATE/i\ +# undef _CRT_SECURE_NO_DEPRECATE' < db_java_wrap.c +) > $t && cp $t db_java_wrap.c + -- cgit v1.2.3