All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v4 0/4] Miscellauneus patches
@ 2014-04-07  9:56 Fabio Porcedda
  2014-04-07  9:56 ` [Buildroot] [PATCH v4 1/4] Makefile: fix coding style Fabio Porcedda
                   ` (3 more replies)
  0 siblings, 4 replies; 18+ messages in thread
From: Fabio Porcedda @ 2014-04-07  9:56 UTC (permalink / raw)
  To: buildroot

Some miscellaneus patches.

v4:
 - remove the already merged patch
 - rebase
 - add a new patch
 - change order to put the already acked patch at start
 - luajit patch: add a comment
v3:
 - remove already merged patches
 - add acked-by tags
 - fix a typo
v2:
 - Add three patches
 - Remove the already merged patch

Best regards

Fabio Porcedda (4):
  Makefile: fix coding style
  toolchain: add a hidden config option to enable the toolchain package
  Makefile: let show-targets prints also the dependencies
  luajit: needs for 32bit archictectures a 32bit host gcc

 Makefile                 | 201 +++++++++++++++++++++++------------------------
 package/luajit/Config.in |   4 +
 toolchain/Config.in      |   4 +
 3 files changed, 108 insertions(+), 101 deletions(-)

-- 
1.8.3.2

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

* [Buildroot] [PATCH v4 1/4] Makefile: fix coding style
  2014-04-07  9:56 [Buildroot] [PATCH v4 0/4] Miscellauneus patches Fabio Porcedda
