All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v3 1/2] libubox: new package
@ 2014-03-18 20:01 Yegor Yefremov
  2014-03-18 20:01 ` [Buildroot] [PATCH v3 2/2] libuci: " Yegor Yefremov
  2014-03-18 22:30 ` [Buildroot] [PATCH v3 1/2] libubox: " Thomas Petazzoni
  0 siblings, 2 replies; 6+ messages in thread
From: Yegor Yefremov @ 2014-03-18 20:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
---
Changes:
	v3: add Lua support
        v2: make package description more informative and fix license information

 package/Config.in          |  1 +
 package/libubox/Config.in  |  7 +++++++
 package/libubox/libubox.mk | 21 +++++++++++++++++++++
 3 files changed, 29 insertions(+)
 create mode 100644 package/libubox/Config.in
 create mode 100644 package/libubox/libubox.mk

diff --git a/package/Config.in b/package/Config.in
index f9c1b0b..a2e859c 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -784,6 +784,7 @@ source "package/libsigc/Config.in"
 source "package/libsigsegv/Config.in"
 source "package/libtasn1/Config.in"
 source "package/libtpl/Config.in"
+source "package/libubox/Config.in"
 source "package/libunwind/Config.in"
 source "package/liburcu/Config.in"
 source "package/linux-pam/Config.in"
diff --git a/package/libubox/Config.in b/package/libubox/Config.in
new file mode 100644
index 0000000..3fa78cf
--- /dev/null
+++ b/package/libubox/Config.in
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_LIBUBOX
+	bool "libubox"
+	help
+	  Small utility library for OpenWrt. It is a dependency of
+	  libuci, that manages configuration files infrastructure.
+
+	  http://nbd.name/gitweb.cgi?p=luci2/libubox.git;a=summary
diff --git a/package/libubox/libubox.mk b/package/libubox/libubox.mk
new file mode 100644
index 0000000..effef9a
--- /dev/null
+++ b/package/libubox/libubox.mk
@@ -0,0 +1,21 @@
+################################################################################
+#
+# libubox
+#
+################################################################################
+
+LIBUBOX_VERSION = bbd846ec2d72b2629758b69dc122ac0b0f2c3e4b
+LIBUBOX_SITE = git://nbd.name/luci2/libubox.git
+LIBUBOX_LICENSE = LGPLv2.1, GPLv2, BSD-3c, MIT
+LIBUBOX_INSTALL_STAGING = YES
+
+ifeq ($(BR2_PACKAGE_LUA),y)
+	LIBUBOX_DEPENDENCIES = lua
+	LIBUBOX_MAKE_ENV = \
+		PKG_CONFIG_SYSROOT_DIR="$(STAGING_DIR)"	\
+		PKG_CONFIG_PATH="$(STAGING_DIR)/usr/lib/pkgconfig"
+else
+	LIBUBOX_CONF_OPT = -DBUILD_LUA:BOOL=OFF
+endif
+
+$(eval $(cmake-package))
-- 
1.8.3.2

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

* [Buildroot] [PATCH v3 2/2] libuci: new package
  2014-03-18 20:01 [Buildroot] [PATCH v3 1/2] libubox: new package Yegor Yefremov
@ 2014-03-18 20:01 ` Yegor Yefremov
  2014-03-18 22:30 ` [Buildroot] [PATCH v3 1/2] libubox: " Thomas Petazzoni
  1 sibling, 0 replies; 6+ messages in thread
From: Yegor Yefremov @ 2014-03-18 20:01 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
---
Changes:
	v3: add Lua support

 package/Config.in        |  1 +
 package/libuci/Config.in |  9 +++++++++
 package/libuci/libuci.mk | 22 ++++++++++++++++++++++
 3 files changed, 32 insertions(+)
 create mode 100644 package/libuci/Config.in
 create mode 100644 package/libuci/libuci.mk

diff --git a/package/Config.in b/package/Config.in
index a2e859c..bc01d99 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -785,6 +785,7 @@ source "package/libsigsegv/Config.in"
 source "package/libtasn1/Config.in"
 source "package/libtpl/Config.in"
 source "package/libubox/Config.in"
