* [Buildroot] [PATCH 1/1 v3] ubus: new package @ 2014-10-14 9:46 Alexey Mednyy 2014-10-14 19:22 ` Samuel Martin 2014-10-14 21:33 ` Arnout Vandecappelle 0 siblings, 2 replies; 5+ messages in thread From: Alexey Mednyy @ 2014-10-14 9:46 UTC (permalink / raw) To: buildroot Signed-off-by: Alexey Mednyy <swexru@gmail.com> --- package/Config.in | 1 + package/ubus/Config.in | 14 +++++++++++++ package/ubus/ubus-01-json-definition-fix.patch | 27 +++++++++++++++++++++++++ package/ubus/ubus.mk | 28 ++++++++++++++++++++++++++ 4 files changed, 70 insertions(+) create mode 100644 package/ubus/Config.in create mode 100644 package/ubus/ubus-01-json-definition-fix.patch create mode 100644 package/ubus/ubus.mk diff --git a/package/Config.in b/package/Config.in index 19bb9bf..16d4901 100644 --- a/package/Config.in +++ b/package/Config.in @@ -896,6 +896,7 @@ menu "Other" source "package/startup-notification/Config.in" source "package/tz/Config.in" source "package/tzdata/Config.in" + source "package/ubus/Config.in" endmenu menu "Security" diff --git a/package/ubus/Config.in b/package/ubus/Config.in new file mode 100644 index 0000000..b0f5de9 --- /dev/null +++ b/package/ubus/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_UBUS + bool "ubus" + select BR2_PACKAGE_LIBUBOX + select BR2_PACKAGE_JSON_C + depends on !BR2_PREFER_STATIC_LIB + help + OpenWrt micro bus architecture, project + provide communication between various + daemons and applications. + + http://wiki.openwrt.org/doc/techref/ubus + +comment "ubus needs toolchain w/ dynamic library" + depends on BR2_PREFER_STATIC_LIB diff --git a/package/ubus/ubus-01-json-definition-fix.patch b/package/ubus/ubus-01-json-definition-fix.patch new file mode 100644 index 0000000..50f9096 --- /dev/null +++ b/package/ubus/ubus-01-json-definition-fix.patch @@ -0,0 +1,27 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index cb2f420..86c4c4d 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -25,10 +25,20 @@ TARGET_LINK_LIBRARIES(ubus ubox) + ADD_EXECUTABLE(ubusd ubusd.c ubusd_id.c ubusd_obj.c ubusd_proto.c ubusd_event.c) + TARGET_LINK_LIBRARIES(ubusd ubox) + +-find_library(json NAMES json-c json) ++ ++find_package(PkgConfig) ++PKG_CHECK_MODULES(JSONC json-c) ++IF(JSONC_FOUND) ++ ADD_DEFINITIONS(-DJSONC) ++ INCLUDE_DIRECTORIES(${JSONC_INCLUDE_DIRS}) ++ENDIF() ++ + ADD_EXECUTABLE(cli cli.c) + SET_TARGET_PROPERTIES(cli PROPERTIES OUTPUT_NAME ubus) +-TARGET_LINK_LIBRARIES(cli ubus ubox blobmsg_json ${json}) ++TARGET_LINK_LIBRARIES(cli ubus ubox blobmsg_json) ++IF(JSONC_FOUND) ++ TARGET_LINK_LIBRARIES(cli ${JSONC_LIBRARIES}) ++ENDIF() + + ADD_SUBDIRECTORY(lua) + ADD_SUBDIRECTORY(examples) diff --git a/package/ubus/ubus.mk b/package/ubus/ubus.mk new file mode 100644 index 0000000..652ab48 --- /dev/null +++ b/package/ubus/ubus.mk @@ -0,0 +1,28 @@ +################################################################################ +# +# UBUS +# +################################################################################ + +UBUS_VERSION = 4c4f35cf2230d70b9ddd87638ca911e8a563f2f3 +UBUS_SITE = git://nbd.name/luci2/ubus.git +UBUS_LICENSE = LGPLv2.1 +UBUS_DEPENDENCIES = json-c libubox + +ifeq ($(BR2_USE_MMU)$(BR2_PACKAGE_LUA_5_1),yy) +UBUS_DEPENDENCIES += lua +UBUS_CONF_OPTS += -DLUAPATH=$(STAGING_DIR)/usr/lib/lua/5.1 \ + -DLUA_CFLAGS=-I$(STAGING_DIR)/usr/include \ + -DBUILD_LUA=ON +else +UBUS_CONF_OPTS += -DBUILD_LUA=OFF +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +UBUS_CONF_OPTS += systemd \ + -DENABLE_SYSTEMD=ON +else +UBUS_CONF_OPTS += -DENABLE_SYSTEMD=OFF +endif + +$(eval $(cmake-package)) -- 1.9.1 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH 1/1 v3] ubus: new package 2014-10-14 9:46 [Buildroot] [PATCH 1/1 v3] ubus: new package Alexey Mednyy @ 2014-10-14 19:22 ` Samuel Martin 2014-10-15 12:05 ` Alexey Mednyy 2014-10-14 21:33 ` Arnout Vandecappelle 1 sibling, 1 reply; 5+ messages in thread From: Samuel Martin @ 2014-10-14 19:22 UTC (permalink / raw) To: buildroot Hi Alexey, On Tue, Oct 14, 2014 at 11:46 AM, Alexey Mednyy <swexru@gmail.com> wrote: > Signed-off-by: Alexey Mednyy <swexru@gmail.com> > --- > package/Config.in | 1 + > package/ubus/Config.in | 14 +++++++++++++ > package/ubus/ubus-01-json-definition-fix.patch | 27 +++++++++++++++++++++++++ > package/ubus/ubus.mk | 28 ++++++++++++++++++++++++++ > 4 files changed, 70 insertions(+) > create mode 100644 package/ubus/Config.in > create mode 100644 package/ubus/ubus-01-json-definition-fix.patch > create mode 100644 package/ubus/ubus.mk > > diff --git a/package/Config.in b/package/Config.in > index 19bb9bf..16d4901 100644 > --- a/package/Config.in > +++ b/package/Config.in > @@ -896,6 +896,7 @@ menu "Other" > source "package/startup-notification/Config.in" > source "package/tz/Config.in" > source "package/tzdata/Config.in" > + source "package/ubus/Config.in" > endmenu > > menu "Security" > diff --git a/package/ubus/Config.in b/package/ubus/Config.in > new file mode 100644 > index 0000000..b0f5de9 > --- /dev/null > +++ b/package/ubus/Config.in > @@ -0,0 +1,14 @@ > +config BR2_PACKAGE_UBUS > + bool "ubus" > + select BR2_PACKAGE_LIBUBOX > + select BR2_PACKAGE_JSON_C > + depends on !BR2_PREFER_STATIC_LIB > + help > + OpenWrt micro bus architecture, project > + provide communication between various > + daemons and applications. > + > + http://wiki.openwrt.org/doc/techref/ubus > + > +comment "ubus needs toolchain w/ dynamic library" > + depends on BR2_PREFER_STATIC_LIB > diff --git a/package/ubus/ubus-01-json-definition-fix.patch b/package/ubus/ubus-01-json-definition-fix.patch > new file mode 100644 > index 0000000..50f9096 > --- /dev/null > +++ b/package/ubus/ubus-01-json-definition-fix.patch > @@ -0,0 +1,27 @@ > +diff --git a/CMakeLists.txt b/CMakeLists.txt > +index cb2f420..86c4c4d 100644 > +--- a/CMakeLists.txt > ++++ b/CMakeLists.txt > +@@ -25,10 +25,20 @@ TARGET_LINK_LIBRARIES(ubus ubox) > + ADD_EXECUTABLE(ubusd ubusd.c ubusd_id.c ubusd_obj.c ubusd_proto.c ubusd_event.c) > + TARGET_LINK_LIBRARIES(ubusd ubox) > + > +-find_library(json NAMES json-c json) > ++ > ++find_package(PkgConfig) Here, PkgConfig is mandatory, so add REQUIRED to the find_package args. > ++PKG_CHECK_MODULES(JSONC json-c) Here, json-c is mandatory, so add REQUIRED to the pkg_check_modules args. > ++IF(JSONC_FOUND) > ++ ADD_DEFINITIONS(-DJSONC) > ++ INCLUDE_DIRECTORIES(${JSONC_INCLUDE_DIRS}) > ++ENDIF() Since json-c in mandatory, there is no need for conditional actions about json-c, so just remove the if() and endif() lines. Sorry, I didn't notice that in the previous review. :-s > ++ > + ADD_EXECUTABLE(cli cli.c) > + SET_TARGET_PROPERTIES(cli PROPERTIES OUTPUT_NAME ubus) > +-TARGET_LINK_LIBRARIES(cli ubus ubox blobmsg_json ${json}) > ++TARGET_LINK_LIBRARIES(cli ubus ubox blobmsg_json) I didn't check in the previous review, but blobmsg_json is provided by another project, so either it is a required dependency that should be integrated in Buildroot too, or this is an optional dependency and you should disable it (something similar to what you've done for json-c, but always forcing its option to OFF in the _CONF_OPTS). > ++IF(JSONC_FOUND) > ++ TARGET_LINK_LIBRARIES(cli ${JSONC_LIBRARIES}) > ++ENDIF() Same here (no if/endif lines). So, ${JSONC_LIBRARIES} can go back with the others libs (in the first targte_link_library call. > + > + ADD_SUBDIRECTORY(lua) > + ADD_SUBDIRECTORY(examples) Also, while checking the upstream project, I noticed that: - "-Werror" is added to the cflags. Please remove it, otherwise it may/will fail in a number of build configuration. Usually, -Werror is good during the development but bad/PITA for integration. - BUILD_EXAMPLES is ON by default, consider disabling it or add an option driving it. > diff --git a/package/ubus/ubus.mk b/package/ubus/ubus.mk > new file mode 100644 > index 0000000..652ab48 > --- /dev/null > +++ b/package/ubus/ubus.mk > @@ -0,0 +1,28 @@ > +################################################################################ > +# > +# UBUS > +# > +################################################################################ > + > +UBUS_VERSION = 4c4f35cf2230d70b9ddd87638ca911e8a563f2f3 > +UBUS_SITE = git://nbd.name/luci2/ubus.git > +UBUS_LICENSE = LGPLv2.1 > +UBUS_DEPENDENCIES = json-c libubox > + > +ifeq ($(BR2_USE_MMU)$(BR2_PACKAGE_LUA_5_1),yy) Why BR2_USE_MMU? > +UBUS_DEPENDENCIES += lua > +UBUS_CONF_OPTS += -DLUAPATH=$(STAGING_DIR)/usr/lib/lua/5.1 \ > + -DLUA_CFLAGS=-I$(STAGING_DIR)/usr/include \ > + -DBUILD_LUA=ON > +else > +UBUS_CONF_OPTS += -DBUILD_LUA=OFF > +endif > + > +ifeq ($(BR2_PACKAGE_SYSTEMD),y) > +UBUS_CONF_OPTS += systemd \ > + -DENABLE_SYSTEMD=ON should be: UBUS_DEPENDENCIES += systemd UBUS_CONF_OPTS += -DENABLE_SYSTEMD=ON > +else > +UBUS_CONF_OPTS += -DENABLE_SYSTEMD=OFF > +endif > + > +$(eval $(cmake-package)) > -- > 1.9.1 > > _______________________________________________ > buildroot mailing list > buildroot at busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot Regards, -- Samuel ^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH 1/1 v3] ubus: new package 2014-10-14 19:22 ` Samuel Martin @ 2014-10-15 12:05 ` Alexey Mednyy 2014-10-15 12:08 ` Samuel Martin 0 siblings, 1 reply; 5+ messages in thread From: Alexey Mednyy @ 2014-10-15 12:05 UTC (permalink / raw) To: buildroot Thank you for reviews! On 10/14/2014 11:22 PM, Samuel Martin wrote: >> ++ >> + ADD_EXECUTABLE(cli cli.c) >> + SET_TARGET_PROPERTIES(cli PROPERTIES OUTPUT_NAME ubus) >> +-TARGET_LINK_LIBRARIES(cli ubus ubox blobmsg_json ${json}) >> ++TARGET_LINK_LIBRARIES(cli ubus ubox blobmsg_json) > I didn't check in the previous review, but blobmsg_json is provided by > another project, so either it is a required dependency that should be > integrated in Buildroot too, or this is an optional dependency and you > should disable it (something similar to what you've done for json-c, > but always forcing its option to OFF in the _CONF_OPTS). > No, blobmsg_json provided by libubox which already in Buildroot. >> ++IF(JSONC_FOUND) >> ++ TARGET_LINK_LIBRARIES(cli ${JSONC_LIBRARIES}) >> ++ENDIF() > Same here (no if/endif lines). So, ${JSONC_LIBRARIES} can go back with > the others libs (in the first targte_link_library call. > >> + >> + ADD_SUBDIRECTORY(lua) >> + ADD_SUBDIRECTORY(examples) > Also, while checking the upstream project, I noticed that: > - "-Werror" is added to the cflags. > Please remove it, otherwise it may/will fail in a number of build > configuration. > Usually, -Werror is good during the development but bad/PITA for integration. > - BUILD_EXAMPLES is ON by default, consider disabling it or add an > option driving it. > >> diff --git a/package/ubus/ubus.mk b/package/ubus/ubus.mk >> new file mode 100644 >> index 0000000..652ab48 >> --- /dev/null >> +++ b/package/ubus/ubus.mk >> @@ -0,0 +1,28 @@ >> +################################################################################ >> +# >> +# UBUS >> +# >> +################################################################################ >> + >> +UBUS_VERSION = 4c4f35cf2230d70b9ddd87638ca911e8a563f2f3 >> +UBUS_SITE = git://nbd.name/luci2/ubus.git >> +UBUS_LICENSE = LGPLv2.1 >> +UBUS_DEPENDENCIES = json-c libubox >> + >> +ifeq ($(BR2_USE_MMU)$(BR2_PACKAGE_LUA_5_1),yy) > Why BR2_USE_MMU? Not sure, just took it from libubox.mk which is mandatory dependency.. I think I must disable it. There is no such requirement. -- _________________________________ Best regards, Mednyy Alexey. ^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH 1/1 v3] ubus: new package 2014-10-15 12:05 ` Alexey Mednyy @ 2014-10-15 12:08 ` Samuel Martin 0 siblings, 0 replies; 5+ messages in thread From: Samuel Martin @ 2014-10-15 12:08 UTC (permalink / raw) To: buildroot Hi Alexey, On Wed, Oct 15, 2014 at 2:05 PM, Alexey Mednyy <swexru@gmail.com> wrote: > Thank you for reviews! > > On 10/14/2014 11:22 PM, Samuel Martin wrote: >>> ++ >>> + ADD_EXECUTABLE(cli cli.c) >>> + SET_TARGET_PROPERTIES(cli PROPERTIES OUTPUT_NAME ubus) >>> +-TARGET_LINK_LIBRARIES(cli ubus ubox blobmsg_json ${json}) >>> ++TARGET_LINK_LIBRARIES(cli ubus ubox blobmsg_json) >> I didn't check in the previous review, but blobmsg_json is provided by >> another project, so either it is a required dependency that should be >> integrated in Buildroot too, or this is an optional dependency and you >> should disable it (something similar to what you've done for json-c, >> but always forcing its option to OFF in the _CONF_OPTS). >> > No, blobmsg_json provided by libubox which already in Buildroot. Ok, my bad, i didn't look at libubox. >>> ++IF(JSONC_FOUND) >>> ++ TARGET_LINK_LIBRARIES(cli ${JSONC_LIBRARIES}) >>> ++ENDIF() >> Same here (no if/endif lines). So, ${JSONC_LIBRARIES} can go back with >> the others libs (in the first targte_link_library call. >> >>> + >>> + ADD_SUBDIRECTORY(lua) >>> + ADD_SUBDIRECTORY(examples) >> Also, while checking the upstream project, I noticed that: >> - "-Werror" is added to the cflags. >> Please remove it, otherwise it may/will fail in a number of build >> configuration. >> Usually, -Werror is good during the development but bad/PITA for integration. >> - BUILD_EXAMPLES is ON by default, consider disabling it or add an >> option driving it. >> >>> diff --git a/package/ubus/ubus.mk b/package/ubus/ubus.mk >>> new file mode 100644 >>> index 0000000..652ab48 >>> --- /dev/null >>> +++ b/package/ubus/ubus.mk >>> @@ -0,0 +1,28 @@ >>> +################################################################################ >>> +# >>> +# UBUS >>> +# >>> +################################################################################ >>> + >>> +UBUS_VERSION = 4c4f35cf2230d70b9ddd87638ca911e8a563f2f3 >>> +UBUS_SITE = git://nbd.name/luci2/ubus.git >>> +UBUS_LICENSE = LGPLv2.1 >>> +UBUS_DEPENDENCIES = json-c libubox >>> + >>> +ifeq ($(BR2_USE_MMU)$(BR2_PACKAGE_LUA_5_1),yy) >> Why BR2_USE_MMU? > Not sure, just took it from libubox.mk which is mandatory dependency.. I > think I must disable it. There is no such requirement. Then the dependency should be put in the Config.in, not in the *.mk file (check how it's done for other packages, there are plenty of them depending on !BR2_USE_MMU) Regards, > > -- > _________________________________ > Best regards, Mednyy Alexey. > -- Samuel ^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH 1/1 v3] ubus: new package 2014-10-14 9:46 [Buildroot] [PATCH 1/1 v3] ubus: new package Alexey Mednyy 2014-10-14 19:22 ` Samuel Martin @ 2014-10-14 21:33 ` Arnout Vandecappelle 1 sibling, 0 replies; 5+ messages in thread From: Arnout Vandecappelle @ 2014-10-14 21:33 UTC (permalink / raw) To: buildroot On 14/10/14 11:46, Alexey Mednyy wrote: > Signed-off-by: Alexey Mednyy <swexru@gmail.com> > --- > package/Config.in | 1 + > package/ubus/Config.in | 14 +++++++++++++ > package/ubus/ubus-01-json-definition-fix.patch | 27 +++++++++++++++++++++++++ > package/ubus/ubus.mk | 28 ++++++++++++++++++++++++++ > 4 files changed, 70 insertions(+) > create mode 100644 package/ubus/Config.in > create mode 100644 package/ubus/ubus-01-json-definition-fix.patch > create mode 100644 package/ubus/ubus.mk > > diff --git a/package/Config.in b/package/Config.in > index 19bb9bf..16d4901 100644 > --- a/package/Config.in > +++ b/package/Config.in > @@ -896,6 +896,7 @@ menu "Other" > source "package/startup-notification/Config.in" > source "package/tz/Config.in" > source "package/tzdata/Config.in" > + source "package/ubus/Config.in" > endmenu > > menu "Security" > diff --git a/package/ubus/Config.in b/package/ubus/Config.in > new file mode 100644 > index 0000000..b0f5de9 > --- /dev/null > +++ b/package/ubus/Config.in > @@ -0,0 +1,14 @@ > +config BR2_PACKAGE_UBUS > + bool "ubus" > + select BR2_PACKAGE_LIBUBOX > + select BR2_PACKAGE_JSON_C > + depends on !BR2_PREFER_STATIC_LIB > + help > + OpenWrt micro bus architecture, project > + provide communication between various > + daemons and applications. > + > + http://wiki.openwrt.org/doc/techref/ubus > + > +comment "ubus needs toolchain w/ dynamic library" > + depends on BR2_PREFER_STATIC_LIB > diff --git a/package/ubus/ubus-01-json-definition-fix.patch b/package/ubus/ubus-01-json-definition-fix.patch > new file mode 100644 > index 0000000..50f9096 > --- /dev/null > +++ b/package/ubus/ubus-01-json-definition-fix.patch > @@ -0,0 +1,27 @@ In addition to Samuel's comments, a path should have a description and a Signed-off-by line, just like if it was an actual commit (see [1]). We would anyway like you to upstream this patch to OpenWRT, so you'll need that commit message and SoB there anyway. > +diff --git a/CMakeLists.txt b/CMakeLists.txt > +index cb2f420..86c4c4d 100644 > +--- a/CMakeLists.txt > ++++ b/CMakeLists.txt [snip] Regards, Arnout [1] http://nightly.buildroot.org/manual.html#_format_and_licensing_of_the_package_patches -- 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] 5+ messages in thread
end of thread, other threads:[~2014-10-15 12:08 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-10-14 9:46 [Buildroot] [PATCH 1/1 v3] ubus: new package Alexey Mednyy 2014-10-14 19:22 ` Samuel Martin 2014-10-15 12:05 ` Alexey Mednyy 2014-10-15 12:08 ` Samuel Martin 2014-10-14 21:33 ` Arnout Vandecappelle
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox