All of lore.kernel.org
 help / color / mirror / Atom feed
From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 26/49 v2] package/libpri: new package
Date: Sat,  9 Sep 2017 23:39:32 +0200	[thread overview]
Message-ID: <17cb57ab8e00baa05fb04a07b6e2b0b3905ead67.1504993178.git.yann.morin.1998@free.fr> (raw)
In-Reply-To: <cover.1504993178.git.yann.morin.1998@free.fr>

The Makefile in the package is not very versatile, so we need to go our
way to only build and install what we can.

Fixing the Makefile is not worth it, considering that we can quite
easily do all of that in our .mk.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/Config.in          |  1 +
 package/libpri/Config.in   | 21 +++++++++++++++++++
 package/libpri/libpri.hash |  3 +++
 package/libpri/libpri.mk   | 52 ++++++++++++++++++++++++++++++++++++++++++++++
 4 files changed, 77 insertions(+)
 create mode 100644 package/libpri/Config.in
 create mode 100644 package/libpri/libpri.hash
 create mode 100644 package/libpri/libpri.mk

diff --git a/package/Config.in b/package/Config.in
index b3e733b618..764ae73c8b 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1156,6 +1156,7 @@ menu "Hardware handling"
 	source "package/libnfc/Config.in"
 	source "package/libpciaccess/Config.in"
 	source "package/libphidget/Config.in"
+	source "package/libpri/Config.in"
 	source "package/libqmi/Config.in"
 	source "package/libraw1394/Config.in"
 	source "package/librtas/Config.in"
diff --git a/package/libpri/Config.in b/package/libpri/Config.in
new file mode 100644
index 0000000000..de2d96fcc4
--- /dev/null
+++ b/package/libpri/Config.in
@@ -0,0 +1,21 @@
+config BR2_PACKAGE_LIBPRI
+	bool "libpri"
+	depends on BR2_USE_MMU # fork()
+	depends on BR2_LINUX_KERNEL
+	depends on BR2_TOOLCHAIN_HAS_THREADS
+	select BR2_PACKAGE_DAHDI_LINUX
+	select BR2_PACKAGE_DAHDI_TOOLS
+	help
+	  libpri is an open source library that encapsulates the
+	  protocols used to communicate over ISDN Primary Rate
+	  Interfaces (T1, E1, J1).
+
+	  http://www.asterisk.org/downloads/libpri
+
+comment "libpri needs a kernel to be built"
+	depends on BR2_USE_MMU
+	depends on !BR2_LINUX_KERNEL
+
+comment "libpri needs a toolchain w/ threads"
+	depends on BR2_USE_MMU
+	depends on !BR2_TOOLCHAIN_HAS_THREADS
diff --git a/package/libpri/libpri.hash b/package/libpri/libpri.hash
new file mode 100644
index 0000000000..408779f203
--- /dev/null
+++ b/package/libpri/libpri.hash
@@ -0,0 +1,3 @@
+# sha1 and sha256 from http://downloads.asterisk.org/pub/telephony/libpri/releases/
+sha1    63536f3300fb007dfd5fe8064406992ca938bd9a                          libpri-1.5.0.tar.gz
+sha256  ee224bc4aa65c54546bd09675c3f0b71817ce9e277332bce86989d8dcd556a24  libpri-1.5.0.tar.gz
diff --git a/package/libpri/libpri.mk b/package/libpri/libpri.mk
new file mode 100644
index 0000000000..f4ebdb71d2
--- /dev/null
+++ b/package/libpri/libpri.mk
@@ -0,0 +1,52 @@
+################################################################################
+#
+# libpri
+#
+################################################################################
+
+LIBPRI_VERSION = 1.5.0
+LIBPRI_SITE = http://downloads.asterisk.org/pub/telephony/libpri/releases
+
+LIBPRI_LICENSE = GPLv2 w/ OpenH323 exception
+LIBPRI_LICENSE_FILES = LICENSE README
+
+LIBPRI_DEPENDENCIES = dahdi-linux dahdi-tools
+LIBPRI_INSTALL_STAGING = YES
+
+# The Makefile default rule will always try to generate both libraries.
+#    16 # So we need to explicitly build only what we can.
+ifneq ($(BR2_SHARED_LIBS),y)
+LIBPRI_LIBS = libpri.a
+define LIBPRI_INSTALL_A
+	$(INSTALL) -D -m 0644 $(@D)/libpri.a $(1)/usr/lib/libpri.a
+endef
+endif
+
+ifneq ($(BR2_STATIC_LIBS),y)
+LIBPRI_LIBS += libpri.so.1.4
+define LIBPRI_INSTALL_SO
+	$(INSTALL) -D -m 0644 $(@D)/libpri.so.1.4 $(1)/usr/lib/libpri.so.1.4
+	ln -sf libpri.so.1.4 $(1)/usr/lib/libpri.so
+endef
+endif
+
+LIBPRI_UTILS = pridump pritest rosetest testprilib
+
+define LIBPRI_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) \
+		$(LIBPRI_LIBS) $(LIBPRI_UTILS)
+endef
+
+define LIBPRI_INSTALL_STAGING_CMDS
+	$(call LIBPRI_INSTALL_A,$(STAGING_DIR))
+	$(call LIBPRI_INSTALL_SO,$(STAGING_DIR))
+	$(INSTALL) -D -m 0644 $(@D)/libpri.h $(STAGING_DIR)/usr/include/libpri.h
+endef
+
+define LIBPRI_INSTALL_TARGET_CMDS
+	$(foreach u,$(LIBPRI_UTILS),\
+		$(INSTALL) -D -m 0755 $(@D)/$(u) $(TARGET_DIR)/usr/sbin/$(u)$(sep))
+	$(call LIBPRI_INSTALL_SO,$(TARGET_DIR))
+endef
+
+$(eval $(generic-package))
-- 
2.11.0

  parent reply	other threads:[~2017-09-09 21:39 UTC|newest]

