From dbcebf21a1bca07d80754de8f504a104d9e58c21 Mon Sep 17 00:00:00 2001 From: Viktor Szakats Date: Fri, 5 Jun 2009 16:55:43 +0000 Subject: [PATCH] 2009-06-05 18:54 UTC+0200 Viktor Szakats (harbour.01 syenar.hu) * contrib/Makefile + contrib/xpp + contrib/xpp/Makefile + contrib/xpp/xpp.ch + Added startup of an Xbase++ dialect lib (similar to xhb). The idea is that these will hold all Xbase++ specific functions with an xpp_*() prefix, and they will eventually be moved inside the core into source/dialect/xpp lib, so that dialect selection can be better integrated into Harbour compiler tools. Currently it holds one header only. + utils/hbmk2/examples/oohg.hbc + Added oohg hbmk2 config file. (untested) * utils/hbmk2/examples/fwh.hbc * utils/hbmk2/examples/hmg.hbc * utils/hbmk2/examples/hwgui.hbc % Minor simplification. --- harbour/ChangeLog | 20 +++++++ harbour/contrib/Makefile | 1 + harbour/contrib/xpp/Makefile | 14 +++++ harbour/contrib/xpp/xpp.ch | 73 ++++++++++++++++++++++++++ harbour/utils/hbmk2/examples/fwh.hbc | 4 +- harbour/utils/hbmk2/examples/hmg.hbc | 4 +- harbour/utils/hbmk2/examples/hwgui.hbc | 4 +- harbour/utils/hbmk2/examples/oohg.hbc | 14 +++++ 8 files changed, 128 insertions(+), 6 deletions(-) create mode 100644 harbour/contrib/xpp/Makefile create mode 100644 harbour/contrib/xpp/xpp.ch create mode 100644 harbour/utils/hbmk2/examples/oohg.hbc diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 540db9d02a..f4ea47c72f 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -17,6 +17,26 @@ past entries belonging to author(s): Viktor Szakats. */ +2009-06-05 18:54 UTC+0200 Viktor Szakats (harbour.01 syenar.hu) + * contrib/Makefile + + contrib/xpp + + contrib/xpp/Makefile + + contrib/xpp/xpp.ch + + Added startup of an Xbase++ dialect lib (similar to xhb). + The idea is that these will hold all Xbase++ specific functions + with an xpp_*() prefix, and they will eventually be moved + inside the core into source/dialect/xpp lib, so that dialect + selection can be better integrated into Harbour compiler tools. + Currently it holds one header only. + + + utils/hbmk2/examples/oohg.hbc + + Added oohg hbmk2 config file. (untested) + + * utils/hbmk2/examples/fwh.hbc + * utils/hbmk2/examples/hmg.hbc + * utils/hbmk2/examples/hwgui.hbc + % Minor simplification. + 2009-06-05 18:10 UTC+0200 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/wapi_winuser.c + Added WAPI_CREATEWINDOWEX() pure Windows API wrapper. diff --git a/harbour/contrib/Makefile b/harbour/contrib/Makefile index 188e6f57fd..971cff1536 100644 --- a/harbour/contrib/Makefile +++ b/harbour/contrib/Makefile @@ -27,6 +27,7 @@ DIRS=\ hbziparc \ rddado \ xhb \ + xpp \ # contribs with external dependencies DIRS +=\ diff --git a/harbour/contrib/xpp/Makefile b/harbour/contrib/xpp/Makefile new file mode 100644 index 0000000000..427a46ad1c --- /dev/null +++ b/harbour/contrib/xpp/Makefile @@ -0,0 +1,14 @@ +# +# $Id$ +# + +ROOT = ../../ + +PRG_HEADERS=\ + xpp.ch \ + +include $(TOP)$(ROOT)config/header.cf +INSTALL_RULE_HEADERS := $(INSTALL_RULE) + +install:: + $(INSTALL_RULE_HEADERS) diff --git a/harbour/contrib/xpp/xpp.ch b/harbour/contrib/xpp/xpp.ch new file mode 100644 index 0000000000..0ca072dcf5 --- /dev/null +++ b/harbour/contrib/xpp/xpp.ch @@ -0,0 +1,73 @@ +/* + * $Id$ + */ + +/* + * Harbour Project source code: + * Xbase++ compatibility header + * + * Copyright 2009 Viktor Szakats (harbour.01 syenar.hu) + * www - http://www.harbour-project.org + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this software; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, + * Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/). + * + * As a special exception, the Harbour Project gives permission for + * additional uses of the text contained in its release of Harbour. + * + * The exception is that, if you link the Harbour libraries with other + * files to produce an executable, this does not by itself cause the + * resulting executable to be covered by the GNU General Public License. + * Your use of that executable is in no way restricted on account of + * linking the Harbour library code into it. + * + * This exception does not however invalidate any other reasons why + * the executable file might be covered by the GNU General Public License. + * + * This exception applies only to the code released by the Harbour + * Project under the name Harbour. If you copy code from other + * Harbour Project or Free Software Foundation releases into a copy of + * Harbour, as the General Public License permits, the exception does + * not apply to the code that you add in this way. To avoid misleading + * anyone as to the status of such modified files, you must delete + * this exception notice from them. + * + * If you write modifications of your own for Harbour, it is your choice + * whether to permit this exception to apply to your modifications. + * If you do not wish that, delete this exception notice. + * + */ + +#ifdef __XPP__ + +/* Translations for Harbour programs compiled with Xbase++ compiler */ + +#else + +/* Translations for Xbase++ programs compiled with Harbour compiler */ + +#include "hbclass.ch" + +#xtranslate DispOutAt() => hb_DispOutAt() +#xtranslate Sleep() => xpp_Sleep() + +#xtranslate TBColumn() => xpp_TBColumn() +#xtranslate TBrowse() => xpp_TBrowse() +#xtranslate Get() => xpp_Get() + +/* NOTE: Several other Xbase++ function are currently implemented using + original Xbase++ names. */ + +#endif diff --git a/harbour/utils/hbmk2/examples/fwh.hbc b/harbour/utils/hbmk2/examples/fwh.hbc index 220a8b6c00..1611a75fa9 100644 --- a/harbour/utils/hbmk2/examples/fwh.hbc +++ b/harbour/utils/hbmk2/examples/fwh.hbc @@ -6,8 +6,8 @@ # command line to build an app: # > hbmk2 test.prg C:\fwh\fwh.hbc -{win}incpaths=${hb_self}include -{win}libpaths=${hb_self}lib +{win}incpaths=include +{win}libpaths=lib {win}gt=gtgui diff --git a/harbour/utils/hbmk2/examples/hmg.hbc b/harbour/utils/hbmk2/examples/hmg.hbc index 53dd3c2446..245b2f6603 100644 --- a/harbour/utils/hbmk2/examples/hmg.hbc +++ b/harbour/utils/hbmk2/examples/hmg.hbc @@ -6,8 +6,8 @@ # command line to build an app: # > hbmk2 test.prg C:\hmg\hmg.hbc -{win}incpaths=${hb_self}include -{win}libpaths=${hb_self}lib ${hb_self}harbour\lib +{win}incpaths=include +{win}libpaths=lib harbour\lib {win}gt=gtgui diff --git a/harbour/utils/hbmk2/examples/hwgui.hbc b/harbour/utils/hbmk2/examples/hwgui.hbc index 8cc7ad48ef..094e7592ec 100644 --- a/harbour/utils/hbmk2/examples/hwgui.hbc +++ b/harbour/utils/hbmk2/examples/hwgui.hbc @@ -6,8 +6,8 @@ # command line to build an app: # > hbmk2 test.prg C:\hwgui\hwgui.hbc -{win}incpaths=${hb_self}include -{win}libpaths=${hb_self}lib +{win}incpaths=include +{win}libpaths=lib {win}gt=gtgui diff --git a/harbour/utils/hbmk2/examples/oohg.hbc b/harbour/utils/hbmk2/examples/oohg.hbc new file mode 100644 index 0000000000..05eb6c436c --- /dev/null +++ b/harbour/utils/hbmk2/examples/oohg.hbc @@ -0,0 +1,14 @@ +# +# $Id$ +# + +# Copy this file to oohg root dir and include it in hbmk2 +# command line to build an app: +# > hbmk2 test.prg C:\oohg\oohg.hbc + +{win}incpaths=include +{win}libpaths=lib + +{win}gt=gtgui + +{win}libs=oohg hbprinter miniprint