Skip to content

Commit c66a678

Browse files
Misc fixes
1 parent f478981 commit c66a678

File tree

3 files changed

+153
-98
lines changed

3 files changed

+153
-98
lines changed

cmake/Modules/FindTensorRT.cmake

Lines changed: 149 additions & 94 deletions
Original file line numberDiff line numberDiff line change
@@ -1,132 +1,187 @@
1-
find_path(TensorRT_INCLUDE_DIR
2-
NAMES NvInfer.h)
1+
#
2+
# SPDX-FileCopyrightText: Copyright (c) 1993-2022 NVIDIA CORPORATION &
3+
# AFFILIATES. All rights reserved. SPDX-License-Identifier: Apache-2.0
4+
#
5+
# Licensed under the Apache License, Version 2.0 (the "License"); you may not
6+
# use this file except in compliance with the License. You may obtain a copy of
7+
# the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
13+
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
14+
# License for the specific language governing permissions and limitations under
15+
# the License.
16+
#
17+
18+
find_path(
19+
TensorRT_INCLUDE_DIR
20+
NAMES NvInfer.h
21+
PATHS ${TensorRT_WELL_KNOWN_ROOT}/include)
322

423
function(_tensorrt_get_version)
524
unset(TensorRT_VERSION_STRING PARENT_SCOPE)
625
set(_hdr_file "${TensorRT_INCLUDE_DIR}/NvInferVersion.h")
726

8-
if (NOT EXISTS "${_hdr_file}")
27+
if(NOT EXISTS "${_hdr_file}")
928
return()
10-
endif ()
11-
12-
file(STRINGS "${_hdr_file}" VERSION_STRINGS REGEX "#define NV_TENSORRT_.*")
13-
14-
foreach (TYPE MAJOR MINOR PATCH BUILD)
15-
string(REGEX MATCH "NV_TENSORRT_${TYPE} [0-9]+" TRT_TYPE_STRING ${VERSION_STRINGS})
16-
string(REGEX MATCH "[0-9]+" TensorRT_VERSION_${TYPE} ${TRT_TYPE_STRING})
17-
endforeach (TYPE)
18-
19-
set(TensorRT_VERSION_MAJOR ${TensorRT_VERSION_MAJOR} PARENT_SCOPE)
20-
set(TensorRT_VERSION_MINOR ${TensorRT_VERSION_MINOR} PARENT_SCOPE)
21-
set(TensorRT_VERSION_PATCH ${TensorRT_VERSION_PATCH} PARENT_SCOPE)
22-
23-
set(TensorRT_VERSION_STRING "${TensorRT_VERSION_MAJOR}.${TensorRT_VERSION_MINOR}.${TensorRT_VERSION_PATCH}" PARENT_SCOPE)
29+
endif()
30+
31+
file(STRINGS "${_hdr_file}" IS_10_11_NEW_MACRO REGEX "TRT_MAJOR_ENTERPRISE")
32+
if(IS_10_11_NEW_MACRO)
33+
file(STRINGS "${_hdr_file}" VERSION_STRINGS
34+
REGEX "#define TRT_.+_ENTERPRISE.*")
35+
foreach(TYPE MAJOR MINOR PATCH BUILD)
36+
string(REGEX MATCH "TRT_${TYPE}_ENTERPRISE [0-9]+" TRT_TYPE_STRING
37+
${VERSION_STRINGS})
38+
string(REGEX MATCH "[0-9]+" TensorRT_VERSION_${TYPE} ${TRT_TYPE_STRING})
39+
endforeach(TYPE)
40+
else()
41+
file(STRINGS "${_hdr_file}" VERSION_STRINGS REGEX "#define NV_TENSORRT_.*")
42+
foreach(TYPE MAJOR MINOR PATCH BUILD)
43+
string(REGEX MATCH "NV_TENSORRT_${TYPE} [0-9]+" TRT_TYPE_STRING
44+
${VERSION_STRINGS})
45+
string(REGEX MATCH "[0-9]+" TensorRT_VERSION_${TYPE} ${TRT_TYPE_STRING})
46+
endforeach(TYPE)
47+
endif()
48+
49+
set(TensorRT_VERSION_MAJOR
50+
${TensorRT_VERSION_MAJOR}
51+
PARENT_SCOPE)
52+
set(TensorRT_VERSION_STRING
53+
"${TensorRT_VERSION_MAJOR}.${TensorRT_VERSION_MINOR}.${TensorRT_VERSION_PATCH}.${TensorRT_VERSION_BUILD}"
54+
PARENT_SCOPE)
2455
endfunction(_tensorrt_get_version)
2556

2657
_tensorrt_get_version()
2758

2859
macro(_tensorrt_find_dll VAR)
29-
find_file(${VAR}
60+
find_file(
61+
${VAR}
3062
NAMES ${ARGN}
3163
HINTS ${TensorRT_ROOT}
3264
PATH_SUFFIXES bin)
3365
endmacro(_tensorrt_find_dll)
3466

35-
find_library(TensorRT_LIBRARY
36-
NAMES "nvinfer_${TensorRT_VERSION_MAJOR}" nvinfer)
67+
find_library(
68+
TensorRT_LIBRARY
69+
NAMES "nvinfer_${TensorRT_VERSION_MAJOR}" nvinfer
70+
PATHS ${TensorRT_WELL_KNOWN_ROOT}/lib)
3771

38-
if (WIN32)
39-
_tensorrt_find_dll(TensorRT_DLL
40-
"nvinfer_${TensorRT_VERSION_MAJOR}.dll" nvinfer.dll)
41-
endif ()
72+
if(WIN32)
73+
_tensorrt_find_dll(TensorRT_DLL "nvinfer_${TensorRT_VERSION_MAJOR}.dll"
74+
nvinfer.dll)
75+
endif()
4276

43-
if (TensorRT_LIBRARY)
44-
set(TensorRT_LIBRARIES
45-
${TensorRT_LIBRARIES}
46-
${TensorRT_LIBRARY})
47-
endif (TensorRT_LIBRARY)
77+
if(TensorRT_LIBRARY)
78+
set(TensorRT_LIBRARIES ${TensorRT_LIBRARIES} ${TensorRT_LIBRARY})
79+
endif(TensorRT_LIBRARY)
4880

49-
if (TensorRT_FIND_COMPONENTS)
81+
if(TensorRT_FIND_COMPONENTS)
5082
list(REMOVE_ITEM TensorRT_FIND_COMPONENTS "nvinfer")
5183

52-
if ("OnnxParser" IN_LIST TensorRT_FIND_COMPONENTS)
53-
find_path(TensorRT_OnnxParser_INCLUDE_DIR
54-
NAMES NvOnnxParser.h)
55-
56-
find_library(TensorRT_OnnxParser_LIBRARY
57-
NAMES "nvonnxparser_${TensorRT_VERSION_MAJOR}" nvonnxparser)
58-
if (TensorRT_OnnxParser_LIBRARY AND TensorRT_LIBRARIES)
59-
set(TensorRT_LIBRARIES
60-
${TensorRT_LIBRARIES}
84+
if("OnnxParser" IN_LIST TensorRT_FIND_COMPONENTS)
85+
find_path(
86+
TensorRT_OnnxParser_INCLUDE_DIR
87+
NAMES NvOnnxParser.h
88+
PATHS ${TensorRT_WELL_KNOWN_ROOT}/include)
89+
90+
find_library(
91+
TensorRT_OnnxParser_LIBRARY
92+
NAMES "nvonnxparser_${TensorRT_VERSION_MAJOR}" nvonnxparser
93+
PATHS ${TensorRT_WELL_KNOWN_ROOT}/lib)
94+
if(TensorRT_OnnxParser_LIBRARY AND TensorRT_LIBRARIES)
95+
set(TensorRT_LIBRARIES ${TensorRT_LIBRARIES}
6196
${TensorRT_OnnxParser_LIBRARY})
6297
set(TensorRT_OnnxParser_FOUND TRUE)
63-
endif ()
64-
65-
if (WIN32)
66-
_tensorrt_find_dll(TensorRT_OnnxParser_DLL
67-
"nvonnxparser_${TensorRT_VERSION_MAJOR}.dll" nvonnxparser.dll)
68-
endif ()
69-
endif ()
70-
71-
if ("Plugin" IN_LIST TensorRT_FIND_COMPONENTS)
72-
find_path(TensorRT_Plugin_INCLUDE_DIR
73-
NAMES NvInferPlugin.h)
74-
75-
find_library(TensorRT_Plugin_LIBRARY
76-
NAMES "nvinfer_plugin_${TensorRT_VERSION_MAJOR}" nvinfer_plugin)
77-
78-
if (TensorRT_Plugin_LIBRARY AND TensorRT_LIBRARIES)
79-
set(TensorRT_LIBRARIES
80-
${TensorRT_LIBRARIES}
81-
${TensorRT_Plugin_LIBRARY})
98+
endif()
99+
100+
if(WIN32)
101+
_tensorrt_find_dll(
102+
TensorRT_OnnxParser_DLL "nvonnxparser_${TensorRT_VERSION_MAJOR}.dll"
103+
nvonnxparser.dll)
104+
endif()
105+
endif()
106+
107+
if("Plugin" IN_LIST TensorRT_FIND_COMPONENTS)
108+
find_path(
109+
TensorRT_Plugin_INCLUDE_DIR
110+
NAMES NvInferPlugin.h
111+
PATHS ${TensorRT_WELL_KNOWN_ROOT}/include)
112+
113+
find_library(
114+
TensorRT_Plugin_LIBRARY
115+
NAMES "nvinfer_plugin_${TensorRT_VERSION_MAJOR}" nvinfer_plugin
116+
PATHS ${TensorRT_WELL_KNOWN_ROOT}/lib)
117+
118+
if(TensorRT_Plugin_LIBRARY AND TensorRT_LIBRARIES)
119+
set(TensorRT_LIBRARIES ${TensorRT_LIBRARIES} ${TensorRT_Plugin_LIBRARY})
82120
set(TensorRT_Plugin_FOUND TRUE)
83-
endif ()
121+
endif()
84122

85-
if (WIN32)
86-
_tensorrt_find_dll(TensorRT_Plugin_DLL
87-
"nvinfer_plugin_${TensorRT_VERSION_MAJOR}.dll" nvinfer_plugin.dll)
88-
endif ()
89-
endif ()
90-
endif ()
123+
if(WIN32)
124+
_tensorrt_find_dll(
125+
TensorRT_Plugin_DLL "nvinfer_plugin_${TensorRT_VERSION_MAJOR}.dll"
126+
nvinfer_plugin.dll)
127+
endif()
128+
endif()
129+
endif()
91130

92131
include(FindPackageHandleStandardArgs)
93-
find_package_handle_standard_args(TensorRT
132+
find_package_handle_standard_args(
133+
TensorRT
94134
FOUND_VAR TensorRT_FOUND
95135
REQUIRED_VARS TensorRT_LIBRARY TensorRT_LIBRARIES TensorRT_INCLUDE_DIR
96136
VERSION_VAR TensorRT_VERSION_STRING
97137
HANDLE_COMPONENTS)
98138

99-
add_library(TensorRT::NvInfer SHARED IMPORTED)
100-
target_include_directories(TensorRT::NvInfer SYSTEM INTERFACE "${TensorRT_INCLUDE_DIR}")
101-
if (WIN32)
102-
set_property(TARGET TensorRT::NvInfer PROPERTY IMPORTED_LOCATION "${TensorRT_DLL}")
103-
set_property(TARGET TensorRT::NvInfer PROPERTY IMPORTED_IMPLIB "${TensorRT_LIBRARY}")
104-
else ()
105-
set_property(TARGET TensorRT::NvInfer PROPERTY IMPORTED_LOCATION "${TensorRT_LIBRARY}")
106-
endif ()
107-
108-
if ("OnnxParser" IN_LIST TensorRT_FIND_COMPONENTS)
139+
if(NOT TARGET TensorRT::NvInfer)
140+
add_library(TensorRT::NvInfer SHARED IMPORTED)
141+
target_include_directories(TensorRT::NvInfer SYSTEM
142+
INTERFACE "${TensorRT_INCLUDE_DIR}")
143+
if(WIN32)
144+
set_property(TARGET TensorRT::NvInfer PROPERTY IMPORTED_LOCATION
145+
"${TensorRT_DLL}")
146+
set_property(TARGET TensorRT::NvInfer PROPERTY IMPORTED_IMPLIB
147+
"${TensorRT_LIBRARY}")
148+
else()
149+
set_property(TARGET TensorRT::NvInfer PROPERTY IMPORTED_LOCATION
150+
"${TensorRT_LIBRARY}")
151+
endif()
152+
endif()
153+
154+
if(NOT TARGET TensorRT::OnnxParser AND "OnnxParser" IN_LIST
155+
TensorRT_FIND_COMPONENTS)
109156
add_library(TensorRT::OnnxParser SHARED IMPORTED)
110-
target_include_directories(TensorRT::OnnxParser SYSTEM INTERFACE "${TensorRT_OnnxParser_INCLUDE_DIR}")
157+
target_include_directories(TensorRT::OnnxParser SYSTEM
158+
INTERFACE "${TensorRT_OnnxParser_INCLUDE_DIR}")
111159
target_link_libraries(TensorRT::OnnxParser INTERFACE TensorRT::NvInfer)
112-
if (WIN32)
113-
set_property(TARGET TensorRT::OnnxParser PROPERTY IMPORTED_LOCATION "${TensorRT_OnnxParser_DLL}")
114-
set_property(TARGET TensorRT::OnnxParser PROPERTY IMPORTED_IMPLIB "${TensorRT_OnnxParser_LIBRARY}")
115-
else ()
116-
set_property(TARGET TensorRT::OnnxParser PROPERTY IMPORTED_LOCATION "${TensorRT_OnnxParser_LIBRARY}")
117-
endif ()
118-
endif ()
119-
120-
if ("Plugin" IN_LIST TensorRT_FIND_COMPONENTS)
160+
if(WIN32)
161+
set_property(TARGET TensorRT::OnnxParser
162+
PROPERTY IMPORTED_LOCATION "${TensorRT_OnnxParser_DLL}")
163+
set_property(TARGET TensorRT::OnnxParser
164+
PROPERTY IMPORTED_IMPLIB "${TensorRT_OnnxParser_LIBRARY}")
165+
else()
166+
set_property(TARGET TensorRT::OnnxParser
167+
PROPERTY IMPORTED_LOCATION "${TensorRT_OnnxParser_LIBRARY}")
168+
endif()
169+
endif()
170+
171+
if(NOT TARGET TensorRT::Plugin AND "Plugin" IN_LIST TensorRT_FIND_COMPONENTS)
121172
add_library(TensorRT::Plugin SHARED IMPORTED)
122-
target_include_directories(TensorRT::Plugin SYSTEM INTERFACE "${TensorRT_Plugin_INCLUDE_DIR}")
173+
target_include_directories(TensorRT::Plugin SYSTEM
174+
INTERFACE "${TensorRT_Plugin_INCLUDE_DIR}")
123175
target_link_libraries(TensorRT::Plugin INTERFACE TensorRT::NvInfer)
124-
if (WIN32)
125-
set_property(TARGET TensorRT::Plugin PROPERTY IMPORTED_LOCATION "${TensorRT_Plugin_DLL}")
126-
set_property(TARGET TensorRT::Plugin PROPERTY IMPORTED_IMPLIB "${TensorRT_Plugin_LIBRARY}")
127-
else ()
128-
set_property(TARGET TensorRT::Plugin PROPERTY IMPORTED_LOCATION "${TensorRT_Plugin_LIBRARY}")
129-
endif ()
130-
endif ()
176+
if(WIN32)
177+
set_property(TARGET TensorRT::Plugin PROPERTY IMPORTED_LOCATION
178+
"${TensorRT_Plugin_DLL}")
179+
set_property(TARGET TensorRT::Plugin PROPERTY IMPORTED_IMPLIB
180+
"${TensorRT_Plugin_LIBRARY}")
181+
else()
182+
set_property(TARGET TensorRT::Plugin PROPERTY IMPORTED_LOCATION
183+
"${TensorRT_Plugin_LIBRARY}")
184+
endif()
185+
endif()
131186

132187
mark_as_advanced(TensorRT_INCLUDE_DIR TensorRT_LIBRARY TensorRT_LIBRARIES)

md_view.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -484,15 +484,15 @@ static void util_attrs copy(const md_view<T, offset_t, DIMS> &dst, const md_view
484484
copy(dst, csrc, cp);
485485
}
486486

487-
template<class T, typename offset_t, std::size_t DIMS, class Memcpy>
487+
template<class T, typename offset_t, std::size_t DIMS>
488488
static void util_attrs copy(const md_view<T, offset_t, DIMS> &dst, const md_view<const T, offset_t, DIMS> &src) {
489-
copy(dst, src, std::memset);
489+
copy(dst, src, std::memcpy);
490490
}
491491

492492
template<class T, typename offset_t, std::size_t DIMS>
493493
static void util_attrs copy(const md_view<T, offset_t, DIMS> &dst, const md_view<T, offset_t, DIMS> &src) {
494494
md_view<const T, offset_t, DIMS> csrc = src;
495-
copy(dst, csrc, std::memset);
495+
copy(dst, csrc, std::memcpy);
496496
}
497497

498498
template<class T, typename offset_t, std::size_t DIMS, class Memcpy>

scaler_tool.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ static std::string handle_image(const std::filesystem::path &input, const std::f
5252
return err_future.get();
5353
}
5454

55-
ABSL_FLAG(std::string, extensions, "jpg,png", "extensions that should be processed");
55+
ABSL_FLAG(std::string, extensions, "png,PNG", "extensions that should be processed");
5656
ABSL_FLAG(std::string, output, "output", "path to the folder to save processed results");
5757
constexpr char output_default[] = "output";
5858

0 commit comments

Comments
 (0)