2025-07-07 16:17 UTC+0200 Aleksander Czajczynski (hb fki.pl)

* config/win/clang.mk
    + add resource compiler detection chain to first stage,
      now harbour.exe binary should also have manifest resource
      compiled in when clang is used. Previously second stage rc
      calling was implemented only in hbmk2.

  * utils/hbmk2/hbmk2.prg
    ! fixed disappearing llvm-ar with fallback to ar, spotted
      in windows-ci/MSYS2
This commit is contained in:
Aleksander Czajczynski
2025-07-07 16:17:12 +02:00
parent b1b372ccc5
commit 0ff2885a66
3 changed files with 44 additions and 3 deletions

View File

@@ -50,11 +50,40 @@ LDLIBS := $(foreach lib,$(HB_USER_LIBS) $(LIBS) $(SYSLIBS),-l$(lib))
LDFLAGS += $(LIBPATHS)
AR := $(HB_CCPREFIX)llvm-ar
HB_AR_PATH := $(call find_in_path,$(HB_CCPREFIX)llvm-ar)
ifneq ($(HB_AR_PATH),)
AR := $(HB_CCPREFIX)llvm-ar
else
AR := $(HB_CCPREFIX)ar
endif
AR_RULE = ( $(AR) $(ARFLAGS) $(HB_AFLAGS) $(HB_USER_AFLAGS) rcs $(LIB_DIR)/$@ $(^F) $(ARSTRIP) ) || ( $(RM) $(subst /,$(DIRSEP),$(LIB_DIR)/$@) && $(FALSE) )
# TODO: add resource compiler detect chain in this stage: GNU windres, llvm-windres, llvm-rc
# order of resource compiler detect chain in this stage (hbmk2 uses similar):
# GNU windres, llvm-windres, llvm-rc
# non-GNU shown resource file encoding issues
RC_OUT := -o$(subst x,x, )
RCFLAGS += -I. -I$(HB_HOST_INC) -O coff
RES_EXT := .reso
HB_RC_PATH := $(call find_in_path,$(HB_CCPREFIX)windres)
ifneq ($(HB_RC_PATH),)
RC := $(HB_CCPREFIX)windres
else
HB_RC_PATH := $(call find_in_path,$(HB_CCPREFIX)llvm-windres)
ifneq ($(HB_RC_PATH),)
RC := $(HB_CCPREFIX)llvm-windres
else
HB_RC_PATH := $(call find_in_path,$(HB_CCPREFIX)llvm-rc)
ifneq ($(HB_RC_PATH),)
RC := $(HB_CCPREFIX)llvm-rc
RCFLAGS := /I. /I$(HB_HOST_INC) /C 1252
RC_OUT := /FO$(subst x,x, )
RES_EXT := .res
endif
endif
endif
DY := $(CC)
DFLAGS += -shared $(LIBPATHS)