VirtualBox

Changeset 99715 in vbox


Ignore:
Timestamp:
May 10, 2023 12:43:47 AM (23 months ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
157268
Message:

*.kmk: Changed the VBOX_ONLY_SDK_ON_WINDOWS for VBOX_ONLY_SDK_ON_HOST and VBOX_ONLY_SDK_IN_VM and added proper sdk-fetch, sdk-build and sdk-package targets to the root makefile. Adjusted packing in the installer makefile as well (a bit crude, just zipping up the linux then the windows sdk directories into a single zip file). bugref:10442

Location:
trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/Config.kmk

    r99710 r99715  
    23792379
    23802380# Define the macro for win path conversion.
    2381 if !defined(VBOX_ONLY_SDK) || defined(VBOX_ONLY_SDK_ON_WINDOWS)
     2381if !defined(VBOX_ONLY_SDK) || defined(VBOX_ONLY_SDK_ON_HOST) || defined(VBOX_ONLY_SDK_IN_VM)
    23822382 VBOX_FN_MAKE_WIN_PATH = "$(quote-sh-dq $(subst /,\,$(requote unq, $(1))))"
    23832383else
  • trunk/Makefile.kmk

    r99709 r99715  
    3434ifndef VBOX_ONLY_ROOT_MAKEFILE
    3535 if   (defined(VBOX_WITH_DOCS) || defined(VBOX_WITH_MAIN)) \
    36    && (!defined(VBOX_ONLY_BUILD) || defined(VBOX_ONLY_DOCS) || defined(VBOX_ONLY_SDK)) \
     36   && (   !defined(VBOX_ONLY_BUILD) \
     37       || defined(VBOX_ONLY_DOCS) \
     38       || (defined(VBOX_ONLY_SDK) && !defined(VBOX_ONLY_SDK_IN_VM))) \
    3739   && "$(intersects $(KBUILD_TARGET_ARCH),$(VBOX_SUPPORTED_HOST_ARCHS))" != ""
    3840  include $(PATH_SUB_CURRENT)/doc/manual/Makefile.kmk
     
    99101 # and .linux property suffixes.
    100102 #
    101  if !defined(VBOX_ONLY_SDK_ON_WINDOWS)
     103 if !defined(VBOX_ONLY_SDK)
    102104  INSTALLS += InstallExternalLibs
    103105 endif
     
    20052007
    20062008
     2009
     2010#
     2011# Build the SDK, all of it.
     2012#
     2013# Hosting the build on windows, with the linux part in a VM.
     2014#
     2015sdk-fetch:
     2016        + $(KMK) -C tools fetch VBOX_ONLY_SDK=1 VBOX_ONLY_SDK_ON_HOST=1
     2017        + $(KMK) -C tools fetch VBOX_ONLY_SDK=1 VBOX_ONLY_SDK_IN_VM=1 KBUILD_TARGET=linux KBUILD_HOST=linux
     2018        + $(KMK) -C tools fetch VBOX_ONLY_SDK=1 VBOX_ONLY_SDK_IN_VM=1 KBUILD_TARGET=win   KBUILD_HOST=win
     2019
     2020sdk-build: \
     2021                sdk-build-rsync-into-vms \
     2022                sdk-build-linux \
     2023                sdk-build-win
     2024
     2025sdk-build-rsync-into-vms: \
     2026                sdk-build-linux.rsync-into-vm
     2027        $(call MSG_L1,Rsynced the sources + tools into the VM(s).)
     2028.NOTPARALLEL: sdk-build-rsync-into-vms
     2029.PHONY: sdk-build-rsync-into-vms
     2030
     2031VBOX_SDK_BUILD.amd64 = VBOX_ONLY_SDK=1 KBUILD_TYPE=$(KBUILD_TYPE) KBUILD_TARGET_ARCH=amd64 VBOX_SVN_REV=$(VBOX_SVN_REV)
     2032
     2033# Automatically determine the SDL build subdir name. Used for figuring
     2034# out directory names inside the test suite building VMs.
     2035VBOX_SDK_BUILD_SUBDIRNAME := $(lastword $(subst /, ,$(PATH_ROOT)))
     2036
     2037sdk-build-win:
     2038ifeq ($(KBUILD_TARGET),win)
     2039        + $(TIME) -- $(KMK) $(VBOX_SDK_BUILD.amd64) VBOX_ONLY_SDK_ON_HOST=1 all $(VBOX_SDK_HOST_BUILD_TWEAK)
     2040else
     2041        $(call VBOX_BLD_VM_MSG_BEGIN,Windows/amd64 SDK)
     2042        $(TIME) -- $(VBOX_SSH) vbox@$(VBOX_BLD_VM_WIN_X86_IP) 'cd e:/$(VBOX_SDK_BUILD_SUBDIRNAME) && tools/env.sh kmk $(VBOX_SDK_BUILD.amd64) VBOX_ONLY_SDK_IN_VM=1 all '
     2043        $(call VBOX_BLD_VM_MSG_END__,Windows/amd64 SDK)
     2044endif
     2045
     2046ifeq ($(KBUILD_TARGET),linux)
     2047 sdk-build-linux:
     2048        + $(TIME) -- $(KMK) $(VBOX_SDK_BUILD.amd64) all $(VBOX_SDK_HOST_BUILD_TWEAK)
     2049
     2050else
     2051 sdk-build-linux.rsync-into-vm: $(VBOX_SDK_BUILD_WIN_HOST_FIRST)
     2052        $(TIME) -- $(call VBOX_RSYNC_IN_FN,linux,*) \
     2053                '--exclude=src/VBox/Additions/**' \
     2054                '--exclude=src/VBox/Artwork/**' \
     2055                '--exclude=src/VBox/Devices**' \
     2056                '--exclude=src/VBox/Debugger/**' \
     2057                '--exclude=src/VBox/Disassembler/**' \
     2058                '--exclude=src/VBox/ExtPacks/**' \
     2059                '--exclude=src/VBox/Frontends/VirtualBox/**' \
     2060                '--exclude=src/VBox/GuestHost/**' \
     2061                '--exclude=src/VBox/HostDrivers/**' \
     2062                '--exclude=src/VBox/HostServices/**' \
     2063                '--exclude=src/VBox/ImageMounter/**' \
     2064                '--exclude=src/VBox/NetworkServices/**' \
     2065                '--exclude=src/VBox/Runtime/**' \
     2066                '--exclude=src/VBox/Storage/**' \
     2067                '--exclude=src/VBox/VMM/**' \
     2068                . $(VBOX_BLD_VM_LNX_IP):/mnt/tinderbox/$(VBOX_SDK_BUILD_SUBDIRNAME)
     2069
     2070 sdk-build-linux.build-it: sdk-build-linux.rsync-into-vm
     2071        $(call VBOX_BLD_VM_MSG_BEGIN,Linux/amd64 SDK)
     2072        $(TIME) -- $(VBOX_SSH) vbox@$(VBOX_BLD_VM_LNX_IP) 'dchroot -c debian-4.0-amd64 "cd /mnt/tinderbox/$(VBOX_SDK_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_SDK_BUILD.amd64) VBOX_ONLY_SDK_IN_VM=1 all " '
     2073        $(call VBOX_BLD_VM_MSG_END__,Linux/amd64 SDK)
     2074
     2075 sdk-build-linux.rsync-out-of-vm: sdk-build-linux.build-it
     2076        $(TIME) -- $(VBOX_RSYNC) -a --delete $(VBOX_BLD_VM_LNX_IP):/mnt/tinderbox/$(VBOX_SDK_BUILD_SUBDIRNAME)/out/linux.amd64 out/
     2077
     2078 .PHONY: sdk-build-linux.rsync-out-of-vm sdk-build-linux.rsync-into-vm sdk-build-linux.build-it
     2079
     2080 sdk-build-linux: sdk-build-linux.rsync-out-of-vm
     2081endif
     2082
     2083
     2084sdk-packing:
     2085        + $(KMK) VBOX_ONLY_SDK=1 VBOX_ONLY_SDK_ON_HOST=1 \
     2086                VBOX_WITH_SDK_PACKING.linux.amd64=1 \
     2087                VBOX_WITH_SDK_PACKING.win.amd64=1 \
     2088                -C src/VBox/Installer packing
     2089.PHONY: \
     2090                sdk-fetch \
     2091                sdk-build \
     2092                sdk-build-linux \
     2093                sdk-build-win \
     2094                sdk-packing
     2095
     2096
    20072097#
    20082098# Generate VirtualBox-x.x.x.zip (PUEL) snapshot archive for internal use only
     
    21302220
    21312221
    2132 #
    2133 # Aliases for building the SDK.
    2134 #
    2135 .NOTPARALLEL: sdk sdk-fetch
    2136 sdk:
    2137         + $(KMK) VBOX_ONLY_SDK=1 $(if-expr "$(KBUILD_HOST)" == "win",VBOX_ONLY_SDK_ON_WINDOWS=1,) \
    2138                 pass_bldprogs pass_others pass_installs pass_packing
    2139 
    2140 sdk-fetch:
    2141         + $(KMK) VBOX_ONLY_SDK=1 $(if-expr "$(KBUILD_HOST)" == "win",VBOX_ONLY_SDK_ON_WINDOWS=1,) \
    2142                 -C tools
    2143 
    21442222
    21452223#
  • trunk/src/Makefile.kmk

    r99701 r99715  
    3131include $(PATH_SUB_CURRENT)/bldprogs/Makefile.kmk
    3232include $(PATH_SUB_CURRENT)/VBox/Makefile.kmk
    33 if !defined(VBOX_ONLY_SDK_ON_WINDOWS) || "$(KBUILD_TARGET)" != "win"
     33if !defined(VBOX_ONLY_SDK) || "$(KBUILD_TARGET)" != "win"
    3434 include $(PATH_SUB_CURRENT)/libs/Makefile.kmk
    3535endif
  • trunk/src/VBox/Installer/Makefile.kmk

    r99701 r99715  
    5959include $(PATH_SUB_CURRENT)/common/Makefile.kmk
    6060
    61 if defined(VBOX_ONLY_SDK) ## @todo || defined(VBOX_WITH_SDK)
     61if defined(VBOX_ONLY_SDK) || defined(VBOX_WITH_SDK)
    6262 #
    6363 # Package the VirtualBox SDK.
     
    7373                $(VBOX_VERSION_STAMP)
    7474        $(call MSG_L1,Making SDK delivery $@)
     75 ifdef VBOX_ONLY_SDK_ON_HOST
     76        $(QUIET)$(RM) -f -- "$@"
     77  if defined(VBOX_WITH_SDK_PACKING.linux.amd64) && "$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH)" != "linux.amd64"
     78        $(REDIRECT) -C "$(PATH_OUT_BASE)/linux.amd64/$(KBUILD_TYPE)/bin/" -- $(VBOX_ZIP) -r9Xv "$@" sdk
     79  endif
     80  if defined(VBOX_WITH_SDK_PACKING.win.amd64) && "$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH)" != "win.amd64"
     81        $(REDIRECT) -C "$(PATH_OUT_BASE)/win.amd64/$(KBUILD_TYPE)/bin/"   -- $(VBOX_ZIP) -r9Xv "$@" sdk
     82  endif
     83        $(REDIRECT) -C "$(PATH_STAGE_BIN)/"                               -- $(VBOX_ZIP) -r9Xv "$@" sdk
     84        $(call MSG_L1, Ready: $@)
     85 else  # !VBOX_ONLY_SDK_ON_HOST
    7586        $(QUIET)$(REDIRECT) $(if $(QUIET),-wo /dev/null,) -C $(PATH_STAGE_BIN) -- $(VBOX_ZIP) -r9 "$@" sdk
     87 endif # !VBOX_ONLY_SDK_ON_HOST
    7688endif
    7789
  • trunk/src/VBox/Main/Makefile.kmk

    r99714 r99715  
    6363VBOX_PATH_MAIN_SRC := $(PATH_SUB_CURRENT)
    6464
    65 if defined(VBOX_ONLY_SDK) && !defined(VBOX_ONLY_SDK_ON_WINDOWS)
     65if defined(VBOX_ONLY_SDK) && !defined(VBOX_ONLY_SDK_ON_HOST) && !defined(VBOX_ONLY_SDK_IN_VM) # Hacks for building SDK using wine.
    6666 ifndef TOOL_$(VBOX_VCC_TOOL)
    6767  include $(KBUILD_PATH)/tools/$(VBOX_VCC_TOOL).kmk # For the idl /cpp statement.
     
    218218
    219219# The MS COM specific stuff.
    220 if "$(KBUILD_TARGET)" == "win" || (defined(VBOX_ONLY_SDK) && !defined(VBOX_ONLY_SDK_ON_WINDOWS))
     220if "$(KBUILD_TARGET)" == "win" || (defined(VBOX_ONLY_SDK) && !defined(VBOX_ONLY_SDK_ON_HOST) && !defined(VBOX_ONLY_SDK_IN_VM))
    221221 OTHERS         += \
    222222        $(VBOX_IDL_FILE.MSCOM)
     
    307307        $(APPEND) $(PATH_TARGET)/docs.Main
    308308
    309 if defined(VBOX_ONLY_SDK) || defined(VBOX_WITH_SDK)
     309if (defined(VBOX_ONLY_SDK) || defined(VBOX_WITH_SDK)) && !defined(VBOX_ONLY_SDK_IN_VM)
    310310 OTHERS += $(PATH_TARGET)/docs.Main
    311311endif
     
    16681668        $(QUIET)$(VBOX_XSLTPROC) -o $@ $< $(VBOX_XIDL_FILE)
    16691669
    1670 if "$(KBUILD_TARGET)" == "win" || (defined(VBOX_ONLY_SDK) && !defined(VBOX_ONLY_SDK_ON_WINDOWS))
     1670if "$(KBUILD_TARGET)" == "win" || (defined(VBOX_ONLY_SDK) && !defined(VBOX_ONLY_SDK_ON_HOST) && !defined(VBOX_ONLY_SDK_IN_VM))
    16711671
    16721672 # Note! Because we've got a different proxy stub DLL for pre windows 7 64-bit hosts, we target windows 7 for AMD64.
     
    17401740 endif
    17411741
    1742 endif # "$(KBUILD_TARGET)" == "win" || (defined(VBOX_ONLY_SDK) && !defined(VBOX_ONLY_SDK_ON_WINDOWS))
     1742endif # "$(KBUILD_TARGET)" == "win" || (defined(VBOX_ONLY_SDK) && !defined(VBOX_ONLY_SDK_ON_HOST) && !defined(VBOX_ONLY_SDK_IN_VM))
    17431743
    17441744#
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