Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pull in grpc and krb5 compilation into credentials-fetcher #2

Merged
merged 1 commit into from
Sep 7, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ if(${DISTRO_ID} MATCHES "ubuntu")
message(STATUS "Linux distro detected as ubuntu")
target_link_libraries(credentials-fetcherd
PUBLIC systemd boost_program_options krb5 glib-2.0 cf_gmsa_service_private
boost_filesystem boost_system crypto protobuf -L/usr/local/lib absl_log_internal_check_op absl_leak_check absl_die_if_null absl_log_internal_conditions absl_log_internal_message absl_examine_stack absl_log_internal_format absl_log_internal_proto absl_log_internal_nullguard absl_log_internal_log_sink_set absl_log_sink absl_log_entry absl_flags absl_flags_internal absl_flags_marshalling absl_flags_reflection absl_flags_private_handle_accessor absl_flags_commandlineflag absl_flags_commandlineflag_internal absl_flags_config absl_flags_program_name absl_log_initialize absl_log_globals absl_log_internal_globals absl_raw_hash_set absl_hash absl_city absl_low_level_hash absl_hashtablez_sampler absl_statusor absl_status absl_cord absl_cordz_info absl_cord_internal absl_cordz_functions absl_exponential_biased absl_cordz_handle absl_crc_cord_state absl_crc32c absl_crc_internal absl_crc_cpu_detect absl_bad_optional_access absl_str_format_internal absl_strerror absl_synchronization absl_graphcycles_internal absl_kernel_timeout_internal absl_stacktrace absl_symbolize absl_debugging_internal absl_demangle_internal absl_malloc_internal absl_time absl_civil_time absl_time_zone absl_bad_variant_access utf8_validity utf8_range absl_strings absl_string_view absl_strings_internal absl_base rt absl_spinlock_wait absl_int128 absl_throw_delegate absl_raw_logging_internal absl_log_severity kadm5srv_mit kdb5 gssrpc gssapi_krb5 gssrpc k5crypto com_err krb5support resolv utf8_validity ${_REFLECTION} ${_GRPC_GRPCPP} ${_PROTOBUF_LIBPROTOBUF})
boost_filesystem boost_system crypto protobuf kadm5srv_mit kdb5 gssrpc gssapi_krb5 gssrpc k5crypto com_err krb5support resolv utf8_validity)
else()
target_link_libraries(credentials-fetcherd
PUBLIC systemd boost_program_options krb5 glib-2.0 cf_gmsa_service_private
Expand Down
15 changes: 10 additions & 5 deletions api/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -53,17 +53,22 @@ target_include_directories(cf_gmsa_service_private
cmake_host_system_information(RESULT PRETTY_NAME QUERY DISTRIB_PRETTY_NAME)
cmake_host_system_information(RESULT DISTRO QUERY DISTRIB_INFO)

link_directories(AFTER /usr/local/lib ${PROJECT_SOURCE_DIR}/dependencies/build/binaries/grpc/lib)
link_directories(AFTER /usr/local/lib ${PROJECT_SOURCE_DIR}/dependencies/build/binaries/krb5/lib)

if(${DISTRO_ID} MATCHES "ubuntu")
message(STATUS "Linux distro detected as ubuntu")
target_link_libraries(cf_gmsa_service_private
${_PROTOBUF_LIBPROTOBUF}
${_REFLECTION}
${_GRPC_GRPCPP}
-L${PROJECT_SOURCE_DIR}/dependencies/build/binaries/grpc/lib
-L${PROJECT_SOURCE_DIR}/dependencies/build/binaries/krb5/lib
-L/usr/local/lib
grpc++_reflection grpc++ protobuf grpc re2 upb_json_lib upb_textformat_lib upb_collections_lib upb utf8_range_lib z absl_statusor cares gpr absl_status absl_strerror absl_flags absl_flags_internal absl_flags_reflection absl_raw_hash_set absl_hash absl_city absl_bad_variant_access absl_low_level_hash absl_hashtablez_sampler absl_flags_config absl_flags_program_name absl_flags_private_handle_accessor absl_flags_commandlineflag absl_flags_commandlineflag_internal absl_flags_marshalling absl_random_distributions absl_random_seed_sequences absl_random_internal_pool_urbg absl_random_internal_randen absl_random_internal_randen_hwaes absl_random_internal_randen_hwaes_impl absl_random_internal_randen_slow absl_random_internal_platform absl_random_internal_seed_material absl_random_seed_gen_exception absl_cord absl_bad_optional_access absl_cordz_info absl_cord_internal absl_cordz_functions absl_exponential_biased absl_cordz_handle absl_crc_cord_state absl_crc32c absl_crc_internal absl_crc_cpu_detect absl_str_format_internal absl_synchronization absl_stacktrace absl_symbolize absl_debugging_internal absl_demangle_internal absl_graphcycles_internal absl_kernel_timeout_internal absl_malloc_internal absl_time absl_strings absl_int128 absl_string_view absl_throw_delegate absl_strings_internal absl_base absl_spinlock_wait -lrt absl_raw_logging_internal absl_log_severity absl_civil_time absl_time_zone ssl crypto address_sorting
systemd
glib-2.0
boost_filesystem
krb5 kadm5srv_mit kdb5 gssrpc gssapi_krb5 gssrpc k5crypto
com_err krb5support resolv -L/usr/local/lib absl_log_internal_check_op absl_leak_check absl_die_if_null absl_log_internal_conditions absl_log_internal_message absl_examine_stack absl_log_internal_format absl_log_internal_proto absl_log_internal_nullguard absl_log_internal_log_sink_set absl_log_sink absl_log_entry absl_flags absl_flags_internal absl_flags_marshalling absl_flags_reflection absl_flags_private_handle_accessor absl_flags_commandlineflag absl_flags_commandlineflag_internal absl_flags_config absl_flags_program_name absl_log_initialize absl_log_globals absl_log_internal_globals absl_raw_hash_set absl_hash absl_city absl_low_level_hash absl_hashtablez_sampler absl_statusor absl_status absl_cord absl_cordz_info absl_cord_internal absl_cordz_functions absl_exponential_biased absl_cordz_handle absl_crc_cord_state absl_crc32c absl_crc_internal absl_crc_cpu_detect absl_bad_optional_access absl_str_format_internal absl_strerror absl_synchronization absl_graphcycles_internal absl_kernel_timeout_internal absl_stacktrace absl_symbolize absl_debugging_internal absl_demangle_internal absl_malloc_internal absl_time absl_civil_time absl_time_zone absl_bad_variant_access utf8_validity utf8_range absl_strings absl_string_view absl_strings_internal absl_base rt absl_spinlock_wait absl_int128 absl_throw_delegate absl_raw_logging_internal absl_log_severity kadm5srv_mit kdb5 gssrpc gssapi_krb5 gssrpc k5crypto com_err krb5support resolv utf8_validity)
krb5 kadm5srv_mit kdb5 gssapi_krb5 gssrpc
kdb5 gssrpc k5crypto com_err krb5support resolv utf8_validity
absl_log_internal_check_op absl_leak_check absl_die_if_null absl_log_internal_conditions absl_log_internal_message absl_examine_stack absl_log_internal_format absl_log_internal_proto absl_log_internal_nullguard absl_log_internal_log_sink_set absl_log_sink absl_log_entry absl_flags absl_flags_internal absl_flags_marshalling absl_flags_reflection absl_flags_private_handle_accessor absl_flags_commandlineflag absl_flags_commandlineflag_internal absl_flags_config absl_flags_program_name absl_log_initialize absl_log_globals absl_log_internal_globals absl_raw_hash_set absl_hash absl_city absl_low_level_hash absl_hashtablez_sampler absl_statusor absl_status absl_cord absl_cordz_info absl_cord_internal absl_cordz_functions absl_exponential_biased absl_cordz_handle absl_crc_cord_state absl_crc32c absl_crc_internal absl_crc_cpu_detect absl_bad_optional_access absl_str_format_internal absl_strerror absl_synchronization absl_graphcycles_internal absl_kernel_timeout_internal absl_stacktrace absl_symbolize absl_debugging_internal absl_demangle_internal absl_malloc_internal absl_time absl_civil_time absl_time_zone absl_bad_variant_access utf8_validity utf8_range absl_strings absl_string_view absl_strings_internal absl_base rt absl_spinlock_wait absl_int128 absl_throw_delegate absl_raw_logging_internal absl_log_severity)
else()
target_link_libraries(cf_gmsa_service_private
${_PROTOBUF_LIBPROTOBUF}
Expand Down
5 changes: 1 addition & 4 deletions api/tests/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,7 @@ file(

add_executable(gmsa_test_client "gmsa_test_client.cpp")
target_link_libraries(gmsa_test_client
cf_gmsa_service_private
${_PROTOBUF_LIBPROTOBUF}
${_REFLECTION}
${_GRPC_GRPCPP})
cf_gmsa_service_private)

cmake_policy(SET CMP0083 NEW)
include(CheckPIESupported)
Expand Down
1 change: 0 additions & 1 deletion auth/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
cmake_minimum_required(VERSION 3.10)

project(auth)
add_subdirectory (kerberos)

FILE(GLOB_RECURSE SRC_FILES CONFIGURE_DEPENDS kerberos/src/*.cpp kerberos/src/*.c kinit_client/*.c)
Expand Down
2 changes: 0 additions & 2 deletions common/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
cmake_minimum_required(VERSION 3.10)

project(common)

cmake_minimum_required(VERSION 2.8)
2 changes: 0 additions & 2 deletions config/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
cmake_minimum_required(VERSION 3.10)

project(config)

FILE(GLOB SRC_FILES src/*.cpp)

set(config "${SRC_FILES}" PARENT_SCOPE)
Expand Down
2 changes: 0 additions & 2 deletions daemon/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
cmake_minimum_required(VERSION 3.10)

project(daemon)

FILE(GLOB SRC_FILES src/*.cpp)

set(daemon "${SRC_FILES}" PARENT_SCOPE)
Expand Down
24 changes: 24 additions & 0 deletions dependencies/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
cmake_minimum_required(VERSION 3.10)

project(build_binaries)

add_custom_target(build_krb5)
add_custom_command(TARGET build_krb5
COMMAND rm -rf ${CMAKE_BINARY_DIR}/krb5-krb5-1.21.2-final
COMMAND tar zxvf ${CMAKE_SOURCE_DIR}/krb5-1.21.2-final.tar.gz
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
COMMAND cd krb5-krb5-1.21.2-final/src && autoreconf && mkdir -p ${PROJECT_BINARY_DIR}/binaries/krb5 && ./configure prefix=${PROJECT_BINARY_DIR}/binaries/krb5 && make -j && make install
DEPENDS ${CMAKE_SOURCE_DIR}/dependencies/krb5-1.21.2-final.tar.gz
COMMENT "Compiling krb5-1.21.2-final.tar.gz"
VERBATIM)

add_custom_target(build_grpc)
add_custom_command(TARGET build_grpc
COMMAND rm -rf ${CMAKE_BINARY_DIR}/grpc
COMMAND tar zxvf ${CMAKE_SOURCE_DIR}/grpc-v1.57.0.tar.gz
WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
COMMAND mkdir -p ${PROJECT_BINARY_DIR}/binaries/grpc/bin ${PROJECT_BINARY_DIR}/binaries/grpc/lib
COMMAND cd grpc && mkdir -p build/grpc/bin build/grpc/lib && cd build && cmake -DgRPC_INSTALL=ON -DgRPC_BUILD_TESTS=OFF -DCMAKE_CXX_STANDARD=17 -DCMAKE_INSTALL_PREFIX=${PROJECT_BINARY_DIR}/binaries/grpc -DgRPC_INSTALL_BINDIR=${PROJECT_BINARY_DIR}/binaries/grpc/bin -DgRPC_INSTALL_LIBDIR=${PROJECT_BINARY_DIR}/binaries/grpc/lib ../ && make -j && make install
DEPENDS ${CMAKE_SOURCE_DIR}/dependencies/grpc-v1.57.0.tar.gz
COMMENT "Compiling grpc-1.57.0.tar.gz"
VERBATIM)