Changeset 844 in kBuild
- Timestamp:
- Feb 4, 2007 2:17:25 PM (18 years ago)
- Location:
- trunk/kBuild
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/kBuild/header.kmk
r830 r844 795 795 # @param 3 The link tool operation (LINK_LIBRARY,LINK_PROGRAM,LINK_DLL,LINK_SYSMOD,++). 796 796 MSG_LINK ?= $(call MSG_L1,Linking $1,=> $2) 797 ## Merging a library into the target (during library linking). 798 # @param 1 Target name. 799 # @param 2 The output library name. 800 # @param 3 The input library name. 801 MSG_AR_MERGE ?= $(call MSG_L1,Merging $2 into $1, ($2)) 797 802 ## Creating a directory (build). 798 803 # @param 1 Directory name. -
trunk/kBuild/msgstyles/brief.kmk
r819 r844 71 71 # @param 3 The link tool operation (LINK_LIBRARY,LINK_PROGRAM,LINK_DLL,LINK_SYSMOD,++). 72 72 MSG_LINK ?= $(call MSG_L1,$(if $(eq $3,LINK_LIBRARY),AR,LD) $1,=> $2) 73 ## Merging a library into the target (during library linking). 74 # @param 1 Target name. 75 # @param 2 The output library name. 76 # @param 3 The input library name. 77 MSG_AR_MERGE ?= $(NO_SUCH_VARIABLE) 73 78 ## Creating a directory (build). 74 79 # @param 1 Directory name. -
trunk/kBuild/tools/GCC4MACHO.kmk
r819 r844 31 31 TOOL_GCC4MACHO_CXX ?= g++$(HOSTSUFF_EXE) 32 32 TOOL_GCC4MACHO_AS ?= gcc$(HOSTSUFF_EXE) 33 TOOL_GCC4MACHO_AR_IMP ?= $(ECHO) not supported! 34 TOOL_GCC4MACHO_LD ?= g++$(HOSTSUFF_EXE) 33 TOOL_GCC4MACHO_LD ?= g++$(HOSTSUFF_EXE) 35 34 TOOL_GCC4MACHO_LD_SYSMOD ?= g++$(HOSTSUFF_EXE) 36 35 ifndef TOOL_GCC4MACHO_LDFLAGS.$(BUILD_TARGET) … … 41 40 TOOL_GCC4MACHO_LDFLAGS.sysmod ?= -r 42 41 #TOOL_GCC4MACHO_LD_SONAME = -Wl,-dylib_install_name $(firstword $($(1)_SONAME.$(BUILD_TARGET).$(BUILD_TYPE)) $($(1)_SONAME.$(BUILD_TARGET)) $($(1)_SONAME.$(BUILD_TYPE)) $($(1)_SONAME) $(notdir $(2))) 43 TOOL_GCC4MACHO_LD_MAP ?=44 TOOL_GCC4MACHO_LD_SYSMOD_MAP ?=45 42 46 43 ifdef SLKRUNS … … 168 165 TOOL_GCC4MACHO_LINK_LIBRARY_DEPORD = 169 166 define TOOL_GCC4MACHO_LINK_LIBRARY_CMDS 170 $(QUIET)$(TOOL_GCC4MACHO_AR) $(flags) $(out) $(objs) $(othersrc) 167 $(call xargs,$(QUIET)$(TOOL_GCC4MACHO_AR) $(flags) $(out),$(objs)) 168 $(foreach lib,$(othersrc)\ 169 ,$(NL)$(TAB)$(call MSG_AR_MERGE,$(target),$(out),$(lib)) \ 170 $(NL)$(TAB)$(QUIET)$(RM_EXT) -f $(dir $(outbase))ar.tmp.dir/* \ 171 $(NL)$(TAB)$(QUIET)$(MKDIR) -p $(dir $(outbase))/ar.tmp.dir/ \ 172 $(NL)$(TAB)$(QUIET)(cd $(dir $(outbase))ar.tmp.dir/ \ 173 && $(TOOL_GCC4MACHO_AR) -x $(abspath $(lib)) \ 174 && $(TOOL_GCC4MACHO_AR) $(flags) $(out) *) \ 175 $(NL)$(TAB)$(QUIET)$(RM_EXT) -f $(dir $(outbase))/ar.tmp.dir/* \ 176 $(NL)$(TAB)$(QUIET)$(RMDIR) $(dir $(outbase))ar.tmp.dir/) 171 177 endef 172 178 … … 185 191 # @param $(custom_post) Custom step invoked after linking. 186 192 # @param $(outbase) Output basename (full). Use this for list files and such. 187 TOOL_GCC4MACHO_LINK_PROGRAM_OUTPUT = $(outbase).map 193 TOOL_GCC4MACHO_LINK_PROGRAM_OUTPUT = $(outbase).map $(outbase).rsp 188 194 TOOL_GCC4MACHO_LINK_PROGRAM_DEPEND = $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) 189 195 TOOL_GCC4MACHO_LINK_PROGRAM_DEPORD = 190 196 define TOOL_GCC4MACHO_LINK_PROGRAM_CMDS 191 $(QUIET)$(TOOL_GCC4MACHO_LD) $(flags) -o $(out) $(objs)\ 197 $(QUIET)$(APPEND) -n $(outbase).rsp $(objs) 198 $(QUIET)$(TOOL_GCC4MACHO_LD) $(flags) -o $(out)\ 199 -filelist $(outbase).rsp\ 192 200 $(foreach p,$(libpath), -L$(p))\ 193 $(foreach lib,$(libs), $(if $(findstring $(lib),$(subst /,x,$(lib))), -l$(patsubst lib%,%,$(basename $(lib))), $(lib)))\ 194 $(call TOOL_GCC4MACHO_LD_MAP,$(outbase).map) 201 $(foreach lib,$(libs), $(if $(findstring $(lib),$(subst /,x,$(lib))), -l$(patsubst lib%,%,$(basename $(lib))), $(lib))) 195 202 endef 196 203 … … 209 216 # @param $(custom_post) Custom step invoked after linking. 210 217 # @param $(outbase) Output basename (full). Use this for list files and such. 211 TOOL_GCC4MACHO_LINK_DLL_OUTPUT = $(outbase). map218 TOOL_GCC4MACHO_LINK_DLL_OUTPUT = $(outbase).rsp 212 219 TOOL_GCC4MACHO_LINK_DLL_DEPEND = $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) 213 220 TOOL_GCC4MACHO_LINK_DLL_DEPORD = 214 221 define TOOL_GCC4MACHO_LINK_DLL_CMDS 222 $(QUIET)$(APPEND) -n $(outbase).rsp $(objs) 215 223 $(QUIET)$(TOOL_GCC4MACHO_LD) $(TOOL_GCC4MACHO_LDFLAGS.dll) $(flags) -o $(out)\ 216 $( if $(filter-out win32 os2, $(BUILD_TARGET)),$(call TOOL_GCC4MACHO_LD_SONAME,$(target),$(out)))\217 $(objs)\224 $(call TOOL_GCC4MACHO_LD_SONAME,$(target),$(out))\ 225 -filelist $(outbase).rsp\ 218 226 $(foreach p,$(libpath), -L$(p))\ 219 $(foreach lib,$(libs), $(if $(findstring $(lib),$(subst /,x,$(lib))), -l$(patsubst lib%,%,$(basename $(lib))), $(lib)))\ 220 $(call TOOL_GCC4MACHO_LD_MAP,$(outbase).map) 227 $(foreach lib,$(libs), $(if $(findstring $(lib),$(subst /,x,$(lib))), -l$(patsubst lib%,%,$(basename $(lib))), $(lib))) 221 228 endef 222 229 … … 235 242 # @param $(custom_post) Custom step invoked after linking. 236 243 # @param $(outbase) Output basename (full). Use this for list files and such. 237 TOOL_GCC4MACHO_LINK_SYSMOD_OUTPUT = $(outbase). map244 TOOL_GCC4MACHO_LINK_SYSMOD_OUTPUT = $(outbase).rsp 238 245 TOOL_GCC4MACHO_LINK_SYSMOD_DEPEND = $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) 239 246 TOOL_GCC4MACHO_LINK_SYSMOD_DEPORD = 240 247 define TOOL_GCC4MACHO_LINK_SYSMOD_CMDS 241 $(QUIET)$(TOOL_GCC4MACHO_LD_SYSMOD) $(TOOL_GCC4MACHO_LDFLAGS.sysmod) $(flags) -o $(out) $(objs)\ 248 $(QUIET)$(APPEND) -n $(outbase).rsp $(objs) 249 $(QUIET)$(TOOL_GCC4MACHO_LD_SYSMOD) $(TOOL_GCC4MACHO_LDFLAGS.sysmod) $(flags) -o $(out)\ 250 -filelist $(outbase).rsp\ 242 251 $(foreach p,$(libpath), -L$(p))\ 243 $(foreach lib,$(libs), $(if $(findstring $(lib),$(subst /,x,$(lib))), -l$(patsubst lib%,%,$(basename $(lib))), $(lib)))\ 244 $(call TOOL_GCC4MACHO_LD_SYSMOD_MAP,$(outbase).map) 245 endef 246 252 $(foreach lib,$(libs), $(if $(findstring $(lib),$(subst /,x,$(lib))), -l$(patsubst lib%,%,$(basename $(lib))), $(lib))) 253 endef 254
Note:
See TracChangeset
for help on using the changeset viewer.