Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/3] Added new package 'mc' (Midnight Commander).
@ 2015-03-08 21:37 Mauro Condarelli
  2015-03-08 21:37 ` [Buildroot] [PATCH 2/3] Transformation of package 'at91bootstrap3' to KConfig style Mauro Condarelli
                   ` (3 more replies)
  0 siblings, 4 replies; 11+ messages in thread
From: Mauro Condarelli @ 2015-03-08 21:37 UTC (permalink / raw)
  To: buildroot


Signed-off-by: Mauro Condarelli <mc5686@mclink.it>
---
 package/Config.in    |    1 +
 package/mc/Config.in |   10 ++++++++++
 package/mc/mc.mk     |   27 +++++++++++++++++++++++++++
 3 files changed, 38 insertions(+)
 create mode 100644 package/mc/Config.in
 create mode 100644 package/mc/mc.mk

diff --git a/package/Config.in b/package/Config.in
index cab9382..745426e 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1351,6 +1351,7 @@ menu "Text editors and viewers"
 if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
 	source "package/less/Config.in"
 endif
+	source "package/mc/Config.in"
 	source "package/nano/Config.in"
 	source "package/uemacs/Config.in"
 if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
diff --git a/package/mc/Config.in b/package/mc/Config.in
new file mode 100644
index 0000000..735523f
--- /dev/null
+++ b/package/mc/Config.in
@@ -0,0 +1,10 @@
+# mc prefers slang, but can use ncurses too
+config BR2_PACKAGE_MC
+	bool "mc"
+	select BR2_PACKAGE_LIBGLIB2
+	select BR2_PACKAGE_SLANG if !BR2_PACKAGE_NCURSES
+	help
+	  GNU Midnight Commander is a visual file manager, licensed under GNU General Public License.
+	  It can use either SLang(preferred) or ncurses for screen handling; if neither is enabled SLang will be automatically chosen.
+	  
+	  https://www.midnight-commander.org/
diff --git a/package/mc/mc.mk b/package/mc/mc.mk
new file mode 100644
index 0000000..678e1f7
--- /dev/null
+++ b/package/mc/mc.mk
@@ -0,0 +1,27 @@
+################################################################################
+#
+# mc
+#
+################################################################################
+
+MC_VERSION_MAJOR = 4.8
+MC_VERSION = $(MC_VERSION_MAJOR).13
+MC_SOURCE = mc-$(MC_VERSION).tar.bz2
+MC_SITE = http://ftp.midnight-commander.org
+MC_INSTALL_STAGING = YES
+MC_INSTALL_TARGET = YES
+MC_CONF_OPTS = --disable-shared
+MC_DEPENDENCIES = libglib2 host-pkgconf
+
+# mc prefers slang, so use that if enabled, otherwise
+# fallback to using ncurses.
+# Either or both will be enabled, but we prefer slang.
+ifeq ($(BR2_PACKAGE_SLANG),y)
+MC_DEPENDENCIES += slang
+MC_CONF_OPTS += --with-screen=slang
+else
+MC_DEPENDENCIES += ncurses
+MC_CONF_OPTS += --with-screen=ncurses
+endif
+
+$(eval $(autotools-package))
-- 
1.7.10.4

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

* [Buildroot] [PATCH 2/3] Transformation of package 'at91bootstrap3' to KConfig style.
  2015-03-08 21:37 [Buildroot] [PATCH 1/3] Added new package 'mc' (Midnight Commander) Mauro Condarelli
