Message ID | CAKAx1cj8sSdbR6_NJu=tiHB=EPO_bjb571k4Yu5rVo_g5h66dw@mail.gmail.com |
---|---|
State | Changes Requested |
Headers | show |
Series | [1/1] pkg-waf: add support for <pkg>_SUBDIR | expand |
Hello, does anyone have the time to look at this small patch ? Thanks a lot! Best regards, Lionel On Wed, Sep 19, 2018 at 3:31 PM Lionel Orry <lionel.orry@gmail.com> wrote: > > In the Buildroot manual, it is specified that the Waf-based > infrastructure supports the <pkg>_SUBDIR variable, which was not true. > > This patch makes use of this variable by changing to the given > sub-directory before executing waf commands. > > Signed-off-by: Lionel Orry <lionel.orry@gmail.com> > --- > package/pkg-waf.mk | 10 ++++++---- > 1 file changed, 6 insertions(+), 4 deletions(-) > > diff --git a/package/pkg-waf.mk b/package/pkg-waf.mk > index e5b606f063..826b73291b 100644 > --- a/package/pkg-waf.mk > +++ b/package/pkg-waf.mk > @@ -54,13 +54,15 @@ $(2)_INSTALL_STAGING_OPTS ?= > $(2)_INSTALL_TARGET_OPTS ?= > $(2)_WAF_OPTS ?= > > +$(2)_SRCDIR = $$($(2)_DIR)/$$($(2)_SUBDIR) > + > # > # Configure step. Only define it if not already defined by the package > # .mk file. > # > ifndef $(2)_CONFIGURE_CMDS > define $(2)_CONFIGURE_CMDS > - cd $$(@D) && \ > + cd $$($$(PKG)_SRCDIR) && \ > $$(TARGET_CONFIGURE_OPTS) \ > $$($(2)_CONF_ENV) \ > $$(HOST_DIR)/bin/python2 $$($(2)_WAF) configure \ > @@ -77,7 +79,7 @@ endif > # > ifndef $(2)_BUILD_CMDS > define $(2)_BUILD_CMDS > - cd $$(@D) && \ > + cd $$($$(PKG)_SRCDIR) && \ > $$(TARGET_MAKE_ENV) $$(HOST_DIR)/bin/python2 $$($(2)_WAF) \ > build -j $$(PARALLEL_JOBS) $$($(2)_BUILD_OPTS) \ > $$($(2)_WAF_OPTS) > @@ -90,7 +92,7 @@ endif > # > ifndef $(2)_INSTALL_STAGING_CMDS > define $(2)_INSTALL_STAGING_CMDS > - cd $$(@D) && \ > + cd $$($$(PKG)_SRCDIR) && \ > $$(TARGET_MAKE_ENV) $$(HOST_DIR)/bin/python2 $$($(2)_WAF) \ > install --destdir=$$(STAGING_DIR) \ > $$($(2)_INSTALL_STAGING_OPTS) \ > @@ -104,7 +106,7 @@ endif > # > ifndef $(2)_INSTALL_TARGET_CMDS > define $(2)_INSTALL_TARGET_CMDS > - cd $$(@D) && \ > + cd $$($$(PKG)_SRCDIR) && \ > $$(TARGET_MAKE_ENV) $$(HOST_DIR)/bin/python2 $$($(2)_WAF) \ > install --destdir=$$(TARGET_DIR) \ > $$($(2)_INSTALL_TARGET_OPTS) \ > -- > 2.19.0
Hello Lionel, Thanks for your patch, sorry for the slow reply. See some feedback below. On Wed, 19 Sep 2018 15:31:40 +0200, Lionel Orry wrote: > In the Buildroot manual, it is specified that the Waf-based > infrastructure supports the <pkg>_SUBDIR variable, which was not true. > > This patch makes use of this variable by changing to the given > sub-directory before executing waf commands. > > Signed-off-by: Lionel Orry <lionel.orry@gmail.com> First, could you update the Buildroot manual to document this new variable of the waf package infrastructure ? > +$(2)_SRCDIR = $$($(2)_DIR)/$$($(2)_SUBDIR) Could you try after dropping this line? In fact the generic package infrastructure already defines <pkg>_SRCDIR as <pkg>_DIR/<pkg>_SUBDIR, so it shouldn't be needed to replicate that here. And bonus point if you submit another patch that drops those redundant lines from pkg-cmake, pkg-meson and pkg-python, of course after testing that it still works fine :) Thanks a lot! Thomas
diff --git a/package/pkg-waf.mk b/package/pkg-waf.mk index e5b606f063..826b73291b 100644 --- a/package/pkg-waf.mk +++ b/package/pkg-waf.mk @@ -54,13 +54,15 @@ $(2)_INSTALL_STAGING_OPTS ?= $(2)_INSTALL_TARGET_OPTS ?= $(2)_WAF_OPTS ?= +$(2)_SRCDIR = $$($(2)_DIR)/$$($(2)_SUBDIR) + # # Configure step. Only define it if not already defined by the package # .mk file. # ifndef $(2)_CONFIGURE_CMDS define $(2)_CONFIGURE_CMDS - cd $$(@D) && \ + cd $$($$(PKG)_SRCDIR) && \ $$(TARGET_CONFIGURE_OPTS) \ $$($(2)_CONF_ENV) \ $$(HOST_DIR)/bin/python2 $$($(2)_WAF) configure \ @@ -77,7 +79,7 @@ endif # ifndef $(2)_BUILD_CMDS define $(2)_BUILD_CMDS - cd $$(@D) && \ + cd $$($$(PKG)_SRCDIR) && \ $$(TARGET_MAKE_ENV) $$(HOST_DIR)/bin/python2 $$($(2)_WAF) \ build -j $$(PARALLEL_JOBS) $$($(2)_BUILD_OPTS) \ $$($(2)_WAF_OPTS) @@ -90,7 +92,7 @@ endif # ifndef $(2)_INSTALL_STAGING_CMDS define $(2)_INSTALL_STAGING_CMDS - cd $$(@D) && \ + cd $$($$(PKG)_SRCDIR) && \ $$(TARGET_MAKE_ENV) $$(HOST_DIR)/bin/python2 $$($(2)_WAF) \ install --destdir=$$(STAGING_DIR) \ $$($(2)_INSTALL_STAGING_OPTS) \ @@ -104,7 +106,7 @@ endif # ifndef $(2)_INSTALL_TARGET_CMDS define $(2)_INSTALL_TARGET_CMDS - cd $$(@D) && \ + cd $$($$(PKG)_SRCDIR) && \ $$(TARGET_MAKE_ENV) $$(HOST_DIR)/bin/python2 $$($(2)_WAF) \ install --destdir=$$(TARGET_DIR) \ $$($(2)_INSTALL_TARGET_OPTS) \
In the Buildroot manual, it is specified that the Waf-based infrastructure supports the <pkg>_SUBDIR variable, which was not true. This patch makes use of this variable by changing to the given sub-directory before executing waf commands. Signed-off-by: Lionel Orry <lionel.orry@gmail.com> --- package/pkg-waf.mk | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-)