Skip to content

Commit d38e1fb

Browse files
authored
[WIN] Set binaries details (#502)
* Set binaries detailes on windows * add_vs_version_resource call * endif()
1 parent 02b4517 commit d38e1fb

File tree

4 files changed

+56
-0
lines changed

4 files changed

+56
-0
lines changed

CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ project(openvino_tokenizers
4949

5050
include(cmake/platforms.cmake)
5151
include(cmake/version.cmake)
52+
include(cmake/vs_version.cmake)
5253

5354
option(BUILD_CPP_EXTENSION "Builds C++ extension for OpenVINO Tokenizers" ON)
5455

cmake/templates/vs_version.rc.in

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
#include <winver.h>
2+
3+
VS_VERSION_INFO VERSIONINFO
4+
FILEVERSION @PROJECT_VERSION_MAJOR@,@PROJECT_VERSION_MINOR@,@PROJECT_VERSION_PATCH@,@PROJECT_VERSION_TWEAK@
5+
PRODUCTVERSION @PROJECT_VERSION_MAJOR@,@PROJECT_VERSION_MINOR@,@PROJECT_VERSION_PATCH@,@PROJECT_VERSION_TWEAK@
6+
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
7+
#ifdef _DEBUG
8+
FILEFLAGS 1
9+
#else
10+
FILEFLAGS 0
11+
#endif
12+
FILEOS VOS__WINDOWS32
13+
FILETYPE VFT_DLL
14+
FILESUBTYPE 0
15+
BEGIN
16+
BLOCK "StringFileInfo"
17+
BEGIN
18+
BLOCK "040904E4"
19+
BEGIN
20+
VALUE "CompanyName", "@PROJECT_COMPANY_NAME@\0"
21+
VALUE "FileDescription", "@PROJECT_DESCRIPTION@\0"
22+
VALUE "FileVersion", "@PROJECT_VERSION@\0"
23+
VALUE "LegalCopyright", "@PROJECT_COPYRIGHT@\0"
24+
VALUE "ProductName", "@PROJECT_PRODUCT_NAME@\0"
25+
VALUE "ProductVersion", "@OpenVINOTokenizers_FULL_VERSION@\0"
26+
VALUE "Comments", "@PROJECT_COMMENTS@\0"
27+
END
28+
END
29+
BLOCK "VarFileInfo"
30+
BEGIN
31+
VALUE "Translation", 0x0409, 1252
32+
END
33+
END

cmake/vs_version.cmake

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# Copyright (C) 2025 Intel Corporation
2+
# SPDX-License-Identifier: Apache-2.0
3+
#
4+
5+
set(PROJECT_COMPANY_NAME "Intel Corporation")
6+
set(PROJECT_PRODUCT_NAME "OpenVINO Tokenizers")
7+
set(PROJECT_COPYRIGHT "Copyright (C) 2018-2025, Intel Corporation")
8+
set(PROJECT_COMMENTS "https://docs.openvino.ai/")
9+
10+
# This function generates a version resource (.rc) file from a template and adds it to the given target.
11+
function(add_vs_version_resource TARGET_NAME)
12+
set(VS_VERSION_TEMPLATE "${PROJECT_SOURCE_DIR}/cmake/templates/vs_version.rc.in")
13+
set(VS_VERSION_OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/vs_version.rc")
14+
15+
configure_file("${VS_VERSION_TEMPLATE}" "${VS_VERSION_OUTPUT}" @ONLY)
16+
17+
target_sources(${TARGET_NAME} PRIVATE "${VS_VERSION_OUTPUT}")
18+
endfunction()

src/CMakeLists.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -222,6 +222,10 @@ file(GLOB SRCS ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp)
222222

223223
add_library(${TARGET_NAME} SHARED ${SRCS})
224224

225+
if(WIN32)
226+
add_vs_version_resource(${TARGET_NAME})
227+
endif()
228+
225229
#
226230
# Target include dirs, link libraries and other properties
227231
#

0 commit comments

Comments
 (0)