diff mbox series

[v5] package/gtkiostream: new package

Message ID 20230207210934.3132539-1-angelo@amarulasolutions.com
State Changes Requested
Headers show
Series [v5] package/gtkiostream: new package | expand

Commit Message

Angelo Compagnucci Feb. 7, 2023, 9:09 p.m. UTC
From: Matt Flax <flatmax@flatmax.com>

This package provides many useful software engineering and signal
processing libraries.
The package offer also a GUI written in GTK which requires several
missing packages and therefore is left disabled.

Signed-off-by: Matt Flax <flatmax@flatmax.com>
Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
---
v4:
* Bumped to 1.8.0
* Added myself to DEVELOPERS
* Added dependency on octave when enable instead of use
  --disable-octave configure option
* Fixes from check-package
v5:
* Fixed wrong syntax (Romain)
* Added optional dependency on sox (Matt)

 DEVELOPERS                           |  4 ++++
 package/Config.in                    |  1 +
 package/gtkiostream/Config.in        | 15 +++++++++++++++
 package/gtkiostream/gtkiostream.hash |  3 +++
 package/gtkiostream/gtkiostream.mk   | 25 +++++++++++++++++++++++++
 5 files changed, 48 insertions(+)
 create mode 100644 package/gtkiostream/Config.in
 create mode 100644 package/gtkiostream/gtkiostream.hash
 create mode 100644 package/gtkiostream/gtkiostream.mk

Comments

Thomas Petazzoni Feb. 7, 2023, 9:50 p.m. UTC | #1
On Tue,  7 Feb 2023 22:09:34 +0100
Angelo Compagnucci <angelo@amarulasolutions.com> wrote:

> From: Matt Flax <flatmax@flatmax.com>
> 
> This package provides many useful software engineering and signal
> processing libraries.
> The package offer also a GUI written in GTK which requires several
> missing packages and therefore is left disabled.
> 
> Signed-off-by: Matt Flax <flatmax@flatmax.com>
> Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
> ---
> v4:
> * Bumped to 1.8.0
> * Added myself to DEVELOPERS
> * Added dependency on octave when enable instead of use
>   --disable-octave configure option
> * Fixes from check-package
> v5:
> * Fixed wrong syntax (Romain)
> * Added optional dependency on sox (Matt)

I wanted to apply, but a quick test build with:

BR2_arm=y
BR2_cortex_a9=y
BR2_ARM_ENABLE_VFP=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y
BR2_INIT_NONE=y
BR2_SYSTEM_BIN_SH_NONE=y
# BR2_PACKAGE_BUSYBOX is not set
BR2_PACKAGE_GTKIOSTREAM=y
# BR2_TARGET_ROOTFS_TAR is not set

ends up with:

/home/thomas/projets/buildroot/output/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-gnueabihf/12.2.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: cannot find -lfftw3_threads: No such file or directory

So, I will hold off for now :)

Thomas
Thomas Petazzoni Feb. 7, 2023, 9:51 p.m. UTC | #2
On Tue,  7 Feb 2023 22:09:34 +0100
Angelo Compagnucci <angelo@amarulasolutions.com> wrote:

> +GTKIOSTREAM_VERSION = v1.8.0
> +GTKIOSTREAM_SITE = $(call github,flatmax,gtkiostream,$(GTKIOSTREAM_VERSION))
> +GTKIOSTREAM_LICENSE = GPL-2.0+
> +GTKIOSTREAM_LICENSE_FILES = gpl.txt
> +GTKIOSTREAM_DEPENDENCIES = eigen fftw-double fftw-single host-pkgconf
> +
> +GTKIOSTREAM_DEPENDENCIES += $(if $(BR2_PACKAGE_SOX),sox)

Better written as:

GTKIOSTREAM_DEPENDENCIES = \
	eigen \
	fftw-double \
	...
	host-pkgconf \
	$(if $(BR2_PACKAGE_SOX),sox)

> +
> +ifeq ($(BR2_PACKAGE_OCTAVE),y)
> +GTKIOSTREAM_DEPENDENCIES += octave
> +GTKIOSTREAM_CONF_OPTS += --enable-octave
> +else
> +GTKIOSTREAM_CONF_OPTS += --disable-octave
> +endif
> +
> +# configure script not available
> +GTKIOSTREAM_AUTORECONF = YES

