From 2c6c6cbe662e10207f1a2704e908c60003065bb6 Mon Sep 17 00:00:00 2001 From: Viktor Szakats Date: Wed, 2 Jul 2008 10:47:31 +0000 Subject: [PATCH] 2008-07-02 12:43 UTC+0200 Viktor Szakats (harbour.01 syenar hu) * contrib/hbapollo/make_b32.bat * contrib/hbapollo/make_vc.bat * contrib/hbcurl/make_b32.bat * contrib/hbcurl/make_vc.bat * contrib/hbfbird/make_b32.bat * contrib/hbfbird/make_vc.bat * contrib/hbfimage/make_b32.bat * contrib/hbfimage/make_vc.bat * contrib/hbgd/make_b32.bat * contrib/hbgd/make_vc.bat * contrib/hbhpdf/make_b32.bat * contrib/hbhpdf/make_vc.bat * contrib/hbmysql/make_b32.bat * contrib/hbmysql/make_vc.bat * contrib/hbpgsql/make_b32.bat * contrib/hbpgsql/make_vc.bat * contrib/rddads/make_b32.bat * contrib/rddads/make_vc.bat + Added possibility to use HB_INC_* envvars to specify the header directories for external packages. This way _all_ Harbour make systems now able to use the same common logic to specify external header dirs. (For GNU-make you can even use a dir list). If HB_INC_* is used with the non-GNU make system, the .dll to .lib generation _won't_ happen, which is desirable for binary builds for distribution. HB_DIR_* envvars continue to work, in this case .libs are copied/generated from the external .dlls, and this is useful who build their Harbour from source. For official Harbour binary distributions HB_INC_* must be used. --- harbour/ChangeLog | 35 +++++++++++++++++++++++++++ harbour/contrib/hbapollo/make_b32.bat | 5 +++- harbour/contrib/hbapollo/make_vc.bat | 5 +++- harbour/contrib/hbcurl/make_b32.bat | 7 ++++-- harbour/contrib/hbcurl/make_vc.bat | 7 ++++-- harbour/contrib/hbfbird/make_b32.bat | 5 +++- harbour/contrib/hbfbird/make_vc.bat | 5 +++- harbour/contrib/hbfimage/make_b32.bat | 5 +++- harbour/contrib/hbfimage/make_vc.bat | 5 +++- harbour/contrib/hbgd/make_b32.bat | 5 +++- harbour/contrib/hbgd/make_vc.bat | 5 +++- harbour/contrib/hbhpdf/make_b32.bat | 5 +++- harbour/contrib/hbhpdf/make_vc.bat | 5 +++- harbour/contrib/hbmysql/make_b32.bat | 5 +++- harbour/contrib/hbmysql/make_vc.bat | 5 +++- harbour/contrib/hbpgsql/make_b32.bat | 5 +++- harbour/contrib/hbpgsql/make_vc.bat | 5 +++- harbour/contrib/rddads/make_b32.bat | 7 ++++-- harbour/contrib/rddads/make_vc.bat | 7 ++++-- 19 files changed, 111 insertions(+), 22 deletions(-) diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 9671f18a81..04d2c25a33 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,6 +8,41 @@ 2008-12-31 13:59 UTC+0100 Foo Bar */ +2008-07-02 12:43 UTC+0200 Viktor Szakats (harbour.01 syenar hu) + * contrib/hbapollo/make_b32.bat + * contrib/hbapollo/make_vc.bat + * contrib/hbcurl/make_b32.bat + * contrib/hbcurl/make_vc.bat + * contrib/hbfbird/make_b32.bat + * contrib/hbfbird/make_vc.bat + * contrib/hbfimage/make_b32.bat + * contrib/hbfimage/make_vc.bat + * contrib/hbgd/make_b32.bat + * contrib/hbgd/make_vc.bat + * contrib/hbhpdf/make_b32.bat + * contrib/hbhpdf/make_vc.bat + * contrib/hbmysql/make_b32.bat + * contrib/hbmysql/make_vc.bat + * contrib/hbpgsql/make_b32.bat + * contrib/hbpgsql/make_vc.bat + * contrib/rddads/make_b32.bat + * contrib/rddads/make_vc.bat + + Added possibility to use HB_INC_* envvars to + specify the header directories for external + packages. This way _all_ Harbour make systems + now able to use the same common logic to specify + external header dirs. (For GNU-make you can even + use a dir list). + If HB_INC_* is used with the non-GNU make system, + the .dll to .lib generation _won't_ happen, which + is desirable for binary builds for distribution. + HB_DIR_* envvars continue to work, in this case + .libs are copied/generated from the external .dlls, + and this is useful who build their Harbour from + source. + For official Harbour binary distributions HB_INC_* + must be used. + 2008-07-02 12:29 UTC+0200 Viktor Szakats (harbour.01 syenar hu) * contrib/hbapollo/make_b32.bat * contrib/hbapollo/make_vc.bat diff --git a/harbour/contrib/hbapollo/make_b32.bat b/harbour/contrib/hbapollo/make_b32.bat index a9c4afb616..13aa5111ce 100644 --- a/harbour/contrib/hbapollo/make_b32.bat +++ b/harbour/contrib/hbapollo/make_b32.bat @@ -3,12 +3,15 @@ rem rem $Id$ rem -if not "%HB_DIR_APOLLO%" == "" goto DIR_OK +if not "%HB_INC_APOLLO%%HB_DIR_APOLLO%" == "" goto DIR_OK echo --------------------------------------------------------------- echo IMPORTANT: You'll need Apollo headers and lib and this envvar echo to be set to successfully build this library: +echo set HB_INC_APOLLO=C:\Apollo\include +echo or echo set HB_DIR_APOLLO=C:\Apollo +echo if you want to generate .lib for the .dll. echo --------------------------------------------------------------- goto POST_EXIT diff --git a/harbour/contrib/hbapollo/make_vc.bat b/harbour/contrib/hbapollo/make_vc.bat index 1255c0ff1e..d0ab4e5099 100644 --- a/harbour/contrib/hbapollo/make_vc.bat +++ b/harbour/contrib/hbapollo/make_vc.bat @@ -3,12 +3,15 @@ rem rem $Id$ rem -if not "%HB_DIR_APOLLO%" == "" goto DIR_OK +if not "%HB_INC_APOLLO%%HB_DIR_APOLLO%" == "" goto DIR_OK echo --------------------------------------------------------------- echo IMPORTANT: You'll need Apollo headers and lib and this envvar echo to be set to successfully build this library: +echo set HB_INC_APOLLO=C:\Apollo\include +echo or echo set HB_DIR_APOLLO=C:\Apollo +echo if you want to generate .lib for the .dll. echo --------------------------------------------------------------- goto POST_EXIT diff --git a/harbour/contrib/hbcurl/make_b32.bat b/harbour/contrib/hbcurl/make_b32.bat index 839ce25c2e..a3fc81af2a 100644 --- a/harbour/contrib/hbcurl/make_b32.bat +++ b/harbour/contrib/hbcurl/make_b32.bat @@ -3,12 +3,15 @@ rem rem $Id$ rem -if not "%HB_DIR_CURL%" == "" goto DIR_OK +if not "%HB_INC_CURL%%HB_DIR_CURL%" == "" goto DIR_OK echo --------------------------------------------------------------- echo IMPORTANT: You'll need the 'libcurl' package and this envvar echo to be set to successfully build this library: +echo set HB_INC_CURL=C:\curl\include +echo or echo set HB_DIR_CURL=C:\curl +echo if you want to generate .lib for the .dll. echo --------------------------------------------------------------- goto POST_EXIT @@ -20,7 +23,7 @@ set _HB_DLL_NAME=libcurl if exist "%HB_DIR_CURL%\bin\%_HB_DLL_NAME%.dll" set _HB_DLL_DIR=%HB_DIR_CURL%\bin if exist "%HB_DIR_CURL%\%_HB_DLL_NAME%.dll" set _HB_DLL_DIR=%HB_DIR_CURL% -echo Using this .dll: "%_HB_DLL_DIR%\%_HB_DLL_NAME%.dll" +if not "%_HB_DLL_DIR%" == "" echo Using .dll: "%_HB_DLL_DIR%\%_HB_DLL_NAME%.dll" rem --------------------------------------------------------------- diff --git a/harbour/contrib/hbcurl/make_vc.bat b/harbour/contrib/hbcurl/make_vc.bat index 30b9fa6418..8e9764a9a9 100644 --- a/harbour/contrib/hbcurl/make_vc.bat +++ b/harbour/contrib/hbcurl/make_vc.bat @@ -3,12 +3,15 @@ rem rem $Id$ rem -if not "%HB_DIR_CURL%" == "" goto DIR_OK +if not "%HB_INC_CURL%%HB_DIR_CURL%" == "" goto DIR_OK echo --------------------------------------------------------------- echo IMPORTANT: You'll need the 'libcurl' package and this envvar echo to be set to successfully build this library: +echo set HB_INC_CURL=C:\curl\include +echo or echo set HB_DIR_CURL=C:\curl +echo if you want to generate .lib for the .dll. echo --------------------------------------------------------------- goto POST_EXIT @@ -20,7 +23,7 @@ set _HB_DLL_NAME=libcurl if exist "%HB_DIR_CURL%\bin\%_HB_DLL_NAME%.dll" set _HB_DLL_DIR=%HB_DIR_CURL%\bin if exist "%HB_DIR_CURL%\%_HB_DLL_NAME%.dll" set _HB_DLL_DIR=%HB_DIR_CURL% -echo Using this .dll: "%_HB_DLL_DIR%\%_HB_DLL_NAME%.dll" +if not "%_HB_DLL_DIR%" == "" echo Using .dll: "%_HB_DLL_DIR%\%_HB_DLL_NAME%.dll" rem --------------------------------------------------------------- diff --git a/harbour/contrib/hbfbird/make_b32.bat b/harbour/contrib/hbfbird/make_b32.bat index fca3ed4c56..c6a2180f74 100644 --- a/harbour/contrib/hbfbird/make_b32.bat +++ b/harbour/contrib/hbfbird/make_b32.bat @@ -3,12 +3,15 @@ rem rem $Id$ rem -if not "%HB_DIR_FIREBIRD%" == "" goto DIR_OK +if not "%HB_INC_FIREBIRD%%HB_DIR_FIREBIRD%" == "" goto DIR_OK echo --------------------------------------------------------------- echo IMPORTANT: You'll need Firebird package and this envvar echo to be set to successfully build this library: +echo set HB_INC_FIREBIRD=C:\Firebird\include +echo or echo set HB_DIR_FIREBIRD=C:\Firebird +echo if you want to generate .lib for the .dll. echo --------------------------------------------------------------- goto POST_EXIT diff --git a/harbour/contrib/hbfbird/make_vc.bat b/harbour/contrib/hbfbird/make_vc.bat index f6408d0d23..a3d4567bd2 100644 --- a/harbour/contrib/hbfbird/make_vc.bat +++ b/harbour/contrib/hbfbird/make_vc.bat @@ -3,12 +3,15 @@ rem rem $Id$ rem -if not "%HB_DIR_FIREBIRD%" == "" goto DIR_OK +if not "%HB_INC_FIREBIRD%%HB_DIR_FIREBIRD%" == "" goto DIR_OK echo --------------------------------------------------------------- echo IMPORTANT: You'll need Firebird package and this envvar echo to be set to successfully build this library: +echo set HB_INC_FIREBIRD=C:\Firebird\include +echo or echo set HB_DIR_FIREBIRD=C:\Firebird +echo if you want to generate .lib for the .dll. echo --------------------------------------------------------------- goto POST_EXIT diff --git a/harbour/contrib/hbfimage/make_b32.bat b/harbour/contrib/hbfimage/make_b32.bat index cbcf84866a..d590d70748 100644 --- a/harbour/contrib/hbfimage/make_b32.bat +++ b/harbour/contrib/hbfimage/make_b32.bat @@ -3,13 +3,16 @@ rem rem $Id$ rem -if not "%HB_DIR_FREEIMAGE%" == "" goto DIR_OK +if not "%HB_INC_FREEIMAGE%%HB_DIR_FREEIMAGE%" == "" goto DIR_OK echo --------------------------------------------------------------- echo IMPORTANT: You'll need Freeimage headers and binary from here: echo http://freeimage.sourceforge.net/download.html echo and this envvar to be set to successfully build this library: +echo set HB_INC_FREEIMAGE=C:\FreeImage\source +echo or echo set HB_DIR_FREEIMAGE=C:\FreeImage +echo if you want to generate .lib for the .dll. echo --------------------------------------------------------------- goto POST_EXIT diff --git a/harbour/contrib/hbfimage/make_vc.bat b/harbour/contrib/hbfimage/make_vc.bat index 33efa2d105..951ce353d4 100644 --- a/harbour/contrib/hbfimage/make_vc.bat +++ b/harbour/contrib/hbfimage/make_vc.bat @@ -3,13 +3,16 @@ rem rem $Id$ rem -if not "%HB_DIR_FREEIMAGE%" == "" goto DIR_OK +if not "%HB_INC_FREEIMAGE%%HB_DIR_FREEIMAGE%" == "" goto DIR_OK echo --------------------------------------------------------------- echo IMPORTANT: You'll need Freeimage headers and binary from here: echo http://freeimage.sourceforge.net/download.html echo and this envvar to be set to successfully build this library: +echo set HB_INC_FREEIMAGE=C:\FreeImage\source +echo or echo set HB_DIR_FREEIMAGE=C:\FreeImage +echo if you want to generate .lib for the .dll. echo --------------------------------------------------------------- goto POST_EXIT diff --git a/harbour/contrib/hbgd/make_b32.bat b/harbour/contrib/hbgd/make_b32.bat index 7e9387d169..61bdbbb22b 100644 --- a/harbour/contrib/hbgd/make_b32.bat +++ b/harbour/contrib/hbgd/make_b32.bat @@ -3,12 +3,15 @@ rem rem $Id$ rem -if not "%HB_DIR_GD%" == "" goto DIR_OK +if not "%HB_INC_GD%%HB_DIR_GD%" == "" goto DIR_OK echo --------------------------------------------------------------- echo IMPORTANT: You'll need GD lib package from www.libgd.org and this envvar echo to be set to successfully build this library: +echo set HB_INC_GD=-IC:\gd\include +echo or echo set HB_DIR_GD=-IC:\gd +echo if you want to generate .lib for the .dll. echo --------------------------------------------------------------- goto POST_EXIT diff --git a/harbour/contrib/hbgd/make_vc.bat b/harbour/contrib/hbgd/make_vc.bat index d90b57553a..cdba834d06 100644 --- a/harbour/contrib/hbgd/make_vc.bat +++ b/harbour/contrib/hbgd/make_vc.bat @@ -3,12 +3,15 @@ rem rem $Id$ rem -if not "%HB_DIR_GD%" == "" goto DIR_OK +if not "%HB_INC_GD%%HB_DIR_GD%" == "" goto DIR_OK echo --------------------------------------------------------------- echo IMPORTANT: You'll need GD lib package from www.libgd.org and this envvar echo to be set to successfully build this library: +echo set HB_INC_GD=-IC:\gd\include +echo or echo set HB_DIR_GD=-IC:\gd +echo if you want to generate .lib for the .dll. echo --------------------------------------------------------------- goto POST_EXIT diff --git a/harbour/contrib/hbhpdf/make_b32.bat b/harbour/contrib/hbhpdf/make_b32.bat index 9a4d17c8bd..3e69210cb7 100644 --- a/harbour/contrib/hbhpdf/make_b32.bat +++ b/harbour/contrib/hbhpdf/make_b32.bat @@ -3,13 +3,16 @@ rem rem $Id$ rem -if not "%HB_DIR_LIBHARU%" == "" goto DIR_OK +if not "%HB_INC_LIBHARU%%HB_DIR_LIBHARU%" == "" goto DIR_OK echo --------------------------------------------------------------- echo IMPORTANT: You'll need Haru Free PDF Library (libharu) DLL package echo from www.libharu.org and this envvar to be set to echo successfully build this library: +echo set HB_INC_LIBHARU=-IC:\libharu\include +echo or echo set HB_DIR_LIBHARU=-IC:\libharu +echo if you want to generate .lib for the .dll. echo --------------------------------------------------------------- goto POST_EXIT diff --git a/harbour/contrib/hbhpdf/make_vc.bat b/harbour/contrib/hbhpdf/make_vc.bat index 1f6aa69824..7fabe54270 100644 --- a/harbour/contrib/hbhpdf/make_vc.bat +++ b/harbour/contrib/hbhpdf/make_vc.bat @@ -3,13 +3,16 @@ rem rem $Id$ rem -if not "%HB_DIR_LIBHARU%" == "" goto DIR_OK +if not "%HB_INC_LIBHARU%%HB_DIR_LIBHARU%" == "" goto DIR_OK echo --------------------------------------------------------------- echo IMPORTANT: You'll need Haru Free PDF Library (libharu) DLL package echo from www.libharu.org and this envvar to be set to echo successfully build this library: +echo set HB_INC_LIBHARU=-IC:\libharu\include +echo or echo set HB_DIR_LIBHARU=-IC:\libharu +echo if you want to generate .lib for the .dll. echo --------------------------------------------------------------- goto POST_EXIT diff --git a/harbour/contrib/hbmysql/make_b32.bat b/harbour/contrib/hbmysql/make_b32.bat index 6171332101..e635e3bc2b 100644 --- a/harbour/contrib/hbmysql/make_b32.bat +++ b/harbour/contrib/hbmysql/make_b32.bat @@ -3,12 +3,15 @@ rem rem $Id$ rem -if not "%HB_DIR_MYSQL%" == "" goto DIR_OK +if not "%HB_INC_MYSQL%%HB_DIR_MYSQL%" == "" goto DIR_OK echo --------------------------------------------------------------- echo IMPORTANT: You'll need MySQL package and this envvar echo to be set to successfully build this library: +echo set HB_INC_MYSQL=C:\mysql\include +echo or echo set HB_DIR_MYSQL=C:\mysql +echo if you want to generate .lib for the .dll. echo --------------------------------------------------------------- goto POST_EXIT diff --git a/harbour/contrib/hbmysql/make_vc.bat b/harbour/contrib/hbmysql/make_vc.bat index 83d7a0dbd2..6ba44961af 100644 --- a/harbour/contrib/hbmysql/make_vc.bat +++ b/harbour/contrib/hbmysql/make_vc.bat @@ -3,12 +3,15 @@ rem rem $Id$ rem -if not "%HB_DIR_MYSQL%" == "" goto DIR_OK +if not "%HB_INC_MYSQL%%HB_DIR_MYSQL%" == "" goto DIR_OK echo --------------------------------------------------------------- echo IMPORTANT: You'll need MySQL package and this envvar echo to be set to successfully build this library: +echo set HB_INC_MYSQL=C:\mysql\include +echo or echo set HB_DIR_MYSQL=C:\mysql +echo if you want to generate .lib for the .dll. echo --------------------------------------------------------------- goto POST_EXIT diff --git a/harbour/contrib/hbpgsql/make_b32.bat b/harbour/contrib/hbpgsql/make_b32.bat index a96906e204..97674622a1 100644 --- a/harbour/contrib/hbpgsql/make_b32.bat +++ b/harbour/contrib/hbpgsql/make_b32.bat @@ -3,12 +3,15 @@ rem rem $Id$ rem -if not "%HB_DIR_PGSQL%" == "" goto DIR_OK +if not "%HB_INC_PGSQL%%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_INC_PGSQL=C:\pgsql\include +echo or echo set HB_DIR_PGSQL=C:\pgsql +echo if you want to generate .lib for the .dll. echo --------------------------------------------------------------- goto POST_EXIT diff --git a/harbour/contrib/hbpgsql/make_vc.bat b/harbour/contrib/hbpgsql/make_vc.bat index 1d77d0004b..beff26ef52 100644 --- a/harbour/contrib/hbpgsql/make_vc.bat +++ b/harbour/contrib/hbpgsql/make_vc.bat @@ -3,12 +3,15 @@ rem rem $Id$ rem -if not "%HB_DIR_PGSQL%" == "" goto DIR_OK +if not "%HB_INC_PGSQL%%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_INC_PGSQL=C:\pgsql\include +echo or echo set HB_DIR_PGSQL=C:\pgsql +echo if you want to generate .lib for the .dll. echo --------------------------------------------------------------- goto POST_EXIT diff --git a/harbour/contrib/rddads/make_b32.bat b/harbour/contrib/rddads/make_b32.bat index e9da3badb6..3104690f1c 100644 --- a/harbour/contrib/rddads/make_b32.bat +++ b/harbour/contrib/rddads/make_b32.bat @@ -3,12 +3,15 @@ rem rem $Id$ rem -if not "%HB_DIR_ADS%" == "" goto DIR_OK +if not "%HB_INC_ADS%%HB_DIR_ADS%" == "" goto DIR_OK echo --------------------------------------------------------------- echo IMPORTANT: You'll need Advantage Client Engine (5.0 or upper) echo and this envvar to be set to successfully build this library: +echo set HB_INC_ADS=C:\ads\acesdk +echo or echo set HB_DIR_ADS=C:\ads\acesdk +echo if you want to generate .lib for the .dll. echo --------------------------------------------------------------- goto POST_EXIT @@ -21,7 +24,7 @@ if exist "%HB_DIR_ADS%\Redistribute\%_HB_DLL_NAME%.dll" set _HB_DLL_DIR=%HB_DIR_ if exist "%HB_DIR_ADS%\%_HB_DLL_NAME%.dll" set _HB_DLL_DIR=%HB_DIR_ADS% if exist "%HB_DIR_ADS%\32bit\%_HB_DLL_NAME%.dll" set _HB_DLL_DIR=%HB_DIR_ADS%\32bit -echo Using this .dll: "%_HB_DLL_DIR%\%_HB_DLL_NAME%.dll" +if not "%_HB_DLL_DIR%" == "" echo Using .dll: "%_HB_DLL_DIR%\%_HB_DLL_NAME%.dll" rem --------------------------------------------------------------- diff --git a/harbour/contrib/rddads/make_vc.bat b/harbour/contrib/rddads/make_vc.bat index 7c3fe50da0..0ee052c23c 100644 --- a/harbour/contrib/rddads/make_vc.bat +++ b/harbour/contrib/rddads/make_vc.bat @@ -3,12 +3,15 @@ rem rem $Id$ rem -if not "%HB_DIR_ADS%" == "" goto DIR_OK +if not "%HB_INC_ADS%%HB_DIR_ADS%" == "" goto DIR_OK echo --------------------------------------------------------------- echo IMPORTANT: You'll need Advantage Client Engine (5.0 or upper) echo and this envvar to be set to successfully build this library: +echo set HB_INC_ADS=C:\ads\acesdk +echo or echo set HB_DIR_ADS=C:\ads\acesdk +echo if you want to generate .lib for the .dll. echo --------------------------------------------------------------- goto POST_EXIT @@ -21,7 +24,7 @@ if exist "%HB_DIR_ADS%\Redistribute\%_HB_DLL_NAME%.dll" set _HB_DLL_DIR=%HB_DIR_ if exist "%HB_DIR_ADS%\%_HB_DLL_NAME%.dll" set _HB_DLL_DIR=%HB_DIR_ADS% if exist "%HB_DIR_ADS%\32bit\%_HB_DLL_NAME%.dll" set _HB_DLL_DIR=%HB_DIR_ADS%\32bit -echo Using this .dll: "%_HB_DLL_DIR%\%_HB_DLL_NAME%.dll" +if not "%_HB_DLL_DIR%" == "" echo Using .dll: "%_HB_DLL_DIR%\%_HB_DLL_NAME%.dll" rem ---------------------------------------------------------------