Spaces:
Running
Running
| # Copyright 2026 Google LLC. | |
| # | |
| # 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. | |
| set(JSON_CONFIG_FILE "" CACHE INTERNAL "JSON file defining the source and destination file paths") | |
| if(NOT EXISTS ${JSON_CONFIG_FILE}) | |
| message(FATAL_ERROR "[LiteRTLM] Patch config not found: ${JSON_CONFIG_FILE}") | |
| endif() | |
| file(READ "${JSON_CONFIG_FILE}" JSON_CONTENT) | |
| string(JSON FILE_COUNT LENGTH "${JSON_CONTENT}" "files") | |
| math(EXPR STOP_IDX "${FILE_COUNT} - 1") | |
| foreach(IDX RANGE ${STOP_IDX}) | |
| string(JSON SRC_RAW GET "${JSON_CONTENT}" "files" ${IDX} "src_path") | |
| string(JSON DEST_RAW GET "${JSON_CONTENT}" "files" ${IDX} "dest_path") | |
| string(CONFIGURE "${SRC_RAW}" SRC_PATH) | |
| string(CONFIGURE "${DEST_RAW}" DEST_PATH) | |
| if(NOT EXISTS "${SRC_PATH}") | |
| message(FATAL_ERROR "[LiteRTLM] Source file missing: ${SRC_PATH}") | |
| endif() | |
| message(STATUS "Copying: ${SRC_PATH} -> ${DEST_PATH}") | |
| file(READ "${SRC_PATH}" FILE_CONTENT) | |
| string(REPLACE | |
| "litert/cc/internal/scoped_file.h" | |
| "runtime/util/scoped_file.h" | |
| FILE_CONTENT "${FILE_CONTENT}" | |
| ) | |
| file(WRITE "${DEST_PATH}" "${FILE_CONTENT}") | |
| message(STATUS "[LiteRTLM] Line-patched and Copied: ${DEST_PATH}") | |
| endforeach() |