@ 2014-04-07  9:56 ` Fabio Porcedda
  2014-04-16 17:42   ` Thomas Petazzoni
  2014-04-07  9:56 ` [Buildroot] [PATCH v4 2/4] toolchain: add a hidden config option to enable the toolchain package Fabio Porcedda
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 18+ messages in thread
From: Fabio Porcedda @ 2014-04-07  9:56 UTC (permalink / raw)
  To: buildroot

As stated in the buildroot user manual add just a single space before
and after a '=' sign.

Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com>
---
 Makefile | 184 +++++++++++++++++++++++++++++++--------------------------------
 1 file changed, 92 insertions(+), 92 deletions(-)

diff --git a/Makefile b/Makefile
index 6363ec3..82f2763 100644
--- a/Makefile
+++ b/Makefile
@@ -25,10 +25,10 @@
 #--------------------------------------------------------------
 
 # Set and export the version string
-export BR2_VERSION:=2014.05-git
+export BR2_VERSION := 2014.05-git
 
 # Check for minimal make version (note: this check will break at make 10.x)
-MIN_MAKE_VERSION=3.81
+MIN_MAKE_VERSION = 3.81
 ifneq ($(firstword $(sort $(MAKE_VERSION) $(MIN_MAKE_VERSION))),$(MIN_MAKE_VERSION))
 $(error You have make '$(MAKE_VERSION)' installed. GNU make >= $(MIN_MAKE_VERSION) is required)
 endif
@@ -59,33 +59,33 @@ export HOSTARCH := $(shell uname -m | \
 #	make BR2_JLEVEL= -j$((`getconf _NPROCESSORS_ONLN`+1))
 
 # absolute path
-TOPDIR:=$(shell pwd)
-CONFIG_CONFIG_IN=Config.in
-CONFIG=support/kconfig
-DATE:=$(shell date +%Y%m%d)
+TOPDIR := $(shell pwd)
+CONFIG_CONFIG_IN = Config.in
+CONFIG = support/kconfig
+DATE := $(shell date +%Y%m%d)
 
 # Compute the full local version string so packages can use it as-is
 # Need to export it, so it can be got from environment in children (eg. mconf)
-export BR2_VERSION_FULL:=$(BR2_VERSION)$(shell $(TOPDIR)/support/scripts/setlocalversion)
+export BR2_VERSION_FULL := $(BR2_VERSION)$(shell $(TOPDIR)/support/scripts/setlocalversion)
 
-noconfig_targets:=menuconfig nconfig gconfig xconfig config oldconfig randconfig \
+noconfig_targets := menuconfig nconfig gconfig xconfig config oldconfig randconfig \
 	defconfig %_defconfig allyesconfig allnoconfig silentoldconfig release \
 	randpackageconfig allyespackageconfig allnopackageconfig \
 	source-check print-version olddefconfig
 
 # Strip quotes and then whitespaces
-qstrip=$(strip $(subst ",,$(1)))
+qstrip = $(strip $(subst ",,$(1)))
 #"))
 
 # Variables for use in Make constructs
-comma:=,
-empty:=
-space:=$(empty) $(empty)
+comma := ,
+empty :=
+space := $(empty) $(empty)
 
 ifneq ("$(origin O)", "command line")
-O:=output
-CONFIG_DIR:=$(TOPDIR)
-NEED_WRAPPER=
+O := output
+CONFIG_DIR := $(TOPDIR)
+NEED_WRAPPER =
 else
 # other packages might also support Linux-style out of tree builds
 # with the O=<dir> syntax (E.G. Busybox does). As make automatically
@@ -97,18 +97,18 @@ MAKEOVERRIDES =
 # of the origin function (command line -> environment).
 # Unfortunately some packages don't look at origin (E.G. uClibc 0.9.31+)
 # To really make O go away, we have to override it.
-override O:=$(O)
-CONFIG_DIR:=$(O)
+override O := $(O)
+CONFIG_DIR := $(O)
 # we need to pass O= everywhere we call back into the toplevel makefile
 EXTRAMAKEARGS = O=$(O)
-NEED_WRAPPER=y
+NEED_WRAPPER = y
 endif
 
 # bash prints the name of the directory on 'cd <dir>' if CDPATH is
 # set, so unset it here to not cause problems. Notice that the export
 # line doesn't affect the environment of $(shell ..) calls, so
 # explictly throw away any output from 'cd' here.
-export CDPATH:=
+export CDPATH :=
 BASE_DIR := $(shell mkdir -p $(O) && cd $(O) >/dev/null && pwd)
 $(if $(BASE_DIR),, $(error output directory "$(O)" does not exist))
 
@@ -150,26 +150,26 @@ endif
 # Avoids doing the $(or...) everytime
 _BR2_GRAPH_OUT := $(or $(BR2_GRAPH_OUT),pdf)
 
-BUILD_DIR:=$(BASE_DIR)/build
-BINARIES_DIR:=$(BASE_DIR)/images
-TARGET_DIR:=$(BASE_DIR)/target
+BUILD_DIR := $(BASE_DIR)/build
+BINARIES_DIR := $(BASE_DIR)/images
+TARGET_DIR := $(BASE_DIR)/target
 # initial definition so that 'make clean' works for most users, even without
 # .config. HOST_DIR will be overwritten later when .config is included.
-HOST_DIR:=$(BASE_DIR)/host
-
-LEGAL_INFO_DIR=$(BASE_DIR)/legal-info
-REDIST_SOURCES_DIR_TARGET=$(LEGAL_INFO_DIR)/sources
-REDIST_SOURCES_DIR_HOST=$(LEGAL_INFO_DIR)/host-sources
-LICENSE_FILES_DIR_TARGET=$(LEGAL_INFO_DIR)/licenses
-LICENSE_FILES_DIR_HOST=$(LEGAL_INFO_DIR)/host-licenses
-LEGAL_MANIFEST_CSV_TARGET=$(LEGAL_INFO_DIR)/manifest.csv
-LEGAL_MANIFEST_CSV_HOST=$(LEGAL_INFO_DIR)/host-manifest.csv
-LEGAL_LICENSES_TXT_TARGET=$(LEGAL_INFO_DIR)/licenses.txt
-LEGAL_LICENSES_TXT_HOST=$(LEGAL_INFO_DIR)/host-licenses.txt
-LEGAL_WARNINGS=$(LEGAL_INFO_DIR)/.warnings
-LEGAL_REPORT=$(LEGAL_INFO_DIR)/README
-
-BR2_CONFIG=$(CONFIG_DIR)/.config
+HOST_DIR := $(BASE_DIR)/host
+
+LEGAL_INFO_DIR = $(BASE_DIR)/legal-info
+REDIST_SOURCES_DIR_TARGET = $(LEGAL_INFO_DIR)/sources
+REDIST_SOURCES_DIR_HOST = $(LEGAL_INFO_DIR)/host-sources
+LICENSE_FILES_DIR_TARGET = $(LEGAL_INFO_DIR)/licenses
+LICENSE_FILES_DIR_HOST = $(LEGAL_INFO_DIR)/host-licenses
+LEGAL_MANIFEST_CSV_TARGET = $(LEGAL_INFO_DIR)/manifest.csv
+LEGAL_MANIFEST_CSV_HOST = $(LEGAL_INFO_DIR)/host-manifest.csv
+LEGAL_LICENSES_TXT_TARGET = $(LEGAL_INFO_DIR)/licenses.txt
+LEGAL_LICENSES_TXT_HOST = $(LEGAL_INFO_DIR)/host-licenses.txt
+LEGAL_WARNINGS = $(LEGAL_INFO_DIR)/.warnings
+LEGAL_REPORT = $(LEGAL_INFO_DIR)/README
+
+BR2_CONFIG = $(CONFIG_DIR)/.config
 
 # Pull in the user's configuration file
 ifeq ($(filter $(noconfig_targets),$(MAKECMDGOALS)),)
@@ -180,22 +180,22 @@ endif
 # Use 'make V=1' to see the full commands
 ifdef V
   ifeq ("$(origin V)", "command line")
-    KBUILD_VERBOSE=$(V)
+    KBUILD_VERBOSE = $(V)
   endif
 endif
 ifndef KBUILD_VERBOSE
-  KBUILD_VERBOSE=0
+  KBUILD_VERBOSE = 0
 endif
 
 ifeq ($(KBUILD_VERBOSE),1)
-  quiet=
-  Q=
+  quiet =
+  Q =
 ifndef VERBOSE
-  VERBOSE=1
+  VERBOSE = 1
 endif
 else
-  quiet=quiet_
-  Q=@
+  quiet = quiet_
+  Q = @
 endif
 
 # we want bash as shell
@@ -204,56 +204,56 @@ SHELL:=$(shell if [ -x "$$BASH" ]; then echo $$BASH; \
 	else echo sh; fi; fi)
 
 # kconfig uses CONFIG_SHELL
-CONFIG_SHELL:=$(SHELL)
+CONFIG_SHELL := $(SHELL)
 
 export SHELL CONFIG_SHELL quiet Q KBUILD_VERBOSE VERBOSE
 
 ifndef HOSTAR
-HOSTAR:=ar
+HOSTAR := ar
 endif
 ifndef HOSTAS
 HOSTAS:=as
 endif
 ifndef HOSTCC
-HOSTCC:=gcc
-HOSTCC:=$(shell which $(HOSTCC) || type -p $(HOSTCC) || echo gcc)
+HOSTCC := gcc
+HOSTCC := $(shell which $(HOSTCC) || type -p $(HOSTCC) || echo gcc)
 endif
 HOSTCC_NOCCACHE:=$(HOSTCC)
 ifndef HOSTCXX
-HOSTCXX:=g++
-HOSTCXX:=$(shell which $(HOSTCXX) || type -p $(HOSTCXX) || echo g++)
+HOSTCXX := g++
+HOSTCXX := $(shell which $(HOSTCXX) || type -p $(HOSTCXX) || echo g++)
 endif
-HOSTCXX_NOCCACHE:=$(HOSTCXX)
+HOSTCXX_NOCCACHE := $(HOSTCXX)
 ifndef HOSTFC
-HOSTFC:=gfortran
+HOSTFC := gfortran
 endif
 ifndef HOSTCPP
 HOSTCPP:=cpp
 endif
 ifndef HOSTLD
-HOSTLD:=ld
+HOSTLD := ld
 endif
 ifndef HOSTLN
-HOSTLN:=ln
+HOSTLN := ln
 endif
 ifndef HOSTNM
-HOSTNM:=nm
+HOSTNM := nm
 endif
 ifndef HOSTOBJCOPY
-HOSTOBJCOPY:=objcopy
+HOSTOBJCOPY := objcopy
 endif
 ifndef HOSTRANLIB
-HOSTRANLIB:=ranlib
-endif
-HOSTAR:=$(shell which $(HOSTAR) || type -p $(HOSTAR) || echo ar)
-HOSTAS:=$(shell which $(HOSTAS) || type -p $(HOSTAS) || echo as)
-HOSTFC:=$(shell which $(HOSTLD) || type -p $(HOSTLD) || echo || which g77 || type -p g77 || echo gfortran)
-HOSTCPP:=$(shell which $(HOSTCPP) || type -p $(HOSTCPP) || echo cpp)
-HOSTLD:=$(shell which $(HOSTLD) || type -p $(HOSTLD) || echo ld)
-HOSTLN:=$(shell which $(HOSTLN) || type -p $(HOSTLN) || echo ln)
-HOSTNM:=$(shell which $(HOSTNM) || type -p $(HOSTNM) || echo nm)
-HOSTOBJCOPY:=$(shell which $(HOSTOBJCOPY) || type -p $(HOSTOBJCOPY) || echo objcopy)
-HOSTRANLIB:=$(shell which $(HOSTRANLIB) || type -p $(HOSTRANLIB) || echo ranlib)
+HOSTRANLIB := ranlib
+endif
+HOSTAR := $(shell which $(HOSTAR) || type -p $(HOSTAR) || echo ar)
+HOSTAS := $(shell which $(HOSTAS) || type -p $(HOSTAS) || echo as)
+HOSTFC := $(shell which $(HOSTLD) || type -p $(HOSTLD) || echo || which g77 || type -p g77 || echo gfortran)
+HOSTCPP := $(shell which $(HOSTCPP) || type -p $(HOSTCPP) || echo cpp)
+HOSTLD := $(shell which $(HOSTLD) || type -p $(HOSTLD) || echo ld)
+HOSTLN := $(shell which $(HOSTLN) || type -p $(HOSTLN) || echo ln)
+HOSTNM := $(shell which $(HOSTNM) || type -p $(HOSTNM) || echo nm)
+HOSTOBJCOPY := $(shell which $(HOSTOBJCOPY) || type -p $(HOSTOBJCOPY) || echo objcopy)
+HOSTRANLIB := $(shell which $(HOSTRANLIB) || type -p $(HOSTRANLIB) || echo ranlib)
 
 export HOSTAR HOSTAS HOSTCC HOSTCXX HOSTFC HOSTLD
 export HOSTCC_NOCCACHE HOSTCXX_NOCCACHE
@@ -290,7 +290,7 @@ unexport CONFIG_SITE
 unexport QMAKESPEC
 unexport TERMINFO
 
-GNU_HOST_NAME:=$(shell support/gnuconfig/config.guess)
+GNU_HOST_NAME := $(shell support/gnuconfig/config.guess)
 
 ################################################################################
 #
@@ -302,12 +302,12 @@ GNU_HOST_NAME:=$(shell support/gnuconfig/config.guess)
 TARGETS:= toolchain
 
 # silent mode requested?
-QUIET:=$(if $(findstring s,$(MAKEFLAGS)),-q)
+QUIET := $(if $(findstring s,$(MAKEFLAGS)),-q)
 
 # Strip off the annoying quoting
-ARCH:=$(call qstrip,$(BR2_ARCH))
+ARCH := $(call qstrip,$(BR2_ARCH))
 
-KERNEL_ARCH:=$(shell echo "$(ARCH)" | sed -e "s/-.*//" \
+KERNEL_ARCH := $(shell echo "$(ARCH)" | sed -e "s/-.*//" \
 	-e s/i.86/i386/ -e s/sun4u/sparc64/ \
 	-e s/arcle/arc/ \
 	-e s/arceb/arc/ \
@@ -320,28 +320,28 @@ KERNEL_ARCH:=$(shell echo "$(ARCH)" | sed -e "s/-.*//" \
 	-e s/sh.*/sh/ \
 	-e s/microblazeel/microblaze/)
 
-ZCAT:=$(call qstrip,$(BR2_ZCAT))
-BZCAT:=$(call qstrip,$(BR2_BZCAT))
-XZCAT:=$(call qstrip,$(BR2_XZCAT))
-TAR_OPTIONS=$(call qstrip,$(BR2_TAR_OPTIONS)) -xf
+ZCAT := $(call qstrip,$(BR2_ZCAT))
+BZCAT := $(call qstrip,$(BR2_BZCAT))
+XZCAT := $(call qstrip,$(BR2_XZCAT))
+TAR_OPTIONS = $(call qstrip,$(BR2_TAR_OPTIONS)) -xf
 
 # packages compiled for the host go here
-HOST_DIR:=$(call qstrip,$(BR2_HOST_DIR))
+HOST_DIR := $(call qstrip,$(BR2_HOST_DIR))
 
 # locales to generate
-GENERATE_LOCALE=$(call qstrip,$(BR2_GENERATE_LOCALE))
+GENERATE_LOCALE = $(call qstrip,$(BR2_GENERATE_LOCALE))
 
-TARGET_SKELETON=$(TOPDIR)/system/skeleton
+TARGET_SKELETON = $(TOPDIR)/system/skeleton
 
 # Location of a file giving a big fat warning that output/target
 # should not be used as the root filesystem.
-TARGET_DIR_WARNING_FILE=$(TARGET_DIR)/THIS_IS_NOT_YOUR_ROOT_FILESYSTEM
+TARGET_DIR_WARNING_FILE = $(TARGET_DIR)/THIS_IS_NOT_YOUR_ROOT_FILESYSTEM
 
 ifeq ($(BR2_CCACHE),y)
-CCACHE:=$(HOST_DIR)/usr/bin/ccache
+CCACHE := $(HOST_DIR)/usr/bin/ccache
 BR_CACHE_DIR = $(call qstrip,$(BR2_CCACHE_DIR))
 export BR_CACHE_DIR
-HOSTCC  := $(CCACHE) $(HOSTCC)
+HOSTCC := $(CCACHE) $(HOSTCC)
 HOSTCXX := $(CCACHE) $(HOSTCXX)
 endif
 
@@ -394,23 +394,23 @@ include system/system.mk
 include $(BR2_EXTERNAL)/external.mk
 
 ifeq ($(BR2_ENABLE_LOCALE_PURGE),y)
-TARGETS+=target-purgelocales
+TARGETS += target-purgelocales
 endif
 
 ifeq ($(BR2_TOOLCHAIN_USES_GLIBC),y)
 ifneq ($(GENERATE_LOCALE),)
-TARGETS+=target-generatelocales
+TARGETS += target-generatelocales
 endif
 endif
 
 ifeq ($(BR2_ECLIPSE_REGISTER),y)
-TARGETS+=toolchain-eclipse-register
+TARGETS += toolchain-eclipse-register
 endif
 
 include fs/common.mk
 
-TARGETS_SOURCE:=$(patsubst %,%-source,$(TARGETS))
-TARGETS_DIRCLEAN:=$(patsubst %,%-dirclean,$(TARGETS))
+TARGETS_SOURCE := $(patsubst %,%-source,$(TARGETS))
+TARGETS_DIRCLEAN := $(patsubst %,%-dirclean,$(TARGETS))
 
 # host-* dependencies have to be handled specially, as those aren't
 # visible in Kconfig and hence not added to a variable like TARGETS.
@@ -431,7 +431,7 @@ HOST_DEPS = $(sort $(foreach dep,\
 		$($(dep))))
 HOST_SOURCE += $(addsuffix -source,$(sort $(TARGETS_HOST_DEPS) $(HOST_DEPS)))
 
-TARGETS_LEGAL_INFO:=$(patsubst %,%-legal-info,\
+TARGETS_LEGAL_INFO := $(patsubst %,%-legal-info,\
 		$(TARGETS) $(TARGETS_HOST_DEPS) $(HOST_DEPS))))
 
 dirs: $(BUILD_DIR) $(STAGING_DIR) $(TARGET_DIR) \
@@ -484,7 +484,7 @@ $(STAGING_DIR):
 	@ln -snf $(STAGING_DIR) $(BASE_DIR)/staging
 
 ifeq ($(BR2_ROOTFS_SKELETON_CUSTOM),y)
-TARGET_SKELETON=$(BR2_ROOTFS_SKELETON_CUSTOM_PATH)
+TARGET_SKELETON = $(BR2_ROOTFS_SKELETON_CUSTOM_PATH)
 endif
 
 RSYNC_VCS_EXCLUSIONS = \
@@ -578,8 +578,8 @@ endif
 		$(USER_HOOKS_EXTRA_ENV) $(s) $(TARGET_DIR) $(call qstrip,$(BR2_ROOTFS_POST_SCRIPT_ARGS))$(sep))
 
 ifeq ($(BR2_ENABLE_LOCALE_PURGE),y)
-LOCALE_WHITELIST=$(BUILD_DIR)/locales.nopurge
-LOCALE_NOPURGE=$(call qstrip,$(BR2_ENABLE_LOCALE_WHITELIST))
+LOCALE_WHITELIST = $(BUILD_DIR)/locales.nopurge
+LOCALE_NOPURGE = $(call qstrip,$(BR2_ENABLE_LOCALE_WHITELIST))
 
 target-purgelocales:
 	rm -f $(LOCALE_WHITELIST)
@@ -683,7 +683,7 @@ endif # ifeq ($(BR2_HAVE_DOT_CONFIG),y)
 # configuration
 # ---------------------------------------------------------------------------
 
-HOSTCFLAGS=$(CFLAGS_FOR_BUILD)
+HOSTCFLAGS = $(CFLAGS_FOR_BUILD)
 export HOSTCFLAGS
 
 $(BUILD_DIR)/buildroot-config/%onf:
@@ -912,7 +912,7 @@ endif
 	@echo 'See docs/README, or generate the Buildroot manual for further details'
 	@echo
 
-release: OUT=buildroot-$(BR2_VERSION)
+release: OUT = buildroot-$(BR2_VERSION)
 
 # Create release tarballs. We need to fiddle a bit to add the generated
 # documentation to the git output
-- 
1.8.3.2

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

* [Buildroot] [PATCH v4 2/4] toolchain: add a hidden config option to enable the toolchain package
  2014-04-07  9:56 [Buildroot] [PATCH v4 0/4] Miscellauneus patches Fabio Porcedda
  2014-04-07  9:56 ` [Buildroot] [PATCH v4 1/4] Makefile: fix coding style Fabio Porcedda