+source "package/libuci/Config.in"
 source "package/libunwind/Config.in"
 source "package/liburcu/Config.in"
 source "package/linux-pam/Config.in"
diff --git a/package/libuci/Config.in b/package/libuci/Config.in
new file mode 100644
index 0000000..c1aba16
--- /dev/null
+++ b/package/libuci/Config.in
@@ -0,0 +1,9 @@
+config BR2_PACKAGE_LIBUCI
+	bool "libuci"
+	select BR2_PACKAGE_LIBUBOX
+	help
+	  libuci is intended to centralize the whole configuration
+	  of a device running OpenWrt. This package will also install
+	  CLI tool uci.
+
+	  http://wiki.openwrt.org/doc/techref/uci
diff --git a/package/libuci/libuci.mk b/package/libuci/libuci.mk
new file mode 100644
index 0000000..cba001d
--- /dev/null
+++ b/package/libuci/libuci.mk
@@ -0,0 +1,22 @@
+################################################################################
+#
+# libuci
+#
+################################################################################
+
+LIBUCI_VERSION = 262fede3e8c8c08c1eb0d1be9bf102232fb86cb9
+LIBUCI_SITE = git://nbd.name/uci.git
+LIBUCI_LICENSE = LGPLv2.1
+LIBUCI_INSTALL_STAGING = YES
+LIBUCI_DEPENDENCIES = libubox
+
+ifeq ($(BR2_PACKAGE_LUA),y)
+	LIBUCI_DEPENDENCIES += lua
+	LIBUCI_MAKE_ENV = \
+		PKG_CONFIG_SYSROOT_DIR="$(STAGING_DIR)"	\
+		PKG_CONFIG_PATH="$(STAGING_DIR)/usr/lib/pkgconfig"
+else
+	LIBUCI_CONF_OPT = -DBUILD_LUA:BOOL=OFF
+endif
+
+$(eval $(cmake-package))
-- 
1.8.3.2

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

* [Buildroot] [PATCH v3 1/2] libubox: new package
  2014-03-18 20:01 [Buildroot] [PATCH v3 1/2] libubox: new package Yegor Yefremov
  2014-03-18 20:01 ` [Buildroot] [PATCH v3 2/2] libuci: " Yegor Yefremov
@ 2014-03-18 22:30 ` Thomas Petazzoni
  2014-03-19 11:00   ` Yegor Yefremov
  1 sibling, 1 reply; 6+ messages in thread
From: Thomas Petazzoni @ 2014-03-18 22:30 UTC (permalink / raw)
  To: buildroot

Dear Yegor Yefremov,

On Tue, 18 Mar 2014 21:01:38 +0100, Yegor Yefremov wrote:

> +LIBUBOX_VERSION = bbd846ec2d72b2629758b69dc122ac0b0f2c3e4b
> +LIBUBOX_SITE = git://nbd.name/luci2/libubox.git
> +LIBUBOX_LICENSE = LGPLv2.1, GPLv2, BSD-3c, MIT
> +LIBUBOX_INSTALL_STAGING = YES
> +
> +ifeq ($(BR2_PACKAGE_LUA),y)
> +	LIBUBOX_DEPENDENCIES = lua
> +	LIBUBOX_MAKE_ENV = \
> +		PKG_CONFIG_SYSROOT_DIR="$(STAGING_DIR)"	\
> +		PKG_CONFIG_PATH="$(STAGING_DIR)/usr/lib/pkgconfig"

No. These variables should I believe not be necessary. The
cmake-package infrastructure should simply use PATH=$(TARGET_PATH) so
that when a CMake package is built, $(HOST_DIR)/usr/bin/pkg-config is
used, and this pkg-config variant already knows the right path and
sysroot for the .pc files.

I believe Samuel Martin has already sent a patch doing this for the
CMake package infrastructure.

Thanks!

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

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

* [Buildroot] [PATCH v3 1/2] libubox: new package
  2014-03-18 22:30 ` [Buildroot] [PATCH v3 1/2] libubox: " Thomas Petazzoni
