Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 22/34] High availability: add packages
Date: Sat, 7 May 2016 22:38:19 +0200	[thread overview]
Message-ID: <20160507223819.29dcfd5e@free-electrons.com> (raw)
In-Reply-To: <1462002570-14706-22-git-send-email-gilles.chanteperdrix@xenomai.org>

Hello,

On Sat, 30 Apr 2016 09:49:18 +0200, Gilles Chanteperdrix wrote:
> cluster-glue
> corosync
> heartbeat
> libqb
> pacemaker

This should be split in a series of patches, with one package per patch.

>  menu "Javascript"
>  	source "package/angularjs/Config.in"
>  	source "package/bootstrap/Config.in"
> diff --git a/package/cluster-glue/0001-fix-cross-compile.patch b/package/cluster-glue/0001-fix-cross-compile.patch
> new file mode 100644
> index 0000000..2f8bd47
> --- /dev/null
> +++ b/package/cluster-glue/0001-fix-cross-compile.patch
> @@ -0,0 +1,26 @@

All patches need a description and Signed-off-by line.


> diff --git a/package/cluster-glue/Config.in b/package/cluster-glue/Config.in
> new file mode 100644
> index 0000000..8b39152
> --- /dev/null
> +++ b/package/cluster-glue/Config.in
> @@ -0,0 +1,9 @@
> +config BR2_PACKAGE_CLUSTER_GLUE
> +	bool "cluster-glue"
> +	select BR2_PACKAGE_UTIL_LINUX
> +	select BR2_PACKAGE_UTIL_LINUX_LIBUUID

This looks wrong, for two reasons:

 (1) Because you are not replicating the dependencies of util-linux
     here.

 (2) Because this package has many more packages in its
     <pkg>_DEPENDENCIES variable than just util-linux. For example,
     libxml2, libglib2, etc. They should all be selected here as well.


> +CLUSTER_GLUE_VERSION = 0a7add1d9996
> +CLUSTER_GLUE_SOURCE = $(CLUSTER_GLUE_VERSION).tar.bz2
> +CLUSTER_GLUE_SITE =  http://hg.linux-ha.org/glue/archive
> +CLUSTER_GLUE_LICENSE = LGPLv2.1+ (library), GPLv2+ (programs)
> +CLUSTER_GLUE_LICENSE_FILES = COPYING COPYING.LIB
> +CLUSTER_GLUE_DEPENDENCIES += host-pkgconf host-python libtool util-linux bzip2 libglib2 libxml2

The dependency on libtool is useless, it's automatically added by
<pkg>_AUTORECONF = YES.

> +
> +CLUSTER_GLUE_INSTALL_STAGING = YES
> +CLUSTER_GLUE_AUTORECONF = YES

Add a comment above saying why it's needed.

> diff --git a/package/corosync/Config.in b/package/corosync/Config.in
> new file mode 100644
> index 0000000..3855136
> --- /dev/null
> +++ b/package/corosync/Config.in
> @@ -0,0 +1,8 @@
> +config BR2_PACKAGE_COROSYNC
> +	bool "corosync"

Same question as usual: no dependency on threads? MMU? Any other
toolchain feature?

Your .mk file has a dependency on libnss, so you must select it.

> +################################################################################
> +#
> +# corosync
> +#
> +################################################################################
> +
> +COROSYNC_VERSION = 1.4.8
> +COROSYNC_SOURCE = corosync-$(COROSYNC_VERSION).tar.gz
> +COROSYNC_SITE = http://build.clusterlabs.org/corosync/releases
> +COROSYNC_LICENSE = BSD-3c except for crypto.[ch], public domain for crypto.[ch]

Should be:

	BSD-3c (except for crypto.[ch]), Public Domain (crypto.[ch])

> +COROSYNC_LICENSE_FILES = LICENSE
> +COROSYNC_INSTALL_STAGING = YES
> +COROSYNC_DEPENDENCIES += host-pkgconf libnss
> +
> +COROSYNC_CONF_OPTS += ac_cv_func_fnmatch_works=yes
> +
> +$(eval $(autotools-package))
> diff --git a/package/heartbeat/0001-fix-cross-compilation.patch b/package/heartbeat/0001-fix-cross-compilation.patch
> new file mode 100644
> index 0000000..4a653f6
> --- /dev/null
> +++ b/package/heartbeat/0001-fix-cross-compilation.patch

Description + SoB and upstream status (ditto for all patches).

