[SCM] Samba Shared Repository - branch master updated

Jelmer Vernooij jelmer at samba.org
Fri Oct 15 20:15:01 MDT 2010


The branch, master has been updated
       via  50d3baff heimdal_build: Support using system asn1 library.
       via  12fa110 heimdal_build: Skip some hx509 code when using system hx509.
       via  8db6453 heimdal_build: Add comment with stub for finding the system libtommath.
       via  b244383 heimdal_build: Initial work on supporting an external heimdal library.
       via  471e57e heimdal_build: Support using system hx509 library when explicitly requested.
       via  3fe2bfd heimdal_build: Fix build with system roken.
       via  6852cc4 heimdal_build: Put version objects in a separate subsystem.
       via  2e038a7 heimdal: Support using system roken.
       via  7af5687 heimdal_build: Use existing functions for finding system libraries.
      from  06fc79f Add acl_xattr:ignore system acls boolean (normally false) to allow Samba ACL module to ignore mapping to lower POSIX layer. With this fix Samba 3.6.x now passes RAW-ACLs (with certain smb.conf parameters set).

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 50d3baffb223999bd264cfa957003cd6189d9a8c
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Sat Oct 16 03:27:02 2010 +0200

    heimdal_build: Support using system asn1 library.
    
    Autobuild-User: Jelmer Vernooij <jelmer at samba.org>
    Autobuild-Date: Sat Oct 16 02:14:32 UTC 2010 on sn-devel-104

commit 12fa11021916e32899fd4607be78d5cc7418fa04
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Sat Oct 16 03:07:40 2010 +0200

    heimdal_build: Skip some hx509 code when using system hx509.

commit 8db6453ae2b8ebb2dda06f5970a1bd5512632e3c
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Sat Oct 16 02:57:57 2010 +0200

    heimdal_build: Add comment with stub for finding the system libtommath.

commit b244383e75a5d9a6dab4c3fb0595a703a7c762e7
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Sat Oct 16 02:48:06 2010 +0200

    heimdal_build: Initial work on supporting an external heimdal library.

commit 471e57edf87373a352aca1d7b006360068b18274
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Sat Oct 16 02:25:40 2010 +0200

    heimdal_build: Support using system hx509 library when explicitly
    requested.

commit 3fe2bfddda6149f6bf7402720226e9285f479fef
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Sat Oct 16 02:15:36 2010 +0200

    heimdal_build: Fix build with system roken.

commit 6852cc4a7a5601261ba31ee05388a4078e69c77c
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Sat Oct 16 01:49:41 2010 +0200

    heimdal_build: Put version objects in a separate subsystem.

commit 2e038a78fdcc9dc8a9f65de48176323ad68a3420
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Sat Oct 16 00:58:56 2010 +0200

    heimdal: Support using system roken.

commit 7af56875040c0d170d3313bb0e0c126d3f19aed8
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Sat Oct 16 00:41:34 2010 +0200

    heimdal_build: Use existing functions for finding system libraries.

-----------------------------------------------------------------------

Summary of changes:
 buildtools/wafsamba/samba_bundled.py               |    2 +-
 source4/heimdal_build/replace.c                    |    4 -
 source4/heimdal_build/{gssapi-glue.c => version.c} |   21 +-
 source4/heimdal_build/wscript_build                |  462 ++++++++++----------
 source4/heimdal_build/wscript_configure            |   30 +-
 5 files changed, 266 insertions(+), 253 deletions(-)
 copy source4/heimdal_build/{gssapi-glue.c => version.c} (74%)


Changeset truncated at 500 lines:

diff --git a/buildtools/wafsamba/samba_bundled.py b/buildtools/wafsamba/samba_bundled.py
index 29b0a50..822e49c 100644
--- a/buildtools/wafsamba/samba_bundled.py
+++ b/buildtools/wafsamba/samba_bundled.py
@@ -104,7 +104,7 @@ def CHECK_BUNDLED_SYSTEM(conf, libname, minversion='0.0.0',
         '''helper function for CHECK_BUNDLED_SYSTEM'''
         if checkfunctions is None:
             return True
-        if require_headers and headers and not conf.CHECK_HEADERS(headers):
+        if require_headers and headers and not conf.CHECK_HEADERS(headers, lib=libname):
             return False
         return conf.CHECK_FUNCS_IN(checkfunctions, libname, headers=headers,
                                    empty_decl=False, set_target=False)
diff --git a/source4/heimdal_build/replace.c b/source4/heimdal_build/replace.c
index 8c3def7..51393f6 100644
--- a/source4/heimdal_build/replace.c
+++ b/source4/heimdal_build/replace.c
@@ -83,7 +83,3 @@
 	return -1;
 }
 #endif