@ 2014-03-19 11:00   ` Yegor Yefremov
  2014-03-19 11:29     ` Samuel Martin
  0 siblings, 1 reply; 6+ messages in thread
From: Yegor Yefremov @ 2014-03-19 11:00 UTC (permalink / raw)
  To: buildroot

On Tue, Mar 18, 2014 at 11:30 PM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Dear Yegor Yefremov,
>
> On Tue, 18 Mar 2014 21:01:38 +0100, Yegor Yefremov wrote:
>
>> +LIBUBOX_VERSION = bbd846ec2d72b2629758b69dc122ac0b0f2c3e4b
>> +LIBUBOX_SITE = git://nbd.name/luci2/libubox.git
>> +LIBUBOX_LICENSE = LGPLv2.1, GPLv2, BSD-3c, MIT
>> +LIBUBOX_INSTALL_STAGING = YES
>> +
>> +ifeq ($(BR2_PACKAGE_LUA),y)
>> +     LIBUBOX_DEPENDENCIES = lua
>> +     LIBUBOX_MAKE_ENV = \
>> +             PKG_CONFIG_SYSROOT_DIR="$(STAGING_DIR)" \
>> +             PKG_CONFIG_PATH="$(STAGING_DIR)/usr/lib/pkgconfig"
>
> No. These variables should I believe not be necessary. The
> cmake-package infrastructure should simply use PATH=$(TARGET_PATH) so
> that when a CMake package is built, $(HOST_DIR)/usr/bin/pkg-config is
> used, and this pkg-config variant already knows the right path and
> sysroot for the .pc files.
>
> I believe Samuel Martin has already sent a patch doing this for the
> CMake package infrastructure.

Samuel could you point me to the right package with the proper example?

Yegor

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

* [Buildroot] [PATCH v3 1/2] libubox: new package
  2014-03-19 11:00   ` Yegor Yefremov
@ 2014-03-19 11:29     ` Samuel Martin
  2014-03-19 11:58       ` Yegor Yefremov
  0 siblings, 1 reply; 6+ messages in thread
From: Samuel Martin @ 2014-03-19 11:29 UTC (permalink / raw)
  To: buildroot

Hi Yegor, all,

On Wed, Mar 19, 2014 at 12:00 PM, Yegor Yefremov
<yegorslists@googlemail.com> wrote:
> On Tue, Mar 18, 2014 at 11:30 PM, Thomas Petazzoni
> <thomas.petazzoni@free-electrons.com> wrote:
>> Dear Yegor Yefremov,
>>
>> On Tue, 18 Mar 2014 21:01:38 +0100, Yegor Yefremov wrote:
>>
>>> +LIBUBOX_VERSION = bbd846ec2d72b2629758b69dc122ac0b0f2c3e4b
>>> +LIBUBOX_SITE = git://nbd.name/luci2/libubox.git
>>> +LIBUBOX_LICENSE = LGPLv2.1, GPLv2, BSD-3c, MIT
>>> +LIBUBOX_INSTALL_STAGING = YES
>>> +
>>> +ifeq ($(BR2_PACKAGE_LUA),y)
>>> +     LIBUBOX_DEPENDENCIES = lua
>>> +     LIBUBOX_MAKE_ENV = \
>>> +             PKG_CONFIG_SYSROOT_DIR="$(STAGING_DIR)" \
>>> +             PKG_CONFIG_PATH="$(STAGING_DIR)/usr/lib/pkgconfig"

This should be added in the cmake infrastructure.
In package/pkg-cmake.mk, PKG_CONFIG_SYSROOT_DIR is already correctly set:
http://git.buildroot.net/buildroot/tree/package/pkg-cmake.mk#n173

I'm a bit dubious about the need for PKG_CONFIG_PATH, this is already
a standard location in which pkg-config looks for (according to man).
I would expect this variable to be set in the
$(HOST_DIR)/usr/bin/pkg-config wrapper, but AFAICS it's not :-/

BTW, what error are you facing without these variables set in
configure env.? Could you pastebin the error logs?

>>
>> No. These variables should I believe not be necessary. The
>> cmake-package infrastructure should simply use PATH=$(TARGET_PATH) so
>> that when a CMake package is built, $(HOST_DIR)/usr/bin/pkg-config is
>> used, and this pkg-config variant already knows the right path and
>> sysroot for the .pc files.
>>
>> I believe Samuel Martin has already sent a patch doing this for the
>> CMake package infrastructure.
>
> Samuel could you point me to the right package with the proper example?
>
> Yegor

Regards,

-- 
Samuel

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

* [Buildroot] [PATCH v3 1/2] libubox: new package
  2014-03-19 11:29     ` Samuel Martin
