Commit Graph

169 Commits (0766fc9beca5504e90ac8c238440930463986cc6)

Author SHA1 Message Date
Felix Fietkau 6c9b1a278e Makefile: move the cleaning of staging_dir/target* from dirclean to clean
Currently "make clean" only clears the build_dir/target*, but leaves
staging_dir/target* intact. "make clean" should also clean the
staging_dir/target* directories, as in the current situation some old
packages or libraries may be linked into the firmware from staging_dir
despite a "make clean".

The patch reorganises clean / dirclean functionality so that
* "make clean" also clears the staging_dir/target* in addition to
build_dir/target*.
* "make dirclean" clears toolchain and host(=tools) directories from both
build_dir and staging_dir

signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45973 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-06-14 17:47:16 +00:00
John Crispin 6cf8669273 Makefile: remove non-existent STAGING_DIR_TOOLCHAIN from dirclean
Makefile: remove non-existent STAGING_DIR_TOOLCHAIN from dirclean

Openwrt's top level Makefile uses STAGING_DIR_TOOLCHAIN in the make dirclean
statement.
https://dev.openwrt.org/browser/trunk/Makefile#L55
    rm -rf $(STAGING_DIR) $(STAGING_DIR_HOST) $(STAGING_DIR_TOOLCHAIN)
$(TOOLCHAIN_DIR) $(BUILD_DIR_HOST) $(BUILD_DIR_TOOLCHAIN)

As far as I can determine, no such variable has been defined. I made a search
in Openwrt source repository and the one line in Makefile's dirclean command
is the only place where that variable exists.

The item has been introduced to Makefile by r8362, but even at that time
neither Makefile nor rules.mk defined such a variable. Most likely the goal
has been to set both staging_dir/toolchain and build_dir/toolchain to be
cleaned, but one of the variables has been erroneous. The correct variable
for build_dir/toolchain has been then added by r13494.

References:
https://dev.openwrt.org/changeset/8362/
https://dev.openwrt.org/browser/trunk/Makefile?rev=8362
https://dev.openwrt.org/browser/trunk/rules.mk?rev=8362
https://lists.openwrt.org/pipermail/openwrt-devel/2007-August/001159.html
https://dev.openwrt.org/changeset/13494

In current code,
    TOOLCHAIN_DIR = $(TOPDIR)/staging_dir/$(TOOLCHAIN_DIR_NAME)
    BUILD_DIR_TOOLCHAIN = $(TOPDIR)/build_dir/$(TOOLCHAIN_DIR_NAME)
so the item STAGING_DIR_TOOLCHAIN in the rm command is unnecessary.

signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45736 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-05-23 15:28:42 +00:00
Felix Fietkau 4e90bd649a build: don't call prereq for any package/symlinks rules
Most of the time, we want to make sure OpenWrt has been configured and
setup before start running make. However, in case of package/symlinks,
forcing prereq as a dependency creates multiple issues:
*when executed on a clean workspace, it will prompt for user input
 and open a menuconfig window before executing the feeds command
*the only way around that is to provide a .config. However, the "prereq"
 target would then run a "make defconfig", which will remove all the
 packages in the .config but from external feeds, as feeds have not been
 installed yet.

The only way to currently work around this, is to generate a fake config
by running "make defconfig", then "make package/symlinks", copy the real
config (which at this point disregards the previously generated config),
and run make defconfig again. Something like this:

make defconfig
make package/symlinks
cp real.config .config
make defconfig

This change is removing the need for the first defconfig, making the
process more logical for OpenWrt users using the package/symlinks target.