@ 2014-04-07  9:56 ` Fabio Porcedda
  2014-04-16 17:43   ` Thomas Petazzoni
  2014-04-07  9:56 ` [Buildroot] [PATCH v4 3/4] Makefile: let show-targets prints also the dependencies Fabio Porcedda
  2014-04-07  9:56 ` [Buildroot] [PATCH v4 4/4] luajit: needs for 32bit archictectures a 32bit host gcc Fabio Porcedda
  3 siblings, 1 reply; 18+ messages in thread
From: Fabio Porcedda @ 2014-04-07  9:56 UTC (permalink / raw)
  To: buildroot

The usual way to enable a package using the package infrastructure is to
use a config option so instead to add the toolchain package to the
TARGETS variable in the Makefile add a config option like all the other
toolchain packages.

Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Yann E. MORIN <yann.morin.1998@free.fr>
---
 Makefile            | 2 +-
 toolchain/Config.in | 4 ++++
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/Makefile b/Makefile
index 82f2763..e0831b6 100644
--- a/Makefile
+++ b/Makefile
@@ -299,7 +299,7 @@ GNU_HOST_NAME := $(shell support/gnuconfig/config.guess)
 #
 ################################################################################
 
-TARGETS:= toolchain
+TARGETS :=
 
 # silent mode requested?
 QUIET := $(if $(findstring s,$(MAKEFLAGS)),-q)