@ 2014-03-19 11:58       ` Yegor Yefremov
  0 siblings, 0 replies; 6+ messages in thread
From: Yegor Yefremov @ 2014-03-19 11:58 UTC (permalink / raw)
  To: buildroot

On Wed, Mar 19, 2014 at 12:29 PM, Samuel Martin <s.martin49@gmail.com> wrote:
> Hi Yegor, all,
>
> On Wed, Mar 19, 2014 at 12:00 PM, Yegor Yefremov
> <yegorslists@googlemail.com> wrote:
>> On Tue, Mar 18, 2014 at 11:30 PM, Thomas Petazzoni
>> <thomas.petazzoni@free-electrons.com> wrote:
>>> Dear Yegor Yefremov,
>>>
>>> On Tue, 18 Mar 2014 21:01:38 +0100, Yegor Yefremov wrote:
>>>
>>>> +LIBUBOX_VERSION = bbd846ec2d72b2629758b69dc122ac0b0f2c3e4b
>>>> +LIBUBOX_SITE = git://nbd.name/luci2/libubox.git
>>>> +LIBUBOX_LICENSE = LGPLv2.1, GPLv2, BSD-3c, MIT
>>>> +LIBUBOX_INSTALL_STAGING = YES
>>>> +
>>>> +ifeq ($(BR2_PACKAGE_LUA),y)
>>>> +     LIBUBOX_DEPENDENCIES = lua
>>>> +     LIBUBOX_MAKE_ENV = \
>>>> +             PKG_CONFIG_SYSROOT_DIR="$(STAGING_DIR)" \
>>>> +             PKG_CONFIG_PATH="$(STAGING_DIR)/usr/lib/pkgconfig"
>
> This should be added in the cmake infrastructure.
> In package/pkg-cmake.mk, PKG_CONFIG_SYSROOT_DIR is already correctly set:
> http://git.buildroot.net/buildroot/tree/package/pkg-cmake.mk#n173
>
> I'm a bit dubious about the need for PKG_CONFIG_PATH, this is already
> a standard location in which pkg-config looks for (according to man).
> I would expect this variable to be set in the
> $(HOST_DIR)/usr/bin/pkg-config wrapper, but AFAICS it's not :-/
>
> BTW, what error are you facing without these variables set in
> configure env.? Could you pastebin the error logs?

Strange. I've removed the statements and I have no problems. As I
started with my development, CMake complained about not finding Lua
via pkg-config and it worked only after I've added these PATHs. I'll
this at home, where I've encountered this issue and then resend the
patches.

>>> No. These variables should I believe not be necessary. The
>>> cmake-package infrastructure should simply use PATH=$(TARGET_PATH) so
>>> that when a CMake package is built, $(HOST_DIR)/usr/bin/pkg-config is
>>> used, and this pkg-config variant already knows the right path and
>>> sysroot for the .pc files.
>>>
>>> I believe Samuel Martin has already sent a patch doing this for the
>>> CMake package infrastructure.
>>
>> Samuel could you point me to the right package with the proper example?

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

end of thread, other threads:[~2014-03-19 11:58 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-03-18 20:01 [Buildroot] [PATCH v3 1/2] libubox: new package Yegor Yefremov
2014-03-18 20:01 ` [Buildroot] [PATCH v3 2/2] libuci: " Yegor Yefremov
2014-03-18 22:30 ` [Buildroot] [PATCH v3 1/2] libubox: " Thomas Petazzoni
2014-03-19 11:00   ` Yegor Yefremov
2014-03-19 11:29     ` Samuel Martin
2014-03-19 11:58       ` Yegor Yefremov

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.