Signed-off-by: Mathieu Olivari <mathieu@qca.qualcomm.com>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45657 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-05-10 11:17:29 +00:00
Felix Fietkau 52ea8edba3 build: clean up sitefiles, make them per-arch
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45090 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-28 13:38:34 +00:00
Felix Fietkau f618c2fc9c Revert "build: use ONESHELL to speed up scanning and the toplevel makefile"
This seems to cause issues on some build hosts, and it is not that
important.

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43025 3c298f89-4303-0410-b956-a3cf2f4a3e73
2014-10-22 10:47:26 +00:00
Felix Fietkau a7a8f77c08 build: use ONESHELL to speed up scanning and the toplevel makefile
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43021 3c298f89-4303-0410-b956-a3cf2f4a3e73
2014-10-22 08:57:40 +00:00
Felix Fietkau 64109ce9ff build: remove duplicate variable definitions
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39981 3c298f89-4303-0410-b956-a3cf2f4a3e73
2014-03-21 15:54:11 +00:00
Felix Fietkau 7a620c3b96 build: it is no longer necessary to call make target/linux/clean as part of make clean
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34451 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-12-02 15:26:28 +00:00
Felix Fietkau 75d1732f13 Makefile: add a check to bail out early when the path to the openwrt directory contains spaces (#12344)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33884 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-10-21 02:00:11 +00:00
Felix Fietkau 136f00bfb2 build: add back the package/cleanup step to remove the root staging dir for mklibs
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33777 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-10-15 13:19:45 +00:00
Felix Fietkau 6683f47568 build: rework the package/install step - collect package install lists during package/compile, then install all packages at once
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33631 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-10-06 16:01:06 +00:00
Jo-Philipp Wich a69a79c0bc [buildroot] abort built in prereq target if there is no site config file for the current target
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29798 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-01-19 12:19:28 +00:00
Felix Fietkau e3b691c96c add a command for printing a cleaned up make target database - will be used to analyze package dependencies at some point
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@22871 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-09-01 17:51:36 +00:00
Florian Fainelli ef5dc72b5c [buildroot] fix for GREP_OPTIONS
When using GREP_OPTIONS to supply default options to grep, the buildsystem might get broken (For example adding --color=always breaks it)
This patch will empty the GREP_OPTIONS to prevent the described (and any other) problems related to GREP_OPTIONS

Signed-off-by: Maarten Bezemer <m.m.bezemer@utwente.nl>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@22443 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-07-31 22:32:21 +00:00
Felix Fietkau b1f42563ce add a "make prepare" target which builds everything up to target/compile, useful for scripts/deptest.sh
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@16153 3c298f89-4303-0410-b956-a3cf2f4a3e73
2009-05-28 18:40:37 +00:00
Ralph Hempel 92dfe3875a added BUILD_LOG_DIR variable, make clean will delete the ./logs dir
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@16148 3c298f89-4303-0410-b956-a3cf2f4a3e73
2009-05-28 16:30:04 +00:00
Felix Fietkau 0a45975466 avoid implicit rules in even more places
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@14737 3c298f89-4303-0410-b956-a3cf2f4a3e73
2009-03-03 14:16:48 +00:00
Nicolas Thill 6c9d3d12bd remove toolchain build directory as well in 'make dirclean'
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@13494 3c298f89-4303-0410-b956-a3cf2f4a3e73
2008-12-03 04:22:41 +00:00
Felix Fietkau 627b34f1f2 rework parallel building to get rid of some warnings
and add back support for parallelizing the kernel build
fixes #3882


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@12322 3c298f89-4303-0410-b956-a3cf2f4a3e73
2008-08-16 16:59:47 +00:00
Felix Fietkau 79edf87314 make package prereq checks behave more like build prereq checks (first check all, then fail if necessary), also make them less verbose
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@12106 3c298f89-4303-0410-b956-a3cf2f4a3e73
2008-08-04 23:15:17 +00:00
Felix Fietkau f4e7bdac42 large improvement for parallel builds. works without V=99 now and without warnings. tested with -j on an 2x dual core opteron machine
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@11414 3c298f89-4303-0410-b956-a3cf2f4a3e73
2008-06-09 15:38:45 +00:00
Ralph Hempel e5baf6bef8 fix package/symlinks target, will call scripts/feeds update / install
introduce new package/symlinks-install and package/symlinks-clean targets
- package/symlink-install will re-create the index files and the symlinks for all ./feeds (no update from repositories is performed)
- package/symlink-clean will delete all installed symlinks (keeping the ./feeds untouched)



git-svn-id: svn://svn.openwrt.org/openwrt/trunk@10634 3c298f89-4303-0410-b956-a3cf2f4a3e73
2008-03-20 17:08:24 +00:00
Felix Fietkau b23fbfe908 use scripts/feeds instead of scripts/feeds.sh for package/symlinks
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@9990 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-12-28 17:01:32 +00:00
Felix Fietkau 81e1c1bc16 fix make clean for unconfigured build trees
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@9655 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-12-04 03:04:37 +00:00
Felix Fietkau 5e7effeb4f fix parallel build issues
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@9495 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-11-04 11:42:47 +00:00
Felix Fietkau 733e77839d add autorebuild check for menuconfig
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@9301 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-10-14 02:28:34 +00:00
Felix Fietkau 56d8c10f57 add 'make prepare' target for building the tools and toolchain
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8780 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-09-15 08:53:23 +00:00
Felix Fietkau 6bcd07afdd major target cleanup. it is now possible to have subtargets that can override many target settings, including arch - merge adm5120, adm5120eb. target profiles still need to be adapted for subtargets
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8694 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-09-08 19:55:42 +00:00
Felix Fietkau a96b79a6d4 clean up recursive dependency handling, use timestamp.pl again, because it saves memory and execution time
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8558 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-08-30 21:12:39 +00:00
Felix Fietkau d10a56dc58 build system cleanup/restructuring as described in http://lists.openwrt.org/pipermail/openwrt-devel/2007-August/001159.html
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8362 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-08-07 00:04:25 +00:00
Felix Fietkau 48ed3043e3 fix rootfs and init script handling
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8293 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-07-31 22:54:21 +00:00
Felix Fietkau e937469fd7 fix make distclean
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8251 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-07-30 22:56:48 +00:00
Felix Fietkau 03ffe176e5 next round of cleanup, convert target/ - make -j works now ;)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8242 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-07-30 21:14:08 +00:00
Felix Fietkau 7f5129c7d9 next round of build system cleanup - convert package/ to new structure
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8236 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-07-30 18:22:01 +00:00
Felix Fietkau b01e9a83ff toolchain/ has been converted
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8235 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-07-30 16:22:57 +00:00
Felix Fietkau 32788c07ce fix verbose output with dash as /bin/sh
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8227 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-07-30 14:50:15 +00:00
Felix Fietkau 1b88b67b09 build system fixes, more cleanup
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8207 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-07-28 13:29:03 +00:00
Felix Fietkau 5a344daff1 more build system cleanup
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8206 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-07-28 13:00:43 +00:00
Felix Fietkau eed0892fb7 initial attempt at cleaning up subdirectory handling. tools/Makefile is now being included instead of recursively called
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8201 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-07-28 02:44:55 +00:00
Felix Fietkau a9bc57f16e add kernel_oldconfig target
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8003 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-07-16 10:03:03 +00:00
Felix Fietkau b70ced7eab kernel: fix dependencies for .config, use selections from oldconfig when running menuconfig
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7997 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-07-16 05:28:13 +00:00
Felix Fietkau 50e30099a6 target scan needs a maxdepth of 2
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7987 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-07-16 00:07:56 +00:00
Felix Fietkau 7a8aa7ccd8 set maxdepth appropriately for package scanning
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7985 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-07-15 23:39:22 +00:00
Felix Fietkau 90351f3587 rewrite of the metadata scanning - cleaner code, faster scanning, recursive scanning and better handling of makefile dependencies
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7981 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-07-15 22:51:12 +00:00
Felix Fietkau d0f0443981 fix distclean
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7940 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-07-12 10:55:00 +00:00
Felix Fietkau 2d67ccf668 fix docs compile targets
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7905 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-07-10 16:38:05 +00:00
Florian Fainelli 748e71d47c Regenerate the menuconfig once symlinked packages are gone
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7399 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-05-30 10:37:43 +00:00
Felix Fietkau 4826a4becb fix target rescan (version kernel changes)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7317 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-05-23 21:11:48 +00:00
Felix Fietkau 0545721438 Make UCI preconfiguration optional and disabled by default
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7095 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-05-05 10:06:10 +00:00
Felix Fietkau f460eb1cdb fixes for a few build errors on osx without fink
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7065 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-04-29 01:30:48 +00:00