Pull request for branch for-2012.08/new-packages
Hello,
Here is a set of new packages that I needed for various projects in the past year.
This time, I did test them against uClibc, with minimal configurations, so I'm pretty confident that they are correct with regard to the dependencies on largefile/C++ and other things.
Regards,
Thomas
The following changes since commit 54f88ee8eed9d3ae7ab670d14ba77a97a44caaca:
nfs-utils: needs pkg-config (2012-05-31 13:16:10 +0200)
are available in the git repository at:
git://git.free-electrons.com/users/thomas-petazzoni/buildroot.git for-2012.08/new-packages
for you to fetch changes up to 655f8a8354c421c2c1147e56e4ed91ae6c12de81:
libqwt: new package (2012-06-02 15:42:56 +0200)
----------------------------------------------------------------
Laurent GONZALEZ (1):
libqwt: new package
Thomas Petazzoni (9):
monit: new package
libcurl: fix up prefix in curl-config
libxmlrpc: new package
llrp-toolkit: new package
qextserialport: new package
pciutils: install headers and libraries in STAGING_DIR
dmidecode: new package
flashrom: new package
qt: make $(HOST_DIR)/usr/mkspecs a symlink to $(STAGING_DIR)/usr/mkspecs
package/Config.in | 9 + package/dmidecode/Config.in | 9 + .../dmidecode/dmidecode-build-system-fixes.patch | 35 ++++ package/dmidecode/dmidecode.mk | 18 ++ package/flashrom/Config.in | 11 ++ package/flashrom/flashrom.mk | 20 +++ package/libcurl/libcurl.mk | 6 + package/libqwt/Config.in | 23 +++ package/libqwt/libqwt-remove-installed-check.patch | 32 ++++ package/libqwt/libqwt.mk | 51 ++++++ package/libxmlrpc/Config.in | 10 ++ .../libxmlrpc/libxmlrpc-fix-gennmtab-build.patch | 25 +++ .../libxmlrpc-fix-non-cplusplus-build.patch | 27 +++ .../libxmlrpc/libxmlrpc-fix-non-wchar-build.patch | 24 +++ .../libxmlrpc-remove-curl-types-h-include.patch | 43 +++++ .../libxmlrpc-use-correct-curl-config.patch | 22 +++ package/libxmlrpc/libxmlrpc.mk | 44 +++++ package/llrp-toolkit/Config.in | 11 ++ .../llrp-toolkit-01-ltkcpp-fix-headers.patch | 74 +++++++++ ...toolkit-02-ltkcpp-generate-shared-library.patch | 43 +++++ ...-toolkit-03-ltkcpp-normalize-build-system.patch | 174 ++++++++++++++++++++ .../llrp-toolkit-04-ltkcpp-disable-warning.patch | 43 +++++ .../llrp-toolkit-05-ltkc-shared-library.patch | 26 +++ ...rp-toolkit-06-ltkc-normalize-build-system.patch | 163 ++++++++++++++++++ package/llrp-toolkit/llrp-toolkit.mk | 77 +++++++++ package/monit/Config.in | 10 ++ package/monit/monit.mk | 30 ++++ package/pciutils/pciutils.mk | 8 + package/qextserialport/Config.in | 9 + .../qextserialport-main-include.patch | 15 ++ .../qextserialport-no-examples.patch | 17 ++ .../qextserialport/qextserialport-pkgconfig.patch | 19 +++ package/qextserialport/qextserialport.mk | 35 ++++ package/qt/qt.mk | 3 +- 34 files changed, 1164 insertions(+), 2 deletions(-) create mode 100644 package/dmidecode/Config.in create mode 100644 package/dmidecode/dmidecode-build-system-fixes.patch create mode 100644 package/dmidecode/dmidecode.mk create mode 100644 package/flashrom/Config.in create mode 100644 package/flashrom/flashrom.mk create mode 100644 package/libqwt/Config.in create mode 100644 package/libqwt/libqwt-remove-installed-check.patch create mode 100644 package/libqwt/libqwt.mk create mode 100644 package/libxmlrpc/Config.in create mode 100644 package/libxmlrpc/libxmlrpc-fix-gennmtab-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-fix-non-cplusplus-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-fix-non-wchar-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-remove-curl-types-h-include.patch create mode 100644 package/libxmlrpc/libxmlrpc-use-correct-curl-config.patch create mode 100644 package/libxmlrpc/libxmlrpc.mk create mode 100644 package/llrp-toolkit/Config.in create mode 100644 package/llrp-toolkit/llrp-toolkit-01-ltkcpp-fix-headers.patch create mode 100644 package/llrp-toolkit/llrp-toolkit-02-ltkcpp-generate-shared-library.patch create mode 100644 package/llrp-toolkit/llrp-toolkit-03-ltkcpp-normalize-build-system.patch create mode 100644 package/llrp-toolkit/llrp-toolkit-04-ltkcpp-disable-warning.patch create mode 100644 package/llrp-toolkit/llrp-toolkit-05-ltkc-shared-library.patch create mode 100644 package/llrp-toolkit/llrp-toolkit-06-ltkc-normalize-build-system.patch create mode 100644 package/llrp-toolkit/llrp-toolkit.mk create mode 100644 package/monit/Config.in create mode 100644 package/monit/monit.mk create mode 100644 package/qextserialport/Config.in create mode 100644 package/qextserialport/qextserialport-main-include.patch create mode 100644 package/qextserialport/qextserialport-no-examples.patch create mode 100644 package/qextserialport/qextserialport-pkgconfig.patch create mode 100644 package/qextserialport/qextserialport.mk
Thanks,
Signature · 1 line
Thomas Petazzoni
PATCH 1/10 monit: new package
--- package/Config.in | 3 +++ package/monit/Config.in | 10 ++++++++++ package/monit/monit.mk | 30 ++++++++++++++++++++++++++++++ 3 files changed, 43 insertions(+) create mode 100644 package/monit/Config.in create mode 100644 package/monit/monit.mk
package/Config.in +3 -0
@@ -644,6 +644,9 @@ source "package/htop/Config.in" source "package/kmod/Config.in" if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/module-init-tools/Config.in" +endif +source "package/monit/Config.in" +if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/procps/Config.in" source "package/psmisc/Config.in" source "package/rsyslog/Config.in"
package/monit/Config.in new file +10 -0
@@ -0,0 +1,10 @@ +config BR2_PACKAGE_MONIT + bool "monit" + help + Monit is a free open source utility for managing and + monitoring, processes, programs, files, directories and + filesystems on a UNIX system. Monit conducts automatic + maintenance and repair and can execute meaningful causal + actions in error situations. + + http://mmonit.com/monit/
package/monit/monit.mk new file +30 -0
@@ -0,0 +1,30 @@ +############################################################# +# +# monit +# +############################################################# + +MONIT_VERSION = 5.4 +MONIT_SITE = http://mmonit.com/monit/dist/ + +MONIT_CONF_ENV = \ + libmonit_cv_setjmp_available=yes \ + libmonit_cv_vsnprintf_c99_conformant=yes + +MONIT_CONF_OPT += \ + --without-pam + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +MONIT_CONF_OPT += --with-ssl +MONIT_DEPENDENCIES += openssl +else +MONIT_CONF_OPT += --without-ssl +endif + +ifeq ($(BR2_LARGEFILE),y) +MONIT_CONF_OPT += --with-largefiles +else +MONIT_CONF_OPT += --without-largefiles +endif + +$(eval $(call AUTOTARGETS))
Signature · 1 line
1.7.9.5
PATCH 1/10 monit: new package
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Thomas" == Thomas Petazzoni <[email protected]> writes:
Thomas> Signed-off-by: Thomas Petazzoni <[email protected]>
Committed, thanks.
Signature · 1 line
Bye, Peter Korsgaard
PATCH 2/10 libcurl: fix up prefix in curl-config
In reply to Thomas PetazzoniWhile most packages that rely on libcurl use pkg-config, a few packages (such as libxmlrpc) still use curl-config. So we need to fix up the prefix locations in the curl-config script installed in STAGING_DIR.
--- package/libcurl/libcurl.mk | 6 ++++++ 1 file changed, 6 insertions(+)
package/libcurl/libcurl.mk +6 -0
@@ -30,6 +30,12 @@ endef LIBCURL_POST_INSTALL_TARGET_HOOKS += LIBCURL_TARGET_CLEANUP +define LIBCURL_STAGING_FIXUP_CURL_CONFIG + $(SED) "s,prefix=,prefix=$(STAGING_DIR)," $(STAGING_DIR)/usr/bin/curl-config +endef + +LIBCURL_POST_INSTALL_STAGING_HOOKS += LIBCURL_STAGING_FIXUP_CURL_CONFIG + $(eval $(call AUTOTARGETS)) curl: libcurl
Signature · 1 line
1.7.9.5
PATCH 2/10 libcurl: fix up prefix in curl-config
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Thomas" == Thomas Petazzoni <[email protected]> writes:
Thomas> While most packages that rely on libcurl use pkg-config, a few Thomas> packages (such as libxmlrpc) still use curl-config. So we need to fix Thomas> up the prefix locations in the curl-config script installed in Thomas> STAGING_DIR.
Thomas> Signed-off-by: Thomas Petazzoni <[email protected]> Thomas> ---
Thomas> package/libcurl/libcurl.mk | 6 ++++++
Thomas> 1 file changed, 6 insertions(+)
Thomas> diff --git a/package/libcurl/libcurl.mk b/package/libcurl/libcurl.mk Thomas> index e8f13bb..e43ff0f 100644
Thomas> --- a/package/libcurl/libcurl.mk
Thomas> +++ b/package/libcurl/libcurl.mk
Thomas> @@ -30,6 +30,12 @@ endef
Thomas> LIBCURL_POST_INSTALL_TARGET_HOOKS += LIBCURL_TARGET_CLEANUP
Thomas> +define LIBCURL_STAGING_FIXUP_CURL_CONFIG
Thomas> + $(SED) "s,prefix=,prefix=$(STAGING_DIR)," $(STAGING_DIR)/usr/bin/curl-config
For the other -config scripts we only replace if we match prefix=/usr to ensure things don't get screwed up if this step is ever ran more than once, so I fixed that - Committed, thanks.
Signature · 1 line
Bye, Peter Korsgaard
PATCH 3/10 libxmlrpc: new package
In reply to Thomas Petazzoni--- package/Config.in | 1 + package/libxmlrpc/Config.in | 10 +++++ .../libxmlrpc/libxmlrpc-fix-gennmtab-build.patch | 25 +++++++++++ .../libxmlrpc-fix-non-cplusplus-build.patch | 27 ++++++++++++ .../libxmlrpc/libxmlrpc-fix-non-wchar-build.patch | 24 +++++++++++ .../libxmlrpc-remove-curl-types-h-include.patch | 43 +++++++++++++++++++ .../libxmlrpc-use-correct-curl-config.patch | 22 ++++++++++ package/libxmlrpc/libxmlrpc.mk | 44 ++++++++++++++++++++ 8 files changed, 196 insertions(+) create mode 100644 package/libxmlrpc/Config.in create mode 100644 package/libxmlrpc/libxmlrpc-fix-gennmtab-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-fix-non-cplusplus-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-fix-non-wchar-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-remove-curl-types-h-include.patch create mode 100644 package/libxmlrpc/libxmlrpc-use-correct-curl-config.patch create mode 100644 package/libxmlrpc/libxmlrpc.mk
package/Config.in +1 -0
@@ -468,6 +468,7 @@ source "package/json-c/Config.in" source "package/libroxml/Config.in" source "package/libxml-parser-perl/Config.in" source "package/libxml2/Config.in" +source "package/libxmlrpc/Config.in" source "package/libxslt/Config.in" source "package/libyaml/Config.in" source "package/mxml/Config.in"
package/libxmlrpc/Config.in new file +10 -0
@@ -0,0 +1,10 @@ +config BR2_PACKAGE_LIBXMLRPC + bool "libxmlrpc" + select BR2_PACKAGE_LIBCURL + help + XML-RPC is a quick-and-easy way to make procedure calls over + the Internet. It converts the procedure call into an XML + document, sends it to a remote server using HTTP, and gets + back the response as XML. + + http://xmlrpc-c.sourceforge.net/
package/libxmlrpc/libxmlrpc-fix-gennmtab-build.patch new file +25 -0
@@ -0,0 +1,25 @@ +Fix build of host tool + +genmtab is a tool that needs to be built for the host as it is used +during the compilation process of libxmlrpc. Its Makefile needs a bit +of tuning to use the conventional CC_FOR_BUILD, CFLAGS_FOR_BUILD and +LDFLAGS_FOR_BUILD variables. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/lib/expat/gennmtab/Makefile +=================================================================== +--- a/lib/expat/gennmtab/Makefile ++++ b/lib/expat/gennmtab/Makefile +@@ -40,9 +40,9 @@ + dep: dep-common + + gennmtab.o:%.o:%.c +- $(BUILDTOOL_CC) -c $< -o $@ $(CFLAGS_ALL) $(INCLUDES) ++ $(CC_FOR_BUILD) -c $< -o $@ $(CFLAGS_FOR_BUILD) $(INCLUDES) + + gennmtab:%:%.o +- $(BUILDTOOL_CCLD) -o $@ $(LDFLAGS) $^ ++ $(CC_FOR_BUILD) -o $@ $(LDFLAGS_FOR_BUILD) $^ + + include depend.mk
package/libxmlrpc/libxmlrpc-fix-non-cplusplus-build.patch new file +27 -0
@@ -0,0 +1,27 @@ +Handle builds without C++ + +libxmlrpc nicely handles the fact of being built without C++ support, +except for one location, fixed by this patch. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/lib/util/Makefile +=================================================================== +--- a/lib/util/Makefile ++++ b/lib/util/Makefile +@@ -36,11 +36,14 @@ + LIBOBJS = \ + casprintf.o \ + cmdline_parser.o \ +- cmdline_parser_cpp.o \ + getoptx.o \ + string_parser.o \ + stripcaseeq.o \ + ++ifeq ($(ENABLE_CPLUSPLUS),yes) ++LIBOBJS += cmdline_parser_cpp.o ++endif ++ + .PHONY: all + all: $(LIBOBJS) +
package/libxmlrpc/libxmlrpc-fix-non-wchar-build.patch new file +24 -0
@@ -0,0 +1,24 @@ +Disable wide-char specific code + +The vast majority of the libxmlrpc code nicely handles the absence of +wide char support, except at one location, which is fixed by this +patch. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/src/xmlrpc_decompose.c +=================================================================== +--- a/src/xmlrpc_decompose.c ++++ b/src/xmlrpc_decompose.c +@@ -221,7 +221,11 @@ + xmlrpc_strfree(*decompRootP->store.Tstring.valueP); + break; + case 'w': ++#if HAVE_UNICODE_WCHAR + free((void*)*decompRootP->store.TwideString.valueP); ++#else ++ XMLRPC_ASSERT(false); ++#endif + break; + case '6': + free((void*)*decompRootP->store.TbitString.valueP);
package/libxmlrpc/libxmlrpc-remove-curl-types-h-include.patch new file +43 -0
43 lines not on this page · raw message
package/libxmlrpc/libxmlrpc-use-correct-curl-config.patch new file +22 -0
@@ -0,0 +1,22 @@ +Use correct curl-config program + +Instead of calling again curl-config in src/Makefile (which ends up +calling the wrong curl-config: the one in the PATH instead of the one +pointed at by the environment variables at configure time), let's use +the CURL_LDADD variable which was computed at configure time. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/src/Makefile +=================================================================== +--- a/src/Makefile ++++ b/src/Makefile +@@ -56,7 +56,7 @@ + TRANSPORT_MODS += $(BLDDIR)/lib/curl_transport/curltransaction + TRANSPORT_MODS += $(BLDDIR)/lib/curl_transport/curlmulti + TRANSPORT_MODS += $(BLDDIR)/lib/curl_transport/lock_pthread +- TRANSPORT_LIBDEP += $(shell curl-config --libs) ++ TRANSPORT_LIBDEP += $(CURL_LDADD) + endif + ifeq ($(MUST_BUILD_LIBWWW_CLIENT),yes) + TRANSPORT_MODS += $(BLDDIR)/lib/libwww_transport/xmlrpc_libwww_transport
package/libxmlrpc/libxmlrpc.mk new file +44 -0
44 lines not on this page · raw message
Signature · 1 line
1.7.9.5
PATCH 3/10 libxmlrpc: new package
package/libxmlrpc/libxmlrpc.mk
Quoted 3 lines · Thomas Petazzoni
package/libxmlrpc/libxmlrpc.mk new file +3
-0+LIBXMLRPC_VERSION = 1.18.05 +LIBXMLRPC_SOURCE = xmlrpc-c-$(LIBXMLRPC_VERSION).tgz +LIBXMLRPC_SITE ="http://xmlrpc-c.svn.sourceforge.net/viewvc/xmlrpc-c/advanced/?view=tar&pathrev=1716"
It's a bit strange to use a three-year-old unstable version...
From the website:
Latest Tarballs
Series Number
Development unnumbered
Advanced 1.30.06
Stable 1.25.16
Super Stable 1.16.41
[snip]
package/libxmlrpc/libxmlrpc.mk line 44
Quoted 8 lines
package/libxmlrpc/libxmlrpc.mk new file +8
-0+# Override the download step since we don't have the normal +# site/source split (where site is the URL of the directory and source +# is the name of the tarball file). +$(LIBXMLRPC_DIR)/.stamp_downloaded: + $(Q)$(call MESSAGE,"Downloading") + $(call DOWNLOAD,$(LIBXMLRPC_SITE),$(LIBXMLRPC_SOURCE)) + $(Q)mkdir -p $(@D) + $(Q)touch $@
A simpler solution would be to just use the svn download method, from
https://xmlrpc-c.svn.sourceforge.net/svnroot/xmlrpc-c/stable/
Regards,
Arnout
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286540 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
PATCH 1/1 libxmlrpc: new package
From: Alvaro G. M. <[email protected]>
---
I recovered an old patch from Thomas (http://lists.busybox.net/pipermail/buildroot/2012-June/054467.html)
and upgraded it to the stable version of xml-rpc-c.
Some of the original patches are not needed on this version, so I've mostly just deleted a patch files, upgraded download address and version and modified patch offsets so they apply without any warning.
package/Config.in | 1 + package/libxmlrpc/Config.in | 10 +++++++ .../libxmlrpc/libxmlrpc-fix-gennmtab-build.patch | 25 ++++++++++++++++ .../libxmlrpc-fix-non-cplusplus-build.patch | 27 +++++++++++++++++ .../libxmlrpc/libxmlrpc-fix-non-wchar-build.patch | 24 +++++++++++++++ .../libxmlrpc-use-correct-curl-config.patch | 22 ++++++++++++++ package/libxmlrpc/libxmlrpc.mk | 34 ++++++++++++++++++++++ 7 files changed, 143 insertions(+) create mode 100644 package/libxmlrpc/Config.in create mode 100644 package/libxmlrpc/libxmlrpc-fix-gennmtab-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-fix-non-cplusplus-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-fix-non-wchar-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-use-correct-curl-config.patch create mode 100644 package/libxmlrpc/libxmlrpc.mk
package/Config.in +1 -0
@@ -727,6 +727,7 @@ source "package/libjson/Config.in" source "package/libroxml/Config.in" source "package/libxml-parser-perl/Config.in" source "package/libxml2/Config.in" +source "package/libxmlrpc/Config.in" source "package/libxmlpp/Config.in" source "package/libxslt/Config.in" source "package/libyaml/Config.in"
package/libxmlrpc/Config.in new file +10 -0
@@ -0,0 +1,10 @@ +config BR2_PACKAGE_LIBXMLRPC + bool "libxmlrpc" + select BR2_PACKAGE_LIBCURL + help + XML-RPC is a quick-and-easy way to make procedure calls over + the Internet. It converts the procedure call into an XML + document, sends it to a remote server using HTTP, and gets + back the response as XML. + + http://xmlrpc-c.sourceforge.net/
package/libxmlrpc/libxmlrpc-fix-gennmtab-build.patch new file +25 -0
@@ -0,0 +1,25 @@ +Fix build of host tool + +genmtab is a tool that needs to be built for the host as it is used +during the compilation process of libxmlrpc. Its Makefile needs a bit +of tuning to use the conventional CC_FOR_BUILD, CFLAGS_FOR_BUILD and +LDFLAGS_FOR_BUILD variables. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/lib/expat/gennmtab/Makefile +=================================================================== +--- a/lib/expat/gennmtab/Makefile ++++ b/lib/expat/gennmtab/Makefile +@@ -40,9 +40,9 @@ + dep: dep-common + + gennmtab.o:%.o:%.c +- $(BUILDTOOL_CC) -c $< -o $@ $(CFLAGS_ALL) $(INCLUDES) ++ $(CC_FOR_BUILD) -c $< -o $@ $(CFLAGS_FOR_BUILD) $(INCLUDES) + + gennmtab:%:%.o +- $(BUILDTOOL_CCLD) -o $@ $(LDFLAGS) $^ ++ $(CC_FOR_BUILD) -o $@ $(LDFLAGS_FOR_BUILD) $^ + + include depend.mk
package/libxmlrpc/libxmlrpc-fix-non-cplusplus-build.patch new file +27 -0
@@ -0,0 +1,27 @@ +Handle builds without C++ + +libxmlrpc nicely handles the fact of being built without C++ support, +except for one location, fixed by this patch. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/lib/util/Makefile +=================================================================== +--- a/lib/util/Makefile ++++ b/lib/util/Makefile +@@ -41,11 +41,14 @@ + LIBOBJS = \ + casprintf.o \ + cmdline_parser.o \ +- cmdline_parser_cpp.o \ + getoptx.o \ + string_parser.o \ + stripcaseeq.o \ + ++ifeq ($(ENABLE_CPLUSPLUS),yes) ++LIBOBJS += cmdline_parser_cpp.o ++endif ++ + .PHONY: all + all: $(LIBOBJS) +
package/libxmlrpc/libxmlrpc-fix-non-wchar-build.patch new file +24 -0
@@ -0,0 +1,24 @@ +Disable wide-char specific code + +The vast majority of the libxmlrpc code nicely handles the absence of +wide char support, except at one location, which is fixed by this +patch. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/src/xmlrpc_decompose.c +=================================================================== +--- a/src/xmlrpc_decompose.c ++++ b/src/xmlrpc_decompose.c +@@ -217,7 +217,11 @@ + xmlrpc_strfree(*decompRootP->store.Tstring.valueP); + break; + case 'w': ++#if HAVE_UNICODE_WCHAR + free((void*)*decompRootP->store.TwideString.valueP); ++#else ++ XMLRPC_ASSERT(false); ++#endif + break; + case '6': + free((void*)*decompRootP->store.TbitString.valueP);
package/libxmlrpc/libxmlrpc-use-correct-curl-config.patch new file +22 -0
@@ -0,0 +1,22 @@ +Use correct curl-config program + +Instead of calling again curl-config in src/Makefile (which ends up +calling the wrong curl-config: the one in the PATH instead of the one +pointed at by the environment variables at configure time), let's use +the CURL_LDADD variable which was computed at configure time. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/src/Makefile +=================================================================== +--- a/src/Makefile ++++ b/src/Makefile +@@ -56,7 +56,7 @@ + TRANSPORT_MODS += blddir/lib/curl_transport/curltransaction + TRANSPORT_MODS += blddir/lib/curl_transport/curlmulti + TRANSPORT_MODS += blddir/lib/curl_transport/lock_pthread +- TRANSPORT_LIBDEP += $(shell curl-config --libs) ++ TRANSPORT_LIBDEP += $(CURL_LDADD) + endif + ifeq ($(MUST_BUILD_LIBWWW_CLIENT),yes) + TRANSPORT_MODS += blddir/lib/libwww_transport/xmlrpc_libwww_transport
package/libxmlrpc/libxmlrpc.mk new file +34 -0
@@ -0,0 +1,34 @@ +############################################################# +# +# libxmlrpc +# +############################################################# +LIBXMLRPC_VERSION = 1.25.26 +LIBXMLRPC_SOURCE = xmlrpc-c-$(LIBXMLRPC_VERSION).tgz +LIBXMLRPC_SITE = "http://downloads.sourceforge.net/project/xmlrpc-c/Xmlrpc-c%20Super%20Stable/1.25.26" +LIBXMLRPC_INSTALL_STAGING = YES +LIBXMLRPC_DEPENDENCIES = libcurl + +LIBXMLRPC_CONF_OPT = \ + $(if $(BR2_USE_WCHAR),,ac_cv_header_wchar_h=no) \ + $(if $(BR2_INSTALL_LIBSTDCPP),,--disable-cplusplus) \ + have_curl_config=$(STAGING_DIR)/usr/bin/curl-config \ + CURL_CONFIG=$(STAGING_DIR)/usr/bin/curl-config + +# Our package uses autoconf, but not automake, so we need to pass +# those variables at compile time as well. +LIBXMLRPC_MAKE_ENV = \ + CC_FOR_BUILD="$(HOSTCC)" \ + LD_FOR_BUILD="$(HOSTLD)" \ + CFLAGS_FOR_BUILD="$(HOST_CFLAGS)" \ + LDFLAGS_FOR_BUILD="$(HOST_LDFLAGS)" + +define LIBXMLRPC_REMOVE_DEVFILE + $(RM) $(TARGET_DIR)/usr/bin/xmlrpc-c-config +endef + +ifeq ($(BR2_HAVE_DEVFILES),) +LIBXMLRPC_POST_INSTALL_TARGET_HOOKS += LIBXMLRPC_REMOVE_DEVFILE +endif + +$(eval $(autotools-package))
Signature · 1 line
1.8.4.rc3
PATCH 1/1 libxmlrpc: new package
Dear Alvaro G. M,
Quoted 12 lines · Alvaro G. M
From: Alvaro G. M. <[email protected]>
Signed-off-by Thomas Petazzoni <[email protected]>Signed-off-by Alvaro G. M <[email protected]>---
I recovered an old patch from Thomas (http://lists.busybox.net/pipermail/buildroot/2012-June/054467.html)
and upgraded it to the stable version of xml-rpc-c.
Some of the original patches are not needed on this version, so I've mostly just deleted a patch files, upgraded download address and version and modified patch offsets so they apply without any warning.
Quoted 6 lines
package/Config.in | 1 + package/libxmlrpc/Config.in | 10 +++++++ .../libxmlrpc/libxmlrpc-fix-gennmtab-build.patch | 25 ++++++++++++++++ .../libxmlrpc-fix-non-cplusplus-build.patch | 27 +++++++++++++++++ .../libxmlrpc/libxmlrpc-fix-non-wchar-build.patch | 24 +++++++++++++++ .../libxmlrpc-use-correct-curl-config.patch | 22 ++++++++++++++
It would be good to use a number in the patch file names, such as:
libxmlrpc-01-<something>.patch
libxmlrpc-02-<somethingelse>.patch
package/libxmlrpc/libxmlrpc.mk line 1
Quoted 6 lines
new file mode 100644
index 0000000..ef41041package/libxmlrpc/libxmlrpc.mk new file +1
-0@@ -0,0 +1,34 @@ +#############################################################
Those lines should have 80 #
package/libxmlrpc/libxmlrpc.mk line 5
Quoted 4 lines
package/libxmlrpc/libxmlrpc.mk new file +4
-0+# +# libxmlrpc +# +#############################################################
One empty line between the header and the first variable.
package/libxmlrpc/libxmlrpc.mk line 10
Quoted 5 lines
package/libxmlrpc/libxmlrpc.mk new file +5
-0+LIBXMLRPC_VERSION = 1.25.26 +LIBXMLRPC_SOURCE = xmlrpc-c-$(LIBXMLRPC_VERSION).tgz +LIBXMLRPC_SITE = "http://downloads.sourceforge.net/project/xmlrpc-c/Xmlrpc-c%20Super%20Stable/1.25.26" +LIBXMLRPC_INSTALL_STAGING = YES +LIBXMLRPC_DEPENDENCIES = libcurl
Can you add LIBXMLRPC_LICENSE and LIBXMLRPC_LICENSE_FILES ?
Quoted 7 lines
package/libxmlrpc/libxmlrpc.mk new file +7
-0+LIBXMLRPC_CONF_OPT = \ + $(if $(BR2_USE_WCHAR),,ac_cv_header_wchar_h=no) \ + $(if $(BR2_INSTALL_LIBSTDCPP),,--disable-cplusplus) \ + have_curl_config=$(STAGING_DIR)/usr/bin/curl-config \ + CURL_CONFIG=$(STAGING_DIR)/usr/bin/curl-config + +# Our package uses autoconf, but not automake, so we need to pass
package/libxmlrpc/libxmlrpc.mk line 28
Quoted 10 lines
package/libxmlrpc/libxmlrpc.mk new file +10
-0+# those variables at compile time as well. +LIBXMLRPC_MAKE_ENV = \ + CC_FOR_BUILD="$(HOSTCC)" \ + LD_FOR_BUILD="$(HOSTLD)" \ + CFLAGS_FOR_BUILD="$(HOST_CFLAGS)" \ + LDFLAGS_FOR_BUILD="$(HOST_LDFLAGS)" + +define LIBXMLRPC_REMOVE_DEVFILE + $(RM) $(TARGET_DIR)/usr/bin/xmlrpc-c-config +endef
Hum, maybe this should use the <pkg>_CONFIG_SCRIPTS mechanism instead (if xmlrpc-c-config is a shell script).
package/libxmlrpc/libxmlrpc.mk line 34
Quoted 6 lines
package/libxmlrpc/libxmlrpc.mk new file +6
-0+ +ifeq ($(BR2_HAVE_DEVFILES),) +LIBXMLRPC_POST_INSTALL_TARGET_HOOKS += LIBXMLRPC_REMOVE_DEVFILE +endif + +$(eval $(autotools-package))
Thanks,
Thomas
Signature · 3 lines
Thomas Petazzoni, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH 1/1 libxmlrpc: new package
Hi!
2013/10/9 Thomas Petazzoni <[email protected]>
Quoted 5 lines
It would be good to use a number in the patch file names, such as:
libxmlrpc-01-<something>.patch
libxmlrpc-02-<somethingelse>.patch
In this case, the order doesn't matter, but will do anyway
Quoted 1 line
+#############################################################
Those lines should have 80 #
Quoted 1 line
Done.
Quoted 2 lines
One empty line between the header and the first variable.
And done.
Quoted 2 lines
Can you add
LIBXMLRPC_LICENSEandLIBXMLRPC_LICENSE_FILES?
Done, although it's not perfect, there are three different licenses, two of them bsd like... it's a bit confusing.
Quoted 7 lines
package/libxmlrpc/libxmlrpc.mk line 28
Quoted 3 lines
package/libxmlrpc/libxmlrpc.mk new file +3
-0+define LIBXMLRPC_REMOVE_DEVFILE + $(RM) $(TARGET_DIR)/usr/bin/xmlrpc-c-config +endefHum, maybe this should use the <pkg>_CONFIG_SCRIPTS mechanism instead (if xmlrpc-c-config is a shell script).
Yes, it is much cleaner now.
I'm sending the new patch right now
Signature · 4 lines
?lvaro G?mez Machado -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20131009/0ecef81e/attachment-0001.html>
PATCH 1/1 libxmlrpc: new package
--- package/Config.in | 1 + package/libxmlrpc/Config.in | 10 ++++++++ .../libxmlrpc-01-fix-gennmtab-build.patch | 25 ++++++++++++++++++ .../libxmlrpc-02-fix-non-cplusplus-build.patch | 27 +++++++++++++++++++ .../libxmlrpc/libxmlrpc-03-non-wchar-build.patch | 24 +++++++++++++++++ .../libxmlrpc-04-use-correct-curl-config.patch | 22 ++++++++++++++++ package/libxmlrpc/libxmlrpc.mk | 30 ++++++++++++++++++++++ 7 files changed, 139 insertions(+) create mode 100644 package/libxmlrpc/Config.in create mode 100644 package/libxmlrpc/libxmlrpc-01-fix-gennmtab-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-02-fix-non-cplusplus-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-03-non-wchar-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-04-use-correct-curl-config.patch create mode 100644 package/libxmlrpc/libxmlrpc.mk
package/Config.in +1 -0
@@ -727,6 +727,7 @@ source "package/libjson/Config.in" source "package/libroxml/Config.in" source "package/libxml-parser-perl/Config.in" source "package/libxml2/Config.in" +source "package/libxmlrpc/Config.in" source "package/libxmlpp/Config.in" source "package/libxslt/Config.in" source "package/libyaml/Config.in"
package/libxmlrpc/Config.in new file +10 -0
@@ -0,0 +1,10 @@ +config BR2_PACKAGE_LIBXMLRPC + bool "libxmlrpc" + select BR2_PACKAGE_LIBCURL + help + XML-RPC is a quick-and-easy way to make procedure calls over + the Internet. It converts the procedure call into an XML + document, sends it to a remote server using HTTP, and gets + back the response as XML. + + http://xmlrpc-c.sourceforge.net/
package/libxmlrpc/libxmlrpc-01-fix-gennmtab-build.patch new file +25 -0
@@ -0,0 +1,25 @@ +Fix build of host tool + +genmtab is a tool that needs to be built for the host as it is used +during the compilation process of libxmlrpc. Its Makefile needs a bit +of tuning to use the conventional CC_FOR_BUILD, CFLAGS_FOR_BUILD and +LDFLAGS_FOR_BUILD variables. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/lib/expat/gennmtab/Makefile +=================================================================== +--- a/lib/expat/gennmtab/Makefile ++++ b/lib/expat/gennmtab/Makefile +@@ -40,9 +40,9 @@ + dep: dep-common + + gennmtab.o:%.o:%.c +- $(BUILDTOOL_CC) -c $< -o $@ $(CFLAGS_ALL) $(INCLUDES) ++ $(CC_FOR_BUILD) -c $< -o $@ $(CFLAGS_FOR_BUILD) $(INCLUDES) + + gennmtab:%:%.o +- $(BUILDTOOL_CCLD) -o $@ $(LDFLAGS) $^ ++ $(CC_FOR_BUILD) -o $@ $(LDFLAGS_FOR_BUILD) $^ + + include depend.mk
package/libxmlrpc/libxmlrpc-02-fix-non-cplusplus-build.patch new file +27 -0
@@ -0,0 +1,27 @@ +Handle builds without C++ + +libxmlrpc nicely handles the fact of being built without C++ support, +except for one location, fixed by this patch. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/lib/util/Makefile +=================================================================== +--- a/lib/util/Makefile ++++ b/lib/util/Makefile +@@ -41,11 +41,14 @@ + LIBOBJS = \ + casprintf.o \ + cmdline_parser.o \ +- cmdline_parser_cpp.o \ + getoptx.o \ + string_parser.o \ + stripcaseeq.o \ + ++ifeq ($(ENABLE_CPLUSPLUS),yes) ++LIBOBJS += cmdline_parser_cpp.o ++endif ++ + .PHONY: all + all: $(LIBOBJS) +
package/libxmlrpc/libxmlrpc-03-non-wchar-build.patch new file +24 -0
@@ -0,0 +1,24 @@ +Disable wide-char specific code + +The vast majority of the libxmlrpc code nicely handles the absence of +wide char support, except at one location, which is fixed by this +patch. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/src/xmlrpc_decompose.c +=================================================================== +--- a/src/xmlrpc_decompose.c ++++ b/src/xmlrpc_decompose.c +@@ -217,7 +217,11 @@ + xmlrpc_strfree(*decompRootP->store.Tstring.valueP); + break; + case 'w': ++#if HAVE_UNICODE_WCHAR + free((void*)*decompRootP->store.TwideString.valueP); ++#else ++ XMLRPC_ASSERT(false); ++#endif + break; + case '6': + free((void*)*decompRootP->store.TbitString.valueP);
package/libxmlrpc/libxmlrpc-04-use-correct-curl-config.patch new file +22 -0
@@ -0,0 +1,22 @@ +Use correct curl-config program + +Instead of calling again curl-config in src/Makefile (which ends up +calling the wrong curl-config: the one in the PATH instead of the one +pointed at by the environment variables at configure time), let's use +the CURL_LDADD variable which was computed at configure time. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/src/Makefile +=================================================================== +--- a/src/Makefile ++++ b/src/Makefile +@@ -56,7 +56,7 @@ + TRANSPORT_MODS += blddir/lib/curl_transport/curltransaction + TRANSPORT_MODS += blddir/lib/curl_transport/curlmulti + TRANSPORT_MODS += blddir/lib/curl_transport/lock_pthread +- TRANSPORT_LIBDEP += $(shell curl-config --libs) ++ TRANSPORT_LIBDEP += $(CURL_LDADD) + endif + ifeq ($(MUST_BUILD_LIBWWW_CLIENT),yes) + TRANSPORT_MODS += blddir/lib/libwww_transport/xmlrpc_libwww_transport
package/libxmlrpc/libxmlrpc.mk new file +30 -0
@@ -0,0 +1,30 @@ +################################################################################ +# +# libxmlrpc +# +################################################################################ + +LIBXMLRPC_VERSION = 1.25.26 +LIBXMLRPC_SOURCE = xmlrpc-c-$(LIBXMLRPC_VERSION).tgz +LIBXMLRPC_SITE = "http://downloads.sourceforge.net/project/xmlrpc-c/Xmlrpc-c%20Super%20Stable/1.25.26" +LIBXMLRPC_LICENSE = BSD-like, Expat, Python 1.5.2 License +LIBXMLRPC_LICENSE_FILES = doc/COPYING +LIBXMLRPC_INSTALL_STAGING = YES +LIBXMLRPC_DEPENDENCIES = libcurl +LIBXMLRPC_CONFIG_SCRIPTS = xmlrpc-c-config + +LIBXMLRPC_CONF_OPT = \ + $(if $(BR2_USE_WCHAR),,ac_cv_header_wchar_h=no) \ + $(if $(BR2_INSTALL_LIBSTDCPP),,--disable-cplusplus) \ + have_curl_config=$(STAGING_DIR)/usr/bin/curl-config \ + CURL_CONFIG=$(STAGING_DIR)/usr/bin/curl-config + +# Our package uses autoconf, but not automake, so we need to pass +# those variables at compile time as well. +LIBXMLRPC_MAKE_ENV = \ + CC_FOR_BUILD="$(HOSTCC)" \ + LD_FOR_BUILD="$(HOSTLD)" \ + CFLAGS_FOR_BUILD="$(HOST_CFLAGS)" \ + LDFLAGS_FOR_BUILD="$(HOST_LDFLAGS)" + +$(eval $(autotools-package))
Signature · 1 line
1.8.4.rc3
PATCH 1/1 libxmlrpc: new package
Hi Alvaro,
Quoted 17 lines · Alvaro G. M
Signed-off-by Thomas Petazzoni <[email protected]>Signed-off-by Alvaro G. M <[email protected]>--- package/Config.in | 1 + package/libxmlrpc/Config.in | 10 ++++++++ .../libxmlrpc-01-fix-gennmtab-build.patch | 25 ++++++++++++++++++ .../libxmlrpc-02-fix-non-cplusplus-build.patch | 27 +++++++++++++++++++ .../libxmlrpc/libxmlrpc-03-non-wchar-build.patch | 24 +++++++++++++++++ .../libxmlrpc-04-use-correct-curl-config.patch | 22 ++++++++++++++++ package/libxmlrpc/libxmlrpc.mk | 30 ++++++++++++++++++++++ 7 files changed, 139 insertions(+) create mode 100644 package/libxmlrpc/Config.in create mode 100644 package/libxmlrpc/libxmlrpc-01-fix-gennmtab-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-02-fix-non-cplusplus-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-03-non-wchar-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-04-use-correct-curl-config.patch create mode 100644 package/libxmlrpc/libxmlrpc.mk
We have had a long discussion on two buildroot developer days about the format of the number in patch names. I thought we had decided to use a four-digit format to correspond to the patches generated with git. So this should be 0001, 0002, etc.
However, this may be mis-remembered by me, so I'm including some of the people involved in that discussion to this mail...
package/Config.in source "package/libjson/Config.in" · line 731
Quoted 11 lines
package/Config.in +1
-0@@ -727,6 +727,7 @@ source "package/libjson/Config.in" source "package/libroxml/Config.in" source "package/libxml-parser-perl/Config.in" source "package/libxml2/Config.in" +source "package/libxmlrpc/Config.in" source "package/libxmlpp/Config.in"
This alphabetical order is not correct, libxmlrpc should come after libxmlpp.
Quoted 146 lines
package/Config.in +0
-0source "package/libxslt/Config.in" source "package/libyaml/Config.in"package/libxmlrpc/Config.in new file +10
-0@@ -0,0 +1,10 @@ +config BR2_PACKAGE_LIBXMLRPC + bool "libxmlrpc" + select BR2_PACKAGE_LIBCURL + help + XML-RPC is a quick-and-easy way to make procedure calls over + the Internet. It converts the procedure call into an XML + document, sends it to a remote server using HTTP, and gets + back the response as XML. + + http://xmlrpc-c.sourceforge.net/package/libxmlrpc/libxmlrpc-01-fix-gennmtab-build.patch new file +25
-0@@ -0,0 +1,25 @@ +Fix build of host tool + +genmtab is a tool that needs to be built for the host as it is used +during the compilation process of libxmlrpc. Its Makefile needs a bit +of tuning to use the conventional CC_FOR_BUILD, CFLAGS_FOR_BUILD and +LDFLAGS_FOR_BUILD variables. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/lib/expat/gennmtab/Makefile +=================================================================== +--- a/lib/expat/gennmtab/Makefile ++++ b/lib/expat/gennmtab/Makefile +@@ -40,9 +40,9 @@ + dep: dep-common + + gennmtab.o:%.o:%.c +- $(BUILDTOOL_CC) -c $< -o $@ $(CFLAGS_ALL) $(INCLUDES) ++ $(CC_FOR_BUILD) -c $< -o $@ $(CFLAGS_FOR_BUILD) $(INCLUDES) + + gennmtab:%:%.o +- $(BUILDTOOL_CCLD) -o $@ $(LDFLAGS) $^ ++ $(CC_FOR_BUILD) -o $@ $(LDFLAGS_FOR_BUILD) $^ + + include depend.mkpackage/libxmlrpc/libxmlrpc-02-fix-non-cplusplus-build.patch new file +27
-0@@ -0,0 +1,27 @@ +Handle builds without C++ + +libxmlrpc nicely handles the fact of being built without C++ support, +except for one location, fixed by this patch. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/lib/util/Makefile +=================================================================== +--- a/lib/util/Makefile ++++ b/lib/util/Makefile +@@ -41,11 +41,14 @@ + LIBOBJS = \ + casprintf.o \ + cmdline_parser.o \ +- cmdline_parser_cpp.o \ + getoptx.o \ + string_parser.o \ + stripcaseeq.o \ + ++ifeq ($(ENABLE_CPLUSPLUS),yes) ++LIBOBJS += cmdline_parser_cpp.o ++endif ++ + .PHONY: all + all: $(LIBOBJS) +package/libxmlrpc/libxmlrpc-03-non-wchar-build.patch new file +24
-0@@ -0,0 +1,24 @@ +Disable wide-char specific code + +The vast majority of the libxmlrpc code nicely handles the absence of +wide char support, except at one location, which is fixed by this +patch. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/src/xmlrpc_decompose.c +=================================================================== +--- a/src/xmlrpc_decompose.c ++++ b/src/xmlrpc_decompose.c +@@ -217,7 +217,11 @@ + xmlrpc_strfree(*decompRootP->store.Tstring.valueP); + break; + case 'w': ++#if HAVE_UNICODE_WCHAR + free((void*)*decompRootP->store.TwideString.valueP); ++#else ++ XMLRPC_ASSERT(false); ++#endif + break; + case '6': + free((void*)*decompRootP->store.TbitString.valueP);package/libxmlrpc/libxmlrpc-04-use-correct-curl-config.patch new file +22
-0@@ -0,0 +1,22 @@ +Use correct curl-config program + +Instead of calling again curl-config in src/Makefile (which ends up +calling the wrong curl-config: the one in the PATH instead of the one +pointed at by the environment variables at configure time), let's use +the CURL_LDADD variable which was computed at configure time. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/src/Makefile +=================================================================== +--- a/src/Makefile ++++ b/src/Makefile +@@ -56,7 +56,7 @@ + TRANSPORT_MODS += blddir/lib/curl_transport/curltransaction + TRANSPORT_MODS += blddir/lib/curl_transport/curlmulti + TRANSPORT_MODS += blddir/lib/curl_transport/lock_pthread +- TRANSPORT_LIBDEP += $(shell curl-config --libs) ++ TRANSPORT_LIBDEP += $(CURL_LDADD) + endif + ifeq ($(MUST_BUILD_LIBWWW_CLIENT),yes) + TRANSPORT_MODS += blddir/lib/libwww_transport/xmlrpc_libwww_transportpackage/libxmlrpc/libxmlrpc.mk new file +0
-0
package/libxmlrpc/libxmlrpc.mk line 9
Quoted 9 lines
package/libxmlrpc/libxmlrpc.mk new file +9
-0@@ -0,0 +1,30 @@ +################################################################################ +# +# libxmlrpc +# +################################################################################ + +LIBXMLRPC_VERSION = 1.25.26 +LIBXMLRPC_SOURCE = xmlrpc-c-$(LIBXMLRPC_VERSION).tgz +LIBXMLRPC_SITE = "http://downloads.sourceforge.net/project/xmlrpc-c/Xmlrpc-c%20Super%20Stable/1.25.26"
Why are there quotes around the URL?
package/libxmlrpc/libxmlrpc.mk line 11
Quoted 2 lines
package/libxmlrpc/libxmlrpc.mk new file +2
-0+LIBXMLRPC_LICENSE = BSD-like, Expat, Python 1.5.2 License +LIBXMLRPC_LICENSE_FILES = doc/COPYING
Are these three licenses used on identifyable parts of libxmlrpc, such that you could be more specific, like
BSD-like (partA), Expat (partB) etc.?
Also, what exactly do you mean with BSD-like? Is it possible to map onto one of the standard strings specified in
http://buildroot.uclibc.org/downloads/manual/manual.html#legal-info-list-licenses
?
And finally, if there are three licenses, I'd expect three license files, unless the file doc/COPYING accumulates the license texts of all three licenses. Can you confirm?
Quoted 10 lines
package/libxmlrpc/libxmlrpc.mk new file +10
-0+LIBXMLRPC_INSTALL_STAGING = YES +LIBXMLRPC_DEPENDENCIES = libcurl +LIBXMLRPC_CONFIG_SCRIPTS = xmlrpc-c-config + +LIBXMLRPC_CONF_OPT = \ + $(if $(BR2_USE_WCHAR),,ac_cv_header_wchar_h=no) \ + $(if $(BR2_INSTALL_LIBSTDCPP),,--disable-cplusplus) \ + have_curl_config=$(STAGING_DIR)/usr/bin/curl-config \ + CURL_CONFIG=$(STAGING_DIR)/usr/bin/curl-config +
package/libxmlrpc/libxmlrpc.mk
Quoted 10 lines
package/libxmlrpc/libxmlrpc.mk new file +9
-1+# Our package uses autoconf, but not automake, so we need to pass +# those variables at compile time as well. +LIBXMLRPC_MAKE_ENV = \ + CC_FOR_BUILD="$(HOSTCC)" \ + LD_FOR_BUILD="$(HOSTLD)" \ + CFLAGS_FOR_BUILD="$(HOST_CFLAGS)" \ + LDFLAGS_FOR_BUILD="$(HOST_LDFLAGS)" + +$(eval $(autotools-package)) --
Best regards,
Thomas
PATCH 1/1 libxmlrpc: new package
Hi Thomas,
2013/10/9 Thomas De Schampheleire <[email protected]>
Quoted 7 lines
We have had a long discussion on two buildroot developer days about the format of the number in patch names. I thought we had decided to use a four-digit format to correspond to the patches generated with git. So this should be 0001, 0002, etc.
However, this may be mis-remembered by me, so I'm including some of the people involved in that discussion to this mail...
Sorry, I didn't read that. Whatever has been decided is fine.
Quoted 15 lines
package/Config.in source "package/libjson/Config.in" · line 731
Quoted 11 lines
package/Config.in +1
-0@@ -727,6 +727,7 @@ source "package/libjson/Config.in" source "package/libroxml/Config.in" source "package/libxml-parser-perl/Config.in" source "package/libxml2/Config.in" +source "package/libxmlrpc/Config.in" source "package/libxmlpp/Config.in"This alphabetical order is not correct, libxmlrpc should come after libxmlpp.
Oops.
Quoted 7 lines
package/Config.in source "package/libjson/Config.in" · line 732
Quoted 2 lines
package/Config.in +1
-0+LIBXMLRPC_SITE = "http://downloads.sourceforge.net/project/xmlrpc-c/Xmlrpc-c%20Super%20Stable/1.25.26
"Why are there quotes around the URL?
To be honest, I don't know. I guess I copied that from somewhere and the quotes where already there.
Quoted 10 lines
package/Config.in source "package/libjson/Config.in"
Quoted 2 lines
package/Config.in +2
-0+LIBXMLRPC_LICENSE = BSD-like, Expat, Python 1.5.2 License +LIBXMLRPC_LICENSE_FILES = doc/COPYINGAre these three licenses used on identifyable parts of libxmlrpc, such that you could be more specific, like
BSD-like (partA), Expat (partB) etc.?Also, what exactly do you mean with BSD-like? Is it possible to map onto one of the standard strings specified in
Quoted 7 lines
http://buildroot.uclibc.org/downloads/manual/manual.html#legal-info-list-licenses
?And finally, if there are three licenses, I'd expect three license files, unless the file doc/COPYING accumulates the license texts of all three licenses. Can you confirm?
Yes, the file doc/COPYING contains the three license texts. It explains which license applies to what:
You can read it here
http://sourceforge.net/p/xmlrpc-c/code/HEAD/tree/trunk/doc/COPYING
and I'll comment a little on everything:
Quoted 3 lines
All the code written specifically for Xmlrpc-c, which is most of the code, and the aggregation, is licensed under the XML-RPC FOR C/C++ license shown below.
This license is, as I understand it, is basically just BSD-3c, I guess.
Quoted 1 line
The Expat Licence applies to the contents of the directory lib/expat,
This is kind of a BSD license where "everything" is allowed with only one requisite
"The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software."
Quoted 2 lines
the ABYSS Web Server License applies to the contents of the directory lib/abyss and parts of the file
src/xmlrpc_abyss.c.
This is again BSD-3c license, I think
Quoted 2 lines
The Python 1.5.2 license applies to parts of the file
src/xmlrpc_base64.c.
I guess I could just type all that as
BSD-3c (xml-rpc main code, lib/expat and abyss web server), Python 1.5.2 license (xmlrpc_base64.c)
What do you think?
Regards
Signature · 4 lines
?lvaro G?mez Machado -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20131009/e8a95457/attachment.html>
PATCH 1/1 libxmlrpc: new package
Hi Alvaro,
Quoted 54 lines · Alvaro Gamez
Quoted 11 lines
package/libxmlrpc/libxmlrpc.mk line 11
Quoted 3 lines
package/libxmlrpc/libxmlrpc.mk new file +2
-0+LIBXMLRPC_LICENSE = BSD-like, Expat, Python 1.5.2 License +LIBXMLRPC_LICENSE_FILES = doc/COPYINGAre these three licenses used on identifyable parts of libxmlrpc, such that you could be more specific, like
BSD-like (partA), Expat (partB) etc.?Also, what exactly do you mean with BSD-like? Is it possible to map onto one of the standard strings specified in
Quoted 6 lines
http://buildroot.uclibc.org/downloads/manual/manual.html#legal-info-list-licenses
?And finally, if there are three licenses, I'd expect three license files, unless the file doc/COPYING accumulates the license texts of all three licenses. Can you confirm?
Yes, the file doc/COPYING contains the three license texts. It explains which license applies to what:
You can read it here
http://sourceforge.net/p/xmlrpc-c/code/HEAD/tree/trunk/doc/COPYING
and I'll comment a little on everything:
Quoted 3 lines
All the code written specifically for Xmlrpc-c, which is most of the code, and the aggregation, is licensed under the XML-RPC FOR C/C++ license shown below.
This license is, as I understand it, is basically just BSD-3c, I guess.
Quoted 1 line
The Expat Licence applies to the contents of the directory lib/expat,
This is kind of a BSD license where "everything" is allowed with only one requisite
"The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software."Quoted 2 lines
the ABYSS Web Server License applies to the contents of the directory lib/abyss and parts of the file
src/xmlrpc_abyss.c.This is again BSD-3c license, I think
Quoted 2 lines
The Python 1.5.2 license applies to parts of the file
src/xmlrpc_base64.c.
Quoted 6 lines
I guess I could just type all that as
BSD-3c (xml-rpc main code, lib/expat and abyss web server), Python 1.5.2 license (
xmlrpc_base64.c)What do you think?
I think this is clearer, yes.
Note that doc/COPYING says 'parts of src/xmlrpc_base64.c' so I would reproduce that text as-is.
Thanks,
Thomas
PATCH 1/1 libxmlrpc: new package
All right, I'm sending the whole patch again.
I've removed those quotes, preserved the alphabetical order, renumbered the patches with four digits and rewritten the license text. Since expat is bsd-like but with only one clause I've left it like this:
LIBXMLRPC_LICENSE = BSD-3c (xml-rpc main code and abyss web server), BSD like (lib/expat), Python 1.5.2 license (parts of xmlrpc_base64.c)
2013/10/9 Thomas De Schampheleire <[email protected]>
Quoted 73 lines
Hi Alvaro,
Quoted 8 lines · Alvaro Gamez
Quoted 8 lines
package/libxmlrpc/libxmlrpc.mk line 11
Quoted 3 lines
package/libxmlrpc/libxmlrpc.mk new file +2
-0+LIBXMLRPC_LICENSE = BSD-like, Expat, Python 1.5.2 License +LIBXMLRPC_LICENSE_FILES = doc/COPYINGAre these three licenses used on identifyable parts of libxmlrpc, such that you could be more specific, like
BSD-like (partA), Expat (partB) etc.?Quoted 4 lines
Quoted 4 lines
Also, what exactly do you mean with BSD-like? Is it possible to map onto one of the standard strings specified in
http://buildroot.uclibc.org/downloads/manual/manual.html#legal-info-list-licenses
Quoted 42 lines
Quoted 5 lines
?
And finally, if there are three licenses, I'd expect three license files, unless the file doc/COPYING accumulates the license texts of all three licenses. Can you confirm?
Yes, the file doc/COPYING contains the three license texts. It explains which license applies to what:
You can read it here
http://sourceforge.net/p/xmlrpc-c/code/HEAD/tree/trunk/doc/COPYING
and I'll comment a little on everything:
Quoted 3 lines
All the code written specifically for Xmlrpc-c, which is most of the code, and the aggregation, is licensed under the XML-RPC FOR C/C++ license shown below.
This license is, as I understand it, is basically just BSD-3c, I guess.
Quoted 1 line
The Expat Licence applies to the contents of the directory lib/expat,
This is kind of a BSD license where "everything" is allowed with only one requisite
"The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software."Quoted 2 lines
the ABYSS Web Server License applies to the contents of the directory lib/abyss and parts of the file
src/xmlrpc_abyss.c.This is again BSD-3c license, I think
Quoted 2 lines
The Python 1.5.2 license applies to parts of the file
src/xmlrpc_base64.c.Quoted 6 lines
I guess I could just type all that as
BSD-3c (xml-rpc main code, lib/expat and abyss web server), Python 1.5.2 license (
xmlrpc_base64.c)What do you think?
I think this is clearer, yes.
Note that doc/COPYING says 'parts ofsrc/xmlrpc_base64.c' so I would reproduce that text as-is.Thanks,
Thomas
Signature · 4 lines
?lvaro G?mez Machado -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20131009/50b02fe9/attachment.html>
PATCH 1/1 libxmlrpc: new package
--- package/Config.in | 1 + package/libxmlrpc/Config.in | 10 ++++++++ .../libxmlrpc-0001-fix-gennmtab-build.patch | 25 ++++++++++++++++++ .../libxmlrpc-0002-fix-non-cplusplus-build.patch | 27 +++++++++++++++++++ .../libxmlrpc/libxmlrpc-0003-non-wchar-build.patch | 24 +++++++++++++++++ .../libxmlrpc-0004-use-correct-curl-config.patch | 22 ++++++++++++++++ package/libxmlrpc/libxmlrpc.mk | 30 ++++++++++++++++++++++ 7 files changed, 139 insertions(+) create mode 100644 package/libxmlrpc/Config.in create mode 100644 package/libxmlrpc/libxmlrpc-0001-fix-gennmtab-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-0002-fix-non-cplusplus-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-0003-non-wchar-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-0004-use-correct-curl-config.patch create mode 100644 package/libxmlrpc/libxmlrpc.mk
package/Config.in +1 -0
@@ -728,6 +728,7 @@ source "package/libroxml/Config.in" source "package/libxml-parser-perl/Config.in" source "package/libxml2/Config.in" source "package/libxmlpp/Config.in" +source "package/libxmlrpc/Config.in" source "package/libxslt/Config.in" source "package/libyaml/Config.in" source "package/mxml/Config.in"
package/libxmlrpc/Config.in new file +10 -0
@@ -0,0 +1,10 @@ +config BR2_PACKAGE_LIBXMLRPC + bool "libxmlrpc" + select BR2_PACKAGE_LIBCURL + help + XML-RPC is a quick-and-easy way to make procedure calls over + the Internet. It converts the procedure call into an XML + document, sends it to a remote server using HTTP, and gets + back the response as XML. + + http://xmlrpc-c.sourceforge.net/
package/libxmlrpc/libxmlrpc-0001-fix-gennmtab-build.patch new file +25 -0
@@ -0,0 +1,25 @@ +Fix build of host tool + +genmtab is a tool that needs to be built for the host as it is used +during the compilation process of libxmlrpc. Its Makefile needs a bit +of tuning to use the conventional CC_FOR_BUILD, CFLAGS_FOR_BUILD and +LDFLAGS_FOR_BUILD variables. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/lib/expat/gennmtab/Makefile +=================================================================== +--- a/lib/expat/gennmtab/Makefile ++++ b/lib/expat/gennmtab/Makefile +@@ -40,9 +40,9 @@ + dep: dep-common + + gennmtab.o:%.o:%.c +- $(BUILDTOOL_CC) -c $< -o $@ $(CFLAGS_ALL) $(INCLUDES) ++ $(CC_FOR_BUILD) -c $< -o $@ $(CFLAGS_FOR_BUILD) $(INCLUDES) + + gennmtab:%:%.o +- $(BUILDTOOL_CCLD) -o $@ $(LDFLAGS) $^ ++ $(CC_FOR_BUILD) -o $@ $(LDFLAGS_FOR_BUILD) $^ + + include depend.mk
package/libxmlrpc/libxmlrpc-0002-fix-non-cplusplus-build.patch new file +27 -0
@@ -0,0 +1,27 @@ +Handle builds without C++ + +libxmlrpc nicely handles the fact of being built without C++ support, +except for one location, fixed by this patch. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/lib/util/Makefile +=================================================================== +--- a/lib/util/Makefile ++++ b/lib/util/Makefile +@@ -41,11 +41,14 @@ + LIBOBJS = \ + casprintf.o \ + cmdline_parser.o \ +- cmdline_parser_cpp.o \ + getoptx.o \ + string_parser.o \ + stripcaseeq.o \ + ++ifeq ($(ENABLE_CPLUSPLUS),yes) ++LIBOBJS += cmdline_parser_cpp.o ++endif ++ + .PHONY: all + all: $(LIBOBJS) +
package/libxmlrpc/libxmlrpc-0003-non-wchar-build.patch new file +24 -0
@@ -0,0 +1,24 @@ +Disable wide-char specific code + +The vast majority of the libxmlrpc code nicely handles the absence of +wide char support, except at one location, which is fixed by this +patch. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/src/xmlrpc_decompose.c +=================================================================== +--- a/src/xmlrpc_decompose.c ++++ b/src/xmlrpc_decompose.c +@@ -217,7 +217,11 @@ + xmlrpc_strfree(*decompRootP->store.Tstring.valueP); + break; + case 'w': ++#if HAVE_UNICODE_WCHAR + free((void*)*decompRootP->store.TwideString.valueP); ++#else ++ XMLRPC_ASSERT(false); ++#endif + break; + case '6': + free((void*)*decompRootP->store.TbitString.valueP);
package/libxmlrpc/libxmlrpc-0004-use-correct-curl-config.patch new file +22 -0
@@ -0,0 +1,22 @@ +Use correct curl-config program + +Instead of calling again curl-config in src/Makefile (which ends up +calling the wrong curl-config: the one in the PATH instead of the one +pointed at by the environment variables at configure time), let's use +the CURL_LDADD variable which was computed at configure time. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/src/Makefile +=================================================================== +--- a/src/Makefile ++++ b/src/Makefile +@@ -56,7 +56,7 @@ + TRANSPORT_MODS += blddir/lib/curl_transport/curltransaction + TRANSPORT_MODS += blddir/lib/curl_transport/curlmulti + TRANSPORT_MODS += blddir/lib/curl_transport/lock_pthread +- TRANSPORT_LIBDEP += $(shell curl-config --libs) ++ TRANSPORT_LIBDEP += $(CURL_LDADD) + endif + ifeq ($(MUST_BUILD_LIBWWW_CLIENT),yes) + TRANSPORT_MODS += blddir/lib/libwww_transport/xmlrpc_libwww_transport
package/libxmlrpc/libxmlrpc.mk new file +30 -0
@@ -0,0 +1,30 @@ +################################################################################ +# +# libxmlrpc +# +################################################################################ + +LIBXMLRPC_VERSION = 1.25.26 +LIBXMLRPC_SOURCE = xmlrpc-c-$(LIBXMLRPC_VERSION).tgz +LIBXMLRPC_SITE = http://downloads.sourceforge.net/project/xmlrpc-c/Xmlrpc-c%20Super%20Stable/1.25.26 +LIBXMLRPC_LICENSE = BSD-3c (xml-rpc main code and abyss web server), BSD like (lib/expat), Python 1.5.2 license (parts of xmlrpc_base64.c) +LIBXMLRPC_LICENSE_FILES = doc/COPYING +LIBXMLRPC_INSTALL_STAGING = YES +LIBXMLRPC_DEPENDENCIES = libcurl +LIBXMLRPC_CONFIG_SCRIPTS = xmlrpc-c-config + +LIBXMLRPC_CONF_OPT = \ + $(if $(BR2_USE_WCHAR),,ac_cv_header_wchar_h=no) \ + $(if $(BR2_INSTALL_LIBSTDCPP),,--disable-cplusplus) \ + have_curl_config=$(STAGING_DIR)/usr/bin/curl-config \ + CURL_CONFIG=$(STAGING_DIR)/usr/bin/curl-config + +# Our package uses autoconf, but not automake, so we need to pass +# those variables at compile time as well. +LIBXMLRPC_MAKE_ENV = \ + CC_FOR_BUILD="$(HOSTCC)" \ + LD_FOR_BUILD="$(HOSTLD)" \ + CFLAGS_FOR_BUILD="$(HOST_CFLAGS)" \ + LDFLAGS_FOR_BUILD="$(HOST_LDFLAGS)" + +$(eval $(autotools-package))
Signature · 1 line
1.8.4.rc3
PATCH 1/1 libxmlrpc: new package
Hi Alvaro,
Quoted 1 line · Alvaro G. M
Signed-off-by Thomas Petazzoni <[email protected]>
You forgot your own sign off.
[...]
Quoted 6 lines
package/libxmlrpc/libxmlrpc.mk new file +0
-0
package/libxmlrpc/libxmlrpc.mk line 9
Quoted 9 lines
package/libxmlrpc/libxmlrpc.mk new file +9
-0@@ -0,0 +1,30 @@ +################################################################################ +# +# libxmlrpc +# +################################################################################ + +LIBXMLRPC_VERSION = 1.25.26 +LIBXMLRPC_SOURCE = xmlrpc-c-$(LIBXMLRPC_VERSION).tgz +LIBXMLRPC_SITE = http://downloads.sourceforge.net/project/xmlrpc-c/Xmlrpc-c%20Super%20Stable/1.25.26
Why not reuse $(LIBXMLRPC_VERSION) for the directory part of the URL?
baruch
Signature · 3 lines
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 -PATCH 1/1 libxmlrpc: new package
---
Solved sign off and reuse LIBXMLRPC_VERSION (thanks Baruch).
package/Config.in | 1 + package/libxmlrpc/Config.in | 10 ++++++++ .../libxmlrpc-0001-fix-gennmtab-build.patch | 25 ++++++++++++++++++ .../libxmlrpc-0002-fix-non-cplusplus-build.patch | 27 +++++++++++++++++++ .../libxmlrpc/libxmlrpc-0003-non-wchar-build.patch | 24 +++++++++++++++++ .../libxmlrpc-0004-use-correct-curl-config.patch | 22 ++++++++++++++++ package/libxmlrpc/libxmlrpc.mk | 30 ++++++++++++++++++++++ 7 files changed, 139 insertions(+) create mode 100644 package/libxmlrpc/Config.in create mode 100644 package/libxmlrpc/libxmlrpc-0001-fix-gennmtab-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-0002-fix-non-cplusplus-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-0003-non-wchar-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-0004-use-correct-curl-config.patch create mode 100644 package/libxmlrpc/libxmlrpc.mk
package/Config.in +1 -0
@@ -728,6 +728,7 @@ source "package/libroxml/Config.in" source "package/libxml-parser-perl/Config.in" source "package/libxml2/Config.in" source "package/libxmlpp/Config.in" +source "package/libxmlrpc/Config.in" source "package/libxslt/Config.in" source "package/libyaml/Config.in" source "package/mxml/Config.in"
package/libxmlrpc/Config.in new file +10 -0
@@ -0,0 +1,10 @@ +config BR2_PACKAGE_LIBXMLRPC + bool "libxmlrpc" + select BR2_PACKAGE_LIBCURL + help + XML-RPC is a quick-and-easy way to make procedure calls over + the Internet. It converts the procedure call into an XML + document, sends it to a remote server using HTTP, and gets + back the response as XML. + + http://xmlrpc-c.sourceforge.net/
package/libxmlrpc/libxmlrpc-0001-fix-gennmtab-build.patch new file +25 -0
@@ -0,0 +1,25 @@ +Fix build of host tool + +genmtab is a tool that needs to be built for the host as it is used +during the compilation process of libxmlrpc. Its Makefile needs a bit +of tuning to use the conventional CC_FOR_BUILD, CFLAGS_FOR_BUILD and +LDFLAGS_FOR_BUILD variables. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/lib/expat/gennmtab/Makefile +=================================================================== +--- a/lib/expat/gennmtab/Makefile ++++ b/lib/expat/gennmtab/Makefile +@@ -40,9 +40,9 @@ + dep: dep-common + + gennmtab.o:%.o:%.c +- $(BUILDTOOL_CC) -c $< -o $@ $(CFLAGS_ALL) $(INCLUDES) ++ $(CC_FOR_BUILD) -c $< -o $@ $(CFLAGS_FOR_BUILD) $(INCLUDES) + + gennmtab:%:%.o +- $(BUILDTOOL_CCLD) -o $@ $(LDFLAGS) $^ ++ $(CC_FOR_BUILD) -o $@ $(LDFLAGS_FOR_BUILD) $^ + + include depend.mk
package/libxmlrpc/libxmlrpc-0002-fix-non-cplusplus-build.patch new file +27 -0
@@ -0,0 +1,27 @@ +Handle builds without C++ + +libxmlrpc nicely handles the fact of being built without C++ support, +except for one location, fixed by this patch. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/lib/util/Makefile +=================================================================== +--- a/lib/util/Makefile ++++ b/lib/util/Makefile +@@ -41,11 +41,14 @@ + LIBOBJS = \ + casprintf.o \ + cmdline_parser.o \ +- cmdline_parser_cpp.o \ + getoptx.o \ + string_parser.o \ + stripcaseeq.o \ + ++ifeq ($(ENABLE_CPLUSPLUS),yes) ++LIBOBJS += cmdline_parser_cpp.o ++endif ++ + .PHONY: all + all: $(LIBOBJS) +
package/libxmlrpc/libxmlrpc-0003-non-wchar-build.patch new file +24 -0
@@ -0,0 +1,24 @@ +Disable wide-char specific code + +The vast majority of the libxmlrpc code nicely handles the absence of +wide char support, except at one location, which is fixed by this +patch. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/src/xmlrpc_decompose.c +=================================================================== +--- a/src/xmlrpc_decompose.c ++++ b/src/xmlrpc_decompose.c +@@ -217,7 +217,11 @@ + xmlrpc_strfree(*decompRootP->store.Tstring.valueP); + break; + case 'w': ++#if HAVE_UNICODE_WCHAR + free((void*)*decompRootP->store.TwideString.valueP); ++#else ++ XMLRPC_ASSERT(false); ++#endif + break; + case '6': + free((void*)*decompRootP->store.TbitString.valueP);
package/libxmlrpc/libxmlrpc-0004-use-correct-curl-config.patch new file +22 -0
@@ -0,0 +1,22 @@ +Use correct curl-config program + +Instead of calling again curl-config in src/Makefile (which ends up +calling the wrong curl-config: the one in the PATH instead of the one +pointed at by the environment variables at configure time), let's use +the CURL_LDADD variable which was computed at configure time. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/src/Makefile +=================================================================== +--- a/src/Makefile ++++ b/src/Makefile +@@ -56,7 +56,7 @@ + TRANSPORT_MODS += blddir/lib/curl_transport/curltransaction + TRANSPORT_MODS += blddir/lib/curl_transport/curlmulti + TRANSPORT_MODS += blddir/lib/curl_transport/lock_pthread +- TRANSPORT_LIBDEP += $(shell curl-config --libs) ++ TRANSPORT_LIBDEP += $(CURL_LDADD) + endif + ifeq ($(MUST_BUILD_LIBWWW_CLIENT),yes) + TRANSPORT_MODS += blddir/lib/libwww_transport/xmlrpc_libwww_transport
package/libxmlrpc/libxmlrpc.mk new file +30 -0
@@ -0,0 +1,30 @@ +################################################################################ +# +# libxmlrpc +# +################################################################################ + +LIBXMLRPC_VERSION = 1.25.26 +LIBXMLRPC_SOURCE = xmlrpc-c-$(LIBXMLRPC_VERSION).tgz +LIBXMLRPC_SITE = http://downloads.sourceforge.net/project/xmlrpc-c/Xmlrpc-c%20Super%20Stable/$(LIBXMLRPC_VERSION) +LIBXMLRPC_LICENSE = BSD-3c (xml-rpc main code and abyss web server), BSD like (lib/expat), Python 1.5.2 license (parts of xmlrpc_base64.c) +LIBXMLRPC_LICENSE_FILES = doc/COPYING +LIBXMLRPC_INSTALL_STAGING = YES +LIBXMLRPC_DEPENDENCIES = libcurl +LIBXMLRPC_CONFIG_SCRIPTS = xmlrpc-c-config + +LIBXMLRPC_CONF_OPT = \ + $(if $(BR2_USE_WCHAR),,ac_cv_header_wchar_h=no) \ + $(if $(BR2_INSTALL_LIBSTDCPP),,--disable-cplusplus) \ + have_curl_config=$(STAGING_DIR)/usr/bin/curl-config \ + CURL_CONFIG=$(STAGING_DIR)/usr/bin/curl-config + +# Our package uses autoconf, but not automake, so we need to pass +# those variables at compile time as well. +LIBXMLRPC_MAKE_ENV = \ + CC_FOR_BUILD="$(HOSTCC)" \ + LD_FOR_BUILD="$(HOSTLD)" \ + CFLAGS_FOR_BUILD="$(HOST_CFLAGS)" \ + LDFLAGS_FOR_BUILD="$(HOST_LDFLAGS)" + +$(eval $(autotools-package))
Signature · 1 line
1.8.4.rc3
Thomas Petazzoni
AppliedPATCH 1/1 libxmlrpc: new package
Dear Alvaro G. M,
Quoted 2 lines · Alvaro G. M
Signed-off-by Thomas Petazzoni <[email protected]>Signed-off-by Alvaro G. M <[email protected]>
Applied, thanks.
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH 1/1 libxmlrpc: new package
In reply to Thomas De SchampheleireQuoted 20 lines · Thomas De Schampheleire
Hi Alvaro,
Quoted 9 lines · Alvaro G. M
Quoted 9 lines
Signed-off-by Thomas Petazzoni<[email protected]>Signed-off-by Alvaro G. M<[email protected]>--- package/Config.in | 1 + package/libxmlrpc/Config.in | 10 ++++++++ .../libxmlrpc-01-fix-gennmtab-build.patch | 25 ++++++++++++++++++ .../libxmlrpc-02-fix-non-cplusplus-build.patch | 27 +++++++++++++++++++ .../libxmlrpc/libxmlrpc-03-non-wchar-build.patch | 24 +++++++++++++++++ .../libxmlrpc-04-use-correct-curl-config.patch | 22 ++++++++++++++++Quoted 8 lines
Quoted 8 lines
package/libxmlrpc/libxmlrpc.mk | 30 ++++++++++++++++++++++ 7 files changed, 139 insertions(+) create mode 100644 package/libxmlrpc/Config.in create mode 100644 package/libxmlrpc/libxmlrpc-01-fix-gennmtab-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-02-fix-non-cplusplus-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-03-non-wchar-build.patch create mode 100644 package/libxmlrpc/libxmlrpc-04-use-correct-curl-config.patch create mode 100644 package/libxmlrpc/libxmlrpc.mk
Quoted 6 lines
We have had a long discussion on two buildroot developer days about the format of the number in patch names. I thought we had decided to use a four-digit format to correspond to the patches generated with git. So this should be 0001, 0002, etc.
However, this may be mis-remembered by me, so I'm including some of the people involved in that discussion to this mail...
AFAICR we concluded that it wasn't necessary to enforce four digits,
since very few of the patches are generated from git anyway.
Regards,
Arnout
Signature · 6 lines
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
PATCH 1/1 libxmlrpc: new package
Well, that's true (as is the case in this particular patch), but it's also true that it doesn't make any bad. It's just a minor inconvenience and it gives some consistency to the files name, I think I mostly like it.
Regards
2013/10/10 Arnout Vandecappelle <[email protected]>
Quoted 58 lines · Thomas De Schampheleire
Quoted 32 lines
Hi Alvaro,
Quoted 26 lines · Alvaro G. M
Quoted 7 lines
Signed-off-by Alvaro G. M<[email protected]>--- package/Config.in | 1 + package/libxmlrpc/Config.in | 10 ++++++++ .../libxmlrpc-01-fix-gennmtab-**build.patch | 25++++++++++++++++++
Quoted 1 line
.../libxmlrpc-02-fix-non-**cplusplus-build.patch | 27+++++++++++++++++++
Quoted 1 line
.../libxmlrpc/libxmlrpc-03-**non-wchar-build.patch | 24+++++++++++++++++
Quoted 1 line
.../libxmlrpc-04-use-correct-**curl-config.patch | 22++++++++++++++++
Quoted 1 line
package/libxmlrpc/libxmlrpc.mk | 30++++++++++++++++++++++
Quoted 3 lines
7 files changed, 139 insertions(+) create mode 100644 package/libxmlrpc/Config.in create mode 100644 package/libxmlrpc/libxmlrpc-**01-fix-gennmtab-build.patch
Quoted 1 line
create mode 100644 package/libxmlrpc/libxmlrpc-**02-fix-non-cplusplus-build.**patch
Quoted 1 line
create mode 100644 package/libxmlrpc/libxmlrpc-**03-non-wchar-build.patch
Quoted 1 line
create mode 100644 package/libxmlrpc/libxmlrpc-**04-use-correct-curl-config.**patch
Quoted 9 lines
Quoted 2 lines
Quoted 1 line
create mode 100644 package/libxmlrpc/libxmlrpc.mkWe have had a long discussion on two buildroot developer days about the format of the number in patch names. I thought we had decided to use a four-digit format to correspond to the patches generated with git. So this should be 0001, 0002, etc.
However, this may be mis-remembered by me, so I'm including some of the people involved in that discussion to this mail...AFAICR we concluded that it wasn't necessary to enforce four digits,
since very few of the patches are generated from git anyway.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<http://www.linkedin.com/in/arnoutvandecappelle> GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
Signature · 4 lines
?lvaro G?mez Machado -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20131010/8cc1d135/attachment.html>
A message that is not in the archive (sent off-list or not yet received): [email protected]
PATCH 3/10 libxmlrpc: new package
Hello,
Le Tue, 05 Jun 2012 01:57:33 +0200,
Arnout Vandecappelle <[email protected]> a ?crit :
Quoted 8 lines · Thomas Petazzoni
package/libxmlrpc/libxmlrpc.mk
Quoted 3 lines
package/libxmlrpc/libxmlrpc.mk new file +3
-0+LIBXMLRPC_VERSION = 1.18.05 +LIBXMLRPC_SOURCE = xmlrpc-c-$(LIBXMLRPC_VERSION).tgz +LIBXMLRPC_SITE ="http://xmlrpc-c.svn.sourceforge.net/viewvc/xmlrpc-c/advanced/?view=tar&pathrev=1716"It's a bit strange to use a three-year-old unstable version...
From the website:
Quoted 6 lines
Latest Tarballs
Series Number
Development unnumbered
Advanced 1.30.06
Stable 1.25.16
Super Stable 1.16.41
This package comes from a customer project, and the customer had its software running with this version, so that's the version I tested. Of course, packaging more recent versions would be better, but I thought that having the package would be better than nothing.
Quoted 2 lines
A simpler solution would be to just use the svn download method, from
https://xmlrpc-c.svn.sourceforge.net/svnroot/xmlrpc-c/stable/
Sure, I'll look into that.
Thomas
Signature · 4 lines
Thomas Petazzoni, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com
PATCH 3/10 libxmlrpc: new package
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Thomas" == Thomas Petazzoni <[email protected]> writes:
Hi Thomas,
Old mail ..
Thomas> Hello,
Thomas> Le Tue, 05 Jun 2012 01:57:33 +0200, Thomas> Arnout Vandecappelle <[email protected]> a ?crit :
Quoted 8 lines
Quoted 8 lines · Thomas Petazzoni
package/libxmlrpc/libxmlrpc.mk
Quoted 3 lines
package/libxmlrpc/libxmlrpc.mk new file +3
-0+LIBXMLRPC_VERSION = 1.18.05 +LIBXMLRPC_SOURCE = xmlrpc-c-$(LIBXMLRPC_VERSION).tgz +LIBXMLRPC_SITE ="http://xmlrpc-c.svn.sourceforge.net/viewvc/xmlrpc-c/advanced/?view=tar&pathrev=1716"It's a bit strange to use a three-year-old unstable version... From the website:
Quoted 6 lines
Quoted 6 lines
Latest Tarballs
Series Number
Development unnumbered
Advanced 1.30.06
Stable 1.25.16
Super Stable 1.16.41
Thomas> This package comes from a customer project, and the customer had its Thomas> software running with this version, so that's the version I tested. Of Thomas> course, packaging more recent versions would be better, but I thought Thomas> that having the package would be better than nothing.
Quoted 2 lines
Quoted 2 lines
A simpler solution would be to just use the svn download method, from
https://xmlrpc-c.svn.sourceforge.net/svnroot/xmlrpc-c/stable/
Thomas> Sure, I'll look into that.
Any news on this?
Signature · 1 line
Bye, Peter Korsgaard
PATCH 3/10 libxmlrpc: new package
Dear Peter Korsgaard,
Quoted 6 lines · Peter Korsgaard
Quoted 2 lines
Quoted 2 lines
A simpler solution would be to just use the svn download method, from
https://xmlrpc-c.svn.sourceforge.net/svnroot/xmlrpc-c/stable/Thomas> Sure, I'll look into that.
Any news on this?
At this point, I am no longer that much interested by xmlrpc. It was for a project on which I'm no longer working, and I don't expect many people to use this stuff, so I don't want to spend too much time packaging this.
I'd say you can discard the patch in patchwork, and be done with it :)
Thanks!
Thomas
Signature · 4 lines
Thomas Petazzoni, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com
PATCH 3/10 libxmlrpc: new package
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Thomas" == Thomas Petazzoni <[email protected]> writes:
Thomas> Dear Peter Korsgaard,
Quoted 3 lines · Peter Korsgaard
Quoted 3 lines
Quoted 2 lines
Quoted 2 lines
A simpler solution would be to just use the svn download method, from
https://xmlrpc-c.svn.sourceforge.net/svnroot/xmlrpc-c/stable/
Thomas> Sure, I'll look into that.
Quoted 2 lines
Quoted 2 lines
Any news on this?
Thomas> At this point, I am no longer that much interested by xmlrpc. It was Thomas> for a project on which I'm no longer working, and I don't expect many Thomas> people to use this stuff, so I don't want to spend too much time Thomas> packaging this.
Thomas> I'd say you can discard the patch in patchwork, and be done with it :)
Ok, will do.
Signature · 1 line
Bye, Peter Korsgaard
PATCH 4/10 llrp-toolkit: new package
In reply to Thomas Petazzoni--- package/Config.in | 1 + package/llrp-toolkit/Config.in | 11 ++ .../llrp-toolkit-01-ltkcpp-fix-headers.patch | 74 +++++++++ ...toolkit-02-ltkcpp-generate-shared-library.patch | 43 +++++ ...-toolkit-03-ltkcpp-normalize-build-system.patch | 174 ++++++++++++++++++++ .../llrp-toolkit-04-ltkcpp-disable-warning.patch | 43 +++++ .../llrp-toolkit-05-ltkc-shared-library.patch | 26 +++ ...rp-toolkit-06-ltkc-normalize-build-system.patch | 163 ++++++++++++++++++ package/llrp-toolkit/llrp-toolkit.mk | 77 +++++++++ 9 files changed, 612 insertions(+) create mode 100644 package/llrp-toolkit/Config.in create mode 100644 package/llrp-toolkit/llrp-toolkit-01-ltkcpp-fix-headers.patch create mode 100644 package/llrp-toolkit/llrp-toolkit-02-ltkcpp-generate-shared-library.patch create mode 100644 package/llrp-toolkit/llrp-toolkit-03-ltkcpp-normalize-build-system.patch create mode 100644 package/llrp-toolkit/llrp-toolkit-04-ltkcpp-disable-warning.patch create mode 100644 package/llrp-toolkit/llrp-toolkit-05-ltkc-shared-library.patch create mode 100644 package/llrp-toolkit/llrp-toolkit-06-ltkc-normalize-build-system.patch create mode 100644 package/llrp-toolkit/llrp-toolkit.mk
package/Config.in +1 -0
@@ -368,6 +368,7 @@ source "package/libnfc/Config.in" source "package/libusb/Config.in" source "package/libusb-compat/Config.in" source "package/libv4l/Config.in" +source "package/llrp-toolkit/Config.in" endmenu menu "Javascript"
package/llrp-toolkit/Config.in new file +11 -0
@@ -0,0 +1,11 @@ +config BR2_PACKAGE_LLRP_TOOLKIT + bool "llrp-toolkit" + select BR2_PACKAGE_LIBXML2 + help + A software toolkit for using the EPCglobal Low Level Reader + Protocol (LLRP) to communicate with conforming RFID readers. + + This package installs the C and C++ libraries of LLRP + Toolkit, respectively called ltkc and ltkcpp. + + http://sourceforge.net/projects/llrp-toolkit/
package/llrp-toolkit/llrp-toolkit-01-ltkcpp-fix-headers.patch new file +74 -0
74 lines not on this page · raw message
package/llrp-toolkit/llrp-toolkit-02-ltkcpp-generate-shared-library.patch new file +43 -0
43 lines not on this page · raw message
package/llrp-toolkit/llrp-toolkit-03-ltkcpp-normalize-build-system.patch new file +174 -0
174 lines not on this page · raw message
package/llrp-toolkit/llrp-toolkit-04-ltkcpp-disable-warning.patch new file +43 -0
43 lines not on this page · raw message
package/llrp-toolkit/llrp-toolkit-05-ltkc-shared-library.patch new file +26 -0
@@ -0,0 +1,26 @@ +ltkc: generate shared library instead of static one + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/LTKC/Library/Makefile +=================================================================== +--- a/LTKC/Library/Makefile ++++ b/LTKC/Library/Makefile +@@ -35,7 +35,7 @@ + ltkc_xmltext.h \ + out_ltkc.h + +-LTKC_LIB = libltkc.a ++LTKC_LIB = libltkc.so + LTKC_OBJS = \ + ltkc_array.o \ + ltkc_connection.o \ +@@ -59,7 +59,7 @@ + make all + + $(LTKC_LIB) : $(LTKC_OBJS) +- $(AR) crv $(LTKC_LIB) $(LTKC_OBJS) ++ $(CC) $(CFLAGS) -shared -o $@ $^ + + $(LTKC_OBJS) : $(LTKC_HDRS) +
package/llrp-toolkit/llrp-toolkit-06-ltkc-normalize-build-system.patch new file +163 -0
163 lines not on this page · raw message
package/llrp-toolkit/llrp-toolkit.mk new file +77 -0
77 lines not on this page · raw message
Signature · 1 line
1.7.9.5
PATCH 5/10 qextserialport: new package
In reply to Thomas Petazzoni--- package/Config.in | 1 + package/qextserialport/Config.in | 9 +++++ .../qextserialport-main-include.patch | 15 +++++++++ .../qextserialport-no-examples.patch | 17 ++++++++++ .../qextserialport/qextserialport-pkgconfig.patch | 19 +++++++++++ package/qextserialport/qextserialport.mk | 35 ++++++++++++++++++++ 6 files changed, 96 insertions(+) create mode 100644 package/qextserialport/Config.in create mode 100644 package/qextserialport/qextserialport-main-include.patch create mode 100644 package/qextserialport/qextserialport-no-examples.patch create mode 100644 package/qextserialport/qextserialport-pkgconfig.patch create mode 100644 package/qextserialport/qextserialport.mk
package/Config.in +1 -0
@@ -369,6 +369,7 @@ source "package/libusb/Config.in" source "package/libusb-compat/Config.in" source "package/libv4l/Config.in" source "package/llrp-toolkit/Config.in" +source "package/qextserialport/Config.in" endmenu menu "Javascript"
package/qextserialport/Config.in new file +9 -0
@@ -0,0 +1,9 @@ +config BR2_PACKAGE_QEXTSERIALPORT + bool "qextserialport" + # Qt is a big library, we don't want to select it + # automatically without the user knowing + depends on BR2_PACKAGE_QT + help + A Qt library to manage serial ports + + http://code.google.com/p/qextserialport/
package/qextserialport/qextserialport-main-include.patch new file +15 -0
@@ -0,0 +1,15 @@ +Create a main include file QExtSerialPort + +This main include file will be installed in +<QExtSerialPort/QExtSerialPort> so that Qt applications can use this +library by including header files in a Qt-like style. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: qextserialport-ef4af2a2ee3f/src/QExtSerialPort +=================================================================== +--- /dev/null ++++ qextserialport-ef4af2a2ee3f/src/QExtSerialPort +@@ -0,0 +1,2 @@ ++#include "qextserialport.h" ++#include "qextserialenumerator.h"
package/qextserialport/qextserialport-no-examples.patch new file +17 -0
@@ -0,0 +1,17 @@ +Disable compilation of examples + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: qextserialport-ef4af2a2ee3f/qextserialport.pro +=================================================================== +--- qextserialport-ef4af2a2ee3f.orig/qextserialport.pro ++++ qextserialport-ef4af2a2ee3f/qextserialport.pro +@@ -1,7 +1,4 @@ + # + TEMPLATE = subdirs + CONFIG += ordered +-SUBDIRS = src \ +- examples/enumerator \ +- examples/event +- ++SUBDIRS = src
package/qextserialport/qextserialport-pkgconfig.patch new file +19 -0
@@ -0,0 +1,19 @@ +Add a pkgconfig file to ease usage with applications + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: qextserialport-ef4af2a2ee3f/qextserialport.pc +=================================================================== +--- /dev/null ++++ qextserialport-ef4af2a2ee3f/qextserialport.pc +@@ -0,0 +1,10 @@ ++prefix=/usr ++exec_prefix=${prefix} ++libdir=${prefix}/lib ++includedir=${prefix}/include/QExtSerialPort ++ ++Name: QtExtSerialPort ++Description: QtExtSerialPort library ++Version: 1.2.0 ++Libs: -L${libdir} -lqextserialport ++Cflags: -I${includedir}
package/qextserialport/qextserialport.mk new file +35 -0
@@ -0,0 +1,35 @@ +############################################################# +# +# qextserialport +# +############################################################# + +QEXTSERIALPORT_VERSION = ef4af2a2ee3f +QEXTSERIALPORT_SITE = https://qextserialport.googlecode.com/hg/ +QEXTSERIALPORT_SITE_METHOD = hg + +QEXTSERIALPORT_DEPENDENCIES = qt + +QEXTSERIALPORT_INSTALL_STAGING = YES + +define QEXTSERIALPORT_CONFIGURE_CMDS + (cd $(@D); $(QT_QMAKE)) +endef + +define QEXTSERIALPORT_BUILD_CMDS + $(MAKE) -C $(@D) +endef + +define QEXTSERIALPORT_INSTALL_STAGING_CMDS + mkdir -p $(STAGING_DIR)/usr/include/QExtSerialPort + cp $(@D)/src/*.h $(STAGING_DIR)/usr/include/QExtSerialPort/ + cp $(@D)/src/QExtSerialPort $(STAGING_DIR)/usr/include/QExtSerialPort/ + cp -a $(@D)/src/build/*.so* $(STAGING_DIR)/usr/lib/ + cp $(@D)/qextserialport.pc $(STAGING_DIR)/usr/lib/pkgconfig/ +endef + +define QEXTSERIALPORT_INSTALL_TARGET_CMDS + cp -a $(@D)/src/build/*.so.* $(TARGET_DIR)/usr/lib +endef + +$(eval $(call GENTARGETS))
Signature · 1 line
1.7.9.5
PATCH 5/10 qextserialport: new package
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Thomas" == Thomas Petazzoni <[email protected]> writes:
Thomas> ---
Thomas> package/Config.in | 1 + Thomas> package/qextserialport/Config.in | 9 +++++ Thomas> .../qextserialport-main-include.patch | 15 +++++++++ Thomas> .../qextserialport-no-examples.patch | 17 ++++++++++ Thomas> .../qextserialport/qextserialport-pkgconfig.patch | 19 +++++++++++ Thomas> package/qextserialport/qextserialport.mk | 35
Committed with minor fixups to match current buildroot, thanks.
Signature · 1 line
Bye, Peter Korsgaard
PATCH 6/10 pciutils: install headers and libraries in STAGING_DIR
In reply to Thomas PetazzoniThere are some tools, like flashrom, that build against libraries of pciutils.
--- package/pciutils/pciutils.mk | 8 ++++++++ 1 file changed, 8 insertions(+)
package/pciutils/pciutils.mk +8 -0
@@ -6,6 +6,7 @@ PCIUTILS_VERSION = 3.1.9 PCIUTILS_SITE = ftp://atrey.karlin.mff.cuni.cz/pub/linux/pci +PCIUTILS_INSTALL_STAGING = YES ifeq ($(BR2_PACKAGE_ZLIB),y) PCIUTILS_ZLIB=yes PCIUTILS_DEPENDENCIES += zlib
@@ -50,4 +51,11 @@ define PCIUTILS_INSTALL_TARGET_CMDS SHARED=$(PCIUTILS_SHARED) install-lib endef +define PCIUTILS_INSTALL_STAGING_CMDS + $(MAKE) BUILDDIR=$(@D) -C $(@D) PREFIX=$(STAGING_DIR)/usr \ + SHARED=$(PCIUTILS_SHARED) install + $(MAKE) BUILDDIR=$(@D) -C $(@D) PREFIX=$(STAGING_DIR)/usr \ + SHARED=$(PCIUTILS_SHARED) install-lib +endef + $(eval $(call GENTARGETS))
Signature · 1 line
1.7.9.5
PATCH 6/10 pciutils: install headers and libraries in STAGING_DIR
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Thomas" == Thomas Petazzoni <[email protected]> writes:
Thomas> There are some tools, like flashrom, that build against libraries of Thomas> pciutils.
Committed, thanks.
Signature · 1 line
Bye, Peter Korsgaard
PATCH 7/10 dmidecode: new package
In reply to Thomas Petazzoni--- package/Config.in | 1 + package/dmidecode/Config.in | 9 +++++ .../dmidecode/dmidecode-build-system-fixes.patch | 35 ++++++++++++++++++++ package/dmidecode/dmidecode.mk | 18 ++++++++++ 4 files changed, 63 insertions(+) create mode 100644 package/dmidecode/Config.in create mode 100644 package/dmidecode/dmidecode-build-system-fixes.patch create mode 100644 package/dmidecode/dmidecode.mk
package/Config.in +1 -0
@@ -173,6 +173,7 @@ source "package/dbus-python/Config.in" if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/devmem2/Config.in" endif +source "package/dmidecode/Config.in" source "package/dmraid/Config.in" source "package/dosfstools/Config.in" source "package/e2fsprogs/Config.in"
package/dmidecode/Config.in new file +9 -0
@@ -0,0 +1,9 @@ +config BR2_PACKAGE_DMIDECODE + bool "dmidecode" + depends on BR2_i386 || BR2_x86_64 + help + Dmidecode reports information about your system's hardware + as described in your system BIOS according to the SMBIOS/DMI + standard. + + http://www.nongnu.org/dmidecode/
package/dmidecode/dmidecode-build-system-fixes.patch new file +35 -0
@@ -0,0 +1,35 @@ +Minor build system fixes + +Usual build system fixes to allow CC/CFLAGS/LDFLAGS to be overriden +from the command line, and completed by additional flags from the +Makefile. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/Makefile +=================================================================== +--- a/Makefile ++++ b/Makefile +@@ -12,9 +12,10 @@ + # (at your option) any later version. + # + +-CC = gcc +-CFLAGS = -W -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual \ +- -Wcast-align -Wwrite-strings -Wmissing-prototypes -Winline -Wundef ++CC ?= gcc ++override CFLAGS += \ ++ -W -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual \ ++ -Wcast-align -Wwrite-strings -Wmissing-prototypes -Winline -Wundef + #CFLAGS += -DBIGENDIAN + #CFLAGS += -DALIGNMENT_WORKAROUND + +@@ -23,7 +24,7 @@ + #CFLAGS += -g + + # Pass linker flags here +-LDFLAGS = ++override LDFLAGS += + + DESTDIR = + prefix = /usr/local
package/dmidecode/dmidecode.mk new file +18 -0
@@ -0,0 +1,18 @@ +############################################################# +# +# dmidecode +# +############################################################# + +DMIDECODE_VERSION = 2.11 +DMIDECODE_SITE = http://download.savannah.gnu.org/releases/dmidecode/ + +define DMIDECODE_BUILD_CMDS + $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) +endef + +define DMIDECODE_INSTALL_TARGET_CMDS + $(MAKE) -C $(@D) prefix=/usr DESTDIR=$(TARGET_DIR) install +endef + +$(eval $(call GENTARGETS))
Signature · 1 line
1.7.9.5
PATCH 7/10 dmidecode: new package
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Thomas" == Thomas Petazzoni <[email protected]> writes:
Thomas> Signed-off-by: Thomas Petazzoni <[email protected]>
Committed, thanks.
Signature · 1 line
Bye, Peter Korsgaard
PATCH 8/10 flashrom: new package
In reply to Thomas Petazzoni--- package/Config.in | 1 + package/flashrom/Config.in | 11 +++++++++++ package/flashrom/flashrom.mk | 20 ++++++++++++++++++++ 3 files changed, 32 insertions(+) create mode 100644 package/flashrom/Config.in create mode 100644 package/flashrom/flashrom.mk
package/Config.in +1 -0
@@ -178,6 +178,7 @@ source "package/dmraid/Config.in" source "package/dosfstools/Config.in" source "package/e2fsprogs/Config.in" source "package/eeprog/Config.in" +source "package/flashrom/Config.in" source "package/fconfig/Config.in" source "package/fis/Config.in" source "package/fmtools/Config.in"
package/flashrom/Config.in new file +11 -0
@@ -0,0 +1,11 @@ +config BR2_PACKAGE_FLASHROM + bool "flashrom" + select BR2_PACKAGE_PCIUTILS + # dmidecode is only a runtime dependency + select BR2_PACKAGE_DMIDECODE + depends on BR2_i386 || BR2_x86_64 + help + BIOS-updating utility. + Requires PCIUtils libraries. + + http://flashrom.org/
package/flashrom/flashrom.mk new file +20 -0
@@ -0,0 +1,20 @@ +############################################################# +# +# flashrom +# +############################################################# +FLASHROM_VERSION = 0.9.3 +FLASHROM_SOURCE = flashrom-$(FLASHROM_VERSION).tar.bz2 +FLASHROM_SITE = http://download.flashrom.org/releases + +FLASHROM_DEPENDENCIES = pciutils + +define FLASHROM_BUILD_CMDS + $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) +endef + +define FLASHROM_INSTALL_TARGET_CMDS + $(INSTALL) -m 0755 -D $(@D)/flashrom $(TARGET_DIR)/usr/bin/flashrom +endef + +$(eval $(call GENTARGETS))
Signature · 1 line
1.7.9.5
PATCH 8/10 flashrom: new package
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Thomas" == Thomas Petazzoni <[email protected]> writes:
Thomas> Signed-off-by: Thomas Petazzoni <[email protected]> Thomas> ---
Thomas> +############################################################# Thomas> +#
Thomas> +# flashrom
Thomas> +#
Thomas> +############################################################# Thomas> +FLASHROM_VERSION = 0.9.3
Thomas> +FLASHROM_SOURCE = flashrom-$(FLASHROM_VERSION).tar.bz2
Thomas> +FLASHROM_SITE = http://download.flashrom.org/releases
Thomas> +
Thomas> +FLASHROM_DEPENDENCIES = pciutils
Thomas> +
Thomas> +define FLASHROM_BUILD_CMDS
Thomas> + $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D)
Thomas> +endef
Thomas> +
Thomas> +define FLASHROM_INSTALL_TARGET_CMDS
Thomas> + $(INSTALL) -m 0755 -D $(@D)/flashrom $(TARGET_DIR)/usr/bin/flashrom
I would have expected something like this doing hw access should go into /usr/sbin, and that's also where Debian places it so I've changed that and committed, thanks.
Signature · 1 line
Bye, Peter Korsgaard
PATCH 9/10 qt: make $(HOST_DIR)/usr/mkspecs a symlink to $(STAGING_DIR)/usr/mkspecs
In reply to Thomas PetazzoniIn fact, not only qt can install stuff in $(STAGING_DIR)/usr/mkspecs, but also libraries that which to integrate with qmake, such as qwt. However, qmake and al. will look inside $(HOST_DIR)/usr/mkspecs, so the easiest solution is to have a symbolic between the two directories, instead of copying things around.
--- package/qt/qt.mk | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
package/qt/qt.mk +1 -2
@@ -583,8 +583,7 @@ define QT_INSTALL_STAGING_CMDS $(MAKE) -C $(@D) install mkdir -p $(HOST_DIR)/usr/bin mv $(addprefix $(STAGING_DIR)/usr/bin/,$(QT_HOST_PROGRAMS)) $(HOST_DIR)/usr/bin - rm -rf $(HOST_DIR)/usr/mkspecs - mv $(STAGING_DIR)/usr/mkspecs $(HOST_DIR)/usr + ln -sf $(STAGING_DIR)/usr/mkspecs $(HOST_DIR)/usr/mkspecs $(QT_INSTALL_QT_CONF) endef
Signature · 1 line
1.7.9.5
PATCH 9/10 qt: make $(HOST_DIR)/usr/mkspecs a symlink to $(STAGING_DIR)/usr/mkspecs
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Thomas" == Thomas Petazzoni <[email protected]> writes:
Thomas> In fact, not only qt can install stuff in $(STAGING_DIR)/usr/mkspecs, Thomas> but also libraries that which to integrate with qmake, such as
s/which/wish/
Thomas> qwt. However, qmake and al. will look inside $(HOST_DIR)/usr/mkspecs, Thomas> so the easiest solution is to have a symbolic between the two
s/symbolic/symbolic link/
Committed with these fixes, thanks.
Signature · 1 line
Bye, Peter Korsgaard
PATCH 10/10 libqwt: new package
In reply to Thomas PetazzoniFrom: Laurent GONZALEZ <[email protected]>
Patch initially written by Thomas Petazzoni, then reworked and updated by Laurent Gonzalez, and finally cleaned up by Thomas again.
--- package/Config.in | 1 + package/libqwt/Config.in | 23 +++++++++ package/libqwt/libqwt-remove-installed-check.patch | 32 ++++++++++++ package/libqwt/libqwt.mk | 51 ++++++++++++++++++++ 4 files changed, 107 insertions(+) create mode 100644 package/libqwt/Config.in create mode 100644 package/libqwt/libqwt-remove-installed-check.patch create mode 100644 package/libqwt/libqwt.mk
package/Config.in +1 -0
@@ -348,6 +348,7 @@ source "package/libglade/Config.in" source "package/gdk-pixbuf/Config.in" source "package/libgtk2/Config.in" source "package/libpng/Config.in" +source "package/libqwt/Config.in" source "package/libraw/Config.in" source "package/librsvg/Config.in" source "package/libsvgtiny/Config.in"
package/libqwt/Config.in new file +23 -0
@@ -0,0 +1,23 @@ +config BR2_PACKAGE_LIBQWT + bool "libqwt" + depends on BR2_PACKAGE_QT + select BR2_PACKAGE_QT_GUI_MODULE + help + Qwt is a graphics extension to the Qt GUI application + framework. It provides a 2D plotting widget and more. + + http://http://sourceforge.net/projects/qwt + +if BR2_PACKAGE_LIBQWT + +config BR2_PACKAGE_LIBQWT_SVG + bool "SVG support" + select BR2_PACKAGE_QT_SVG + +config BR2_PACKAGE_LIBQWT_MATHML + bool "MathML support" + +endif + +comment "libqwt requires qt" + depends on !BR2_PACKAGE_QT
package/libqwt/libqwt-remove-installed-check.patch new file +32 -0
@@ -0,0 +1,32 @@ +Remove useless check at build time + +At build time, Qwt looks whether the Qwt libraries are already +installed in the destination directory, to avoid confusion between +libraries installed system-wide and locally-built shared +libraries. However, this behaviour conflicts with how Buildroot builds +and installs libraries, so get rid of it. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: qwt-6.0.0/qwtbuild.pri +=================================================================== +--- qwt-6.0.0.orig/qwtbuild.pri 2011-09-12 19:37:35.663275952 +0200 ++++ qwt-6.0.0/qwtbuild.pri 2011-09-12 19:37:41.913275949 +0200 +@@ -53,17 +53,3 @@ + !debug_and_release { + OBJECTS_DIR = obj + } +- +-unix { +- +- exists( $${QMAKE_LIBDIR_QT}/libqwt.* ) { +- +- # On some Linux distributions the Qwt libraries are installed +- # in the same directory as the Qt libraries. Unfortunately +- # qmake always adds QMAKE_LIBDIR_QT at the beginning of the +- # linker path, so that the installed libraries will be +- # used instead of the local ones. +- +- error( "local build will conflict with $${QMAKE_LIBDIR_QT}/libqwt.*" ) +- } +-}
package/libqwt/libqwt.mk new file +51 -0
51 lines not on this page · raw message
Signature · 1 line
1.7.9.5
PATCH 10/10 libqwt: new package
Quoted 155 lines · Thomas Petazzoni
From: Laurent GONZALEZ <[email protected]>
Patch initially written by Thomas Petazzoni, then reworked and updated by Laurent Gonzalez, and finally cleaned up by Thomas again.
Signed-off-by Thomas Petazzoni <[email protected]>--- package/Config.in | 1 + package/libqwt/Config.in | 23 +++++++++ package/libqwt/libqwt-remove-installed-check.patch | 32 ++++++++++++ package/libqwt/libqwt.mk | 51 ++++++++++++++++++++ 4 files changed, 107 insertions(+) create mode 100644 package/libqwt/Config.in create mode 100644 package/libqwt/libqwt-remove-installed-check.patch create mode 100644 package/libqwt/libqwt.mkpackage/Config.in +1
-0@@ -348,6 +348,7 @@ source "package/libglade/Config.in" source "package/gdk-pixbuf/Config.in" source "package/libgtk2/Config.in" source "package/libpng/Config.in" +source "package/libqwt/Config.in" source "package/libraw/Config.in" source "package/librsvg/Config.in" source "package/libsvgtiny/Config.in"package/libqwt/Config.in new file +23
-0@@ -0,0 +1,23 @@ +config BR2_PACKAGE_LIBQWT + bool "libqwt" + depends on BR2_PACKAGE_QT + select BR2_PACKAGE_QT_GUI_MODULE + help + Qwt is a graphics extension to the Qt GUI application + framework. It provides a 2D plotting widget and more. + + http://http://sourceforge.net/projects/qwt + +if BR2_PACKAGE_LIBQWT + +config BR2_PACKAGE_LIBQWT_SVG + bool "SVG support" + select BR2_PACKAGE_QT_SVG + +config BR2_PACKAGE_LIBQWT_MATHML + bool "MathML support" + +endif + +comment "libqwt requires qt" + depends on !BR2_PACKAGE_QTpackage/libqwt/libqwt-remove-installed-check.patch new file +32
-0@@ -0,0 +1,32 @@ +Remove useless check at build time + +At build time, Qwt looks whether the Qwt libraries are already +installed in the destination directory, to avoid confusion between +libraries installed system-wide and locally-built shared +libraries. However, this behaviour conflicts with how Buildroot builds +and installs libraries, so get rid of it. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: qwt-6.0.0/qwtbuild.pri +=================================================================== +--- qwt-6.0.0.orig/qwtbuild.pri 2011-09-12 19:37:35.663275952 +0200 ++++ qwt-6.0.0/qwtbuild.pri 2011-09-12 19:37:41.913275949 +0200 +@@ -53,17 +53,3 @@ + !debug_and_release { + OBJECTS_DIR = obj + } +- +-unix { +- +- exists( $${QMAKE_LIBDIR_QT}/libqwt.* ) { +- +- # On some Linux distributions the Qwt libraries are installed +- # in the same directory as the Qt libraries. Unfortunately +- # qmake always adds QMAKE_LIBDIR_QT at the beginning of the +- # linker path, so that the installed libraries will be +- # used instead of the local ones. +- +- error( "local build will conflict with $${QMAKE_LIBDIR_QT}/libqwt.*" ) +- } +-}package/libqwt/libqwt.mk new file +51
-1@@ -0,0 +1,51 @@ +############################################################# +# +# libqwt +# +############################################################# +LIBQWT_VERSION = 6.0.1 +LIBQWT_SOURCE = qwt-$(LIBQWT_VERSION).tar.bz2 +LIBQWT_SITE = http://$(BR2_SOURCEFORGE_MIRROR).dl.sourceforge.net/project/qwt/qwt/$(LIBQWT_VERSION)/ +LIBQWT_INSTALL_STAGING = YES +LIBQWT_DEPENDENCIES = qt + +LIBQWT_CONFIG = 's%QWT_INSTALL_PREFIX.*/usr/local/.*%QWT_INSTALL_PREFIX = /usr%' +LIBQWT_CONFIG += -e 's/^.*QWT_CONFIG.*QwtDesigner.*$$/\# QWT_CONFIG += QwtDesigner/' +LIBQWT_CONFIG += -e 's%/features%/mkspecs/features%' + +ifeq ($(BR2_PACKAGE_LIBQWT_SVG),y) + LIBQWT_CONFIG += -e 's/^.*QWT_CONFIG.*QwtSvg.*$$/QWT_CONFIG += QwtSvg/' +else + LIBQWT_CONFIG += -e 's/^.*QWT_CONFIG.*QwtSvg.*$$/\# QWT_CONFIG += QwtSvg/' +endif + +ifeq ($(BR2_PACKAGE_LIBQWT_MATHML),y) + LIBQWT_CONFIG += -e 's/^.*QWT_CONFIG.*QwtMathML.*$$/QWT_CONFIG += QwtMathML/' +else + LIBQWT_CONFIG += -e 's/^.*QWT_CONFIG.*QwtMathML.*$$/\# QWT_CONFIG += QwtMathML/' +endif + +define LIBQWT_CONFIGURE_CMDS + $(SED) $(LIBQWT_CONFIG) $(@D)/qwtconfig.pri + (cd $(@D); $(QT_QMAKE)) +endef + +define LIBQWT_BUILD_CMDS + $(MAKE) -C $(@D) +endef + +# After installation, we fixup the INSTALL_PREFIX in qwtconfig.pri so +# that when building with qmake, -L$(STAGING_DIR)/usr/lib is used and +# not -L/usr/lib. +define LIBQWT_INSTALL_STAGING_CMDS + $(MAKE) -C $(@D) install INSTALL_ROOT=$(STAGING_DIR) + $(SED) "s%QWT_INSTALL_PREFIX = .*%QWT_INSTALL_PREFIX = $(STAGING_DIR)/usr%" \ + $(STAGING_DIR)/usr/mkspecs/features/qwtconfig.pri +endef + +define LIBQWT_INSTALL_TARGET_CMDS + $(MAKE) -C $(@D) install INSTALL_ROOT=$(TARGET_DIR) + rm -Rf $(TARGET_DIR)/usr/mkspecs +endef + +$(eval $(call GENTARGETS)) --1.7.9.5
Quoted 4 lines
_______________________________________________
buildroot mailing list
buildroot at busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot
ping?
PATCH 10/10 libqwt: new package
In reply to Thomas PetazzoniQuoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Thomas" == Thomas Petazzoni <[email protected]> writes:
Thomas> From: Laurent GONZALEZ <[email protected]>
Thomas> Patch initially written by Thomas Petazzoni, then reworked and updated Thomas> by Laurent Gonzalez, and finally cleaned up by Thomas again.
Committed with minor fixes to match BR changes, thanks.
Thomas> diff --git a/package/libqwt/Config.in b/package/libqwt/Config.in Thomas> new file mode 100644
Thomas> index 0000000..48b27ca
Thomas> --- /dev/null
Thomas> +++ b/package/libqwt/Config.in
Thomas> @@ -0,0 +1,23 @@
Thomas> +config BR2_PACKAGE_LIBQWT
I've dropped 'lib' and just called it BR2_PACKAGE_QWT. I've also moved it up under qt and changed the QT_GUI_MODULE to a depends on similar to qtuio.
Signature · 1 line
Bye, Peter Korsgaard