> diff --git a/package/heartbeat/Config.in b/package/heartbeat/Config.in
> new file mode 100644
> index 0000000..0f8ee80
> --- /dev/null
> +++ b/package/heartbeat/Config.in
> @@ -0,0 +1,10 @@
> +config BR2_PACKAGE_HEARTBEAT
> +	bool "heartbeat"
> +	select BR2_PACKAGE_UTIL_LINUX
> +	select BR2_PACKAGE_UTIL_LINUX_LIBUUID
> +	select BR2_PACKAGE_IPROUTE2

Replication of dependencies needed here.

> diff --git a/package/heartbeat/heartbeat.mk b/package/heartbeat/heartbeat.mk
> new file mode 100644
> index 0000000..eedf40f
> --- /dev/null
> +++ b/package/heartbeat/heartbeat.mk
> @@ -0,0 +1,37 @@
> +################################################################################
> +#
> +# heartbeat
> +#
> +################################################################################

Nit: missing empty line.

> +HEARTBEAT_VERSION = 958e11be8686
> +HEARTBEAT_SOURCE = $(HEARTBEAT_VERSION).tar.bz2
> +HEARTBEAT_SITE =  http://hg.linux-ha.org/heartbeat-STABLE_3_0/archive
> +HEARTBEAT_LICENSE = LGPLv2.1+ (library), GPLv2+ (programs)
> +HEARTBEAT_LICENSE_FILES = doc/COPYING doc/COPYING.LGPL
> +HEARTBEAT_DEPENDENCIES += host-pkgconf host-python libtool util-linux bzip2 cluster-glue

libtool dependency not needed. Please sync your Config.in with this
dependency line by selecting all relevant packages.

Another question: is Python 2.x absolutely needed on the host, or can
it work with Python 3.x as well ?

[I'm skipping lots of additional code, for which the same comments
appply.]


> +# This program configure script expects the proper -I flags in CFLAGS and not
> +# CPPFLAGS
> +PACEMAKER_CONF_OPTS += \
> +	CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/usr/include/heartbeat" \
> +	ac_cv_path_HTML2TXT="" \
> +	ac_cv_path_HELP2MAN="" \
> +	ac_cv_path_POD2MAN="" \
> +	ac_cv_path_ASCIIDOC="" \
> +	ac_cv_path_PUBLICAN="" \
> +	ac_cv_path_INKSCAPE="" \
> +	ac_cv_path_XSLTPROC="" \
> +	ac_cv_path_XMLCATALOG="" \
> +	ac_cv_path_FOP="" \

We usually just assign to the empty value, and it's normally sufficient.

Thanks!

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

  reply	other threads:[~2016-05-07 20:38 UTC|newest]

