libxmlrpc: fix static build
PATCH 1/1 libxmlrpc: fix static build
Fixes:
http://autobuild.buildroot.net/results/16d/16de14ace7b4e089f56b9cb173542e487cae3a9d/
--- package/libxmlrpc/libxmlrpc.mk | 10 ++++++++++ 1 file changed, 10 insertions(+)
package/libxmlrpc/libxmlrpc.mk +10 -0
@@ -35,4 +35,14 @@ LIBXMLRPC_MAKE_ENV = \ CFLAGS_FOR_BUILD="$(HOST_CFLAGS)" \ LDFLAGS_FOR_BUILD="$(HOST_LDFLAGS)" +ifeq ($(BR2_STATIC_LIBS),y) +LIBXMLRPC_STATIC_OPTS = SHARED_LIB_TYPE=NONE MUST_BUILD_SHLIB=N +endif + +LIBXMLRPC_MAKE_OPTS = $(LIBXMLRPC_STATIC_OPTS) +LIBXMLRPC_INSTALL_STAGING_OPTS = $(LIBXMLRPC_STATIC_OPTS) \ + DESTDIR=$(STAGING_DIR) install +LIBXMLRPC_INSTALL_TARGET_OPTS = $(LIBXMLRPC_STATIC_OPTS) \ + DESTDIR=$(TARGET_DIR) install + $(eval $(autotools-package))
Signature · 1 line
2.1.4
PATCH 1/1 libxmlrpc: fix static build
Dear Baruch Siach,
Quoted 17 lines · Baruch Siach
Fixes:
http://autobuild.buildroot.net/results/16d/16de14ace7b4e089f56b9cb173542e487cae3a9d/Signed-off-by Baruch Siach <[email protected]>--- package/libxmlrpc/libxmlrpc.mk | 10 ++++++++++ 1 file changed, 10 insertions(+)package/libxmlrpc/libxmlrpc.mk +1
-0@@ -35,4 +35,14 @@ LIBXMLRPC_MAKE_ENV = \ CFLAGS_FOR_BUILD="$(HOST_CFLAGS)" \ LDFLAGS_FOR_BUILD="$(HOST_LDFLAGS)" +ifeq ($(BR2_STATIC_LIBS),y)
package/libxmlrpc/libxmlrpc.mk LIBXMLRPC_MAKE_ENV = \ · line 48
Quoted 10 lines
package/libxmlrpc/libxmlrpc.mk +9
-0+LIBXMLRPC_STATIC_OPTS = SHARED_LIB_TYPE=NONE MUST_BUILD_SHLIB=N +endif + +LIBXMLRPC_MAKE_OPTS = $(LIBXMLRPC_STATIC_OPTS) +LIBXMLRPC_INSTALL_STAGING_OPTS = $(LIBXMLRPC_STATIC_OPTS) \ + DESTDIR=$(STAGING_DIR) install +LIBXMLRPC_INSTALL_TARGET_OPTS = $(LIBXMLRPC_STATIC_OPTS) \ + DESTDIR=$(TARGET_DIR) install + $(eval $(autotools-package))
Can you try instead something like:
ifeq ($(BR2_STATIC_LIBS),y)LIBXMLRPC_MAKE_ENV += SHARED_LIB_TYPE=NONE MUST_BUILD_SHLIB=N endif
The advantage is that LIBXMLRPC_MAKE_ENV is passed to the build, install staging and install target steps.
Best regards,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH 1/1 libxmlrpc: fix static build
Hi Thomas,
Quoted 31 lines · Thomas Petazzoni
Quoted 17 lines · Baruch Siach
Fixes:
http://autobuild.buildroot.net/results/16d/16de14ace7b4e089f56b9cb173542e487cae3a9d/Signed-off-by Baruch Siach <[email protected]>--- package/libxmlrpc/libxmlrpc.mk | 10 ++++++++++ 1 file changed, 10 insertions(+)package/libxmlrpc/libxmlrpc.mk +1
-0@@ -35,4 +35,14 @@ LIBXMLRPC_MAKE_ENV = \ CFLAGS_FOR_BUILD="$(HOST_CFLAGS)" \ LDFLAGS_FOR_BUILD="$(HOST_LDFLAGS)" +ifeq ($(BR2_STATIC_LIBS),y)package/libxmlrpc/libxmlrpc.mk LIBXMLRPC_MAKE_ENV = \ · line 48
Quoted 10 lines
package/libxmlrpc/libxmlrpc.mk +9
-0+LIBXMLRPC_STATIC_OPTS = SHARED_LIB_TYPE=NONE MUST_BUILD_SHLIB=N +endif + +LIBXMLRPC_MAKE_OPTS = $(LIBXMLRPC_STATIC_OPTS) +LIBXMLRPC_INSTALL_STAGING_OPTS = $(LIBXMLRPC_STATIC_OPTS) \ + DESTDIR=$(STAGING_DIR) install +LIBXMLRPC_INSTALL_TARGET_OPTS = $(LIBXMLRPC_STATIC_OPTS) \ + DESTDIR=$(TARGET_DIR) install + $(eval $(autotools-package))Can you try instead something like:
Quoted 3 lines
ifeq ($(BR2_STATIC_LIBS),y)
LIBXMLRPC_MAKE_ENV+= SHARED_LIB_TYPE=NONE MUST_BUILD_SHLIB=N endif
Unfortunately, these make variables are set explicitly in common.mk. So passing them in make environment has no effect.
Quoted 2 lines
The advantage is that
LIBXMLRPC_MAKE_ENVis passed to the build, install staging and install target steps.
Now that I think about it, why don't we have a similar thing for MAKE_OPTS, say, $(PKG)_MAKE_VARS. Something like (untested, host packages missing):
package/pkg-autotools.mk +4 -4
@@ -154,10 +154,10 @@ endif $(2)_CONF_ENV ?= $(2)_CONF_OPTS ?= $(2)_MAKE_ENV ?= -$(2)_MAKE_OPTS ?= -$(2)_INSTALL_OPTS ?= install -$(2)_INSTALL_STAGING_OPTS ?= DESTDIR=$$(STAGING_DIR) install -$(2)_INSTALL_TARGET_OPTS ?= DESTDIR=$$(TARGET_DIR) install +$(2)_MAKE_OPTS ?= $$($(2)_MAKE_VARS) +$(2)_INSTALL_OPTS ?= $$($(2)_MAKE_VARS) install +$(2)_INSTALL_STAGING_OPTS ?= $$($(2)_MAKE_VARS) DESTDIR=$$(STAGING_DIR) install +$(2)_INSTALL_TARGET_OPTS ?= $$($(2)_MAKE_VARS) DESTDIR=$$(TARGET_DIR) install # This must be repeated from inner-generic-package, otherwise we get an empty # _DEPENDENCIES if _AUTORECONF is YES. Also filter the result of _AUTORECONF
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: fix static build
Dear Baruch Siach,
Quoted 2 lines · Baruch Siach
Unfortunately, these make variables are set explicitly in common.mk. So passing them in make environment has no effect.
Argh, ok.
Quoted 9 lines
Now that I think about it, why don't we have a similar thing for
MAKE_OPTS, say, $(PKG)_MAKE_VARS. Something like (untested, host packages missing):package/pkg-autotools.mk +0
-0@@ -154,10 +154,10 @@ endif $(2)_CONF_ENV ?=
package/pkg-autotools.mk endif · line 160
Quoted 10 lines
package/pkg-autotools.mk +4
-4$(2)_CONF_OPTS ?= $(2)_MAKE_ENV ?= -$(2)_MAKE_OPTS ?= -$(2)_INSTALL_OPTS ?= install -$(2)_INSTALL_STAGING_OPTS ?= DESTDIR=$$(STAGING_DIR) install -$(2)_INSTALL_TARGET_OPTS ?= DESTDIR=$$(TARGET_DIR) install +$(2)_MAKE_OPTS ?= $$($(2)_MAKE_VARS) +$(2)_INSTALL_OPTS ?= $$($(2)_MAKE_VARS) install +$(2)_INSTALL_STAGING_OPTS ?= $$($(2)_MAKE_VARS) DESTDIR=$$(STAGING_DIR) install +$(2)_INSTALL_TARGET_OPTS ?= $$($(2)_MAKE_VARS) DESTDIR=$$(TARGET_DIR) install
Why not. Though I'd be more convinced if there is some evidence that it would also be useful for other packages.
Or maybe we simply need to make $(2)_MAKE_OPTS used for both the build and install steps?
Best regards,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH 1/1 libxmlrpc: fix static build
Quoted 32 lines · Thomas Petazzoni
Dear Baruch Siach,
Quoted 2 lines · Baruch Siach
Unfortunately, these make variables are set explicitly in common.mk. So passing them in make environment has no effect.
Argh, ok.
Quoted 9 lines
Now that I think about it, why don't we have a similar thing for
MAKE_OPTS, say, $(PKG)_MAKE_VARS. Something like (untested, host packages missing):package/pkg-autotools.mk +0
-0@@ -154,10 +154,10 @@ endif $(2)_CONF_ENV ?=package/pkg-autotools.mk endif · line 160
Quoted 10 lines
package/pkg-autotools.mk +4
-4$(2)_CONF_OPTS ?= $(2)_MAKE_ENV ?= -$(2)_MAKE_OPTS ?= -$(2)_INSTALL_OPTS ?= install -$(2)_INSTALL_STAGING_OPTS ?= DESTDIR=$$(STAGING_DIR) install -$(2)_INSTALL_TARGET_OPTS ?= DESTDIR=$$(TARGET_DIR) install +$(2)_MAKE_OPTS ?= $$($(2)_MAKE_VARS) +$(2)_INSTALL_OPTS ?= $$($(2)_MAKE_VARS) install +$(2)_INSTALL_STAGING_OPTS ?= $$($(2)_MAKE_VARS) DESTDIR=$$(STAGING_DIR) install +$(2)_INSTALL_TARGET_OPTS ?= $$($(2)_MAKE_VARS) DESTDIR=$$(TARGET_DIR) installWhy not. Though I'd be more convinced if there is some evidence that it would also be useful for other packages.
Quoted 2 lines
Or maybe we simply need to make $(2)_MAKE_OPTS used for both the build and install steps?
Well, MAKE_OPTS includes the target that has to be built, so it can't just be
reused as is for _INSTALL. So Baruch's proposal makes more sense to me.
Regards,
Arnout
Quoted 5 lines
Best regards,
Thomas
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: fix static build
In reply to Thomas PetazzoniHi Thomas,
Quoted 20 lines · Thomas Petazzoni
Quoted 2 lines · Baruch Siach
Unfortunately, these make variables are set explicitly in common.mk. So passing them in make environment has no effect.
Argh, ok.
Quoted 14 lines
Now that I think about it, why don't we have a similar thing for
MAKE_OPTS, say, $(PKG)_MAKE_VARS. Something like (untested, host packages missing):package/pkg-autotools.mk +0
-3@@ -154,10 +154,10 @@ endif $(2)_CONF_ENV ?= $(2)_CONF_OPTS ?= $(2)_MAKE_ENV ?= -$(2)_MAKE_OPTS ?= -$(2)_INSTALL_OPTS ?= install -$(2)_INSTALL_STAGING_OPTS ?= DESTDIR=$$(STAGING_DIR) install
Quoted 8 lines
package/pkg-autotools.mk endif · line 160
Quoted 5 lines
package/pkg-autotools.mk +4
-1-$(2)_INSTALL_TARGET_OPTS ?= DESTDIR=$$(TARGET_DIR) install +$(2)_MAKE_OPTS ?= $$($(2)_MAKE_VARS) +$(2)_INSTALL_OPTS ?= $$($(2)_MAKE_VARS) install +$(2)_INSTALL_STAGING_OPTS ?= $$($(2)_MAKE_VARS) DESTDIR=$$(STAGING_DIR) install +$(2)_INSTALL_TARGET_OPTS ?= $$($(2)_MAKE_VARS) DESTDIR=$$(TARGET_DIR) installWhy not. Though I'd be more convinced if there is some evidence that it would also be useful for other packages.
I looked around and I found a few more packages that might benefit from _MAKE_VARS. But I thing the gain is not enough to worth the trouble. Adding $(2)_MAKE_VARS might also lead to confusion when a user sets both _MAKE_VARS and one or more other _OPTS, thus silently overriding _MAKE_VARS in a way that is not apparent to the reader.
So, I suggest to just apply the original patch.
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 -