@ 2015-03-08 21:37 ` Mauro Condarelli
  2015-04-06 10:20   ` Thomas Petazzoni
  2015-03-08 21:37 ` [Buildroot] [PATCH 3/3] Added support for PHP/SQLite3 (non PDO) Mauro Condarelli
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 11+ messages in thread
From: Mauro Condarelli @ 2015-03-08 21:37 UTC (permalink / raw)
  To: buildroot


Signed-off-by: Mauro Condarelli <mc5686@mclink.it>
---
 boot/at91bootstrap3/at91bootstrap3.mk |    9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/boot/at91bootstrap3/at91bootstrap3.mk b/boot/at91bootstrap3/at91bootstrap3.mk
index 098e7bf..37e1bdd 100644
--- a/boot/at91bootstrap3/at91bootstrap3.mk
+++ b/boot/at91bootstrap3/at91bootstrap3.mk
@@ -46,7 +46,14 @@ define AT91BOOTSTRAP3_INSTALL_IMAGES_CMDS
 	cp $(@D)/binaries/*.bin $(BINARIES_DIR)
 endef
 
-$(eval $(generic-package))
+ifeq ($(BR2_TARGET_AT91BOOTSTRAP3_USE_DEFCONFIG),y)
+AT91BOOTSTRAP3_KCONFIG_FILE = $(call qstrip,$(AT91BOOTSTRAP3_DEFCONFIG))
+else ifeq ($(BR2_TARGET_AT91BOOTSTRAP3_USE_CUSTOM_CONFIG),y)
+AT91BOOTSTRAP3_KCONFIG_FILE = $(call qstrip,$(BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_CONFIG_FILE))
+endif
+AT91BOOTSTRAP3_KCONFIG_EDITORS = menuconfig xconfig gconfig
+AT91BOOTSTRAP3_KCONFIG_OPTS = $(AT91BOOTSTRAP3_MAKE_OPTS)
+$(eval $(kconfig-package))
 
 # Checks to give errors that the user can understand
 ifeq ($(filter source,$(MAKECMDGOALS)),)
-- 
1.7.10.4

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

* [Buildroot] [PATCH 3/3] Added support for PHP/SQLite3 (non PDO).
  2015-03-08 21:37 [Buildroot] [PATCH 1/3] Added new package 'mc' (Midnight Commander) Mauro Condarelli
  2015-03-08 21:37 ` [Buildroot] [PATCH 2/3] Transformation of package 'at91bootstrap3' to KConfig style Mauro Condarelli
