]> rtime.felk.cvut.cz Git - omk.git/commitdiff
Fixed lib_obj_SOURCES handling (in sysless).
authorMichal Sojka <sojkam1@fel.cvut.cz>
Thu, 3 Aug 2006 19:05:00 +0000 (19:05 +0000)
committerMichal Sojka <sojkam1@fel.cvut.cz>
Thu, 3 Aug 2006 19:05:00 +0000 (19:05 +0000)
darcs-hash:20060803190502-f2ef6-a95bf76ad34d1e5f65ebab1fc2f8c4a4e70e9eae.gz

snippets/gcc
snippets/keil16x
snippets/sysless

index 1ed40121bbec31f331a1af39ad82174b1d93e267..a296e632eb23d7f1f89f714010072f82c451c5f9 100644 (file)
@@ -83,9 +83,6 @@ else
 CC_DEPFLAGS = -MT $$@ -MD -MP -MF "$$@.d.tmp"
 endif
 
-# lib_obj_SOURCES handling
-$(LIB_DIR)/%.o: %.o
-       @cp $$(CP_FLAGS) $$< $$@
 endef # COMPILER_DEFS_template
 
 
@@ -214,18 +211,6 @@ $(LIB_DIR)/lib$(1).so: $$($(1)_OBJSLO)
        $(Q) $(LD) --shared --soname=lib$(1).so -o $$@ $$^
 endef
 
-
-# lib_obj_SOURCES handling
-lib_OBJS = $(addsuffix .o,$(basename $(lib_obj_SOURCES)))
-SOURCES += $(filter-out %.o,$(lib_obj_SOURCES))
-#$(warning lib_OBJS = $(lib_OBJS))
-
-# # Syntax: $(call LIBOBJ_template,<object-name>)
-# define LIBOBJ_template
-# $(LIB_DIR)/$(1): $(1)
-#      @cp $(CP_FLAGS) $$< $$@
-# endef
-
 # Local Variables:
 # mode:makefile
 # End:
index caecb334a2e6d0503fd387635311b0569303344e..7cede5a0a3b0113d96a2bf4837cb47c996bf2cf6 100644 (file)
@@ -35,10 +35,6 @@ c_o_COMPILE = $$(CC) #$$(DEFS) $$(AM_CPPFLAGS)
 
 cc_o_COMPILE = $$(CXX) #$$(DEFS) $$(AM_CPPFLAGS) 
 
-# lib_obj_SOURCES handling
-$$(LIB_DIR)/%.$$(OBJ_EXT): %.$$(OBJ_EXT)
-       @cp $$$$(CP_FLAGS) $$$$< $$$$@
-
 endef # COMPILER_DEFS_template
 
 # Syntax: $(call COMPILE_c_o_template,<source>,<target>,<additional c-flags>)
index b392751d8bcdfe50fa9362556be214a655a4ba3d..e848b789c8ec3c6de485f59e29de803cfdc7fdfd 100644 (file)
@@ -68,9 +68,20 @@ $(foreach prog,$(bin_PROGRAMS),$(eval $(call PROGRAM_template,$(prog),$(USER_BIN
 endif
 
 $(foreach lib,$(lib_LIBRARIES),$(eval $(call LIBRARY_template,$(lib))))
-#$(foreach src,$(lib_obj_SOURCES),$(eval $(call LIBOBJ_template,$(addsuffix .o,$(basename $(src)))))) # FIXME: This can't work LIBOBJ_template is not defined
+$(foreach src,$(lib_obj_SOURCES),$(eval $(call LIBOBJ_template,$(addsuffix $(OBJ_EXT),$(basename $(src))))))
 $(foreach lib,$(shared_LIBRARIES),$(eval $(call SOLIB_template,$(lib))))
 
+
+# lib_obj_SOURCES handling
+lib_OBJS = $(addsuffix $(OBJ_EXT),$(basename $(lib_obj_SOURCES)))
+#$(warning lib_OBJS = $(lib_OBJS))
+SOURCES += $(filter-out %$(OBJ_EXT),$(lib_obj_SOURCES))
+
+$(LIB_DIR)/%$(OBJ_EXT): %$(OBJ_EXT)
+       @echo "  CP      $(^:$(MAKERULES_DIR)/%=%) -> $(@:$(MAKERULES_DIR)/%=%)"
+       $(Q)cp $(CP_FLAGS) $< $@
+
+
 # User-space static libraries and applications object files
 SOURCES := $(sort $(SOURCES))
 #$(warning SOURCES = $(SOURCES))
@@ -193,7 +204,7 @@ run: run-$(firstword $(link_VARIANTS))
 OTHER_PASSES = dep clean install
 
 $(eval $(call omk_pass_template, include-pass, $(LOCAL_BUILD_DIR),,$(include_HEADERS)$(nobase_include_HEADERS)$(renamed_include_HEADERS)$(lib_LDSCRIPTS)$(config_include_HEADERS)))
-$(eval $(call omk_pass_template, library-pass, $(LOCAL_BUILD_DIR),TARGET_RULE_TEMPLATES=y,$(lib_LIBRARIES)$(shared_LIBRARIES)$(lib_OBJS)))
+$(eval $(call omk_pass_template, library-pass, $(LOCAL_BUILD_DIR),TARGET_RULE_TEMPLATES=y,$(lib_LIBRARIES)$(shared_LIBRARIES)$(lib_obj_SOURCES)))
 $(eval $(call omk_pass_template, binary-pass,  $(LOCAL_BUILD_DIR),TARGET_RULE_TEMPLATES=y,$(bin_PROGRAMS)))
 $(eval $(call omk_pass_template, utils-pass,   $(LOCAL_BUILD_DIR),HOST_RULE_TEMPLATES=y,$(utils_PROGRAMS)))