]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/sh/Makefile
Merge branch 'topic/usb-caiaq' into for-linus
[linux-2.6-omap-h63xx.git] / arch / sh / Makefile
index c43eb0d7fa3bd2ac088cff7a21bf96387845b8a2..4067b0d9287b5000290784cdf07a9322cf90aa1c 100644 (file)
@@ -32,6 +32,7 @@ cflags-$(CONFIG_CPU_SH4)              := $(call cc-option,-m4,) \
        $(call cc-option,-mno-implicit-fp,-m4-nofpu)
 cflags-$(CONFIG_CPU_SH4A)              += $(call cc-option,-m4a,) \
                                           $(call cc-option,-m4a-nofpu,)
+cflags-$(CONFIG_CPU_SH4AL_DSP)         += $(call cc-option,-m4al,)
 cflags-$(CONFIG_CPU_SH5)               := $(call cc-option,-m5-32media-nofpu,)
 
 ifeq ($(cflags-y),)
@@ -39,22 +40,16 @@ ifeq ($(cflags-y),)
 # In the case where we are stuck with a compiler that has been uselessly
 # restricted to a particular ISA, a favourite default of newer GCCs when
 # extensive multilib targets are not provided, ensure we get the best fit
-# regarding FP generation. This is necessary to avoid references to FP
-# variants in libgcc where integer variants exist, which otherwise result
-# in link errors. This is intentionally stupid (albeit many orders of
-# magnitude less than GCC's default behaviour), as anything with a large
-# number of multilib targets better have been built correctly for
-# the target in mind.
+# regarding FP generation. This is intentionally stupid (albeit many
+# orders of magnitude less than GCC's default behaviour), as anything
+# with a large number of multilib targets better have been built
+# correctly for the target in mind.
 #
 cflags-y       += $(shell $(CC) $(KBUILD_CFLAGS) -print-multi-lib | \
                     grep nofpu | sed q | sed -e 's/^/-/;s/;.*$$//')
-endif
-
-cflags-$(CONFIG_CPU_BIG_ENDIAN)                += -mb
-cflags-$(CONFIG_CPU_LITTLE_ENDIAN)     += -ml
-
-cflags-y       += $(call cc-option,-mno-fdpic)
-
+# At this point, anything goes.
+isaflags-y     := $(call as-option,-Wa$(comma)-isa=any,)
+else
 #
 # -Wa,-isa= tuning implies -Wa,-dsp for the versions of binutils that
 # support it, while -Wa,-dsp by itself limits the range of usable opcodes
@@ -67,7 +62,12 @@ isaflags-y   := $(call as-option,-Wa$(comma)-isa=$(isa-y),)
 
 isaflags-$(CONFIG_SH_DSP)              := \
        $(call as-option,-Wa$(comma)-isa=$(isa-y),-Wa$(comma)-dsp)
+endif
 
+cflags-$(CONFIG_CPU_BIG_ENDIAN)                += -mb
+cflags-$(CONFIG_CPU_LITTLE_ENDIAN)     += -ml
+
+cflags-y       += $(call cc-option,-mno-fdpic)
 cflags-y       += $(isaflags-y) -ffreestanding
 
 cflags-$(CONFIG_MORE_COMPILE_OPTIONS)  += \
@@ -79,6 +79,9 @@ OBJCOPYFLAGS  := -O binary -R .note -R .note.gnu.build-id -R .comment \
 # Give the various platforms the opportunity to set default image types
 defaultimage-$(CONFIG_SUPERH32)                        := zImage
 defaultimage-$(CONFIG_SH_SH7785LCR)            := uImage
+defaultimage-$(CONFIG_SH_RSK)                  := uImage
+defaultimage-$(CONFIG_SH_7206_SOLUTION_ENGINE) := vmlinux
+defaultimage-$(CONFIG_SH_7619_SOLUTION_ENGINE) := vmlinux
 
 # Set some sensible Kbuild defaults
 KBUILD_DEFCONFIG       := shx3_defconfig
@@ -132,6 +135,7 @@ machdir-$(CONFIG_SH_LANDISK)                        += mach-landisk
 machdir-$(CONFIG_SH_TITAN)                     += mach-titan
 machdir-$(CONFIG_SH_LBOX_RE2)                  += mach-lboxre2
 machdir-$(CONFIG_SH_CAYMAN)                    += mach-cayman
+machdir-$(CONFIG_SH_RSK)                       += mach-rsk
 
 ifneq ($(machdir-y),)
 core-y += $(addprefix arch/sh/boards/, \
@@ -173,11 +177,8 @@ KBUILD_CFLAGS              += -pipe $(cflags-y)
 KBUILD_CPPFLAGS                += $(cflags-y)
 KBUILD_AFLAGS          += $(cflags-y)
 
-LIBGCC := $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name)
-
 libs-$(CONFIG_SUPERH32)                := arch/sh/lib/ $(libs-y)
 libs-$(CONFIG_SUPERH64)                := arch/sh/lib64/ $(libs-y)
-libs-y                         += $(LIBGCC)
 
 PHONY += maketools FORCE