]> rtime.felk.cvut.cz Git - omk.git/blobdiff - snippets/linux.omk
Prevent GNU linker synthetic LOAD map statements to propagate to dependencies.
[omk.git] / snippets / linux.omk
index 657bc6558456f808dfd901b0df3cf04be25d4e34..2c3073dbe8c55b664ac27c60181729c6b6eef9f5 100644 (file)
 # OMK_CPPFLAGS    .. C preprocessor flags
 # LDFLAGS         .. linker flags for programs linking
 
+# Output variables:
+# OBJ_EXT - extension of object files
+# LIB_EXT - extension of library files
+# SOLIB_EXT - extension of dynamically linked libraries
+# LIB_PREF - prefix for library files
+# ASM_EXT - extension of assembler sources
+
 BUILD_DIR_NAME = _build
 COMPILED_DIR_NAME = _compiled
 ifndef GROUP_DIR_NAME
@@ -75,6 +82,11 @@ else
   SOLIB_PICFLAGS += -fpic
 endif
 
+OBJ_EXT = .o
+LIB_EXT = .a
+LIB_PREF = lib
+ASM_EXT = .S
+
 #vpath %.c $(SOURCES_DIR)
 #vpath %.cc $(SOURCES_DIR)
 #vpath %.cxx $(SOURCES_DIR)
@@ -232,7 +244,7 @@ $(2)/$(1)$(3): $(TARGET_OBJS)
        $(Q) $(if $(filter $(CXX_PATTERN),$(TARGET_SOURCES)),$$(CXX),$$(CC)) \
          $(TARGET_OBJS) $$($(1)_LIBS:%=-l%) $$(LOADLIBES) $$(OMK_LDFLAGS) $$(LDFLAGS) $$($(1)_LDFLAGS) -Wl,-rpath-link,$(USER_LIB_DIR) -Wl,-Map,$(USER_OBJS_DIR)/$(1).exe.map -o $$@
        @echo "$(2)/$(1)$(3): \\" >$(USER_OBJS_DIR)/$(1).exe.d
-       @$(SED4OMK) -n -e 's|^LOAD \(.*\)$$$$|  \1  \&|p' $(USER_OBJS_DIR)/$(1).exe.map|tr '&' '\134' | grep -v '^  linker stubs'  >>$(USER_OBJS_DIR)/$(1).exe.d
+       @$(SED4OMK) -n -e 's|^LOAD \(.*\)$$$$|  \1  \&|p' $(USER_OBJS_DIR)/$(1).exe.map|tr '&' '\134' | grep -v '^  linker [^ ]'  >>$(USER_OBJS_DIR)/$(1).exe.d
        @echo >>$(USER_OBJS_DIR)/$(1).exe.d
 
 binary-pass-local: $(2)/$(1)$(3)