Files
harbour-core/harbour/contrib/hbpgsql/make_vc.bat
Viktor Szakats c2ae20191d 2008-06-05 02:30 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* hbpgsql/postgres.c
     ! Don't request windows.h.
     + Using hb_parptrGC() for PGconn()
     + PQCONNECT() larger buffer for connect string.
     ! PQCONNECT() not passing trash to PG API if no. of params != 5
     ! PQCONNECT() buffer overflow vulnerability.
     ! PQSETDBLOGIN() password could not be passed to PG API due 
       to typo.
     ! PQMETADATA() now returns empty array instead of NIL in case 
       of failure (so test.prg won't RTE).
     ! PQCREATETRACE(), PQCLOSETRACE(), PQTRACE() now only activated 
       in 'NODLL' (temp name) is defined, since passing 'FILE *' to 
       .dlls results in crash.
     ; TOFIX? added to PQESCAPEBYTEA()
     * Formatting.
     % Cleanup, optimizations.
     ; NOTE: I've tried test.prg and while it runs, it doesn't seem 
             to work properly for some reason.
     ; TOFIX: Use bh_parptrGC() for PGresult, FILE*.

   * hbpgsql/make_vc.bat
     + Now uses the .lib provided in the binary package.
       (This needs the current 8.3.1 version)
2008-06-05 00:45:08 +00:00

66 lines
2.1 KiB
Batchfile

@echo off
rem
rem $Id$
rem
if not "%HB_DIR_PGSQL%" == "" goto DIR_OK
echo ---------------------------------------------------------------
echo IMPORTANT: You'll need PostreSQL package and this envvar
echo to be set to successfully build this library:
echo set HB_DIR_PGSQL=C:\pgsql
echo ---------------------------------------------------------------
goto POST_EXIT
:DIR_OK
if "%HB_INC_PGSQL%" == "" set HB_INC_PGSQL=%HB_DIR_PGSQL%\include
set CFLAGS=-I"%HB_INC_PGSQL%"
set _HB_DLL_NAME=libpq
set _HB_DLL_DIR=%HB_DIR_PGSQL%\lib
rem ---------------------------------------------------------------
call ..\mtpl_vc.bat %1 %2 %3 %4 %5 %6 %7 %8 %9
rem ---------------------------------------------------------------
set _HB_INSTALL_PREFIX=%HB_INSTALL_PREFIX%
if "%_HB_INSTALL_PREFIX%" == "" set _HB_INSTALL_PREFIX=..\..
set _HB_LIB_INSTALL=%HB_LIB_INSTALL%
if "%_HB_LIB_INSTALL%" == "" set _HB_LIB_INSTALL=%_HB_INSTALL_PREFIX%\lib
if "%1" == "clean" goto POST_CLEAN
if "%1" == "Clean" goto POST_CLEAN
if "%1" == "CLEAN" goto POST_CLEAN
if "%1" == "install" goto POST_INSTALL
if "%1" == "Install" goto POST_INSTALL
if "%1" == "INSTALL" goto POST_INSTALL
:POST_BUILD
rem Use supplied .lib file.
if not exist ..\..\lib\%_HB_CC_NAME%\%_HB_DLL_NAME%.lib copy "%_HB_DLL_DIR%\%_HB_DLL_NAME%.lib" ..\..\lib\%_HB_CC_NAME%\%_HB_DLL_NAME%.lib > nul
goto POST_EXIT
:POST_CLEAN
if exist ..\..\lib\%_HB_CC_NAME%\%_HB_DLL_NAME%.lib del ..\..\lib\%_HB_CC_NAME%\%_HB_DLL_NAME%.lib > nul
if exist ..\..\lib\%_HB_CC_NAME%\%_HB_DLL_NAME%.exp del ..\..\lib\%_HB_CC_NAME%\%_HB_DLL_NAME%.exp > nul
if exist %_HB_LIB_INSTALL%\%_HB_DLL_NAME%.lib del %_HB_LIB_INSTALL%\%_HB_DLL_NAME%.lib > nul
goto POST_EXIT
:POST_INSTALL
if exist %_HB_LIB_INSTALL%\%_HB_DLL_NAME%.lib del %_HB_LIB_INSTALL%\%_HB_DLL_NAME%.lib
if exist ..\..\lib\%_HB_CC_NAME%\%_HB_DLL_NAME%.lib copy ..\..\lib\%_HB_CC_NAME%\%_HB_DLL_NAME%.lib %_HB_LIB_INSTALL%
goto POST_EXIT
:POST_EXIT
set CFLAGS=
set _HB_DLL_NAME=
set _HB_DLL_DIR=
set _HB_INSTALL_PREFIX=
set _HB_LIB_INSTALL=