#!/bin/sh - # $Id: s_win32,v 1.37 2004/10/15 18:28:21 bostic Exp $ # # Build Windows/32 include files. msgc="/* DO NOT EDIT: automatically built by dist/s_win32. */" msgw="; DO NOT EDIT: automatically built by dist/s_win32." . RELEASE s=/tmp/__db_a$$ t=/tmp/__db_b$$ rm -f $s $t trap 'rm -f $s $t ; exit 1' 1 2 3 13 15 # Build the Win32 automatically generated files. cat < $s /@inttypes_h_decl@/d /@stdint_h_decl@/d s/@stddef_h_decl@/#include / s/@u_int8_decl@/typedef unsigned char u_int8_t;/ s/@int16_decl@/typedef short int16_t;/ s/@u_int16_decl@/typedef unsigned short u_int16_t;/ s/@int32_decl@/typedef int int32_t;/ s/@u_int32_decl@/typedef unsigned int u_int32_t;/ s/@int64_decl@/typedef __int64 int64_t;/ s/@u_int64_decl@/typedef unsigned __int64 u_int64_t;/ s/@db_seq_decl@/typedef int64_t db_seq_t;/ /@u_char_decl@/{ i\\ #ifndef _WINSOCKAPI_ s/@u_char_decl@/typedef unsigned char u_char;/ } s/@u_short_decl@/typedef unsigned short u_short;/ s/@u_int_decl@/typedef unsigned int u_int;/ /@u_long_decl@/{ s/@u_long_decl@/typedef unsigned long u_long;/ a\\ #endif } /@ssize_t_decl@/{ i\\ #ifdef _WIN64\\ typedef int64_t ssize_t;\\ #else\\ typedef int32_t ssize_t;\\ #endif d } s/@uintmax_t_decl@/typedef u_int64_t uintmax_t;/ /@uintptr_t_decl@/{ i\\ #ifdef _WIN64\\ typedef u_int64_t uintptr_t;\\ #else\\ typedef u_int32_t uintptr_t;\\ #endif d } s/@DB_VERSION_MAJOR@/$DB_VERSION_MAJOR/ s/@DB_VERSION_MINOR@/$DB_VERSION_MINOR/ s/@DB_VERSION_PATCH@/$DB_VERSION_PATCH/ s/@DB_VERSION_STRING@/"$DB_VERSION_STRING"/ s/@DB_VERSION_UNIQUE_NAME@// s/@DB_CONST@// s/@DB_PROTO1@/#undef __P/ s/@DB_PROTO2@/#define __P(protos) protos/ ENDOFSEDTEXT (echo "$msgc" && sed -f $s ../dbinc/db.in && cat ../dbinc_auto/ext_prot.in) > $t `egrep '@.*@' $t` && { echo 'Unexpanded autoconf variables found in Windows db.h.' exit 1 } f=../build_win32/db.h cmp $t $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) f=../build_win64/db.h cmp $t $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) cat < $s s/@cxx_have_stdheaders@/#define HAVE_CXX_STDHEADERS 1/ ENDOFSEDTEXT (echo "$msgc" && sed -f $s ../dbinc/db_cxx.in) > $t `egrep '@.*@' $t` && { echo 'Unexpanded autoconf variables found in Windows db_cxx.h.' exit 1 } f=../build_win32/db_cxx.h cmp $t $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) f=../build_win64/db_cxx.h cmp $t $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) cat < $s s/@PATH_SEPARATOR@/\\\\\\\\\/:/ s/@db_int_def@// ENDOFSEDTEXT (echo "$msgc" && sed -f $s ../dbinc/db_int.in) > $t `egrep '@.*@' $t` && { echo 'Unexpanded autoconf variables found in Windows db_int.h.' exit 1 } f=../build_win32/db_int.h cmp $t $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) f=../build_win64/db_int.h cmp $t $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) f=../build_win32/db_config.h (echo "$msgc" && sed "s/__EDIT_DB_VERSION__/$DB_VERSION/" win_config.in) > $t cmp $t $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) f=../build_win64/db_config.h cmp $t $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) f=../build_win32/libdb.rc cat < $s s/%MAJOR%/$DB_VERSION_MAJOR/ s/%MINOR%/$DB_VERSION_MINOR/ s/%PATCH%/$DB_VERSION_PATCH/ ENDOFSEDTEXT sed -f $s ../build_win32/libdbrc.src > $t cmp $t $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) f=../build_win32/libdb.def (echo $msgw && echo && echo EXPORTS; a=1 for i in `sed -e '/^$/d' -e '/^#/d' win_exports.in`; do echo " $i @$a" a=`expr $a + 1` done) > $t cmp $t $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) f=../build_win32/win_db.h i=win_db.in cmp $i $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $i $f && chmod 444 $f) f=../build_win64/win_db.h cmp $i $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $i $f && chmod 444 $f) rm -f $s $t