From: Michal Sojka Date: Mon, 8 Dec 2008 18:47:25 +0000 (+0100) Subject: Merge branch 'master' into devel X-Git-Url: http://rtime.felk.cvut.cz/gitweb/omk.git/commitdiff_plain/3c97e82a1c4dd60060c44b926cd1610311222c09 Merge branch 'master' into devel Conflicts: snippets/linux --- 3c97e82a1c4dd60060c44b926cd1610311222c09 diff --cc snippets/linux index 09f4ad1,336e035..2be4bea --- a/snippets/linux +++ b/snippets/linux @@@ -399,30 -390,12 +399,30 @@@ $(USER_LIB_DIR)/lib$(1).$(SOLIB_EXT): $ $(Q)$(CC) --shared -Xlinker -soname=lib$(1).$(SOLIB_EXT) -o $$@ $$($(1)_objslo) $$(LOADLIBES) $$($(1)_libs:%=-l%) endef --include $(shell true; find $(USER_BUILD_DIR) -name 'lib*.omkvar') # `true' is a hack for MinGW +# Syntax: $(call program_link_template,,) +define program_link_template +$(2)/$(1)$(EXE_SUFFIX): dir=$(LINK_BUILD_DIR)/$$(notdir $(2)) +$(2)/$(1)$(EXE_SUFFIX): $$($(1)_objs) + @$(QUIET_CMD_ECHO) " LINK $$@" + $(Q) $$($(1)_linker) \ + $$($(1)_objs) $$($(1)_libs:%=-l%) $$(LOADLIBES) $$(LDFLAGS) -Wl,-Map,$$(dir)/$(1).exe.map -o $$@ + @echo "$$@: \\" >$$(dir)/$(1).exe.d + @sed -n -e 's|^LOAD \(.*\)$$$$| \1 \&|p' $$(dir)/$(1).exe.map|tr '&' '\134' >>$$(dir)/$(1).exe.d + @echo >>$$(dir)/$(1).exe.d +endef + - -include $(shell find $(USER_BUILD_DIR) -name '*.omkvar') ++-include $(shell true; find $(USER_BUILD_DIR) -name '*.omkvar') # `true' is a hack for MinGW #$(warning $(shared_libs)) $(foreach lib,$(shared_libs),$(eval $(call solib_link_template,$(lib)))) +$(foreach prg,$(bin_programs),$(eval $(call program_link_template,$(prg),$(USER_BIN_DIR)))) +$(foreach prg,$(utils_programs),$(eval $(call program_link_template,$(prg),$(USER_UTILS_DIR)))) +$(foreach prg,$(test_programs),$(eval $(call program_link_template,$(prg),$(USER_TESTS_DIR)))) -.PHONY: link-shared-libs -link-shared-libs: $(shared_libs:%=$(USER_LIB_DIR)/lib%.$(SOLIB_EXT)) +.PHONY: link-pseudo-pass +link-pseudo-pass: $(shared_libs:%=$(USER_LIB_DIR)/lib%.$(SOLIB_EXT)) \ + $(bin_programs:%=$(USER_BIN_DIR)/%$(EXE_SUFFIX)) \ + $(utils_programs:%=$(USER_UTILS_DIR)/%$(EXE_SUFFIX)) \ + $(tests_programs:%=$(USER_TESTS_DIR)/%$(EXE_SUFFIX)) endif # link-shared-libs #=====================================================================