Files
harbour-core/harbour/source/dynlib/Makefile
Viktor Szakats 68ebf06051 2009-08-21 19:54 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/dynlib/mt/Makefile
   * source/dynlib/Makefile
     + Added 'install' logic for dynamic lib implibs.

   * config/global.mk
     + Added useful GNU Make link.
     ! Added HB_HOST_CPU "detection" for os2 and dos to avoid
       situation where cross-build is detected due to different
       to HB_CPU value. (HB_CPU autodetection for os2 dos was
       added yesterday). It's quite theoretical, as os2 dos
       has CPU type set to constant 'x86'.
     + Added IMP_DIR value. This hold where to store implibs
       for dynamic libs. Empty if platform don't need implibs
       (huge relief BTW). For *nix this value is set empty, for
       non-*nix it's set to LIB_DIR.
     + Added initialization for DYN_PREF (to empty).

   * config/dyn.mk
     + Added handling of IMP_DIR, IMP_FILE.
     ! Dyn lib build rule guarded with HB_BUILD_DLL and DY_RULE
       checks.

   * config/globsh.mk
     + Added dirbase and clean rules for implibs.
     ! Fixed using OS version of dirs in $(wildcard) for nt
       clean rules for OBJ_DIR and PKG_DIR.

   * config/wce/mingwarm.mk
   * config/wce/poccarm.mk
   * config/wce/msvcarm.mk
   * config/win/xcc.mk
   * config/win/mingw.mk
   * config/win/pocc.mk
   * config/win/bcc.mk
   * config/win/watcom.mk
   * config/win/icc.mk
   * config/win/cygwin.mk
   * config/win/msvc.mk
     + Dynamic lib rules extended to generate implib in IMP_DIR.
       This goes smoothly with all compiler except bcc, which requires
       a copy and a delete to move the implib to lib dir. 'move'
       doesn't work (says 'command not found' or equivalent and
       requires '$(COMSPEC) /C' with GNU Make + nt shell), so I
       didn't use it finally. Anyhow bcc implib is small.

  * config/globsh.mk
    - Deleted $(MV) variable with move command.
      (problematic under nt shells)

  - config/dj-mv.exe
  * config/readme.txt
    - Deleted DJGPP mv tool.

   ; NOTE: dynamic library handling seems to be about feature complete.
2009-08-21 17:55:52 +00:00

39 lines
781 B
Makefile

#
# $Id$
#
ROOT := ../../
include $(TOP)$(ROOT)config/global.mk
ifneq ($(DYNDIRLIST_BASE),)
ifneq ($(HB_ARCHITECTURE),dos)
DYNDIRLIST := $(DYNDIRLIST_BASE) source/vm
DYNNAME := harbour$(DYNNAME_POST)
DIRS := mt
include $(TOP)$(ROOT)config/dyn.mk
include $(TOP)$(ROOT)config/dir.mk
INSTALL_RULE_LIBRARIES := $(INSTALL_RULE)
ifneq ($(HB_LIB_INSTALL),)
INSTALL_FILES := $(IMP_FILE)
INSTALL_DIR := $(HB_LIB_INSTALL)
HB_INSTALL_DEF := yes
include $(TOP)$(ROOT)config/install.mk
endif
install::
$(INSTALL_RULE_LIBRARIES)
else
include $(TOP)$(ROOT)config/none.mk
endif
else
$(warning ! Warning: Please run make from one level up)
include $(TOP)$(ROOT)config/none.mk
endif