Skip to content

Commit 01b9024

Browse files
Merge pull request #601 from bratpiorka/rrudnick_rc
add rc file for windows
2 parents bfc9dd4 + ec20ca8 commit 01b9024

File tree

4 files changed

+104
-0
lines changed

4 files changed

+104
-0
lines changed

src/CMakeLists.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,11 @@ if(LINUX)
106106
set(UMF_LIBS ${UMF_LIBS} dl rt) # librt for shm_open()
107107
elseif(WINDOWS)
108108
set(UMF_SOURCES ${UMF_SOURCES} ${UMF_SOURCES_WINDOWS})
109+
110+
# Add resource file needed for Windows to fill metadata in binary files
111+
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/libumf.rc.in"
112+
"${CMAKE_CURRENT_BINARY_DIR}/libumf.rc" IMMEDIATE @ONLY)
113+
set(UMF_SOURCES ${UMF_SOURCES} ${CMAKE_CURRENT_BINARY_DIR}/libumf.rc)
109114
elseif(MACOSX)
110115
set(UMF_SOURCES ${UMF_SOURCES} ${UMF_SOURCES_MACOSX})
111116
endif()

src/libumf.rc.in

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
// Copyright (c) 2024 Intel Corporation
2+
//
3+
// Under the Apache License v2.0 with LLVM Exceptions. See LICENSE.TXT.
4+
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
5+
//
6+
7+
#include <winresrc.h>
8+
9+
#include "umf/base.h"
10+
11+
#define UMF_VERNUMBERS @CMAKE_PROJECT_VERSION_MAJOR@,@CMAKE_PROJECT_VERSION_MINOR@,@CMAKE_PROJECT_VERSION_PATCH@,0
12+
#define UMF_VERSION "@CMAKE_PROJECT_VERSION_MAJOR@.@CMAKE_PROJECT_VERSION_MINOR@"
13+
14+
VS_VERSION_INFO VERSIONINFO
15+
FILEVERSION UMF_VERNUMBERS
16+
PRODUCTVERSION UMF_VERNUMBERS
17+
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
18+
#ifdef _DEBUG
19+
FILEFLAGS VS_FF_DEBUG
20+
#else
21+
FILEFLAGS 0
22+
#endif
23+
FILEOS VOS__WINDOWS32
24+
FILETYPE VFT_DLL
25+
FILESUBTYPE 0
26+
BEGIN
27+
BLOCK "StringFileInfo"
28+
BEGIN
29+
BLOCK "040904b0" // U.S. English, Unicode (0x04b0 == 1200)
30+
BEGIN
31+
VALUE "CompanyName", "Intel Corporation\0"
32+
VALUE "FileDescription", "Unified Memory Framework (UMF) library\0"
33+
VALUE "FileVersion", UMF_VERSION "\0"
34+
VALUE "LegalCopyright", "Copyright 2024, Intel Corporation. All rights reserved.\0"
35+
VALUE "LegalTrademarks", "\0"
36+
VALUE "OriginalFilename", "umf.dll\0"
37+
VALUE "ProductName", "Unified Memory Framework (UMF)\0"
38+
VALUE "ProductVersion", UMF_VERSION "\0"
39+
VALUE "PrivateBuild", "\0"
40+
VALUE "SpecialBuild", "\0"
41+
END
42+
END
43+
BLOCK "VarFileInfo"
44+
BEGIN
45+
VALUE "Translation", 0x409, 1200
46+
END
47+
END

src/proxy_lib/CMakeLists.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,11 @@ if(LINUX)
1616
set(PROXY_SOURCES ${PROXY_SOURCES} ${PROXY_SOURCES_LINUX})
1717
elseif(WINDOWS)
1818
set(PROXY_SOURCES ${PROXY_SOURCES} ${PROXY_SOURCES_WINDOWS})
19+
20+
# Add resource file needed for Windows to fill metadata in binary files
21+
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/proxy_lib.rc.in"
22+
"${CMAKE_CURRENT_BINARY_DIR}/proxy_lib.rc" IMMEDIATE @ONLY)
23+
set(PROXY_SOURCES ${PROXY_SOURCES} ${CMAKE_CURRENT_BINARY_DIR}/proxy_lib.rc)
1924
elseif(MACOSX)
2025
set(PROXY_SOURCES ${PROXY_SOURCES} ${PROXY_SOURCES_MACOSX})
2126
endif()

src/proxy_lib/proxy_lib.rc.in

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
// Copyright (c) 2024 Intel Corporation
2+
//
3+
// Under the Apache License v2.0 with LLVM Exceptions. See LICENSE.TXT.
4+
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
5+
//
6+
7+
#include <winresrc.h>
8+
9+
#include "umf/base.h"
10+
11+
#define UMF_VERNUMBERS @CMAKE_PROJECT_VERSION_MAJOR@,@CMAKE_PROJECT_VERSION_MINOR@,@CMAKE_PROJECT_VERSION_PATCH@,0
12+
#define UMF_VERSION "@CMAKE_PROJECT_VERSION_MAJOR@.@CMAKE_PROJECT_VERSION_MINOR@"
13+
14+
VS_VERSION_INFO VERSIONINFO
15+
FILEVERSION UMF_VERNUMBERS
16+
PRODUCTVERSION UMF_VERNUMBERS
17+
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
18+
#ifdef _DEBUG
19+
FILEFLAGS VS_FF_DEBUG
20+
#else
21+
FILEFLAGS 0
22+
#endif
23+
FILEOS VOS__WINDOWS32
24+
FILETYPE VFT_DLL
25+
FILESUBTYPE 0
26+
BEGIN
27+
BLOCK "StringFileInfo"
28+
BEGIN
29+
BLOCK "040904b0" // U.S. English, Unicode (0x04b0 == 1200)
30+
BEGIN
31+
VALUE "CompanyName", "Intel Corporation\0"
32+
VALUE "FileDescription", "Unified Memory Framework (UMF) proxy library\0"
33+
VALUE "FileVersion", UMF_VERSION "\0"
34+
VALUE "LegalCopyright", "Copyright 2024, Intel Corporation. All rights reserved.\0"
35+
VALUE "LegalTrademarks", "\0"
36+
VALUE "OriginalFilename", "umf_proxy.dll\0"
37+
VALUE "ProductName", "Unified Memory Framework (UMF)\0"
38+
VALUE "ProductVersion", UMF_VERSION "\0"
39+
VALUE "PrivateBuild", "\0"
40+
VALUE "SpecialBuild", "\0"
41+
END
42+
END
43+
BLOCK "VarFileInfo"
44+
BEGIN
45+
VALUE "Translation", 0x409, 1200
46+
END
47+
END

0 commit comments

Comments
 (0)