diff --git a/toolchain/Config.in b/toolchain/Config.in
index 44f3ac6..94a0c7d 100644
--- a/toolchain/Config.in
+++ b/toolchain/Config.in
@@ -1,5 +1,9 @@
 menu "Toolchain"
 
+config BR2_TOOLCHAIN
+       bool
+       default y
+
 # Should be selected for glibc or eglibc
 config BR2_TOOLCHAIN_USES_GLIBC
 	bool
-- 
1.8.3.2

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

* [Buildroot] [PATCH v4 3/4] Makefile: let show-targets prints also the dependencies
  2014-04-07  9:56 [Buildroot] [PATCH v4 0/4] Miscellauneus patches Fabio Porcedda
  2014-04-07  9:56 ` [Buildroot] [PATCH v4 1/4] Makefile: fix coding style Fabio Porcedda
  2014-04-07  9:56 ` [Buildroot] [PATCH v4 2/4] toolchain: add a hidden config option to enable the toolchain package Fabio Porcedda
@ 2014-04-07  9:56 ` Fabio Porcedda
  2014-04-16 17:49   ` Thomas Petazzoni
  2014-04-07  9:56 ` [Buildroot] [PATCH v4 4/4] luajit: needs for 32bit archictectures a 32bit host gcc Fabio Porcedda
  3 siblings, 1 reply; 18+ messages in thread
From: Fabio Porcedda @ 2014-04-07  9:56 UTC (permalink / raw)
  To: buildroot

Because the show-targets target print the targets that will be build,
print also the dependencies.
Also refactor source and legal-info targets in order to cleanup the code
by creating a new variable TARGETS_ALL that contains all the targets the
will be built.

Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com>
---
 Makefile | 21 ++++++++++-----------
 1 file changed, 10 insertions(+), 11 deletions(-)

diff --git a/Makefile b/Makefile
index e0831b6..f063bef 100644
--- a/Makefile
+++ b/Makefile
@@ -409,9 +409,6 @@ endif
 
 include fs/common.mk
 
-TARGETS_SOURCE := $(patsubst %,%-source,$(TARGETS))
-TARGETS_DIRCLEAN := $(patsubst %,%-dirclean,$(TARGETS))
-
 # host-* dependencies have to be handled specially, as those aren't
 # visible in Kconfig and hence not added to a variable like TARGETS.
 # instead, find all the host-* targets listed in each <PKG>_DEPENDENCIES
@@ -429,10 +426,12 @@ TARGETS_HOST_DEPS = $(sort $(filter host-%,$(foreach dep,\
 HOST_DEPS = $(sort $(foreach dep,\
 		$(addsuffix _DEPENDENCIES,$(call UPPERCASE,$(TARGETS_HOST_DEPS))),\
 		$($(dep))))
-HOST_SOURCE += $(addsuffix -source,$(sort $(TARGETS_HOST_DEPS) $(HOST_DEPS)))
 
-TARGETS_LEGAL_INFO := $(patsubst %,%-legal-info,\
-		$(TARGETS) $(TARGETS_HOST_DEPS) $(HOST_DEPS))))
+TARGETS_ALL := $(sort $(TARGETS) $(TARGETS_HOST_DEPS)) \
+               $(HOST_DEPS) $(TARGETS_ROOTFS)
+TARGETS_ALL_SOURCES := $(addsuffix -source,$(TARGETS_ALL))
+TARGETS_ALL_LEGAL_INFO := $(addsuffix -legal-info,$(TARGETS_ALL))
+TARGETS_ALL_DIRCLEAN := $(addsuffix -dirclean,$(TARGETS_ALL))
 
 dirs: $(BUILD_DIR) $(STAGING_DIR) $(TARGET_DIR) \
 	$(HOST_DIR) $(BINARIES_DIR)
@@ -451,8 +450,8 @@ world: target-post-image
 .PHONY: all world toolchain dirs clean distclean source outputmakefile \
 	legal-info legal-info-prepare legal-info-clean printvars \
 	target-finalize target-post-image \
-	$(TARGETS) $(TARGETS_ROOTFS) \
-	$(TARGETS_DIRCLEAN) $(TARGETS_SOURCE) $(TARGETS_LEGAL_INFO) \
+	$(TARGETS_ALL) $(TARGETS_ALL_SOURCE) \
+	$(TARGETS_ALL_LEGAL_INFO) $(TARGETS_ALL_DIRCLEAN)  \
 	$(BUILD_DIR) $(STAGING_DIR) $(TARGET_DIR) \
 	$(HOST_DIR) $(BINARIES_DIR)
 
@@ -626,7 +625,7 @@ target-post-image: $(TARGETS_ROOTFS) target-finalize
 toolchain-eclipse-register:
 	./support/scripts/eclipse-register-toolchain `readlink -f $(O)` $(notdir $(TARGET_CROSS)) $(BR2_ARCH)
 
-source: $(TARGETS_SOURCE) $(HOST_SOURCE)
+source: $(TARGETS_ALL_SOURCE)
 
 external-deps:
 	@$(MAKE1) -Bs DL_MODE=SHOW_EXTERNAL_DEPS $(EXTRAMAKEARGS) source | sort -u
@@ -644,7 +643,7 @@ legal-info-prepare: $(LEGAL_INFO_DIR)
 	@$(call legal-warning,the toolchain has not been saved)
 	@cp $(BR2_CONFIG) $(LEGAL_INFO_DIR)/buildroot.config
 
-legal-info: dirs legal-info-clean legal-info-prepare $(TARGETS_LEGAL_INFO) \
+legal-info: dirs legal-info-clean legal-info-prepare $(TARGETS_ALL_LEGAL_INFO) \
 		$(REDIST_SOURCES_DIR_TARGET) $(REDIST_SOURCES_DIR_HOST)
 	@cat support/legal-info/README.header >>$(LEGAL_REPORT)
 	@if [ -r $(LEGAL_WARNINGS) ]; then \
@@ -655,7 +654,7 @@ legal-info: dirs legal-info-clean legal-info-prepare $(TARGETS_LEGAL_INFO) \
 	@rm -f $(LEGAL_WARNINGS)
 
 show-targets:
-	@echo $(TARGETS) $(TARGETS_ROOTFS)
+	@echo $(TARGETS_ALL)
 
 graph-build: $(O)/build/build-time.log
 	@install -d $(O)/graphs
-- 
1.8.3.2

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

* [Buildroot] [PATCH v4 4/4] luajit: needs for 32bit archictectures a 32bit host gcc
  2014-04-07  9:56 [Buildroot] [PATCH v4 0/4] Miscellauneus patches Fabio Porcedda
                   ` (2 preceding siblings ...)
  2014-04-07  9:56 ` [Buildroot] [PATCH v4 3/4] Makefile: let show-targets prints also the dependencies Fabio Porcedda
@ 2014-04-07  9:56 ` Fabio Porcedda
  2014-04-16 17:54   ` Thomas Petazzoni
  3 siblings, 1 reply; 18+ messages in thread
From: Fabio Porcedda @ 2014-04-07  9:56 UTC (permalink / raw)
  To: buildroot

For 32 bit archictectures the luajit package needs a host compiler
able to generate 32 bit code using the "-m32" option so check if that
option is supported.

Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com>
Cc: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Fran?ois Perrad <francois.perrad@gadz.org>
---
 package/luajit/Config.in | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/package/luajit/Config.in b/package/luajit/Config.in
index 58b1653..d4424bc 100644
--- a/package/luajit/Config.in
+++ b/package/luajit/Config.in
@@ -4,6 +4,10 @@ config BR2_PACKAGE_LUAJIT
 	# Luajit is only available for some target architectures, and
 	# has some complexity wrt 32/64. See luajit.mk for details.
 	depends on BR2_i386 || (BR2_x86_64 && BR2_HOSTARCH='x86_64') || BR2_powerpc || BR2_arm || BR2_armeb || BR2_mips || BR2_mipsel
+	# luajit.mk uses the "-m32" compiler option to build 32bit
+	# binaries, so check if that option is supported. See
+	# luajit.mk for details.
+	select BR2_HOSTARCH_NEEDS_IA32_COMPILER if !BR2_ARCH_IS_64
 	help
 	  LuaJIT implements the full set of language features defined
 	  by Lua 5.1. The virtual machine (VM) is API- and
-- 
1.8.3.2

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

* [Buildroot] [PATCH v4 1/4] Makefile: fix coding style
  2014-04-07  9:56 ` [Buildroot] [PATCH v4 1/4] Makefile: fix coding style Fabio Porcedda
