diff options
Diffstat (limited to 'src/VBox/Installer/win/Resources')
-rw-r--r-- | src/VBox/Installer/win/Resources/Makefile.kmk | 96 | ||||
-rw-r--r-- | src/VBox/Installer/win/Resources/VBoxRes.rc | 64 | ||||
-rw-r--r-- | src/VBox/Installer/win/Resources/dummy.cpp | 36 | ||||
-rw-r--r-- | src/VBox/Installer/win/Resources/resource.h | 46 |
4 files changed, 242 insertions, 0 deletions
diff --git a/src/VBox/Installer/win/Resources/Makefile.kmk b/src/VBox/Installer/win/Resources/Makefile.kmk new file mode 100644 index 00000000..f94aede6 --- /dev/null +++ b/src/VBox/Installer/win/Resources/Makefile.kmk @@ -0,0 +1,96 @@ +# $Id: Makefile.kmk $ +## @file +# Sub-Makefile for VBoxRes.dll. +# + +# +# Copyright (C) 2010-2023 Oracle and/or its affiliates. +# +# This file is part of VirtualBox base platform packages, as +# available from https://www.virtualbox.org. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation, in version 3 of the +# License. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, see <https://www.gnu.org/licenses>. +# +# SPDX-License-Identifier: GPL-3.0-only +# + +SUB_DEPTH = ../../../../.. +include $(KBUILD_PATH)/subheader.kmk + +DLLS += VBoxRes +VBoxRes_TEMPLATE = VBoxR3StaticNoCrt +VBoxRes_DEPS = $(VBOX_SVN_REV_KMK) +VBoxRes_LDFLAGS = -NoEntry +VBoxRes_SOURCES = \ + dummy.cpp \ + VBoxRes.rc +VBoxRes_CLEAN = \ + $(VBoxRes_0_OUTDIR)/VBoxRes-icons.rc + +# The icon location is configurable. +VBoxRes.rc_INCS += $(VBoxRes_0_OUTDIR) +VBoxRes.rc_DEPS += $(VBoxRes_0_OUTDIR)/VBoxRes-icons.rc + +# The resource path. +VBOX_ARTWORK_PATH_WIN := $(subst /,\\,$(PATH_ROOT))/src/VBox/Artwork/win + +# Icon include file. +# @todo Put this into Config.kmk? +ifdef VBOX_OSE + # Hack: rc.exe on OSE build boxes don't support Vista icons; so + # use a special icon version (without the 256x256 size) instead. + VBOX_WINDOWS_ICON_EXT_VBOX := $(VBOX_ARTWORK_PATH_WIN)/OSE/virtualbox-vbox.ico + VBOX_WINDOWS_ICON_EXT_EXTPACK := $(VBOX_ARTWORK_PATH_WIN)/OSE/virtualbox-vbox-extpack.ico + VBOX_WINDOWS_ICON_EXT_OVA := $(VBOX_ARTWORK_PATH_WIN)/OSE/virtualbox-ova.ico + VBOX_WINDOWS_ICON_EXT_OVF := $(VBOX_ARTWORK_PATH_WIN)/OSE/virtualbox-ovf.ico + VBOX_WINDOWS_ICON_EXT_VDI := $(VBOX_ARTWORK_PATH_WIN)/virtualbox-vdi.ico + VBOX_WINDOWS_ICON_EXT_VMDK := $(VBOX_ARTWORK_PATH_WIN)/virtualbox-vmdk.ico + VBOX_WINDOWS_ICON_EXT_VHD := $(VBOX_ARTWORK_PATH_WIN)/virtualbox-vhd.ico + VBOX_WINDOWS_ICON_EXT_HDD := $(VBOX_ARTWORK_PATH_WIN)/virtualbox-hdd.ico +else + VBOX_WINDOWS_ICON_EXT_VBOX := $(VBOX_ARTWORK_PATH_WIN)/NonOSE/virtualbox-vbox.ico + VBOX_WINDOWS_ICON_EXT_EXTPACK := $(VBOX_ARTWORK_PATH_WIN)/NonOSE/virtualbox-vbox-extpack.ico + VBOX_WINDOWS_ICON_EXT_OVA := $(VBOX_ARTWORK_PATH_WIN)/NonOSE/virtualbox-ova.ico + VBOX_WINDOWS_ICON_EXT_OVF := $(VBOX_ARTWORK_PATH_WIN)/NonOSE/virtualbox-ovf.ico + VBOX_WINDOWS_ICON_EXT_VDI := $(VBOX_ARTWORK_PATH_WIN)/virtualbox-vdi.ico + VBOX_WINDOWS_ICON_EXT_VMDK := $(VBOX_ARTWORK_PATH_WIN)/virtualbox-vmdk.ico + VBOX_WINDOWS_ICON_EXT_VHD := $(VBOX_ARTWORK_PATH_WIN)/virtualbox-vhd.ico + VBOX_WINDOWS_ICON_EXT_HDD := $(VBOX_ARTWORK_PATH_WIN)/virtualbox-hdd.ico +endif + +VBOX_RESOURCES_WIN := \ + $(VBOX_WINDOWS_ICON_FILE) \ + $(VBOX_WINDOWS_ICON_EXT_VBOX) \ + $(VBOX_WINDOWS_ICON_EXT_EXTPACK) \ + $(VBOX_WINDOWS_ICON_EXT_OVA) \ + $(VBOX_WINDOWS_ICON_EXT_OVF) \ + $(VBOX_WINDOWS_ICON_EXT_VDI) \ + $(VBOX_WINDOWS_ICON_EXT_VMDK) \ + $(VBOX_WINDOWS_ICON_EXT_VHD) \ + $(VBOX_WINDOWS_ICON_EXT_HDD) + +$$(VBoxRes_0_OUTDIR)/VBoxRes-icons.rc: \ + $$(VBOX_RESOURCES_WIN) $(MAKEFILE_CURRENT) | $$(dir $$@) + $(RM) -f $@ + $(APPEND) $@ 'IDI_VIRTUALBOX ICON DISCARDABLE "$(subst /,\\,$(VBOX_WINDOWS_ICON_FILE))"' + $(APPEND) $@ 'IDI_FILETYPE_VBOX ICON DISCARDABLE "$(subst /,\\,$(VBOX_WINDOWS_ICON_EXT_VBOX))"' + $(APPEND) $@ 'IDI_FILETYPE_VBOX_EXTPACK ICON DISCARDABLE "$(subst /,\\,$(VBOX_WINDOWS_ICON_EXT_EXTPACK))"' + $(APPEND) $@ 'IDI_FILETYPE_VBOX_OVA ICON DISCARDABLE "$(subst /,\\,$(VBOX_WINDOWS_ICON_EXT_OVA))"' + $(APPEND) $@ 'IDI_FILETYPE_VBOX_OVF ICON DISCARDABLE "$(subst /,\\,$(VBOX_WINDOWS_ICON_EXT_OVF))"' + $(APPEND) $@ 'IDI_FILETYPE_VBOX_VDI ICON DISCARDABLE "$(subst /,\\,$(VBOX_WINDOWS_ICON_EXT_VDI))"' + $(APPEND) $@ 'IDI_FILETYPE_VBOX_VMDK ICON DISCARDABLE "$(subst /,\\,$(VBOX_WINDOWS_ICON_EXT_VMDK))"' + $(APPEND) $@ 'IDI_FILETYPE_VBOX_VHD ICON DISCARDABLE "$(subst /,\\,$(VBOX_WINDOWS_ICON_EXT_VHD))"' + $(APPEND) $@ 'IDI_FILETYPE_VBOX_HDD ICON DISCARDABLE "$(subst /,\\,$(VBOX_WINDOWS_ICON_EXT_HDD))"' + +include $(FILE_KBUILD_SUB_FOOTER) diff --git a/src/VBox/Installer/win/Resources/VBoxRes.rc b/src/VBox/Installer/win/Resources/VBoxRes.rc new file mode 100644 index 00000000..d580389f --- /dev/null +++ b/src/VBox/Installer/win/Resources/VBoxRes.rc @@ -0,0 +1,64 @@ +/* $Id: VBoxRes.rc $ */ +/** @file + * VBoxRes - Resource file for VirtualBox binaries. + */ + +/* + * Copyright (C) 2010-2023 Oracle and/or its affiliates. + * + * This file is part of VirtualBox base platform packages, as + * available from https://www.virtualbox.org. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation, in version 3 of the + * License. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see <https://www.gnu.org/licenses>. + * + * SPDX-License-Identifier: GPL-3.0-only + */ + +#include <windows.h> +#include <VBox/version.h> +#include "resource.h" + +LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US + +VS_VERSION_INFO VERSIONINFO + FILEVERSION VBOX_RC_FILE_VERSION + PRODUCTVERSION VBOX_RC_FILE_VERSION + FILEFLAGSMASK VS_FFI_FILEFLAGSMASK + FILEFLAGS VBOX_RC_FILE_FLAGS + FILEOS VBOX_RC_FILE_OS + FILETYPE VBOX_RC_TYPE_DLL + FILESUBTYPE VFT2_UNKNOWN +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "040904b0" + BEGIN + VALUE "FileDescription", "VirtualBox Resources\0" + VALUE "InternalName", "VBoxRes\0" + VALUE "OriginalFilename", "VBoxRes.dll\0" + VALUE "CompanyName", VBOX_RC_COMPANY_NAME + VALUE "FileVersion", VBOX_RC_FILE_VERSION_STR + VALUE "LegalCopyright", VBOX_RC_LEGAL_COPYRIGHT + VALUE "ProductName", VBOX_RC_PRODUCT_NAME_STR + VALUE "ProductVersion", VBOX_RC_PRODUCT_VERSION_STR + VBOX_RC_MORE_STRINGS + END + END + BLOCK "VarFileInfo" + BEGIN + VALUE "Translation", 0x409, 1200 + END +END + +#include "VBoxRes-icons.rc" diff --git a/src/VBox/Installer/win/Resources/dummy.cpp b/src/VBox/Installer/win/Resources/dummy.cpp new file mode 100644 index 00000000..a3fe3320 --- /dev/null +++ b/src/VBox/Installer/win/Resources/dummy.cpp @@ -0,0 +1,36 @@ +/* $Id: dummy.cpp $ */ +/** @file + * dummy.cpp - file to make kBuild happy when building a resource only DLL. + */ + +/* + * Copyright (C) 2011-2023 Oracle and/or its affiliates. + * + * This file is part of VirtualBox base platform packages, as + * available from https://www.virtualbox.org. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation, in version 3 of the + * License. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see <https://www.gnu.org/licenses>. + * + * SPDX-License-Identifier: GPL-3.0-only + */ + +#include <iprt/cdefs.h> + +RT_C_DECLS_BEGIN + +DECLEXPORT(void) VBoxResDummy(void) +{ +} + +RT_C_DECLS_END diff --git a/src/VBox/Installer/win/Resources/resource.h b/src/VBox/Installer/win/Resources/resource.h new file mode 100644 index 00000000..7c3d8d85 --- /dev/null +++ b/src/VBox/Installer/win/Resources/resource.h @@ -0,0 +1,46 @@ +/* $Id: resource.h $ */ +/** @file + * resource.h - resource header file. + */ + +/* + * Copyright (C) 2010-2023 Oracle and/or its affiliates. + * + * This file is part of VirtualBox base platform packages, as + * available from https://www.virtualbox.org. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation, in version 3 of the + * License. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see <https://www.gnu.org/licenses>. + * + * SPDX-License-Identifier: GPL-3.0-only + */ + +#ifndef VBOX_INCLUDED_SRC_Resources_resource_h +#define VBOX_INCLUDED_SRC_Resources_resource_h +#ifndef RT_WITHOUT_PRAGMA_ONCE +# pragma once +#endif + +#define IDI_VIRTUALBOX 101 + +#define IDI_FILETYPE_VBOX 201 +#define IDI_FILETYPE_VBOX_EXTPACK 202 + +#define IDI_FILETYPE_VBOX_OVF 301 +#define IDI_FILETYPE_VBOX_OVA 302 +#define IDI_FILETYPE_VBOX_VDI 303 +#define IDI_FILETYPE_VBOX_VMDK 304 +#define IDI_FILETYPE_VBOX_VHD 305 +#define IDI_FILETYPE_VBOX_HDD 306 + +#endif /* !VBOX_INCLUDED_SRC_Resources_resource_h */ |