From 55f4e4a5ec657a017e3bf75299ad71fd1c968dd3 Mon Sep 17 00:00:00 2001 From: The Android Open Source Project Date: Tue, 21 Oct 2008 07:00:00 -0700 Subject: Initial Contribution --- Makefile.target | 407 +++++++++++++++++++++++++++++++------------------------- 1 file changed, 225 insertions(+), 182 deletions(-) (limited to 'Makefile.target') diff --git a/Makefile.target b/Makefile.target index 91516ed..a5964b4 100644 --- a/Makefile.target +++ b/Makefile.target @@ -1,23 +1,14 @@ include config.mak +include $(SRC_PATH)/distrib/Makefile TARGET_BASE_ARCH:=$(TARGET_ARCH) -ifeq ($(TARGET_ARCH), x86_64) -TARGET_BASE_ARCH:=i386 -endif -ifeq ($(TARGET_ARCH), ppc64) -TARGET_BASE_ARCH:=ppc -endif -ifeq ($(TARGET_ARCH), sparc64) -TARGET_BASE_ARCH:=sparc -endif TARGET_PATH=$(SRC_PATH)/target-$(TARGET_BASE_ARCH) -VPATH=$(SRC_PATH):$(TARGET_PATH):$(SRC_PATH)/hw:$(SRC_PATH)/audio -DEFINES=-I. -I.. -I$(TARGET_PATH) -I$(SRC_PATH) -ifdef CONFIG_USER_ONLY -VPATH+=:$(SRC_PATH)/linux-user -DEFINES+=-I$(SRC_PATH)/linux-user -I$(SRC_PATH)/linux-user/$(TARGET_ARCH) +VPATH=$(SRC_PATH):$(TARGET_PATH):$(SRC_PATH)/hw:$(SRC_PATH)/audio:$(SRC_PATH)/telephony:$(SRC_PATH)/proxy:$(SRC_PATH)/skins +DEFINES=-I. -I.. -I$(TARGET_PATH) -I$(SRC_PATH) -I$(SRC_PATH)/telephony -I$(SRC_PATH)/proxy -I$(SRC_PATH)/skins +CFLAGS=-Wall $(OPTIM) -g $(ZLIB_CFLAGS) $(LIBPNG_CFLAGS) -MMD -MP +ifeq ($(CONFIG_DARWIN),yes) +CFLAGS+=-mdynamic-no-pic endif -CFLAGS=-Wall -O2 -g -fno-strict-aliasing #CFLAGS+=-Werror LDFLAGS=-g LIBS= @@ -30,44 +21,30 @@ ifeq ($(TARGET_ARCH),arm) TARGET_ARCH2=armeb endif endif -ifeq ($(TARGET_ARCH),sh4) - ifeq ($(TARGET_WORDS_BIGENDIAN),yes) - TARGET_ARCH2=sh4eb - endif -endif -ifeq ($(TARGET_ARCH),mips) - ifneq ($(TARGET_WORDS_BIGENDIAN),yes) - TARGET_ARCH2=mipsel - endif -endif -QEMU_USER=qemu-$(TARGET_ARCH2) # system emulator name ifdef CONFIG_SOFTMMU -ifeq ($(TARGET_ARCH), i386) -QEMU_SYSTEM=qemu$(EXESUF) -else QEMU_SYSTEM=qemu-system-$(TARGET_ARCH2)$(EXESUF) -endif else QEMU_SYSTEM=qemu-fast endif -ifdef CONFIG_USER_ONLY -PROGS=$(QEMU_USER) -else PROGS+=$(QEMU_SYSTEM) ifndef CONFIG_SOFTMMU CONFIG_STATIC=y endif -endif # !CONFIG_USER_ONLY ifdef CONFIG_STATIC LDFLAGS+=-static endif ifeq ($(ARCH),i386) -CFLAGS+=-fomit-frame-pointer -OP_CFLAGS=$(CFLAGS) -mpreferred-stack-boundary=2 +OP_CFLAGS=$(CFLAGS) -O2 -fomit-frame-pointer +CFLAGS+=-DUSE_MMX -mmmx +ifneq ($(CONFIG_DARWIN),yes) +OP_CFLAGS+= -mpreferred-stack-boundary=2 +else +OP_CFLAGS+= -mpreferred-stack-boundary=4 +endif ifeq ($(HAVE_GCC3_OPTIONS),yes) OP_CFLAGS+= -falign-functions=0 -fno-gcse else @@ -77,7 +54,7 @@ endif ifdef TARGET_GPROF USE_I386_LD=y endif -ifdef CONFIG_STATIC +ifdef wwCONFIG_STATIC USE_I386_LD=y endif ifdef USE_I386_LD @@ -112,7 +89,7 @@ CFLAGS+=-mcpu=ultrasparc -m32 -ffixed-g2 -ffixed-g3 LDFLAGS+=-m32 OP_CFLAGS=$(CFLAGS) -fno-delayed-branch -fno-omit-frame-pointer -ffixed-i0 else -CFLAGS+=-mcpu=ultrasparc -m32 -ffixed-g1 -ffixed-g2 -ffixed-g3 -ffixed-g6 +CFLAGS+=-m32 -ffixed-g1 -ffixed-g2 -ffixed-g3 -ffixed-g6 LDFLAGS+=-m32 OP_CFLAGS=$(CFLAGS) -fno-delayed-branch -ffixed-i0 HELPER_CFLAGS=$(CFLAGS) -ffixed-i0 -mflat @@ -122,9 +99,8 @@ endif endif ifeq ($(ARCH),sparc64) -CFLAGS+=-mcpu=ultrasparc -m64 -ffixed-g1 -ffixed-g4 -ffixed-g5 -ffixed-g7 +CFLAGS+=-m64 -ffixed-g1 -ffixed-g2 -ffixed-g3 -ffixed-g6 LDFLAGS+=-m64 -LDFLAGS+=-Wl,-T,$(SRC_PATH)/sparc64.ld OP_CFLAGS=$(CFLAGS) -fno-delayed-branch -ffixed-i0 endif @@ -159,17 +135,24 @@ OP_CFLAGS+=-fno-reorder-blocks -fno-optimize-sibling-calls endif ifeq ($(CONFIG_DARWIN),yes) -OP_CFLAGS+= -mdynamic-no-pic +CFLAGS+= -I/opt/local/include LIBS+=-lmx endif +ifeq ($(CONFIG_WIN32),yes) +UNAME := $(shell uname -s) +ifneq ($(findstring CYGWIN,$(UNAME)),) +CFLAGS += -mno-cygwin -D_WIN32 +LDFLAGS += -mno-cygwin -mwindows +endif +endif + ######################################################### -DEFINES+=-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE +DEFINES+=-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE LIBS+=-lm -ifndef CONFIG_USER_ONLY -LIBS+=-lz -endif +#now using our own zlib static version +#LIBS+=-L/usr/lib -lz ifdef CONFIG_WIN32 LIBS+=-lwinmm -lws2_32 -liphlpapi endif @@ -189,9 +172,6 @@ ifdef TARGET_HAS_BFLT OBJS+= flatload.o endif -ifeq ($(TARGET_ARCH), i386) -OBJS+= vm86.o -endif ifeq ($(TARGET_ARCH), arm) OBJS+=nwfpe/fpa11.o nwfpe/fpa11_cpdo.o \ nwfpe/fpa11_cpdt.o nwfpe/fpa11_cprt.o nwfpe/fpopcode.o nwfpe/single_cpdo.o \ @@ -201,8 +181,8 @@ SRCS:= $(OBJS:.o=.c) OBJS+= libqemu.a # cpu emulator library -LIBOBJS=exec.o kqemu.o translate-op.o translate-all.o cpu-exec.o\ - translate.o op.o +LIBOBJS=exec.o kqemu.o translate-all.o translate-op.o cpu-exec.o\ + translate.o ifdef CONFIG_SOFTFLOAT LIBOBJS+=fpu/softfloat.o else @@ -210,39 +190,15 @@ LIBOBJS+=fpu/softfloat-native.o endif DEFINES+=-I$(SRC_PATH)/fpu -ifeq ($(TARGET_ARCH), i386) -LIBOBJS+=helper.o helper2.o -ifeq ($(ARCH), i386) -LIBOBJS+=translate-copy.o -endif -endif - -ifeq ($(TARGET_ARCH), x86_64) -LIBOBJS+=helper.o helper2.o -endif - -ifeq ($(TARGET_BASE_ARCH), ppc) -LIBOBJS+= op_helper.o helper.o -endif - -ifeq ($(TARGET_ARCH), mips) -LIBOBJS+= op_helper.o helper.o -endif - -ifeq ($(TARGET_BASE_ARCH), sparc) -LIBOBJS+= op_helper.o helper.o -endif - ifeq ($(TARGET_BASE_ARCH), arm) -LIBOBJS+= op_helper.o helper.o +ifdef CONFIG_TRACE +LIBOBJS += translate-trace.o translate-all-trace.o translate-op-trace.o endif - -ifeq ($(TARGET_BASE_ARCH), sh4) LIBOBJS+= op_helper.o helper.o endif # NOTE: the disassembler code is only needed for debugging -LIBOBJS+=disas.o +LIBOBJS+=disas.o ifeq ($(findstring i386, $(TARGET_ARCH) $(ARCH)),i386) USE_I386_DIS=y endif @@ -258,9 +214,6 @@ endif ifeq ($(findstring ppc, $(TARGET_BASE_ARCH) $(ARCH)),ppc) LIBOBJS+=ppc-dis.o endif -ifeq ($(findstring mips, $(TARGET_ARCH) $(ARCH)),mips) -LIBOBJS+=mips-dis.o -endif ifeq ($(findstring sparc, $(TARGET_BASE_ARCH) $(ARCH)),sparc) LIBOBJS+=sparc-dis.o endif @@ -270,18 +223,16 @@ endif ifeq ($(findstring m68k, $(TARGET_ARCH) $(ARCH)),m68k) LIBOBJS+=m68k-dis.o endif -ifeq ($(findstring sh4, $(TARGET_ARCH) $(ARCH)),sh4) -LIBOBJS+=sh4-dis.o -endif ifdef CONFIG_GDBSTUB OBJS+=gdbstub.o endif +OBJS+=android_console.o android_modem.c sim_card.o gsm.o sysdeps_qemu.o charpipe.o modem_driver.o sms.o \ + android_gps.o + all: $(PROGS) -$(QEMU_USER): $(OBJS) - $(CC) $(LDFLAGS) -o $@ $^ $(LIBS) ifeq ($(ARCH),alpha) # Mark as 32 bit binary, i. e. it will be mapped into the low 31 bit of # the address space (31 bit so sign extending doesn't matter) @@ -289,14 +240,26 @@ ifeq ($(ARCH),alpha) endif # must use static linking to avoid leaving stuff in virtual address space -VL_OBJS=vl.o osdep.o block.o readline.o monitor.o pci.o console.o loader.o -VL_OBJS+=block-cow.o block-qcow.o aes.o block-vmdk.o block-cloop.o block-dmg.o block-bochs.o block-vpc.o block-vvfat.o +VL_OBJS=vl.o osdep.o block.o readline.o monitor.o pci.o console.o loader.o sockets.o qemu_timers.o +VL_OBJS+= block-cloop.o block-dmg.o block-qcow.o aes.o +ifdef CONFIG_TRACE +VL_OBJS+=trace.o dcache.o varint.o +endif + +vl.o: android.h + +ifdef CONFIG_SHAPER +VL_OBJS+=shaper.o +vl.o: shaper.h shaper.c +endif ifdef CONFIG_WIN32 VL_OBJS+=tap-win32.o endif -SOUND_HW = sb16.o es1370.o -AUDIODRV = audio.o noaudio.o wavaudio.o +AUDIODRV = audio.o noaudio.o wavaudio.o mixeng.o +ifdef CONFIG_WINAUDIO +AUDIODRV += winaudio.o +endif ifdef CONFIG_SDL AUDIODRV += sdlaudio.o endif @@ -308,7 +271,13 @@ AUDIODRV += coreaudio.o endif ifdef CONFIG_ALSA AUDIODRV += alsaaudio.o -LIBS += -lasound +alsaaudio.o: DEFINES := $(CONFIG_ALSA_INC) $(DEFINES) +#LIBS += -lasound # we use dlopen/dlsym to get ALSA functions when available +endif +ifdef CONFIG_ESD +AUDIODRV += esdaudio.o audio_pt_int.o +esdaudio.o: DEFINES := $(CONFIG_ESD_INC) $(DEFINES) +#LIBS += -lesd # we use dlopen/dlsym to get esound function, when available endif ifdef CONFIG_DSOUND AUDIODRV += dsoundaudio.o @@ -324,65 +293,94 @@ SOUND_HW += fmopl.o adlib.o endif AUDIODRV+= wavcapture.o +AUDIOLIB := libqemu-audio.a +$(AUDIOLIB): $(AUDIODRV) + rm -f $@ + $(AR) rcs $@ $(AUDIODRV) + +# DMA +VL_OBJS+=dma.o + # SCSI layer -VL_OBJS+= scsi-disk.o cdrom.o lsi53c895a.o +VL_OBJS+= scsi-disk.o cdrom.o # USB layer VL_OBJS+= usb.o usb-hub.o usb-linux.o usb-hid.o usb-ohci.o usb-msd.o -# PCI network cards -VL_OBJS+= ne2000.o rtl8139.o pcnet.o - -ifeq ($(TARGET_BASE_ARCH), i386) -# Hardware support -VL_OBJS+= ide.o pckbd.o ps2.o vga.o $(SOUND_HW) dma.o $(AUDIODRV) -VL_OBJS+= fdc.o mc146818rtc.o serial.o i8259.o i8254.o pcspk.o pc.o -VL_OBJS+= cirrus_vga.o mixeng.o apic.o parallel.o acpi.o piix_pci.o -VL_OBJS+= usb-uhci.o -DEFINES += -DHAS_AUDIO -endif -ifeq ($(TARGET_BASE_ARCH), ppc) -VL_OBJS+= ppc.o ide.o pckbd.o ps2.o vga.o $(SOUND_HW) dma.o $(AUDIODRV) -VL_OBJS+= mc146818rtc.o serial.o i8259.o i8254.o fdc.o m48t59.o -VL_OBJS+= ppc_prep.o ppc_chrp.o cuda.o adb.o openpic.o heathrow_pic.o mixeng.o -VL_OBJS+= grackle_pci.o prep_pci.o unin_pci.o +ifeq ($(TARGET_BASE_ARCH), arm) +VL_OBJS+= smc91c111.o arm_pic.o arm_boot.o +VL_OBJS+= android_arm.o goldfish_device.o goldfish_interrupt.o goldfish_timer.o \ + goldfish_fb.o goldfish_tty.o goldfish_switch.o goldfish_mmc.o \ + goldfish_memlog.o \ + goldfish_battery.o \ + irq.o + +# platform_audio support DEFINES += -DHAS_AUDIO +VL_OBJS += goldfish_audio.o + +ifeq ($(CONFIG_QFB), yes) +VL_OBJS+= qfb_dev.o qfb_fuse.o qfb_fs.o endif -ifeq ($(TARGET_ARCH), mips) -VL_OBJS+= mips_r4k.o dma.o vga.o serial.o i8254.o i8259.o -#VL_OBJS+= #ide.o pckbd.o fdc.o m48t59.o -endif -ifeq ($(TARGET_BASE_ARCH), sparc) -ifeq ($(TARGET_ARCH), sparc64) -VL_OBJS+= sun4u.o ide.o pckbd.o ps2.o vga.o apb_pci.o -VL_OBJS+= fdc.o mc146818rtc.o serial.o m48t59.o -VL_OBJS+= cirrus_vga.o parallel.o -else -VL_OBJS+= sun4m.o tcx.o lance.o iommu.o m48t59.o slavio_intctl.o -VL_OBJS+= slavio_timer.o slavio_serial.o slavio_misc.o fdc.o esp.o +ifeq ($(CONFIG_TRACE), yes) +VL_OBJS+= goldfish_trace.o endif +ifeq ($(CONFIG_SKINS), yes) +VL_OBJS+= goldfish_events_device.o endif -ifeq ($(TARGET_BASE_ARCH), arm) -VL_OBJS+= integratorcp.o versatilepb.o ps2.o smc91c111.o arm_pic.o arm_timer.o -VL_OBJS+= arm_boot.o pl011.o pl050.o pl080.o pl110.o pl190.o -VL_OBJS+= versatile_pci.o +ifeq ($(CONFIG_NAND), yes) +VL_OBJS+= goldfish_nand.o endif -ifeq ($(TARGET_BASE_ARCH), sh4) -VL_OBJS+= shix.o sh7750.o sh7750_regnames.o tc58128.o endif ifdef CONFIG_GDBSTUB -VL_OBJS+=gdbstub.o -endif +VL_OBJS+=gdbstub.o +endif + +VL_OBJS+=android_console.o android_modem.o sim_card.o gsm.o sysdeps_qemu.o \ + charpipe.o modem_driver.o sms.o remote_call.o \ + cbuffer.o \ + android_gps.o + +VL_OBJS+=proxy_common.o proxy_http.o + +VL_OBJS+=android_debug.o \ + android_help.o \ + android_option.o \ + android_utils.o \ + android_resource.o \ + android_config.o \ + android_timezone.o \ + android_events.o \ + android_profile.o \ + android_qemud.o \ + android_kmsg.o \ + skin_image.o \ + skin_trackball.o \ + skin_keyboard.o \ + skin_file.o \ + skin_window.o \ + skin_scaler.o \ + skin_keyset.o \ + skin_rect.o \ + skin_region.o \ + skin_composer.o \ + skin_surface.o \ + framebuffer.o + ifdef CONFIG_SDL +ifdef CONFIG_SKINS +VL_OBJS += loadpng.o android_main.o android_charmap.o +else VL_OBJS+=sdl.o endif +endif VL_OBJS+=vnc.o ifdef CONFIG_COCOA VL_OBJS+=cocoa.o COCOA_LIBS=-F/System/Library/Frameworks -framework Cocoa -framework IOKit -ifdef CONFIG_COREAUDIO -COCOA_LIBS+=-framework CoreAudio endif +ifdef CONFIG_COREAUDIO +COCOA_LIBS+=-F/System/Library/Frameworks -framework CoreAudio endif ifdef CONFIG_SLIRP DEFINES+=-I$(SRC_PATH)/slirp @@ -393,17 +391,33 @@ VL_OBJS+=$(addprefix slirp/, $(SLIRP_OBJS)) endif VL_LDFLAGS= +ifdef CONFIG_WIN32 +VL_LDFLAGS+=-mno-cygwin -mwindows +endif +ifndef CONFIG_WIN32 +ifndef CONFIG_DARWIN +VL_LDFLAGS+=-lX11 +endif +endif + +android_main.c: android_utils.h android_resource.h android_config.h \ + skin_image.h android_icons.h skin_file.h \ + skin_window.h + # specific flags are needed for non soft mmu emulator +ifdef CONFIG_SKINS +VL_LIBS+=$(PNG_LIBS) +endif ifdef CONFIG_STATIC VL_LDFLAGS+=-static endif ifndef CONFIG_SOFTMMU -VL_LDFLAGS+=-Wl,-T,$(SRC_PATH)/i386-vl.ld +VL_LDFLAGS+=-Wl,-T,$(SRC_PATH)/i386-vl.ld endif ifndef CONFIG_DARWIN ifndef CONFIG_WIN32 ifndef CONFIG_SOLARIS -VL_LIBS=-lutil -lrt +VL_LIBS+=-lutil -lrt endif endif endif @@ -412,26 +426,58 @@ vl.o: CFLAGS+=-p VL_LDFLAGS+=-p endif -ifeq ($(ARCH),ia64) -VL_LDFLAGS+=-Wl,-G0 -Wl,-T,$(SRC_PATH)/ia64.ld +# we need to filter out _GNU_SOURCE from the SDL C Flags if any, because +# this macro is not needed at all and will break recent versions of Cygwin +# with the -mno-cygwin option (blame it on Cygwin/Mingw) +# +SDL_CFLAGS := $(filter-out -D_GNU_SOURCE=1,$(SDL_CFLAGS)) + +$(info SDL_CFLAGS is $(SDL_CFLAGS)) + +ifdef CONFIG_DARWIN +ifdef CONFIG_SDL +CFLAGS += $(SDL_CFLAGS) +endif endif -ifeq ($(ARCH),sparc64) -VL_LDFLAGS+=-m64 -VL_LDFLAGS+=-Wl,-T,$(SRC_PATH)/sparc64.ld +#skin_%.o android_main.o: CFLAGS+=-O0 -g -fno-omit-frame-pointer + +ifeq ($(ARCH),ia64) +VL_LDFLAGS+=-Wl,-G0 -Wl,-T,$(SRC_PATH)/ia64.ld endif ifdef CONFIG_WIN32 SDL_LIBS := $(filter-out -mwindows, $(SDL_LIBS)) -mconsole +VL_OBJS+=android_icon.o +android_icon.o: images/android_icon.rc + windres $< -o $@ endif -$(QEMU_SYSTEM): $(VL_OBJS) libqemu.a +$(QEMU_SYSTEM): $(VL_OBJS) libqemu.a $(AUDIOLIB) $(LIBPNG_LIB) $(ZLIB_LIB) $(CC) $(VL_LDFLAGS) -o $@ $^ $(LIBS) $(SDL_LIBS) $(COCOA_LIBS) $(VL_LIBS) cocoa.o: cocoa.m $(CC) $(CFLAGS) $(DEFINES) -c -o $@ $< -sdl.o: sdl.c keymaps.c sdl_keysym.h +android_main.o: android_main.c android.h android_icons.h android_charmap.h android_utils.h android_resource.h skin_image.h + $(CC) $(CFLAGS) $(DEFINES) $(SDL_CFLAGS) -c -o $@ $< + +android_console.o: android_console.c # we need SDL_CFLAGS + $(CC) $(CFLAGS) $(DEFINES) $(SDL_CFLAGS) -c -o $@ $< + +android_resource.o: android_resource.c android_resource.h skin_default.h + $(CC) $(CFLAGS) $(DEFINES) $(SDL_CFLAGS) -c -o $@ $< + +skin_image.o: skin_image.c skin_image.h android_resource.h + $(CC) $(CFLAGS) $(DEFINES) $(SDL_CFLAGS) -c -o $@ $< + +skin_%.o: skin_%.c skin_%.h + $(CC) $(CFLAGS) $(DEFINES) $(SDL_CFLAGS) -c -o $@ $< + +android_charmap.o: android_charmap.c android_charmap.h + $(CC) $(CFLAGS) $(DEFINES) $(SDL_CFLAGS) -c -o $@ $< + +android_utils.o: android_utils.c android_utils.h $(CC) $(CFLAGS) $(DEFINES) $(SDL_CFLAGS) -c -o $@ $< vnc.o: vnc.c keymaps.c sdl_keysym.h vnchextile.h @@ -440,13 +486,17 @@ vnc.o: vnc.c keymaps.c sdl_keysym.h vnchextile.h sdlaudio.o: sdlaudio.c $(CC) $(CFLAGS) $(DEFINES) $(SDL_CFLAGS) -c -o $@ $< +esdaudio.o: esdaudio.c + $(CC) $(CFLAGS) -O0 $(DEFINES) -c -o $@ $< + + depend: $(SRCS) $(CC) -MM $(CFLAGS) $(DEFINES) $^ 1>.depend vldepend: $(VL_OBJS:.o=.c) $(CC) -MM $(CFLAGS) $(DEFINES) $^ 1>.depend -# libqemu +# libqemu libqemu.a: $(LIBOBJS) rm -f $@ @@ -454,9 +504,14 @@ libqemu.a: $(LIBOBJS) translate.o: translate.c gen-op.h opc.h cpu.h +ifdef CONFIG_TRACE +translate-trace.o: translate.c gen-op-trace.h opc-trace.h cpu.h + $(CC) $(CFLAGS) $(DEFINES) -DGEN_TRACE -c -o $@ $< +endif + translate-all.o: translate-all.c opc.h cpu.h -translate-op.o: translate-all.c op.h opc.h cpu.h +translate-op.o: translate-op.c op.h opc.h cpu.h op.h: op.o $(DYNGEN) $(DYNGEN) -o $@ $< @@ -470,53 +525,41 @@ gen-op.h: op.o $(DYNGEN) op.o: op.c $(CC) $(OP_CFLAGS) $(DEFINES) -c -o $@ $< -helper.o: helper.c - $(CC) $(HELPER_CFLAGS) $(DEFINES) -c -o $@ $< +ifdef CONFIG_TRACE +op-trace.h: op-trace.o $(DYNGEN) + $(DYNGEN) -o $@ $< -ifeq ($(TARGET_BASE_ARCH), i386) -op.o: op.c opreg_template.h ops_template.h ops_template_mem.h ops_mem.h ops_sse.h -endif +opc-trace.h: op-trace.o $(DYNGEN) + $(DYNGEN) -c -o $@ $< -ifeq ($(TARGET_ARCH), arm) -op.o: op.c op_template.h -pl110.o: pl110_template.h -endif +gen-op-trace.h: op-trace.o $(DYNGEN) + $(DYNGEN) -g -o $@ $< -ifeq ($(TARGET_BASE_ARCH), sparc) -op.o: op.c op_template.h op_mem.h fop_template.h fbranch_template.h -magic_load.o: elf_op.h -endif +op-trace.o: op.c + $(CC) $(OP_CFLAGS) $(DEFINES) -DGEN_TRACE -c -o $@ $< -ifeq ($(TARGET_BASE_ARCH), ppc) -op.o: op.c op_template.h op_mem.h -op_helper.o: op_helper_mem.h -translate.o: translate.c translate_init.c -endif +translate-all-trace.o: translate-all.c op-trace.h opc-trace.h cpu.h + $(CC) $(OP_CFLAGS) $(DEFINES) -DGEN_TRACE -c -o $@ $< + +translate-op-trace.o: translate-op.c op-trace.h opc-trace.h cpu.h + $(CC) $(OP_CFLAGS) $(DEFINES) -DGEN_TRACE -c -o $@ $< -ifeq ($(TARGET_ARCH), mips) -op.o: op.c op_template.c op_mem.c -op_helper.o: op_helper_mem.c endif -loader.o: loader.c elf_ops.h +skin_scaler.o: CFLAGS += -O2 -g -fno-omit-frame-pointer -acpi.o: acpi.c acpi-dsdt.hex +helper.o: helper.c + $(CC) $(HELPER_CFLAGS) $(DEFINES) -c -o $@ $< -ifdef BUILD_ACPI_TABLES -$(SRC_PATH)/hw/acpi-dsdt.hex: acpi-dsdt.dsl - iasl -tc -p $@ $< +ifeq ($(TARGET_ARCH), arm) +op.o: op.c op_template.h +ifdef CONFIG_TRACE +op-trace.o: op.c op_template.h endif - -ifeq ($(TARGET_ARCH), sh4) -op.o: op.c op_mem.c cpu.h -op_helper.o: op_helper.c exec.h cpu.h -helper.o: helper.c exec.h cpu.h -sh7750.o: sh7750.c sh7750_regs.h sh7750_regnames.h cpu.h -shix.o: shix.c sh7750_regs.h sh7750_regnames.h -sh7750_regnames.o: sh7750_regnames.c sh7750_regnames.h sh7750_regs.h -tc58128.o: tc58128.c endif +loader.o: loader.c elf_ops.h + $(OBJS) $(LIBOBJS) $(VL_OBJS): config.h ../config-host.h %.o: %.c @@ -526,9 +569,12 @@ $(OBJS) $(LIBOBJS) $(VL_OBJS): config.h ../config-host.h $(CC) $(DEFINES) -c -o $@ $< clean: - rm -f *.o *.a *~ $(PROGS) gen-op.h opc.h op.h nwfpe/*.o slirp/*.o fpu/*.o + rm -f *.o *.d *.a *~ $(PROGS) gen-op.h opc.h op.h nwfpe/*.o slirp/*.o fpu/*.o +ifdef CONFIG_TRACE + rm -f opc-trace.h op-trace.h gen-op-trace.h +endif -install: all +install: all ifneq ($(PROGS),) $(INSTALL) -m 755 -s $(PROGS) "$(DESTDIR)$(bindir)" endif @@ -537,8 +583,5 @@ ifneq ($(wildcard .depend),) include .depend endif -ifeq (1, 0) -audio.o sdlaudio.o dsoundaudio.o ossaudio.o wavaudio.o noaudio.o \ -fmodaudio.o alsaaudio.o mixeng.o sb16.o es1370.o gus.o adlib.o: \ -CFLAGS := $(CFLAGS) -Wall -Werror -W -Wsign-compare -endif +# Include automatically generated dependency files +-include $(wildcard *.d) -- cgit v1.1