aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.target53
-rwxr-xr-xconfigure41
2 files changed, 53 insertions, 41 deletions
diff --git a/Makefile.target b/Makefile.target
index a9a4697..f75e186 100644
--- a/Makefile.target
+++ b/Makefile.target
@@ -57,49 +57,20 @@ ifeq ($(TARGET_BASE_ARCH), alpha)
libobj-y += alpha_palcode.o
endif
-ifeq ($(TARGET_BASE_ARCH), cris)
-libobj-y += cris-dis.o
-endif
-
# NOTE: the disassembler code is only needed for debugging
libobj-y += disas.o
-ifeq ($(findstring i386, $(TARGET_ARCH) $(ARCH)),i386)
-USE_I386_DIS=y
-endif
-ifeq ($(findstring x86_64, $(TARGET_ARCH) $(ARCH)),x86_64)
-USE_I386_DIS=y
-endif
-libobj-$(USE_I386_DIS) += i386-dis.o
-ifeq ($(findstring alpha, $(TARGET_ARCH) $(ARCH)),alpha)
-libobj-y += alpha-dis.o
-endif
-ifeq ($(findstring ppc, $(TARGET_BASE_ARCH) $(ARCH)),ppc)
-libobj-y += ppc-dis.o
-endif
-ifeq ($(findstring microblaze, $(TARGET_BASE_ARCH) $(ARCH)),microblaze)
-libobj-y += microblaze-dis.o
-endif
-ifeq ($(findstring mips, $(TARGET_BASE_ARCH) $(ARCH)),mips)
-libobj-y += mips-dis.o
-endif
-ifeq ($(findstring sparc, $(TARGET_BASE_ARCH) $(ARCH)),sparc)
-libobj-y += sparc-dis.o
-endif
-ifeq ($(findstring arm, $(TARGET_ARCH) $(ARCH)),arm)
-libobj-y += arm-dis.o
-endif
-ifeq ($(findstring m68k, $(TARGET_ARCH) $(ARCH)),m68k)
-libobj-y += m68k-dis.o
-endif
-ifeq ($(findstring sh4, $(TARGET_ARCH) $(ARCH)),sh4)
-libobj-y += sh4-dis.o
-endif
-ifeq ($(findstring hppa, $(TARGET_BASE_ARCH) $(ARCH)),hppa)
-libobj-y += hppa-dis.o
-endif
-ifeq ($(findstring s390, $(TARGET_ARCH) $(ARCH)),s390)
-libobj-y += s390-dis.o
-endif
+libobj-$(CONFIG_ALPHA_DIS) += alpha-dis.o
+libobj-$(CONFIG_ARM_DIS) += arm-dis.o
+libobj-$(CONFIG_CRIS_DIS) += cris-dis.o
+libobj-$(CONFIG_HPPA_DIS) += hppa-dis.o
+libobj-$(CONFIG_I386_DIS) += i386-dis.o
+libobj-$(CONFIG_M68K_DIS) += m68k-dis.o
+libobj-$(CONFIG_MICROBLAZE_DIS) += microblaze-dis.o
+libobj-$(CONFIG_MIPS_DIS) += mips-dis.o
+libobj-$(CONFIG_PPC_DIS) += ppc-dis.o
+libobj-$(CONFIG_S390_DIS) += s390-dis.o
+libobj-$(CONFIG_SH4_DIS) += sh4-dis.o
+libobj-$(CONFIG_SPARC_DIS) += sparc-dis.o
# libqemu
diff --git a/configure b/configure
index e0ef054..88f031f 100755
--- a/configure
+++ b/configure
@@ -2078,6 +2078,47 @@ fi
cflags="-I\$(SRC_PATH)/tcg $cflags"
cflags="-I\$(SRC_PATH)/fpu $cflags"
+for i in $ARCH $TARGET_BASE_ARCH ; do
+ case "$i" in
+ alpha)
+ echo "CONFIG_ALPHA_DIS=y" >> $config_mak
+ ;;
+ arm)
+ echo "CONFIG_ARM_DIS=y" >> $config_mak
+ ;;
+ cris)
+ echo "CONFIG_CRIS_DIS=y" >> $config_mak
+ ;;
+ hppa)
+ echo "CONFIG_HPPA_DIS=y" >> $config_mak
+ ;;
+ i386|x86_64)
+ echo "CONFIG_I386_DIS=y" >> $config_mak
+ ;;
+ m68k)
+ echo "CONFIG_M68K_DIS=y" >> $config_mak
+ ;;
+ microblaze)
+ echo "CONFIG_MICROBLAZE_DIS=y" >> $config_mak
+ ;;
+ mips*)
+ echo "CONFIG_MIPS_DIS=y" >> $config_mak
+ ;;
+ ppc*)
+ echo "CONFIG_PPC_DIS=y" >> $config_mak
+ ;;
+ s390)
+ echo "CONFIG_S390_DIS=y" >> $config_mak
+ ;;
+ sh4)
+ echo "CONFIG_SH4_DIS=y" >> $config_mak
+ ;;
+ sparc*)
+ echo "CONFIG_SPARC_DIS=y" >> $config_mak
+ ;;
+ esac
+done
+
case "$ARCH" in
alpha)
# Ensure there's only a single GP