summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile16
-rw-r--r--src/lib/gnat/Makefile.inc2
-rw-r--r--toolchain.inc3
3 files changed, 14 insertions, 7 deletions
diff --git a/Makefile b/Makefile
index 4ad0177420..329eaeb2c9 100644
--- a/Makefile
+++ b/Makefile
@@ -308,13 +308,19 @@ define create_cc_template
# $4 additional dependencies
ifn$(EMPTY)def $(1)-objs_$(2)_template
de$(EMPTY)fine $(1)-objs_$(2)_template
+ifn$(EMPTY)eq ($(filter ads adb,$(2)),)
$$(call src-to-obj,$1,$$(1).$2): $$(1).$2 $$(call create_ada_deps,$1,$$(call src-to-ali,$1,$$(1).$2)) $(KCONFIG_AUTOHEADER) $(4)
+ @printf " GCC $$$$(subst $$$$(obj)/,,$$$$(@))\n"
+ $(GCC_$(1)) \
+ $$$$(ADAFLAGS_$(1)) $$$$(addprefix -I,$$$$($(1)-ada-dirs)) \
+ $(3) -c -o $$$$@ $$$$<
+el$(EMPTY)se
+$$(call src-to-obj,$1,$$(1).$2): $$(1).$2 $(KCONFIG_AUTOHEADER) $(4)
@printf " CC $$$$(subst $$$$(obj)/,,$$$$(@))\n"
$(CC_$(1)) \
- $$(if $$(filter-out ads adb,$(2)), \
- -MMD $$$$(CPPFLAGS_$(1)) $$$$(CFLAGS_$(1)) -MT $$$$(@), \
- $$$$(ADAFLAGS_$(1)) $$$$(addprefix -I,$$$$($(1)-ada-dirs))) \
+ -MMD $$$$(CPPFLAGS_$(1)) $$$$(CFLAGS_$(1)) -MT $$$$(@) \
$(3) -c -o $$$$@ $$$$<
+end$(EMPTY)if
en$(EMPTY)def
end$(EMPTY)if
endef
@@ -345,8 +351,8 @@ $$(obj)/$(1)/b__$(1).adb: $$$$(filter-out $$(obj)/$(1)/b__$(1).ali,$$$$($(1)-ali
-L$(1)_ada -o $$(notdir $$@) \
$$(subst $$(dir $$@),,$$^)
$$(obj)/$(1)/b__$(1).o: $$(obj)/$(1)/b__$(1).adb
- @printf " CC $$(subst $$(obj)/,,$$@)\n"
- $(CC_$(1)) $$(ADAFLAGS_$(1)) -c -o $$@ $$<
+ @printf " GCC $$(subst $$(obj)/,,$$@)\n"
+ $(GCC_$(1)) $$(ADAFLAGS_$(1)) -c -o $$@ $$<
$(1)-objs += $$(obj)/$(1)/b__$(1).o
$($(1)-alis): %.ali: %.o ;
endef
diff --git a/src/lib/gnat/Makefile.inc b/src/lib/gnat/Makefile.inc
index 5c4c510f7e..3f22c0e8e1 100644
--- a/src/lib/gnat/Makefile.inc
+++ b/src/lib/gnat/Makefile.inc
@@ -24,7 +24,7 @@ ADAFLAGS_libgnat-$(1) := \
-gnatg \
-gnatpg \
-I$$(src)/lib/gnat/ \
- $$(CFLAGS_$(1)) \
+ $$(GCC_CFLAGS_$(1)) \
libgnat-$(1)-y += a-unccon.ads
libgnat-$(1)-y += ada.ads
diff --git a/toolchain.inc b/toolchain.inc
index 936eb14c7f..f8ee87578e 100644
--- a/toolchain.inc
+++ b/toolchain.inc
@@ -120,6 +120,7 @@ define create_class_compiler
$(if $(2),,$(warning *** The toolchain architecture for $(1) is unknown.) \
$(error Check your .config file for CONFIG_ARCH_$(1)_* settings))
CC_$(1) := $(CC_$(2))
+GCC_$(1) := $(GCC_CC_$(2))
LD_$(1) := $(LD_$(2))
NM_$(1) := $(NM_$(2))
AR_$(1) := $(AR_$(2))
@@ -129,7 +130,7 @@ OBJDUMP_$(1) := $(OBJDUMP_$(2))
STRIP_$(1) := $(STRIP_$(2))
READELF_$(1) := $(READELF_$(2))
CFLAGS_$(1) = $$(CFLAGS_common) $$(CFLAGS_$(2))
-ADAFLAGS_$(1) = --RTS=$$(obj)/libgnat-$(2)/ $$(ADAFLAGS_common) $$(CFLAGS_$(2))
+ADAFLAGS_$(1) = --RTS=$$(obj)/libgnat-$(2)/ $$(ADAFLAGS_common) $$(GCC_CFLAGS_$(2))
CPPFLAGS_$(1) = $$(CPPFLAGS_common) $$(CPPFLAGS_$(2)) -D__ARCH_$(2)__
COMPILER_RT_$(1) := $$(COMPILER_RT_$(2))
COMPILER_RT_FLAGS_$(1) := $$(COMPILER_RT_FLAGS_$(2))