diff --git a/include/target.mk b/include/target.mk index 107558218e..6774076f91 100644 --- a/include/target.mk +++ b/include/target.mk @@ -186,6 +186,7 @@ ifeq ($(DUMP),1) ifneq ($(CONFIG_RTC_CLASS),) FEATURES += rtc endif + FEATURES += $(foreach v,v4 v5 v6 v7,$(if $(findstring -march=arm$(v),$(CFLAGS)),arm_$(v))) # remove duplicates FEATURES:=$(sort $(FEATURES)) diff --git a/scripts/metadata.pl b/scripts/metadata.pl index b0abd78a0c..13abcb2937 100755 --- a/scripts/metadata.pl +++ b/scripts/metadata.pl @@ -153,6 +153,7 @@ sub target_config_features(@) { my $ret; while ($_ = shift @_) { + /arm_v(\w+)/ and $ret .= "\tselect arm_v$1\n"; /broken/ and $ret .= "\tdepends on BROKEN\n"; /audio/ and $ret .= "\tselect AUDIO_SUPPORT\n"; /display/ and $ret .= "\tselect DISPLAY_SUPPORT\n"; diff --git a/target/Config.in b/target/Config.in index 967149d435..947e80ca4a 100644 --- a/target/Config.in +++ b/target/Config.in @@ -82,6 +82,18 @@ config armeb select BIG_ENDIAN bool +config arm_v4 + bool + +config arm_v5 + bool + +config arm_v6 + bool + +config arm_v7 + bool + config avr32 select BIG_ENDIAN bool