2010-01-09 12:54 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)

* INSTALL
    + Extended Linux deb/rpm sections:
      - Added list of base packages
      - Listed actual active distro names
      - Added pkg install command for various rpm distros
      - Added link to webpage containing extensive information
          about pkg management commands on different distros
    + Added SUNWsvn package for OpenSolaris.

  * harbour.spec
    ! Typo in comment.
    + Added 'DISCONTINUED' comments to those distros which are 
      (suprise!) discontinued.

  * contrib/hbwin/wapi_winbase.c
    ! Fixed to set internal getlasterror value in WAPI_FORMATMESSAGE().
      Thanks Xavi.

  * contrib/hbwin/wapi_err.c
    ! Fixed to include 'hbwapi.h'
      Thanks Xavi again.

  * config/global.mk
    + Added autodetection of Gentoo Linux package manager.

  * contrib/hbbtree/hb_btree.c
    + Added two TOFIX notes. Both reported on the list previously.
This commit is contained in:
Viktor Szakats
2010-01-09 11:55:36 +00:00
parent 07e8174aae
commit 37d7989d47
7 changed files with 92 additions and 42 deletions

View File

@@ -17,6 +17,35 @@
past entries belonging to author(s): Viktor Szakats.
*/
2010-01-09 12:54 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* INSTALL
+ Extended Linux deb/rpm sections:
- Added list of base packages
- Listed actual active distro names
- Added pkg install command for various rpm distros
- Added link to webpage containing extensive information
about pkg management commands on different distros
+ Added SUNWsvn package for OpenSolaris.
* harbour.spec
! Typo in comment.
+ Added 'DISCONTINUED' comments to those distros which are
(suprise!) discontinued.
* contrib/hbwin/wapi_winbase.c
! Fixed to set internal getlasterror value in WAPI_FORMATMESSAGE().
Thanks Xavi.
* contrib/hbwin/wapi_err.c
! Fixed to include 'hbwapi.h'
Thanks Xavi again.
* config/global.mk
+ Added autodetection of Gentoo Linux package manager.
* contrib/hbbtree/hb_btree.c
+ Added two TOFIX notes. Both reported on the list previously.
2010-01-09 02:31 UTC+0500 April White (april users.sourceforge.net)
* contrib/hbbtree/tbtree.prg
* updated copyright date

View File

