Ignore:
Timestamp:
Jun 29, 2004, 7:30:14 PM (21 years ago)
Author:
bird
Message:

DLL

File:
1 edited

Legend:

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

    r129 r130  
    5858TOOL_GCC_LDFLAGS.debug      := -g
    5959TOOL_GCC_LDFLAGS.release    := -s
     60TOOL_GCC_LDFLAGS.dll.os2    := -Zdll
     61ifndef TOOL_GCC_LDFLAGS.$(BUILD_TARGET)
     62TOOL_GCC_LDFLAGS.dll        := -shared
     63else
     64TOOL_GCC_LDFLAGS.dll        := $(TOOL_GCC_LDFLAGS.$(BUILD_TARGET))
     65endif
    6066
    6167
     
    138144# @param        $(dirdep)   Directory creation dependency.
    139145# @param        $(deps)         Other dependencies.
    140 # @param        $(deffile)  Definition file. (optional, PC only)
     146# @param        $(othersrc) Unhandled sources.
    141147# @param        $(custom_pre)   Custom step invoked before linking.
    142148# @param        $(custom_post)  Custom step invoked after linking.
     
    158164endef
    159165
     166
     167## Link program
     168# @param    $(target)   Normalized main target name.
     169# @param    $(exe)              Program name.
     170# @param    $(objs)     Object files to link together.
     171# @param    $(libs)     Libraries to search.
     172# @param    $(libpath)  Library search paths.
     173# @param    $(flags)    Flags.
     174# @param        $(dirdep)   Directory creation dependency.
     175# @param        $(deps)         Other dependencies.
     176# @param        $(othersrc) Unhandled sources.
     177# @param        $(custom_pre)   Custom step invoked before linking.
     178# @param        $(custom_post)  Custom step invoked after linking.
     179#
     180# @param    $(outbase)  Output basename (full). Use this for list files and such.
     181define TOOL_GCC_LINK_DLL
     182#$ (warning dbg: TOOL_GCC_LINK_DLL: target=$(target) exe=$(exe) objs=$(objs) libs=$(libs) deps=$(deps) flags=$(flags) dirdep=$(dirdep) deffile=$(deffile) outbase=$(outbase))
     183$(exe): $(dirdep) $(objs) $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(deps)
     184        $(call MSG_L1,Creating Program $$@)
     185ifneq ($(custom_pre),)
     186        $(eval $(custom_pre))
     187endif   
     188        $(TOOL_GCC_LD) $(TOOL_GCC_LDFLAGS.dll) $(flags) -o $$@ $(objs) \
     189        $(foreach lib,$(libs), $(if $(findstring $(lib),$(subst /,x,$(lib))), -l$(patsubst lib%,%,$(basename $(lib))), $(lib)))
     190ifneq ($(custom_post),)
     191        $(eval $(custom_post))
     192endif   
     193       
     194endef
     195
Note: See TracChangeset for help on using the changeset viewer.