[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[[UNIKRAFT PATCH] libs/lib-krb5 v2 2/2] Add Makefile.uk



From: Cristian Vijelie <cristianvijelie@xxxxxxxxx>

Signed-off-by: Cristian Vijelie <cristianvijelie@xxxxxxxxx>
---
 Makefile.uk        | 562 +++++++++++++++++++++++++++++++++++++++++++++
 include/byteswap.h |  26 +++
 2 files changed, 588 insertions(+)
 create mode 100644 Makefile.uk
 create mode 100644 include/byteswap.h

diff --git a/Makefile.uk b/Makefile.uk
new file mode 100644
index 0000000..90b4ace
--- /dev/null
+++ b/Makefile.uk
@@ -0,0 +1,562 @@
+##############################################################################################
+# Library registration
+##############################################################################################
+$(eval $(call addlib_s,libkrb5,$(CONFIG_LIBKRB5)))
+$(eval $(call addlib_s,libkrb5support,$(CONFIG_LIBKRB5SUPPORT)))
+$(eval $(call addlib_s,libkrb5crypto,$(CONFIG_LIBKRB5CRYPTO)))
+$(eval $(call addlib_s,libcom_err,$(CONFIG_LIBCOM_ERR)))
+
+##############################################################################################
+# SOURCES
+##############################################################################################
+LIBKRB5_MAJORVER=1.18
+LIBKRB5_MINORVER=2
+LIBKRB5_TARNAME=krb5-$(LIBKRB5_MAJORVER).$(LIBKRB5_MINORVER)
+LIBKRB5_URL=http://web.mit.edu/kerberos/dist/krb5/$(LIBKRB5_MAJORVER)/$(LIBKRB5_TARNAME).tar.gz
+LIBKRB5_PATCHDIR=$(LIBKRB5_BASE)/patches
+$(eval $(call fetch,libkrb5,$(LIBKRB5_URL)))
+$(eval $(call patch,libkrb5,$(LIBKRB5_PATCHDIR),$(LIBKRB5_TARNAME)))
+
+##############################################################################################
+# Helpers
+##############################################################################################
+LIBKRB5_MAINDIR=$(LIBKRB5_ORIGIN)/$(LIBKRB5_TARNAME)/src
+LIBKRB5_COMPILE_PATH=$(LIBKRB5_MAINDIR)/util/et
+LIBKRB5_DIR=$(LIBKRB5_MAINDIR)/lib/krb5
+
+LIBKRB5SUPPORT_DIR=$(LIBKRB5_MAINDIR)/util/support
+LIBKRB5CRYPTO_DIR=$(LIBKRB5_MAINDIR)/lib/crypto
+
+##############################################################################################
+# Library includes
+##############################################################################################
+LIBKRB5_COMMON_INCLUDES = -I$(LIBKRB5_BASE)/include 
-I$(LIBKRB5_MAINDIR)/include
+
+# Unsafe includes, but build can't be realised without them 
+LIBKRB5_NEWLIB_INCLUDES = -I$(LIBNEWLIB_LIBC)/sys/linux/include 
-I$(LIBNEWLIB_LIBC)/sys/linux \
+-I$(LIBNEWLIB_LIBC)/sys/linux/sys
+
+LIBKRB5_CINCLUDES-y = $(LIBKRB5_COMMON_INCLUDES) $(LIBKRB5_NEWLIB_INCLUDES) 
-I$(LIBKRB5_DIR)/ccache \
+-I$(LIBKRB5_DIR)/ccache/ccapi -I$(LIBKRB5_DIR)/ccache/ccapi 
-I$(LIBKRB5_DIR)/os \
+-I$(LIBKRB5_DIR)/keytab -I$(LIBKRB5_DIR)/rcache -I$(LIBKRB5_DIR)/unicode 
-I$(LIBKRB5_MAINDIR) \
+-I$(LIBKRB5_MAINDIR)/util/profile
+
+LIBKRB5CRYPTO_CINCLUDES-y = $(LIBKRB5_COMMON_INCLUDES) 
$(LIBKRB5_NEWLIB_INCLUDES) \
+-I$(LIBKRB5CRYPTO_DIR)/krb -I$(LIBKRB5CRYPTO_DIR)/builtin 
-I$(LIBKRB5CRYPTO_DIR)/builtin/aes \
+-I$(LIBKRB5CRYPTO_DIR)/builtin/camellia -I$(LIBKRB5CRYPTO_DIR)/builtin/des \
+-I$(LIBKRB5CRYPTO_DIR)/builtin/md4 -I$(LIBKRB5CRYPTO_DIR)/builtin/md5 \
+-I$(LIBKRB5CRYPTO_DIR)/builtin/sha1 -I$(LIBKRB5CRYPTO_DIR)/builtin/sha2 \
+
+LIBKRB5SUPPORT_CINCLUDES = $(LIBKRB5_COMMON_INCLUDES)
+
+LIBCOM_ERR_CINCLUDES-y = $(LIBKRB5_COMMON_INCLUDES) $(LIBKRB5_COMPILE_PATH)
+
+##############################################################################################
+# Global flags
+##############################################################################################
+# Flags taken from the original Kerberos Makefiles
+LIBKRB5_CFLAGS += -fPIC -DSHARED -DHAVE_CONFIG_H  -DKRB5_DEPRECATED=1 
-DKRB5_PRIVATE -Wall \
+-Wcast-align -Wshadow -Wmissing-prototypes -Wno-format-zero-length -Woverflow 
-Wstrict-overflow \
+-Wmissing-format-attribute -Wmissing-prototypes -Wreturn-type -Wmissing-braces 
-Wparentheses \
+-Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value 
-Wunknown-pragmas \
+-Wsign-compare -Werror=uninitialized -Wno-maybe-uninitialized 
-Werror=pointer-arith \
+-Werror=int-conversion -Werror=incompatible-pointer-types 
-Werror=discarded-qualifiers \
+-Werror=implicit-int -Werror=declaration-after-statement 
-Werror-implicit-function-declaration
+
+LIBCOM_ERR_CFLAGS = $(LIBKRB5_CFLAGS)
+LIBKRB5SUPPORT_CFLAGS = $(LIBKRB5_CFLAGS)
+LIBKRB5CRYPTO_CFLAGS = $(LIBKRB5_CFLAGS)
+
+# Defines used only by libkrb5
+LIBKRB5_CFLAGS += -DLIBDIR=\"/usr/local/lib\"
+LIBKRB5_CFLAGS += -DDYNOBJEXT=\".so\"
+LIBKRB5_CFLAGS += -DBINDIR=\"/usr/local/bin\"
+LIBKRB5_CFLAGS += -DSBINDIR=\"/usr/local/sbin\"
+
+# Linking flags taken from the original Kerberos Makefiles 
+LIBKRB5_OBJFLAGS += -shared -fPIC -Wl,--no-undefined -Wl,--enable-new-dtags 
-Wl,-rpath
+LIBCOM_ERR_OBJFLAGS = $(LIBKRB5_OBJFLAGS)
+LIBKRB5SUPPORT_OBJFLAGS = $(LIBKRB5_OBJFLAGS)
+LIBKRB5CRYPTO_OBJFLAGS = $(LIBKRB5_OBJFLAGS)
+
+##############################################################################################
+# libkrb5 code
+##############################################################################################
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/error_tables/asn1_err.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/error_tables/kdb5_err.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/error_tables/krb5_err.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/error_tables/k5e1_err.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/error_tables/kv5m_err.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/error_tables/krb524_err.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/asn.1/asn1_encode.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/asn.1/asn1_k_encode.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/asn.1/ldap_key_seq.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/ccache/ccbase.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/ccache/cccopy.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/ccache/cccursor.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/ccache/ccdefault.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/ccache/ccdefops.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/ccache/ccmarshal.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/ccache/ccselect.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/ccache/ccselect_hostname.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/ccache/ccselect_k5identity.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/ccache/ccselect_realm.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/ccache/cc_dir.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/ccache/cc_retr.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/ccache/cc_file.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/ccache/cc_kcm.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/ccache/cc_memory.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/ccache/cc_keyring.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/ccache/ccfns.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/keytab/ktadd.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/keytab/ktbase.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/keytab/ktdefault.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/keytab/ktfr_entry.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/keytab/ktremove.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/keytab/ktfns.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/keytab/kt_file.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/keytab/kt_memory.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/keytab/read_servi.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/addr_comp.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/addr_order.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/addr_srch.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/allow_weak.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/appdefault.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/ai_authdata.c 
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/auth_con.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/cammac_util.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/authdata.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/authdata_exp.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/authdata_enc.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/authdata_dec.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/bld_pr_ext.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/bld_princ.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/chk_trans.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/chpw.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/conv_creds.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/conv_princ.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/copy_addrs.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/copy_auth.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/copy_athctr.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/copy_cksum.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/copy_creds.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/copy_data.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/copy_key.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/copy_princ.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/copy_tick.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/cp_key_cnt.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/decode_kdc.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/decrypt_tk.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/deltat.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/enc_helper.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/enc_keyhelper.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/encode_kdc.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/encrypt_tk.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/etype_list.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/fast.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/fwd_tgt.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/gc_via_tkt.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/gen_seqnum.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/gen_subkey.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/gen_save_subkey.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/get_creds.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/get_etype_info.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/get_in_tkt.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/gic_keytab.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/gic_opt.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/gic_pwd.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/in_tkt_sky.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/init_ctx.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/copy_ctx.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/init_keyblock.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/kdc_rep_dc.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/kerrs.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/kfree.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/libdef_parse.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/mk_cred.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/mk_error.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/mk_priv.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/mk_rep.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/mk_req.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/mk_req_ext.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/mk_safe.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/pac.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/pac_sign.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/padata.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/parse.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/parse_host_string.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/plugin.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/pr_to_salt.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/preauth2.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/preauth_ec.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/preauth_encts.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/preauth_otp.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/preauth_pkinit.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/preauth_sam2.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/princ_comp.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/privsafe.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/random_str.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/rd_cred.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/rd_error.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/rd_priv.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/rd_rep.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/rd_req.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/rd_req_dec.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/rd_safe.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/recvauth.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/response_items.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/s4u_authdata.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/s4u_creds.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/sendauth.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/send_tgs.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/ser_actx.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/ser_adata.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/ser_addr.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/ser_auth.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/ser_cksum.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/ser_ctx.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/ser_key.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/ser_princ.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/serialize.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/set_realm.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/sname_match.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/srv_dec_tkt.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/srv_rcache.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/str_conv.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/tgtname.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/unparse.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/val_renew.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/valid_times.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/vfy_increds.c 
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/vic_opt.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb/walk_rtree.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/accessor.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/c_ustime.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/ccdefname.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/changepw.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/dnsglue.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/dnssrv.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/expand_path.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/full_ipadr.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/gen_port.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/genaddrs.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/gen_rname.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/hostaddr.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/hostrealm.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/hostrealm_dns.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/hostrealm_domain.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/hostrealm_profile.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/hostrealm_registry.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/init_os_ctx.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/krbfileio.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/ktdefname.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/mk_faddr.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/localaddr.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/localauth.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/localauth_an2ln.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/localauth_k5login.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/localauth_names.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/localauth_rule.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/locate_kdc.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/lock_file.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/net_read.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/net_write.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/port2ip.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/prompter.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/read_msg.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/read_pwd.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/realm_dom.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/sendto_kdc.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/sn2princ.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/thread_safe.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/timeofday.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/toffset.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/trace.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/unlck_file.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/ustime.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/os/write_msg.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/rcache/memrcache.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/rcache/rc_base.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/rcache/rc_dfl.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/rcache/rc_file2.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/rcache/rc_none.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/unicode/ucdata.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/unicode/ure.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/unicode/urestubs.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/unicode/ucstr.c
+LIBKRB5_SRCS-y += $(LIBKRB5_DIR)/krb5_libinit.c
+
+##############################################################################################
+# libkrb5support code
+##############################################################################################
+LIBKRB5SUPPORT_SRCS-y += $(LIBKRB5SUPPORT_DIR)/threads.c
+LIBKRB5SUPPORT_SRCS-y += $(LIBKRB5SUPPORT_DIR)/init-addrinfo.c
+LIBKRB5SUPPORT_SRCS-y += $(LIBKRB5SUPPORT_DIR)/plugins.c
+LIBKRB5SUPPORT_SRCS-y += $(LIBKRB5SUPPORT_DIR)/errors.c
+LIBKRB5SUPPORT_SRCS-y += $(LIBKRB5SUPPORT_DIR)/k5buf.c
+LIBKRB5SUPPORT_SRCS-y += $(LIBKRB5SUPPORT_DIR)/gmt_mktime.c
+LIBKRB5SUPPORT_SRCS-y += $(LIBKRB5SUPPORT_DIR)/fake-addrinfo.c
+LIBKRB5SUPPORT_SRCS-y += $(LIBKRB5SUPPORT_DIR)/utf8.c
+LIBKRB5SUPPORT_SRCS-y += $(LIBKRB5SUPPORT_DIR)/utf8_conv.c
+LIBKRB5SUPPORT_SRCS-y += $(LIBKRB5SUPPORT_DIR)/zap.c
+LIBKRB5SUPPORT_SRCS-y += $(LIBKRB5SUPPORT_DIR)/path.c
+LIBKRB5SUPPORT_SRCS-y += $(LIBKRB5SUPPORT_DIR)/base64.c
+LIBKRB5SUPPORT_SRCS-y += $(LIBKRB5SUPPORT_DIR)/json.c
+LIBKRB5SUPPORT_SRCS-y += $(LIBKRB5SUPPORT_DIR)/hex.c
+LIBKRB5SUPPORT_SRCS-y += $(LIBKRB5SUPPORT_DIR)/hashtab.c
+LIBKRB5SUPPORT_SRCS-y += $(LIBKRB5SUPPORT_DIR)/bcmp.c
+LIBKRB5SUPPORT_SRCS-y += $(LIBKRB5SUPPORT_DIR)/strerror_r.c
+LIBKRB5SUPPORT_SRCS-y += $(LIBKRB5SUPPORT_DIR)/dir_filenames.c
+LIBKRB5SUPPORT_SRCS-y += $(LIBKRB5SUPPORT_DIR)/strlcpy.c
+
+##############################################################################################
+# libkrb5crypto code
+##############################################################################################
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/aead.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/block_size.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/cf2.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/checksum_dk_cmac.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/checksum_dk_hmac.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/checksum_etm.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/checksum_hmac_md5.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/checksum_unkeyed.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/checksum_length.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/cksumtype_to_string.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/cksumtypes.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/cmac.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/coll_proof_cksum.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/crypto_length.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/crypto_libinit.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/default_state.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/decrypt.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/decrypt_iov.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/derive.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/encrypt.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/encrypt_iov.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/encrypt_length.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/enctype_util.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/enc_dk_cmac.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/enc_dk_hmac.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/enc_etm.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/enc_raw.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/enc_rc4.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/etypes.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/key.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/keyblocks.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/keyed_cksum.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/keyed_checksum_types.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/keylengths.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/make_checksum.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/make_checksum_iov.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/make_random_key.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/mandatory_sumtype.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/nfold.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/old_api_glue.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/prf.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/prf_aes2.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/prf_cmac.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/prf_des.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/prf_dk.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/prf_rc4.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/prng.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/prng_fortuna.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/random_to_key.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/s2k_pbkdf2.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/s2k_rc4.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/state.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/string_to_cksumtype.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/string_to_key.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/valid_cksumtype.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/verify_checksum.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/krb/verify_checksum_iov.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/camellia/camellia.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/des/d3_aead.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/des/d3_kysched.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/des/des_keys.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/des/f_aead.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/des/f_cksum.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/des/f_parity.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/des/f_sched.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/des/f_tables.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/des/key_sched.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/des/weak_key.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/aes/aescrypt.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/aes/aestab.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/aes/aeskey.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/md4/md4.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/md5/md5.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/sha1/shs.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/sha2/sha256.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/sha2/sha512.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/enc_provider/des3.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/enc_provider/rc4.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/enc_provider/aes.c
+LIBKRB5CRYPTO_SRCS-y += 
$(LIBKRB5CRYPTO_DIR)/builtin/enc_provider/enc_camellia.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/hash_provider/hash_md4.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/hash_provider/hash_md5.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/hash_provider/hash_sha1.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/hash_provider/hash_sha2.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/hmac.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/init.c
+LIBKRB5CRYPTO_SRCS-y += $(LIBKRB5CRYPTO_DIR)/builtin/pbkdf2.c
+
+##############################################################################################
+# libcom_err code
+##############################################################################################
+LIBCOM_ERR_SRCS-y += $(LIBKRB5_COMPILE_PATH)/error_message.c
+LIBCOM_ERR_SRCS-y += $(LIBKRB5_COMPILE_PATH)/et_name.c
+LIBCOM_ERR_SRCS-y += $(LIBKRB5_COMPILE_PATH)/com_err.c
+
+##############################################################################################
+# Library prepare
+##############################################################################################
+# Run ./configure
+$(LIBKRB5_MAINDIR)/.configured: $(LIBKRB5_BUILD)/.origin
+       $(call verbose_cmd,CONFIG,libkrb: $(notdir $@), cd $(LIBKRB5_MAINDIR) 
&& ./configure \
+       --disable-nls && touch $@ && cd include && \
+       sed -e "s/#define HAVE_SECURE_GETENV 1/\/\* #undef HAVE_SECURE_GETENV 
\*\//" autoconf.h > \
+       autoconf.temp && mv autoconf.temp autoconf.h)
+
+# Generate compile_et
+$(LIBKRB5_COMPILE_PATH)/compile_et:
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd $(LIBKRB5_COMPILE_PATH) 
&& /bin/sh \
+       ./config_script ./compile_et.sh "/usr/local/share/et" mawk sed > $@ && 
chmod 755 $@)
+
+# Generate .h and .c files
+$(LIBKRB5_MAINDIR)/include/osconf.h: $(LIBKRB5_MAINDIR)/include/osconf.hin
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cat $^ | sed -e 
"s\"@KRB5RCTMPDIR\"/var/tmp\""\
+        -e "s\"@PREFIX\"/usr/local\"" -e "s\"@EXEC_PREFIX\"/usr/local\"" \
+        -e "s\"@BINDIR\"/usr/local/bin\"" -e "s\"@LIBDIR\"/usr/local/lib\"" \
+        -e "s\"@SBINDIR\"/usr/local/sbin\"" -e 
"s\"@MODULEDIR\"/usr/local/lib/krb5/plugins\"" \
+        -e "s\"@GSSMODULEDIR\"/usr/local/lib/gss\"" -e 
"s\"@LOCALSTATEDIR\"/usr/local/var\"" \
+        -e "s\"@RUNSTATEDIR\"/run\"" -e "s\"@SYSCONFDIR\"/usr/local/etc\"" \
+        -e "s\"@DYNOBJEXT\".so\"" -e 
"s\"@SYSCONFCONF\":/usr/local/etc/krb5.conf\"" > osconf.new \
+        && $(LIBKRB5_MAINDIR)/config/move-if-changed osconf.new $@)
+
+$(LIBKRB5_MAINDIR)/include/com_err.h: $(LIBKRB5_COMPILE_PATH)/com_err.h
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cp $^ $@)
+
+$(LIBKRB5_MAINDIR)/include/profile.h: 
$(LIBKRB5_MAINDIR)/util/profile/profile.hin 
$(LIBKRB5_MAINDIR)/util/profile/prof_err.h
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cat $^ > $@)
+
+$(LIBKRB5_MAINDIR)/include/krb5/krb5.h: 
$(LIBKRB5_MAINDIR)/include/krb5/krb5.hin
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_MAINDIR)/include && echo "#ifndef KRB5_KRB5_H_INCLUDED" >> 
krb5/krb5.new && echo "#define KRB5_KRB5_H_INCLUDED" >> krb5/krb5.new && cat 
krb5/krb5.hin $(LIBKRB5_MAINDIR)/lib/krb5/error_tables/krb5_err.h 
$(LIBKRB5_MAINDIR)/lib/krb5/error_tables/k5e1_err.h 
$(LIBKRB5_MAINDIR)/lib/krb5/error_tables/kdb5_err.h 
$(LIBKRB5_MAINDIR)/lib/krb5/error_tables/kv5m_err.h 
$(LIBKRB5_MAINDIR)/lib/krb5/error_tables/krb524_err.h 
$(LIBKRB5_MAINDIR)/lib/krb5/error_tables/asn1_err.h >> krb5/krb5.new && echo 
"#endif /* KRB5_KRB5_H_INCLUDED */" >> krb5/krb5.new && 
$(LIBKRB5_MAINDIR)/config/move-if-changed krb5/krb5.new krb5/krb5.h)
+
+$(LIBKRB5_DIR)/error_tables/et-c-asn1_err.et: 
$(LIBKRB5_DIR)/error_tables/asn1_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && rm -f et-c-asn1_err.et et-c-asn1_err.c 
et-c-asn1_err.h && cp $^ $@)
+$(LIBKRB5_DIR)/error_tables/et-c-asn1_err.c: 
$(LIBKRB5_DIR)/error_tables/et-c-asn1_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && $(LIBKRB5_COMPILE_PATH)/compile_et -d 
$(LIBKRB5_COMPILE_PATH) --textdomain mit-krb5 $^)
+$(LIBKRB5_DIR)/error_tables/asn1_err.c: 
$(LIBKRB5_DIR)/error_tables/et-c-asn1_err.c
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && mv -f $^ $@ && rm -f et-c-asn1_err.et 
et-c-asn1_err.h)
+
+$(LIBKRB5_DIR)/error_tables/et-c-kdb5_err.et: 
$(LIBKRB5_DIR)/error_tables/kdb5_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && rm -f et-c-kdb5_err.et et-c-kdb5_err.c 
et-c-kdb5_err.h && cp $^ $@)
+$(LIBKRB5_DIR)/error_tables/et-c-kdb5_err.c: 
$(LIBKRB5_DIR)/error_tables/et-c-kdb5_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && $(LIBKRB5_COMPILE_PATH)/compile_et -d 
$(LIBKRB5_COMPILE_PATH) --textdomain mit-krb5 $^)
+$(LIBKRB5_DIR)/error_tables/kdb5_err.c: 
$(LIBKRB5_DIR)/error_tables/et-c-kdb5_err.c
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && mv -f $^ $@ && rm -f et-c-kdb5_err.et 
et-c-kdb5_err.h)
+
+$(LIBKRB5_DIR)/error_tables/et-c-krb5_err.et: 
$(LIBKRB5_DIR)/error_tables/krb5_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && rm -f et-c-krb5_err.et et-c-krb5_err.c 
et-c-krb5_err.h && cp $^ $@)
+$(LIBKRB5_DIR)/error_tables/et-c-krb5_err.c: 
$(LIBKRB5_DIR)/error_tables/et-c-krb5_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && $(LIBKRB5_COMPILE_PATH)/compile_et -d 
$(LIBKRB5_COMPILE_PATH) --textdomain mit-krb5 $^)
+$(LIBKRB5_DIR)/error_tables/krb5_err.c: 
$(LIBKRB5_DIR)/error_tables/et-c-krb5_err.c
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && mv -f $^ $@ && rm -f et-c-krb5_err.et 
et-c-krb5_err.h)
+
+$(LIBKRB5_DIR)/error_tables/et-c-k5e1_err.et: 
$(LIBKRB5_DIR)/error_tables/k5e1_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && rm -f et-c-k5e1_err.et et-c-k5e1_err.c 
et-c-k5e1_err.h && cp $^ $@)
+$(LIBKRB5_DIR)/error_tables/et-c-k5e1_err.c: 
$(LIBKRB5_DIR)/error_tables/et-c-k5e1_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && $(LIBKRB5_COMPILE_PATH)/compile_et -d 
$(LIBKRB5_COMPILE_PATH) --textdomain mit-krb5 $^)
+$(LIBKRB5_DIR)/error_tables/k5e1_err.c: 
$(LIBKRB5_DIR)/error_tables/et-c-k5e1_err.c
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && mv -f $^ $@ && rm -f et-c-k5e1_err.et 
et-c-k5e1_err.h)
+
+$(LIBKRB5_DIR)/error_tables/et-c-kv5m_err.et: 
$(LIBKRB5_DIR)/error_tables/kv5m_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && rm -f et-c-kv5m_err.et et-c-kv5m_err.c 
et-c-kv5m_err.h && cp $^ $@)
+$(LIBKRB5_DIR)/error_tables/et-c-kv5m_err.c: 
$(LIBKRB5_DIR)/error_tables/et-c-kv5m_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && $(LIBKRB5_COMPILE_PATH)/compile_et -d 
$(LIBKRB5_COMPILE_PATH) --textdomain mit-krb5 $^)
+$(LIBKRB5_DIR)/error_tables/kv5m_err.c: 
$(LIBKRB5_DIR)/error_tables/et-c-kv5m_err.c
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && mv -f $^ $@ && rm -f et-c-kv5m_err.et 
et-c-kv5m_err.h)
+
+$(LIBKRB5_DIR)/error_tables/et-c-krb524_err.et: 
$(LIBKRB5_DIR)/error_tables/krb524_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && rm -f et-c-krb524_err.et et-c-krb524_err.c 
et-c-krb524_err.h && cp $^ $@)
+$(LIBKRB5_DIR)/error_tables/et-c-krb524_err.c: 
$(LIBKRB5_DIR)/error_tables/et-c-krb524_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && $(LIBKRB5_COMPILE_PATH)/compile_et -d 
$(LIBKRB5_COMPILE_PATH) --textdomain mit-krb5 $^)
+$(LIBKRB5_DIR)/error_tables/krb524_err.c: 
$(LIBKRB5_DIR)/error_tables/et-c-krb524_err.c
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && mv -f $^ $@ && rm -f et-c-krb524_err.et 
et-c-krb524_err.h)
+
+$(LIBKRB5_DIR)/error_tables/et-h-asn1_err.et: 
$(LIBKRB5_DIR)/error_tables/asn1_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && rm -f et-h-asn1_err.et et-h-asn1_err.c 
et-h-asn1_err.h && cp $^ $@)
+$(LIBKRB5_DIR)/error_tables/et-h-asn1_err.h: 
$(LIBKRB5_DIR)/error_tables/et-h-asn1_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && $(LIBKRB5_COMPILE_PATH)/compile_et -d 
$(LIBKRB5_COMPILE_PATH) --textdomain mit-krb5 $^)
+$(LIBKRB5_DIR)/error_tables/asn1_err.h: 
$(LIBKRB5_DIR)/error_tables/et-h-asn1_err.h
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && mv -f $^ $@ && rm -f et-h-asn1_err.et 
et-h-asn1_err.c)
+
+$(LIBKRB5_DIR)/error_tables/et-h-kdb5_err.et: 
$(LIBKRB5_DIR)/error_tables/kdb5_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && rm -f et-h-kdb5_err.et et-h-kdb5_err.c 
et-h-kdb5_err.h && cp $^ $@)
+$(LIBKRB5_DIR)/error_tables/et-h-kdb5_err.h: 
$(LIBKRB5_DIR)/error_tables/et-h-kdb5_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && $(LIBKRB5_COMPILE_PATH)/compile_et -d 
$(LIBKRB5_COMPILE_PATH) --textdomain mit-krb5 $^)
+$(LIBKRB5_DIR)/error_tables/kdb5_err.h: 
$(LIBKRB5_DIR)/error_tables/et-h-kdb5_err.h
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && mv -f $^ $@ && rm -f et-h-kdb5_err.et 
et-h-kdb5_err.c)
+
+$(LIBKRB5_DIR)/error_tables/et-h-krb5_err.et: 
$(LIBKRB5_DIR)/error_tables/krb5_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && rm -f et-h-krb5_err.et et-h-krb5_err.c 
et-h-krb5_err.h && cp $^ $@)
+$(LIBKRB5_DIR)/error_tables/et-h-krb5_err.h: 
$(LIBKRB5_DIR)/error_tables/et-h-krb5_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && $(LIBKRB5_COMPILE_PATH)/compile_et -d 
$(LIBKRB5_COMPILE_PATH) --textdomain mit-krb5 $^)
+$(LIBKRB5_DIR)/error_tables/krb5_err.h: 
$(LIBKRB5_DIR)/error_tables/et-h-krb5_err.h
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && mv -f $^ $@ && rm -f et-h-krb5_err.et 
et-h-krb5_err.c)
+
+$(LIBKRB5_DIR)/error_tables/et-h-k5e1_err.et: 
$(LIBKRB5_DIR)/error_tables/k5e1_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && rm -f et-h-k5e1_err.et et-h-k5e1_err.c 
et-h-k5e1_err.h && cp $^ $@)
+$(LIBKRB5_DIR)/error_tables/et-h-k5e1_err.h: 
$(LIBKRB5_DIR)/error_tables/et-h-k5e1_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && $(LIBKRB5_COMPILE_PATH)/compile_et -d 
$(LIBKRB5_COMPILE_PATH) --textdomain mit-krb5 $^)
+$(LIBKRB5_DIR)/error_tables/k5e1_err.h: 
$(LIBKRB5_DIR)/error_tables/et-h-k5e1_err.h
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && mv -f $^ $@ && rm -f et-h-k5e1_err.et 
et-h-k5e1_err.c)
+
+$(LIBKRB5_DIR)/error_tables/et-h-kv5m_err.et: 
$(LIBKRB5_DIR)/error_tables/kv5m_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && rm -f et-h-kv5m_err.et et-h-kv5m_err.c 
et-h-kv5m_err.h && cp $^ $@)
+$(LIBKRB5_DIR)/error_tables/et-h-kv5m_err.h: 
$(LIBKRB5_DIR)/error_tables/et-h-kv5m_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && $(LIBKRB5_COMPILE_PATH)/compile_et -d 
$(LIBKRB5_COMPILE_PATH) --textdomain mit-krb5 $^)
+$(LIBKRB5_DIR)/error_tables/kv5m_err.h: 
$(LIBKRB5_DIR)/error_tables/et-h-kv5m_err.h
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && mv -f $^ $@ && rm -f et-h-kv5m_err.et 
et-h-kv5m_err.c)
+
+$(LIBKRB5_DIR)/error_tables/et-h-krb524_err.et: 
$(LIBKRB5_DIR)/error_tables/krb524_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && rm -f et-h-krb524_err.et et-h-krb524_err.c 
et-h-krb524_err.h && cp $^ $@)
+$(LIBKRB5_DIR)/error_tables/et-h-krb524_err.h: 
$(LIBKRB5_DIR)/error_tables/et-h-krb524_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && $(LIBKRB5_COMPILE_PATH)/compile_et -d 
$(LIBKRB5_COMPILE_PATH) --textdomain mit-krb5 $^)
+$(LIBKRB5_DIR)/error_tables/krb524_err.h: 
$(LIBKRB5_DIR)/error_tables/et-h-krb524_err.h
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_DIR)/error_tables && mv -f $^ $@ && rm -f et-h-krb524_err.et 
et-h-krb524_err.c)
+
+$(LIBKRB5_MAINDIR)/util/profile/et-h-prof_err.et: 
$(LIBKRB5_MAINDIR)/util/profile/prof_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_MAINDIR)/util/profile && rm -f et-h-prof_err.et et-h-prof_err.c 
et-h-prof_err.h && cp $^ $@)
+$(LIBKRB5_MAINDIR)/util/profile/et-h-prof_err.h: 
$(LIBKRB5_MAINDIR)/util/profile/et-h-prof_err.et
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_MAINDIR)/util/profile && $(LIBKRB5_COMPILE_PATH)/compile_et -d 
$(LIBKRB5_COMPILE_PATH) --textdomain mit-krb5 $^)
+$(LIBKRB5_MAINDIR)/util/profile/prof_err.h: 
$(LIBKRB5_MAINDIR)/util/profile/et-h-prof_err.h
+       $(call verbose_cmd,GEN,libkrb: $(notdir $@), cd 
$(LIBKRB5_MAINDIR)/util/profile && mv -f $^ $@ && rm -f et-h-prof_err.et 
et-h-prof_err.c)
+
+# There are 2 camellia.c in the library, so we must differentiate them
+$(LIBKRB5CRYPTO_DIR)/builtin/enc_provider/enc_camellia.c: 
$(LIBKRB5CRYPTO_DIR)/builtin/enc_provider/camellia.c
+       $(call verbose_cmd,GEN,libkrb5crypto: $(notdir $@), cp $^ $@)
+
+LIBKRB5_DEPS = \
+       $(LIBKRB5_MAINDIR)/.configured \
+       $(LIBKRB5_MAINDIR)/include/osconf.h \
+       $(LIBKRB5_MAINDIR)/include/com_err.h \
+       $(LIBKRB5_COMPILE_PATH)/compile_et \
+       $(LIBKRB5_MAINDIR)/util/profile/prof_err.h \
+       $(LIBKRB5_MAINDIR)/include/profile.h \
+       $(LIBKRB5_DIR)/error_tables/krb524_err.c \
+       $(LIBKRB5_DIR)/error_tables/kv5m_err.c \
+       $(LIBKRB5_DIR)/error_tables/k5e1_err.c \
+       $(LIBKRB5_DIR)/error_tables/krb5_err.c \
+       $(LIBKRB5_DIR)/error_tables/kdb5_err.c \
+       $(LIBKRB5_DIR)/error_tables/asn1_err.c \
+       $(LIBKRB5_DIR)/error_tables/krb524_err.h \
+       $(LIBKRB5_DIR)/error_tables/kv5m_err.h \
+       $(LIBKRB5_DIR)/error_tables/k5e1_err.h \
+       $(LIBKRB5_DIR)/error_tables/krb5_err.h \
+       $(LIBKRB5_DIR)/error_tables/kdb5_err.h \
+       $(LIBKRB5_DIR)/error_tables/asn1_err.h \
+       $(LIBKRB5_MAINDIR)/include/krb5/krb5.h \
+       $(LIBKRB5CRYPTO_DIR)/builtin/enc_provider/enc_camellia.c \
+
+UK_PREPARE += $(LIBKRB5_DEPS)
diff --git a/include/byteswap.h b/include/byteswap.h
new file mode 100644
index 0000000..00b9df3
--- /dev/null
+++ b/include/byteswap.h
@@ -0,0 +1,26 @@
+#ifndef _BYTESWAP_H
+#define _BYTESWAP_H
+
+#include <features.h>
+#include <stdint.h>
+
+static __inline uint16_t __bswap_16(uint16_t __x)
+{
+       return __x<<8 | __x>>8;
+}
+
+static __inline uint32_t __bswap_32(uint32_t __x)
+{
+       return __x>>24 | __x>>8&0xff00 | __x<<8&0xff0000 | __x<<24;
+}
+
+static __inline uint64_t __bswap_64(uint64_t __x)
+{
+       return __bswap_32(__x)+0ULL<<32 | __bswap_32(__x>>32);
+}
+
+#define bswap_16(x) __bswap_16(x)
+#define bswap_32(x) __bswap_32(x)
+#define bswap_64(x) __bswap_64(x)
+
+#endif
-- 
2.25.1




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.