Thread overview: 76+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-09-09 21:39 [Buildroot] [PATCH 00/49 v2] package/asterisk: add a complete asterisk stack Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 01/49 v2] package/asterisk: new package Yann E. MORIN
2017-09-09 22:12   ` Marcus Hoffmann
2017-09-10  9:02     ` Yann E. MORIN
2017-09-10  9:17       ` Yann E. MORIN
2017-09-23 17:13   ` Arnout Vandecappelle
2017-09-09 21:39 ` [Buildroot] [PATCH 02/49 v2] package/asterisk: enable backtrace when available Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 03/49 v2] package/asterisk: add optional libgsm dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 04/49 v2] package/asterisk: add optional zlib dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 05/49 v2] package/asterisk: add optional support for SSL Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 06/49 v2] package/asterisk: add optional alsa-lib dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 07/49 v2] package/asterisk: add optional curl dependency Yann E. MORIN
2017-09-23 17:14   ` Arnout Vandecappelle
2017-09-09 21:39 ` [Buildroot] [PATCH 08/49 v2] package/asterisk: add optional neon dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 09/49 v2] package/asterisk: add optional libogg dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 10/49 v2] package/asterisk: add optional bluez_utils dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 11/49 v2] package/asterisk: add optional opus dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 12/49 v2] package/asterisk: add optional speex dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 13/49 v2] package/asterisk: add optional libvorbis dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 14/49 v2] package/asterisk: add optional libilbc dependency Yann E. MORIN
2017-09-23 17:14   ` Arnout Vandecappelle
2017-09-09 21:39 ` [Buildroot] [PATCH 15/49 v2] package/asterisk: add optional portaudio dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 16/49 v2] package/asterisk: add optional libical dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 17/49 v2] package/asterisk: add optional openldap dependency Yann E. MORIN
2017-09-14 14:36   ` Bernd Kuhls
2017-09-16 16:46     ` Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 18/49 v2] package/asterisk: add optional freeradius-client dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 19/49 v2] package/asterisk: add optional libsrtp dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 20/49 v2] package/dahdi-linux: new package Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 21/49 v2] package/dahdi-tools: " Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 22/49 v2] package/dahdi-tools: add USB support Yann E. MORIN
2017-09-23 16:28   ` Arnout Vandecappelle
2017-09-24 14:57     ` Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 23/49 v2] package/asterisk: add support for dahdi Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 24/49 v2] package/libss7: new package Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 25/49 v2] package/asterisk: add support for SS7 Yann E. MORIN
2017-09-09 21:39 ` Yann E. MORIN [this message]
2017-09-09 21:39 ` [Buildroot] [PATCH 27/49 v2] package/asterisk: add support for PRI signalling Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 28/49 v2] package/spandsp: new package Yann E. MORIN
2017-09-23 16:40   ` Arnout Vandecappelle
2017-09-24 18:39     ` Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 29/49 v2] package/asterisk: add optional spandsp support Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 30/49 v2] package/libqb: new package Yann E. MORIN
2017-09-23 16:51   ` Arnout Vandecappelle
2017-09-24 19:45     ` Yann E. MORIN
2017-09-24 19:52       ` Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 31/49 v2] package/corosync: " Yann E. MORIN
2017-09-23 16:58   ` Arnout Vandecappelle
2017-09-24 20:52     ` Yann E. MORIN
2017-09-25  7:22       ` Arnout Vandecappelle
2017-09-09 21:39 ` [Buildroot] [PATCH 32/49 v2] package/corosync: add optional dbus support Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 33/49 v2] package/corosync: add optional snmp support Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 34/49 v2] package/asterisk: add optional corosync dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 35/49 v2] package/libpjsip: add option to enable GSM codec Yann E. MORIN
2017-09-23 17:05   ` Arnout Vandecappelle
2017-09-25 16:19     ` Yann E. MORIN
2017-09-25 20:41       ` Arnout Vandecappelle
2017-09-09 21:39 ` [Buildroot] [PATCH 36/49 v2] package/asterisk: add optional netsnmp dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 37/49 v2] package/libpjsip: add option to enable SPEEX codec Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 38/49 v2] package/libpjsip: add option to enable G.711 codec Yann E. MORIN
2017-09-23 17:06   ` Arnout Vandecappelle
2017-09-25 16:20     ` Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 39/49 v2] package/libpjsip: add option to enable G.722 codec Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 40/49 v2] package/libpjsip: add option to enable G.7221 codec Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 41/49 v2] package/libpjsip: add option to enable iLBC codec Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 42/49 v2] package/libpjsip: add option to enable L16 codec Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 43/49 v2] package/libpjsip: add optional portaudio support Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 44/49 v2] package/asterisk: add optional pjsip support Yann E. MORIN
2017-09-23 17:07   ` Arnout Vandecappelle
2017-09-25 16:25     ` Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 45/49 v2] package/asterisk: add optional libcap dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 46/49 v2] package/asterisk: add optional iconv support Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 47/49 v2] package/asterisk: enable inotify when possible Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 48/49 v2] package/asterisk: add optional unixodbc dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 49/49 v2] package/asterisk: add optional jack2 dependency Yann E. MORIN
2017-09-23 17:18 ` [Buildroot] [PATCH 00/49 v2] package/asterisk: add a complete asterisk stack Arnout Vandecappelle

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=17cb57ab8e00baa05fb04a07b6e2b0b3905ead67.1504993178.git.yann.morin.1998@free.fr \
    --to=yann.morin.1998@free.fr \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.