@ 2015-03-08 21:37 ` Mauro Condarelli
  2015-03-09 12:26   ` Gustavo Zacarias
  2015-03-09 13:08   ` Thomas Petazzoni
  2015-03-09  4:46 ` [Buildroot] [PATCH 1/3] Added new package 'mc' (Midnight Commander) Baruch Siach
  2015-03-09  8:33 ` Thomas Petazzoni
  3 siblings, 2 replies; 11+ messages in thread
From: Mauro Condarelli @ 2015-03-08 21:37 UTC (permalink / raw)
  To: buildroot


Signed-off-by: Mauro Condarelli <mc5686@mclink.it>
---
 package/php/Config.ext |    6 ++++++
 package/php/php.mk     |    4 ++++
 2 files changed, 10 insertions(+)

diff --git a/package/php/Config.ext b/package/php/Config.ext
index daf16c7..57685b2 100644
--- a/package/php/Config.ext
+++ b/package/php/Config.ext
@@ -120,6 +120,12 @@ config BR2_PACKAGE_PHP_EXT_MYSQLI
 	help
 	  MySQL Improved extension support
 
+config BR2_PACKAGE_PHP_EXT_SQLITE
+	bool "SQLite3"
+	select BR2_PACKAGE_SQLITE
+	help
+	  SQLite3 support
+
 config BR2_PACKAGE_PHP_EXT_PDO
 	bool "PDO"
 	help
diff --git a/package/php/php.mk b/package/php/php.mk
index dd52508..b5daeb6 100644
--- a/package/php/php.mk
+++ b/package/php/php.mk
@@ -154,6 +154,10 @@ ifeq ($(BR2_PACKAGE_PHP_EXT_MYSQLI),y)
 	PHP_CONF_OPTS += --with-mysqli=$(STAGING_DIR)/usr/bin/mysql_config
 	PHP_DEPENDENCIES += mysql
 endif
+ifeq ($(BR2_PACKAGE_PHP_EXT_SQLITE),y)
+	PHP_CONF_OPTS += --with-sqlite3=$(STAGING_DIR)/usr
+	PHP_DEPENDENCIES += sqlite
+endif
 
 ### PDO
 ifeq ($(BR2_PACKAGE_PHP_EXT_PDO),y)
-- 
1.7.10.4

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

* [Buildroot] [PATCH 1/3] Added new package 'mc' (Midnight Commander).
  2015-03-08 21:37 [Buildroot] [PATCH 1/3] Added new package 'mc' (Midnight Commander) Mauro Condarelli
  2015-03-08 21:37 ` [Buildroot] [PATCH 2/3] Transformation of package 'at91bootstrap3' to KConfig style Mauro Condarelli
  2015-03-08 21:37 ` [Buildroot] [PATCH 3/3] Added support for PHP/SQLite3 (non PDO) Mauro Condarelli
@ 2015-03-09  4:46 ` Baruch Siach
  2015-03-09  8:33 ` Thomas Petazzoni
  3 siblings, 0 replies; 11+ messages in thread
From: Baruch Siach @ 2015-03-09  4:46 UTC (permalink / raw)
  To: buildroot

Hi Mauro,

On Sun, Mar 08, 2015 at 10:37:07PM +0100, Mauro Condarelli wrote:
> 
> Signed-off-by: Mauro Condarelli <mc5686@mclink.it>
> ---
>  package/Config.in    |    1 +
>  package/mc/Config.in |   10 ++++++++++
>  package/mc/mc.mk     |   27 +++++++++++++++++++++++++++

A .hash file would be nice.

[...]

> diff --git a/package/mc/mc.mk b/package/mc/mc.mk
> new file mode 100644
> index 0000000..678e1f7
> --- /dev/null
> +++ b/package/mc/mc.mk
> @@ -0,0 +1,27 @@
> +################################################################################
> +#
> +# mc
> +#
> +################################################################################
> +
> +MC_VERSION_MAJOR = 4.8
> +MC_VERSION = $(MC_VERSION_MAJOR).13

No need to split the major version part if it is not used on its own.

> +MC_SOURCE = mc-$(MC_VERSION).tar.bz2
> +MC_SITE = http://ftp.midnight-commander.org
> +MC_INSTALL_STAGING = YES

Why is this needed?

> +MC_INSTALL_TARGET = YES

This is the default, please remove.

> +MC_CONF_OPTS = --disable-shared

This options is automatically handled by the autotools infrastructure. If this 
package does not support static build it should depend on !BR2_STATIC_LIBS.

> +MC_DEPENDENCIES = libglib2 host-pkgconf
> +
> +# mc prefers slang, so use that if enabled, otherwise
> +# fallback to using ncurses.
> +# Either or both will be enabled, but we prefer slang.
> +ifeq ($(BR2_PACKAGE_SLANG),y)
> +MC_DEPENDENCIES += slang
> +MC_CONF_OPTS += --with-screen=slang
> +else
> +MC_DEPENDENCIES += ncurses
> +MC_CONF_OPTS += --with-screen=ncurses
> +endif
> +
> +$(eval $(autotools-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] 11+ messages in thread

* [Buildroot] [PATCH 1/3] Added new package 'mc' (Midnight Commander).
  2015-03-08 21:37 [Buildroot] [PATCH 1/3] Added new package 'mc' (Midnight Commander) Mauro Condarelli
                   ` (2 preceding siblings ...)
  2015-03-09  4:46 ` [Buildroot] [PATCH 1/3] Added new package 'mc' (Midnight Commander) Baruch Siach
@ 2015-03-09  8:33 ` Thomas Petazzoni
  3 siblings, 0 replies; 11+ messages in thread
From: Thomas Petazzoni @ 2015-03-09  8:33 UTC (permalink / raw)
  To: buildroot

Dear Mauro Condarelli,

Thanks for this contribution!

On Sun,  8 Mar 2015 22:37:07 +0100, Mauro Condarelli wrote:

> diff --git a/package/mc/Config.in b/package/mc/Config.in
> new file mode 100644
> index 0000000..735523f
> --- /dev/null
> +++ b/package/mc/Config.in
> @@ -0,0 +1,10 @@
> +# mc prefers slang, but can use ncurses too