Thread overview: 91+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-04-30  7:43 [Buildroot] Reproducible builds Gilles Chanteperdrix
2016-04-30  7:48 ` [Buildroot] [PATCH 01/34] reproducibility: introduce config knob Gilles Chanteperdrix
2016-04-30  7:48   ` [Buildroot] [PATCH 02/34] reproducibility: override locale and timezone Gilles Chanteperdrix
2016-05-07 13:15     ` Thomas Petazzoni
2016-05-07 18:54       ` Arnout Vandecappelle
2016-06-14 13:53       ` Gilles Chanteperdrix
2016-04-30  7:48   ` [Buildroot] [PATCH 03/34] reproducibility: generate SOURCE_DATE_EPOCH Gilles Chanteperdrix
2016-05-07 13:20     ` Thomas Petazzoni
2016-05-07 21:00     ` Arnout Vandecappelle
2016-05-08 20:22       ` Gilles Chanteperdrix
2016-05-09 23:28         ` Arnout Vandecappelle
2016-05-11  7:17           ` Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 04/34] reproducibility: make rootfs.tar reproducible Gilles Chanteperdrix
2016-05-07 13:23     ` Thomas Petazzoni
2016-05-07 19:51       ` Arnout Vandecappelle
2016-05-08 20:17         ` Gilles Chanteperdrix
2016-05-09 23:29           ` Arnout Vandecappelle
2016-04-30  7:49   ` [Buildroot] [PATCH 05/34] reproducibility/linux: override build timestamp Gilles Chanteperdrix
2016-05-07 20:52     ` Arnout Vandecappelle
2016-04-30  7:49   ` [Buildroot] [PATCH 06/34] reproducibility/busybox: disable build timestamps Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 07/34] reproducibility/libgcrypt: override timestamps Gilles Chanteperdrix
2016-05-07 13:24     ` Thomas Petazzoni
2016-05-07 21:01     ` Arnout Vandecappelle
2016-04-30  7:49   ` [Buildroot] [PATCH 08/34] reproducibility/libgpg-error: " Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 09/34] reproducibility/libglib2: allow removing codegen Gilles Chanteperdrix
2016-05-07 13:28     ` Thomas Petazzoni
2016-05-08 12:51       ` Gustavo Zacarias
2016-05-08 12:56         ` Thomas Petazzoni
2016-05-07 21:04     ` Arnout Vandecappelle
2016-05-08 20:25       ` Gilles Chanteperdrix
2016-05-09 23:40         ` Arnout Vandecappelle
2016-05-10 19:42           ` Gilles Chanteperdrix
2016-05-12 20:05             ` Arnout Vandecappelle
2016-05-14 13:34               ` Gilles Chanteperdrix
2016-05-14 23:48                 ` Arnout Vandecappelle
2016-06-14 14:18                   ` Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 10/34] reproducibility/sysstat: override gcc macros Gilles Chanteperdrix
2016-05-07 21:07     ` Arnout Vandecappelle
2016-04-30  7:49   ` [Buildroot] [PATCH 11/34] reproducibility/vim: make vim reproducible Gilles Chanteperdrix
2016-05-07 13:30     ` Thomas Petazzoni
2016-05-08 20:26       ` Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 12/34] reproducibility/wireshark: remove documentation Gilles Chanteperdrix
2016-05-07 13:30     ` Thomas Petazzoni
2016-04-30  7:49   ` [Buildroot] [PATCH 13/34] reproducibility/libtool: fix reproducibility issues Gilles Chanteperdrix
2016-05-07 20:22     ` Thomas Petazzoni
2016-05-08 20:15       ` Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 14/34] reproducibility/python: also remove pyo files Gilles Chanteperdrix
2016-05-07 20:24     ` Thomas Petazzoni
2016-04-30  7:49   ` [Buildroot] [PATCH 15/34] reproducibility/gzip: avoid gzip timestamp in rootfs.tar.gz Gilles Chanteperdrix
2016-05-07 20:24     ` Thomas Petazzoni
2016-04-30  7:49   ` [Buildroot] [PATCH 16/34] reproducibility/lzo: forbid lzo with reproducible builds Gilles Chanteperdrix
2016-05-07 20:25     ` Thomas Petazzoni
2016-05-12 20:10       ` Arnout Vandecappelle
2016-04-30  7:49   ` [Buildroot] [PATCH 17/34] reproducibility/libnspr: override build timestamps Gilles Chanteperdrix
2016-05-07 20:27     ` Thomas Petazzoni
2016-05-08 20:32       ` Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 18/34] readline: fix installed libraries permission Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 19/34] reproducibility/python: make python reproducible Gilles Chanteperdrix
2016-05-07 20:29     ` Thomas Petazzoni
2016-05-08 20:19       ` Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 20/34] reproducibility/iproute2: do not rely on host directories Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 21/34] hddtemp: add Gilles Chanteperdrix
2016-05-07 20:31     ` Thomas Petazzoni
2016-05-09  7:38     ` Peter Korsgaard
2016-05-09 19:58       ` Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 22/34] High availability: add packages Gilles Chanteperdrix
2016-05-07 20:38     ` Thomas Petazzoni [this message]
2016-05-08 20:20       ` Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 23/34] pkg-download: allow git+ssh URLs Gilles Chanteperdrix
2016-05-07 20:39     ` Thomas Petazzoni
2016-05-09  6:41       ` Peter Korsgaard
2016-05-09 19:56         ` Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 24/34] grub2: really disable liblzma Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 25/34] grub2: allow full install (for installer images) Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 26/34] reproducibility: cpio: avoid embedding file dates in archive Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 27/34] package/cpio: allow generating host-cpio Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 28/34] reproducibility/fs/cpio: generate archive with host-cpio Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 29/34] cdrkit: add patch allowing to set creation date Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 30/34] reproducibility/fs/iso9660: reproducible iso images Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 31/34] reproducible/syslinux: make syslinux build reproducible Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 32/34] reproducible/iso9660: generate reproducible isos Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 33/34] reproducible/cpio: generate reproducible cpio archives Gilles Chanteperdrix
2016-04-30  7:49   ` [Buildroot] [PATCH 34/34] reproducible/grub2: get a reproducible grub2 full installation Gilles Chanteperdrix
2016-05-07 13:14   ` [Buildroot] [PATCH 01/34] reproducibility: introduce config knob Thomas Petazzoni
2016-05-09  7:42   ` Peter Korsgaard
2016-05-09 12:53     ` Thomas Petazzoni
2016-05-09 13:01       ` Peter Korsgaard
2016-05-09 13:11         ` Thomas Petazzoni
2016-05-07 13:11 ` [Buildroot] Reproducible builds Thomas Petazzoni
2016-05-07 20:55   ` Arnout Vandecappelle
2016-05-08  5:51     ` Thomas Petazzoni

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=20160507223819.29dcfd5e@free-electrons.com \
    --to=thomas.petazzoni@free-electrons.com \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox