All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/1] git-crypt: new package
@ 2017-01-30  0:28 Francesco Negri
  2017-01-30  5:28 ` Baruch Siach
  2017-01-30 10:58 ` [Buildroot] [PATCH v2 " Francesco Negri
  0 siblings, 2 replies; 14+ messages in thread
From: Francesco Negri @ 2017-01-30  0:28 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Francesco Negri <francesconegri@gmail.com>
---
 package/Config.in                |  1 +
 package/git-crypt/Config.in      |  9 +++++++++
 package/git-crypt/git-crypt.hash |  2 ++
 package/git-crypt/git-crypt.mk   | 21 +++++++++++++++++++++
 4 files changed, 33 insertions(+)
 create mode 100644 package/git-crypt/Config.in
 create mode 100644 package/git-crypt/git-crypt.hash
 create mode 100644 package/git-crypt/git-crypt.mk

diff --git a/package/Config.in b/package/Config.in
index 6a3a1a7c7..067ff3cc9 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -138,6 +138,7 @@ menu "Development tools"
 	source "package/gawk/Config.in"
 	source "package/gettext/Config.in"
 	source "package/git/Config.in"
+	source "package/git-crypt/Config.in"
 	source "package/gperf/Config.in"
 	source "package/grep/Config.in"
 	source "package/jq/Config.in"
diff --git a/package/git-crypt/Config.in b/package/git-crypt/Config.in
new file mode 100644
index 000000000..15a12b5c6
--- /dev/null
+++ b/package/git-crypt/Config.in
@@ -0,0 +1,9 @@
+config BR2_PACKAGE_GIT_CRYPT
+	bool "git-crypt"
+	depends on BR2_INSTALL_LIBSTDCPP
+	select BR2_PACKAGE_GIT
+	help
+	  git-crypt enables transparent encryption and decryption of files in a
+	  git repository.
+
+	  https://github.com/AGWA/git-crypt
diff --git a/package/git-crypt/git-crypt.hash b/package/git-crypt/git-crypt.hash
new file mode 100644
index 000000000..fe18498cc
--- /dev/null
+++ b/package/git-crypt/git-crypt.hash
@@ -0,0 +1,2 @@
+# Locally computed
+sha256 5150144a528bc74eeb47a2884cf2fefe978a1d1dc0223bbfcac395fa6a73a410 git-crypt-0.5.0.tar.gz
diff --git a/package/git-crypt/git-crypt.mk b/package/git-crypt/git-crypt.mk
new file mode 100644
index 000000000..9f7df223d
--- /dev/null
+++ b/package/git-crypt/git-crypt.mk
@@ -0,0 +1,21 @@
+################################################################################
+#
+# git-crypt
+#
+################################################################################
+
+GIT_CRYPT_VERSION = 0.5.0
+GIT_CRYPT_SITE = $(call github,agwa,git-crypt,$(GIT_CRYPT_VERSION))
+GIT_CRYPT_DEPENDENCIES = git openssl
+GIT_CRYPT_LICENSE = GPLv3
+GIT_CRYPT_LICENSE_FILES = COPYING
+
+define GIT_CRYPT_BUILD_CMDS
+	$(MAKE) CXX="$(TARGET_CXX)" -C $(@D) all
+endef
+
+define GIT_CRYPT_INSTALL_TARGET_CMDS
+	$(INSTALL) -D -m 0755 $(@D)/git-crypt $(TARGET_DIR)/usr/bin/git-crypt
+endef
+
+$(eval $(generic-package))
-- 
2.11.0

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 1/1] git-crypt: new package
  2017-01-30  0:28 [Buildroot] [PATCH 1/1] git-crypt: new package Francesco Negri
@ 2017-01-30  5:28 ` Baruch Siach
  2017-01-30  9:38   ` Francesco Negri
  2017-01-30 10:54   ` Thomas Petazzoni
  2017-01-30 10:58 ` [Buildroot] [PATCH v2 " Francesco Negri
  1 sibling, 2 replies; 14+ messages in thread
From: Baruch Siach @ 2017-01-30  5:28 UTC (permalink / raw)
  To: buildroot

Hi Francesco,

On Mon, Jan 30, 2017 at 01:28:53AM +0100, Francesco Negri wrote:
> Signed-off-by: Francesco Negri <francesconegri@gmail.com>
> ---
>  package/Config.in                |  1 +
>  package/git-crypt/Config.in      |  9 +++++++++
>  package/git-crypt/git-crypt.hash |  2 ++
>  package/git-crypt/git-crypt.mk   | 21 +++++++++++++++++++++
>  4 files changed, 33 insertions(+)
>  create mode 100644 package/git-crypt/Config.in
>  create mode 100644 package/git-crypt/git-crypt.hash
>  create mode 100644 package/git-crypt/git-crypt.mk
> 
> diff --git a/package/Config.in b/package/Config.in
> index 6a3a1a7c7..067ff3cc9 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -138,6 +138,7 @@ menu "Development tools"
>  	source "package/gawk/Config.in"
>  	source "package/gettext/Config.in"
>  	source "package/git/Config.in"
> +	source "package/git-crypt/Config.in"
>  	source "package/gperf/Config.in"
>  	source "package/grep/Config.in"
>  	source "package/jq/Config.in"
> diff --git a/package/git-crypt/Config.in b/package/git-crypt/Config.in
> new file mode 100644
> index 000000000..15a12b5c6
> --- /dev/null
> +++ b/package/git-crypt/Config.in
> @@ -0,0 +1,9 @@
> +config BR2_PACKAGE_GIT_CRYPT
> +	bool "git-crypt"
> +	depends on BR2_INSTALL_LIBSTDCPP
> +	select BR2_PACKAGE_GIT

You should also propagate BR2_PACKAGE_GIT dependency here (BR2_USE_MMU).

> +	help
> +	  git-crypt enables transparent encryption and decryption of files in a
> +	  git repository.
> +
> +	  https://github.com/AGWA/git-crypt

https://www.agwa.name/projects/git-crypt/ looks more informative.

A dependencies comment is missing. See section 17.2.4 in the manual[1].

> diff --git a/package/git-crypt/git-crypt.hash b/package/git-crypt/git-crypt.hash
> new file mode 100644
> index 000000000..fe18498cc
> --- /dev/null
> +++ b/package/git-crypt/git-crypt.hash
> @@ -0,0 +1,2 @@
> +# Locally computed
> +sha256 5150144a528bc74eeb47a2884cf2fefe978a1d1dc0223bbfcac395fa6a73a410 git-crypt-0.5.0.tar.gz

Upstream tarball (see below) has upstream provided hash[2].

> diff --git a/package/git-crypt/git-crypt.mk b/package/git-crypt/git-crypt.mk
> new file mode 100644
> index 000000000..9f7df223d
> --- /dev/null
> +++ b/package/git-crypt/git-crypt.mk
> @@ -0,0 +1,21 @@
> +################################################################################
> +#
> +# git-crypt
> +#
> +################################################################################
> +
> +GIT_CRYPT_VERSION = 0.5.0
> +GIT_CRYPT_SITE = $(call github,agwa,git-crypt,$(GIT_CRYPT_VERSION))

Any reason not to use upstream tarball?

https://www.agwa.name/projects/git-crypt/downloads/git-crypt-0.5.0.tar.gz

> +GIT_CRYPT_DEPENDENCIES = git openssl

A 'select BR2_PACKAGE_OPENSSL' in Config.in is missing.

> +GIT_CRYPT_LICENSE = GPLv3
> +GIT_CRYPT_LICENSE_FILES = COPYING
> +
> +define GIT_CRYPT_BUILD_CMDS
> +	$(MAKE) CXX="$(TARGET_CXX)" -C $(@D) all
> +endef
> +
> +define GIT_CRYPT_INSTALL_TARGET_CMDS
> +	$(INSTALL) -D -m 0755 $(@D)/git-crypt $(TARGET_DIR)/usr/bin/git-crypt
> +endef
> +
> +$(eval $(generic-package))

baruch

[1] http://nightly.buildroot.org/manual.html

[2] https://lists.cloudmutt.com/pipermail/git-crypt-announce/2015-May/000003.html

-- 
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il -

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 1/1] git-crypt: new package
  2017-01-30  5:28 ` Baruch Siach
@ 2017-01-30  9:38   ` Francesco Negri
  2017-01-30 10:54   ` Thomas Petazzoni
  1 sibling, 0 replies; 14+ messages in thread
From: Francesco Negri @ 2017-01-30  9:38 UTC (permalink / raw)
  To: buildroot

Hi Baruch. Thanks for your help, this is my first patch for buildroot
and I am still learning how things work.

On 30 Jan 2017 6:28 am, "Baruch Siach" <baruch@tkos.co.il> wrote:
> You should also propagate BR2_PACKAGE_GIT dependency here (BR2_USE_MMU).

Right, will do.

> https://www.agwa.name/projects/git-crypt/ looks more informative.

Agreed.

> A dependencies comment is missing. See section 17.2.4 in the manual[1].

Sorry, missed that part. I will add it.

> Upstream tarball (see below) has upstream provided hash[2].
> Any reason not to use upstream tarball?

No reason, I simply didn't notice the tarball and the hash were
available, I will use those.

> A 'select BR2_PACKAGE_OPENSSL' in Config.in is missing.

Thanks, will add.

Francesco

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 1/1] git-crypt: new package
  2017-01-30  5:28 ` Baruch Siach
  2017-01-30  9:38   ` Francesco Negri
@ 2017-01-30 10:54   ` Thomas Petazzoni
  1 sibling, 0 replies; 14+ messages in thread
From: Thomas Petazzoni @ 2017-01-30 10:54 UTC (permalink / raw)
  To: buildroot

Hello,

On Mon, 30 Jan 2017 07:28:32 +0200, Baruch Siach wrote:
> > +define GIT_CRYPT_BUILD_CMDS
> > +	$(MAKE) CXX="$(TARGET_CXX)" -C $(@D) all