@@ -355,16 +355,20 @@ HARBOUR
---------------
For contrib/rddads lib:
Download and install 'Advantage Client Engine API for Linux' package
(f.e. aceapi-9.10.0.0.tar.gz)
Download and install 'Advantage Client Engine API for Linux' package
(f.e. aceapi-9.10.0.0.tar.gz)
For contrib/hbhpdf lib (if you don't wish to use locally hosted version):
Download libharu from http://libharu.org/ -> './configure' -> 'make install'
For contrib/hbhpdf lib, if you don't wish to use locally hosted version:
Download libharu from http://libharu.org/ -> './configure' -> 'make install'
Linux (Debian, Ubuntu, .deb based distros)
Linux (.deb based distros: Debian, Ubuntu)
------------------------------------------
(tested with Ubuntu 7.04, 8.04, 9.04, 9.10)
You'll need these base packages to build/package/test/use Harbour:
$ sudo apt-get install bash subversion gcc binutils fakeroot debhelper valgrind upx
You'll need these packages to compile certain contribs and optional Harbour features:
for gtcrs terminal lib: $ sudo apt-get install libncurses-dev
@@ -393,43 +397,48 @@ HARBOUR
for pcre (regex) support: $ sudo apt-get install libpcre3-dev
for contrib/hbsqlit3 lib: $ sudo apt-get install libsqlite3-dev
Linux (openSUSE, .rpm based distros)
------------------------------------
Linux (.rpm based distros: openSUSE, Fedora, CentOS, Mandriva)
--------------------------------------------------------------
[ THIS NEEDS REVIEW BY REAL OPENSUSE USER, PACKAGE NAMES
AND COMMANDS MAY HAVE MISTAKES. ]
You'll need these base packages to build/package/test/use Harbour:
bash subversion gcc make glibc-devel rpm valgrind
You'll need these packages to compile certain contribs and optional Harbour features:
for gtcrs terminal lib: $ sudo zypper install ncurses-devel ncurses
for gtsln terminal lib: $ sudo zypper install slang-devel slang
for gtxwc terminal lib: $ sudo zypper install xorg-x11-devel
$ sudo zypper install XFree86-devel
for console mouse support: $ sudo zypper install gpm-devel OR
sudo zypper install gpm
for contrib/gtalleg lib: $ sudo zypper install allegro-devel
for contrib/hbcairo lib: $ sudo zypper install cairo-devel
for contrib/hbcurl lib: $ sudo zypper install curl-devel
for contrib/hbfbird lib: $ sudo zypper install firebird-devel
for contrib/hbfimage lib: $ sudo zypper install freeimage-devel
for contrib/hbgd lib: $ sudo zypper install gd-devel
for contrib/hbmysql lib: $ sudo zypper install libmysqlclient-devel OR
$ sudo zypper install mysql-devel OR
$ sudo zypper install MySQL-devel
for contrib/hbodbc lib: $ sudo zypper install unixodbc-devel OR
$ sudo zypper install unixODBC-devel
for contrib/hbpgsql lib: $ sudo zypper install postgresql-devel
for contrib/hbqt lib: $ sudo zypper install qt45-devel
for gtcrs terminal lib: ncurses-devel ncurses
for gtsln terminal lib: slang-devel slang
for gtxwc terminal lib: xorg-x11-devel
XFree86-devel
for console mouse support: gpm-devel OR
gpm
for contrib/gtalleg lib: allegro-devel
for contrib/hbcairo lib: cairo-devel
for contrib/hbcurl lib: curl-devel
for contrib/hbfbird lib: firebird-devel
for contrib/hbfimage lib: freeimage-devel
for contrib/hbgd lib: gd-devel
for contrib/hbmysql lib: libmysqlclient-devel OR
mysql-devel OR
MySQL-devel
for contrib/hbodbc lib: unixodbc-devel OR
unixODBC-devel
for contrib/hbpgsql lib: postgresql-devel
for contrib/hbqt lib: qt45-devel
NOTES: - On non-openSUSE rpm based distros, use appropriate command instead of
'zypper', f.e. 'rpm -i <name>.rpm'.
- If you want to build 32-bit Harbour on a 64-bit host, install above
packages with '-32bit' appended to their names, f.e. 'slang-devel-32bit'
NOTES: - You can use following commands on different distros to install packages:
openSUSE: $ sudo zypper install <pkg>
Fedora, CentOS: $ sudo yum install <pkg>
Mandriva: $ sudo urpmi <pkg>
Check this link for more:
http://distrowatch.com/dwres.php?resource=package-management
- On openSUSE, if you want to build 32-bit Harbour on a 64-bit host, install
above packages with '-32bit' appended to their names, f.e. 'slang-devel-32bit'
OpenSolaris
-----------
- $ pkg install SUNWgmake
- $ pkg install SUNWgmake SUNWsvn
FreeBSD
-------

View File

@@ -1043,6 +1043,8 @@ ifeq ($(HB_HOST_PKGM),)
else ifeq ($(HB_PLATFORM),linux)
ifneq ($(wildcard /etc/debian_version),)
HB_HOST_PKGM += deb
else ifneq ($(wildcard /etc/gentoo-release),)
HB_HOST_PKGM += portage
else
HB_HOST_PKGM += rpm
endif

View File

@@ -681,6 +681,7 @@ static void Prune( struct hb_BTree * pBTree, ULONG ulNode )
else
{
hb_fsSeek( pBTree->hFile, ulNode, FS_SET );
/* TOFIX: Should convert ULONG value to portable binary format with HB_PUT_LE_UINT32() before writing it to disk. */
if ( hb_fsWrite( pBTree->hFile, /*( const BYTE * )*/ &pBTree->ulFreePage, sizeof( pBTree->ulFreePage ) ) != sizeof( pBTree->ulFreePage ) )
{
raiseError( EG_WRITE, HB_BTREE_EC_WRITEERROR, "write error", "Prune*", 0 );
@@ -1593,7 +1594,7 @@ struct hb_BTree *hb_BTreeOpen( const char *FileName, ULONG ulFlags, ULONG ulBuff
}
pHeader += sizeof( HEADER_ID ) - 1;
pHeader += sizeof( ( UINT32 ) HB_BTREE_HEADERSIZE );
pHeader += sizeof( ( UINT32 ) HB_BTREE_HEADERSIZE ); /* TOFIX: This looks suspicious, is it really what's intended? */
pBTree->usPageSize = ( UINT16 ) HB_GET_LE_UINT32( pHeader ); pHeader += 4;
pBTree->usKeySize = ( UINT16 ) HB_GET_LE_UINT32( pHeader ); pHeader += 4;
pBTree->usMaxKeys = ( UINT16 ) HB_GET_LE_UINT32( pHeader ); pHeader += 4;

View File

@@ -53,6 +53,7 @@
#define HB_OS_WIN_USED
#include "hbapi.h"
#include "hbwapi.h"
#include "hbstack.h"
typedef struct

View File

@@ -267,13 +267,16 @@ HB_FUNC( WAPI_FORMATMESSAGE )
lpBuffer = nBufferLen > 0 ? ( LPTSTR ) hb_xgrab( nBufferLen * sizeof( TCHAR ) ) : NULL;
hb_retnl( dwRetVal = FormatMessage( ( DWORD ) hb_parnldef( 1, FORMAT_MESSAGE_FROM_SYSTEM ) /* dwFlags */,
HB_ISCHAR( 2 ) ? ( LPCVOID ) HB_PARSTR( 2, &hSource, NULL ) : hb_parptr( 2 ),
HB_ISNUM( 3 ) ? ( DWORD ) hb_parnl( 3 ) : GetLastError() /* dwMessageId */,
( DWORD ) hb_parnldef( 4, MAKELANGID( LANG_NEUTRAL, SUBLANG_DEFAULT ) ) /* dwLanguageId */,
lpBuffer,
( DWORD ) nBufferLen,
NULL /* TODO: Add support for this parameter. */ ) );
dwRetVal = FormatMessage( ( DWORD ) hb_parnldef( 1, FORMAT_MESSAGE_FROM_SYSTEM ) /* dwFlags */,
HB_ISCHAR( 2 ) ? ( LPCVOID ) HB_PARSTR( 2, &hSource, NULL ) : hb_parptr( 2 ),
HB_ISNUM( 3 ) ? ( DWORD ) hb_parnl( 3 ) : GetLastError() /* dwMessageId */,
( DWORD ) hb_parnldef( 4, MAKELANGID( LANG_NEUTRAL, SUBLANG_DEFAULT ) ) /* dwLanguageId */,
lpBuffer,
( DWORD ) nBufferLen,
NULL /* TODO: Add support for this parameter. */ );
hbwapi_SetLastError( GetLastError() );
hb_retnl( dwRetVal );
if( lpBuffer )
{

View File

@@ -14,23 +14,28 @@
## Definitions.
######################################################################
# please add your distro suffix if it not belong to the one recognized below
# please add your distro suffix if it does not belong to the ones recognized below
# and remember that order checking can be important
%define platform %(release=$(rpm -q --queryformat='%{VERSION}' mandriva-release-common 2>/dev/null) && echo "mdv$release"|tr -d ".")
%if "%{platform}" == ""
# DISCONTINUED
%define platform %(release=$(rpm -q --queryformat='%{VERSION}' mandrake-release 2>/dev/null) && echo "mdk$release"|tr -d ".")
%if "%{platform}" == ""
# DISCONTINUED
%define platform %(release=$(rpm -q --queryformat='%{VERSION}' redhat-release 2>/dev/null) && echo "rh$release"|tr -d ".")
%if "%{platform}" == ""
%define platform %(release=$(rpm -q --queryformat='%{VERSION}' fedora-release 2>/dev/null) && echo "fc$release"|tr -d ".")
%if "%{platform}" == ""
# DISCONTINUED
%define platform %(release=$(rpm -q --queryformat='%{VERSION}' suse-release 2>/dev/null) && echo "sus$release"|tr -d ".")
%if "%{platform}" == ""
%define platform %(release=$(rpm -q --queryformat='%{VERSION}' openSUSE-release 2>/dev/null) && echo "sus$release"|tr -d ".")
%if "%{platform}" == ""
# DISCONTINUED
%define platform %(release=$(rpm -q --queryformat='%{VERSION}' conectiva-release 2>/dev/null) && echo "cl$release"|tr -d ".")
%if "%{platform}" == ""
# DISCONTINUED
%define platform %(release=$(rpm -q --queryformat='%{VERSION}' aurox-release 2>/dev/null) && echo "aur$release"|tr -d ".")
%if "%{platform}" == ""
%define platform %([ -f /etc/pld-release ] && cat /etc/pld-release|sed -e '/1/ !d' -e 's/[^0-9]//g' -e 's/^/pld/')