This comment should be right above the "select BR2_PACKAGE_SLANG" line.

> +config BR2_PACKAGE_MC
> +	bool "mc"
> +	select BR2_PACKAGE_LIBGLIB2

When you select a package, you need to replicate the dependencies of
this package. So here, you need to:

        depends on BR2_USE_WCHAR # libglib2
        depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2
        depends on BR2_USE_MMU # libglib2, slang

> +	help
> +	  GNU Midnight Commander is a visual file manager, licensed under GNU General Public License.
> +	  It can use either SLang(preferred) or ncurses for screen handling; if neither is enabled SLang will be automatically chosen.

Please wrap text to 72 characters.

> +MC_VERSION_MAJOR = 4.8
> +MC_VERSION = $(MC_VERSION_MAJOR).13
> +MC_SOURCE = mc-$(MC_VERSION).tar.bz2
> +MC_SITE = http://ftp.midnight-commander.org
> +MC_INSTALL_STAGING = YES
> +MC_INSTALL_TARGET = YES
> +MC_CONF_OPTS = --disable-shared
> +MC_DEPENDENCIES = libglib2 host-pkgconf

You should add MC_LICENSE and MC_LICENSE_FILES variables.

Thanks!

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

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

* [Buildroot] [PATCH 3/3] Added support for PHP/SQLite3 (non PDO).
  2015-03-08 21:37 ` [Buildroot] [PATCH 3/3] Added support for PHP/SQLite3 (non PDO) Mauro Condarelli
@ 2015-03-09 12:26   ` Gustavo Zacarias
  2015-03-09 13:08   ` Thomas Petazzoni
  1 sibling, 0 replies; 11+ messages in thread
From: Gustavo Zacarias @ 2015-03-09 12:26 UTC (permalink / raw)
  To: buildroot

On 03/08/2015 06:37 PM, Mauro Condarelli wrote:

> Signed-off-by: Mauro Condarelli <mc5686@mclink.it>
> ---
>  package/php/Config.ext |    6 ++++++
>  package/php/php.mk     |    4 ++++
>  2 files changed, 10 insertions(+)
> 
> diff --git a/package/php/Config.ext b/package/php/Config.ext
> index daf16c7..57685b2 100644
> --- a/package/php/Config.ext
> +++ b/package/php/Config.ext
> @@ -120,6 +120,12 @@ config BR2_PACKAGE_PHP_EXT_MYSQLI
>  	help
>  	  MySQL Improved extension support
>  
> +config BR2_PACKAGE_PHP_EXT_SQLITE
> +	bool "SQLite3"
> +	select BR2_PACKAGE_SQLITE
> +	help
> +	  SQLite3 support
> +

We normally sort entries in menu entries (inside categories of course).
But given that PDO is a distinct class of database support within PHP:

Acked-by: Gustavo Zacarias <gustavo@zacarias.com.ar>

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

* [Buildroot] [PATCH 3/3] Added support for PHP/SQLite3 (non PDO).
  2015-03-08 21:37 ` [Buildroot] [PATCH 3/3] Added support for PHP/SQLite3 (non PDO) Mauro Condarelli
  2015-03-09 12:26   ` Gustavo Zacarias
@ 2015-03-09 13:08   ` Thomas Petazzoni
  1 sibling, 0 replies; 11+ messages in thread
From: Thomas Petazzoni @ 2015-03-09 13:08 UTC (permalink / raw)
  To: buildroot

Dear Mauro Condarelli,

On Sun,  8 Mar 2015 22:37:09 +0100, Mauro Condarelli wrote:
> 
> Signed-off-by: Mauro Condarelli <mc5686@mclink.it>
> ---
>  package/php/Config.ext |    6 ++++++
>  package/php/php.mk     |    4 ++++
>  2 files changed, 10 insertions(+)

Thanks, applied! And thanks Gustavo for the review/ack.

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

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

* [Buildroot] [PATCH 2/3] Transformation of package 'at91bootstrap3' to KConfig style.
  2015-03-08 21:37 ` [Buildroot] [PATCH 2/3] Transformation of package 'at91bootstrap3' to KConfig style Mauro Condarelli
@ 2015-04-06 10:20   ` Thomas Petazzoni
  2015-04-06 13:32     ` Yann E. MORIN
  0 siblings, 1 reply; 11+ messages in thread
From: Thomas Petazzoni @ 2015-04-06 10:20 UTC (permalink / raw)
  To: buildroot

Dear Mauro Condarelli,

Adding our kconfig-package guys Yann and Thomas DS in Cc. See below for
some comments.

On Sun,  8 Mar 2015 22:37:08 +0100, Mauro Condarelli wrote:
> 
> Signed-off-by: Mauro Condarelli <mc5686@mclink.it>
> ---
>  boot/at91bootstrap3/at91bootstrap3.mk |    9 ++++++++-
>  1 file changed, 8 insertions(+), 1 deletion(-)
> 
> diff --git a/boot/at91bootstrap3/at91bootstrap3.mk b/boot/at91bootstrap3/at91bootstrap3.mk
> index 098e7bf..37e1bdd 100644
> --- a/boot/at91bootstrap3/at91bootstrap3.mk
> +++ b/boot/at91bootstrap3/at91bootstrap3.mk
> @@ -46,7 +46,14 @@ define AT91BOOTSTRAP3_INSTALL_IMAGES_CMDS
>  	cp $(@D)/binaries/*.bin $(BINARIES_DIR)
>  endef
>  
> -$(eval $(generic-package))
> +ifeq ($(BR2_TARGET_AT91BOOTSTRAP3_USE_DEFCONFIG),y)
> +AT91BOOTSTRAP3_KCONFIG_FILE = $(call qstrip,$(AT91BOOTSTRAP3_DEFCONFIG))
> +else ifeq ($(BR2_TARGET_AT91BOOTSTRAP3_USE_CUSTOM_CONFIG),y)
> +AT91BOOTSTRAP3_KCONFIG_FILE = $(call qstrip,$(BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_CONFIG_FILE))
> +endif
> +AT91BOOTSTRAP3_KCONFIG_EDITORS = menuconfig xconfig gconfig
> +AT91BOOTSTRAP3_KCONFIG_OPTS = $(AT91BOOTSTRAP3_MAKE_OPTS)
> +$(eval $(kconfig-package))

This is not going far enough: the kconfig-package infra is taking care
of implementing the <pkg>_CONFIGURE_CMDS for you. So the following
chunk of code should go away:

ifeq ($(BR2_TARGET_AT91BOOTSTRAP3_USE_DEFCONFIG),y)
define AT91BOOTSTRAP3_CONFIGURE_CMDS
        $(MAKE) $(AT91BOOTSTRAP3_MAKE_OPTS) -C $(@D) $(AT91BOOTSTRAP3_DEFCONFIG)_defconfig
endef
else ifeq ($(BR2_TARGET_AT91BOOTSTRAP3_USE_CUSTOM_CONFIG),y)
define AT91BOOTSTRAP3_CONFIGURE_CMDS
        cp $(BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_CONFIG_FILE) $(@D)/.config
endef
endif

and be replaced by a chunk of code that sets
AT91BOOTSTRAP3_KCONFIG_FILE.

However, while this is reasy to do for the
BR2_TARGET_AT91BOOTSTRAP3_USE_CUSTOM_CONFIG case, it is much more
complicated for the BR2_TARGET_AT91BOOTSTRAP3_USE_DEFCONFIG case. This
is because we do not know the path to the defconfig file in the
at91bootstrap3 source tree.

For the linux and barebox package, when a defconfig name is passed, its
path in the linux or barebox source tree is easily found: it's
arch/<ARCH>/configs/<name>_defconfig. But for at91bootstrap3, defconfig
files are spread throughout the tree, in directories named after the
board. There is no real way of inferring the location of the defconfig
file just by looking at its name.

Therefore, I am not sure how we can initialize
AT91BOOTSTRAP3_KCONFIG_FILE in such a situation.

Thomas DS, Yann, am I missing something?

Best regards,

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

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

* [Buildroot] [PATCH 2/3] Transformation of package 'at91bootstrap3' to KConfig style.
  2015-04-06 10:20   ` Thomas Petazzoni
