|
|
1.1 root 1: # i386 Mach makefile fragment 1.1.1.3 ! root 2: # Copyright 1997, 1999 Free Software Foundation, Inc. 1.1 root 3: # 4: # Permission to use, copy, modify and distribute this software and its 5: # documentation is hereby granted, provided that both the copyright 6: # notice and this permission notice appear in all copies of the 7: # software, derivative works or modified versions, and any portions 8: # thereof, and that both notices appear in supporting documentation. 1.1.1.3 ! root 9: # 1.1 root 10: # THE FREE SOFTWARE FOUNDATION ALLOWS FREE USE OF THIS SOFTWARE IN ITS 11: # "AS IS" CONDITION. THE FREE SOFTWARE FOUNDATION DISCLAIMS ANY 12: # LIABILITY OF ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE 13: # USE OF THIS SOFTWARE. 14: 15: 16: # Some of the i386-specific code checks for these. 1.1.1.3 ! root 17: DEFINES += -DCONTINUATIONS -D__ELF__ -Di386 -DLINUX_DEV 1.1 root 18: 19: # Source files for any i386 kernel 1.1.1.3 ! root 20: i386at-files = autoconf.c blit.c conf.c cons_conf.c fd.c rtc.c \ 1.1 root 21: i386at_ds_routines.c immc.c int_init.c iopl.c kd.c kd_event.c \ 22: kd_mouse.c kd_queue.c model_dep.c phys_mem_grab_page.c pic_isa.c 23: i386-files = ast_check.c db_disasm.c db_interface.c db_trace.c debug_i386.c \ 24: fpe_linkage.c fpu.c gdt.c hardclock.c idt.c io_emulate.c io_map.c \ 25: iopb.c ktss.c kttd_interface.c ldt.c loose_ends.c mp_desc.c pcb.c \ 26: phys.c pic.c pit.c seg.c trap.c user_ldt.c 27: intel-files = pmap.c read_fault.c 28: 29: # Assembler source 30: i386at-Sfiles = boothdr.S interrupt.S kdasm.S 31: i386-Sfiles = cswitch.S debug_trace.S idt_inittab.S locore.S spl.S 32: 33: # Account for them in the image 34: objfiles += $(subst .c,.o,$(i386at-files) $(i386-files) $(intel-files)) \ 35: $(subst .S,.o,$(i386at-Sfiles) $(i386-Sfiles)) 36: vpath %.c $(sysdep)/i386at $(sysdep)/i386 $(sysdep)/intel 37: vpath %.S $(sysdep)/i386at $(sysdep)/i386 38: 39: # Files from the generic source that we want 40: objfiles += busses.o cirbuf.o 41: vpath busses.c $(srcdir)/chips 42: 43: # FPE emulation 44: objfiles += fpe.o 45: 46: # Mig-generated 47: objfiles += mach_i386_server.o 48: 1.1.1.2 root 49: # This file is only needed for KDB support. 50: ifeq ($(enable_kdb),yes) 51: objfiles += _setjmp.o 52: endif 53: 1.1.1.3 ! root 54: # XXX: In i386, com is always enabled. ! 55: objfiles += com.o 1.1 root 56: 1.1.1.3 ! root 57: # This file is only needed for LPR support. ! 58: ifeq ($(findstring -DMACH_LPR,@DEFS@),-DMACH_LPR) ! 59: objfiles += lpr.o 1.1 root 60: endif 61: 1.1.1.3 ! root 62: # We link the device drivers together into this file in a separate Make ! 63: # run, because the Linux-related code sometimes re-uses filenames. Arrange ! 64: # to have that Makefile used to generate and clean and otherwise deal with ! 65: # those filenames. ! 66: ! 67: objfiles += i386/sysdep.o ! 68: i386/sysdep.o: $(systype) ! 69: cd i386 && $(MAKE) all ! 70: ! 71: clean: i386-clean ! 72: i386-clean: ! 73: cd i386 && $(MAKE) clean ! 74: ! 75: distclean: i386-distclean ! 76: i386-distclean: ! 77: cd i386 && $(MAKE) distclean ! 78: ! 79: mostlyclean: i386-mostlyclean ! 80: i386-mostlyclean: ! 81: cd i386 && $(MAKE) mostlyclean ! 82: ! 83: maintainerclean: i386-maintainerclean ! 84: i386-maitainerclean: ! 85: cd i386 && $(MAKE) maintainer-clean 1.1 root 86: 87: 88: 89: 90: 91: # Where to find some things 92: vpath i386asm.sym $(sysdep)/i386 93: vpath mach_i386.srv $(sysdep)/i386 94: 95: # Make sure boothdr.o is at the very front 96: objfiles := boothdr.o $(filter-out boothdr.o,$(objfiles)) 97: 98: # Our include files are here; make sure they PRECEDE the generic ones. 99: INCLUDES := -I$(sysdep)/i386at -I$(sysdep)/i386 \ 100: -I$(sysdep)/include -I$(sysdep)/include/mach/sa \ 101: -I$(sysdep)/bogus -I$(sysdep) \ 102: $(INCLUDES) 103: 104: # arrange suitable load address 105: LDFLAGS += -Ttext 100000 106: 107: # Assemble .S files correctly 108: ASFLAGS += -DASSEMBLER 109: 1.1.1.3 ! root 110: boothdr.o: i386asm.h 1.1 root 111: 112: 113: # Header files we install 114: 1.1.1.3 ! root 115: install-headers: i386-install-headers ! 116: i386-install-headers: ! 117: cd i386 && $(MAKE) install-headers ! 118: ! 119: install-kernel: i386-install-kernel ! 120: i386-install-kernel: ! 121: cd $(systype) && $(MAKE) install-kernel ! 122: 1.1 root 123: # We have our own version of this file 124: installed-headers := $(filter-out mach/proc_ops.h,$(installed-headers)) 125: 126: i386-installed-headers= mach/proc_ops.h \ 127: $(addprefix mach/i386/,asm.h bios.h boolean.h code16.h \ 128: debug_reg.h disk.h dpmi.h eflags.h exception.h far_ptr.h \ 129: fp_reg.h ioccom.h kern_return.h mach_i386.defs \ 130: mach_i386_types.h machine_types.defs multiboot.h paging.h \ 131: pio.h pmode.h proc_reg.h rpc.h seg.h syscall_sw.h \ 132: thread_status.h time_stamp.h trap.h tss.h vcpi.h vm_param.h \ 133: vm_types.h) 134: 135: 136: # Cheat, cheat, cheat. 137: fpe.o: fpe.b_elf 138: uudecode $< 139: vpath fpe.b_elf $(sysdep)/i386 140: 141: fpe.d:; touch $@
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.