You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kudu.apache.org by gr...@apache.org on 2020/12/16 21:31:45 UTC

[kudu] branch master updated: [thirdparty] Fix curl build on SLES

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

granthenke pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/kudu.git


The following commit(s) were added to refs/heads/master by this push:
     new dd6a1f8  [thirdparty] Fix curl build on SLES
dd6a1f8 is described below

commit dd6a1f830c0fe72d3ef3bc08d4685b6823c5e0c4
Author: Grant Henke <gr...@apache.org>
AuthorDate: Wed Dec 16 13:13:20 2020 -0600

    [thirdparty] Fix curl build on SLES
    
    SLES does not put the krb5-config in /usr/bin as curl expects.
    Instead krb5-config is installed into `/usr/lib/mit/bin/`.
    Additionally it doesn’t put that location on the `PATH` by default,
    which means that the `which` command can fail to find it.
    Building curl with an empty KRB5CONFIG results in the following
    error:
       configure: error: one or more libs available at link-time are not available run-time. Libs used at link-time: -lgssapi
    
    This patch fixes the issue for more common/default environments by
    falling back to the special SLES krb5_config location if one is not found
    and the file exists.
    
    Change-Id: I0961865a00601431bbc833360590cafa3aaf65c6
    Reviewed-on: http://gerrit.cloudera.org:8080/16883
    Reviewed-by: Alexey Serbin <as...@cloudera.com>
    Reviewed-by: Andrew Wong <aw...@cloudera.com>
    Tested-by: Kudu Jenkins
---
 thirdparty/build-definitions.sh | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/thirdparty/build-definitions.sh b/thirdparty/build-definitions.sh
index 21713fb..e6bf05b 100644
--- a/thirdparty/build-definitions.sh
+++ b/thirdparty/build-definitions.sh
@@ -692,6 +692,12 @@ build_curl() {
   if [ -n "$KRB5CONFIG_LOCATION" -a "$KRB5CONFIG_LOCATION" != "/usr/bin/krb5-config" ]; then
     export KRB5CONFIG=$KRB5CONFIG_LOCATION
   fi
+  # In the case the special SLES location is not on the PATH but exists and we haven't
+  # found another viable KRB5CONFIG_LOCATION, use the special SLES location.
+  SLES_KRB5CONFIG_LOCATION="/usr/lib/mit/bin/krb5-config"
+  if [ -z "$KRB5CONFIG_LOCATION" -a -f "$SLES_KRB5CONFIG_LOCATION" ]; then
+    export KRB5CONFIG=$SLES_KRB5CONFIG_LOCATION
+  fi
 
   # In the scope of using libcurl in Kudu tests and other simple scenarios,
   # not so much functionality is needed as of now, so configure for a fairly