-
-const char *heimdal_version = "samba-internal-heimdal";
-const char *heimdal_long_version = "samba-interal-heimdal";
-
diff --git a/source4/heimdal_build/gssapi-glue.c b/source4/heimdal_build/version.c
similarity index 74%
copy from source4/heimdal_build/gssapi-glue.c
copy to source4/heimdal_build/version.c
index 0c27f51..8cceff1 100644
--- a/source4/heimdal_build/gssapi-glue.c
+++ b/source4/heimdal_build/version.c
@@ -1,28 +1,27 @@
-/*
+/* 
    Unix SMB/CIFS implementation.
 
-   provide glue functions between heimdal and samba
+   some replacement functions for parts of roken that don't fit easily into 
+   our build system
 
    Copyright (C) Andrew Tridgell 2005
-
+   
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 3 of the License, or
    (at your option) any later version.
-
+   
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
-
+   
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
 
-#include "../replace/replace.h"
-#include "heimdal/lib/gssapi/gssapi_mech.h"
+#include "config.h"
+
+const char *heimdal_version = "samba-internal-heimdal";
+const char *heimdal_long_version = "samba-interal-heimdal";
 
-gssapi_mech_interface __gss_ntlm_initialize(void)
-{
-	return NULL;
-}
diff --git a/source4/heimdal_build/wscript_build b/source4/heimdal_build/wscript_build
index 86e6aa9..0e08446 100644
--- a/source4/heimdal_build/wscript_build
+++ b/source4/heimdal_build/wscript_build
@@ -103,8 +103,8 @@ def HEIMDAL_ASN1(name, source,
             target         = name,
             samba_cflags   = CURRENT_CFLAGS(bld, name, ''),
             depends_on     = '',
-            samba_deps     = TO_LIST('roken'),
-            samba_includes = includes,
+            samba_deps     = TO_LIST('roken replace'),
+            samba_includes = includes + ["/usr/include/heimdal"],
             local_include  = True)
 
 
@@ -324,16 +324,16 @@ def HEIMDAL_BINARY(binname, source,
 
 
 HEIMDAL_ASN1('HEIMDAL_SPNEGO_ASN1',
-        source='../heimdal/lib/gssapi/spnego/spnego.asn1',
+    source='../heimdal/lib/gssapi/spnego/spnego.asn1',
     options='--sequence=MechTypeList',
-        includes='../heimdal/lib/asn1',
+    includes='../heimdal/lib/asn1',
     directory='lib/gssapi'
     )
 
 
 HEIMDAL_ASN1('HEIMDAL_GSSAPI_ASN1',
     '../heimdal/lib/gssapi/mech/gssapi.asn1',
-        includes='../heimdal/lib/asn1',
+    includes='../heimdal/lib/asn1',
     directory='lib/gssapi'
     )
 
@@ -351,24 +351,6 @@ HEIMDAL_ASN1('HEIMDAL_DIGEST_ASN1',
     )
 
 
-HEIMDAL_ASN1('HEIMDAL_PKCS8_ASN1',
-    '../heimdal/lib/asn1/pkcs8.asn1',
-    directory='lib/asn1'
-    )
-
-
-HEIMDAL_ASN1('HEIMDAL_PKCS9_ASN1',
-    '../heimdal/lib/asn1/pkcs9.asn1',
-    directory='lib/asn1'
-    )
-
-
-HEIMDAL_ASN1('HEIMDAL_PKCS12_ASN1',
-    '../heimdal/lib/asn1/pkcs12.asn1',
-    directory='lib/asn1'
-    )
-
-
 HEIMDAL_ASN1('HEIMDAL_RFC2459_ASN1',
     '../heimdal/lib/asn1/rfc2459.asn1',
     options='--preserve-binary=TBSCertificate --preserve-binary=TBSCRLCertList --preserve-binary=Name --sequence=GeneralNames --sequence=Extensions --sequence=CRLDistributionPoints',
@@ -382,35 +364,12 @@ HEIMDAL_ASN1('HEIMDAL_PKINIT_ASN1',
     )
 
 
-HEIMDAL_ASN1('HEIMDAL_CMS_ASN1',
-    '../heimdal/lib/asn1/cms.asn1',
-    option_file='../heimdal/lib/asn1/cms.opt',
-    directory='lib/asn1'
-    )
-
-
-HEIMDAL_ASN1('HEIMDAL_OCSP_ASN1',
-    '../heimdal/lib/hx509/ocsp.asn1',
-    options='--preserve-binary=OCSPTBSRequest --preserve-binary=OCSPResponseData',
-        includes='../heimdal/lib/asn1',
-    directory='lib/hx509'
-    )
-
-
 HEIMDAL_ASN1('HEIMDAL_KX509_ASN1',
     '../heimdal/lib/asn1/kx509.asn1',
     directory='lib/asn1'
     )
 
 
-HEIMDAL_ASN1('HEIMDAL_PKCS10_ASN1',
-    '../heimdal/lib/hx509/pkcs10.asn1',
-    options='--preserve-binary=CertificationRequestInfo',
-        includes='../heimdal/lib/asn1',
-    directory='lib/hx509'
-    )
-
-
 HEIMDAL_ASN1('HEIMDAL_HDB_ASN1',
     '../heimdal/lib/hdb/hdb.asn1',
         includes='../heimdal/lib/asn1')
@@ -443,75 +402,106 @@ HEIMDAL_ERRTABLE('HEIMDAL_GKRB5_ERR_ET',
     '../heimdal/lib/gssapi/krb5/gkrb5_err.et')
 
 
-HEIMDAL_ERRTABLE('HEIMDAL_HX509_ERR_ET',
-    '../heimdal/lib/hx509/hx509_err.et')
-
-
-ROKEN_HOSTCC_SOURCE = '''
-    ../heimdal/lib/roken/base64.c
-    ../heimdal/lib/roken/ct.c
-    ../heimdal/lib/roken/hex.c
-    ../heimdal/lib/roken/bswap.c
-    ../heimdal/lib/roken/dumpdata.c
-    ../heimdal/lib/roken/emalloc.c
-    ../heimdal/lib/roken/ecalloc.c
-    ../heimdal/lib/roken/getarg.c
-    ../heimdal/lib/roken/get_window_size.c
-    ../heimdal/lib/roken/getdtablesize.c
-    ../heimdal/lib/roken/h_errno.c
-    ../heimdal/lib/roken/issuid.c
-    ../heimdal/lib/roken/net_read.c
-    ../heimdal/lib/roken/net_write.c
-    ../heimdal/lib/roken/parse_time.c
-    ../heimdal/lib/roken/parse_units.c
-    ../heimdal/lib/roken/signal.c
-    ../heimdal/lib/roken/vis.c
-    ../heimdal/lib/roken/strlwr.c
-    ../heimdal/lib/roken/strsep_copy.c
-    ../heimdal/lib/roken/strsep.c
-    ../heimdal/lib/roken/strupr.c
-    ../heimdal/lib/roken/strpool.c
-    ../heimdal/lib/roken/estrdup.c
-    ../heimdal/lib/roken/erealloc.c
-    ../heimdal/lib/roken/simple_exec.c
-    ../heimdal/lib/roken/strcollect.c
-    ../heimdal/lib/roken/rtbl.c
-    ../heimdal/lib/roken/cloexec.c
-    ../heimdal/lib/roken/xfree.c
-    replace.c
-'''
-
-if not bld.CONFIG_SET('HAVE_GETPROGNAME'):
-    ROKEN_HOSTCC_SOURCE += '''
-        ../heimdal/lib/roken/getprogname.c
-        ../heimdal/lib/roken/setprogname.c
+if not bld.CONFIG_SET('USING_SYSTEM_ROKEN'):
+
+    if not bld.CONFIG_SET('HAVE_IFADDRS_H'):
+        HEIMDAL_GENERATOR(
+            name="HEIMDAL_IFADDRS_H",
+            rule="rm -f ${TGT} && ln ${SRC} ${TGT}",
+            source = 'ifaddrs.hin',
+            target = 'ifaddrs.h',
+            )
+
+    if not bld.CONFIG_SET('HAVE_ERR_H'):
+        HEIMDAL_GENERATOR(
+            group='build_compiler_source',
+            name="HEIMDAL_ERR_H",
+            rule="rm -f ${TGT} && ln ${SRC} ${TGT}",
+            source = '../heimdal/lib/roken/err.hin',
+            target = '../heimdal/lib/roken/err.h',
+            )
+
+    ROKEN_HOSTCC_SOURCE = '''
+        ../heimdal/lib/roken/base64.c
+        ../heimdal/lib/roken/ct.c
+        ../heimdal/lib/roken/hex.c
+        ../heimdal/lib/roken/bswap.c
+        ../heimdal/lib/roken/dumpdata.c
+        ../heimdal/lib/roken/emalloc.c
+        ../heimdal/lib/roken/ecalloc.c
+        ../heimdal/lib/roken/getarg.c
+        ../heimdal/lib/roken/get_window_size.c
+        ../heimdal/lib/roken/getdtablesize.c
+        ../heimdal/lib/roken/h_errno.c
+        ../heimdal/lib/roken/issuid.c
+        ../heimdal/lib/roken/net_read.c
+        ../heimdal/lib/roken/net_write.c
+        ../heimdal/lib/roken/parse_time.c
+        ../heimdal/lib/roken/parse_units.c
+        ../heimdal/lib/roken/signal.c
+        ../heimdal/lib/roken/vis.c
+        ../heimdal/lib/roken/strlwr.c
+        ../heimdal/lib/roken/strsep_copy.c
+        ../heimdal/lib/roken/strsep.c
+        ../heimdal/lib/roken/strupr.c
+        ../heimdal/lib/roken/strpool.c
+        ../heimdal/lib/roken/estrdup.c
+        ../heimdal/lib/roken/erealloc.c
+        ../heimdal/lib/roken/simple_exec.c
+        ../heimdal/lib/roken/strcollect.c
+        ../heimdal/lib/roken/rtbl.c
+        ../heimdal/lib/roken/cloexec.c
+        ../heimdal/lib/roken/xfree.c
+        replace.c
     '''
 
-if not bld.CONFIG_SET('HAVE_CLOSEFROM'):
-    ROKEN_HOSTCC_SOURCE += '''
-        ../heimdal/lib/roken/closefrom.c
+    if not bld.CONFIG_SET('HAVE_GETPROGNAME'):
+        ROKEN_HOSTCC_SOURCE += '''
+            ../heimdal/lib/roken/getprogname.c
+            ../heimdal/lib/roken/setprogname.c
+        '''
+
+    if not bld.CONFIG_SET('HAVE_CLOSEFROM'):
+        ROKEN_HOSTCC_SOURCE += '''
+            ../heimdal/lib/roken/closefrom.c
+        '''
+
+    ROKEN_SOURCE = ROKEN_HOSTCC_SOURCE + '''
+        ../heimdal/lib/roken/resolve.c
+        ../heimdal/lib/roken/socket.c
+        ../heimdal/lib/roken/roken_gethostby.c
     '''
 
-ROKEN_SOURCE = ROKEN_HOSTCC_SOURCE + '''
-    ../heimdal/lib/roken/resolve.c
-    ../heimdal/lib/roken/socket.c
-    ../heimdal/lib/roken/roken_gethostby.c
-'''
+    HEIMDAL_LIBRARY('roken',
+        ROKEN_SOURCE,
+        includes='../heimdal/lib/roken ../heimdal/include ../../lib/socket_wrapper',
+        deps='resolv UID_WRAPPER util',
+        vnum='19.0.1',
+        )
 
-HEIMDAL_LIBRARY('roken',
-    ROKEN_SOURCE,
-    includes='../heimdal/lib/roken ../heimdal/include ../../lib/socket_wrapper',
-    deps='resolv UID_WRAPPER util',
-    vnum='19.0.1',
-    )
+    HEIMDAL_SUBSYSTEM('ROKEN_HOSTCC',
+        ROKEN_HOSTCC_SOURCE,
+        use_hostcc=True,
+        use_global_deps=False,
+        includes='../heimdal/lib/roken',
+        cflags='-DSOCKET_WRAPPER_DISABLE=1 -DNSS_WRAPPER_DISABLE=1 -D_SAMBA_HOSTCC_',
+        group='compiler_libraries',
+        deps='LIBREPLACE_HOSTCC',
+        )
 
+    HEIMDAL_BINARY('rkpty',
+        '../heimdal/lib/roken/rkpty.c',
+            deps='roken OPENPTY',
+            cflags='-DPACKAGE="Samba"',
+            install=False
+        )
 
 HEIMDAL_LIBRARY('kdc',
                     source='../heimdal/kdc/default_config.c ../heimdal/kdc/kerberos5.c ../heimdal/kdc/krb5tgs.c ../heimdal/kdc/pkinit.c ../heimdal/kdc/log.c ../heimdal/kdc/misc.c ../heimdal/kdc/kaserver.c ../heimdal/kdc/digest.c ../heimdal/kdc/process.c ../heimdal/kdc/windc.c ../heimdal/kdc/kx509.c',
                     includes='../heimdal/kdc',
                     autoproto='../heimdal/kdc/kdc-protos.h',
                     autoproto_private='../heimdal/kdc/kdc-private.h',
-                    deps='roken krb5 hdb HEIMDAL_HEIM_ASN1 HEIMDAL_DIGEST_ASN1 HEIMDAL_KX509_ASN1 heimntlm HEIMDAL_HCRYPTO com_err wind',
+                    deps='roken krb5 hdb asn1 HEIMDAL_DIGEST_ASN1 HEIMDAL_KX509_ASN1 heimntlm HEIMDAL_HCRYPTO com_err wind',
                     vnum='2.0.0',
                     )
 
@@ -587,32 +577,14 @@ HEIMDAL_LIBRARY('gssapi',
 ../heimdal/lib/gssapi/mech/gss_export_sec_context.c ../heimdal/lib/gssapi/mech/gss_inquire_context.c ../heimdal/lib/gssapi/mech/gss_release_name.c
 ../heimdal/lib/gssapi/mech/gss_set_cred_option.c  ../heimdal/lib/gssapi/mech/gss_pseudo_random.c gssapi-glue.c''',
     includes='../heimdal/lib/gssapi ../heimdal/lib/gssapi/gssapi ../heimdal/lib/gssapi/spnego ../heimdal/lib/gssapi/krb5 ../heimdal/lib/gssapi/mech',
-    deps='HEIMDAL_HCRYPTO HEIMDAL_HEIM_ASN1 HEIMDAL_SPNEGO_ASN1 HEIMDAL_GSSAPI_ASN1 roken krb5 com_err wind',
+    deps='HEIMDAL_HCRYPTO asn1 HEIMDAL_SPNEGO_ASN1 HEIMDAL_GSSAPI_ASN1 roken krb5 com_err wind',
     vnum='2.0.0',
     )
 
-
-if not bld.CONFIG_SET('HAVE_IFADDRS_H'):
-    HEIMDAL_GENERATOR(
-        name="HEIMDAL_IFADDRS_H",
-        rule="rm -f ${TGT} && ln ${SRC} ${TGT}",
-        source = 'ifaddrs.hin',
-        target = 'ifaddrs.h',
-        )
-
-if not bld.CONFIG_SET('HAVE_ERR_H'):
-    HEIMDAL_GENERATOR(
-        group='build_compiler_source',
-        name="HEIMDAL_ERR_H",
-        rule="rm -f ${TGT} && ln ${SRC} ${TGT}",
-        source = '../heimdal/lib/roken/err.hin',
-        target = '../heimdal/lib/roken/err.h',
-        )
-
 # expand_path.c needs some of the install paths
 HEIMDAL_SUBSYSTEM('HEIMDAL_CONFIG',
                   '../heimdal/lib/krb5/expand_path.c ../heimdal/lib/krb5/plugin.c',
-                  includes='../heimdal/lib/krb5 ../heimdal/lib/asn1',
+                  includes='../heimdal/lib/krb5 ../heimdal/lib/asn1 ../heimdal/include',
                   cflags = bld.dynconfig_cflags('LIBDIR BINDIR LIBEXECDIR SBINDIR'),
                   deps='HEIMDAL_HCRYPTO wind hx509'
                   )
@@ -650,7 +622,7 @@ HEIMDAL_LIBRARY('krb5',
                                store_mem.c ticket.c time.c transited.c
                                v4_glue.c version.c warn.c krb5_err.c
                                heim_err.c k524_err.c krb_err.c''') + ' krb5-glue.c',
-                    includes='../heimdal/lib/krb5 ../heimdal/lib/asn1',
+                    includes='../heimdal/lib/krb5 ../heimdal/lib/asn1 ../heimdal/include',
                     autoproto='../heimdal/lib/krb5/krb5-protos.h',
                     autoproto_options='-E KRB5_LIB -q -P comment -o',
                     autoproto_extra='../heimdal/lib/krb5/expand_path.c ../heimdal/lib/krb5/plugin.c',
@@ -659,12 +631,38 @@ HEIMDAL_LIBRARY('krb5',
             vnum='26.0.0',
                     )
 
+if not bld.CONFIG_SET("USING_SYSTEM_ASN1"):
+    HEIMDAL_HEIM_ASN1_DER_SOURCE = '''
+        ../heimdal/lib/asn1/der_get.c
+        ../heimdal/lib/asn1/der_put.c
+        ../heimdal/lib/asn1/der_free.c
+        ../heimdal/lib/asn1/der_format.c
+        ../heimdal/lib/asn1/der_length.c
+        ../heimdal/lib/asn1/der_copy.c
+        ../heimdal/lib/asn1/der_cmp.c
+    '''
+
+    HEIMDAL_AUTOPROTO('../heimdal/lib/asn1/der-protos.h',
+                          HEIMDAL_HEIM_ASN1_DER_SOURCE,
+                          group = 'compiler_prototypes',
+                          options="-q -P comment -o")
+
 
-HEIMDAL_SUBSYSTEM('HEIMDAL_HEIM_ASN1',
-    '../heimdal/lib/asn1/der_get.c ../heimdal/lib/asn1/der_put.c ../heimdal/lib/asn1/der_free.c ../heimdal/lib/asn1/der_format.c ../heimdal/lib/asn1/der_length.c ../heimdal/lib/asn1/der_copy.c ../heimdal/lib/asn1/der_cmp.c ../heimdal/lib/asn1/extra.c ../heimdal/lib/asn1/timegm.c ../heimdal/lib/asn1/asn1_err.c',
+    HEIMDAL_AUTOPROTO('../heimdal/lib/asn1/der-private.h',
+                          HEIMDAL_HEIM_ASN1_DER_SOURCE,
+                          group = 'compiler_prototypes',
+                          options="-q -P comment -p")
+
+    HEIMDAL_SUBSYSTEM('HEIMDAL_HEIM_ASN1',
+        HEIMDAL_HEIM_ASN1_DER_SOURCE + '../heimdal/lib/asn1/extra.c ../heimdal/lib/asn1/timegm.c ../heimdal/lib/asn1/asn1_err.c',
         includes='../heimdal/lib/asn1',
-    deps='roken com_err'
-    )
+        deps='roken com_err'
+        )
+
+    HEIMDAL_LIBRARY('asn1',
+            deps="HEIMDAL_HEIM_ASN1",
+            source='',
+            vnum='8.0.0')
 
 
 HEIMDAL_SUBSYSTEM('HEIMDAL_HCRYPTO_IMATH',
@@ -672,25 +670,101 @@ HEIMDAL_SUBSYSTEM('HEIMDAL_HCRYPTO_IMATH',
         includes='../heimdal/lib/hcrypto/imath',
     deps='roken'
     )
-HEIMDAL_SUBSYSTEM('HEIMDAL_HCRYPTO_LTM',
-    '../heimdal/lib/hcrypto/libtommath/bncore.c ../heimdal/lib/hcrypto/libtommath/bn_mp_init.c ../heimdal/lib/hcrypto/libtommath/bn_mp_clear.c ../heimdal/lib/hcrypto/libtommath/bn_mp_exch.c ../heimdal/lib/hcrypto/libtommath/bn_mp_grow.c ../heimdal/lib/hcrypto/libtommath/bn_mp_shrink.c ../heimdal/lib/hcrypto/libtommath/bn_mp_clamp.c ../heimdal/lib/hcrypto/libtommath/bn_mp_zero.c ../heimdal/lib/hcrypto/libtommath/bn_mp_zero_multi.c ../heimdal/lib/hcrypto/libtommath/bn_mp_set.c ../heimdal/lib/hcrypto/libtommath/bn_mp_set_int.c ../heimdal/lib/hcrypto/libtommath/bn_mp_init_size.c ../heimdal/lib/hcrypto/libtommath/bn_mp_copy.c ../heimdal/lib/hcrypto/libtommath/bn_mp_init_copy.c ../heimdal/lib/hcrypto/libtommath/bn_mp_abs.c ../heimdal/lib/hcrypto/libtommath/bn_mp_neg.c ../heimdal/lib/hcrypto/libtommath/bn_mp_cmp_mag.c ../heimdal/lib/hcrypto/libtommath/bn_mp_cmp.c ../heimdal/lib/hcrypto/libtommath/bn_mp_cmp_d.c ../heimdal/lib/hcrypto/libtommath/bn_mp_rshd.c ../heimdal/lib/hcrypto/li
 btommath/bn_mp_lshd.c ../heimdal/lib/hcrypto/libtommath/bn_mp_mod_2d.c ../heimdal/lib/hcrypto/libtommath/bn_mp_div_2d.c ../heimdal/lib/hcrypto/libtommath/bn_mp_mul_2d.c ../heimdal/lib/hcrypto/libtommath/bn_mp_div_2.c ../heimdal/lib/hcrypto/libtommath/bn_mp_mul_2.c ../heimdal/lib/hcrypto/libtommath/bn_s_mp_add.c ../heimdal/lib/hcrypto/libtommath/bn_s_mp_sub.c ../heimdal/lib/hcrypto/libtommath/bn_fast_s_mp_mul_digs.c ../heimdal/lib/hcrypto/libtommath/bn_s_mp_mul_digs.c ../heimdal/lib/hcrypto/libtommath/bn_fast_s_mp_mul_high_digs.c ../heimdal/lib/hcrypto/libtommath/bn_s_mp_mul_high_digs.c ../heimdal/lib/hcrypto/libtommath/bn_fast_s_mp_sqr.c ../heimdal/lib/hcrypto/libtommath/bn_s_mp_sqr.c ../heimdal/lib/hcrypto/libtommath/bn_mp_add.c ../heimdal/lib/hcrypto/libtommath/bn_mp_sub.c ../heimdal/lib/hcrypto/libtommath/bn_mp_karatsuba_mul.c ../heimdal/lib/hcrypto/libtommath/bn_mp_mul.c ../heimdal/lib/hcrypto/libtommath/bn_mp_karatsuba_sqr.c ../heimdal/lib/hcrypto/libtommath/bn_mp_sqr.c
  ../heimdal/lib/hcrypto/libtommath/bn_mp_div.c ../heimdal/lib/hcrypto/libtommath/bn_mp_mod.c ../heimdal/lib/hcrypto/libtommath/bn_mp_add_d.c ../heimdal/lib/hcrypto/libtommath/bn_mp_sub_d.c ../heimdal/lib/hcrypto/libtommath/bn_mp_mul_d.c ../heimdal/lib/hcrypto/libtommath/bn_mp_div_d.c ../heimdal/lib/hcrypto/libtommath/bn_mp_mod_d.c ../heimdal/lib/hcrypto/libtommath/bn_mp_expt_d.c ../heimdal/lib/hcrypto/libtommath/bn_mp_addmod.c ../heimdal/lib/hcrypto/libtommath/bn_mp_submod.c ../heimdal/lib/hcrypto/libtommath/bn_mp_mulmod.c ../heimdal/lib/hcrypto/libtommath/bn_mp_sqrmod.c ../heimdal/lib/hcrypto/libtommath/bn_mp_gcd.c ../heimdal/lib/hcrypto/libtommath/bn_mp_lcm.c ../heimdal/lib/hcrypto/libtommath/bn_fast_mp_invmod.c ../heimdal/lib/hcrypto/libtommath/bn_mp_invmod.c ../heimdal/lib/hcrypto/libtommath/bn_mp_reduce.c ../heimdal/lib/hcrypto/libtommath/bn_mp_montgomery_setup.c ../heimdal/lib/hcrypto/libtommath/bn_fast_mp_montgomery_reduce.c ../heimdal/lib/hcrypto/libtommath/bn_mp_mon
 tgomery_reduce.c ../heimdal/lib/hcrypto/libtommath/bn_mp_exptmod_fast.c ../heimdal/lib/hcrypto/libtommath/bn_mp_exptmod.c ../heimdal/lib/hcrypto/libtommath/bn_mp_2expt.c ../heimdal/lib/hcrypto/libtommath/bn_mp_n_root.c ../heimdal/lib/hcrypto/libtommath/bn_mp_jacobi.c ../heimdal/lib/hcrypto/libtommath/bn_reverse.c ../heimdal/lib/hcrypto/libtommath/bn_mp_count_bits.c ../heimdal/lib/hcrypto/libtommath/bn_mp_read_unsigned_bin.c ../heimdal/lib/hcrypto/libtommath/bn_mp_read_signed_bin.c ../heimdal/lib/hcrypto/libtommath/bn_mp_to_unsigned_bin.c ../heimdal/lib/hcrypto/libtommath/bn_mp_to_signed_bin.c ../heimdal/lib/hcrypto/libtommath/bn_mp_unsigned_bin_size.c ../heimdal/lib/hcrypto/libtommath/bn_mp_signed_bin_size.c ../heimdal/lib/hcrypto/libtommath/bn_mp_xor.c ../heimdal/lib/hcrypto/libtommath/bn_mp_and.c ../heimdal/lib/hcrypto/libtommath/bn_mp_or.c ../heimdal/lib/hcrypto/libtommath/bn_mp_rand.c ../heimdal/lib/hcrypto/libtommath/bn_mp_montgomery_calc_normalization.c ../heimdal/lib/
 hcrypto/libtommath/bn_mp_prime_is_divisible.c ../heimdal/lib/hcrypto/libtommath/bn_prime_tab.c ../heimdal/lib/hcrypto/libtommath/bn_mp_prime_fermat.c ../heimdal/lib/hcrypto/libtommath/bn_mp_prime_miller_rabin.c ../heimdal/lib/hcrypto/libtommath/bn_mp_prime_is_prime.c ../heimdal/lib/hcrypto/libtommath/bn_mp_prime_next_prime.c ../heimdal/lib/hcrypto/libtommath/bn_mp_find_prime.c ../heimdal/lib/hcrypto/libtommath/bn_mp_isprime.c ../heimdal/lib/hcrypto/libtommath/bn_mp_dr_reduce.c ../heimdal/lib/hcrypto/libtommath/bn_mp_dr_is_modulus.c ../heimdal/lib/hcrypto/libtommath/bn_mp_dr_setup.c ../heimdal/lib/hcrypto/libtommath/bn_mp_reduce_setup.c ../heimdal/lib/hcrypto/libtommath/bn_mp_toom_mul.c ../heimdal/lib/hcrypto/libtommath/bn_mp_toom_sqr.c ../heimdal/lib/hcrypto/libtommath/bn_mp_div_3.c ../heimdal/lib/hcrypto/libtommath/bn_s_mp_exptmod.c ../heimdal/lib/hcrypto/libtommath/bn_mp_reduce_2k.c ../heimdal/lib/hcrypto/libtommath/bn_mp_reduce_is_2k.c ../heimdal/lib/hcrypto/libtommath/bn
 _mp_reduce_2k_setup.c ../heimdal/lib/hcrypto/libtommath/bn_mp_reduce_2k_l.c ../heimdal/lib/hcrypto/libtommath/bn_mp_reduce_is_2k_l.c ../heimdal/lib/hcrypto/libtommath/bn_mp_reduce_2k_setup_l.c ../heimdal/lib/hcrypto/libtommath/bn_mp_radix_smap.c ../heimdal/lib/hcrypto/libtommath/bn_mp_read_radix.c ../heimdal/lib/hcrypto/libtommath/bn_mp_toradix.c ../heimdal/lib/hcrypto/libtommath/bn_mp_radix_size.c ../heimdal/lib/hcrypto/libtommath/bn_mp_fread.c ../heimdal/lib/hcrypto/libtommath/bn_mp_fwrite.c ../heimdal/lib/hcrypto/libtommath/bn_mp_cnt_lsb.c ../heimdal/lib/hcrypto/libtommath/bn_error.c ../heimdal/lib/hcrypto/libtommath/bn_mp_init_multi.c ../heimdal/lib/hcrypto/libtommath/bn_mp_clear_multi.c ../heimdal/lib/hcrypto/libtommath/bn_mp_exteuclid.c ../heimdal/lib/hcrypto/libtommath/bn_mp_toradix_n.c ../heimdal/lib/hcrypto/libtommath/bn_mp_prime_random_ex.c ../heimdal/lib/hcrypto/libtommath/bn_mp_get_int.c ../heimdal/lib/hcrypto/libtommath/bn_mp_sqrt.c ../heimdal/lib/hcrypto/libtom
 math/bn_mp_is_square.c ../heimdal/lib/hcrypto/libtommath/bn_mp_init_set.c ../heimdal/lib/hcrypto/libtommath/bn_mp_init_set_int.c ../heimdal/lib/hcrypto/libtommath/bn_mp_invmod_slow.c ../heimdal/lib/hcrypto/libtommath/bn_mp_prime_rabin_miller_trials.c ../heimdal/lib/hcrypto/libtommath/bn_mp_to_signed_bin_n.c ../heimdal/lib/hcrypto/libtommath/bn_mp_to_unsigned_bin_n.c',
-        includes='../heimdal/lib/hcrypto/libtommath'
-    )
+if not bld.CONFIG_SET("USING_SYSTEM_TOMMATH"):
+    HEIMDAL_SUBSYSTEM('tommath',
+        '../heimdal/lib/hcrypto/libtommath/bncore.c ../heimdal/lib/hcrypto/libtommath/bn_mp_init.c ../heimdal/lib/hcrypto/libtommath/bn_mp_clear.c ../heimdal/lib/hcrypto/libtommath/bn_mp_exch.c ../heimdal/lib/hcrypto/libtommath/bn_mp_grow.c ../heimdal/lib/hcrypto/libtommath/bn_mp_shrink.c ../heimdal/lib/hcrypto/libtommath/bn_mp_clamp.c ../heimdal/lib/hcrypto/libtommath/bn_mp_zero.c ../heimdal/lib/hcrypto/libtommath/bn_mp_zero_multi.c ../heimdal/lib/hcrypto/libtommath/bn_mp_set.c ../heimdal/lib/hcrypto/libtommath/bn_mp_set_int.c ../heimdal/lib/hcrypto/libtommath/bn_mp_init_size.c ../heimdal/lib/hcrypto/libtommath/bn_mp_copy.c ../heimdal/lib/hcrypto/libtommath/bn_mp_init_copy.c ../heimdal/lib/hcrypto/libtommath/bn_mp_abs.c ../heimdal/lib/hcrypto/libtommath/bn_mp_neg.c ../heimdal/lib/hcrypto/libtommath/bn_mp_cmp_mag.c ../heimdal/lib/hcrypto/libtommath/bn_mp_cmp.c ../heimdal/lib/hcrypto/libtommath/bn_mp_cmp_d.c ../heimdal/lib/hcrypto/libtommath/bn_mp_rshd.c ../heimdal/lib/hcrypt
 o/libtommath/bn_mp_lshd.c ../heimdal/lib/hcrypto/libtommath/bn_mp_mod_2d.c ../heimdal/lib/hcrypto/libtommath/bn_mp_div_2d.c ../heimdal/lib/hcrypto/libtommath/bn_mp_mul_2d.c ../heimdal/lib/hcrypto/libtommath/bn_mp_div_2.c ../heimdal/lib/hcrypto/libtommath/bn_mp_mul_2.c ../heimdal/lib/hcrypto/libtommath/bn_s_mp_add.c ../heimdal/lib/hcrypto/libtommath/bn_s_mp_sub.c ../heimdal/lib/hcrypto/libtommath/bn_fast_s_mp_mul_digs.c ../heimdal/lib/hcrypto/libtommath/bn_s_mp_mul_digs.c ../heimdal/lib/hcrypto/libtommath/bn_fast_s_mp_mul_high_digs.c ../heimdal/lib/hcrypto/libtommath/bn_s_mp_mul_high_digs.c ../heimdal/lib/hcrypto/libtommath/bn_fast_s_mp_sqr.c ../heimdal/lib/hcrypto/libtommath/bn_s_mp_sqr.c ../heimdal/lib/hcrypto/libtommath/bn_mp_add.c ../heimdal/lib/hcrypto/libtommath/bn_mp_sub.c ../heimdal/lib/hcrypto/libtommath/bn_mp_karatsuba_mul.c ../heimdal/lib/hcrypto/libtommath/bn_mp_mul.c ../heimdal/lib/hcrypto/libtommath/bn_mp_karatsuba_sqr.c ../heimdal/lib/hcrypto/libtommath/bn_mp_s
 qr.c ../heimdal/lib/hcrypto/libtommath/bn_mp_div.c ../heimdal/lib/hcrypto/libtommath/bn_mp_mod.c ../heimdal/lib/hcrypto/libtommath/bn_mp_add_d.c ../heimdal/lib/hcrypto/libtommath/bn_mp_sub_d.c ../heimdal/lib/hcrypto/libtommath/bn_mp_mul_d.c ../heimdal/lib/hcrypto/libtommath/bn_mp_div_d.c ../heimdal/lib/hcrypto/libtommath/bn_mp_mod_d.c ../heimdal/lib/hcrypto/libtommath/bn_mp_expt_d.c ../heimdal/lib/hcrypto/libtommath/bn_mp_addmod.c ../heimdal/lib/hcrypto/libtommath/bn_mp_submod.c ../heimdal/lib/hcrypto/libtommath/bn_mp_mulmod.c ../heimdal/lib/hcrypto/libtommath/bn_mp_sqrmod.c ../heimdal/lib/hcrypto/libtommath/bn_mp_gcd.c ../heimdal/lib/hcrypto/libtommath/bn_mp_lcm.c ../heimdal/lib/hcrypto/libtommath/bn_fast_mp_invmod.c ../heimdal/lib/hcrypto/libtommath/bn_mp_invmod.c ../heimdal/lib/hcrypto/libtommath/bn_mp_reduce.c ../heimdal/lib/hcrypto/libtommath/bn_mp_montgomery_setup.c ../heimdal/lib/hcrypto/libtommath/bn_fast_mp_montgomery_reduce.c ../heimdal/lib/hcrypto/libtommath/bn_mp
 _montgomery_reduce.c ../heimdal/lib/hcrypto/libtommath/bn_mp_exptmod_fast.c ../heimdal/lib/hcrypto/libtommath/bn_mp_exptmod.c ../heimdal/lib/hcrypto/libtommath/bn_mp_2expt.c ../heimdal/lib/hcrypto/libtommath/bn_mp_n_root.c ../heimdal/lib/hcrypto/libtommath/bn_mp_jacobi.c ../heimdal/lib/hcrypto/libtommath/bn_reverse.c ../heimdal/lib/hcrypto/libtommath/bn_mp_count_bits.c ../heimdal/lib/hcrypto/libtommath/bn_mp_read_unsigned_bin.c ../heimdal/lib/hcrypto/libtommath/bn_mp_read_signed_bin.c ../heimdal/lib/hcrypto/libtommath/bn_mp_to_unsigned_bin.c ../heimdal/lib/hcrypto/libtommath/bn_mp_to_signed_bin.c ../heimdal/lib/hcrypto/libtommath/bn_mp_unsigned_bin_size.c ../heimdal/lib/hcrypto/libtommath/bn_mp_signed_bin_size.c ../heimdal/lib/hcrypto/libtommath/bn_mp_xor.c ../heimdal/lib/hcrypto/libtommath/bn_mp_and.c ../heimdal/lib/hcrypto/libtommath/bn_mp_or.c ../heimdal/lib/hcrypto/libtommath/bn_mp_rand.c ../heimdal/lib/hcrypto/libtommath/bn_mp_montgomery_calc_normalization.c ../heimdal/
 lib/hcrypto/libtommath/bn_mp_prime_is_divisible.c ../heimdal/lib/hcrypto/libtommath/bn_prime_tab.c ../heimdal/lib/hcrypto/libtommath/bn_mp_prime_fermat.c ../heimdal/lib/hcrypto/libtommath/bn_mp_prime_miller_rabin.c ../heimdal/lib/hcrypto/libtommath/bn_mp_prime_is_prime.c ../heimdal/lib/hcrypto/libtommath/bn_mp_prime_next_prime.c ../heimdal/lib/hcrypto/libtommath/bn_mp_find_prime.c ../heimdal/lib/hcrypto/libtommath/bn_mp_isprime.c ../heimdal/lib/hcrypto/libtommath/bn_mp_dr_reduce.c ../heimdal/lib/hcrypto/libtommath/bn_mp_dr_is_modulus.c ../heimdal/lib/hcrypto/libtommath/bn_mp_dr_setup.c ../heimdal/lib/hcrypto/libtommath/bn_mp_reduce_setup.c ../heimdal/lib/hcrypto/libtommath/bn_mp_toom_mul.c ../heimdal/lib/hcrypto/libtommath/bn_mp_toom_sqr.c ../heimdal/lib/hcrypto/libtommath/bn_mp_div_3.c ../heimdal/lib/hcrypto/libtommath/bn_s_mp_exptmod.c ../heimdal/lib/hcrypto/libtommath/bn_mp_reduce_2k.c ../heimdal/lib/hcrypto/libtommath/bn_mp_reduce_is_2k.c ../heimdal/lib/hcrypto/libtommat
 h/bn_mp_reduce_2k_setup.c ../heimdal/lib/hcrypto/libtommath/bn_mp_reduce_2k_l.c ../heimdal/lib/hcrypto/libtommath/bn_mp_reduce_is_2k_l.c ../heimdal/lib/hcrypto/libtommath/bn_mp_reduce_2k_setup_l.c ../heimdal/lib/hcrypto/libtommath/bn_mp_radix_smap.c ../heimdal/lib/hcrypto/libtommath/bn_mp_read_radix.c ../heimdal/lib/hcrypto/libtommath/bn_mp_toradix.c ../heimdal/lib/hcrypto/libtommath/bn_mp_radix_size.c ../heimdal/lib/hcrypto/libtommath/bn_mp_fread.c ../heimdal/lib/hcrypto/libtommath/bn_mp_fwrite.c ../heimdal/lib/hcrypto/libtommath/bn_mp_cnt_lsb.c ../heimdal/lib/hcrypto/libtommath/bn_error.c ../heimdal/lib/hcrypto/libtommath/bn_mp_init_multi.c ../heimdal/lib/hcrypto/libtommath/bn_mp_clear_multi.c ../heimdal/lib/hcrypto/libtommath/bn_mp_exteuclid.c ../heimdal/lib/hcrypto/libtommath/bn_mp_toradix_n.c ../heimdal/lib/hcrypto/libtommath/bn_mp_prime_random_ex.c ../heimdal/lib/hcrypto/libtommath/bn_mp_get_int.c ../heimdal/lib/hcrypto/libtommath/bn_mp_sqrt.c ../heimdal/lib/hcrypto/li
 btommath/bn_mp_is_square.c ../heimdal/lib/hcrypto/libtommath/bn_mp_init_set.c ../heimdal/lib/hcrypto/libtommath/bn_mp_init_set_int.c ../heimdal/lib/hcrypto/libtommath/bn_mp_invmod_slow.c ../heimdal/lib/hcrypto/libtommath/bn_mp_prime_rabin_miller_trials.c ../heimdal/lib/hcrypto/libtommath/bn_mp_to_signed_bin_n.c ../heimdal/lib/hcrypto/libtommath/bn_mp_to_unsigned_bin_n.c',
+            includes='../heimdal/lib/hcrypto/libtommath'
+        )
 
 HEIMDAL_SUBSYSTEM('HEIMDAL_HCRYPTO',
     '../heimdal/lib/hcrypto/aes.c ../heimdal/lib/hcrypto/bn.c ../heimdal/lib/hcrypto/dh.c ../heimdal/lib/hcrypto/dh-ltm.c ../heimdal/lib/hcrypto/dh-imath.c ../heimdal/lib/hcrypto/des.c ../heimdal/lib/hcrypto/dsa.c ../heimdal/lib/hcrypto/engine.c ../heimdal/lib/hcrypto/md2.c ../heimdal/lib/hcrypto/md4.c ../heimdal/lib/hcrypto/md5.c ../heimdal/lib/hcrypto/rsa.c ../heimdal/lib/hcrypto/rsa-ltm.c ../heimdal/lib/hcrypto/rsa-imath.c ../heimdal/lib/hcrypto/rc2.c ../heimdal/lib/hcrypto/rc4.c ../heimdal/lib/hcrypto/rijndael-alg-fst.c ../heimdal/lib/hcrypto/rnd_keys.c ../heimdal/lib/hcrypto/sha.c ../heimdal/lib/hcrypto/sha256.c ../heimdal/lib/hcrypto/sha512.c ../heimdal/lib/hcrypto/ui.c ../heimdal/lib/hcrypto/evp.c ../heimdal/lib/hcrypto/evp-hcrypto.c ../heimdal/lib/hcrypto/pkcs5.c ../heimdal/lib/hcrypto/pkcs12.c ../heimdal/lib/hcrypto/rand.c ../heimdal/lib/hcrypto/rand-egd.c ../heimdal/lib/hcrypto/rand-unix.c ../heimdal/lib/hcrypto/rand-fortuna.c ../heimdal/lib/hcrypto/rand-timer.c ..
 /heimdal/lib/hcrypto/hmac.c ../heimdal/lib/hcrypto/camellia.c ../heimdal/lib/hcrypto/camellia-ntt.c ../heimdal/lib/hcrypto/common.c ../heimdal/lib/hcrypto/validate.c',
-    includes='../heimdal/lib/hcrypto ../heimdal/lib',
-    deps='roken HEIMDAL_HEIM_ASN1 HEIMDAL_HCRYPTO_IMATH HEIMDAL_RFC2459_ASN1 HEIMDAL_HCRYPTO_LTM'
+    includes='../heimdal/lib/hcrypto ../heimdal/lib ../heimdal/include',
+    deps='roken asn1 HEIMDAL_HCRYPTO_IMATH HEIMDAL_RFC2459_ASN1 tommath'
     )
 
 
-HEIMDAL_LIBRARY('hx509',
-    '../heimdal/lib/hx509/ca.c ../heimdal/lib/hx509/cert.c ../heimdal/lib/hx509/cms.c ../heimdal/lib/hx509/collector.c ../heimdal/lib/hx509/crypto.c ../heimdal/lib/hx509/error.c ../heimdal/lib/hx509/env.c ../heimdal/lib/hx509/file.c ../heimdal/lib/hx509/keyset.c ../heimdal/lib/hx509/ks_dir.c ../heimdal/lib/hx509/ks_file.c ../heimdal/lib/hx509/ks_keychain.c ../heimdal/lib/hx509/ks_mem.c ../heimdal/lib/hx509/ks_null.c ../heimdal/lib/hx509/ks_p11.c ../heimdal/lib/hx509/ks_p12.c ../heimdal/lib/hx509/lock.c ../heimdal/lib/hx509/name.c ../heimdal/lib/hx509/peer.c ../heimdal/lib/hx509/print.c ../heimdal/lib/hx509/req.c ../heimdal/lib/hx509/revoke.c ../heimdal/lib/hx509/sel.c ../heimdal/lib/hx509/hx509_err.c ../heimdal/lib/hx509/sel-lex.c ../heimdal/lib/hx509/sel-gram.c',
-    includes='../heimdal/lib/hx509',
-    deps='roken com_err HEIMDAL_HEIM_ASN1 HEIMDAL_HCRYPTO HEIMDAL_CMS_ASN1 HEIMDAL_RFC2459_ASN1 HEIMDAL_OCSP_ASN1 HEIMDAL_PKCS8_ASN1 HEIMDAL_PKCS9_ASN1 HEIMDAL_PKCS12_ASN1 HEIMDAL_PKINIT_ASN1 HEIMDAL_PKCS10_ASN1 wind HEIMDAL_KRB5_ASN1',
-    vnum='5.0.0',
-    )
+if not bld.CONFIG_SET("USING_SYSTEM_HX509"):
+    HEIMDAL_ASN1('HEIMDAL_OCSP_ASN1',
+        '../heimdal/lib/hx509/ocsp.asn1',
+        options='--preserve-binary=OCSPTBSRequest --preserve-binary=OCSPResponseData',
+            includes='../heimdal/lib/asn1',
+        directory='lib/hx509'
+        )
+
+    HEIMDAL_ASN1('HEIMDAL_PKCS8_ASN1',
+        '../heimdal/lib/asn1/pkcs8.asn1',
+        directory='lib/asn1'
+        )
+
+
+    HEIMDAL_ASN1('HEIMDAL_PKCS9_ASN1',
+        '../heimdal/lib/asn1/pkcs9.asn1',
+        directory='lib/asn1'
+        )
+
+
+    HEIMDAL_ASN1('HEIMDAL_PKCS12_ASN1',
+        '../heimdal/lib/asn1/pkcs12.asn1',
+        directory='lib/asn1'
+        )
+
+    HEIMDAL_ASN1('HEIMDAL_CMS_ASN1',
+        '../heimdal/lib/asn1/cms.asn1',
+        option_file='../heimdal/lib/asn1/cms.opt',
+        directory='lib/asn1'
+        )
+
+    HEIMDAL_ASN1('HEIMDAL_PKCS10_ASN1',
+        '../heimdal/lib/hx509/pkcs10.asn1',
+        options='--preserve-binary=CertificationRequestInfo',
+            includes='../heimdal/lib/asn1',
+        directory='lib/hx509'
+        )
+
+    HEIMDAL_ERRTABLE('HEIMDAL_HX509_ERR_ET',
+        '../heimdal/lib/hx509/hx509_err.et')
+
+    HEIMDAL_HX509_OBJH_SOURCE = '''
+        ../heimdal/lib/hx509/ca.c
+        ../heimdal/lib/hx509/cert.c
+        ../heimdal/lib/hx509/cms.c
+        ../heimdal/lib/hx509/collector.c
+        ../heimdal/lib/hx509/crypto.c
+        ../heimdal/lib/hx509/error.c
+        ../heimdal/lib/hx509/env.c
+        ../heimdal/lib/hx509/file.c
+        ../heimdal/lib/hx509/keyset.c
+        ../heimdal/lib/hx509/ks_dir.c
+        ../heimdal/lib/hx509/ks_file.c


-- 
Samba Shared Repository


More information about the samba-cvs mailing list