diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-27 14:19:18 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-27 14:19:18 +0000 |
commit | 4035b1bfb1e5843a539a8b624d21952b756974d1 (patch) | |
tree | f1e9cd5bf548cbc57ff2fddfb2b4aa9ae95587e2 /src/VBox/Runtime/tools/Makefile.kmk | |
parent | Initial commit. (diff) | |
download | virtualbox-4035b1bfb1e5843a539a8b624d21952b756974d1.tar.xz virtualbox-4035b1bfb1e5843a539a8b624d21952b756974d1.zip |
Adding upstream version 6.1.22-dfsg.upstream/6.1.22-dfsgupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/VBox/Runtime/tools/Makefile.kmk')
-rw-r--r-- | src/VBox/Runtime/tools/Makefile.kmk | 239 |
1 files changed, 239 insertions, 0 deletions
diff --git a/src/VBox/Runtime/tools/Makefile.kmk b/src/VBox/Runtime/tools/Makefile.kmk new file mode 100644 index 00000000..d09f743f --- /dev/null +++ b/src/VBox/Runtime/tools/Makefile.kmk @@ -0,0 +1,239 @@ +# $Id: Makefile.kmk $ +## @file +# Sub-Makefile for the IPRT tools. +# + +# +# Copyright (C) 2006-2020 Oracle Corporation +# +# This file is part of VirtualBox Open Source Edition (OSE), as +# available from http://www.virtualbox.org. This file is free software; +# you can redistribute it and/or modify it under the terms of the GNU +# General Public License (GPL) as published by the Free Software +# Foundation, in version 2 as it comes in the "COPYING" file of the +# VirtualBox OSE distribution. VirtualBox OSE is distributed in the +# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind. +# +# The contents of this file may alternatively be used under the terms +# of the Common Development and Distribution License Version 1.0 +# (CDDL) only, as it comes in the "COPYING.CDDL" file of the +# VirtualBox OSE distribution, in which case the provisions of the +# CDDL are applicable instead of those of the GPL. +# +# You may elect to license modified versions of this file under the +# terms and conditions of either the GPL or the CDDL or both. +# + +SUB_DEPTH = ../../../.. +include $(KBUILD_PATH)/subheader.kmk + + +if !defined(VBOX_ONLY_EXTPACKS) && !defined(VBOX_ONLY_DOCS) + # RTIsoMaker - ISO image maker - build version. + ifeq ($(KBUILD_TARGET), win) # Needed for repacking guest additions. + PROGRAMS += bldRTIsoMaker + bldRTIsoMaker_INSTTYPE = stage + else + BLDPROGS += bldRTIsoMaker + endif + bldRTIsoMaker_TEMPLATE = VBoxAdvBldProg + bldRTIsoMaker_SOURCES = \ + RTIsoMaker.cpp \ + ../common/misc/buildconfig.cpp + bldRTIsoMaker_DEFS = \ + IPRT_BLDCFG_SCM_REV=$(if $(VBOX_SVN_REV_FALLBACK),$(VBOX_SVN_REV_FALLBACK),$(VBOX_SVN_REV)) \ + IPRT_BLDCFG_VERSION_MAJOR=$(VBOX_VERSION_MAJOR) \ + IPRT_BLDCFG_VERSION_MINOR=$(VBOX_VERSION_MINOR) \ + IPRT_BLDCFG_VERSION_BUILD=$(VBOX_VERSION_BUILD) + ifdef VBOX_WITH_AUTOMATIC_DEFS_QUOTING + bldRTIsoMaker_DEFS += \ + IPRT_BLDCFG_VERSION_STRING="$(VBOX_VERSION_STRING)" \ + IPRT_BLDCFG_TARGET="$(KBUILD_TARGET)" \ + IPRT_BLDCFG_TARGET_ARCH="$(KBUILD_TARGET_ARCH)" \ + IPRT_BLDCFG_TYPE="$(KBUILD_TYPE)" + else + bldRTIsoMaker_DEFS += \ + IPRT_BLDCFG_VERSION_STRING=\"$(VBOX_VERSION_STRING)\" \ + IPRT_BLDCFG_TARGET=\"$(KBUILD_TARGET)\" \ + IPRT_BLDCFG_TARGET_ARCH=\"$(KBUILD_TARGET_ARCH)\" \ + IPRT_BLDCFG_TYPE=\"$(KBUILD_TYPE)\" + endif + bldRTIsoMaker_INCS = ../include +endif + + +if !defined(VBOX_ONLY_DOCS) + + # RTManifest is a tool for creating and verifying manifest files - build version. + BLDPROGS += bldRTManifest + bldRTManifest_TEMPLATE = VBoxAdvBldProg + bldRTManifest_SOURCES = RTManifest.cpp + + + if !defined(VBOX_ONLY_EXTPACKS) || "$(KBUILD_TARGET)" == "win" || "$(KBUILD_TARGET)" == "darwin" + # RTSignTool - Signing utility - build version. Signed on windows so we can get the certificate from it. + BLDPROGS += bldRTSignTool + bldRTSignTool_TEMPLATE = VBoxAdvBldProg + bldRTSignTool_SOURCES = RTSignTool.cpp + bldRTSignTool_DEFS = IPRT_IN_BUILD_TOOL + bldRTSignTool_POST_CMDS.win = $(VBOX_SIGN_IMAGE_CMDS) + if defined(VBOX_WITH_DARWIN_R0_DARWIN_IMAGE_VERIFICATION) && defined(VBOX_SIGNING_MODE) + bldRTSignTool_POST_CMDS.darwin = $(call VBOX_SIGN_MACHO_FN,$(out),org.virtualbox.org.bldtool.$(target)) + endif + endif + + if !defined(VBOX_ONLY_EXTPACKS) + # RTLdrCheckImports - import checker. + PROGRAMS += bldRTLdrCheckImports + bldRTLdrCheckImports_TEMPLATE = VBoxAdvBldProg + bldRTLdrCheckImports_DEFS = IPRT_IN_BUILD_TOOL + bldRTLdrCheckImports_SOURCES = RTLdrCheckImports.cpp + endif +endif + +if !defined(VBOX_ONLY_BUILD) + + # RTCat is a tool for displaying files. + PROGRAMS += RTCat + RTCat_TEMPLATE = VBoxR3Tool + RTCat_SOURCES = RTCat.cpp + RTCat_SOURCES += ../VBox/LoadVBoxDDU.cpp + + # RTChMod - our chmod clone. + PROGRAMS += RTChMod + RTChMod_TEMPLATE = VBoxR3Tool + RTChMod_SOURCES = RTChMod.cpp + + # RTCp - our cp clone. + PROGRAMS += RTCp + RTCp_TEMPLATE = VBoxR3Tool + RTCp_SOURCES = RTCp.cpp + RTCp_SOURCES += ../VBox/LoadVBoxDDU.cpp + + # RTIsoMaker - ISO image maker - build version. + PROGRAMS += RTIsoMaker + RTIsoMaker_TEMPLATE = VBoxR3Tool + RTIsoMaker_SOURCES = RTIsoMaker.cpp + RTIsoMaker_SOURCES += ../VBox/LoadVBoxDDU.cpp + + # RTLs is a tool for listing file information. + PROGRAMS += RTLs + RTLs_TEMPLATE = VBoxR3Tool + RTLs_SOURCES = RTLs.cpp + RTLs_SOURCES += ../VBox/LoadVBoxDDU.cpp + + # RTRm is a tool for removing files and directories. + PROGRAMS += RTRm + RTRm_TEMPLATE = VBoxR3Tool + RTRm_SOURCES = RTRm.cpp + RTRm_SOURCES += ../VBox/LoadVBoxDDU.cpp + + # RTManifest is a tool for creating and verifying manifest files. + PROGRAMS += RTManifest + RTManifest_TEMPLATE = VBoxR3Tool + RTManifest_SOURCES = RTManifest.cpp + RTManifest_SOURCES += ../VBox/LoadVBoxDDU.cpp + + # RTLdrFlt is similar to c++filt, except that it's for VMMR0.r0 stacks. + PROGRAMS += RTLdrFlt + RTLdrFlt_TEMPLATE = VBoxR3Tool + RTLdrFlt_SOURCES = RTLdrFlt.cpp + + # RTFTPServer implements a simple FTP server. + PROGRAMS += RTFTPServer + RTFTPServer_TEMPLATE = VBoxR3Tool + RTFTPServer_SOURCES = RTFTPServer.cpp + + # RTGzip - our gzip clone (for testing the gzip/gunzip streaming code) + PROGRAMS += RTGzip + RTGzip_TEMPLATE = VBoxR3Tool + RTGzip_SOURCES = RTGzip.cpp + RTGzip_SOURCES += ../VBox/LoadVBoxDDU.cpp + + ifdef VBOX_WITH_LIBCURL + # RTHttp - our http/https fetcher (for testing the http client API). + PROGRAMS += RTHttp + RTHttp_TEMPLATE = VBoxR3Tool + RTHttp_SOURCES = RTHttp.cpp + endif + + # RTLdrCheckImports - import checker. + PROGRAMS += RTLdrCheckImports + RTLdrCheckImports_TEMPLATE = VBoxR3Tool + RTLdrCheckImports_SOURCES = RTLdrCheckImports.cpp + RTLdrCheckImports_SOURCES += ../VBox/LoadVBoxDDU.cpp + + # RTMkDir - our mkdir clone. + PROGRAMS += RTMkDir + RTMkDir_TEMPLATE = VBoxR3Tool + RTMkDir_SOURCES = RTMkDir.cpp + + # RTRmDir - our mkdir clone. + PROGRAMS += RTRmDir + RTRmDir_TEMPLATE = VBoxR3Tool + RTRmDir_SOURCES = RTRmDir.cpp + + # RTShutdown - similar (but not identical) to a typical unix shutdown command. + PROGRAMS += RTShutdown + RTShutdown_TEMPLATE = VBoxR3Tool + RTShutdown_SOURCES = RTShutdown.cpp + + # RTTar - our tar clone (for testing the tar/gzip/gunzip streaming code) + PROGRAMS += RTTar + RTTar_TEMPLATE = VBoxR3Tool + RTTar_SOURCES = RTTar.cpp + RTTar_SOURCES += ../VBox/LoadVBoxDDU.cpp + + # RTUnzip - our unzip clone (for testing the unzip streaming code) + PROGRAMS += RTUnzip + RTUnzip_TEMPLATE = VBoxR3Tool + RTUnzip_SOURCES = RTUnzip.cpp + RTUnzip_SOURCES += ../VBox/LoadVBoxDDU.cpp + + # RTNtDbgHelp - our tar clone (for testing the tar/gzip/gunzip streaming code) + PROGRAMS.win += RTNtDbgHelp + RTNtDbgHelp_TEMPLATE = VBoxR3Tool + RTNtDbgHelp_SOURCES = RTNtDbgHelp.cpp + + # RTDbgSymCache - Symbol cache manager. + PROGRAMS += RTDbgSymCache + RTDbgSymCache_TEMPLATE = VBoxR3Tool + RTDbgSymCache_SOURCES = RTDbgSymCache.cpp + + # RTSignTool - Signing utility. + PROGRAMS += RTSignTool + RTSignTool_TEMPLATE = VBoxR3Tool + RTSignTool_SOURCES = RTSignTool.cpp + RTSignTool_LIBS = $(PATH_STAGE_LIB)/SUPR3$(VBOX_SUFF_LIB) + + # RTTraceLogTool - Trace log collection and dissection tool. + PROGRAMS += RTTraceLogTool + RTTraceLogTool_TEMPLATE = VBoxR3Tool + RTTraceLogTool_SOURCES = RTTraceLogTool.cpp + + # RTFuzzMaster - Fuzzing master tool. + PROGRAMS += RTFuzzMaster + RTFuzzMaster_TEMPLATE = VBoxR3Tool + RTFuzzMaster_SOURCES = RTFuzzMaster.cpp + + # RTFuzzClient - Fuzzing client tool. + PROGRAMS += RTFuzzClient + RTFuzzClient_TEMPLATE = VBoxR3Tool + RTFuzzClient_SOURCES = RTFuzzClient.cpp + + # RTEfiFatExtract - Extracting single files from a fat EFI binary. + PROGRAMS += RTEfiFatExtract + RTEfiFatExtract_TEMPLATE = VBoxR3Tool + RTEfiFatExtract_SOURCES = RTEfiFatExtract.cpp + + if1of ($(KBUILD_TARGET), darwin linux solaris win) + # RTKrnlModInfo - our lsmod/kextstat clone (for testing the RTKrnlMod code). + PROGRAMS += RTKrnlModInfo + RTKrnlModInfo_TEMPLATE = VBoxR3Tool + RTKrnlModInfo_SOURCES = RTKrnlModInfo.cpp + endif + +endif # !VBOX_ONLY_BUILD + +include $(FILE_KBUILD_SUB_FOOTER) + |