This normally goes earlier in the makefile, like before the
dependencies/conf_opts.

Thanks!

Thomas
diff mbox series

Patch

diff --git a/DEVELOPERS b/DEVELOPERS
index d7c4d03c4c..5355d6d5ac 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -165,6 +165,7 @@  F:	package/cups/
 F:	package/cups-filters/
 F:	package/fail2ban/
 F:	package/grep/
+F:	package/gtkiostream/
 F:	package/htpdate/
 F:	package/i2c-tools/
 F:	package/jq/
@@ -1978,6 +1979,9 @@  F:	board/technologic/ts4900/
 F:	configs/ts4900_defconfig
 F:	package/ts4900-fpga/
 
+N:	Matt Flax <flatmax@flatmax.org>
+F:	package/gtkiostream/
+
 N:	Matt Weber <matthew.weber@collins.com>
 F:	board/freescale/p*
 F:	board/freescale/t*
diff --git a/package/Config.in b/package/Config.in
index 06d0a05854..70e446be47 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1389,6 +1389,7 @@  menu "Audio/Sound"
 	source "package/bcg729/Config.in"
 	source "package/caps/Config.in"
 	source "package/fdk-aac/Config.in"
+	source "package/gtkiostream/Config.in"
 	source "package/libao/Config.in"
 	source "package/libasplib/Config.in"
 	source "package/libbroadvoice/Config.in"
diff --git a/package/gtkiostream/Config.in b/package/gtkiostream/Config.in
new file mode 100644
index 0000000000..bb97961587
--- /dev/null
+++ b/package/gtkiostream/Config.in
@@ -0,0 +1,15 @@ 
+config BR2_PACKAGE_GTKIOSTREAM
+	bool "gtkiostream"
+	depends on BR2_INSTALL_LIBSTDCPP # eigen
+	select BR2_PACKAGE_EIGEN
+	select BR2_PACKAGE_FFTW
+	select BR2_PACKAGE_FFTW_DOUBLE
+	select BR2_PACKAGE_FFTW_SINGLE
+	help
+	  This package provides many useful software engineering and
+	  signal processing includes and linkable library.
+
+	  https://github.com/flatmax/gtkiostream
+
+comment "gtkiostream needs a toolchain w/ C++"
+	depends on !BR2_INSTALL_LIBSTDCPP
diff --git a/package/gtkiostream/gtkiostream.hash b/package/gtkiostream/gtkiostream.hash
new file mode 100644
index 0000000000..90c754f48c
--- /dev/null
+++ b/package/gtkiostream/gtkiostream.hash
@@ -0,0 +1,3 @@ 
+# locally computed hash
+sha256  44e8d921d462005cd330a1c24e5bd8061175b90ae53f537dbf73f59b74f6e01b  gtkiostream-v1.8.0.tar.gz
+sha256  204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994  gpl.txt
diff --git a/package/gtkiostream/gtkiostream.mk b/package/gtkiostream/gtkiostream.mk
new file mode 100644
index 0000000000..f110e6c149
--- /dev/null
+++ b/package/gtkiostream/gtkiostream.mk
@@ -0,0 +1,25 @@ 
+################################################################################
+#
+# GTKIOSTREAM
+#
+################################################################################
+
+GTKIOSTREAM_VERSION = v1.8.0
+GTKIOSTREAM_SITE = $(call github,flatmax,gtkiostream,$(GTKIOSTREAM_VERSION))
+GTKIOSTREAM_LICENSE = GPL-2.0+
+GTKIOSTREAM_LICENSE_FILES = gpl.txt
+GTKIOSTREAM_DEPENDENCIES = eigen fftw-double fftw-single host-pkgconf
+
+GTKIOSTREAM_DEPENDENCIES += $(if $(BR2_PACKAGE_SOX),sox)
+
+ifeq ($(BR2_PACKAGE_OCTAVE),y)
+GTKIOSTREAM_DEPENDENCIES += octave
+GTKIOSTREAM_CONF_OPTS += --enable-octave
+else
+GTKIOSTREAM_CONF_OPTS += --disable-octave
+endif
+
+# configure script not available
+GTKIOSTREAM_AUTORECONF = YES
+
+$(eval $(autotools-package))