Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.
64 lines
2.5 KiB
Diff
64 lines
2.5 KiB
Diff
From 48f7e6d66e2850088b8922024641173776222242 Mon Sep 17 00:00:00 2001
|
|||
From: Nick Cao <nickcao@nichi.co>
|
|||
Date: Thu, 21 Nov 2024 15:30:00 -0500
|
|||
Subject: [PATCH] build: find pre-built heimdal build tools in case of embedded
|
|||
heimdal
|
|||
|
|||
This patch fixes the case of finding asn1_compile and compile_et for
|
|||
building embedded heimdal, by setting
|
|||
--bundled-libraries='!asn1_compile,!compile_et' as configure flags.
|
|||
|
|||
The Heimdal build tools compile_et and asn1_compile are needed *only*
|
|||
if we use the embedded heimdal (otherwise we don't build heimdal and
|
|||
use headers that have been generated by those tools elsewhere).
|
|||
|
|||
For cross-compilation with embedded heimdal, it is vital to use host build
|
|||
tools, and so asn1_compile and compile_et must be supplied and not
|
|||
built. One way of doing this would be to set the COMPILE_ET and
|
|||
ASN1_COMPILE env vars to the location of supplied binaries. Another way,
|
|||
which is more commonly used, is to exclude asn1_compile and compile_et
|
|||
from bundled packages via the switch
|
|||
-bundled-libraries='!asn1_compile,!compile_et'. When this is done,
|
|||
the build script searches the path for those tools and sets the
|
|||
ASN1_COMPILE and COMPILE_ET vars accordingly. (this is admittedly
|
|||
kind of a round-about way of doing things but this has become the
|
|||
de-facto standard amongst embedded distro builders).
|
|||
|
|||
In commit 8061983d4882f3ba3f12da71443b035d7b672eec, this process of
|
|||
finding the binaris has been moved to be carried out only in the
|
|||
system heimdal case. As explained above, we only need these tools,
|
|||
and hence the check, in bundled mode.
|
|||
|
|||
BUG: https://bugzilla.samba.org/show_bug.cgi?id=14164
|
|||
|
|||
Signed-off-by: Uri Simchoni <uri@samba.org>
|
|||
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
|
|||
[Bachp: rebased for version 4.15.0]
|
|||
[Mats: rebased for version 4.18.5]
|
|||
---
|
|||
wscript_configure_embedded_heimdal | 11 +++++++++++
|
|||
1 file changed, 11 insertions(+)
|
|||
|
|||
diff --git a/wscript_configure_embedded_heimdal b/wscript_configure_embedded_heimdal
|
|||
index 45f47721de..6c5a4bcf01 100644
|
|||
--- a/wscript_configure_embedded_heimdal
|
|||
+++ b/wscript_configure_embedded_heimdal
|
|||
@@ -13,3 +13,14 @@ conf.RECURSE('third_party/heimdal_build')
|
|||
# when this will be available also in
|
|||
# system libraries...
|
|||
conf.define('HAVE_CLIENT_GSS_C_CHANNEL_BOUND_FLAG', 1)
|
|||
+
|
|||
+def check_system_heimdal_binary(name):
|
|||
+ if conf.LIB_MAY_BE_BUNDLED(name):
|
|||
+ return False
|
|||
+ if not conf.find_program(name, var=name.upper()):
|
|||
+ return False
|
|||
+ conf.define('USING_SYSTEM_%s' % name.upper(), 1)
|
|||
+ return True
|
|||
+
|
|||
+check_system_heimdal_binary("compile_et")
|
|||
+check_system_heimdal_binary("asn1_compile")
|
|||
--
|
|||
2.47.0
|
|||
|