@ 2014-04-16 17:42   ` Thomas Petazzoni
  2014-04-17  8:21     ` Fabio Porcedda
  2014-04-22 16:03     ` Arnout Vandecappelle
  0 siblings, 2 replies; 18+ messages in thread
From: Thomas Petazzoni @ 2014-04-16 17:42 UTC (permalink / raw)
  To: buildroot

Dear Fabio Porcedda,

On Mon,  7 Apr 2014 11:56:47 +0200, Fabio Porcedda wrote:
> As stated in the buildroot user manual add just a single space before
> and after a '=' sign.
> 
> Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com>
> ---
>  Makefile | 184 +++++++++++++++++++++++++++++++--------------------------------
>  1 file changed, 92 insertions(+), 92 deletions(-)

To be honest, while I definitely value the change to harmonize the
coding style, such a large patch touching almost every line of the main
Makefile is a recipe for conflicts with many other patches. So I would
personally prefer to not apply this patch, and do the coding style
fixes progressively, as we make other changes to the main Makefile.

Thanks,

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

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

* [Buildroot] [PATCH v4 2/4] toolchain: add a hidden config option to enable the toolchain package
  2014-04-07  9:56 ` [Buildroot] [PATCH v4 2/4] toolchain: add a hidden config option to enable the toolchain package Fabio Porcedda
@ 2014-04-16 17:43   ` Thomas Petazzoni
  2014-04-17  8:10     ` Fabio Porcedda
  0 siblings, 1 reply; 18+ messages in thread
From: Thomas Petazzoni @ 2014-04-16 17:43 UTC (permalink / raw)
  To: buildroot

Dear Fabio Porcedda,

On Mon,  7 Apr 2014 11:56:48 +0200, Fabio Porcedda wrote:
> The usual way to enable a package using the package infrastructure is to
> use a config option so instead to add the toolchain package to the
> TARGETS variable in the Makefile add a config option like all the other
> toolchain packages.
> 
> Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com>
> Cc: Arnout Vandecappelle <arnout@mind.be>
> Cc: Yann E. MORIN <yann.morin.1998@free.fr>
> ---
>  Makefile            | 2 +-
>  toolchain/Config.in | 4 ++++
>  2 files changed, 5 insertions(+), 1 deletion(-)

I've applied this patch, which conflicted because it was based on the
previous patch :)

> diff --git a/Makefile b/Makefile
> index 82f2763..e0831b6 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -299,7 +299,7 @@ GNU_HOST_NAME := $(shell support/gnuconfig/config.guess)
>  #
>  ################################################################################

I've removed this big comment here that was no longer making any sense.

> diff --git a/toolchain/Config.in b/toolchain/Config.in
> index 44f3ac6..94a0c7d 100644
> --- a/toolchain/Config.in
> +++ b/toolchain/Config.in
> @@ -1,5 +1,9 @@
>  menu "Toolchain"
>  
> +config BR2_TOOLCHAIN

And added a comment above this, to explain what it's useful for.

Thanks!

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

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

* [Buildroot] [PATCH v4 3/4] Makefile: let show-targets prints also the dependencies
  2014-04-07  9:56 ` [Buildroot] [PATCH v4 3/4] Makefile: let show-targets prints also the dependencies Fabio Porcedda
@ 2014-04-16 17:49   ` Thomas Petazzoni
  2014-04-17  9:17     ` Fabio Porcedda
  0 siblings, 1 reply; 18+ messages in thread
From: Thomas Petazzoni @ 2014-04-16 17:49 UTC (permalink / raw)
  To: buildroot

Dear Fabio Porcedda,

On Mon,  7 Apr 2014 11:56:49 +0200, Fabio Porcedda wrote:
> Because the show-targets target print the targets that will be build,

"will be built"

> print also the dependencies.
> Also refactor source and legal-info targets in order to cleanup the code
> by creating a new variable TARGETS_ALL that contains all the targets the

the targets the -> the targets that

> will be built.
> 
> Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com>
> ---
>  Makefile | 21 ++++++++++-----------
>  1 file changed, 10 insertions(+), 11 deletions(-)
> 
> diff --git a/Makefile b/Makefile
> index e0831b6..f063bef 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -409,9 +409,6 @@ endif
>  
>  include fs/common.mk
>  
> -TARGETS_SOURCE := $(patsubst %,%-source,$(TARGETS))
> -TARGETS_DIRCLEAN := $(patsubst %,%-dirclean,$(TARGETS))
> -
>  # host-* dependencies have to be handled specially, as those aren't
>  # visible in Kconfig and hence not added to a variable like TARGETS.
>  # instead, find all the host-* targets listed in each <PKG>_DEPENDENCIES
> @@ -429,10 +426,12 @@ TARGETS_HOST_DEPS = $(sort $(filter host-%,$(foreach dep,\
>  HOST_DEPS = $(sort $(foreach dep,\
>  		$(addsuffix _DEPENDENCIES,$(call UPPERCASE,$(TARGETS_HOST_DEPS))),\
>  		$($(dep))))
> -HOST_SOURCE += $(addsuffix -source,$(sort $(TARGETS_HOST_DEPS) $(HOST_DEPS)))
>  
> -TARGETS_LEGAL_INFO := $(patsubst %,%-legal-info,\
> -		$(TARGETS) $(TARGETS_HOST_DEPS) $(HOST_DEPS))))
> +TARGETS_ALL := $(sort $(TARGETS) $(TARGETS_HOST_DEPS)) \
> +               $(HOST_DEPS) $(TARGETS_ROOTFS)
> +TARGETS_ALL_SOURCES := $(addsuffix -source,$(TARGETS_ALL))

Is this actually going to work? The targets in TARGETS_ROOTFS, do they
all support <name>-source ?

> +TARGETS_ALL_LEGAL_INFO := $(addsuffix -legal-info,$(TARGETS_ALL))

And do they all support <name>-legal-info ?

> +TARGETS_ALL_DIRCLEAN := $(addsuffix -dirclean,$(TARGETS_ALL))
>  
>  dirs: $(BUILD_DIR) $(STAGING_DIR) $(TARGET_DIR) \
>  	$(HOST_DIR) $(BINARIES_DIR)
> @@ -451,8 +450,8 @@ world: target-post-image
>  .PHONY: all world toolchain dirs clean distclean source outputmakefile \
>  	legal-info legal-info-prepare legal-info-clean printvars \
>  	target-finalize target-post-image \
> -	$(TARGETS) $(TARGETS_ROOTFS) \
> -	$(TARGETS_DIRCLEAN) $(TARGETS_SOURCE) $(TARGETS_LEGAL_INFO) \
> +	$(TARGETS_ALL) $(TARGETS_ALL_SOURCE) \
> +	$(TARGETS_ALL_LEGAL_INFO) $(TARGETS_ALL_DIRCLEAN)  \

I actually find this handling of phony targets a bit weird. If package
"foo" is enabled, then "foo", "foo-dirclean", "foo-legal-info" and
"foo-source" are phony targets, but when the package is disabled they
are not phony targets. Also, what about "foo-patch", "foo-extract" and
so on? So my question is really whether it shouldn't be the role of the
package infrastructure itself to declare the targets of each package as
phony.

>  	$(BUILD_DIR) $(STAGING_DIR) $(TARGET_DIR) \
>  	$(HOST_DIR) $(BINARIES_DIR)
>  
> @@ -626,7 +625,7 @@ target-post-image: $(TARGETS_ROOTFS) target-finalize
>  toolchain-eclipse-register:
>  	./support/scripts/eclipse-register-toolchain `readlink -f $(O)` $(notdir $(TARGET_CROSS)) $(BR2_ARCH)
>  
> -source: $(TARGETS_SOURCE) $(HOST_SOURCE)
> +source: $(TARGETS_ALL_SOURCE)
>  
>  external-deps:
>  	@$(MAKE1) -Bs DL_MODE=SHOW_EXTERNAL_DEPS $(EXTRAMAKEARGS) source | sort -u
> @@ -644,7 +643,7 @@ legal-info-prepare: $(LEGAL_INFO_DIR)
>  	@$(call legal-warning,the toolchain has not been saved)
>  	@cp $(BR2_CONFIG) $(LEGAL_INFO_DIR)/buildroot.config
>  
> -legal-info: dirs legal-info-clean legal-info-prepare $(TARGETS_LEGAL_INFO) \
> +legal-info: dirs legal-info-clean legal-info-prepare $(TARGETS_ALL_LEGAL_INFO) \
>  		$(REDIST_SOURCES_DIR_TARGET) $(REDIST_SOURCES_DIR_HOST)
>  	@cat support/legal-info/README.header >>$(LEGAL_REPORT)
>  	@if [ -r $(LEGAL_WARNINGS) ]; then \
> @@ -655,7 +654,7 @@ legal-info: dirs legal-info-clean legal-info-prepare $(TARGETS_LEGAL_INFO) \
>  	@rm -f $(LEGAL_WARNINGS)
>  
>  show-targets:
> -	@echo $(TARGETS) $(TARGETS_ROOTFS)
> +	@echo $(TARGETS_ALL)
>  
>  graph-build: $(O)/build/build-time.log
>  	@install -d $(O)/graphs

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

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

* [Buildroot] [PATCH v4 4/4] luajit: needs for 32bit archictectures a 32bit host gcc
  2014-04-07  9:56 ` [Buildroot] [PATCH v4 4/4] luajit: needs for 32bit archictectures a 32bit host gcc Fabio Porcedda
