* [Buildroot] svn commit: trunk/buildroot: package project
@ 2007-08-21 17:56 aldot at uclibc.org
2007-08-21 17:46 ` [Buildroot] improved per-project dependencies Bernhard Fischer
0 siblings, 1 reply; 5+ messages in thread
From: aldot at uclibc.org @ 2007-08-21 17:56 UTC (permalink / raw)
To: buildroot
Author: aldot
Date: 2007-08-21 10:56:47 -0700 (Tue, 21 Aug 2007)
New Revision: 19624
Log:
- our dependencies are project specific. First (untested) attempt to take this fact into account.
Will need to try to copy eventual pre-existing project-specific deps back
to package/config in order not to mess up the corresponding timestamps (to avoid superfluous rebuilds)..
Modified:
trunk/buildroot/Makefile
trunk/buildroot/package/Makefile.in
trunk/buildroot/project/Makefile.in
Changeset:
Modified: trunk/buildroot/Makefile
===================================================================
--- trunk/buildroot/Makefile 2007-08-21 17:14:56 UTC (rev 19623)
+++ trunk/buildroot/Makefile 2007-08-21 17:56:47 UTC (rev 19624)
@@ -150,8 +150,6 @@
endif
PREFERRED_LIB_FLAGS:=--enable-static --enable-shared
-BR2_DEPENDS_DIR=$(BASE_DIR)/package/config/buildroot-config/
-
##############################################################
#
# The list of stuff to build for the target toolchain
@@ -165,7 +163,11 @@
endif
TARGETS:=
+# setup uor pathes
include project/Makefile.in
+
+BR2_DEPENDS_DIR=$(PROJECT_BUILD_DIR)/buildroot-config
+
include toolchain/Makefile.in
include package/Makefile.in
@@ -211,7 +213,12 @@
# all targets depend on the crosscompiler and it's prerequisites
$(TARGETS): $(BASE_TARGETS)
+$(BR2_DEPENDS_DIR): .config
+ rm -rf $@
+ cp -dpRf $(CONFIG)/buildroot-config $@
+
dirs: $(DL_DIR) $(TOOL_BUILD_DIR) $(BUILD_DIR) $(STAGING_DIR) $(TARGET_DIR) \
+ $(BR2_DEPENDS_DIR) \
$(BINARIES_DIR) $(PROJECT_BUILD_DIR)
$(BASE_TARGETS): dirs
@@ -223,6 +230,7 @@
$(BASE_TARGETS) $(TARGETS) \
$(TARGETS_CLEAN) $(TARGETS_DIRCLEAN) $(TARGETS_SOURCE) \
$(DL_DIR) $(TOOL_BUILD_DIR) $(BUILD_DIR) $(STAGING_DIR) $(TARGET_DIR) \
+ $(BR2_DEPENDS_DIR) \
$(BINARIES_DIR) $(PROJECT_BUILD_DIR)
#############################################################
@@ -260,7 +268,7 @@
-find $(TARGET_DIR) -type d -name .svn | xargs rm -rf
touch $@
-$(TARGET_DIR): $(PROJECT_BUILD_DIR)/.root
+$(TARGET_DIR): $(PROJECT_BUILD_DIR)/.root
erase-fakeroots:
rm -f $(PROJECT_BUILD_DIR)/.fakeroot*
@@ -310,11 +318,13 @@
export HOSTCFLAGS
$(CONFIG)/conf:
+ @mkdir -p $(CONFIG)/buildroot-config
$(MAKE) CC="$(HOSTCC)" -C $(CONFIG) conf
- at if [ ! -f .config ] ; then \
cp $(CONFIG_DEFCONFIG) .config; \
fi
$(CONFIG)/mconf:
+ @mkdir -p $(CONFIG)/buildroot-config
$(MAKE) CC="$(HOSTCC)" -C $(CONFIG) conf mconf
- at if [ ! -f .config ] ; then \
cp $(CONFIG_DEFCONFIG) .config; \
Modified: trunk/buildroot/package/Makefile.in
===================================================================
--- trunk/buildroot/package/Makefile.in 2007-08-21 17:14:56 UTC (rev 19623)
+++ trunk/buildroot/package/Makefile.in 2007-08-21 17:56:47 UTC (rev 19624)
@@ -9,21 +9,7 @@
MAKE1:=$(HOSTMAKE) MAKE="$(firstword $(HOSTMAKE)) -j1"
MAKE:=$(HOSTMAKE) -j$(BR2_JLEVEL)
-# Strip off the annoying quoting
-ARCH:=$(strip $(subst ",, $(BR2_ARCH)))
-#"))
-WGET:=$(strip $(subst ",, $(BR2_WGET))) $(SPIDER)
-#"))
-SVN:=$(strip $(subst ",, $(BR2_SVN)))
-#"))
-ZCAT:=$(strip $(subst ",, $(BR2_ZCAT)))
-#"))
-BZCAT:=$(strip $(subst ",, $(BR2_BZCAT)))
-#"))
-TAR_OPTIONS=$(subst ",, $(BR2_TAR_OPTIONS)) -xf
-#")
-
ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
TARGET_CFLAGS=$(TARGET_OPTIMIZATION) $(TARGET_DEBUGGING) \
-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include
@@ -72,34 +58,6 @@
#########################################################################
-BASE_DIR:=$(shell pwd)
-
-TOPDIR_PREFIX:=$(strip $(subst ",, $(BR2_TOPDIR_PREFIX)))_
-#"))
-TOPDIR_SUFFIX:=_$(strip $(subst ",, $(BR2_TOPDIR_SUFFIX)))
-#"))
-ifeq ($(TOPDIR_PREFIX),_)
-TOPDIR_PREFIX:=
-endif
-ifeq ($(TOPDIR_SUFFIX),_)
-TOPDIR_SUFFIX:=
-endif
-
-DL_DIR=$(strip $(subst ",, $(BR2_DL_DIR)))
-#"))
-ifeq ($(DL_DIR),)
-DL_DIR:=$(BASE_DIR)/dl
-endif
-#PATCH_DIR=$(BASE_DIR)/sources/patches
-
-# All non-configurable packages should be built in BUILD_DIR
-BUILD_DIR:=$(BASE_DIR)/$(TOPDIR_PREFIX)build_$(ARCH)$(ARCH_FPU_SUFFIX)$(TOPDIR_SUFFIX)
-
-GNU_TARGET_SUFFIX:=-$(strip $(subst ",, $(BR2_GNU_TARGET_SUFFIX)))
-#"))
-
-STAGING_DIR:=$(strip $(subst ",, $(BR2_STAGING_DIR)))
-#"))
ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
TOOL_BUILD_DIR=$(BASE_DIR)/$(TOPDIR_PREFIX)toolchain_build_$(ARCH)$(ARCH_FPU_SUFFIX)$(TOPDIR_SUFFIX)
Modified: trunk/buildroot/project/Makefile.in
===================================================================
--- trunk/buildroot/project/Makefile.in 2007-08-21 17:14:56 UTC (rev 19623)
+++ trunk/buildroot/project/Makefile.in 2007-08-21 17:56:47 UTC (rev 19624)
@@ -5,6 +5,50 @@
BANNER:=$(strip $(subst ",,$(BR2_BANNER)))
#"))
+
+# Strip off the annoying quoting
+ARCH:=$(strip $(subst ",, $(BR2_ARCH)))
+#"))
+WGET:=$(strip $(subst ",, $(BR2_WGET))) $(SPIDER)
+#"))
+SVN:=$(strip $(subst ",, $(BR2_SVN)))
+#"))
+ZCAT:=$(strip $(subst ",, $(BR2_ZCAT)))
+#"))
+BZCAT:=$(strip $(subst ",, $(BR2_BZCAT)))
+#"))
+TAR_OPTIONS=$(subst ",, $(BR2_TAR_OPTIONS)) -xf
+#")
+
+
+BASE_DIR:=$(shell pwd)
+
+TOPDIR_PREFIX:=$(strip $(subst ",, $(BR2_TOPDIR_PREFIX)))_
+#"))
+TOPDIR_SUFFIX:=_$(strip $(subst ",, $(BR2_TOPDIR_SUFFIX)))
+#"))
+ifeq ($(TOPDIR_PREFIX),_)
+TOPDIR_PREFIX:=
+endif
+ifeq ($(TOPDIR_SUFFIX),_)
+TOPDIR_SUFFIX:=
+endif
+
+DL_DIR=$(strip $(subst ",, $(BR2_DL_DIR)))
+#"))
+ifeq ($(DL_DIR),)
+DL_DIR:=$(BASE_DIR)/dl
+endif
+
+# All non-configurable packages should be built in BUILD_DIR
+BUILD_DIR:=$(BASE_DIR)/$(TOPDIR_PREFIX)build_$(ARCH)$(ARCH_FPU_SUFFIX)$(TOPDIR_SUFFIX)
+
+GNU_TARGET_SUFFIX:=-$(strip $(subst ",, $(BR2_GNU_TARGET_SUFFIX)))
+#"))
+
+STAGING_DIR:=$(strip $(subst ",, $(BR2_STAGING_DIR)))
+#"))
+
# All configurable packages (like Busybox,Linux etc) should be built
# in PROJECT_BUILD_DIR
PROJECT_BUILD_DIR:=$(BASE_DIR)/$(TOPDIR_PREFIX)project_build_$(ARCH)$(ARCH_FPU_SUFFIX)$(TOPDIR_SUFFIX)/$(PROJECT)
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] improved per-project dependencies
2007-08-21 17:56 [Buildroot] svn commit: trunk/buildroot: package project aldot at uclibc.org
@ 2007-08-21 17:46 ` Bernhard Fischer
2007-08-21 18:57 ` Ulf Samuelsson
0 siblings, 1 reply; 5+ messages in thread
From: Bernhard Fischer @ 2007-08-21 17:46 UTC (permalink / raw)
To: buildroot
On Tue, Aug 21, 2007 at 10:56:48AM -0700, aldot at uclibc.org wrote:
>Author: aldot
>Date: 2007-08-21 10:56:47 -0700 (Tue, 21 Aug 2007)
>New Revision: 19624
>
>Log:
>- our dependencies are project specific. First (untested) attempt to take this fact into account.
> Will need to try to copy eventual pre-existing project-specific deps back
> to package/config in order not to mess up the corresponding timestamps (to avoid superfluous rebuilds)..
I hope that this didn't break too much, if so please holler.
This will need some further massage. Help (patches) welcome
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] improved per-project dependencies
2007-08-21 17:46 ` [Buildroot] improved per-project dependencies Bernhard Fischer
@ 2007-08-21 18:57 ` Ulf Samuelsson
0 siblings, 0 replies; 5+ messages in thread
From: Ulf Samuelsson @ 2007-08-21 18:57 UTC (permalink / raw)
To: buildroot
tis 2007-08-21 klockan 19:46 +0200 skrev Bernhard Fischer:
> On Tue, Aug 21, 2007 at 10:56:48AM -0700, aldot at uclibc.org wrote:
> >Author: aldot
> >Date: 2007-08-21 10:56:47 -0700 (Tue, 21 Aug 2007)
> >New Revision: 19624
> >
> >Log:
> >- our dependencies are project specific. First (untested) attempt to take this fact into account.
> > Will need to try to copy eventual pre-existing project-specific deps back
> > to package/config in order not to mess up the corresponding timestamps (to avoid superfluous rebuilds)..
>
> I hope that this didn't break too much, if so please holler.
> This will need some further massage. Help (patches) welcome
I have been thinking about this.
The idea of the BSP patch is to share a common toolchain
and to share the build of packages
If you have two different toolchains, then you effectively lose the
purpose of the toolchain, and could as well build the project in a
different directory.
A possible approach would be to separate the configs of the
packages from that of the toolchain
"make toolconfig" would create the .config'uration of the toolchain
"make menuconfig" would create the .config'uration for the rest.
Then you can add a dependency on the toolconfig ".config" file
which deletes
* build_<ARCH>
* binaries
* toolchain_build_<ARCH>
* project_build_<ARCH>
because they are really not valid.
A more difficult approach is to have the old .config available and
compare that against the new ".config". Only changes affecting the
builds of package should call for the battle-axe.
Cosmetic changes should not be dramatic.
> _______________________________________________
> buildroot mailing list
> buildroot at uclibc.org
> http://busybox.net/mailman/listinfo/buildroot
--
Best Regards,
Ulf Samuelsson
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] svn commit: trunk/buildroot: package project
@ 2008-10-21 8:56 jacmet at uclibc.org
0 siblings, 0 replies; 5+ messages in thread
From: jacmet at uclibc.org @ 2008-10-21 8:56 UTC (permalink / raw)
To: buildroot
Author: jacmet
Date: 2008-10-21 01:56:26 -0700 (Tue, 21 Oct 2008)
New Revision: 23750
Log:
buildroot: add QUIET variable and use it for wget/git/svn/configure
A lot of tools take a -q option to be quiet.
Set this if make is called with the -s (silent) option and use for
wget, git, svn and configure.
Modified:
trunk/buildroot/package/Makefile.autotools.in
trunk/buildroot/project/Makefile.in
Changeset:
Modified: trunk/buildroot/package/Makefile.autotools.in
===================================================================
--- trunk/buildroot/package/Makefile.autotools.in 2008-10-21 08:56:15 UTC (rev 23749)
+++ trunk/buildroot/package/Makefile.autotools.in 2008-10-21 08:56:26 UTC (rev 23750)
@@ -225,8 +225,7 @@
--prefix=/usr \
--exec-prefix=/usr \
--sysconfdir=/etc \
- $(if $(findstring s,$(MAKEFLAGS)),--quiet,) \
- $($(PKG)_CONF_OPT)
+ $(QUIET) $($(PKG)_CONF_OPT)
$(Q)touch $@
# Build
Modified: trunk/buildroot/project/Makefile.in
===================================================================
--- trunk/buildroot/project/Makefile.in 2008-10-21 08:56:15 UTC (rev 23749)
+++ trunk/buildroot/project/Makefile.in 2008-10-21 08:56:26 UTC (rev 23750)
@@ -5,17 +5,19 @@
BANNER:=$(strip $(subst ",,$(BR2_BANNER)))
#"))
+# silent mode requested?
+QUIET:=$(if $(findstring s,$(MAKEFLAGS)),-q,)
# Strip off the annoying quoting
ARCH:=$(strip $(subst ",, $(BR2_ARCH)))
#"))
-WGET:=$(strip $(subst ",, $(BR2_WGET))) $(SPIDER)
+WGET:=$(strip $(subst ",, $(BR2_WGET))) $(SPIDER) $(QUIET)
#"))
-SVN_CO:=$(strip $(subst ",, $(BR2_SVN_CO)))
+SVN_CO:=$(strip $(subst ",, $(BR2_SVN_CO))) $(QUIET)
#"))
-SVN_UP:=$(strip $(subst ",, $(BR2_SVN_UP)))
+SVN_UP:=$(strip $(subst ",, $(BR2_SVN_UP))) $(QUIET)
#"))
-GIT:=$(strip $(subst ",, $(BR2_GIT)))
+GIT:=$(strip $(subst ",, $(BR2_GIT))) $(QUIET)
#"))
ZCAT:=$(strip $(subst ",, $(BR2_ZCAT)))
#"))
@@ -24,7 +26,6 @@
TAR_OPTIONS=$(subst ",, $(BR2_TAR_OPTIONS)) -xf
#")
-
# Buildroot supports building out of tree similarly to the Linux kernel.
# To use, add O= to the make command line (make O=/tmp/build)
BASE_DIR:=$(shell pwd)
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] svn commit: trunk/buildroot: package project
@ 2007-08-21 17:14 aldot at uclibc.org
0 siblings, 0 replies; 5+ messages in thread
From: aldot at uclibc.org @ 2007-08-21 17:14 UTC (permalink / raw)
To: buildroot
Author: aldot
Date: 2007-08-21 10:14:56 -0700 (Tue, 21 Aug 2007)
New Revision: 19623
Log:
- move the PROJECT variable setting to a more sensible place
Modified:
trunk/buildroot/package/Makefile.in
trunk/buildroot/project/Makefile.in
Changeset:
Modified: trunk/buildroot/package/Makefile.in
===================================================================
--- trunk/buildroot/package/Makefile.in 2007-08-21 17:00:18 UTC (rev 19622)
+++ trunk/buildroot/package/Makefile.in 2007-08-21 17:14:56 UTC (rev 19623)
@@ -95,12 +95,6 @@
# All non-configurable packages should be built in BUILD_DIR
BUILD_DIR:=$(BASE_DIR)/$(TOPDIR_PREFIX)build_$(ARCH)$(ARCH_FPU_SUFFIX)$(TOPDIR_SUFFIX)
-# All configurable packages (like Busybox,Linux etc) should be built in PROJECT_BUILD_DIR
-PROJECT_BUILD_DIR:=$(BASE_DIR)/$(TOPDIR_PREFIX)project_build_$(ARCH)$(ARCH_FPU_SUFFIX)$(TOPDIR_SUFFIX)/$(PROJECT)
-BINARIES_DIR:=$(BASE_DIR)/binaries/$(PROJECT)
-TARGET_DIR:=$(PROJECT_BUILD_DIR)/root
-
-
GNU_TARGET_SUFFIX:=-$(strip $(subst ",, $(BR2_GNU_TARGET_SUFFIX)))
#"))
Modified: trunk/buildroot/project/Makefile.in
===================================================================
--- trunk/buildroot/project/Makefile.in 2007-08-21 17:00:18 UTC (rev 19622)
+++ trunk/buildroot/project/Makefile.in 2007-08-21 17:14:56 UTC (rev 19623)
@@ -4,3 +4,9 @@
#"))
BANNER:=$(strip $(subst ",,$(BR2_BANNER)))
#"))
+
+# All configurable packages (like Busybox,Linux etc) should be built
+# in PROJECT_BUILD_DIR
+PROJECT_BUILD_DIR:=$(BASE_DIR)/$(TOPDIR_PREFIX)project_build_$(ARCH)$(ARCH_FPU_SUFFIX)$(TOPDIR_SUFFIX)/$(PROJECT)
+BINARIES_DIR:=$(BASE_DIR)/binaries/$(PROJECT)
+TARGET_DIR:=$(PROJECT_BUILD_DIR)/root
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2008-10-21 8:56 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-08-21 17:56 [Buildroot] svn commit: trunk/buildroot: package project aldot at uclibc.org
2007-08-21 17:46 ` [Buildroot] improved per-project dependencies Bernhard Fischer
2007-08-21 18:57 ` Ulf Samuelsson
-- strict thread matches above, loose matches on Subject: below --
2008-10-21 8:56 [Buildroot] svn commit: trunk/buildroot: package project jacmet at uclibc.org
2007-08-21 17:14 aldot at uclibc.org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox