VirtualBox

Changeset 2784 in vbox for trunk/src


Ignore:
Timestamp:
May 23, 2007 12:10:23 AM (18 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
21391
Message:

Converted to sub-makefiles.

Location:
trunk/src/VBox/Devices
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/Graphics/BIOS/Makefile.kmk

    r2478 r2784  
    11# $Id$
    22## @file
    3 # VGA BIOS Makefile
     3# VGA BIOS Sub-Makefile
    44#
    55
     
    2020#
    2121
    22 DEPTH = ../../../../..
    23 include $(PATH_KBUILD)/header.kmk
     22DEPTH ?= ../../../../..
     23SUB_DEPTH = ../..
     24include $(PATH_KBUILD)/subheader.kmk
    2425
    25 BLDPROGS    = biossums
    26 LIBRARIES   = VgaBiosBin
    27 OTHERS      = $(PATH_TARGET)/vgabios.bin
    28 OTHER_CLEAN = \
     26VBOX_PATH_DEVICES_SRC = $(PATH_SUB_ROOT)
     27
     28#
     29# Build program for calculating the VGA BIOS checksums.
     30#
     31BLDPROGS += vgabiossums
     32vgabiossums_TEMPLATE   = VBOXBLDPROG
     33vgabiossums_SOURCES    = biossums.c
     34
     35#
     36# The library containing the VGA BIOS image.
     37#
     38LIBRARIES += VgaBiosBin
     39VgaBiosBin_TEMPLATE = VBOXR3
     40VgaBiosBin_DEFS     = IN_VBOXDD2
     41VgaBiosBin_INCS     = $(VBOX_PATH_DEVICES_SRC)
     42VgaBiosBin_SOURCES  = $(PATH_TARGET)/VgaBiosBin.c
     43VgaBiosBin_CLEAN    = \
    2944        $(PATH_TARGET)/_vgabios_.c \
    3045        $(PATH_TARGET)/vgabios0.s \
     
    4257        $(PATH_TARGET)/vgabios-cirrus.bin
    4358
    44 biossums_TEMPLATE   = VBOXBLDPROG
    45 biossums_SOURCES    = biossums.c
    46 
    47 VgaBiosBin_TEMPLATE = VBOXR3
    48 VgaBiosBin_DEFS     = IN_VBOXDD2
    49 VgaBiosBin_INCS     = ../..
    50 VgaBiosBin_SOURCES  = $(PATH_TARGET)/VgaBiosBin.c
    51 
    52 
    53 include $(PATH_KBUILD)/footer.kmk
    54 
    55 
    5659#
    5760# Rule for making the bios.
     
    6669
    6770# 1. precompile
    68 $(PATH_TARGET)/_vgabios_.c: vgabios.c vgabios.h vbe.h vgatables.h vgafonts.h vbe.c clext.c
     71$(PATH_TARGET)/_vgabios_.c: $(addprefix $(PATH_SUB_CURRENT)/,vgabios.c vgabios.h vbe.h vgatables.h vgafonts.h vbe.c clext.c)
    6972        $(call MSG_TOOL,cpp,VgaBiosBin,$<,$@)
    7073        $(QUIET)$(TOOL_$(VBOX_GCC_TOOL)_CC) -DVBOX -DVBOX_VERSION_STRING=\"$(VBOX_VERSION_STRING)\" -E -P $< -DVBE -DVGABIOS_DATE="''" $(addprefix -D,$(DEFS) $(DEFS.$(BUILD_TYPE))) > $@
     
    8689
    8790# 5. checksums
    88 $(PATH_TARGET)/vgabios.bin: $(PATH_TARGET)/vgabios.tmp $(TARGET_biossums)
    89         $(call MSG_TOOL,biossums,VgaBiosBin,$<,$@)
     91$(PATH_TARGET)/vgabios.bin: $(PATH_TARGET)/vgabios.tmp $$(TARGET_biossums)
     92        $(call MSG_TOOL,vgabiossums,VgaBiosBin,$<,$@)
    9093        $(QUIET)$(CP) -f $(PATH_TARGET)/vgabios.tmp $@
    91         $(QUIET)$(TARGET_biossums) $@
     94        $(QUIET)$(TARGET_vgabiossums) $@
    9295
     96
     97include $(PATH_KBUILD)/subfooter.kmk
     98
  • trunk/src/VBox/Devices/Makefile.kmk

    r2609 r2784  
    11# $Id$
    22## @file
    3 # Makefile for the devices, drivers and services.
     3# Top-level makefile for the devices, drivers and services.
    44#
    55
     
    2121
    2222DEPTH = ../../..
    23 include $(PATH_KBUILD)/header.kmk
    24 
    25 ifdef VBOX_WITH_TESTCASES
    26  PROGRAMS = tstIntNetR0
    27 endif
    28 LIBRARIES = DevicesR3 Drivers ServicesR0
    29 DLLS      = VBoxDDU VBoxDD VBoxDD2
    30 SYSMODS   = VBoxDDGC VBoxDD2GC VBoxDDR0 VBoxDD2R0
    31 
    32 OTHER_CLEAN = \
    33         $(PATH_TARGET)/vboxaml.hex \
    34         $(PATH_TARGET)/vboxaml.aml
    35 
    36 SUBDIRS   = \
    37         testcase \
    38         PC/BIOS \
    39         PC/Etherboot-src \
    40         Graphics/BIOS
    41 SUBDIRS_AFTER = \
    42         Storage/testcase
    43 
    44 
    45 #
    46 # Check for VBOX_* stuff which governs defines.
    47 #
    48 ifdef VBOX_USE_IOAPIC
    49  DEFS += USE_IOAPIC
    50 endif
    51 ifdef VBOX_WITH_VRDP
    52  DEFS += VBOX_VRDP
    53 endif
    54 ifdef VBOX_WITH_INTERNAL_NETWORKING
    55  DEFS += VBOX_WITH_INTERNAL_NETWORKING
    56 endif
    57 
    58 # enable the pdm lock.
     23include $(PATH_KBUILD)/subheader.kmk
     24
     25# Include sub-makefiles.
     26include $(PATH_SUB_CURRENT)/PC/BIOS/Makefile.kmk
     27include $(PATH_SUB_CURRENT)/Graphics/BIOS/Makefile.kmk
     28include $(PATH_SUB_CURRENT)/testcase/Makefile.kmk
     29include $(PATH_SUB_CURRENT)/Storage/testcase/Makefile.kmk
     30
     31# Subdirs with complex makefiles.
     32SUBDIRS_LIBRARIES = PC/Etherboot-src
     33
     34#
     35# Main targets.
     36#
     37LIBRARIES += DevicesR3 Drivers ServicesR0
     38DLLS      += VBoxDDU VBoxDD VBoxDD2
     39SYSMODS   += VBoxDDGC VBoxDD2GC VBoxDDR0 VBoxDD2R0
     40
     41
     42##
     43## Enable the pdm lock (experimental).
     44##
    5945#DEFS += VBOX_WITH_PDM_LOCK
    6046
     
    207193DevicesR3_DEFS.l4      += _GNU_SOURCE
    208194
    209 
    210195# DevACPI.cpp needs vboxaml.hex which we generate from PC/vbox.dsl.
     196DevicesR3_CLEAN        += $(PATH_TARGET)/vboxaml.hex $(PATH_TARGET)/vboxaml.aml
    211197PC/DevACPI.cpp_DEPS     = $(PATH_TARGET)/vboxaml.hex
    212198PC/DevACPI.cpp_INCS     = $(PATH_TARGET)
     199
     200$(PATH_TARGET)/vboxaml.hex: PC/vbox.dsl
     201        $(call MSG_TOOL,iasl,DevicesR3,$<,$@)
     202        $(QUIET)$(VBOX_IASLCMD) -tc -vs -p $@ $<
     203
     204# For finding PCIInternal.h from VBox/pci.h.
    213205Bus/DevPCI.cpp_INCS     = Bus
     206
    214207
    215208
     
    468461        USB/VUSBUrb.cpp
    469462 ifdef VBOX_WITH_VRDP
     463  Drivers_DEFS        += VBOX_VRDP
    470464  Drivers_SOURCES     += \
    471465        USB/vrdp/USBProxyDevice-vrdp.cpp
     
    509503# Internal Networking - Ring-3 Testcase for the Ring-0 code (a bit hackish).
    510504#
    511 tstIntNetR0_TEMPLATE    = VBOXR3TSTEXE
    512 tstIntNetR0_DEFS        = IN_INTNET_R0
    513 tstIntNetR0_SOURCES     = \
     505ifdef VBOX_WITH_TESTCASES
     506 PROGRAMS += tstIntNetR0
     507 tstIntNetR0_TEMPLATE    = VBOXR3TSTEXE
     508 tstIntNetR0_DEFS        = IN_INTNET_R0
     509 tstIntNetR0_SOURCES     = \
    514510        Network/testcase/tstIntNetR0.cpp
    515 tstIntNetR0_LIBS        = \
     511 tstIntNetR0_LIBS        = \
    516512        $(LIB_RUNTIME)
    517 
    518 
    519 include $(PATH_KBUILD)/footer.kmk
    520 
    521 
    522 # ACPI DSL generation
    523 $(PATH_TARGET)/vboxaml.hex: PC/vbox.dsl
    524         $(call MSG_TOOL,iasl,DevACPI,$<,$@)
    525         $(QUIET)$(VBOX_IASLCMD) -tc -vs -p $@ $<
    526 
     513endif
     514
     515
     516include $(PATH_KBUILD)/subfooter.kmk
     517
  • trunk/src/VBox/Devices/PC/BIOS/Makefile.kmk

    r2478 r2784  
    11# $Id$
    22## @file
    3 # PC BIOS makefile.
     3# PC BIOS Sub-Makefile.
    44#
    55
     
    2020#
    2121
    22 DEPTH = ../../../../../
    23 include $(PATH_KBUILD)/header.kmk
     22DEPTH ?= ../../../../../
     23SUBDEPTH = ../..
     24include $(PATH_KBUILD)/subheader.kmk
    2425
    25 BLDPROGS    = biossums
    26 LIBRARIES   = PcBiosBin PcDefBiosLogo
     26VBOX_PATH_DEVICES_SRC = $(PATH_SUB_ROOT)
    2727
    28 OTHERS      = $(PATH_TARGET)/bios.bin
     28#
     29# Build program for calculating the PC BIOS checksums.
     30#
     31BLDPROGS += pcbiossums
     32pcbiossums_TEMPLATE = VBOXBLDPROG
     33pcbiossums_SOURCES  = biossums.c
    2934
    30 OTHER_CLEAN = \
     35
     36#
     37# The library containing the PC BIOS image.
     38#
     39LIBRARIES += PcBiosBin
     40PcBiosBin_TEMPLATE  = VBOXR3
     41PcBiosBin_DEFS      = IN_VBOXDD2
     42PcBiosBin_INCS      = $(VBOX_PATH_DEVICES_SRC)
     43PcBiosBin_SOURCES   = $(PATH_TARGET)/PcBiosBin.c
     44$(PATH_TARGET)/PcBiosBin.c_DEPS = $(PATH_TARGET)/pcbios-syms.h
     45PcBiosBin_CLEAN     = \
    3146        $(PATH_TARGET)/_rombios_.c \
    3247        $(PATH_TARGET)/rombios0.s \
    3348        $(PATH_TARGET)/rombios1.s \
    34         $(PATH_TARGET)/bios.lst \
    35         $(PATH_TARGET)/bios.tmp \
    36         $(PATH_TARGET)/bios.bin \
     49        $(PATH_TARGET)/pcbios.lst \
     50        $(PATH_TARGET)/pcbios.tmp \
     51        $(PATH_TARGET)/pcbios.bin \
    3752        $(PATH_TARGET)/PcBiosBin.c \
    3853        $(PATH_TARGET)/PcDefBiosLogo.c \
    39         $(PATH_TARGET)/bios-syms.h
    40 
    41 TEMPLATE = VBOXBLDPROG
    42 biossums_SOURCES    = biossums.c
    43 
    44 PcBiosBin_TEMPLATE  = VBOXR3
    45 PcBiosBin_DEFS      = IN_VBOXDD2
    46 PcBiosBin_INCS      = ../..
    47 PcBiosBin_SOURCES   = $(PATH_TARGET)/PcBiosBin.c
    48 $(PATH_TARGET)/PcBiosBin.c_DEPS = $(PATH_TARGET)/bios-syms.h
    49 
    50 PcDefBiosLogo_TEMPLATE  = VBOXR3
    51 PcDefBiosLogo_INCS      = ../..
    52 PcDefBiosLogo_SOURCES   = $(PATH_TARGET)/PcDefBiosLogo.c
    53 
    54 
    55 include $(PATH_KBUILD)/footer.kmk
    56 
     54        $(PATH_TARGET)/pcbios-syms.h
    5755
    5856#
    5957# Rule for making the bios.
    6058#
    61 $(PATH_TARGET)/PcBiosBin.c: $(PATH_TARGET)/bios.bin $(VBOX_BIN2C)
     59$(PATH_TARGET)/PcBiosBin.c: $(PATH_TARGET)/pcbios.bin $(VBOX_BIN2C)
    6260        $(call MSG_TOOL,bin2c,PcBiosBin,$<,$@)
    6361        $(QUIET)$(VBOX_BIN2C) -min 64 -max 256 -mask 0xffff -ascii -export PcBiosBinary $< $@
    6462
    6563#
    66 # Rule for making the bios logo.
    67 #
    68 $(PATH_TARGET)/PcDefBiosLogo.c: innotek_logo.bmp $(VBOX_BIN2C)
    69         $(call MSG_TOOL,bin2c,PcBiosBin,$<,$@)
    70         $(QUIET)$(VBOX_BIN2C) -max 64 PcDefBiosLogo $< $@
    71 
    72 #
    73 # Six steps to bios.bin and bios-syms.h
     64# Six steps to pcbios.bin and pcbios-syms.h
    7465#
    7566
    7667# 1. precompile rombios.c
    77 $(PATH_TARGET)/_rombios_.c: rombios.c logo.c apmbios.S | $(call DIRDEP,$(TARGET_PATH))
     68$(PATH_TARGET)/_rombios_.c: $(PATH_SUB_CURRENT)/rombios.c $(PATH_SUB_CURRENT)/logo.c $(PATH_SUB_CURRENT)/apmbios.S | $(call DIRDEP,$(TARGET_PATH))
    7869        $(call MSG_TOOL,cpp,PcBiosBin,$<,$@)
    79         $(QUIET)$(TOOL_$(VBOX_GCC_TOOL)_CC) -E -I$(PATH_TARGET) -I$(PATH_CURRENT)/.. -I$(PATH_ROOT)/include -I$(PATH_OUT) -DBX_SMP_PROCESSORS=1 -DVBOX $(addprefix -D,$(DEFS) $(DEFS.$(BUILD_TYPE))) -P $< > $@
     70        $(QUIET)$(TOOL_$(VBOX_GCC_TOOL)_CC) -E -I$(PATH_TARGET) -I$(VBOX_PATH_DEVICES_SRC)/PC -I$(PATH_ROOT)/include -I$(PATH_OUT) -DBX_SMP_PROCESSORS=1 -DVBOX $(addprefix -D,$(DEFS) $(DEFS.$(BUILD_TYPE))) -P $< > $@
    8071
    8172# 2. compile to intermediate asm file.
     
    9081
    9182# 4. assemble the intermediate asm file. (also creates a listing rombios.lst)
    92 $(PATH_TARGET)/bios.tmp $(PATH_TARGET)/bios.lst: $(PATH_TARGET)/rombios1.s
     83$(PATH_TARGET)/pcbios.tmp $(PATH_TARGET)/pcbios.lst: $(PATH_TARGET)/rombios1.s
    9384        $(call MSG_COMPILE,PcBiosBin,$<,$@,AS)
    94         $(QUIET)$(VBOX_AS86) -b $(PATH_TARGET)/bios.tmp -u- -w- -g -0 -j -O -l $(PATH_TARGET)/bios.lst - < $^
     85        $(QUIET)$(VBOX_AS86) -b $(PATH_TARGET)/pcbios.tmp -u- -w- -g -0 -j -O -l $(PATH_TARGET)/pcbios.lst - < $^
    9586
    9687# 5. calculate checksums for the final BIOS image.
    97 $(PATH_TARGET)/bios.bin: $(PATH_TARGET)/bios.tmp $(TARGET_biossums)
    98         $(call MSG_TOOL,biossums,PcBiosBin,$<,$@)
    99         $(QUIET)$(CP) -f $(PATH_TARGET)/bios.tmp $(PATH_TARGET)/bios.bin
    100         $(QUIET)$(TARGET_biossums) $(PATH_TARGET)/bios.bin
     88$(PATH_TARGET)/pcbios.bin: $(PATH_TARGET)/pcbios.tmp $$(TARGET_pcbiossums)
     89        $(call MSG_TOOL,pcbiossums,PcBiosBin,$<,$@)
     90        $(QUIET)$(CP) -f $(PATH_TARGET)/pcbios.tmp $(PATH_TARGET)/pcbios.bin
     91        $(QUIET)$(TARGET_pcbiossums) $(PATH_TARGET)/pcbios.bin
    10192
    10293# 6. create the symbol table.
    103 $(PATH_TARGET)/bios-syms.h: $(PATH_TARGET)/bios.lst Makefile.kmk
    104         $(call MSG_TOOL,symtable,PcBiosBin,$<,$@)
     94$(PATH_TARGET)/pcbios-syms.h: $(PATH_TARGET)/pcbios.lst $(MAKEFILE_CURRENT)
     95        $(call MSG_GENERATE,PcBiosBin,$<,$@)
    10596        $(QUIET)$(SED) \
    10697                -e  '/^[0-9][0-9][0-9][0-9][0-9]                       000[0-9A-F]*            [[:space:]]*[a-zA-Z0-9_]*:/!d' \
    10798                -e 's/^[0-9][0-9][0-9][0-9][0-9]                       \(000[0-9A-F]*\)            [[:space:]]*\([a-zA-Z0-9_]*\):.*$$/    DEFSYM(0x\1, "\2"),/' \
    108                 $(PATH_TARGET)/bios.lst > $@
     99                $(PATH_TARGET)/pcbios.lst > $@
    109100
     101
     102#
     103# The PC BIOS Logo.
     104#
     105LIBRARIES += PcDefBiosLogo
     106PcDefBiosLogo_TEMPLATE  = VBOXR3
     107PcDefBiosLogo_INCS      = $(VBOX_PATH_DEVICES_SRC)
     108PcDefBiosLogo_SOURCES   = $(PATH_TARGET)/PcDefBiosLogo.c
     109
     110#
     111# Rule for making the bios logo.
     112#
     113$(PATH_TARGET)/PcDefBiosLogo.c: $(PATH_SUB_CURRENT)/innotek_logo.bmp $(VBOX_BIN2C)
     114        $(call MSG_TOOL,bin2c,PcBiosBin,$<,$@)
     115        $(QUIET)$(VBOX_BIN2C) -max 64 PcDefBiosLogo $< $@
     116
     117
     118include $(PATH_KBUILD)/subfooter.kmk
     119
  • trunk/src/VBox/Devices/Storage/testcase/Makefile.kmk

    r2478 r2784  
    11# $Id$
    22## @file
    3 # Makefile for the storage device & driver testcases.
     3# Sub-Makefile for the storage device & driver testcases.
    44#
    55
     
    2020#
    2121
    22 DEPTH = ../../../../..
    23 include $(PATH_KBUILD)/header.kmk
     22DEPTH ?= ../../../../..
     23SUB_DEPTH = ../..
     24include $(PATH_KBUILD)/subheader.kmk
    2425
    25 PROGRAMS        += vditool
     26#
     27# vditool - useful too for manipulating VDIs.
     28#
     29PROGRAMS += vditool
    2630vditool_TEMPLATE = VBOXR3EXE
    2731vditool_SOURCES  = vditool.cpp
     
    3438
    3539
     40#
     41# Basic testcase for the VDI code.
     42#
    3643ifdef VBOX_WITH_TESTCASES
    37  PROGRAMS       += tstVDI
     44 PROGRAMS += tstVDI
    3845 tstVDI_TEMPLATE = VBOXR3TSTEXE
    3946 tstVDI_SOURCES  = tstVDI.cpp
     
    4249
    4350
    44 include $(PATH_KBUILD)/footer.kmk
     51include $(PATH_KBUILD)/subfooter.kmk
    4552
  • trunk/src/VBox/Devices/testcase/Makefile.kmk

    r2478 r2784  
    11# $Id$
    22## @file
    3 # Makefile for the Devices testcases.
     3# Sub-Makefile for the Devices testcases.
    44#
    55
     
    2020#
    2121
    22 DEPTH = ../../../..
    23 include $(PATH_KBUILD)/header.kmk
     22DEPTH ?= ../../../..
     23SUB_DEPTH = ..
     24include $(PATH_KBUILD)/subheader.kmk
    2425
    2526#
    26 # Target lists.
    27 #
    28 PROGRAMS = tstDeviceStructSize tstDeviceStructSizeGC
    29 
    30 
    31 #
    32 # We setup one 'other' targets for executing the structure & alignment
     27# We setup one 'other' target for executing the structure & alignment
    3328# validation testcases. Perhaps a bit hackish, but extremely useful.
    3429#
    3530ifeq ($(BUILD_TARGET),$(BUILD_PLATFORM))
    3631 ifeq ($(filter-out x86.x86 amd64.amd64 x86.amd64, $(BUILD_TARGET_ARCH).$(BUILD_PLATFORM_ARCH)),)
    37   OTHERS          += \
     32  OTHERS += \
    3833        $(PATH_TARGET)/tstDeviceStructSize.run
    3934 endif
    4035endif
    41 OTHER_CLEAN     += \
    42         $(PATH_TARGET)/tstDeviceStructSizeGC.h \
    43         $(PATH_TARGET)/tstDeviceStructSize.run \
     36
     37#
     38# Globals
     39#
     40VBOX_PATH_DEVICES_SRC = $(PATH_SUB_ROOT)
    4441
    4542#
    4643# The testcase generator.
    4744#
     45PROGRAMS += tstDeviceStructSizeGC
    4846tstDeviceStructSizeGC_TEMPLATE  = VBOXGCEXE
    4947tstDeviceStructSizeGC_DEFS      =
     
    5250endif
    5351tstDeviceStructSizeGC_SOURCES   = tstDeviceStructSizeGC.cpp
    54 tstDeviceStructSizeGC_INCS      = .. ../Bus
     52tstDeviceStructSizeGC_INCS      = \
     53        $(VBOX_PATH_DEVICES_SRC) \
     54        $(VBOX_PATH_DEVICES_SRC)/Bus \
     55        $(PATH_TARGET)
    5556
    5657#
    5758# The testcase it self.
    5859#
     60PROGRAMS += tstDeviceStructSize
    5961tstDeviceStructSize_TEMPLATE = VBOXR3EXE
    6062tstDeviceStructSize_DEFS     =
     
    6264tstDeviceStructSize_DEFS    += VBOX_WITH_USB IN_USB_GC
    6365endif
    64 tstDeviceStructSize_INCS     = .. ../Bus $(PATH_TARGET)
     66tstDeviceStructSize_INCS     = \
     67        $(VBOX_PATH_DEVICES_SRC) \
     68        $(VBOX_PATH_DEVICES_SRC)/Bus \
     69        $(PATH_TARGET)
    6570tstDeviceStructSize_SOURCES  = tstDeviceStructSize.cpp
    6671tstDeviceStructSize_LIBS.l4  = $(LIB_RUNTIME)
     72tstDeviceStructSize_CLEAN    = \
     73        $(PATH_TARGET)/tstDeviceStructSizeGC.h \
     74        $(PATH_TARGET)/tstDeviceStructSizeGC.run
    6775tstDeviceStructSize.cpp_DEPS = $(PATH_TARGET)/tstDeviceStructSizeGC.h
    68 
    69 
    70 include $(PATH_KBUILD)/footer.kmk
    71 
    7276
    7377#
     
    9397run-struct-tests: $(PATH_TARGET)/tstDeviceStructSize.run
    9498
     99
     100include $(PATH_KBUILD)/subfooter.kmk
     101
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette