Permalink
Browse files

2010-07-16 18:22 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)

  * external/minizip/minizip.dif
    + Updated after latest changed by Tamas Tevesz. Thanks a lot!

  * utils/hbmk2/hbmk2.prg
    + Added support for vxworks/diab compiler.

  * utils/hbtest/hbtest.prg
    + Added my name to the copyright header.

  * config/global.mk
    ! Fixed to only assign *nix specific default value HB_INSTALL_PREFIX
      on *nix hosts (only a problem when doing *nix cross-builds _from_
      non-*nix systems).

  * utils/hbmk2/hbmk2.prg
  * config/vxworks/gcc.mk
  * config/vxworks/diab.mk
    + Added minimal support for HB_BUILD_SHARED=yes for vxworks targets.
      For diab it just won't find the harbour .so (see comment for more)
      For gcc it links okay, though it's detected as kernel task, so
      current support is most probably not right.

  * config/vxworks/diab.mk
    * Minor change to sync one C compiler option with VxWorks Workbench
      generated one.

  ; NOTE: By this change Harbour VxWorks base port is finished. Besides
          being an interesting excercise, it helped to develope new
          non-*nix to *nix cross building codepaths, tweak Harbour for
          "headless" (w/o terminal) OSes, and to break the ground for
          target CPU selection inside one target platform.
          Harbour builds cleanly using both vxworks/gcc and vxworks/diab,
          and compiler tools plus non-MT utils run properly as well.

          Obviously I made few functional tests, but from the experiences
          of the port effort, these are the remaining areas:
             - reporting bug(s) to Wind River (particularly the one
               breaking hvm.c compilation, requiring HB_LONG_LONG_OFF
               forcage, causing other unnecessary limits and hbtest
               failures)
             - serial I/O needs to be implemented using VxWorks specific
               sioLib API
             - 'fork' has to be replaced.
             - sockets were not tested, anyhow they are supposed to work.
             - termios is missing, so large parts of GTSTD and GTTRM are
               disabled on this platform.
             - ARM/MIPS CPU support needs to be added to hbatomic.h
             - HB_LIBLOAD() and friends need to be implemented, but I hit
               walls here.
             - MT apps GPFs, this needs to be fixed probably inside our
               code, but it's possible some build options are needed which
               I missed all along.
             - HB_SHARED_MODE=yes needs further tweaking.
  • Loading branch information...