Please use:

	$(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) all

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH v2 1/1] git-crypt: new package
  2017-01-30  0:28 [Buildroot] [PATCH 1/1] git-crypt: new package Francesco Negri
  2017-01-30  5:28 ` Baruch Siach
@ 2017-01-30 10:58 ` Francesco Negri
  2017-01-30 11:02   ` Baruch Siach
  2017-01-30 13:27   ` [Buildroot] [PATCH v3 " Francesco Negri
  1 sibling, 2 replies; 14+ messages in thread
From: Francesco Negri @ 2017-01-30 10:58 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Francesco Negri <francesconegri@gmail.com>
---
Changes v1 -> v2:
  - added BR2_USE_MMU and BR2_PACKAGE_OPENSSL to Config.in
  - added dependency comment (hope it is correct!)
  - download from official website instead of GitHub
  - use hash from git-crypt mailing list
---
 package/Config.in                |  1 +
 package/git-crypt/Config.in      | 15 +++++++++++++++
 package/git-crypt/git-crypt.hash |  2 ++
 package/git-crypt/git-crypt.mk   | 23 +++++++++++++++++++++++
 4 files changed, 41 insertions(+)
 create mode 100644 package/git-crypt/Config.in
 create mode 100644 package/git-crypt/git-crypt.hash
 create mode 100644 package/git-crypt/git-crypt.mk

diff --git a/package/Config.in b/package/Config.in
index 6a3a1a7c7..067ff3cc9 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -138,6 +138,7 @@ menu "Development tools"
 	source "package/gawk/Config.in"
 	source "package/gettext/Config.in"
 	source "package/git/Config.in"
+	source "package/git-crypt/Config.in"
 	source "package/gperf/Config.in"
 	source "package/grep/Config.in"
 	source "package/jq/Config.in"
diff --git a/package/git-crypt/Config.in b/package/git-crypt/Config.in
new file mode 100644
index 000000000..e7a67ae47
--- /dev/null
+++ b/package/git-crypt/Config.in
@@ -0,0 +1,15 @@
+config BR2_PACKAGE_GIT_CRYPT
+	bool "git-crypt"
+	depends on BR2_INSTALL_LIBSTDCPP
+	select BR2_PACKAGE_GIT
+	select BR2_USE_MMU # git
+	select BR2_PACKAGE_OPENSSL
+	help
+	  git-crypt enables transparent encryption and decryption of files in a
+	  git repository.
+
+	  https://www.agwa.name/projects/git-crypt/
+
+comment "git-crypt needs a toolchain w/ C++"
+	depends on !BR2_INSTALL_LIBSTDCPP
+	depends on BR2_USE_MMU
diff --git a/package/git-crypt/git-crypt.hash b/package/git-crypt/git-crypt.hash
new file mode 100644
index 000000000..8589f03f7
--- /dev/null
+++ b/package/git-crypt/git-crypt.hash
@@ -0,0 +1,2 @@
+# Hash from: https://lists.cloudmutt.com/pipermail/git-crypt-announce/2015-May/000003.html
+sha256 0a8f92c0a0a125bf768d0c054d947ca4e4b8d6556454b0e7e87fb907ee17cf06 git-crypt-0.5.0.tar.gz
diff --git a/package/git-crypt/git-crypt.mk b/package/git-crypt/git-crypt.mk
new file mode 100644
index 000000000..13f8f435b
--- /dev/null
+++ b/package/git-crypt/git-crypt.mk
@@ -0,0 +1,23 @@
+################################################################################
+#
+# git-crypt
+#
+################################################################################
+
+GIT_CRYPT_VERSION = 0.5.0
+
+GIT_CRYPT_SOURCE = git-crypt-$(GIT_CRYPT_VERSION).tar.gz
+GIT_CRYPT_SITE = https://www.agwa.name/projects/git-crypt/downloads
+GIT_CRYPT_DEPENDENCIES = git openssl
+GIT_CRYPT_LICENSE = GPLv3
+GIT_CRYPT_LICENSE_FILES = COPYING
+
+define GIT_CRYPT_BUILD_CMDS
+	$(MAKE) CXX="$(TARGET_CXX)" -C $(@D) all
+endef
+
+define GIT_CRYPT_INSTALL_TARGET_CMDS
+	$(INSTALL) -D -m 0755 $(@D)/git-crypt $(TARGET_DIR)/usr/bin/git-crypt
+endef
+
+$(eval $(generic-package))
-- 
2.11.0

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH v2 1/1] git-crypt: new package
  2017-01-30 10:58 ` [Buildroot] [PATCH v2 " Francesco Negri
@ 2017-01-30 11:02   ` Baruch Siach
  2017-01-30 11:07     ` Francesco Negri
  2017-01-30 13:27   ` [Buildroot] [PATCH v3 " Francesco Negri
  1 sibling, 1 reply; 14+ messages in thread
From: Baruch Siach @ 2017-01-30 11:02 UTC (permalink / raw)
  To: buildroot

Hi Francesco,

On Mon, Jan 30, 2017 at 11:58:08AM +0100, Francesco Negri wrote:
> Signed-off-by: Francesco Negri <francesconegri@gmail.com>
> ---
> Changes v1 -> v2:
>   - added BR2_USE_MMU and BR2_PACKAGE_OPENSSL to Config.in
>   - added dependency comment (hope it is correct!)
>   - download from official website instead of GitHub
>   - use hash from git-crypt mailing list
> ---
>  package/Config.in                |  1 +
>  package/git-crypt/Config.in      | 15 +++++++++++++++
>  package/git-crypt/git-crypt.hash |  2 ++
>  package/git-crypt/git-crypt.mk   | 23 +++++++++++++++++++++++
>  4 files changed, 41 insertions(+)
>  create mode 100644 package/git-crypt/Config.in
>  create mode 100644 package/git-crypt/git-crypt.hash
>  create mode 100644 package/git-crypt/git-crypt.mk
> 
> diff --git a/package/Config.in b/package/Config.in
> index 6a3a1a7c7..067ff3cc9 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -138,6 +138,7 @@ menu "Development tools"
>  	source "package/gawk/Config.in"
>  	source "package/gettext/Config.in"
>  	source "package/git/Config.in"
> +	source "package/git-crypt/Config.in"
>  	source "package/gperf/Config.in"
>  	source "package/grep/Config.in"
>  	source "package/jq/Config.in"
> diff --git a/package/git-crypt/Config.in b/package/git-crypt/Config.in
> new file mode 100644
> index 000000000..e7a67ae47
> --- /dev/null
> +++ b/package/git-crypt/Config.in
> @@ -0,0 +1,15 @@
> +config BR2_PACKAGE_GIT_CRYPT
> +	bool "git-crypt"
> +	depends on BR2_INSTALL_LIBSTDCPP
> +	select BR2_PACKAGE_GIT
> +	select BR2_USE_MMU # git

You can't select BR2_USE_MMU; it's determined by the target architecture. You 
need to depend on BR2_USE_MMU.

> +	select BR2_PACKAGE_OPENSSL
> +	help
> +	  git-crypt enables transparent encryption and decryption of files in a
> +	  git repository.
> +
> +	  https://www.agwa.name/projects/git-crypt/
> +
> +comment "git-crypt needs a toolchain w/ C++"
> +	depends on !BR2_INSTALL_LIBSTDCPP
> +	depends on BR2_USE_MMU
> diff --git a/package/git-crypt/git-crypt.hash b/package/git-crypt/git-crypt.hash
> new file mode 100644
> index 000000000..8589f03f7
> --- /dev/null
> +++ b/package/git-crypt/git-crypt.hash
> @@ -0,0 +1,2 @@
> +# Hash from: https://lists.cloudmutt.com/pipermail/git-crypt-announce/2015-May/000003.html
> +sha256 0a8f92c0a0a125bf768d0c054d947ca4e4b8d6556454b0e7e87fb907ee17cf06 git-crypt-0.5.0.tar.gz
> diff --git a/package/git-crypt/git-crypt.mk b/package/git-crypt/git-crypt.mk
> new file mode 100644
> index 000000000..13f8f435b
> --- /dev/null
> +++ b/package/git-crypt/git-crypt.mk
> @@ -0,0 +1,23 @@
> +################################################################################
> +#
> +# git-crypt
> +#
> +################################################################################
> +
> +GIT_CRYPT_VERSION = 0.5.0
> +
> +GIT_CRYPT_SOURCE = git-crypt-$(GIT_CRYPT_VERSION).tar.gz

This is the default, so it can be dropped.

> +GIT_CRYPT_SITE = https://www.agwa.name/projects/git-crypt/downloads
> +GIT_CRYPT_DEPENDENCIES = git openssl
> +GIT_CRYPT_LICENSE = GPLv3
> +GIT_CRYPT_LICENSE_FILES = COPYING
> +
> +define GIT_CRYPT_BUILD_CMDS
> +	$(MAKE) CXX="$(TARGET_CXX)" -C $(@D) all

You missed Thomas' comment.

> +endef
> +
> +define GIT_CRYPT_INSTALL_TARGET_CMDS
> +	$(INSTALL) -D -m 0755 $(@D)/git-crypt $(TARGET_DIR)/usr/bin/git-crypt
> +endef
> +
> +$(eval $(generic-package))

baruch

-- 
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il -

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH v2 1/1] git-crypt: new package
  2017-01-30 11:02   ` Baruch Siach
@ 2017-01-30 11:07     ` Francesco Negri
  2017-01-30 12:08       ` Francesco Negri
  0 siblings, 1 reply; 14+ messages in thread
From: Francesco Negri @ 2017-01-30 11:07 UTC (permalink / raw)
  To: buildroot

Hi,

> You can't select BR2_USE_MMU; it's determined by the target architecture. You
need to depend on BR2_USE_MMU.

Sorry, my bad.

> This is the default, so it can be dropped.

K, will do.

> You missed Thomas' comment.

Apologies, I read Thomas' comment a few seconds after submitting v2.

I tried using the command suggested by Thomas, but the build fails with:

  undefined reference to `AES_set_encrypt_key'

followed by a few other "undefined reference" errors.

I'm not sure how to fix it.

Thanks,
Francesco

On Mon, Jan 30, 2017 at 12:02 PM, Baruch Siach <baruch@tkos.co.il> wrote:
> Hi Francesco,
>
> On Mon, Jan 30, 2017 at 11:58:08AM +0100, Francesco Negri wrote:
>> Signed-off-by: Francesco Negri <francesconegri@gmail.com>
>> ---
>> Changes v1 -> v2:
>>   - added BR2_USE_MMU and BR2_PACKAGE_OPENSSL to Config.in
>>   - added dependency comment (hope it is correct!)
>>   - download from official website instead of GitHub
>>   - use hash from git-crypt mailing list
>> ---
>>  package/Config.in                |  1 +
>>  package/git-crypt/Config.in      | 15 +++++++++++++++
>>  package/git-crypt/git-crypt.hash |  2 ++
>>  package/git-crypt/git-crypt.mk   | 23 +++++++++++++++++++++++
>>  4 files changed, 41 insertions(+)
>>  create mode 100644 package/git-crypt/Config.in
>>  create mode 100644 package/git-crypt/git-crypt.hash
>>  create mode 100644 package/git-crypt/git-crypt.mk
>>
>> diff --git a/package/Config.in b/package/Config.in
>> index 6a3a1a7c7..067ff3cc9 100644
>> --- a/package/Config.in
>> +++ b/package/Config.in
>> @@ -138,6 +138,7 @@ menu "Development tools"
>>       source "package/gawk/Config.in"
>>       source "package/gettext/Config.in"
>>       source "package/git/Config.in"
>> +     source "package/git-crypt/Config.in"
>>       source "package/gperf/Config.in"
>>       source "package/grep/Config.in"
>>       source "package/jq/Config.in"
>> diff --git a/package/git-crypt/Config.in b/package/git-crypt/Config.in
>> new file mode 100644
>> index 000000000..e7a67ae47
>> --- /dev/null
>> +++ b/package/git-crypt/Config.in
>> @@ -0,0 +1,15 @@
>> +config BR2_PACKAGE_GIT_CRYPT
>> +     bool "git-crypt"
>> +     depends on BR2_INSTALL_LIBSTDCPP
>> +     select BR2_PACKAGE_GIT
>> +     select BR2_USE_MMU # git
>
> You can't select BR2_USE_MMU; it's determined by the target architecture. You
> need to depend on BR2_USE_MMU.
>
>> +     select BR2_PACKAGE_OPENSSL
>> +     help
>> +       git-crypt enables transparent encryption and decryption of files in a
>> +       git repository.
>> +
>> +       https://www.agwa.name/projects/git-crypt/
>> +
>> +comment "git-crypt needs a toolchain w/ C++"
>> +     depends on !BR2_INSTALL_LIBSTDCPP
>> +     depends on BR2_USE_MMU
>> diff --git a/package/git-crypt/git-crypt.hash b/package/git-crypt/git-crypt.hash
>> new file mode 100644
>> index 000000000..8589f03f7
>> --- /dev/null
>> +++ b/package/git-crypt/git-crypt.hash
>> @@ -0,0 +1,2 @@
>> +# Hash from: https://lists.cloudmutt.com/pipermail/git-crypt-announce/2015-May/000003.html
>> +sha256 0a8f92c0a0a125bf768d0c054d947ca4e4b8d6556454b0e7e87fb907ee17cf06 git-crypt-0.5.0.tar.gz
>> diff --git a/package/git-crypt/git-crypt.mk b/package/git-crypt/git-crypt.mk
>> new file mode 100644
>> index 000000000..13f8f435b
>> --- /dev/null
>> +++ b/package/git-crypt/git-crypt.mk
>> @@ -0,0 +1,23 @@
>> +################################################################################
>> +#
>> +# git-crypt
>> +#
>> +################################################################################
>> +
>> +GIT_CRYPT_VERSION = 0.5.0
>> +
>> +GIT_CRYPT_SOURCE = git-crypt-$(GIT_CRYPT_VERSION).tar.gz
>
> This is the default, so it can be dropped.
>
>> +GIT_CRYPT_SITE = https://www.agwa.name/projects/git-crypt/downloads
>> +GIT_CRYPT_DEPENDENCIES = git openssl
>> +GIT_CRYPT_LICENSE = GPLv3
>> +GIT_CRYPT_LICENSE_FILES = COPYING
>> +
>> +define GIT_CRYPT_BUILD_CMDS
>> +     $(MAKE) CXX="$(TARGET_CXX)" -C $(@D) all
>
> You missed Thomas' comment.
>
>> +endef
>> +
>> +define GIT_CRYPT_INSTALL_TARGET_CMDS
>> +     $(INSTALL) -D -m 0755 $(@D)/git-crypt $(TARGET_DIR)/usr/bin/git-crypt
>> +endef
>> +
>> +$(eval $(generic-package))
>
> baruch
>
> --
>      http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
> =}------------------------------------------------ooO--U--Ooo------------{=
>    - baruch at tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il -

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH v2 1/1] git-crypt: new package
  2017-01-30 11:07     ` Francesco Negri
@ 2017-01-30 12:08       ` Francesco Negri
  2017-01-30 12:28         ` Baruch Siach
  0 siblings, 1 reply; 14+ messages in thread
From: Francesco Negri @ 2017-01-30 12:08 UTC (permalink / raw)
  To: buildroot

On Mon, Jan 30, 2017 at 12:07 PM, Francesco Negri
<francesconegri@gmail.com> wrote:
> I tried using the command suggested by Thomas, but the build fails with:

I found the error is caused by $(TARGET_CONFIGURE_OPTS) setting
LDFLAGS="". Setting it to LDFLAGS="-lcrypto" fixes the error. What
would be the best way to do this in git-crypt.mk?

Thanks,
Francesco

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH v2 1/1] git-crypt: new package
  2017-01-30 12:08       ` Francesco Negri