@ 2015-04-06 13:32     ` Yann E. MORIN
  2015-04-06 14:16       ` Arnout Vandecappelle
  0 siblings, 1 reply; 11+ messages in thread
From: Yann E. MORIN @ 2015-04-06 13:32 UTC (permalink / raw)
  To: buildroot

Thomas, Mauro, All,

On 2015-04-06 12:20 +0200, Thomas Petazzoni spake thusly:
> Adding our kconfig-package guys Yann and Thomas DS in Cc. See below for
> some comments.
> 
> On Sun,  8 Mar 2015 22:37:08 +0100, Mauro Condarelli wrote:
> > 
> > Signed-off-by: Mauro Condarelli <mc5686@mclink.it>
> > ---
> >  boot/at91bootstrap3/at91bootstrap3.mk |    9 ++++++++-
> >  1 file changed, 8 insertions(+), 1 deletion(-)
> > 
> > diff --git a/boot/at91bootstrap3/at91bootstrap3.mk b/boot/at91bootstrap3/at91bootstrap3.mk
> > index 098e7bf..37e1bdd 100644
> > --- a/boot/at91bootstrap3/at91bootstrap3.mk
> > +++ b/boot/at91bootstrap3/at91bootstrap3.mk
> > @@ -46,7 +46,14 @@ define AT91BOOTSTRAP3_INSTALL_IMAGES_CMDS
> >  	cp $(@D)/binaries/*.bin $(BINARIES_DIR)
> >  endef
> >  
> > -$(eval $(generic-package))
> > +ifeq ($(BR2_TARGET_AT91BOOTSTRAP3_USE_DEFCONFIG),y)
> > +AT91BOOTSTRAP3_KCONFIG_FILE = $(call qstrip,$(AT91BOOTSTRAP3_DEFCONFIG))
> > +else ifeq ($(BR2_TARGET_AT91BOOTSTRAP3_USE_CUSTOM_CONFIG),y)
> > +AT91BOOTSTRAP3_KCONFIG_FILE = $(call qstrip,$(BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_CONFIG_FILE))
> > +endif
> > +AT91BOOTSTRAP3_KCONFIG_EDITORS = menuconfig xconfig gconfig
> > +AT91BOOTSTRAP3_KCONFIG_OPTS = $(AT91BOOTSTRAP3_MAKE_OPTS)
> > +$(eval $(kconfig-package))
> 
> This is not going far enough: the kconfig-package infra is taking care
> of implementing the <pkg>_CONFIGURE_CMDS for you. So the following
> chunk of code should go away:
> 
> ifeq ($(BR2_TARGET_AT91BOOTSTRAP3_USE_DEFCONFIG),y)
> define AT91BOOTSTRAP3_CONFIGURE_CMDS
>         $(MAKE) $(AT91BOOTSTRAP3_MAKE_OPTS) -C $(@D) $(AT91BOOTSTRAP3_DEFCONFIG)_defconfig
> endef
> else ifeq ($(BR2_TARGET_AT91BOOTSTRAP3_USE_CUSTOM_CONFIG),y)
> define AT91BOOTSTRAP3_CONFIGURE_CMDS
>         cp $(BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_CONFIG_FILE) $(@D)/.config
> endef
> endif
> 
> and be replaced by a chunk of code that sets
> AT91BOOTSTRAP3_KCONFIG_FILE.

Indeed.

> However, while this is reasy to do for the
> BR2_TARGET_AT91BOOTSTRAP3_USE_CUSTOM_CONFIG case, it is much more
> complicated for the BR2_TARGET_AT91BOOTSTRAP3_USE_DEFCONFIG case. This
> is because we do not know the path to the defconfig file in the
> at91bootstrap3 source tree.
> 
> For the linux and barebox package, when a defconfig name is passed, its
> path in the linux or barebox source tree is easily found: it's
> arch/<ARCH>/configs/<name>_defconfig. But for at91bootstrap3, defconfig
> files are spread throughout the tree, in directories named after the
> board. There is no real way of inferring the location of the defconfig
> file just by looking at its name.
> 
> Therefore, I am not sure how we can initialize
> AT91BOOTSTRAP3_KCONFIG_FILE in such a situation.
> 
> Thomas DS, Yann, am I missing something?

Well, it looks like the defconfig files are all in sub-directories of
boards/ and that each defconfig is unique in name.

So, we could probably do something like:

    AT91BOOTSTRAP3_KCONFIG_FILE = boards/*/$(call qstrip,$(AT91BOOTSTRAP3_DEFCONFIG))_defconfig

