This is an automated email from the ASF dual-hosted git repository. dbecker pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/impala.git
commit a7fc8c977a73683fcabb296882ac32593526503d Author: Daniel Becker <[email protected]> AuthorDate: Tue Mar 11 10:07:15 2025 +0100 IMPALA-13852: udf-ir.cc missing in ImpalaUdf IMPALA-11623 separated out *ir.cc files into their own libraries. With the change, the source file 'be/src/udf/CMakeLists.txt', which was previously included in the ImpalaUdf library, is now not included. In case of other libraries, it is intentional that *ir.cc files are not included in the them as they are linked together with the *Ir libraries to form the Impala executable. But ImpalaUdf is special because it is shipped separately as part of the UDF SDK. Because of missing udf-ir.cc, the functions defined in it, such as FunctionContext::GetFunctionState(), are not present in libImpalaUdf.a. This change adds udf-ir.cc to ImpalaUdf. Testing: - verified manually that GetFunctionState() is present in libImpalaUdf.a Change-Id: I7e8ad94931ced21f386e4981f36e0cf7e700ffaf Reviewed-on: http://gerrit.cloudera.org:8080/22609 Reviewed-by: Csaba Ringhofer <[email protected]> Tested-by: Impala Public Jenkins <[email protected]> --- be/src/udf/CMakeLists.txt | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/be/src/udf/CMakeLists.txt b/be/src/udf/CMakeLists.txt index 89475a5ae..eaf30bd17 100644 --- a/be/src/udf/CMakeLists.txt +++ b/be/src/udf/CMakeLists.txt @@ -22,7 +22,8 @@ set(LIBRARY_OUTPUT_PATH "${BUILD_OUTPUT_ROOT_DIRECTORY}/udf") # where to put generated binaries set(EXECUTABLE_OUTPUT_PATH "${BUILD_OUTPUT_ROOT_DIRECTORY}/udf") -add_library(UdfIr udf-ir.cc) +set(UDF_IR_SRC_FILES udf-ir.cc) +add_library(UdfIr ${UDF_IR_SRC_FILES}) add_dependencies(UdfIr gen-deps) set(UDF_SRC_FILES @@ -33,10 +34,13 @@ set(UDF_SRC_FILES # Build this library twice. Once to be linked into the main impalad. This version # can have dependencies on our other libs. The second version is shipped as part # of the UDF sdk, which can't use other libs. +# Note that '${UDF_IR_SRC_FILES}' is not needed in 'Udf' because it will be linked +# together with 'UdfIr' as part of the Impala binary, but 'ImpalaUdf' needs it because it +# is shipped separately. add_library(Udf ${UDF_SRC_FILES}) add_dependencies(Udf gen-deps) -add_library(ImpalaUdf ${UDF_SRC_FILES}) +add_library(ImpalaUdf ${UDF_SRC_FILES} ${UDF_IR_SRC_FILES}) add_dependencies(ImpalaUdf gen-deps) set_target_properties(ImpalaUdf PROPERTIES COMPILE_FLAGS "-DIMPALA_UDF_SDK_BUILD")
