* [Buildroot] [PATCH v2 1/1] encfs: new package
@ 2018-09-03 6:58 Yair Ben Avraham
2018-09-05 13:30 ` Baruch Siach
0 siblings, 1 reply; 3+ messages in thread
From: Yair Ben Avraham @ 2018-09-03 6:58 UTC (permalink / raw)
To: buildroot
EncFS: an Encrypted Filesystem for FUSE.
Signed-off-by: Yair Ben Avraham <yairba@tkos.co.il>
---
package/Config.in | 1 +
package/encfs/Config.in | 20 ++++++++++++++++++++
package/encfs/encfs.hash | 9 +++++++++
package/encfs/encfs.mk | 24 ++++++++++++++++++++++++
4 files changed, 54 insertions(+)
create mode 100644 package/encfs/Config.in
create mode 100644 package/encfs/encfs.hash
create mode 100644 package/encfs/encfs.mk
diff --git a/package/Config.in b/package/Config.in
index f5a1749..768d182 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -181,6 +181,7 @@ menu "Filesystem and flash utilities"
source "package/e2fsprogs/Config.in"
source "package/e2tools/Config.in"
source "package/ecryptfs-utils/Config.in"
+ source "package/encfs/Config.in"
source "package/exfat/Config.in"
source "package/exfat-utils/Config.in"
source "package/f2fs-tools/Config.in"
diff --git a/package/encfs/Config.in b/package/encfs/Config.in
new file mode 100644
index 0000000..45fc794
--- /dev/null
+++ b/package/encfs/Config.in
@@ -0,0 +1,20 @@
+config BR2_PACKAGE_ENCFS
+ bool "encfs"
+ depends on BR2_USE_WCHAR
+ depends on BR2_TOOLCHAIN_HAS_THREADS
+ depends on BR2_USE_MMU
+ depends on !BR2_STATIC_LIBS
+ depends on BR2_INSTALL_LIBSTDCPP
+ select BR2_PACKAGE_OPENSSL
+ select BR2_PACKAGE_LIBFUSE
+ select BR2_PACKAGE_LIBGLIB2
+ select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
+ help
+ EncFS provides an encrypted filesystem in user-space. It runs in
+ userspace, using the FUSE library for the filesystem interface.
+
+ https://github.com/vgough/encfs
+
+comment "encfs needs a toolchain w/ wchar, threads, dynamic library, C++"
+ depends on BR2_USE_MMU
+ depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || !BR2_INSTALL_LIBSTDCPP
diff --git a/package/encfs/encfs.hash b/package/encfs/encfs.hash
new file mode 100644
index 0000000..2375a0b
--- /dev/null
+++ b/package/encfs/encfs.hash
@@ -0,0 +1,9 @@
+# Locally calculated after checking pgp signature
+# https://github.com/vgough/encfs/releases/download/v1.9.5/encfs-1.9.5.tar.gz.asc
+# with primary key fingerprint: FFF3 E014 44FE D7C3 16A3 545A 895F 5BC1 23A0 2740
+sha256 4709f05395ccbad6c0a5b40a4619d60aafe3473b1a79bafb3aa700b1f756fd63 encfs-1.9.5.tar.gz
+
+# Hash for license files:
+sha256 fdba14f0ecddd3e6d31a76177045d99df90070e6377967fdbfbc616166e0dcce COPYING
+sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING.GPL
+sha256 da7eabb7bafdf7d3ae5e9f223aa5bdc1eece45ac569dc21b3b037520b4464768 COPYING.LGPL
diff --git a/package/encfs/encfs.mk b/package/encfs/encfs.mk
new file mode 100644
index 0000000..fafe6f9
--- /dev/null
+++ b/package/encfs/encfs.mk
@@ -0,0 +1,24 @@
+################################################################################
+#
+# encfs
+#
+################################################################################
+
+ENCFS_VERSION = 1.9.5
+ENCFS_SOURCE = encfs-$(ENCFS_VERSION).tar.gz
+ENCFS_SITE = https://github.com/vgough/encfs/releases/download/v$(ENCFS_VERSION)
+ENCFS_LICENSE = LGPL (libencfs), GPL, MIT (easylogging++)
+ENCFS_LICENSE_FILES = COPYING COPYING.GPL COPYING.LGPL
+ENCFS_DEPENDENCIES = \
+ libfuse openssl libglib2 $(if $(BR2_PACKAGE_LIBICONV),libiconv)
+
+# The CMAKE_RUNTIME_OUTPUT_DIRECTORY variable is needed to avoid the error
+# message during linking the CXX executables:
+# arm-buildroot-linux-uclibcgnueabihf/bin/ld: cannot open output file encfs: Is a directory
+ENCFS_CONF_OPTS += \
+ -DCMAKE_USE_INTERNAL_TINYXML=OFF \
+ -DFUSE_INCLUDE_DIR=$(STAGING_DIR)/libfuse* \
+ -DBUILD_UNIT_TESTS=0 \
+ -DCMAKE_RUNTIME_OUTPUT_DIRECTORY=$(BUILD_DIR)/usr/bin
+
+$(eval $(cmake-package))
--
Yair Ben-Avraham
Tk Open Systems Ltd.
+972.52.343.2297
yairba at tkos.co.il
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [Buildroot] [PATCH v2 1/1] encfs: new package
2018-09-03 6:58 [Buildroot] [PATCH v2 1/1] encfs: new package Yair Ben Avraham
@ 2018-09-05 13:30 ` Baruch Siach
2018-09-06 19:27 ` Thomas Petazzoni
0 siblings, 1 reply; 3+ messages in thread
From: Baruch Siach @ 2018-09-05 13:30 UTC (permalink / raw)
To: buildroot
Hi Yair,
On Mon, Sep 03, 2018 at 09:58:13AM +0300, Yair Ben Avraham wrote:
> EncFS: an Encrypted Filesystem for FUSE.
>
> Signed-off-by: Yair Ben Avraham <yairba@tkos.co.il>
[...]
> diff --git a/package/encfs/encfs.hash b/package/encfs/encfs.hash
> new file mode 100644
> index 0000000..2375a0b
> --- /dev/null
> +++ b/package/encfs/encfs.hash
> @@ -0,0 +1,9 @@
> +# Locally calculated after checking pgp signature
> +# https://github.com/vgough/encfs/releases/download/v1.9.5/encfs-1.9.5.tar.gz.asc
> +# with primary key fingerprint: FFF3 E014 44FE D7C3 16A3 545A 895F 5BC1 23A0 2740
> +sha256 4709f05395ccbad6c0a5b40a4619d60aafe3473b1a79bafb3aa700b1f756fd63 encfs-1.9.5.tar.gz
> +
> +# Hash for license files:
> +sha256 fdba14f0ecddd3e6d31a76177045d99df90070e6377967fdbfbc616166e0dcce COPYING
> +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING.GPL
> +sha256 da7eabb7bafdf7d3ae5e9f223aa5bdc1eece45ac569dc21b3b037520b4464768 COPYING.LGPL
> diff --git a/package/encfs/encfs.mk b/package/encfs/encfs.mk
> new file mode 100644
> index 0000000..fafe6f9
> --- /dev/null
> +++ b/package/encfs/encfs.mk
> @@ -0,0 +1,24 @@
> +################################################################################
> +#
> +# encfs
> +#
> +################################################################################
> +
> +ENCFS_VERSION = 1.9.5
> +ENCFS_SOURCE = encfs-$(ENCFS_VERSION).tar.gz
This is the default, so not needed.
> +ENCFS_SITE = https://github.com/vgough/encfs/releases/download/v$(ENCFS_VERSION)
> +ENCFS_LICENSE = LGPL (libencfs), GPL, MIT (easylogging++)
We use SPDX license identifiers. These identifiers denote the license version,
and whether "any later version" applies. So in this case:
ENCFS_LICENSE = LGPL-3.0+ (libencfs), GPL-2.0+, MIT (easylogging++)
> +ENCFS_LICENSE_FILES = COPYING COPYING.GPL COPYING.LGPL
> +ENCFS_DEPENDENCIES = \
> + libfuse openssl libglib2 $(if $(BR2_PACKAGE_LIBICONV),libiconv)
> +
> +# The CMAKE_RUNTIME_OUTPUT_DIRECTORY variable is needed to avoid the error
> +# message during linking the CXX executables:
> +# arm-buildroot-linux-uclibcgnueabihf/bin/ld: cannot open output file encfs: Is a directory
> +ENCFS_CONF_OPTS += \
> + -DCMAKE_USE_INTERNAL_TINYXML=OFF \
Isn't tinyxml2 a mandatory dependency? INSTALL.md indicates that it is.
If tinyxml2 is indeed a mandatory dependency you should add it as an optional
dependency, so that the Buildroot tinyxml2 package is used when
BR2_PACKAGE_TINYXML2 is enabled. Otherwise, the bundled library is used, and
you should add its license (zlib) to ENCFS_LICENSE.
> + -DFUSE_INCLUDE_DIR=$(STAGING_DIR)/libfuse* \
Are you sure this is correct? There are no libfuse* files or directories under
$(STAGING_DIR). Maybe '-DFUSE_INCLUDE_DIR=$(STAGING_DIR)/usr/include' ?
> + -DBUILD_UNIT_TESTS=0 \
> + -DCMAKE_RUNTIME_OUTPUT_DIRECTORY=$(BUILD_DIR)/usr/bin
> +
> +$(eval $(cmake-package))
baruch
--
http://baruch.siach.name/blog/ ~. .~ Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
- baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -
^ permalink raw reply [flat|nested] 3+ messages in thread
* [Buildroot] [PATCH v2 1/1] encfs: new package
2018-09-05 13:30 ` Baruch Siach
@ 2018-09-06 19:27 ` Thomas Petazzoni
0 siblings, 0 replies; 3+ messages in thread
From: Thomas Petazzoni @ 2018-09-06 19:27 UTC (permalink / raw)
To: buildroot
Hello Baruch,
On Wed, 5 Sep 2018 16:30:38 +0300, Baruch Siach wrote:
> If tinyxml2 is indeed a mandatory dependency you should add it as an optional
> dependency, so that the Buildroot tinyxml2 package is used when
> BR2_PACKAGE_TINYXML2 is enabled. Otherwise, the bundled library is used, and
> you should add its license (zlib) to ENCFS_LICENSE.
No, I think we really prefer to always use the external library when
possible, and avoid bundled libraries.
Best regards,
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2018-09-06 19:27 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-09-03 6:58 [Buildroot] [PATCH v2 1/1] encfs: new package Yair Ben Avraham
2018-09-05 13:30 ` Baruch Siach
2018-09-06 19:27 ` Thomas Petazzoni
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.