This would be resolved by the 'cp' we do at the very begining, but is
not very robust (and would anyway warrant a big fat comment).

I'll see if that would work.

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

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

* [Buildroot] [PATCH 2/3] Transformation of package 'at91bootstrap3' to KConfig style.
  2015-04-06 13:32     ` Yann E. MORIN
@ 2015-04-06 14:16       ` Arnout Vandecappelle
  2015-04-06 14:18         ` Arnout Vandecappelle
  0 siblings, 1 reply; 11+ messages in thread
From: Arnout Vandecappelle @ 2015-04-06 14:16 UTC (permalink / raw)
  To: buildroot

On 06/04/15 15:32, Yann E. MORIN wrote:
> Thomas, Mauro, All,
> 
> On 2015-04-06 12:20 +0200, Thomas Petazzoni spake thusly:
>> Adding our kconfig-package guys Yann and Thomas DS in Cc. See below for
>> some comments.
>>
>> On Sun,  8 Mar 2015 22:37:08 +0100, Mauro Condarelli wrote:
>>>
>>> Signed-off-by: Mauro Condarelli <mc5686@mclink.it>
>>> ---
>>>  boot/at91bootstrap3/at91bootstrap3.mk |    9 ++++++++-
>>>  1 file changed, 8 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/boot/at91bootstrap3/at91bootstrap3.mk b/boot/at91bootstrap3/at91bootstrap3.mk
>>> index 098e7bf..37e1bdd 100644
>>> --- a/boot/at91bootstrap3/at91bootstrap3.mk
>>> +++ b/boot/at91bootstrap3/at91bootstrap3.mk
>>> @@ -46,7 +46,14 @@ define AT91BOOTSTRAP3_INSTALL_IMAGES_CMDS
>>>  	cp $(@D)/binaries/*.bin $(BINARIES_DIR)
>>>  endef
>>>  
>>> -$(eval $(generic-package))
>>> +ifeq ($(BR2_TARGET_AT91BOOTSTRAP3_USE_DEFCONFIG),y)
>>> +AT91BOOTSTRAP3_KCONFIG_FILE = $(call qstrip,$(AT91BOOTSTRAP3_DEFCONFIG))
>>> +else ifeq ($(BR2_TARGET_AT91BOOTSTRAP3_USE_CUSTOM_CONFIG),y)
>>> +AT91BOOTSTRAP3_KCONFIG_FILE = $(call qstrip,$(BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_CONFIG_FILE))
>>> +endif
>>> +AT91BOOTSTRAP3_KCONFIG_EDITORS = menuconfig xconfig gconfig
>>> +AT91BOOTSTRAP3_KCONFIG_OPTS = $(AT91BOOTSTRAP3_MAKE_OPTS)
>>> +$(eval $(kconfig-package))
>>
>> This is not going far enough: the kconfig-package infra is taking care
>> of implementing the <pkg>_CONFIGURE_CMDS for you. So the following
>> chunk of code should go away:
>>
>> ifeq ($(BR2_TARGET_AT91BOOTSTRAP3_USE_DEFCONFIG),y)
>> define AT91BOOTSTRAP3_CONFIGURE_CMDS
>>         $(MAKE) $(AT91BOOTSTRAP3_MAKE_OPTS) -C $(@D) $(AT91BOOTSTRAP3_DEFCONFIG)_defconfig
>> endef
>> else ifeq ($(BR2_TARGET_AT91BOOTSTRAP3_USE_CUSTOM_CONFIG),y)
>> define AT91BOOTSTRAP3_CONFIGURE_CMDS
>>         cp $(BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_CONFIG_FILE) $(@D)/.config
>> endef
>> endif
>>
>> and be replaced by a chunk of code that sets
>> AT91BOOTSTRAP3_KCONFIG_FILE.
> 
> Indeed.
> 
>> However, while this is reasy to do for the
>> BR2_TARGET_AT91BOOTSTRAP3_USE_CUSTOM_CONFIG case, it is much more
>> complicated for the BR2_TARGET_AT91BOOTSTRAP3_USE_DEFCONFIG case. This
>> is because we do not know the path to the defconfig file in the
>> at91bootstrap3 source tree.
>>
>> For the linux and barebox package, when a defconfig name is passed, its
>> path in the linux or barebox source tree is easily found: it's
>> arch/<ARCH>/configs/<name>_defconfig. But for at91bootstrap3, defconfig
>> files are spread throughout the tree, in directories named after the
>> board. There is no real way of inferring the location of the defconfig
>> file just by looking at its name.
>>
>> Therefore, I am not sure how we can initialize
>> AT91BOOTSTRAP3_KCONFIG_FILE in such a situation.
>>
>> Thomas DS, Yann, am I missing something?
> 
> Well, it looks like the defconfig files are all in sub-directories of
> boards/ and that each defconfig is unique in name.
> 
> So, we could probably do something like:
> 
>     AT91BOOTSTRAP3_KCONFIG_FILE = boards/*/$(call qstrip,$(AT91BOOTSTRAP3_DEFCONFIG))_defconfig

 Add a $(wildcard ...) around it, then you'll get the missing config file error
if it doesn't match anything.

 Regards,
 Arnout

> 
> This would be resolved by the 'cp' we do at the very begining, but is
> not very robust (and would anyway warrant a big fat comment).
> 
> I'll see if that would work.
> 
> Regards,
> Yann E. MORIN.
> 


-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F

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

* [Buildroot] [PATCH 2/3] Transformation of package 'at91bootstrap3' to KConfig style.
  2015-04-06 14:16       ` Arnout Vandecappelle