@ 2014-04-16 17:54   ` Thomas Petazzoni
  0 siblings, 0 replies; 18+ messages in thread
From: Thomas Petazzoni @ 2014-04-16 17:54 UTC (permalink / raw)
  To: buildroot

Dear Fabio Porcedda,

On Mon,  7 Apr 2014 11:56:50 +0200, Fabio Porcedda wrote:
> For 32 bit archictectures the luajit package needs a host compiler
> able to generate 32 bit code using the "-m32" option so check if that
> option is supported.
> 
> Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com>
> Cc: Yann E. MORIN <yann.morin.1998@free.fr>
> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
> Cc: Fran?ois Perrad <francois.perrad@gadz.org>
> ---
>  package/luajit/Config.in | 4 ++++
>  1 file changed, 4 insertions(+)

Applied, thanks.

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

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

* [Buildroot] [PATCH v4 2/4] toolchain: add a hidden config option to enable the toolchain package
  2014-04-16 17:43   ` Thomas Petazzoni
@ 2014-04-17  8:10     ` Fabio Porcedda
  0 siblings, 0 replies; 18+ messages in thread
From: Fabio Porcedda @ 2014-04-17  8:10 UTC (permalink / raw)
  To: buildroot

On Wed, Apr 16, 2014 at 7:43 PM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Dear Fabio Porcedda,
>
> On Mon,  7 Apr 2014 11:56:48 +0200, Fabio Porcedda wrote:
>> The usual way to enable a package using the package infrastructure is to
>> use a config option so instead to add the toolchain package to the
>> TARGETS variable in the Makefile add a config option like all the other
>> toolchain packages.
>>
>> Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com>
>> Cc: Arnout Vandecappelle <arnout@mind.be>
>> Cc: Yann E. MORIN <yann.morin.1998@free.fr>
>> ---
>>  Makefile            | 2 +-
>>  toolchain/Config.in | 4 ++++
>>  2 files changed, 5 insertions(+), 1 deletion(-)
>
> I've applied this patch, which conflicted because it was based on the
> previous patch :)
>
>> diff --git a/Makefile b/Makefile
>> index 82f2763..e0831b6 100644
>> --- a/Makefile
>> +++ b/Makefile
>> @@ -299,7 +299,7 @@ GNU_HOST_NAME := $(shell support/gnuconfig/config.guess)
>>  #
>>  ################################################################################
>
> I've removed this big comment here that was no longer making any sense.
>
>> diff --git a/toolchain/Config.in b/toolchain/Config.in
>> index 44f3ac6..94a0c7d 100644
>> --- a/toolchain/Config.in
>> +++ b/toolchain/Config.in
>> @@ -1,5 +1,9 @@
>>  menu "Toolchain"
>>
>> +config BR2_TOOLCHAIN
>
> And added a comment above this, to explain what it's useful for.

Thanks
-- 
Fabio Porcedda

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

* [Buildroot] [PATCH v4 1/4] Makefile: fix coding style
  2014-04-16 17:42   ` Thomas Petazzoni
@ 2014-04-17  8:21     ` Fabio Porcedda
  2014-04-22 16:03     ` Arnout Vandecappelle
  1 sibling, 0 replies; 18+ messages in thread
From: Fabio Porcedda @ 2014-04-17  8:21 UTC (permalink / raw)
  To: buildroot

On Wed, Apr 16, 2014 at 7:42 PM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Dear Fabio Porcedda,
>
> On Mon,  7 Apr 2014 11:56:47 +0200, Fabio Porcedda wrote:
>> As stated in the buildroot user manual add just a single space before
>> and after a '=' sign.
>>
>> Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com>

I don't understand how it was happened but i lost the Acked-by tag of Arnout.

Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>

>> ---
>>  Makefile | 184 +++++++++++++++++++++++++++++++--------------------------------
>>  1 file changed, 92 insertions(+), 92 deletions(-)
>
> To be honest, while I definitely value the change to harmonize the
> coding style, such a large patch touching almost every line of the main
> Makefile is a recipe for conflicts with many other patches. So I would
> personally prefer to not apply this patch, and do the coding style
> fixes progressively, as we make other changes to the main Makefile.

I understand you concerns, nevertheless i personally think it's a
useful patch to apply, but it's just my personal opinion.

Regards
-- 
Fabio Porcedda

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

