diff --git a/CHANGELOG.md b/CHANGELOG.md index e350c638b48..9e504e774e8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,6 @@ + * Use TBB instead of OpenMP for DNNL to prevent conflicts with MKL, ONNX Runtime, etc ([issue #907](https://github.com/bytedeco/javacpp-presets/issues/907)) + * Fix loading issue with `opencv_ximgproc` ([issue #911](https://github.com/bytedeco/javacpp-presets/issues/911)) * Build LibTIFF after WebP to make sure they link correctly in presets for Leptonica * Virtualize `IInt8Calibrator` plus subclasses from TensorRT to allow customization ([issue #902](https://github.com/bytedeco/javacpp-presets/issues/902)) * Replace `requires` with `requires static` in JPMS `.platform` modules ([pull #900](https://github.com/bytedeco/javacpp-presets/pull/900)) diff --git a/dnnl/LICENSE b/dnnl/LICENSE index d31d07ea10e..41e50884d6a 100644 --- a/dnnl/LICENSE +++ b/dnnl/LICENSE @@ -175,18 +175,10 @@ END OF TERMS AND CONDITIONS - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "{}" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. + ============================================================================ - Copyright {yyyy} {name of copyright owner} + Copyright 2016-2019 Intel Corporation + Copyright 2018 YANDEX LLC Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -200,32 +192,10 @@ See the License for the specific language governing permissions and limitations under the License. - ============================================================================ - - DNNL includes components with separate copyright - notices and license terms. - - XByak, 3-clause BSD license - Copyright (c) 2007 MITSUNARI Shigeo - See full copyright notice and license text in src/cpu/xbyak/COPYRIGHT - - gtest, 3-clause BSD license - Copyright 2008, Google Inc. - See full copyright notice and license text in tests/gtests/gtest/LICENSE - - ittnotify, 3-clause BSD license - Copyright (c) 2011, Intel Corporation - See full copyright notice and license text in - src/cpu/jit_utils/jitprofiling/LICENSE.BSD - - CMake, 3-clause BSD license - Copyright 2000-2019 Kitware, Inc. and Contributors - See full license text in cmake/Copyright.txt - - MathJax, Apache License 2.0 - Copyright (c) 2009-2018 The MathJax Consortium - See full license text in doc/assets/mathjax/LICENSE - - Boost C++ Libraries, Boost Software License, Version 1.0 - Copyright 2005-2014 Daniel James. - See full license text in src/cpu/LICENSE_1_0 + This distribution includes third party software ("third party programs"). + This third party software, even if included with the distribution of + the Intel software, may be governed by separate license terms, including + without limitation, third party license terms, other Intel software license + terms, and open source software license terms. These separate license terms + govern your use of the third party programs as set forth in the + "THIRD-PARTY-PROGRAMS" file. diff --git a/dnnl/LICENSE.tbb b/dnnl/LICENSE.tbb new file mode 100644 index 00000000000..261eeb9e9f8 --- /dev/null +++ b/dnnl/LICENSE.tbb @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/dnnl/THIRD-PARTY-PROGRAMS b/dnnl/THIRD-PARTY-PROGRAMS new file mode 100644 index 00000000000..6cf7cc656ef --- /dev/null +++ b/dnnl/THIRD-PARTY-PROGRAMS @@ -0,0 +1,394 @@ +oneAPI Deep Neural Network Library (oneDNN) Third Party Programs File + +This file contains the list of third party software ("third party programs") +contained in the Intel software and their required notices and/or license +terms. This third party software, even if included with the distribution of +the Intel software, may be governed by separate license terms, including +without limitation, third party license terms, other Intel software license +terms, and open source software license terms. These separate license terms +govern your use of the third party programs as set forth in in the +"THIRD-PARTY-PROGRAMS" file. + +Third party programs and their corresponding required notices and/or license +terms are listed below. + +3-clause BSD License +==================== + +XByak (src/cpu/xbyak/) +---------------------- +Copyright (c) 2007 MITSUNARI Shigeo +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. +Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. +Neither the name of the copyright owner nor the names of its contributors may +be used to endorse or promote products derived from this software without +specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE +LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF +THE POSSIBILITY OF SUCH DAMAGE. +----------------------------------------------------------------------------- +ソースコード形式かバイナリ形式か、変更するかしないかを問わず、以下の条件を満た +す場合に限り、再頒布および使用が許可されます。 + +ソースコードを再頒布する場合、上記の著作権表示、本条件一覧、および下記免責条項 +を含めること。 +バイナリ形式で再頒布する場合、頒布物に付属のドキュメント等の資料に、上記の著作 +権表示、本条件一覧、および下記免責条項を含めること。 +書面による特別の許可なしに、本ソフトウェアから派生した製品の宣伝または販売促進 +に、著作権者の名前またはコントリビューターの名前を使用してはならない。 +本ソフトウェアは、著作権者およびコントリビューターによって「現状のまま」提供さ +れており、明示黙示を問わず、商業的な使用可能性、および特定の目的に対する適合性 +に関する暗黙の保証も含め、またそれに限定されない、いかなる保証もありません。 +著作権者もコントリビューターも、事由のいかんを問わず、 損害発生の原因いかんを +問わず、かつ責任の根拠が契約であるか厳格責任であるか(過失その他の)不法行為で +あるかを問わず、仮にそのような損害が発生する可能性を知らされていたとしても、 +本ソフトウェアの使用によって発生した(代替品または代用サービスの調達、使用の +喪失、データの喪失、利益の喪失、業務の中断も含め、またそれに限定されない)直接 +損害、間接損害、偶発的な損害、特別損害、懲罰的損害、または結果損害について、 +一切責任を負わないものとします。 + +gtest (tests/gtests/gtest/) +--------------------------- +Copyright 2005, Google Inc. +Copyright 2006, Google Inc. +Copyright 2007, Google Inc. +Copyright 2008, Google Inc. +Copyright 2015, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +ittnotify (src/cpu/jit_utils/jitprofiling/) +------------------------------------------- +Copyright (c) 2011, Intel Corporation +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +CMake (cmake/FindOpenCL.cmake) +------------------------------ +CMake - Cross Platform Makefile Generator +Copyright 2000-2019 Kitware, Inc. and Contributors +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +* Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +* Neither the name of Kitware, Inc. nor the names of Contributors + may be used to endorse or promote products derived from this + software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Apache License, Version 2.0 +=========================== + +MathJax (doc/assets/mathjax/) +----------------------------- +Copyright (c) 2009-2018 The MathJax Consortium +Copyright (c) 2015-2017 Martin Hensel +Copyright (c) 2007, Apostolos Syropoulos ($@ + + %.res: %.rc version_string.ver $(TBB.MANIFEST) +- rc /Fo$@ $(INCLUDES) $(filter /D%,$(CPLUS_FLAGS)) $< ++ rc -Fo$@ $(INCLUDES) $(filter /D%,$(CPLUS_FLAGS)) $< + + # TODO: add $(LIB_LINK_LIBS) $(LIB_LINK_FLAGS) (in a separate line?) and remove useless $(INCLUDES) + VERSION_FLAGS=$(CPLUS) $(CPLUS_FLAGS) $(CXX_ONLY_FLAGS) $(INCLUDES) + + ifneq (,$(TBB.MANIFEST)) + $(TBB.MANIFEST): +- cmd /C "echo #include ^ >tbbmanifest.c" +- cmd /C "echo int main(){return 0;} >>tbbmanifest.c" +- cl /nologo $(C_FLAGS) tbbmanifest.c ++ echo '#include ' >tbbmanifest.c" ++ echo 'int main(){return 0;}' >>tbbmanifest.c" ++ cl -nologo $(C_FLAGS) tbbmanifest.c + + version_string.ver: $(TBB.MANIFEST) + $(MAKE_VERSIONS) +- cmd /C "echo #define TBB_MANIFEST 1 >> version_string.ver" ++ echo '#define TBB_MANIFEST 1' >> version_string.ver" + # TODO: fix parallel build by writing to a temporary file and rename it when complete + else + # TODO: make version strings directly representative for all the libraries +diff -ruN oneTBB-2020.3/build/windows.cl.inc oneTBB-2020.3-windows/build/windows.cl.inc +--- oneTBB-2020.3/build/windows.cl.inc 2020-07-10 22:18:01.000000000 +0900 ++++ oneTBB-2020.3-windows/build/windows.cl.inc 2020-07-19 09:26:26.335276700 +0900 +@@ -20,104 +20,104 @@ + #------------------------------------------------------------------------------ + # Setting compiler flags. + #------------------------------------------------------------------------------ +-CPLUS ?= cl /nologo +-LINK_FLAGS = /link /nologo +-LIB_LINK_FLAGS=/link /nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DYNAMICBASE /NXCOMPAT ++CPLUS ?= cl -nologo ++LINK_FLAGS = -link -nologo ++LIB_LINK_FLAGS=-link -nologo -DLL -MAP -DEBUG -fixed:no -INCREMENTAL:NO -DYNAMICBASE -NXCOMPAT + + ifneq (,$(stdver)) +- CXX_STD_FLAGS = /std:$(stdver) ++ CXX_STD_FLAGS = -std:$(stdver) + endif + + ifeq ($(arch), ia32) +- LIB_LINK_FLAGS += /SAFESEH ++ LIB_LINK_FLAGS += -SAFESEH + endif + + ifeq ($(runtime), vc_mt) +- MS_CRT_KEY = /MT$(if $(findstring debug,$(cfg)),d) ++ MS_CRT_KEY = -MT$(if $(findstring debug,$(cfg)),d) + else +- MS_CRT_KEY = /MD$(if $(findstring debug,$(cfg)),d) ++ MS_CRT_KEY = -MD$(if $(findstring debug,$(cfg)),d) + endif +-EH_FLAGS = $(if $(no_exceptions),/EHs-,/EHsc /GR) ++EH_FLAGS = $(if $(no_exceptions),-EHs-,-EHsc -GR) + + # UWD binaries have to use static CRT linkage + ifeq ($(target_app), uwd) +- MS_CRT_KEY = /MT$(if $(findstring debug,$(cfg)),d) ++ MS_CRT_KEY = -MT$(if $(findstring debug,$(cfg)),d) + endif + + ifeq ($(cfg), release) +- CPLUS_FLAGS = $(MS_CRT_KEY) /O2 /Zi $(EH_FLAGS) /Zc:forScope /Zc:wchar_t /D__TBB_LIB_NAME=$(TBB.LIB) ++ CPLUS_FLAGS = $(MS_CRT_KEY) -O2 -Zi $(EH_FLAGS) -Zc:forScope -Zc:wchar_t -D__TBB_LIB_NAME=$(TBB.LIB) + ASM_FLAGS = + endif + ifeq ($(cfg), debug) +- CPLUS_FLAGS = $(MS_CRT_KEY) /Od /Ob0 /Zi $(EH_FLAGS) /Zc:forScope /Zc:wchar_t /DTBB_USE_DEBUG /D__TBB_LIB_NAME=$(TBB.LIB) +- ASM_FLAGS = /DUSE_FRAME_POINTER ++ CPLUS_FLAGS = $(MS_CRT_KEY) -Od -Ob0 -Zi $(EH_FLAGS) -Zc:forScope -Zc:wchar_t -DTBB_USE_DEBUG -D__TBB_LIB_NAME=$(TBB.LIB) ++ ASM_FLAGS = -DUSE_FRAME_POINTER + endif + +-ZW_KEY = /ZW:nostdlib ++ZW_KEY = -ZW:nostdlib + + # These flags are general for Windows* universal applications + ifneq (,$(target_app)) +- CPLUS_FLAGS += $(ZW_KEY) /D "_UNICODE" /D "UNICODE" /D "WINAPI_FAMILY=WINAPI_FAMILY_APP" ++ CPLUS_FLAGS += $(ZW_KEY) -D "_UNICODE" -D "UNICODE" -D "WINAPI_FAMILY=WINAPI_FAMILY_APP" + endif + + ifeq ($(target_app), win8ui) + _WIN32_WINNT = 0x0602 + else ifneq (,$(filter $(target_app),uwp uwd)) + _WIN32_WINNT = 0x0A00 +- LIB_LINK_FLAGS += /NODEFAULTLIB:kernel32.lib OneCore.lib ++ LIB_LINK_FLAGS += -NODEFAULTLIB:kernel32.lib OneCore.lib + else +- CPLUS_FLAGS += /DDO_ITT_NOTIFY ++ CPLUS_FLAGS += -DDO_ITT_NOTIFY + endif + ifeq ($(target_mode), store) + # it is necessary to source vcvars with 'store' argument in production +- LIB_LINK_FLAGS += /APPCONTAINER ++ LIB_LINK_FLAGS += -APPCONTAINER + endif + +-CPLUS_FLAGS += /GS ++CPLUS_FLAGS += -GS + +-COMPILE_ONLY = /c +-PREPROC_ONLY = /TP /EP +-INCLUDE_KEY = /I +-DEFINE_KEY = /D +-OUTPUT_KEY = /Fe +-OUTPUTOBJ_KEY = /Fo +-WARNING_AS_ERROR_KEY = /WX +-WARNING_SUPPRESS = $(if $(no_exceptions),/wd4530 /wd4577) +-BIGOBJ_KEY = /bigobj ++COMPILE_ONLY = -c ++PREPROC_ONLY = -TP -EP ++INCLUDE_KEY = -I ++DEFINE_KEY = -D ++OUTPUT_KEY = -Fe ++OUTPUTOBJ_KEY = -Fo ++WARNING_AS_ERROR_KEY = -WX ++WARNING_SUPPRESS = $(if $(no_exceptions),-wd4530 -wd4577) ++BIGOBJ_KEY = -bigobj + + ifeq ($(runtime),vc7.1) +- WARNING_KEY = /W3 ++ WARNING_KEY = -W3 + else +- WARNING_KEY = /W4 +- OPENMP_FLAG = /openmp ++ WARNING_KEY = -W4 ++ OPENMP_FLAG = -Openmp + endif + +-DYLIB_KEY = /DLL +-EXPORT_KEY = /DEF: +-NODEFAULTLIB_KEY = /Zl +-NOINTRINSIC_KEY = /Oi- ++DYLIB_KEY = -DLL ++EXPORT_KEY = -DEF: ++NODEFAULTLIB_KEY = -Zl ++NOINTRINSIC_KEY = -Oi- + +-INCLUDE_TEST_HEADERS = /FI$(tbb_root)/src/test/harness_preload.h ++INCLUDE_TEST_HEADERS = -FI$(tbb_root)/src/test/harness_preload.h + + ifeq ($(runtime),vc8) +- WARNING_KEY += /Wp64 +- CPLUS_FLAGS += /D_USE_RTM_VERSION ++ WARNING_KEY += -Wp64 ++ CPLUS_FLAGS += -D_USE_RTM_VERSION + endif + + # Since VS2012, VC++ provides /volatile option to control semantics of volatile variables. + # We want to use strict ISO semantics in the library and tests + ifeq (ok,$(call detect_js,/minversion cl 17)) +- CPLUS_FLAGS += /volatile:iso ++ CPLUS_FLAGS += -volatile:iso + endif + + # Since VS2013, VC++ uses the same .pdb file for different sources so we need + # to add /FS (Force Synchronous PDB Writes) + ifeq (ok,$(call detect_js,/minversion cl 18)) +- CPLUS_FLAGS += /FS ++ CPLUS_FLAGS += -FS + endif + +-CPLUS_FLAGS += /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE \ +- /D_WIN32_WINNT=$(_WIN32_WINNT) ++CPLUS_FLAGS += -DUSE_WINTHREAD -D_CRT_SECURE_NO_DEPRECATE \ ++ -D_WIN32_WINNT=$(_WIN32_WINNT) + C_FLAGS = $(subst $(ZW_KEY),,$(subst $(EH_FLAGS),,$(CPLUS_FLAGS))) + + #------------------------------------------------------------------------------ +@@ -130,8 +130,8 @@ + #------------------------------------------------------------------------------ + ASSEMBLY_SOURCE=$(arch)-masm + ifeq (intel64,$(arch)) +- ASM=ml64 /nologo +- ASM_FLAGS += /DEM64T=1 /c /Zi ++ ASM=ml64 -nologo ++ ASM_FLAGS += -DEM64T=1 -c -Zi + TBB_ASM.OBJ = atomic_support.obj intel64_misc.obj itsx.obj + MALLOC_ASM.OBJ = atomic_support.obj + else +@@ -139,8 +139,8 @@ + ASM= + TBB_ASM.OBJ= + else +- ASM=ml /nologo +- ASM_FLAGS += /c /coff /Zi /safeseh ++ ASM=ml -nologo ++ ASM_FLAGS += -c -coff -Zi -safeseh + TBB_ASM.OBJ = atomic_support.obj lock_byte.obj itsx.obj + endif + endif +diff -ruN oneTBB-2020.3/build/windows.inc oneTBB-2020.3-windows/build/windows.inc +--- oneTBB-2020.3/build/windows.inc 2020-07-10 22:18:01.000000000 +0900 ++++ oneTBB-2020.3-windows/build/windows.inc 2020-07-19 10:30:31.113586100 +0900 +@@ -12,8 +12,6 @@ + # See the License for the specific language governing permissions and + # limitations under the License. + +-export SHELL = cmd +- + ifdef tbb_build_dir + test_dir:=$(tbb_build_dir) + else +@@ -22,7 +20,7 @@ + + # A convenience wrapper for calls to detect.js. + # $(1) is the full command line for the script, e.g. /minversion icl 12 +-detect_js = $(shell cmd /C "cscript /nologo /E:jscript $(tbb_root)/build/detect.js $(1)") ++detect_js = $(shell cmd.exe //c "cscript -nologo -E:jscript $(tbb_root)/build/detect.js $(1)") + + # TODO give an error if archs doesn't match + ifndef arch +@@ -37,17 +35,18 @@ + export compiler ?= cl + debugger ?= devenv /debugexe + +-CMD=cmd /C +-CWD=$(shell cmd /C echo %CD%) +-RM=cmd /C del /Q /F +-RD=cmd /C rmdir +-MD=cmd /c mkdir +-SLASH=\\ +-NUL = nul ++CMD=sh -c ++CWD=$(shell pwd) ++CP=cp ++RM?=rm -f ++RD?=rmdir ++MD?=mkdir -p ++NUL= /dev/null ++SLASH=/ + + AR=lib +-AR_OUTPUT_KEY=/out: +-AR_FLAGS=/nologo /nodefaultlib ++AR_OUTPUT_KEY=-out: ++AR_FLAGS=-nologo -nodefaultlib + + OBJ = obj + DLL = dll +@@ -110,8 +109,8 @@ + RML.MANIFEST = tbbmanifest.exe.manifest + endif + +-MAKE_VERSIONS = cmd /C cscript /nologo /E:jscript $(subst \,/,$(tbb_root))/build/version_info_windows.js $(compiler) $(arch) $(subst \,/,"$(VERSION_FLAGS)") > version_string.ver +-MAKE_TBBVARS = cmd /C "$(subst /,\,$(tbb_root))\build\generate_tbbvars.bat" ++MAKE_VERSIONS = cmd.exe //c cscript -nologo -E:jscript $(subst \,/,$(tbb_root))/build/version_info_windows.js $(compiler) $(arch) $(subst \,/,"$(VERSION_FLAGS)") > version_string.ver ++MAKE_TBBVARS = cmd.exe //c "$(subst /,\,$(tbb_root))\build\generate_tbbvars.bat" + + TEST_LAUNCHER = $(subst /,\,$(tbb_root))\build\test_launcher.bat $(largs) + diff --git a/opencv/src/main/java/org/bytedeco/opencv/presets/opencv_ximgproc.java b/opencv/src/main/java/org/bytedeco/opencv/presets/opencv_ximgproc.java index 25df494cedb..3ed93ee6323 100644 --- a/opencv/src/main/java/org/bytedeco/opencv/presets/opencv_ximgproc.java +++ b/opencv/src/main/java/org/bytedeco/opencv/presets/opencv_ximgproc.java @@ -33,7 +33,7 @@ * @author Samuel Audet */ @Properties( - inherit = opencv_calib3d.class, + inherit = opencv_video.class, value = { @Platform(include = {"", "opencv2/ximgproc/edge_filter.hpp", "opencv2/ximgproc/disparity_filter.hpp", "opencv2/ximgproc/sparse_match_interpolator.hpp", "opencv2/ximgproc/structured_edge_detection.hpp", "opencv2/ximgproc/seeds.hpp",