Merge pull request #1411 from JustEnoughLinuxOS/dev
Fix SAMBA not building on RK3588.
This commit is contained in:
commit
f905fcd040
2 changed files with 89 additions and 1 deletions
|
@ -3,7 +3,7 @@
|
||||||
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
|
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
|
||||||
|
|
||||||
PKG_NAME="samba"
|
PKG_NAME="samba"
|
||||||
PKG_VERSION="4.18.2"
|
PKG_VERSION="4.17.7"
|
||||||
PKG_LICENSE="GPLv3+"
|
PKG_LICENSE="GPLv3+"
|
||||||
PKG_SITE="https://www.samba.org"
|
PKG_SITE="https://www.samba.org"
|
||||||
PKG_URL="https://download.samba.org/pub/samba/stable/${PKG_NAME}-${PKG_VERSION}.tar.gz"
|
PKG_URL="https://download.samba.org/pub/samba/stable/${PKG_NAME}-${PKG_VERSION}.tar.gz"
|
||||||
|
|
|
@ -0,0 +1,88 @@
|
||||||
|
From 2e53f331104b29db7caf1641a30d3e9316b57184 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Uri Simchoni <uri@samba.org>
|
||||||
|
Date: Sun, 20 Oct 2019 00:03:14 +0300
|
||||||
|
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>
|
||||||
|
---
|
||||||
|
wscript_configure_embedded_heimdal | 11 +++++++++++
|
||||||
|
wscript_configure_system_heimdal | 11 -----------
|
||||||
|
2 files changed, 11 insertions(+), 11 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/wscript_configure_embedded_heimdal b/wscript_configure_embedded_heimdal
|
||||||
|
index 8c55ae2..4fdae80 100644
|
||||||
|
--- a/wscript_configure_embedded_heimdal
|
||||||
|
+++ b/wscript_configure_embedded_heimdal
|
||||||
|
@@ -6,3 +6,14 @@
|
||||||
|
|
||||||
|
conf.define('USING_EMBEDDED_HEIMDAL', 1)
|
||||||
|
conf.RECURSE('third_party/heimdal_build')
|
||||||
|
+
|
||||||
|
+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")
|
||||||
|
diff --git a/wscript_configure_system_heimdal b/wscript_configure_system_heimdal
|
||||||
|
index 235fa19..4f4a83cd 100644
|
||||||
|
--- a/wscript_configure_system_heimdal
|
||||||
|
+++ b/wscript_configure_system_heimdal
|
||||||
|
@@ -37,14 +37,6 @@ def check_system_heimdal_lib(name, functions='', headers='', onlyif=None):
|
||||||
|
conf.define('USING_SYSTEM_%s' % name.upper(), 1)
|
||||||
|
return True
|
||||||
|
|
||||||
|
-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_lib("com_err", "com_right_r com_err", "com_err.h")
|
||||||
|
|
||||||
|
if check_system_heimdal_lib("roken", "rk_socket_set_reuseaddr", "roken.h"):
|
||||||
|
@@ -86,7 +78,4 @@ finally:
|
||||||
|
#if conf.CHECK_BUNDLED_SYSTEM('tommath', checkfunctions='mp_init', headers='tommath.h'):
|
||||||
|
# conf.define('USING_SYSTEM_TOMMATH', 1)
|
||||||
|
|
||||||
|
-check_system_heimdal_binary("compile_et")
|
||||||
|
-check_system_heimdal_binary("asn1_compile")
|
||||||
|
-
|
||||||
|
conf.env.KRB5_VENDOR = 'heimdal'
|
||||||
|
--
|
||||||
|
2.20.1
|
||||||
|
|
Loading…
Reference in a new issue