Changeset 2776


Ignore:
Timestamp:
Feb 3, 2015, 9:38:12 PM (10 years ago)
Author:
bird
Message:

GCC3OMF,GXX3OMF: Added RC compiler (most OS/2 systems have rc.exe installed).

Location:
trunk/kBuild/tools
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/kBuild/tools/GCC3OMF.kmk

    r2775 r2776  
    5050TOOL_GCC3OMF_LD_MAP ?= -Zmap=$(1)
    5151TOOL_GCC3OMF_LD_SYSMOD_MAP ?= -Zmap=$(1)
     52TOOL_GCC3OMF_RC = rc$(HOSTSUFF_EXE)
    5253
    5354ifdef SLKRUNS
     
    7879TOOL_GCC3OMF_ASFLAGS.profile  ?= -g
    7980TOOL_GCC3OMF_ASOBJSUFF        ?= .obj
     81
     82TOOL_GCC3OMF_RCOBJSUFF        ?= .res
     83TOOL_GCC3OMF_RCFLAGS          ?= -n
     84TOOL_GCC3OMF_RCINCS           ?= $(shell $(TOOL_GCC3OMF_CXX) -E -x c++ - 2>&1 < /dev/null \
     85        | $(SED_EXT) -e "/search starts here/,/[Ee]nd of search list/!d" -e "/^ /!d")
    8086
    8187TOOL_GCC3OMF_ARFLAGS          ?= cr
     
    203209
    204210
     211## Compile resource source.
     212# @param    $(target)   Normalized main target name.
     213# @param    $(source)   Source filename (relative).
     214# @param    $(obj)      Object file name. This shall be (re)created by the compilation.
     215# @param    $(dep)      Dependcy file. This shall be (re)created by the compilation.
     216# @param    $(flags)    Flags.
     217# @param    $(defs)     Definitions. No -D or something.
     218# @param    $(incs)     Includes. No -I or something.
     219# @param    $(dirdep)   Directory creation dependency.
     220# @param    $(deps)     Other dependencies.
     221#
     222# @param    $(outbase)  Output basename (full). Use this for list files and such.
     223# @param    $(objsuff)  Object suffix.
     224TOOL_GCC3OMF_COMPILE_RC_OUTPUT =
     225TOOL_GCC3OMF_COMPILE_RC_DEPEND =
     226TOOL_GCC3OMF_COMPILE_RC_DEPORD =
     227define TOOL_GCC3OMF_COMPILE_RC_CMDS
     228        $(QUIET)$(REDIRECT) -E 'INCLUDE=' -- $(TOOL_GCC3OMF_RC) -r \
     229                $(flags) $(addprefix -i, $(subst /,\\,$(subst /@unixroot,$(UNIXROOT),$(incs)))) $(addprefix -d, $(defs))\
     230                $(subst /,\\,$(abspath $(source))) \
     231                $(obj)
     232endef
    205233## Link library
    206234# @param    $(target)   Normalized main target name.
  • trunk/kBuild/tools/GXX3OMF.kmk

    r2775 r2776  
    5050TOOL_GXX3OMF_LD_MAP ?= -Zmap=$(1)
    5151TOOL_GXX3OMF_LD_SYSMOD_MAP ?= -Zmap=$(1)
     52TOOL_GXX3OMF_RC = rc$(HOSTSUFF_EXE)
    5253
    5354ifdef SLKRUNS
     
    7879TOOL_GXX3OMF_ASFLAGS.profile  ?= -g
    7980TOOL_GXX3OMF_ASOBJSUFF        ?= .obj
     81
     82TOOL_GXX3OMF_RCOBJSUFF        ?= .res
     83TOOL_GXX3OMF_RCFLAGS          ?= -n
     84TOOL_GXX3OMF_RCINCS           ?= $(shell $(TOOL_GXX3OMF_CXX) -E -x c++ - 2>&1 < /dev/null \
     85        | $(SED_EXT) -e "/search starts here/,/[Ee]nd of search list/!d" -e "/^ /!d")
    8086
    8187TOOL_GXX3OMF_ARFLAGS          ?= cr
     
    200206                $(abspath $(source))
    201207        $(QUIET)$(APPEND) -n "$(dep)" "" "$(source):" ""
     208endef
     209
     210
     211## Compile resource source.
     212# @param    $(target)   Normalized main target name.
     213# @param    $(source)   Source filename (relative).
     214# @param    $(obj)      Object file name. This shall be (re)created by the compilation.
     215# @param    $(dep)      Dependcy file. This shall be (re)created by the compilation.
     216# @param    $(flags)    Flags.
     217# @param    $(defs)     Definitions. No -D or something.
     218# @param    $(incs)     Includes. No -I or something.
     219# @param    $(dirdep)   Directory creation dependency.
     220# @param    $(deps)     Other dependencies.
     221#
     222# @param    $(outbase)  Output basename (full). Use this for list files and such.
     223# @param    $(objsuff)  Object suffix.
     224TOOL_GXX3OMF_COMPILE_RC_OUTPUT =
     225TOOL_GXX3OMF_COMPILE_RC_DEPEND =
     226TOOL_GXX3OMF_COMPILE_RC_DEPORD =
     227define TOOL_GXX3OMF_COMPILE_RC_CMDS
     228        $(QUIET)$(REDIRECT) -E 'INCLUDE=' -- $(TOOL_GXX3OMF_RC) -r \
     229                $(flags) $(addprefix -i, $(subst /,\\,$(subst /@unixroot,$(UNIXROOT),$(incs)))) $(addprefix -d, $(defs))\
     230                $(subst /,\\,$(abspath $(source))) \
     231                $(obj)
    202232endef
    203233
Note: See TracChangeset for help on using the changeset viewer.