* [Buildroot] [PATCH v4 3/4] Makefile: let show-targets prints also the dependencies
  2014-04-16 17:49   ` Thomas Petazzoni
@ 2014-04-17  9:17     ` Fabio Porcedda
  2014-04-22 10:15       ` Fabio Porcedda
  0 siblings, 1 reply; 18+ messages in thread
From: Fabio Porcedda @ 2014-04-17  9:17 UTC (permalink / raw)
  To: buildroot

On Wed, Apr 16, 2014 at 7:49 PM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Dear Fabio Porcedda,
>
> On Mon,  7 Apr 2014 11:56:49 +0200, Fabio Porcedda wrote:
>> Because the show-targets target print the targets that will be build,
>
> "will be built"

Fixed, thanks.

>> print also the dependencies.
>> Also refactor source and legal-info targets in order to cleanup the code
>> by creating a new variable TARGETS_ALL that contains all the targets the
>
> the targets the -> the targets that

Fixed, thanks.

>> will be built.
>>
>> Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com>
>> ---
>>  Makefile | 21 ++++++++++-----------
>>  1 file changed, 10 insertions(+), 11 deletions(-)
>>
>> diff --git a/Makefile b/Makefile
>> index e0831b6..f063bef 100644
>> --- a/Makefile
>> +++ b/Makefile
>> @@ -409,9 +409,6 @@ endif
>>
>>  include fs/common.mk
>>
>> -TARGETS_SOURCE := $(patsubst %,%-source,$(TARGETS))
>> -TARGETS_DIRCLEAN := $(patsubst %,%-dirclean,$(TARGETS))
>> -
>>  # host-* dependencies have to be handled specially, as those aren't
>>  # visible in Kconfig and hence not added to a variable like TARGETS.
>>  # instead, find all the host-* targets listed in each <PKG>_DEPENDENCIES
>> @@ -429,10 +426,12 @@ TARGETS_HOST_DEPS = $(sort $(filter host-%,$(foreach dep,\
>>  HOST_DEPS = $(sort $(foreach dep,\
>>               $(addsuffix _DEPENDENCIES,$(call UPPERCASE,$(TARGETS_HOST_DEPS))),\
>>               $($(dep))))
>> -HOST_SOURCE += $(addsuffix -source,$(sort $(TARGETS_HOST_DEPS) $(HOST_DEPS)))
>>
>> -TARGETS_LEGAL_INFO := $(patsubst %,%-legal-info,\
>> -             $(TARGETS) $(TARGETS_HOST_DEPS) $(HOST_DEPS))))
>> +TARGETS_ALL := $(sort $(TARGETS) $(TARGETS_HOST_DEPS)) \
>> +               $(HOST_DEPS) $(TARGETS_ROOTFS)
>> +TARGETS_ALL_SOURCES := $(addsuffix -source,$(TARGETS_ALL))
>
> Is this actually going to work? The targets in TARGETS_ROOTFS, do they
> all support <name>-source ?

Not at all, but because they are declared as phony targets it works.
Bear in mind that such handling is already in place and working even
without my patch.
For a better explanation please read further.

>> +TARGETS_ALL_LEGAL_INFO := $(addsuffix -legal-info,$(TARGETS_ALL))
>
> And do they all support <name>-legal-info ?

Ditto.

>> +TARGETS_ALL_DIRCLEAN := $(addsuffix -dirclean,$(TARGETS_ALL))
>>
>>  dirs: $(BUILD_DIR) $(STAGING_DIR) $(TARGET_DIR) \
>>       $(HOST_DIR) $(BINARIES_DIR)
>> @@ -451,8 +450,8 @@ world: target-post-image
>>  .PHONY: all world toolchain dirs clean distclean source outputmakefile \
>>       legal-info legal-info-prepare legal-info-clean printvars \
>>       target-finalize target-post-image \
>> -     $(TARGETS) $(TARGETS_ROOTFS) \
>> -     $(TARGETS_DIRCLEAN) $(TARGETS_SOURCE) $(TARGETS_LEGAL_INFO) \
>> +     $(TARGETS_ALL) $(TARGETS_ALL_SOURCE) \
>> +     $(TARGETS_ALL_LEGAL_INFO) $(TARGETS_ALL_DIRCLEAN)  \
>
> I actually find this handling of phony targets a bit weird. If package
> "foo" is enabled, then "foo", "foo-dirclean", "foo-legal-info" and
> "foo-source" are phony targets, but when the package is disabled they
> are not phony targets. Also, what about "foo-patch", "foo-extract" and
> so on? So my question is really whether it shouldn't be the role of the
> package infrastructure itself to declare the targets of each package as
> phony.

Sure, i think it's better for the package infrastructure to declare
all those targets as phony targets, i will cook a patch for doing
that, thanks to such a patch we can get rid off the TARGETS_DIRCLEAN
in the main Makefile.
But even if the packages infrastructure add those phony targets we
still need to add phony targets in the main Makefile because not all
targets in the TARGETS variable are using the package infrastructure,
e.g.:
 - targets declared in "Makefile" such "target-purgelocales"
"target-generatelocales" ...
 - targets declared in fs/*
- targets declared in system/system.mk
only a part of these targets implements foo-legal-info, foo-source,
FOO_DEPENDENCIES so to be able to handle all the targets uniformly by
the legal-info and source target they are all declared as phony
target.
I don't see an easy solution to avoid that.

>>       $(BUILD_DIR) $(STAGING_DIR) $(TARGET_DIR) \
>>       $(HOST_DIR) $(BINARIES_DIR)
>>
>> @@ -626,7 +625,7 @@ target-post-image: $(TARGETS_ROOTFS) target-finalize
>>  toolchain-eclipse-register:
>>       ./support/scripts/eclipse-register-toolchain `readlink -f $(O)` $(notdir $(TARGET_CROSS)) $(BR2_ARCH)
>>
>> -source: $(TARGETS_SOURCE) $(HOST_SOURCE)
>> +source: $(TARGETS_ALL_SOURCE)
>>
>>  external-deps:
>>       @$(MAKE1) -Bs DL_MODE=SHOW_EXTERNAL_DEPS $(EXTRAMAKEARGS) source | sort -u
>> @@ -644,7 +643,7 @@ legal-info-prepare: $(LEGAL_INFO_DIR)
>>       @$(call legal-warning,the toolchain has not been saved)
>>       @cp $(BR2_CONFIG) $(LEGAL_INFO_DIR)/buildroot.config
>>
>> -legal-info: dirs legal-info-clean legal-info-prepare $(TARGETS_LEGAL_INFO) \
>> +legal-info: dirs legal-info-clean legal-info-prepare $(TARGETS_ALL_LEGAL_INFO) \
>>               $(REDIST_SOURCES_DIR_TARGET) $(REDIST_SOURCES_DIR_HOST)
>>       @cat support/legal-info/README.header >>$(LEGAL_REPORT)
>>       @if [ -r $(LEGAL_WARNINGS) ]; then \
>> @@ -655,7 +654,7 @@ legal-info: dirs legal-info-clean legal-info-prepare $(TARGETS_LEGAL_INFO) \
>>       @rm -f $(LEGAL_WARNINGS)
>>
>>  show-targets:
>> -     @echo $(TARGETS) $(TARGETS_ROOTFS)
>> +     @echo $(TARGETS_ALL)
>>
>>  graph-build: $(O)/build/build-time.log
>>       @install -d $(O)/graphs

Thanks and regards.
-- 
Fabio Porcedda

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

* [Buildroot] [PATCH v4 3/4] Makefile: let show-targets prints also the dependencies
  2014-04-17  9:17     ` Fabio Porcedda
@ 2014-04-22 10:15       ` Fabio Porcedda
  2014-04-23  8:46         ` Fabio Porcedda
  0 siblings, 1 reply; 18+ messages in thread
From: Fabio Porcedda @ 2014-04-22 10:15 UTC (permalink / raw)
  To: buildroot

I've sent an updated patch.

http://patchwork.ozlabs.org/patch/341283/

Best regards
-- 
Fabio Porcedda

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

* [Buildroot] [PATCH v4 1/4] Makefile: fix coding style
  2014-04-16 17:42   ` Thomas Petazzoni
  2014-04-17  8:21     ` Fabio Porcedda
@ 2014-04-22 16:03     ` Arnout Vandecappelle
  2014-04-22 20:16       ` Thomas Petazzoni
  2014-04-22 20:28       ` Fabio Porcedda
  1 sibling, 2 replies; 18+ messages in thread
From: Arnout Vandecappelle @ 2014-04-22 16:03 UTC (permalink / raw)
  To: buildroot

On 16/04/14 19:42, Thomas Petazzoni wrote:
> Dear Fabio Porcedda,
> 
> On Mon,  7 Apr 2014 11:56:47 +0200, Fabio Porcedda wrote:
>> As stated in the buildroot user manual add just a single space before
>> and after a '=' sign.
>>
>> Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com>
>> ---
>>  Makefile | 184 +++++++++++++++++++++++++++++++--------------------------------
>>  1 file changed, 92 insertions(+), 92 deletions(-)
> 
> To be honest, while I definitely value the change to harmonize the
> coding style, such a large patch touching almost every line of the main
> Makefile is a recipe for conflicts with many other patches. So I would
> personally prefer to not apply this patch, and do the coding style
> fixes progressively, as we make other changes to the main Makefile.

 I disagree. The entire patch does a single change to a single file
almost mechanically. It's true that there is a risk of conflicts, but
splitting up the patch doesn't reduce that risk. It's easy enough to try
to apply and ask for a refresh if there is a conflict.

 Of course, currently it doesn't apply cleanly anymore because you
delayed applying it, so I also can't re-Ack it. So Fabio, can you refresh?

 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
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F

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

* [Buildroot] [PATCH v4 1/4] Makefile: fix coding style
  2014-04-22 16:03     ` Arnout Vandecappelle
