You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

139 lines
3.9 KiB

#
# Copyright (C) 2009-2015 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=krb5
PKG_VERSION:=1.13.1
PKG_RELEASE:=1
PKG_MAINTAINER:=W. Michael Petullo <mike@flyn.org>
PKG_LICENSE:=MIT
PKG_LICENSE_FILES:=NOTICE
PKG_SOURCE:=krb5-$(PKG_VERSION)-signed.tar
PKG_SOURCE_URL:=http://web.mit.edu/kerberos/dist/krb5/1.13/
PKG_MD5SUM:=567586cdf02aa8c842c2fab7a94f3c1f
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_BUILD_PARALLEL:=1
PKG_INSTALL:=1
PKG_CHECK_FORMAT_SECURITY:=0
include $(INCLUDE_DIR)/package.mk
MAKE_PATH:=src
define Package/krb5/Default
SECTION:=net
CATEGORY:=Network
TITLE:=Kerberos
URL:=http://web.mit.edu/kerberos/
endef
define Package/krb5-libs
SECTION:=net
CATEGORY:=Network
TITLE:=Kerberos
DEPENDS:=+libncurses
TITLE:=Kerberos 5 Shared Libraries
URL:=http://web.mit.edu/kerberos/
endef
define Package/krb5-server
$(call Package/krb5/Default)
DEPENDS:=+krb5-libs +libpthread
TITLE:=Kerberos 5 Server
endef
define Package/krb5-client
$(call Package/krb5/Default)
DEPENDS:=+krb5-libs
TITLE:=Kerberos 5 Client
endef
define Package/krb5/description
Kerberos
endef
define Build/Prepare
# Krb5 tarball contains signature and a second tarball
# containing source code.
tar xf "$(DL_DIR)/$(PKG_SOURCE)" -C "$(BUILD_DIR)"
tar xzf "$(BUILD_DIR)/krb5-$(PKG_VERSION).tar.gz" -C "$(BUILD_DIR)"
patch -p1 -d "$(PKG_BUILD_DIR)" < "$(PATCH_DIR)/001-fix-build.patch"
endef
CONFIGURE_PATH = ./src
CONFIGURE_VARS += \
cross_compiling=yes \
krb5_cv_attr_constructor_destructor=yes,yes \
ac_cv_func_regcomp=yes \
ac_cv_printf_positional=yes \
ac_cv_file__etc_environment=no \
ac_cv_file__etc_TIMEZONE=no
CONFIGURE_ARGS += \
--without-tcl \
--without-libedit \
--localstatedir=/etc
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include
$(CP) $(PKG_INSTALL_DIR)/usr/include \
$(1)/usr/include/krb5
$(INSTALL_DIR) $(1)/usr
$(CP) $(PKG_INSTALL_DIR)/usr/lib \
$(1)/usr
rm -f $(1)/usr/lib/libcom_err*
endef
define Package/krb5-libs/install
$(INSTALL_DIR) $(1)/usr/lib
$(INSTALL_DIR) $(1)/usr/lib/krb5
$(INSTALL_DIR) $(1)/usr/lib/krb5/plugins
$(INSTALL_DIR) $(1)/usr/lib/krb5/plugins/kdb
$(INSTALL_DIR) $(1)/usr/lib/krb5/plugins/libkrb5
$(CP) $(PKG_INSTALL_DIR)/usr/lib/krb5/plugins/kdb/db2.so $(1)/usr/lib/krb5/plugins/kdb
$(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib
endef
define Package/krb5-client/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/kdestroy $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/kinit $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/klist $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/kpasswd $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/ksu $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/kvno $(1)/usr/bin
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/krb5-send-pr $(1)/usr/sbin
endef
# Removed some server-side software to reduce package size. This should be
# put in a separate package if needed.
define Package/krb5-server/install
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) ./files/krb5kdc $(1)/etc/init.d/krb5kdc
# $(INSTALL_DIR) $(1)/usr/bin
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/sclient $(1)/usr/bin
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/kadmin.local $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/kadmind $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/kdb5_util $(1)/usr/sbin
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/kprop $(1)/usr/sbin
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/kpropd $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/krb5kdc $(1)/usr/sbin
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/sim_server $(1)/usr/sbin
endef
$(eval $(call BuildPackage,krb5-libs))
$(eval $(call BuildPackage,krb5-server))
$(eval $(call BuildPackage,krb5-client))