2010-05-29 15:30 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)

* INSTALL
  * config/global.mk
    + Added support for configurations where PATH contains the same
      compiler multiple times. (and all similar cases when a files
      is looked for in a list of possible dirs). From now on only
      the first one will be extracted. Dirs can still contain spaces.

      Such configurations started to appear like mushrooms just
      recently. Maybe it's something seasonal. Anyhow I'd suggest
      to fix such configurations, since it may cause misc problems,
      outside the real of Harbour. So the INSTALL is still not
      lying:
         Keep only one compiler in PATH at any time, and especially
         don't keep the same C compiler multiple times in PATH, and
         especially not two different versions of the same C compiler.

      If you're is interested in GNU Make black magic for some (pervert)
      reason, you may want to take a closer look at the implementation.
This commit is contained in:
Viktor Szakats
2010-05-29 13:33:24 +00:00
parent 05db043943
commit 930a32a368
3 changed files with 26 additions and 5 deletions

View File

@@ -17,6 +17,26 @@
past entries belonging to author(s): Viktor Szakats.
*/
2010-05-29 15:30 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* INSTALL
* config/global.mk
+ Added support for configurations where PATH contains the same
compiler multiple times. (and all similar cases when a files
is looked for in a list of possible dirs). From now on only
the first one will be extracted. Dirs can still contain spaces.
Such configurations started to appear like mushrooms just
recently. Maybe it's something seasonal. Anyhow I'd suggest
to fix such configurations, since it may cause misc problems,
outside the real of Harbour. So the INSTALL is still not
lying:
Keep only one compiler in PATH at any time, and especially
don't keep the same C compiler multiple times in PATH, and
especially not two different versions of the same C compiler.
If you're is interested in GNU Make black magic for some (pervert)
reason, you may want to take a closer look at the implementation.
2010-05-29 10:29 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/hbwin/olecore.c
! fixed old bug in passing parameters by reference to OLE objects

View File

@@ -36,8 +36,9 @@ HARBOUR
(in PATH). Refer to your C compiler installation and setup
instructions for details. It's recommended to make sure no tools
in your PATH belonging to other C compilers are interfering with
your setup. Also make sure not to have duplicate entries for
your C compiler in PATH. For the list of supported compilers,
your setup. It's also highly discouraged to keep multiple copies
of the same compiler, or different versions of the same compiler
in PATH at the same time. For the list of supported compilers,
please look up the relevant section in this document.
3.) You need to get GNU Make. We recommend this link:
http://sourceforge.net/projects/mingw/files/MinGW%20make/make-3.81-20090914-mingw32/make-3.81-20090914-mingw32-bin.tar.gz/download

View File

@@ -56,9 +56,9 @@ ifeq ($(filter $(_make_ver_min),$(firstword $(sort $(MAKE_VERSION) $(_make_ver_m
$(error ! Error: GNU Make version $(MAKE_VERSION) found, $(_make_ver_min) or upper needed for Harbour)
endif
find_in_path = $(strip $(foreach dir, $(subst $(PTHSEP), ,$(subst $(subst x, ,x),$(substpat),$(PATH))), $(wildcard $(subst //,/,$(subst $(substpat),\ ,$(subst \,/,$(dir)))/$(1))$(HB_HOST_BIN_EXT))))
find_in_path_par = $(strip $(foreach dir, $(subst $(PTHSEP), ,$(subst $(subst x, ,x),$(substpat),$(2))), $(wildcard $(subst //,/,$(subst $(substpat),\ ,$(subst \,/,$(dir)))/$(1))$(HB_HOST_BIN_EXT))))
find_in_path_raw = $(strip $(foreach dir, $(subst $(PTHSEP), ,$(subst $(subst x, ,x),$(substpat),$(2))), $(wildcard $(subst //,/,$(subst $(substpat),\ ,$(subst \,/,$(dir)))/$(1)))))
find_in_path = $(strip $(subst $(substpat), ,$(firstword $(subst |, ,$(subst $(subst x, ,x),$(substpat),$(filter-out |,$(foreach dir, $(subst $(PTHSEP), ,$(subst $(subst x, ,x),$(substpat),$(PATH))),|$(wildcard $(subst //,/,$(subst $(substpat),\ ,$(subst \,/,$(dir)))/$(1))$(HB_HOST_BIN_EXT)))))))))
find_in_path_par = $(strip $(subst $(substpat), ,$(firstword $(subst |, ,$(subst $(subst x, ,x),$(substpat),$(filter-out |,$(foreach dir, $(subst $(PTHSEP), ,$(subst $(subst x, ,x),$(substpat),$(2))),|$(wildcard $(subst //,/,$(subst $(substpat),\ ,$(subst \,/,$(dir)))/$(1))$(HB_HOST_BIN_EXT)))))))))
find_in_path_raw = $(strip $(subst $(substpat), ,$(firstword $(subst |, ,$(subst $(subst x, ,x),$(substpat),$(filter-out |,$(foreach dir, $(subst $(PTHSEP), ,$(subst $(subst x, ,x),$(substpat),$(2))),|$(wildcard $(subst //,/,$(subst $(substpat),\ ,$(subst \,/,$(dir)))/$(1))))))))))
define detect_watcom_platform
ifneq ($(call find_in_path_raw,os2.h,$(INCLUDE)),)