@ 2014-04-22 20:16       ` Thomas Petazzoni
  2014-04-22 20:28       ` Fabio Porcedda
  1 sibling, 0 replies; 18+ messages in thread
From: Thomas Petazzoni @ 2014-04-22 20:16 UTC (permalink / raw)
  To: buildroot

Dear Arnout Vandecappelle,

On Tue, 22 Apr 2014 18:03:27 +0200, Arnout Vandecappelle wrote:

> > To be honest, while I definitely value the change to harmonize the
> > coding style, such a large patch touching almost every line of the main
> > Makefile is a recipe for conflicts with many other patches. So I would
> > personally prefer to not apply this patch, and do the coding style
> > fixes progressively, as we make other changes to the main Makefile.
> 
>  I disagree. The entire patch does a single change to a single file
> almost mechanically. It's true that there is a risk of conflicts, but
> splitting up the patch doesn't reduce that risk. It's easy enough to try
> to apply and ask for a refresh if there is a conflict.

True.

>  Of course, currently it doesn't apply cleanly anymore because you
> delayed applying it, so I also can't re-Ack it.

Well, since April, 7th I was not the only one to have commit access,
and I believe I worked quite a lot to apply many other patches. So your
blame here is not really in order I believe :-)

Also, back when I made this comment, nobody had Acked the patch: only
after I made my comment Fabio realized that he had forgotten to include
your Acked-by from a previous version of the series (please read the
history of this patch at http://patchwork.ozlabs.org/patch/337436/).

Thanks,

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

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

* [Buildroot] [PATCH v4 1/4] Makefile: fix coding style
  2014-04-22 16:03     ` Arnout Vandecappelle
  2014-04-22 20:16       ` Thomas Petazzoni
@ 2014-04-22 20:28       ` Fabio Porcedda
  2014-04-23  8:43         ` Fabio Porcedda
  1 sibling, 1 reply; 18+ messages in thread
From: Fabio Porcedda @ 2014-04-22 20:28 UTC (permalink / raw)
  To: buildroot

On Tue, Apr 22, 2014 at 6:03 PM, Arnout Vandecappelle <arnout@mind.be> wrote:
> On 16/04/14 19:42, Thomas Petazzoni wrote:
>> Dear Fabio Porcedda,
>>
>> On Mon,  7 Apr 2014 11:56:47 +0200, Fabio Porcedda wrote:
>>> As stated in the buildroot user manual add just a single space before
>>> and after a '=' sign.
>>>
>>> Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com>
>>> ---
>>>  Makefile | 184 +++++++++++++++++++++++++++++++--------------------------------
>>>  1 file changed, 92 insertions(+), 92 deletions(-)
>>
>> To be honest, while I definitely value the change to harmonize the
>> coding style, such a large patch touching almost every line of the main
>> Makefile is a recipe for conflicts with many other patches. So I would
>> personally prefer to not apply this patch, and do the coding style
>> fixes progressively, as we make other changes to the main Makefile.
>
>  I disagree. The entire patch does a single change to a single file
> almost mechanically. It's true that there is a risk of conflicts, but
> splitting up the patch doesn't reduce that risk. It's easy enough to try
> to apply and ask for a refresh if there is a conflict.
>
>  Of course, currently it doesn't apply cleanly anymore because you
> delayed applying it, so I also can't re-Ack it. So Fabio, can you refresh?

Sure, i will do that tomorrow.

Regards and thanks.
-- 
Fabio Porcedda

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

* [Buildroot] [PATCH v4 1/4] Makefile: fix coding style
  2014-04-22 20:28       ` Fabio Porcedda
@ 2014-04-23  8:43         ` Fabio Porcedda
  0 siblings, 0 replies; 18+ messages in thread
From: Fabio Porcedda @ 2014-04-23  8:43 UTC (permalink / raw)
  To: buildroot

On Tue, Apr 22, 2014 at 10:28 PM, Fabio Porcedda
<fabio.porcedda@gmail.com> wrote:
> On Tue, Apr 22, 2014 at 6:03 PM, Arnout Vandecappelle <arnout@mind.be> wrote:
>> On 16/04/14 19:42, Thomas Petazzoni wrote:
>>> Dear Fabio Porcedda,
>>>
>>> On Mon,  7 Apr 2014 11:56:47 +0200, Fabio Porcedda wrote:
>>>> As stated in the buildroot user manual add just a single space before
>>>> and after a '=' sign.
>>>>
>>>> Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com>
>>>> ---
>>>>  Makefile | 184 +++++++++++++++++++++++++++++++--------------------------------
>>>>  1 file changed, 92 insertions(+), 92 deletions(-)
>>>
>>> To be honest, while I definitely value the change to harmonize the
>>> coding style, such a large patch touching almost every line of the main
>>> Makefile is a recipe for conflicts with many other patches. So I would
>>> personally prefer to not apply this patch, and do the coding style
>>> fixes progressively, as we make other changes to the main Makefile.
>>
>>  I disagree. The entire patch does a single change to a single file
>> almost mechanically. It's true that there is a risk of conflicts, but
>> splitting up the patch doesn't reduce that risk. It's easy enough to try
>> to apply and ask for a refresh if there is a conflict.
>>
>>  Of course, currently it doesn't apply cleanly anymore because you
>> delayed applying it, so I also can't re-Ack it. So Fabio, can you refresh?
>
> Sure, i will do that tomorrow.

Updated patch sent
http://patchwork.ozlabs.org/patch/341726/

Regards
-- 
Fabio Porcedda

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

* [Buildroot] [PATCH v4 3/4] Makefile: let show-targets prints also the dependencies
  2014-04-22 10:15       ` Fabio Porcedda
@ 2014-04-23  8:46         ` Fabio Porcedda
  0 siblings, 0 replies; 18+ messages in thread
From: Fabio Porcedda @ 2014-04-23  8:46 UTC (permalink / raw)
  To: buildroot

On Tue, Apr 22, 2014 at 12:15 PM, Fabio Porcedda
<fabio.porcedda@gmail.com> wrote:
> I've sent an updated patch.
>
> http://patchwork.ozlabs.org/patch/341283/

Patch resent as part of the new revision of this patch set.
http://patchwork.ozlabs.org/patch/341727/

Regards
-- 
Fabio Porcedda

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

end of thread, other threads:[~2014-04-23  8:46 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-04-07  9:56 [Buildroot] [PATCH v4 0/4] Miscellauneus patches Fabio Porcedda
2014-04-07  9:56 ` [Buildroot] [PATCH v4 1/4] Makefile: fix coding style Fabio Porcedda
2014-04-16 17:42   ` Thomas Petazzoni
2014-04-17  8:21     ` Fabio Porcedda
2014-04-22 16:03     ` Arnout Vandecappelle
2014-04-22 20:16       ` Thomas Petazzoni
2014-04-22 20:28       ` Fabio Porcedda
2014-04-23  8:43         ` Fabio Porcedda
2014-04-07  9:56 ` [Buildroot] [PATCH v4 2/4] toolchain: add a hidden config option to enable the toolchain package Fabio Porcedda
2014-04-16 17:43   ` Thomas Petazzoni
2014-04-17  8:10     ` Fabio Porcedda
2014-04-07  9:56 ` [Buildroot] [PATCH v4 3/4] Makefile: let show-targets prints also the dependencies Fabio Porcedda
2014-04-16 17:49   ` Thomas Petazzoni
2014-04-17  9:17     ` Fabio Porcedda
2014-04-22 10:15       ` Fabio Porcedda
2014-04-23  8:46         ` Fabio Porcedda
2014-04-07  9:56 ` [Buildroot] [PATCH v4 4/4] luajit: needs for 32bit archictectures a 32bit host gcc Fabio Porcedda
2014-04-16 17:54   ` Thomas Petazzoni

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.