2009-08-28 14:00 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)

* INSTALL
    * Updated Ubuntu external pkg list.
    + Added slang to darwin external pkg list.

  * config/darwin/libs.mk
    + Added two syslib paths required for slang (gtsln).

  * utils/hbmk2/hbmk2.prg
    ! Fixed to add user GTs before the list of user libs.
      This is to ensure proper linkage with linkers which need
      this (mingw f.e. and all which used lib grouping switches
      before they were removed from hbmk2/make in Harbour)

  * config/bin.mk
  * config/dyn.mk
    + Added new HB_LINKING_VMMT variable, which is set to non-empty
      if hbvmmt is to be linked. It makes it possible to add
      MT dependent libs to sys lib list, if needed.

  * config/linux/libs.mk
    + Adding pthread lib when HB_LINKING_VMMT is set. This isn't
      needed on my *nix systems (Ubuntu and Darwin), but was used
      for all platforms in postinst.sh dynlib creation logic, so
      please speak up if we should add this lib to other *nix 
      platforms, or we can delete it from Linux.
This commit is contained in:
Viktor Szakats
2009-08-28 11:59:57 +00:00
parent 86318490b5
commit eba19de1cd
7 changed files with 64 additions and 24 deletions

View File

@@ -17,6 +17,33 @@
past entries belonging to author(s): Viktor Szakats.
*/
2009-08-28 14:00 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* INSTALL
* Updated Ubuntu external pkg list.
+ Added slang to darwin external pkg list.
* config/darwin/libs.mk
+ Added two syslib paths required for slang (gtsln).
* utils/hbmk2/hbmk2.prg
! Fixed to add user GTs before the list of user libs.
This is to ensure proper linkage with linkers which need
this (mingw f.e. and all which used lib grouping switches
before they were removed from hbmk2/make in Harbour)
* config/bin.mk
* config/dyn.mk
+ Added new HB_LINKING_VMMT variable, which is set to non-empty
if hbvmmt is to be linked. It makes it possible to add
MT dependent libs to sys lib list, if needed.
* config/linux/libs.mk
+ Adding pthread lib when HB_LINKING_VMMT is set. This isn't
needed on my *nix systems (Ubuntu and Darwin), but was used
for all platforms in postinst.sh dynlib creation logic, so
please speak up if we should add this lib to other *nix
platforms, or we can delete it from Linux.
2009-08-28 08:53 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* bin/hb-func.sh
! Fixed recent mistake in gpm detection at postinst (now redundant)

View File

@@ -249,14 +249,14 @@ HOW TO ENABLE OPTIONAL COMPONENTS BEFORE BUILD
-----------------
1.) Install MacPorts, follow their instructions:
http://www.macports.org/
2.) sudo port install allegro freeimage gd2 mysql5-devel postgresql83
2.) sudo port install slang allegro freeimage gd2 mysql5-devel postgresql83
Linux (generic)
---------------
For contrib/rddads lib:
Download and install 'Advantage Client Engine API for Linux' package
(f.e. aceapi-9.00.0.0.tar.gz)
(f.e. aceapi-9.10.0.0.tar.gz)
For contrib/hbhpdf lib:
Download libharu from http://libharu.org/ -> './configure' -> 'make install'
@@ -265,21 +265,20 @@ HOW TO ENABLE OPTIONAL COMPONENTS BEFORE BUILD
----------------------
(tested with Ubuntu 7.04, 8.04, 9.04)
for gtcrs terminal lib: sudo apt-get install libncurses-dev
for gtsln terminal lib: sudo apt-get install libslang2-dev
for gtxwc terminal lib: sudo apt-get install libx11-dev
for console mouse (GPM) support: sudo apt-get install libgpmg1-dev
for contrib/hbodbc lib: sudo apt-get install unixodbc-dev
for contrib/hbcurl lib: sudo apt-get install libcurl4-openssl-dev OR
sudo apt-get install libcurl4-gnutls-dev
for contrib/hbfbird lib: sudo apt-get install libfirebird2.0-dev OR
sudo apt-get install firebird2.1-dev
for contrib/hbfimage lib: sudo apt-get install libfreeimage-dev
for contrib/hbgd lib: sudo apt-get install libgd2-xpm-dev OR
sudo apt-get install libgd-xpm-dev
for contrib/hbmysql lib: sudo apt-get install libmysqlclient15-dev
for contrib/hbpgsql lib: sudo apt-get install libpq-dev
for contrib/hbqt lib: sudo apt-get install libqt4-dev
for gtcrs terminal lib: sudo apt-get install libncurses-dev
for gtsln terminal lib: sudo apt-get install libslang2-dev
for gtxwc terminal lib: sudo apt-get install libx11-dev
for console mouse support: sudo apt-get install libgpm-dev OR libgpmg1-dev
for contrib/hbodbc lib: sudo apt-get install unixodbc-dev
for contrib/hbcurl lib: sudo apt-get install libcurl4-openssl-dev
for contrib/hbfbird lib: sudo apt-get install firebird2.1-dev OR
sudo apt-get install libfirebird2.0-dev
for contrib/hbfimage lib: sudo apt-get install libfreeimage-dev
for contrib/hbgd lib: sudo apt-get install libgd2-xpm-dev OR
sudo apt-get install libgd-xpm-dev
for contrib/hbmysql lib: sudo apt-get install libmysqlclient15-dev
for contrib/hbpgsql lib: sudo apt-get install libpq-dev
for contrib/hbqt lib: sudo apt-get install libqt4-dev
Linux (openSUSE)
----------------

