This is an automated email from the ASF dual-hosted git repository.

leaves12138 pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/paimon-cpp.git

commit 91306fff55d8f47bd2cc5f7c4677060be90d843f
Author: yonghao.fyh <[email protected]>
AuthorDate: Mon May 25 18:07:39 2026 +0800

    fix
---
 LICENSE                                 | 31 +++++++++++++++++++++++++++++++
 NOTICE                                  |  3 +++
 cmake_modules/ThirdpartyToolchain.cmake | 31 +++++++++++++++++++++++++++++++
 3 files changed, 65 insertions(+)

diff --git a/LICENSE b/LICENSE
index dbb46e5..94b91de 100644
--- a/LICENSE
+++ b/LICENSE
@@ -265,3 +265,34 @@ Copyright: 2016-2024 The Apache Software Foundation.
 Home page: https://arrow.apache.org/
 License: https://www.apache.org/licenses/LICENSE-2.0
 
--------------------------------------------------------------------------------
+
+This product includes code from cppjieba.
+
+* cppjieba utility in src/paimon/global_index/lucene/ directory
+
+Copyright: 2013
+Home page: https://github.com/yanyiwu/cppjieba
+License: https://opensource.org/licenses/MIT
+
+The MIT License (MIT)
+
+Copyright (c) 2013
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 
of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 
FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+--------------------------------------------------------------------------------
\ No newline at end of file
diff --git a/NOTICE b/NOTICE
index 96da4f4..08021f3 100644
--- a/NOTICE
+++ b/NOTICE
@@ -10,3 +10,6 @@ Copyright 2016-2024 The Apache Software Foundation
 This product includes software from RocksDB project (Apache 2.0 and BSD 
3-clause)
 Copyright (c) 2011-present, Facebook, Inc.  All rights reserved.
 Copyright (c) 2011 The LevelDB Authors. All rights reserved.
+
+This product includes software from cppjieba project (MIT)
+Copyright 2013
\ No newline at end of file
diff --git a/cmake_modules/ThirdpartyToolchain.cmake 
b/cmake_modules/ThirdpartyToolchain.cmake
index 2be9097..8e96db7 100644
--- a/cmake_modules/ThirdpartyToolchain.cmake
+++ b/cmake_modules/ThirdpartyToolchain.cmake
@@ -412,6 +412,36 @@ function(paimon_set_dependency_source_default 
DEPENDENCY_NAME SOURCE_VALUE REASO
     endif()
 endfunction()
 
+function(paimon_enforce_patched_dependency_policy)
+    paimon_get_dependency_source(Arrow _arrow_source)
+    if(_arrow_source STREQUAL "SYSTEM")
+        message(FATAL_ERROR "Arrow_SOURCE=SYSTEM is not supported because 
paimon-cpp "
+                            "requires project-specific Arrow patches. Use 
Arrow_SOURCE=BUNDLED."
+        )
+    elseif(_arrow_source STREQUAL "AUTO")
+        message(STATUS "Forcing Arrow_SOURCE to BUNDLED because paimon-cpp 
requires "
+                       "project-specific Arrow patches")
+        set(Arrow_SOURCE "BUNDLED"
+            CACHE STRING "Dependency source for Arrow" FORCE)
+        set(Arrow_SOURCE "BUNDLED" PARENT_SCOPE)
+    endif()
+
+    if(PAIMON_ENABLE_ORC)
+        paimon_get_dependency_source(ORC _orc_source)
+        if(_orc_source STREQUAL "SYSTEM")
+            message(FATAL_ERROR "ORC_SOURCE=SYSTEM is not supported because 
paimon-cpp "
+                                "requires project-specific ORC patches. Use 
ORC_SOURCE=BUNDLED."
+            )
+        elseif(_orc_source STREQUAL "AUTO")
+            message(STATUS "Forcing ORC_SOURCE to BUNDLED because paimon-cpp 
requires "
+                           "project-specific ORC patches")
+            set(ORC_SOURCE "BUNDLED"
+                CACHE STRING "Dependency source for ORC" FORCE)
+            set(ORC_SOURCE "BUNDLED" PARENT_SCOPE)
+        endif()
+    endif()
+endfunction()
+
 function(paimon_apply_dependency_source_defaults)
     paimon_get_dependency_source(Arrow _arrow_source)
     if(_arrow_source STREQUAL "SYSTEM" OR _arrow_source STREQUAL "BUNDLED")
@@ -1758,6 +1788,7 @@ endmacro()
 
 resolve_dependency(fmt)
 resolve_dependency(RapidJSON)
+paimon_enforce_patched_dependency_policy()
 paimon_apply_dependency_source_defaults()
 resolve_dependency(RE2)
 resolve_dependency(Snappy)

Reply via email to