vszakats committed Jul 16, 2010
1 parent 64b5e77 commit 302211f9af601ed63dff84558e075be0ed3ffe45
@@ -16,10 +16,65 @@
The license applies to all entries newer than 2009-04-28.
*/
2010-07-16 18:22 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* external/minizip/minizip.dif
+ Updated after latest changed by Tamas Tevesz. Thanks a lot!
* utils/hbmk2/hbmk2.prg
+ Added support for vxworks/diab compiler.
* utils/hbtest/hbtest.prg
+ Added my name to the copyright header.
* config/global.mk
! Fixed to only assign *nix specific default value HB_INSTALL_PREFIX
on *nix hosts (only a problem when doing *nix cross-builds _from_
non-*nix systems).
* utils/hbmk2/hbmk2.prg
* config/vxworks/gcc.mk
* config/vxworks/diab.mk
+ Added minimal support for HB_BUILD_SHARED=yes for vxworks targets.
For diab it just won't find the harbour .so (see comment for more)
For gcc it links okay, though it's detected as kernel task, so
current support is most probably not right.
* config/vxworks/diab.mk
* Minor change to sync one C compiler option with VxWorks Workbench
generated one.
; NOTE: By this change Harbour VxWorks base port is finished. Besides
being an interesting excercise, it helped to develope new
non-*nix to *nix cross building codepaths, tweak Harbour for
"headless" (w/o terminal) OSes, and to break the ground for
target CPU selection inside one target platform.
Harbour builds cleanly using both vxworks/gcc and vxworks/diab,
and compiler tools plus non-MT utils run properly as well.
Obviously I made few functional tests, but from the experiences
of the port effort, these are the remaining areas:
- reporting bug(s) to Wind River (particularly the one
breaking hvm.c compilation, requiring HB_LONG_LONG_OFF
forcage, causing other unnecessary limits and hbtest
failures)
- serial I/O needs to be implemented using VxWorks specific
sioLib API
- 'fork' has to be replaced.
- sockets were not tested, anyhow they are supposed to work.
- termios is missing, so large parts of GTSTD and GTTRM are
disabled on this platform.
- ARM/MIPS CPU support needs to be added to hbatomic.h
- HB_LIBLOAD() and friends need to be implemented, but I hit
walls here.
- MT apps GPFs, this needs to be fixed probably inside our
code, but it's possible some build options are needed which
I missed all along.
- HB_SHARED_MODE=yes needs further tweaking.
2010-07-16 09:04 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com)
* contrib/hbide/idebrowse.prg
! Fixed: ideDBU - sequential search on a character field was
making exact comparison, i.e., fieldval == searchval, now
! Fixed: ideDBU - sequential search on a character field was
making exact comparison, i.e., fieldval == searchval, now
it is : fieldval = searchval.
2010-07-16 15:15 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
@@ -346,7 +401,7 @@
; TOFIX:
- Unrecoverable error 9998: Harbour terminal (GT) initialization failure
when running hbtest.
when running hbtest. [DONE]
- GPF when running hbmk2 and hbrun. (hbformat, hbi18 startup fine)
It's related to MT mode.
@@ -452,7 +507,7 @@
; NOTE: - vxworks has no termios, for serial comm
support it has sioLib.h.
- vxworks supports another C compiler, which
was not tested yet.
was not tested yet. [DONE]
- vxworks supports lots of CPUs, only x86 was
tested yet.
- There are still mutex related warnings to sort out.
@@ -1447,6 +1447,7 @@ else
ifneq ($(DESTDIR),)
HB_INSTALL_PREFIX := $(DESTDIR)
else
ifneq ($(HB_HOST_PLAT_UNIX),)
# Stick to *nix customs. I do not like it, it needs admin.
HB_INSTALL_PREFIX := /usr/local
# Add postfix for cross builds
@@ -1457,6 +1458,7 @@ else
endif
endif
endif
endif
HB_INSTALL_PREFIX := $(subst /,$(DIRSEP),$(HB_INSTALL_PREFIX))
else
@@ -76,6 +76,12 @@ DLIBPATHS := $(foreach dir,$(LIB_DIR) $(SYSLIBPATHS_DYN),-L$(dir))
LDLIBS := $(foreach lib,$(HB_USER_LIBS) $(LIBS) $(SYSLIBS_BIN),-l$(lib))
ifeq ($(HB_BUILD_SHARED),yes)
# TOFIX: .so is referred by it's full link time search path,
# there is even a backslash present in the dir formed by
# the linker
LDFLAGS += -Wl, -Xdynamic
endif
LDFLAGS += $(LDLIBPATHS)
AR := $(HB_CCPREFIX)dar
@@ -54,6 +54,10 @@ DLIBPATHS := $(foreach dir,$(LIB_DIR) $(SYSLIBPATHS_DYN),-L$(dir))
LDLIBS := $(foreach lib,$(HB_USER_LIBS) $(LIBS) $(SYSLIBS_BIN),-l$(lib))
ifeq ($(HB_BUILD_SHARED),yes)
# TOFIX: no entry point
LDFLAGS += -shared
endif
LDFLAGS += $(LDLIBPATHS)
AR := $(HB_CCPREFIX)ar$(HB_CCPOSTFIX)
@@ -1,6 +1,6 @@
diff -urN minizip.orig/crypt.h minizip/crypt.h
--- minizip.orig/crypt.h 2010-07-16 00:52:06.960236990 +0200
+++ minizip/crypt.h 2010-07-16 00:52:06.970234708 +0200
--- minizip.orig/crypt.h 2010-07-16 15:11:30.820235577 +0200
+++ minizip/crypt.h 2010-07-16 15:11:30.820235577 +0200
@@ -38,6 +38,8 @@
* unpredictable manner on 16-bit systems; not a problem
* with any known compiler so far, though */
@@ -11,8 +11,8 @@ diff -urN minizip.orig/crypt.h minizip/crypt.h
return (int)(((temp * (temp ^ 1)) >> 8) & 0xff);
}
diff -urN minizip.orig/ioapi.c minizip/ioapi.c
--- minizip.orig/ioapi.c 2010-07-16 00:52:06.980235219 +0200
+++ minizip/ioapi.c 2010-07-16 00:52:06.980235219 +0200
--- minizip.orig/ioapi.c 2010-07-16 15:11:30.820235577 +0200
+++ minizip/ioapi.c 2010-07-16 15:11:30.820235577 +0200
@@ -15,6 +15,7 @@
#endif
@@ -143,9 +143,9 @@ diff -urN minizip.orig/ioapi.c minizip/ioapi.c
pzlib_filefunc_def->zopen_file = fopen_file_func;
pzlib_filefunc_def->zread_file = fread_file_func;
diff -urN minizip.orig/ioapi.h minizip/ioapi.h
--- minizip.orig/ioapi.h 2010-07-16 00:52:06.980235219 +0200
+++ minizip/ioapi.h 2010-07-16 00:52:06.980235219 +0200
@@ -21,29 +21,40 @@
--- minizip.orig/ioapi.h 2010-07-16 15:11:30.820235577 +0200
+++ minizip/ioapi.h 2010-07-16 15:11:30.820235577 +0200
@@ -21,29 +21,50 @@
#ifndef _ZLIBIOAPI64_H
#define _ZLIBIOAPI64_H
@@ -189,10 +189,20 @@ diff -urN minizip.orig/ioapi.h minizip/ioapi.h
+#include "hbsetup.h"
+
+#if defined( HB_OS_VXWORKS ) && defined( _STD_USING_INT_TYPES )
+ /* NOTE: Hack to avoid collision between stdint.h and types/vxTypes.h. [vszakats] */
+ #ifndef __BIT_TYPES_DEFINED__
+ #define __BIT_TYPES_DEFINED__
+ #endif
+ #ifndef _SYS_INT_TYPES_H
+ #define _SYS_INT_TYPES_H
+ #endif
+#endif
+
+#if defined( __BORLANDC__ ) || \
+ defined( __WATCOMC__ ) || \
+ defined( __MINGW32CE__ ) || \
+ defined( __DCC__ ) || \
+ defined( HB_OS_VXWORKS ) || \
+ defined( HB_OS_BSD ) || \
+ defined( HB_OS_DARWIN ) || \
+ defined( HB_OS_HAIKU ) || \
@@ -204,8 +214,8 @@ diff -urN minizip.orig/ioapi.h minizip/ioapi.h
#define fopen64 fopen
#define ftello64 ftell
diff -urN minizip.orig/unzip.c minizip/unzip.c
--- minizip.orig/unzip.c 2010-07-16 00:52:07.040236336 +0200
+++ minizip/unzip.c 2010-07-16 00:52:07.040236336 +0200
--- minizip.orig/unzip.c 2010-07-16 15:11:30.870234454 +0200
+++ minizip/unzip.c 2010-07-16 15:11:30.870234454 +0200
@@ -68,13 +68,17 @@
#include <stdlib.h>
#include <string.h>
@@ -293,8 +303,8 @@ diff -urN minizip.orig/unzip.c minizip/unzip.c
pfile_in_zip_read_info->crc32_wait=s->cur_file_info.crc;
pfile_in_zip_read_info->crc32=0;
diff -urN minizip.orig/zip.c minizip/zip.c
--- minizip.orig/zip.c 2010-07-16 00:52:07.100236615 +0200
+++ minizip/zip.c 2010-07-16 00:52:07.100236615 +0200
--- minizip.orig/zip.c 2010-07-16 15:11:30.930234949 +0200
+++ minizip/zip.c 2010-07-16 15:11:30.930234949 +0200
@@ -29,16 +29,20 @@
#include "zlib.h"
#include "zip.h"
Oops, something went wrong.

0 comments on commit 302211f

Please sign in to comment.