###################################################################### # RDOS operating system # Copyright (C) 1988-2000, Leif Ekblad # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. The only exception to this rule # is for commercial usage in embedded systems. For information on # usage in commercial embedded systems, contact embedded@rdos.net # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # # The author of this program may be contacted at leif@rdos.net # # MAKEFILE # Makefile for Borland MAKE. # ###################################################################### # DEFINE SYSTEM VERSION version = V8_0 prot_opt = /l/s/3/Twe link_opt = /l/s/3 units = G:\BP\UNITS # DEFINE GROUPS OF MODULES debug_srcs = DISNEW.ASM DISASM.ASM MATH.ASM kdebug_srcs = DEBUGIO.ASM KDEBUG.ASM $(debug_srcs) kdeb40_srcs = DEBUG40.ASM KDEB40.ASM $(debug_srcs) kdebug_objs = $(kdebug_srcs:.ASM=.OBJ) kdeb40_objs = $(kdeb40_srcs:.ASM=.OBJ) kdebug_rdvs = DEBUGIO.RDV kdeb40_rdvs = DEBUG40.RDV ipcdebug_srcs = IPCDEBUG.ASM $(debug_srcs) ipcdebug_objs = $(ipcdebug_srcs:.ASM=.OBJ) ipcdebug_rdvs = IPCDEBUG.RDV font_srcs = FONT.ASM font_objs = $(font_srcs:.ASM=.OBJ) font_rdvs = FONT.RDV video_srcs = VIDEO.ASM BITMAP.ASM BIT1.ASM BIT16.ASM BIT24.ASM BIT32.ASM \ SPRITE.ASM video_objs = $(video_srcs:.ASM=.OBJ) video_rdvs = VIDEO.RDV em_srcs = EMULATE.ASM EMCOM.ASM EMMEM.ASM EMTRANS.ASM EMARITHM.ASM \ EMSTRING.ASM EMCONTR.ASM EM387.ASM EMPROT.ASM EMSEG.ASM \ EMFLOAT.ASM em_objs = $(em_srcs:.ASM=.OBJ) em_rdvs = EMULATE.RDV wait_srcs = WAIT.ASM wait_objs = $(wait_srcs:.ASM=.OBJ) wait_rdvs = $(wait_srcs:.ASM=.RDV) timer_srcs = TIMER.ASM timer_objs = $(timer_srcs:.ASM=.OBJ) timer_rdvs = $(timer_srcs:.ASM=.RDV) rtc_srcs = RTC.ASM rtc_objs = $(rtc_srcs:.ASM=.OBJ) rtc_rdvs = RTC.RDV xms_srcs = XMS.ASM xms_objs = $(xms_srcs:.ASM=.OBJ) xms_rdvs = XMS.RDV ems_srcs = EMS.ASM ems_objs = $(ems_srcs:.ASM=.OBJ) ems_rdvs = EMS.RDV dpmi_srcs = DPMI.ASM DPMI16.ASM DPMI32.ASM dpmi_objs = $(dpmi_srcs:.ASM=.OBJ) dpmi_rdvs = DPMI.RDV pci_srcs = PCI.ASM pci_objs = $(pci_srcs:.ASM=.OBJ) pci_rdvs = PCI.RDV keyboard_srcs = KEYBOARD.ASM keyboard_objs = $(keyboard_srcs:.ASM=.OBJ) keyboard_rdvs = KEYBOARD.RDV key_srcs = KEY.ASM KEYSW.ASM KEYUS.ASM KEYUK.ASM KEYFR.ASM SERKEY.ASM key_objs = $(key_srcs:.ASM=.OBJ) key_rdvs = KEYSW.RDV KEYUS.RDV KEYUK.RDV KEYFR.RDV SERKEY.RDV keym_srcs = KEYMOUSE.ASM KEYSW.ASM KEYUS.ASM KEYUK.ASM KEYFR.ASM keym_objs = $(keym_srcs:.ASM=.OBJ) keym_rdvs = KEYMSW.RDV KEYMUS.RDV KEYMUK.RDV KEYMFR.RDV mouse_srcs = MOUSE.ASM mouse_objs = $(mouse_srcs:.ASM=.OBJ) mouse_rdvs = MOUSE.RDV inifile_srcs = INIFILE.ASM inifile_objs = $(inifile_srcs:.ASM=.OBJ) inifile_rdvs = INIFILE.RDV net_srcs = NET.ASM net_objs = $(net_srcs:.ASM=.OBJ) net_rdvs = NET.RDV ip_srcs = IP.ASM DNS.ASM ICMP.ASM IPCACHE.ASM DHCP.ASM UDP.ASM NTP.ASM \ TCP.ASM ip_objs = $(ip_srcs:.ASM=.OBJ) ip_rdvs = IP.RDV ipc_srcs = IPC.ASM IPCREC.ASM IPCSEND.ASM \ SMP.ASM SMPREC.ASM SMPSEND.ASM SMPRESP.ASM ipc_objs = $(ipc_srcs:.ASM=.OBJ) ipc_rdvs = IPC.RDV dos_srcs = DOS.ASM DOSMEM.ASM DOSCOM.ASM DOSEXEC.ASM \ DOSVM.ASM DOS16.ASM DOS32.ASM dos_objs = $(dos_srcs:.ASM=.OBJ) dos_rdvs = DOS.RDV focus_srcs = FOCUS.ASM focus_objs = $(focus_srcs:.ASM=.OBJ) focus_rdvs = FOCUS.RDV bios_srcs = BIOS.ASM bios_objs = $(bios_srcs:.ASM=.OBJ) bios_rdvs = BIOS.RDV v86bios_srcs = V86BIOS.ASM v86bios_objs = $(v86bios_srcs:.ASM=.OBJ) v86bios_rdvs = V86BIOS.RDV multiplx_srcs = MULTIPLX.ASM multiplx_objs = $(multiplx_srcs:.ASM=.OBJ) multiplx_rdvs = MULTIPLX.RDV drive_srcs = drive.ASM drive_objs = $(drive_srcs:.ASM=.OBJ) drive_rdvs = drive.RDV ramdrive_srcs = RAMDRIVE.ASM ramdrive_objs = $(ramdrive_srcs:.ASM=.OBJ) ramdrive_rdvs = RAMDRIVE.RDV rdfs_srcs = RDFS.ASM RDFSDIR.ASM RDFSFILE.ASM RDFSCRYP.ASM RDFSMISC.ASM \ RDFSTAB.ASM RDFSCONT.ASM rdfs_objs = $(rdfs_srcs:.ASM=.OBJ) rdfs_rdvs = RDFS.RDV flashfs_srcs = FLASHFS.ASM FLDIR.ASM FLTAB.ASM FLMISC.ASM flashfs_objs = $(flashfs_srcs:.ASM=.OBJ) flashfs_rdvs = FLASHFS.RDV filedisc_srcs = FILEDISC.ASM filedisc_objs = $(filedisc_srcs:.ASM=.OBJ) filedisc_rdvs = FILEDISC.RDV dosdev_srcs = DOSDEV.ASM dosdev_objs = $(dosdev_srcs:.ASM=.OBJ) dosdev_rdvs = DOSDEV.RDV fs_srcs = FS.ASM DIR.ASM FILE.ASM MEMMAP.ASM fs_objs = $(fs_srcs:.ASM=.OBJ) fs_rdvs = FS.RDV ne_srcs = NE.ASM ne_objs = $(ne_srcs:.ASM=.OBJ) ne_rdvs = NE.RDV pe_srcs = PE.ASM pe_objs = $(pe_srcs:.ASM=.OBJ) pe_rdvs = PE.RDV elf_srcs = ELF.ASM elf_objs = $(elf_srcs:.ASM=.OBJ) elf_rdvs = ELF.RDV time_srcs = TIME.ASM time_objs = $(time_srcs:.ASM=.OBJ) time_rdvs = TIME.RDV kernel_srcs = KERNEL.ASM p1_srcs = PAGING.ASM TASK.ASM STATE.ASM \ DEVICE.ASM IO.ASM HANDLE.ASM \ PROC.ASM ENV.ASM APP.ASM p2_srcs = PHYSICAL.ASM IRQ.ASM SWAP.ASM \ MEM.ASM GDT.ASM \ INT.ASM INT16.ASM INT32.ASM pgen_srcs = PROTSEG.ASM SYSTEM.ASM RAND.ASM \ TRAPINT.ASM TSSINT.ASM LDT.ASM \ OS.ASM USER.ASM pexec_srcs = EXEC.ASM kernel_objs = $(kernel_srcs:.ASM=.OBJ) p1_objs = $(p1_srcs:.ASM=.OBJ) p2_objs = $(p2_srcs:.ASM=.OBJ) pgen_objs = $(pgen_srcs:.ASM=.OBJ) pexec_objs = $(pexec_srcs:.ASM=.OBJ) pcshut_srcs = PCSHUT.ASM pcshut_objs = $(pcshut_srcs:.ASM=.OBJ) pcshut_exes = PCSHUT.EXE prot_srcs = $(kernel_srcs) $(p1_srcs) $(p2_srcs) $(pgen_srcs) $(pexec_srcs) prot_objs = $(kernel_objs) $(p1_objs) $(p2_objs) $(pgen_objs) $(pexec_objs) prot_exes = KERNEL.EXE srcs = $(multiplx_srcs) $(ems_srcs) $(xms_srcs) $(dpmi_srcs) $(inifile_srcs) \ $(dos_srcs) $(key_srcs) $(kdebug_srcs) $(kdeb40_srcs) $(pci_srcs) \ $(net_srcs) $(ip_srcs) $(keym_srcs) \ $(ipc_srcs) $(mouse_srcs) $(ipcdebug_srcs) \ $(fs_srcs) $(bios_srcs) $(ne_srcs) $(pe_srcs) $(elf_srcs) \ $(time_srcs) $(font_srcs) $(video_srcs) $(pcshut_srcs) \ $(prot_srcs) $(timer_srcs) $(em_srcs) $(file_srcs) \ $(dosdev_srcs) $(v86bios_srcs) $(keyboard_srcs) \ $(drive_srcs) $(ramdrive_srcs) $(rdfs_srcs) $(flashfs_srcs) \ $(focus_srcs) $(rtc_srcs) $(wait_srcs) $(filedisc_srcs) objs = $(srcs:.ASM=.OBJ) incs = SYSTEM.DEF PROTSEG.DEF SYSTEM.INC \ DISC.DEF BIOSDATA.DEF \ PROTSEG.INC \ DPMI.INC INT.DEF \ FAT.INC DOS.INC fonts = SYS8.GFT SYS12.GFT SYS14.GFT \ SYS16.GFT SYS17.GFT SYS22.GFT \ SYS27.GFT SYS30.GFT SYS36.GFT \ SYS43.GFT exes = $(prot_exes) $(pcshut_exes) rdvs = $(multiplx_rdvs) $(ems_rdvs) $(xms_rdvs) $(dpmi_rdvs) $(keym_rdvs) \ $(dos_rdvs) $(key_rdvs) $(kdebug_rdvs) $(kdeb40_rdvs) $(pci_rdvs) \ $(fs_rdvs) $(bios_rdvs) $(ne_rdvs) $(pe_rdvs) $(elf_rdvs) \ $(timer_rdvs) $(mouse_rdvs) $(v86bios_rdvs) $(file_rdvs) \ $(em_rdvs) $(dosdev_rdvs) $(ipc_rdvs) $(ipcdebug_rdvs) \ $(net_rdvs) $(ip_rdvs) \ $(keyboard_rdvs) $(inifile_rdvs) \ $(drive_rdvs) $(ramdrive_rdvs) $(rdfs_rdvs) $(flashfs_rdvs) \ $(time_rdvs) $(focus_rdvs) $(wait_rdvs) $(filedisc_rdvs) \ $(rtc_rdvs) $(font_rdvs) $(video_rdvs) maps = $(exes:.EXE=.MAP) $(rdvs:.RDV=.MAP) bats = RDOS.BAT # DEFINE MODULES FOR CMS vaxset_modules = $(srcs) $(incs) $(fonts) $(bats) # DEFINE MODULES FOR SYSTEM VERSION kit_modules = $(maps) $(bats) $(bins) #++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ # DEFAULT RULES #++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ .asm.obj: tasm /M4 /Zi /w+ICG /w+PRO $<,$@; # wasm -dt=dos -d1 -fpi87 $< #++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ # TARGET #++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ # +++++++++ # PROJ # +++++++++ !IFDEF VER VSMS: sort >vsm <kit <ver <