@ 2017-01-30 12:28         ` Baruch Siach
  0 siblings, 0 replies; 14+ messages in thread
From: Baruch Siach @ 2017-01-30 12:28 UTC (permalink / raw)
  To: buildroot

Hi Francesco,

On Mon, Jan 30, 2017 at 01:08:28PM +0100, Francesco Negri wrote:
> On Mon, Jan 30, 2017 at 12:07 PM, Francesco Negri
> <francesconegri@gmail.com> wrote:
> > I tried using the command suggested by Thomas, but the build fails with:
> 
> I found the error is caused by $(TARGET_CONFIGURE_OPTS) setting
> LDFLAGS="". Setting it to LDFLAGS="-lcrypto" fixes the error. What
> would be the best way to do this in git-crypt.mk?

In that case I think it would be better to do

  $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) ...

baruch

-- 
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il -

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH v3 1/1] git-crypt: new package
  2017-01-30 10:58 ` [Buildroot] [PATCH v2 " Francesco Negri
  2017-01-30 11:02   ` Baruch Siach
@ 2017-01-30 13:27   ` Francesco Negri
  2017-01-30 13:38     ` Baruch Siach
  2017-01-30 13:55     ` [Buildroot] [PATCH v4 " Francesco Negri
  1 sibling, 2 replies; 14+ messages in thread
From: Francesco Negri @ 2017-01-30 13:27 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Francesco Negri <francesconegri@gmail.com>
---
Changes v2 -> v3:
  - add TARGET_MAKE_ENV and TARGET_CONFIGURE_OPTS in make cmd
  - use depends, not select, for BR2_USE_MMU
  - remove unnecessary GIT_CRYPT_SOURCE
---
 package/Config.in                |  1 +
 package/git-crypt/Config.in      | 15 +++++++++++++++
 package/git-crypt/git-crypt.hash |  2 ++
 package/git-crypt/git-crypt.mk   | 21 +++++++++++++++++++++
 4 files changed, 39 insertions(+)
 create mode 100644 package/git-crypt/Config.in
 create mode 100644 package/git-crypt/git-crypt.hash
 create mode 100644 package/git-crypt/git-crypt.mk

diff --git a/package/Config.in b/package/Config.in
index 6a3a1a7c7..067ff3cc9 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -138,6 +138,7 @@ menu "Development tools"
 	source "package/gawk/Config.in"
 	source "package/gettext/Config.in"
 	source "package/git/Config.in"
+	source "package/git-crypt/Config.in"
 	source "package/gperf/Config.in"
 	source "package/grep/Config.in"
 	source "package/jq/Config.in"
diff --git a/package/git-crypt/Config.in b/package/git-crypt/Config.in
new file mode 100644
index 000000000..4e1ca4a2b
--- /dev/null
+++ b/package/git-crypt/Config.in
@@ -0,0 +1,15 @@
+config BR2_PACKAGE_GIT_CRYPT
+	bool "git-crypt"
+	depends on BR2_INSTALL_LIBSTDCPP
+	depends on BR2_USE_MMU # git
+	select BR2_PACKAGE_GIT
+	select BR2_PACKAGE_OPENSSL
+	help
+	  git-crypt enables transparent encryption and decryption of files in a
+	  git repository.
+
+	  https://www.agwa.name/projects/git-crypt/
+
+comment "git-crypt needs a toolchain w/ C++"
+	depends on !BR2_INSTALL_LIBSTDCPP
+	depends on BR2_USE_MMU
diff --git a/package/git-crypt/git-crypt.hash b/package/git-crypt/git-crypt.hash
new file mode 100644
index 000000000..8589f03f7
--- /dev/null
+++ b/package/git-crypt/git-crypt.hash
@@ -0,0 +1,2 @@
+# Hash from: https://lists.cloudmutt.com/pipermail/git-crypt-announce/2015-May/000003.html
+sha256 0a8f92c0a0a125bf768d0c054d947ca4e4b8d6556454b0e7e87fb907ee17cf06 git-crypt-0.5.0.tar.gz
diff --git a/package/git-crypt/git-crypt.mk b/package/git-crypt/git-crypt.mk
new file mode 100644
index 000000000..3ef2bd26f
--- /dev/null
+++ b/package/git-crypt/git-crypt.mk
@@ -0,0 +1,21 @@
+################################################################################
+#
+# git-crypt
+#
+################################################################################
+
+GIT_CRYPT_VERSION = 0.5.0
+GIT_CRYPT_SITE = https://www.agwa.name/projects/git-crypt/downloads
+GIT_CRYPT_DEPENDENCIES = git openssl
+GIT_CRYPT_LICENSE = GPLv3
+GIT_CRYPT_LICENSE_FILES = COPYING
+
+define GIT_CRYPT_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) all
+endef
+
+define GIT_CRYPT_INSTALL_TARGET_CMDS
+	$(INSTALL) -D -m 0755 $(@D)/git-crypt $(TARGET_DIR)/usr/bin/git-crypt
+endef
+
+$(eval $(generic-package))
-- 
2.11.0

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH v3 1/1] git-crypt: new package
  2017-01-30 13:27   ` [Buildroot] [PATCH v3 " Francesco Negri
@ 2017-01-30 13:38     ` Baruch Siach
  2017-01-30 13:55     ` [Buildroot] [PATCH v4 " Francesco Negri
  1 sibling, 0 replies; 14+ messages in thread
From: Baruch Siach @ 2017-01-30 13:38 UTC (permalink / raw)
  To: buildroot

Hi Francesco,

Looks good now except for one more comment below.

On Mon, Jan 30, 2017 at 02:27:02PM +0100, Francesco Negri wrote:
> Signed-off-by: Francesco Negri <francesconegri@gmail.com>

[snip]

> diff --git a/package/git-crypt/git-crypt.mk b/package/git-crypt/git-crypt.mk
> new file mode 100644
> index 000000000..3ef2bd26f
> --- /dev/null
> +++ b/package/git-crypt/git-crypt.mk
> @@ -0,0 +1,21 @@
> +################################################################################
> +#
> +# git-crypt
> +#
> +################################################################################
> +
> +GIT_CRYPT_VERSION = 0.5.0
> +GIT_CRYPT_SITE = https://www.agwa.name/projects/git-crypt/downloads
> +GIT_CRYPT_DEPENDENCIES = git openssl
> +GIT_CRYPT_LICENSE = GPLv3
> +GIT_CRYPT_LICENSE_FILES = COPYING

Source code files include the "or any later version" language, so the license 
should be GPLv3+.

A few files (parse_options.*, fhstream.*) are under the MIT license.

The end result it:

GIT_CRYPT_LICENSE = GPLv3+, MIT
GIT_CRYPT_LICENSE_FILES = COPYING parse_options.hpp

baruch

-- 
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il -

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH v4 1/1] git-crypt: new package
  2017-01-30 13:27   ` [Buildroot] [PATCH v3 " Francesco Negri
  2017-01-30 13:38     ` Baruch Siach
@ 2017-01-30 13:55     ` Francesco Negri
  2017-01-30 14:36       ` Peter Korsgaard
  1 sibling, 1 reply; 14+ messages in thread
From: Francesco Negri @ 2017-01-30 13:55 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Francesco Negri <francesconegri@gmail.com>
---
Changes v3 -> v4:
  - more accurate info on licenses
---
 package/Config.in                |  1 +
 package/git-crypt/Config.in      | 15 +++++++++++++++
 package/git-crypt/git-crypt.hash |  2 ++
 package/git-crypt/git-crypt.mk   | 21 +++++++++++++++++++++
 4 files changed, 39 insertions(+)
 create mode 100644 package/git-crypt/Config.in
 create mode 100644 package/git-crypt/git-crypt.hash
 create mode 100644 package/git-crypt/git-crypt.mk

diff --git a/package/Config.in b/package/Config.in
index 6a3a1a7c7..067ff3cc9 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -138,6 +138,7 @@ menu "Development tools"
 	source "package/gawk/Config.in"
 	source "package/gettext/Config.in"
 	source "package/git/Config.in"
+	source "package/git-crypt/Config.in"
 	source "package/gperf/Config.in"
 	source "package/grep/Config.in"
 	source "package/jq/Config.in"
diff --git a/package/git-crypt/Config.in b/package/git-crypt/Config.in
new file mode 100644
index 000000000..4e1ca4a2b
--- /dev/null
+++ b/package/git-crypt/Config.in
@@ -0,0 +1,15 @@
+config BR2_PACKAGE_GIT_CRYPT
+	bool "git-crypt"
+	depends on BR2_INSTALL_LIBSTDCPP
+	depends on BR2_USE_MMU # git
+	select BR2_PACKAGE_GIT
+	select BR2_PACKAGE_OPENSSL
+	help
+	  git-crypt enables transparent encryption and decryption of files in a
+	  git repository.
+
+	  https://www.agwa.name/projects/git-crypt/
+
+comment "git-crypt needs a toolchain w/ C++"
+	depends on !BR2_INSTALL_LIBSTDCPP
+	depends on BR2_USE_MMU
diff --git a/package/git-crypt/git-crypt.hash b/package/git-crypt/git-crypt.hash
new file mode 100644
index 000000000..8589f03f7
--- /dev/null
+++ b/package/git-crypt/git-crypt.hash
@@ -0,0 +1,2 @@
+# Hash from: https://lists.cloudmutt.com/pipermail/git-crypt-announce/2015-May/000003.html
+sha256 0a8f92c0a0a125bf768d0c054d947ca4e4b8d6556454b0e7e87fb907ee17cf06 git-crypt-0.5.0.tar.gz
diff --git a/package/git-crypt/git-crypt.mk b/package/git-crypt/git-crypt.mk
new file mode 100644
index 000000000..fc3e44f81
--- /dev/null
+++ b/package/git-crypt/git-crypt.mk
@@ -0,0 +1,21 @@
+################################################################################
+#
+# git-crypt
+#
+################################################################################
+
+GIT_CRYPT_VERSION = 0.5.0
+GIT_CRYPT_SITE = https://www.agwa.name/projects/git-crypt/downloads
+GIT_CRYPT_DEPENDENCIES = git openssl
+GIT_CRYPT_LICENSE = GPLv3+, MIT
+GIT_CRYPT_LICENSE_FILES = COPYING parse_options.hpp
+
+define GIT_CRYPT_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) all
+endef
+
+define GIT_CRYPT_INSTALL_TARGET_CMDS
+	$(INSTALL) -D -m 0755 $(@D)/git-crypt $(TARGET_DIR)/usr/bin/git-crypt
+endef
+
+$(eval $(generic-package))
-- 
2.11.0

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH v4 1/1] git-crypt: new package
  2017-01-30 13:55     ` [Buildroot] [PATCH v4 " Francesco Negri
@ 2017-01-30 14:36       ` Peter Korsgaard
  0 siblings, 0 replies; 14+ messages in thread
From: Peter Korsgaard @ 2017-01-30 14:36 UTC (permalink / raw)
  To: buildroot

>>>>> "Francesco" == Francesco Negri <francesconegri@gmail.com> writes:

 > Signed-off-by: Francesco Negri <francesconegri@gmail.com>
 > ---
 > Changes v3 -> v4:
 >   - more accurate info on licenses
 > ---
 >  package/Config.in                |  1 +
 >  package/git-crypt/Config.in      | 15 +++++++++++++++
 >  package/git-crypt/git-crypt.hash |  2 ++
 >  package/git-crypt/git-crypt.mk   | 21 +++++++++++++++++++++
 >  4 files changed, 39 insertions(+)
 >  create mode 100644 package/git-crypt/Config.in
 >  create mode 100644 package/git-crypt/git-crypt.hash
 >  create mode 100644 package/git-crypt/git-crypt.mk

 > diff --git a/package/Config.in b/package/Config.in
 > index 6a3a1a7c7..067ff3cc9 100644
 > --- a/package/Config.in
 > +++ b/package/Config.in
 > @@ -138,6 +138,7 @@ menu "Development tools"
 >  	source "package/gawk/Config.in"
 >  	source "package/gettext/Config.in"
 >  	source "package/git/Config.in"
 > +	source "package/git-crypt/Config.in"
 >  	source "package/gperf/Config.in"
 >  	source "package/grep/Config.in"
 >  	source "package/jq/Config.in"
 > diff --git a/package/git-crypt/Config.in b/package/git-crypt/Config.in
 > new file mode 100644
 > index 000000000..4e1ca4a2b
 > --- /dev/null
 > +++ b/package/git-crypt/Config.in
 > @@ -0,0 +1,15 @@
 > +config BR2_PACKAGE_GIT_CRYPT
 > +	bool "git-crypt"
 > +	depends on BR2_INSTALL_LIBSTDCPP
 > +	depends on BR2_USE_MMU # git
 > +	select BR2_PACKAGE_GIT

git is only used at runtime, not build time - So we normally add a
comment about that (and drop it from GIT_CRYPT_DEPENDENCIES).

 > new file mode 100644
 > index 000000000..fc3e44f81
 > --- /dev/null
 > +++ b/package/git-crypt/git-crypt.mk
 > @@ -0,0 +1,21 @@
 > +################################################################################
 > +#
 > +# git-crypt
 > +#
 > +################################################################################
 > +
 > +GIT_CRYPT_VERSION = 0.5.0
 > +GIT_CRYPT_SITE = https://www.agwa.name/projects/git-crypt/downloads
 > +GIT_CRYPT_DEPENDENCIES = git openssl
 > +GIT_CRYPT_LICENSE = GPLv3+, MIT
 > +GIT_CRYPT_LICENSE_FILES = COPYING parse_options.hpp
 > +
 > +define GIT_CRYPT_BUILD_CMDS
 > +	$(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) all

The reason you had to add TARGET_CONFIGURE_OPTS before make was that the
build system hardcoded -lcrypto to link with openssl. This is
unfortunately not enough when linking statically as you also have to
consider the dependencies of openssl (E.G. zlib).

So I changed it to host pkg-config to get the libraries needed for
openssl and pass those in LDFLAGS.

> +endef
 > +
 > +define GIT_CRYPT_INSTALL_TARGET_CMDS
 > +	$(INSTALL) -D -m 0755 $(@D)/git-crypt $(TARGET_DIR)/usr/bin/git-crypt

The buildsystem has a sensible 'make install' target, so I rewrote it to
use that.

Committed with these fixes, thanks.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 1/1] git-crypt: new package
@ 2017-01-30  0:13 Francesco Negri
  0 siblings, 0 replies; 14+ messages in thread
From: Francesco Negri @ 2017-01-30  0:13 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Francesco Negri <francesconegri@gmail.com>
---
 package/Config.in                |  1 +
 package/git-crypt/Config.in      |  9 +++++++++
 package/git-crypt/git-crypt.hash |  2 ++
 package/git-crypt/git-crypt.mk   | 21 +++++++++++++++++++++
 4 files changed, 33 insertions(+)
 create mode 100644 package/git-crypt/Config.in
 create mode 100644 package/git-crypt/git-crypt.hash
 create mode 100644 package/git-crypt/git-crypt.mk

diff --git a/package/Config.in b/package/Config.in
index 6a3a1a7c7..067ff3cc9 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -138,6 +138,7 @@ menu "Development tools"
 	source "package/gawk/Config.in"
 	source "package/gettext/Config.in"
 	source "package/git/Config.in"
+	source "package/git-crypt/Config.in"
 	source "package/gperf/Config.in"
 	source "package/grep/Config.in"
 	source "package/jq/Config.in"
diff --git a/package/git-crypt/Config.in b/package/git-crypt/Config.in
new file mode 100644
index 000000000..15a12b5c6
--- /dev/null
+++ b/package/git-crypt/Config.in
@@ -0,0 +1,9 @@
+config BR2_PACKAGE_GIT_CRYPT
+	bool "git-crypt"
+	depends on BR2_INSTALL_LIBSTDCPP
+	select BR2_PACKAGE_GIT
+	help
+	  git-crypt enables transparent encryption and decryption of files in a
+	  git repository.
+
+	  https://github.com/AGWA/git-crypt
diff --git a/package/git-crypt/git-crypt.hash b/package/git-crypt/git-crypt.hash
new file mode 100644
index 000000000..fe18498cc
--- /dev/null
+++ b/package/git-crypt/git-crypt.hash
@@ -0,0 +1,2 @@
+# Locally computed
+sha256 5150144a528bc74eeb47a2884cf2fefe978a1d1dc0223bbfcac395fa6a73a410 git-crypt-0.5.0.tar.gz
diff --git a/package/git-crypt/git-crypt.mk b/package/git-crypt/git-crypt.mk
new file mode 100644
index 000000000..9f7df223d
--- /dev/null
+++ b/package/git-crypt/git-crypt.mk
@@ -0,0 +1,21 @@
+################################################################################
+#
+# git-crypt
+#
+################################################################################
+
+GIT_CRYPT_VERSION = 0.5.0
+GIT_CRYPT_SITE = $(call github,agwa,git-crypt,$(GIT_CRYPT_VERSION))
+GIT_CRYPT_DEPENDENCIES = git openssl
+GIT_CRYPT_LICENSE = GPLv3
+GIT_CRYPT_LICENSE_FILES = COPYING
+
+define GIT_CRYPT_BUILD_CMDS
+	$(MAKE) CXX="$(TARGET_CXX)" -C $(@D) all
+endef
+
+define GIT_CRYPT_INSTALL_TARGET_CMDS
+	$(INSTALL) -D -m 0755 $(@D)/git-crypt $(TARGET_DIR)/usr/bin/git-crypt
+endef
+
+$(eval $(generic-package))
-- 
2.11.0

^ permalink raw reply related	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2017-01-30 14:36 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-30  0:28 [Buildroot] [PATCH 1/1] git-crypt: new package Francesco Negri
2017-01-30  5:28 ` Baruch Siach
2017-01-30  9:38   ` Francesco Negri
2017-01-30 10:54   ` Thomas Petazzoni
2017-01-30 10:58 ` [Buildroot] [PATCH v2 " Francesco Negri
2017-01-30 11:02   ` Baruch Siach
2017-01-30 11:07     ` Francesco Negri
2017-01-30 12:08       ` Francesco Negri
2017-01-30 12:28         ` Baruch Siach
2017-01-30 13:27   ` [Buildroot] [PATCH v3 " Francesco Negri
2017-01-30 13:38     ` Baruch Siach
2017-01-30 13:55     ` [Buildroot] [PATCH v4 " Francesco Negri
2017-01-30 14:36       ` Peter Korsgaard
  -- strict thread matches above, loose matches on Subject: below --
2017-01-30  0:13 [Buildroot] [PATCH " Francesco Negri

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.