Files
harbour-core/harbour/include
Przemyslaw Czerpak 65388ee4af 2010-02-10 12:34 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/pp/Makefile
  * harbour/src/pp/hbpp.c
    ! fixed compilation with HB_DYNLIB macro

  - harbour/src/vm/maindll.c
    - removed unused dummy file

  * harbour/src/vm/Makefile
  * harbour/include/hbapi.h
  + harbour/src/vm/procaddr.c
    + added hb_vmProcAddress() function

  * harbour/include/hbdefs.h
    + added HB_EXPORT_ATTR and HB_IMPORT_ATTR macros - they are always
      defined regardless of HB_DYNLIB macro state

  * harbour/src/vm/maindllh/Makefile
    * disabled HB_DYNLIB

  * harbour/src/vm/maindllp/Makefile
  + harbour/src/vm/maindllp/dllpcode.c
    + added new import library for PCODE DLLs. It contains wrappers for
      hb_vmProcessSymbols() and hb_vmExecute() implemented in a way
      which creates minimal speed overhead.
    + added error reporting (MessageBox()) when redirected functions
      cannot be found.
    + added hb_dllGetProcAddress() C function

  * harbour/include/hbtypes.h
  - harbour/src/vm/maindllp.c
  + harbour/src/vm/maindllp/dllext.c
    * moved old wrappers to some of extended and array API functions
      into separate file
    * updated to use hb_dllGetProcAddress()
    - removed functions which should not be used by user code
    % cleaned, optimized and added error reporting to function wrappers.

    I do not know who chose exported functions but it looks like a
    quite random set which should be extended for real functionality.
    If someone is interested then he can do that. I updated this file
    only for backward compatibility.

   Above modifications allows to use PCODE DLLs with any application
   also static ones using Harbour compiled without exported symbols.
   It's enough to link it with this function:
      HB_EXPORT_ATTR PHB_FUNC dll_hb_vmProcAddress( const char * szFuncName )
      {
         return hb_vmProcAddress( szFuncName );
      }
   The official form of including above function to final binaries is not
   defined yet.
2010-02-10 11:34:42 +00:00
..