#
# Copyright (C) 2014 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:=libcapi20
PKG_VERSION:=20140401
PKG_RELEASE:=1

PKG_SOURCE_URL:=git://git.misdn.eu/isdn4k-utils
#PKG_SOURCE_VERSION:=HEAD
PKG_SOURCE_VERSION:=6c7bdc2a6456932f552018fcbb4aec2921cf2085
PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.bz2
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)

PKG_LICENSE:=LGPLv2
PKG_LICENSE_FILES:=COPYING

PKG_INSTALL:=1
PKG_FIXUP:=autoreconf


include $(INCLUDE_DIR)/package.mk


define Package/libcapi20/Default
  SECTION:=net
  CATEGORY:=Network
  SUBMENU:=ISDN
  URL:=https://www.misdn.eu/
  MAINTAINER:=Arnold Schulz <theosch@gmx.net>
endef
          
          
define Package/libcapi20
  $(call Package/libcapi20/Default)
  TITLE:=CAPI support (Common ISDN API)
  MENU:=1
  DEPENDS:=+librt
endef

define Package/libcapi20/description
  The Common ISDN Application Programming Interface (short CAPI) is an ISDN-conform
  standardized software interface. With the help of the CAPI-Interface computer
  software intended for the use with ISDN can be provided, without knowledge of
  the deployed, proprietary ISDN card.

  This package contains the CAPI usermode library, basically providing access
  to ISDN for any application.
endef
    
    
define Package/libcapi20-std
  $(call Package/libcapi20/Default)
  TITLE:=Support isdn4linux hardware devices (not mISDN!)
  DEPENDS:=libcapi20
endef

define Package/libcapi20-std/description
  Provide CAPI via the standard capi device nodes
    /dev/capi20        or
    /dev/isdn/capi20
endef


define Package/libcapi20-fritz
  $(call Package/libcapi20/Default)
  TITLE:=Support remote CAPI servers (Fritz!Box protocol)
  DEPENDS:=libcapi20
endef

define Package/libcapi20-fritz/description
  Provide CAPI via a TCP connection to an AVM Fritz!Box or compatible router.
endef


define Package/libcapi20-rcapi
  $(call Package/libcapi20/Default)
  TITLE:=Support remote CAPI servers   (Melware protocol)
  DEPENDS:=libcapi20
endef


define Package/libcapi20-rcapi/description
  Provide CAPI via a TCP connection to a remote server
  using the Melware protokol.
endef


#
#
#

CONFIGURE_PATH:=capi20

MAKE_PATH:=capi20

define Build/InstallDev
        $(INSTALL_DIR)	$(1)/usr/include
	$(CP)		$(PKG_INSTALL_DIR)/usr/include/*  $(1)/usr/include/
	$(INSTALL_DIR)	$(1)/usr/lib
	$(CP)		$(PKG_INSTALL_DIR)/usr/lib/libcapi20.*  $(1)/usr/lib/
endef


#
#
#

define Package/libcapi20/install
        $(INSTALL_DIR)	$(1)/usr/lib
	$(CP)		$(PKG_INSTALL_DIR)/usr/lib/libcapi20.so*  $(1)/usr/lib/
endef


define Package/libcapi20-std/install
        $(INSTALL_DIR)	$(1)/usr/lib/capi
	$(CP)		$(PKG_INSTALL_DIR)/usr/lib/capi/lib_capi_mod_std.so*  $(1)/usr/lib/capi/
endef


define Package/libcapi20-fritz/install
        $(INSTALL_DIR)	$(1)/usr/lib/capi
	$(CP)		$(PKG_INSTALL_DIR)/usr/lib/capi/lib_capi_mod_fritzbox.so*  $(1)/usr/lib/capi/
endef


define Package/libcapi20-rcapi/install
        $(INSTALL_DIR)	$(1)/usr/lib/capi
	$(CP)		$(PKG_INSTALL_DIR)/usr/lib/capi/lib_capi_mod_rcapi.so*  $(1)/usr/lib/capi/
endef


$(eval $(call BuildPackage,libcapi20))
$(eval $(call BuildPackage,libcapi20-std))
$(eval $(call BuildPackage,libcapi20-rcapi))
$(eval $(call BuildPackage,libcapi20-fritz))