View File

@@ -52,10 +52,14 @@ HB_LIBS_TPL :=
_HB_RDD :=
_HB_VM :=
HB_LINKING_RTL :=
HB_LINKING_VMMT :=
ifneq ($(filter hbrtl, $(LIBS)),)
HB_LINKING_RTL := yes
else
HB_LINKING_RTL :=
ifneq ($(filter hbvmmt, $(LIBS)),)
HB_LINKING_VMMT := yes
endif
endif
-include $(TOP)$(ROOT)config/$(HB_PLATFORM)/libs.mk

View File

@@ -18,6 +18,7 @@ ifneq ($(HB_LINKING_RTL),)
ifneq ($(HB_HAS_CURSES),)
SYSLIBS += $(HB_CRS_LIB)
endif
SYSLIBPATHS += /sw/lib /opt/local/lib
endif
ifneq ($(HB_HAS_X11),)
SYSLIBS += X11

View File

@@ -7,10 +7,14 @@ include $(TOP)$(ROOT)config/global.mk
ifneq ($(HB_PLATFORM),)
ifneq ($(HB_COMPILER),)
HB_LINKING_RTL :=
HB_LINKING_VMMT :=
ifneq ($(DYNNAME),)
HB_LINKING_RTL := yes
else
HB_LINKING_RTL :=
ifneq ($(findstring vmmt, $(DYNDIRLIST)),)
HB_LINKING_VMMT := yes
endif
endif
-include $(TOP)$(ROOT)config/$(HB_PLATFORM)/libs.mk

View File

@@ -33,6 +33,10 @@ ifneq ($(HB_LINKING_RTL),)
SYSLIBS += z
endif
SYSLIBS += rt dl
# Don't seem to be needed here, but added it for reference to move/copy it to *nix platforms where this is required
ifneq ($(HB_LINKING_VMMT),)
SYSLIBS += pthread
endif
endif
SYSLIBS += m

View File

@@ -1902,7 +1902,7 @@ FUNCTION hbmk( aArgs, /* @ */ lPause, /* @ */ lUTF8 )
ENDIF
/* Merge user libs from command line and envvar. Command line has priority. */
hbmk[ _HBMK_aLIBUSER ] := ArrayAJoin( { hbmk[ _HBMK_aLIBUSER ], hbmk[ _HBMK_aLIBUSERGT ], ListToArray( PathSepToTarget( hbmk, GetEnv( "HB_USER_LIBS" ) ) ) } )
hbmk[ _HBMK_aLIBUSER ] := ArrayAJoin( { hbmk[ _HBMK_aLIBUSERGT ], hbmk[ _HBMK_aLIBUSER ], ListToArray( PathSepToTarget( hbmk, GetEnv( "HB_USER_LIBS" ) ) ) } )
DEFAULT hbmk[ _HBMK_lSHAREDDIST ] TO lSysLoc
@@ -1968,8 +1968,9 @@ FUNCTION hbmk( aArgs, /* @ */ lPause, /* @ */ lUTF8 )
/* Assemble library list */
IF ! Empty( hbmk[ _HBMK_cGT ] ) .AND. !( Lower( hbmk[ _HBMK_cGT ] ) == "gtnul" )
IF AScan( hbmk[ _HBMK_aLIBCOREGT ], {|tmp| Lower( tmp ) == Lower( hbmk[ _HBMK_cGT ] ) } ) == 0
AAdd( hbmk[ _HBMK_aLIBCOREGT ], hbmk[ _HBMK_cGT ] )
IF AScan( hbmk[ _HBMK_aLIBCOREGT ], {|tmp| Lower( tmp ) == Lower( hbmk[ _HBMK_cGT ] ) } ) == 0 .AND. ;
AScan( hbmk[ _HBMK_aLIBUSERGT ], {|tmp| Lower( tmp ) == Lower( hbmk[ _HBMK_cGT ] ) } ) == 0
AAdd( hbmk[ _HBMK_aLIBUSERGT ], hbmk[ _HBMK_cGT ] )
ENDIF
ENDIF