VirtualBox

Changeset 53978 in vbox for trunk/src/VBox/ExtPacks


Ignore:
Timestamp:
Jan 27, 2015 6:27:25 PM (10 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
97880
Message:

Completing the VBoxDTrace extension pack.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/ExtPacks/VBoxDTrace/Makefile.kmk

    r53976 r53978  
    2323
    2424#
     25# Globals.
     26#
     27VBOX_EXTPACK_VBOXDTRACE_NAME         := Oracle VBoxDTrace Extension Pack
     28VBOX_EXTPACK_VBOXDTRACE_MANGLED_NAME := Oracle_VBoxDTrace_Extension_Pack
     29VBOX_PATH_EXTPACK_VBOXDTRACE = $(PATH_STAGE)/$(INST_EXTPACK)$(VBOX_EXTPACK_VBOXDTRACE_MANGLED_NAME)
     30INST_EXTPACK_VBOXDTRACE = $(INST_EXTPACK)$(VBOX_EXTPACK_VBOXDTRACE_MANGLED_NAME)/
     31
     32
     33#
    2534# The generic wrapper that selects native or extpack dtrace cmd and adds our
    2635# library path to the command line.
     
    3342VBoxDTrace_SOURCES := VBoxDTraceWrapper.cpp
    3443VBoxDTrace_LIBS = $(LIB_RUNTIME)
     44
     45
     46#
     47# Extend the extension pack templates.
     48#
     49ifdef VBOX_WITH_EXTPACK_VBOXDTRACE
     50 TEMPLATE_VBoxR3ExtPackDTrace = For the ring-3 context modules in the VBoxDTrace extension pack.
     51 TEMPLATE_VBoxR3ExtPackDTrace_EXTENDS = VBoxR3ExtPack
     52 TEMPLATE_VBoxR3ExtPackDTrace_INST = $(INST_EXTPACK_VBOXDTRACE)$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH)/
     53
     54 TEMPLATE_VBoxR0ExtPackDTrace = For the ring-0 context modules in the VBoxDTrace extension pack.
     55 TEMPLATE_VBoxR0ExtPackDTrace_EXTENDS = VBoxR0ExtPack
     56 TEMPLATE_VBoxR0ExtPackDTrace_INST = $(INST_EXTPACK_VBOXDTRACE)$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH)/
     57
     58 TEMPLATE_VBoxInsExtPackDTrace = For the install targets for the VBoxDTrace extension pack.
     59 TEMPLATE_VBoxInsExtPackDTrace_EXTENDS = VBoxR0ExtPack
     60 TEMPLATE_VBoxInsExtPackDTrace_INST = $(INST_EXTPACK_VBOXDTRACE)
     61endif
    3562
    3663
     
    4774
    4875#
    49 # VBoxSkeletonMain - The module which the VirtualBox Main API talks to.
     76# VBoxDTraceMain - The module which the VirtualBox Main API talks to.
    5077#
    5178DLLS += VBoxDTraceMain
     
    197224
    198225
     226#
     227# Packing.
     228#
     229ifndef VBOX_WITHOUT_EXTPACK_VBOXDTRACE_PACKING
     230 PACKING += $(VBOX_PATH_PACKAGES)/$(VBOX_EXTPACK_VBOXDTRACE_MANGLED_NAME)-$(VBOX_VERSION_STRING)r$(VBOX_SVN_REV).vbox-extpack
     231endif
     232
     233ifndef VBOX_WITH_EXTPACK_OS_ARCHS
     234 ifeq ($(USER),bird) # for now
     235  VBOX_WITH_EXTPACK_OS_ARCHS = $(KBUILD_TARGET).$(KBUILD_TARGET_ARCH)
     236 endif
     237endif
     238
     239# Build the file list.  The macro takes 1=darwin.x86, 2=dist/VirtualBox.app/Contents/MacOS, 3=dylib
     240VBOX_VBOXDTRACE_FILES_MACRO = \
     241        $(PATH_OUT_BASE)/$(1)/$(KBUILD_TYPE)/$(2)/ExtensionPacks/$(VBOX_EXTPACK_VBOXDTRACE_MANGLED_NAME)/$(1)/VBoxDTraceMain.$(3)=>$(1)/VBoxDTraceMain.$(3) \
     242        $(PATH_OUT_BASE)/$(1)/$(KBUILD_TYPE)/$(2)/ExtensionPacks/$(VBOX_EXTPACK_VBOXDTRACE_MANGLED_NAME)/$(1)/VBoxDTraceCmd.$(3)=>$(1)/VBoxDTraceCmd.$(3) \
     243        $(PATH_OUT_BASE)/$(1)/$(KBUILD_TYPE)/$(2)/ExtensionPacks/$(VBOX_EXTPACK_VBOXDTRACE_MANGLED_NAME)/$(1)/VBoxDTraceR0.r0=>$(1)/VBoxDTraceR0.r0
     244
     245VBOX_VBOXDTRACE_FILES := \
     246        $(VBOX_PATH_EXTPACK_VBOXDTRACE)/ExtPack.xml=>ExtPack.xml \
     247        $(VBOX_PATH_EXTPACK_VBOXDTRACE)/ExtPack-SourceCodeLicense.txt=>ExtPack-SourceCodeLicense.txt
     248
     249if1of (darwin.amd64, $(VBOX_WITH_EXTPACK_OS_ARCHS))
     250 VBOX_VBOXDTRACE_FILES += $(call VBOX_VBOXDTRACE_FILES_MACRO,darwin.amd64,dist/VirtualBox.app/Contents/MacOS,dylib)
     251endif
     252if1of (darwin.x86, $(VBOX_WITH_EXTPACK_OS_ARCHS))
     253 VBOX_VBOXDTRACE_FILES += $(call VBOX_VBOXDTRACE_FILES_MACRO,darwin.x86,dist/VirtualBox.app/Contents/MacOS,dylib)
     254endif
     255if1of (freebsd.amd64, $(VBOX_WITH_EXTPACK_OS_ARCHS))
     256 VBOX_VBOXDTRACE_FILES += $(call VBOX_VBOXDTRACE_FILES_MACRO,freebsd.amd64,bin,so)
     257endif
     258if1of (freebsd.x86, $(VBOX_WITH_EXTPACK_OS_ARCHS))
     259 VBOX_VBOXDTRACE_FILES += $(call VBOX_VBOXDTRACE_FILES_MACRO,freebsd.x86,bin,so)
     260endif
     261if1of (linux.amd64, $(VBOX_WITH_EXTPACK_OS_ARCHS))
     262 VBOX_VBOXDTRACE_FILES += $(call VBOX_VBOXDTRACE_FILES_MACRO,linux.amd64,bin,so)
     263endif
     264if1of (linux.x86, $(VBOX_WITH_EXTPACK_OS_ARCHS))
     265 VBOX_VBOXDTRACE_FILES += $(call VBOX_VBOXDTRACE_FILES_MACRO,linux.x86,bin,so)
     266endif
     267if1of (os2.x86, $(VBOX_WITH_EXTPACK_OS_ARCHS))
     268 VBOX_VBOXDTRACE_FILES += $(call VBOX_VBOXDTRACE_FILES_MACRO,os2.x86,bin,so)
     269endif
     270if1of (solaris.amd64, $(VBOX_WITH_EXTPACK_OS_ARCHS))
     271 VBOX_VBOXDTRACE_FILES += $(call VBOX_VBOXDTRACE_FILES_MACRO,solaris.amd64,bin,so)
     272endif
     273if1of (solaris.x86, $(VBOX_WITH_EXTPACK_OS_ARCHS))
     274 VBOX_VBOXDTRACE_FILES += $(call VBOX_VBOXDTRACE_FILES_MACRO,solaris.x86,bin,so)
     275endif
     276if1of (win.amd64, $(VBOX_WITH_EXTPACK_OS_ARCHS))
     277 VBOX_VBOXDTRACE_FILES += $(call VBOX_VBOXDTRACE_FILES_MACRO,win.amd64,bin,dll)
     278endif
     279if1of (win.x86, $(VBOX_WITH_EXTPACK_OS_ARCHS))
     280 VBOX_VBOXDTRACE_FILES += $(call VBOX_VBOXDTRACE_FILES_MACRO,win.x86,bin,dll)
     281endif
     282
     283# Pack it all up using a temporary staging directory.
     284$(VBOX_PATH_PACKAGES)/$(VBOX_EXTPACK_VBOXDTRACE_MANGLED_NAME)-$(VBOX_VERSION_STRING)r$(VBOX_SVN_REV).vbox-extpack: \
     285                $$(foreach file, $$(VBOX_VBOXDTRACE_FILES), $$(firstword $$(subst =>,$$(SP),$$(file)))) \
     286                | $(VBOX_PATH_PACKAGES)/
     287        $(RM) -f $(wildcard $(VBOX_PATH_PACKAGES)/$(VBOX_EXTPACK_VBOXDTRACE_MANGLED_NAME)-*.vbox-extpack) \
     288                $(VBoxDTraceIns_0_OUTDIR)/ExtPack.manifest \
     289                $(VBoxDTraceIns_0_OUTDIR)/ExtPack.signature
     290# Stage all the files
     291        $(RM) -Rf $(VBoxDTraceIns_0_OUTDIR)/Stage/
     292        $(foreach file, $(VBOX_VBOXDTRACE_FILES),\
     293                $(NLTAB)$(MKDIR) -p $(dir $(lastword $(subst =>,$(SP)$(VBoxDTraceIns_0_OUTDIR)/Stage/,$(file)))) \
     294                $(NLTAB)$(CP) $(subst =>,$(SP)$(VBoxDTraceIns_0_OUTDIR)/Stage/,$(file)) )
     295# Create the manifest
     296        $(VBOX_RTMANIFEST) \
     297                --manifest $(VBoxDTraceIns_0_OUTDIR)/Stage/ExtPack.manifest \
     298                --chdir $(VBoxDTraceIns_0_OUTDIR)/Stage/ \
     299                $(foreach file, $(VBOX_VBOXDTRACE_FILES), $(lastword $(subst =>,$(SP),$(file))))
     300        $(APPEND) $(VBoxDTraceIns_0_OUTDIR)/Stage/ExtPack.signature "todo"
     301        $(CHMOD) a+r \
     302                $(VBoxDTraceIns_0_OUTDIR)/Stage/ExtPack.manifest \
     303                $(VBoxDTraceIns_0_OUTDIR)/Stage/ExtPack.signature
     304# Tar it up.
     305        tar -cvf - -C $(VBoxDTraceIns_0_OUTDIR)/Stage/ . | gzip -9c > $@
     306# Clean up
     307        $(RM) -Rf $(VBoxDTraceIns_0_OUTDIR)/Stage/
     308
     309BLDDIRS += $(VBOX_PATH_PACKAGES)/
     310
     311
    199312include $(FILE_KBUILD_SUB_FOOTER)
    200313
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