Files
harbour-core/harbour/Makefile
Przemyslaw Czerpak 23ee7ce5f0 2009-01-30 20:19 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/make_gcc.mak
    ! added additional rules to fix time conditions in parallel compilation

  * harbour/config/dos/dir.cf
  * harbour/config/w32/dir.cf
    * changed simple assignments to recursive ones

  * harbour/config/dir.cf
    + added support for dependencies between build directories for
      parallel execution. If compilation of dirX needs results of
      dirY and dirZ compilation then it hsould be declared as:
         dirX{dirY,dirZ}
    % process directories defined in DIRS simultaneously when -j<N>
      GNU make switch is used - it gives additional speed improvement
      on multi CPU machines

  * harbour/Makefile
  * harbour/source/Makefile
    * set directory dependencies for parallel compilation

   The parallel compilation can be enabled by using -j<n> GNU make
   switch on multiprocess platforms, f.e.:
      ./gnu_make.sh -j3
   It should give some speed improvement even on single CPU machines.
   These are results of clean Harbour compilation on my 3 phantom CPU
   computer:

      1. leaner compilation without -j<n>                6m29.895s
      2. parallel compilation with -j5 but without
         parallel directory processing                   3m20.163s
      3. parallel compilation with -j5 and with new
         parallel directory processing                   2m6.168s
2009-01-30 19:15:26 +00:00

50 lines
711 B
Makefile

#
# $Id$
#
ROOT = ./
ifeq ($(HB_HOST_BUILD),yes)
DIRS=\
source \
else
ifeq ($(HB_HOST_BUILD),lib)
HB_UTIL_DIR=
else
HB_UTIL_DIR=utils{source}
endif
DIRS=\
doc \
include \
source \
$(HB_UTIL_DIR) \
contrib{source} \
endif
ifeq ($(HB_POSTINST),)
ifneq ($(HB_ROOTPOSTINST),)
HB_POSTINST = $(HB_ROOTPOSTINST) $(HB_POSTINSTPARAM)
else
ifneq ($(SHLVL),)
HB_POSTINST = $(TOP)$(ROOT)bin/postinst.sh $(HB_POSTINSTPARAM)
else
ifeq ($(HB_ARCHITECTURE),dos)
HB_POSTINST = $(subst /,\,$(TOP)$(ROOT)bin/postinst.bat) $(HB_POSTINSTPARAM)
else
ifeq ($(HB_ARCHITECTURE),w32)
HB_POSTINST = $(subst /,\,$(TOP)$(ROOT)bin/postinst.bat) $(HB_POSTINSTPARAM)
endif
endif
endif
endif
endif
include $(ROOT)config/dir.cf