@ 2015-04-06 14:18         ` Arnout Vandecappelle
  0 siblings, 0 replies; 11+ messages in thread
From: Arnout Vandecappelle @ 2015-04-06 14:18 UTC (permalink / raw)
  To: buildroot

On 06/04/15 16:16, Arnout Vandecappelle wrote:
>> > So, we could probably do something like:
>> > 
>> >     AT91BOOTSTRAP3_KCONFIG_FILE = boards/*/$(call qstrip,$(AT91BOOTSTRAP3_DEFCONFIG))_defconfig
>  Add a $(wildcard ...) around it, then you'll get the missing config file error
> if it doesn't match anything.

 Scratch that - it would give an error if the package isn't extracted yet.

 Regards,
 Arnout

-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F

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

end of thread, other threads:[~2015-04-06 14:18 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-03-08 21:37 [Buildroot] [PATCH 1/3] Added new package 'mc' (Midnight Commander) Mauro Condarelli
2015-03-08 21:37 ` [Buildroot] [PATCH 2/3] Transformation of package 'at91bootstrap3' to KConfig style Mauro Condarelli
2015-04-06 10:20   ` Thomas Petazzoni
2015-04-06 13:32     ` Yann E. MORIN
2015-04-06 14:16       ` Arnout Vandecappelle
2015-04-06 14:18         ` Arnout Vandecappelle
2015-03-08 21:37 ` [Buildroot] [PATCH 3/3] Added support for PHP/SQLite3 (non PDO) Mauro Condarelli
2015-03-09 12:26   ` Gustavo Zacarias
2015-03-09 13:08   ` Thomas Petazzoni
2015-03-09  4:46 ` [Buildroot] [PATCH 1/3] Added new package 'mc' (Midnight Commander) Baruch Siach
2015-03-09  8:33 ` Thomas Petazzoni

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox