diff options
Diffstat (limited to '')
-rw-r--r-- | src/VBox/Runtime/tools/Makefile.kmk | 210 |
1 files changed, 210 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..73d1c35b --- /dev/null +++ b/src/VBox/Runtime/tools/Makefile.kmk @@ -0,0 +1,210 @@ +# $Id: Makefile.kmk $ +## @file +# Sub-Makefile for the IPRT tools. +# + +# +# Copyright (C) 2006-2019 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. + BLDPROGS += bldRTIsoMaker + 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_STRING=\"$(VBOX_VERSION_STRING)\" \ + IPRT_BLDCFG_VERSION_MAJOR=$(VBOX_VERSION_MAJOR) \ + IPRT_BLDCFG_VERSION_MINOR=$(VBOX_VERSION_MINOR) \ + IPRT_BLDCFG_VERSION_BUILD=$(VBOX_VERSION_BUILD) \ + IPRT_BLDCFG_TARGET=\"$(KBUILD_TARGET)\" \ + IPRT_BLDCFG_TARGET_ARCH=\"$(KBUILD_TARGET_ARCH)\" \ + IPRT_BLDCFG_TYPE=\"$(KBUILD_TYPE)\" + 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 + + # 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 + + 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) + |